描述
该应答记录描述了一些设计者可以结合的HDL编码实践,以加快运行时间。
解决方案
下面的示例verilog代码有可能减慢运行时:
模块测试4(CLK,DIN,DOUT);
参数宽度=20000;
输入CLK;
输入[WIDTH-1:0] DIN;
输出寄存器[WIDTH-1:0] DOUT;
生成
开始
一、二;
(i=0;i;lt;宽度;i=i+1)
从开始
“永远”@(Posik CLK)
[1],[I]和[d] [I] <= din [i];
γ端
第一端
生成的
终端模块
在上面的示例代码中,观察到“for循环”结构的存在包含了始终语句,这是运行时间较长的首要原因。
若要处理此长运行时行为,请按照以下方式修改上述示例Verilog代码,以帮助减少运行时:
模块测试4(CLK,DIN,DOUT);
参数宽度=20000;
输入CLK;
输入[WIDTH-1:0] DIN;
输出寄存器[WIDTH-1:0] DOUT;
整数i;
生成
开始
“永远”@(POSEDGE CLK)
开始时
(i=0;i;lt;宽度;i=i+1)
[2];
γ端
第一端
生成的
终端模块
在上面的示例代码中,在CURE语句下移动循环结构有助于减少较长的运行时间。上述HDL编码风格应被视为一种替代有效的解决方案,由用户减少更长的运行时间。
没有回复内容