不枉初心,砥砺前行

皮皮祥的博客

欢迎留言,评论

导航

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

posted on 2021-10-25 09:23  皮皮祥  阅读(1686)  评论(0编辑  收藏  举报