Verilog HDL常用的行为仿真描述语句(五)

五、task和function语句

task语句和function语句可以将固定操作封装起来,配合延时控制语句,可精确模拟大多数常用的功能模块。

 

例:

'timescale 1ns / 1ps module tb_tri; parameter bsize = 8; parameter clk_period = 2; parameter cac_delay = 6; reg [(bsize-1):0] din; reg [(3*bsize-1):0] dout; // 定义完成3次方运算的task task tri_demo; input [(bsize-1):0] din; output [(3*bsize-1):0] dout; #cac_delay dout = din*din*din; endtask // 在串行语句块中调用task initial begin din = 0; end always #clk_period begin din = din + 10; // 任务调用语句 tri_demo(din, dout); end endmodule

你可能感兴趣的:(function,任务,delay)