艾米电子工作室FPGA系列文章 ——Verilog中integer与reg的区别
By 艾米电子
2009-03-16
原文下载:
此片文章源于网友的一个问题?
原文地址:
http://amy-dz.bbs.id666.com/ShowPost.asp?ThreadID=94
开发板子LED例程中,计数变量为什么使用整数阿,跟使用reg有什么区别嘛?
以前一直用,也没有多想这二者之间的区别,今天抱着验证态度,做一个简单的测试,结论是:使用计数器寄存器的时候 还是 利用合适的位宽reg类型比较好,养成好习惯,对以后的深入学习很用帮助,附图如下:
图1 采用reg消耗资源情况
图2 采用integer消耗资源情况
图3 采用reg 内部RTL
图4 采用integer 内部RTL
附源程序如下:
module test(
clk_in,
clk_out
);
input clk_in;
output clk_out;
reg clk_out;
parameter DIV = 3;
reg [3:0] count;
//integer count;
always @(posedge clk_in)
begin
if( count == DIV)
begin
count <= 0;
clk_out = ~clk_out;
end
else
count <= count + 1'b1;
end
endmodule