原创 【博客大赛】高级设计第一章低延迟优化实例之三次方

2013-12-9 16:00 3499 18 18 分类: FPGA/CPLD 文集: FPGA高级设计(编译)

修改三次方代码,优化系统延迟。

 

以下是三次方代码修改后的代码片段:

module power3c(

       output[7:0]XPower,
       input[7:0]X
);
reg[7:0] XPower1,XPower2;
reg[7:0] X1,X2;
assign XPower=XPower2*X2;
always@*begin
  X1=X;
  XPower1=X;
  end
always@*begin
  X2=X1;
  XPower2=XPower1*X1;
  end
endmodule

与上一篇博文比较,这里将寄存器从代码中剥离,那么QuartusII编译的结果怎样呢,如图1所示。

 

1.jpg

图1:低延时实现方案

可以看到如图1所示,如果输入和输出都经过了寄存器寄存,那么输入和输出之间的延时最小,即一个时钟周期,前提是乘法操作的延时时间小于半个时钟周期。对比原书结果,没有丝毫差别。再次验证代码上的优化,跟综合工具没有相关关系。

文章评论0条评论)

登录后参与讨论
我要评论
0
18
关闭 站长推荐上一条 /2 下一条