By 艾米电子<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
2009-03-16
原文下载:
此片文章源于网友的一个问题?
原文地址:
http://amy-dz.bbs.id666.com/ShowPost.asp?ThreadID=94
开发板子LED例程中,计数变量为什么使用整数阿,跟使用reg有什么区别嘛?
以前一直用,也没有多想这二者之间的区别,今天抱着验证态度,做一个简单的测试,结论是:使用计数器寄存器的时候 还是 利用合适的位宽reg类型比较好,养成好习惯,对以后的深入学习很用帮助,附图如下:
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />
图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
用户226668 2009-5-8 10:27
zhangshaobing517_935512703 2009-3-17 23:24
zhaoliang_0801_926809075 2009-3-17 19:31
ilove314_323192455 2009-3-17 19:12