我正在尝试在我的项目中实现一个模块,我需要最终值稳定一段时间,因此实现如下。它们都在模拟中显示相同的结果。该工具会生成相同的硬件还是不同的硬件?
always @(posedge clk) begin
if(en)
count <= count + 1;
else
begin
a <= count;
count <= 0;
end
if(count == 0) b <= a;
end
上面的编码风格和下面的编码风格有什么区别?合成时会有什么不同吗?
always @(posedge clk) begin
if(en)
count <= count + 1;
else
begin
a <= count;
count <= 0;
end
end
always @(posedge clk) begin
if(count == 0)
b <= a;
end
我正在使用Vivado 2015.4工具进行综合。
答案 0 :(得分:0)
该工具会生成相同的硬件还是不同的硬件?
点击Vivado的“开放式精心设计”,亲身体验!
但你会发现:它们是等同的。没有任何区别。
答案 1 :(得分:0)
它将生成相同的硬件输出。将时钟语句拆分为一个或多个always语句并不重要,只要它们在功能上完全相同。