verilog中integer real数据类型

Given a 100-bit input vector [99:0], reverse its bit ordering.

说明:整数(integer)

 integer类型也是一种寄存器数据类型,integer类型的变量为有符号数,而reg类型的变量则为无符号数,除非特别声明为有符号数,还有就是integer的位宽为宿主机的字的位数,但最小为32位,用integer的变量都可以用reg定义,只是用于计数更方便而已。reg,integer,real,time都是寄存器数据类型,定义在Verilog中用来保存数值的变量,和实际的硬件电路中的寄存器有区别。

      大多数的矢量类型(reg或者net)都被默认当做无符号数。integer和real是个例外,它们被默认为当做有符号数。

real类型是不可综合的。
原文链接:https://blog.csdn.net/liqiang9410/article/details/76983900

                                                                                      

|        integer类型也是一种寄存器数据类型,integer类型的变量为有符号数,而reg类型的变量则为无符号数,除非特      

|        别声明为有符号数,还有就是integer的位宽为宿主机的字的位数,但最小为32位,用integer的变量都可以用reg定

|        义,只是用于计数更方便而已。reg,integer,real,time都是寄存器数据类型,定义在Verilog中用来保存数值的变

|        量,和实际的硬件电路中的寄存器有区别。

|        大多数的矢量类型(reg或者net)都被默认当做无符号数。integer和real是个例外,它们被默认为当做有符号数。  

|        通常,real类型是不可综合的。                                      

 

 

  1.   module top_module(
  2.   input [99:0] in,
  3.   output [99:0] out
  4.   );
  5.   always @(*) begin
  6.   for(integer i= 0;i < 100 ; i++)begin
  7.   out[i] = in[99-i];
  8.   end
  9.   end
  10.   endmodule
    1.   //还是习惯于使用reg类型的变量
    2.    
    3.    
    4.   module top_module(
    5.   input [99:0] in,
    6.   output [99:0] out
    7.   );
    8.   reg [7:0] i;
    9.   always @(*) begin
    10.   for( i= 0;i < 7'd100 ; i= i + 1)begin
    11.   out[i] = in[99-i];
    12.   end
    13.   end
    14.   endmodule
上一篇:ARM watchpoint/breakpoint registers


下一篇:CentOS6 DNS解析缓慢 SSH登录缓慢 问题解决