FPGA入门教程 FPGA架构教程 Verilog教程Verilog-2001 SystemC教程
返回首页
当前位置: FPGA主页 > FPGA教程 > Verilog-2001 >

12.Verilog-2001多维数组

时间:2009-12-18 14:55来源:未知 作者:zjl 点击:
Verilog-1995只允许一维数组,而Verilog-2001允许多维数组。 //1-dimensional array of 8-bit reg variables //(allowed in Verilog-1995 and Verilog-2001) reg [7:0] array1 [0:255]; wire [7:0] out1 = array1[address]; //3-dimensional

      Verilog-1995只允许一维数组,而Verilog-2001允许多维数组。
     
      //1-dimensional array of 8-bit reg variables
      //(allowed in Verilog-1995 and Verilog-2001)
      reg [7:0] array1 [0:255];
      wire [7:0] out1 = array1[address];
      //3-dimensional array of 8-bit wire nets
      //(new for Verilog-2001)
      wire [7:0] array3 [0:255][0:255][0:15];
      wire [7:0] out3 = array3[addr1][addr2][addr3];
      而且在Verilog-1995中不能对一维数组中取出其中的一位,比如要取出上面array1[7][5],需要将array1[7]赋给一个reg变量比如arrayreg <= array1[7],再从arrayreg中取出bit5,即arrayreg[5]。而在Verilog-2001中,可以任意取出多维数组中的一位或连续几位,比如:
     
      //select the high-order byte of one word in a
      //2-dimensional array of 32-bit reg variables
      reg [31:0] array2 [0:255][0:15];
      wire [7:0] out2 = array2[100][7][31:24];

(责任编辑:admin)
顶一下
(1)
100%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名:密码: 验证码:点击我更换图片
推荐内容