// all // | all,block_nested // | | all,block_named function f; //<1><1><1> begin //<2><2><1> //<2><2><1> end //<2><2><1> endfunction : f //<1><1><1> task t; //<1><1><1> //<1><1><1> begin //<2><2><1> state = something(); //<2><2><1> begin : block1 //<3><3><2> state = 2'b00; //<3><3><2> if (a <= b) begin //<4><4><2> begin : block2 //<5><5><3> end // block2 //<5><5><3> state = 2'b11; //<4><4><2> begin //<5><5><2> end //<5><5><2> end //<4><4><2> begin : block3 //<4><4><3> end // block3 //<4><4><3> begin //<4><4><2> end //<4><4><2> end // block1 //<3><3><2> end //<2><2><1> //<1><1><1> endtask : t //<1><1><1> /* //<1><1><1> * //<1><1><1> * function in_comment; //<1><1><1> * //<1><1><1> * endfunction //<1><1><1> * //<1><1><1> */ //<1><1><1> extern function e_func (x, y); //<0><0><0> extern static function es_func (x, y); //<0><0><0> extern protected function ep_func (x, y); //<0><0><0> extern local function el_func (x, y); //<0><0><0> pure virtual function pv_func (x); //<0><0><0> pure virtual static function pvs_func (x); //<0><0><0> pure virtual protected function pvp_func (x); //<0><0><0> pure virtual local function pvl_func (x); //<0><0><0> extern virtual function ev_func (x); //<0><0><0> extern virtual static function evs_func (x); //<0><0><0> extern virtual protected function evp_func (x); //<0><0><0> extern virtual local function evl_func (x); //<0><0><0> extern pure virtual function epv_func (x); //<0><0><0> extern pure virtual static function epvs_func (x); //<0><0><0> extern pure virtual protected function epvp_func (x); //<0><0><0> extern pure virtual local function epvl_func (x); //<0><0><0> extern task e_task (x, y); //<0><0><0> extern static task es_task (x, y); //<0><0><0> extern protected task ep_task (x, y); //<0><0><0> extern local task el_task (x, y); //<0><0><0> pure virtual task pv_task (x); //<0><0><0> pure virtual static task pvs_task (x); //<0><0><0> pure virtual protected task pvp_task (x); //<0><0><0> pure virtual local task pvl_task (x); //<0><0><0> extern virtual task ev_task (x, y); //<0><0><0> extern virtual static task evs_task (x, y); //<0><0><0> extern virtual protected task evp_task (x, y); //<0><0><0> extern virtual local task evl_task (x, y); //<0><0><0> extern pure virtual task epv_task (x, y); //<0><0><0> extern pure virtual static task epvs_task (x, y); //<0><0><0> extern pure virtual protected task epvp_task (x, y); //<0><0><0> extern pure virtual local task epvl_task (x, y); //<0><0><0> /** //<1><1><1> * Static function //<1><1><1> */ //<1><1><1> static function f1; //<1><1><1> endfunction //<1><1><1> specify //<1><1><1> //<1><1><1> endspecify //<1><1><1> covergroup cov; //<1><1><1> //<1><1><1> endgroup //<1><1><1> property prop; //<1><1><1> endproperty //<1><1><1> sequence //<1><1><1> endsequence //<1><1><1> // Classes //<0><0><0> class class_a; //<1><1><1> //<1><1><1> endclass : class_a //<1><1><1> class class_b; //<1><1><1> class class_b1; //<2><2><2> //<2><2><2> endclass : class_b1 //<2><2><2> //<1><1><1> class class_b2; //<2><2><2> //<2><2><2> endclass : class_b2 //<2><2><2> endclass : class_b //<1><1><1> interface a; //<1><1><1> //<1><1><1> interface class b; //<2><2><2> endclass : b //<2><2><2> //<1><1><1> clocking cb @ (posedge Clk); //<2><2><2> endclocking : cb //<2><2><2> //<1><1><1> endinterface : a //<1><1><1> typedef interface class my_itf_class; //<0><0><0> `ifdef A //<1><1><1> reg test; //<1><1><1> //<1><1><1> // `ifdef A_1 //<1><1><1> // //<1><1><1> // `else //<1><1><1> // //<1><1><1> // `endif //<1><1><1> //<1><1><1> `else //<1><1><1> //<1><1><1> `endif //<1><1><1> `ifndef B //<1><1><1> //<1><1><1> `elsif C //<1><1><1> //<1><1><1> `elsif D //<1><1><1> //<1><1><1> `else //<1><1><1> //<1><1><1> `endif //<1><1><1> `ifdef E //<1><1><1> //<1><1><1> `ifndef E_1 //<2><2><2> //<2><2><2> `else //<2><2><2> //<2><2><2> `endif //<2><2><2> //<1><1><1> `ifndef E_2 //<2><2><2> //<2><2><2> `elsif E_3 //<2><2><2> //<2><2><2> `endif //<2><2><2> //<1><1><1> `endif //<1><1><1> `ifdef A //<1><1><1> //<1><1><1> `ifdef B //<2><2><2> //<2><2><2> `else //<2><2><2> //<2><2><2> `endif //<2><2><2> //<1><1><1> `elsif C //<1><1><1> //<1><1><1> `else //<1><1><1> //<1><1><1> `endif //<1><1><1> /* //<1><1><1> `ifdef X //<1><1><1> //<1><1><1> `else //<1><1><1> //<1><1><1> `endif //<1><1><1> */ //<1><1><1> module_name #( //<1><1><1> .PARAM1 (VALUE1) //<1><1><1> ) //<1><1><1> instance_name( //<1><1><1> .port1 (net1), //<1><1><1> .port2 (net2) //<1><1><1> ); //<1><1><1> module_name instance_name( //<1><1><1> .port1 (net1), //<1><1><1> .port2 (net2) //<1><1><1> ); //<1><1><1> module_name #(VALUE1) instance_name ( //<1><1><1> .port1 (net1), //<1><1><1> .port2 (net2) //<1><1><1> ); //<1><1><1> module_name #(VALUE1) instance_name //<1><1><1> ( //<1><1><1> .port1 (net1), //<1><1><1> .port2 (net2) //<1><1><1> ); //<1><1><1> uvm_blocking_put_port #(trans) out; //<0><0><0> task t_multi_line( //<1><1><1> input an_input //<1><1><1> ); //<1><1><1> //<1><1><1> endtask : t_multi_line //<1><1><1> task t_multi_line_indented( //<1><1><1> input an_input //<1><1><1> ); //<1><1><1> //<1><1><1> endtask : t_multi_line //<1><1><1> if (cond1) begin //<1><1><0> do1(); //<1><1><0> end else if (cond2) begin //<1><1><0> do2(); //<1><1><0> do3(); //<1><1><0> do4(); //<1><1><0> end else begin //<1><1><0> do5(); //<1><1><0> end //<1><1><0> if (cond1) //<0><0><0> do1(); //<0><0><0> else if (cond2) begin //<1><1><0> do2(); //<1><1><0> begin //<2><2><0> do2_1(); //<2><2><0> end //<2><2><0> do3(); //<1><1><0> do4(); //<1><1><0> end else begin //<1><1><0> do5(); //<1><1><0> end //<1><1><0> if (cond1) begin : b1 //<1><1><1> do1(); //<1><1><1> end else if (cond2) begin : b2 //<1><1><1> do2(); //<1><1><1> do3(); //<1><1><1> do4(); //<1><1><1> end else begin : b3 //<1><1><1> do5(); //<1><1><1> end //<1><1><1> if (cond1) //<0><0><0> do1(); //<0><0><0> else if (cond2) begin : b1 //<1><1><1> do2(); //<1><1><1> begin:b2 //<2><2><2> do2_1(); //<2><2><2> end //<2><2><2> do3(); //<1><1><1> do4(); //<1><1><1> end else begin //<1><1><1> do5(); //<1><1><0> end else begin:b3 //<1><1><1> do5(); //<1><1><1> end //<1><1><1> task something; //<1><1><1> fork //<1><1><1> begin //<2><2><1> begin //<3><3><1> end //<3><3><1> /* //<3><3><2> begin //<3><3><2> end //<3><3><2> */ //<3><3><2> end //<2><2><1> join //<1><1><1> endtask //<1><1><1> // spyglass disable_block SOMETHING //<1><1><1> assign a = b & c; //<1><1><1> // spyglass enable_block SOMETHING //<1><1><1> // vi: set expandtab softtabstop=4 shiftwidth=4: