include verilog.snip
snippet alc
abbr always_comb
always_comb begin
${1:TARGET}
end
snippet alf
abbr always_ff @()
always @(posedge ${1:clk} iff !${2:rst} or posedge $2) begin
if (${2}) begin
${3:TARGET}
end else begin
end
end
snippet all
abbr always_latch
always_latch begin
if (${1:enable}) begin
${2:TARGET}
end
end
snippet rw
abbr logic [] _r, _w;
logic${1:#: nbit} ${2:reg}_r, $2_w;${3:TARGET}
snippet struct
typedef struct packed {
${2:TARGET}
} ${1:name} ;
snippet enum
typedef enum {${2:TARGET}} ${1:name};
snippet for
for (int ${1:i} = ${2}; $1 < ${3}; ${4:do what}) begin
${5:TARGET}
end
snippet case_parallel
unique case (${1}) begin
${2:'b0}: begin
${3}
end
end
snippet case_full
priority case (${1}) begin
${2:'b0}: begin
${3}
end
end