VHDL中如何使用数组

如题所述

第1个回答  2011-01-14
补充一下,楼上的使用不太正确,type只是定义了一种类型(stb,数组),之后如果要使用数组的话,还需要定义相应的signal:
signal stb_array : stb;
这样,stb_array就是一个1行,8列的一组std_logic的信号了,stb_array(0),stb_array(1)。。。依次类推
第2个回答  2011-01-14
type <数组名> is array <数组范围> of <数据类型>;

type stb is array (7 downto 0) of std_logic;
这个数组名称是stb,有8个元素stb(7),stb(6),...stb(0).本回答被网友采纳

VHDL中如何使用数组
补充一下,楼上的使用不太正确,type只是定义了一种类型(stb,数组),之后如果要使用数组的话,还需要定义相应的signal:signal stb_array : stb;这样,stb_array就是一个1行,8列的一组std_logic的信号了,stb_array(0),stb_array(1)。。。依次类推 ...

VHDL中数组的定义和使用?
SIGNAL a: matrix_index;--定义了数组a[4],即数组元素为a[0],a[1],a[2],a[3]constant R : matrix_index:=( x"15", x"0F", x"0A", x"06");--定义了常数数组R[4]--使用时跟C语言中一样,加下标就可以了,上面是用downto定义了方向,故R[0]是最后一项,如在R数组中R[...

vhdl语言中的数组如何定义和使用?
type matrix_type IS array (7 downto 0) of std_logic_vector (7 downto 0 signal matix : matrix_type; ---matix 是二维8*8数组,信号 赋值:matrix(3)(4)<='1';matrix(2)<="11111111";matrix(1 downto 0)(2)<="11";

VHDL有8个常数需要用到,怎么把他们放到一个数组里,赋值怎么弄?_百度...
constant R : matrix_index:=( x"15", x"0F", x"0A", x"06", x"2F", x"3A", x"4E", x"50 );--定义了常数数组R[8]--使用时跟C语言中一样,加下标就可以了,上面是用downto定义了方向,故R[0]是最后一项,如在R数组中R[0]=X"50",R[3]=X"2F",R[7]= x"15"VHDL...

VHDL语言中整数数组怎么定义和使用
输入: a:IN STD_LOGIC_VECTOR(7 DOWNTO 0);输出: b:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);(8位数据同时输入或输出)其他类比 还有一种就是直接给出范围:a:IN INTEGER RANGE 0 TO 255 ;这种情况下系统会自动分配位数,本例为8位。如果是 0 到7,则是3位;如果是 0 到15,则...

vhdl 程序中如何定义二维数组?要求存放40个数,每个数占16位?
type array_type is (39 downto 0) of std_logic_vector(15 downto 0);signal array : array_type;这是定义40个16bit的数。如果你的40个数是又是5行8列的,可以这么写 type array_1type is (4 downto 0) of std_logic_vector(15 downto 0);type array_2type is (7 downto 0) ...

如何在VHDL中定义一个数组存放四个8位二进制数?
声明一个二维数组,就可以将4个8位std_logic类型的值放在一个数组中了。

verilog模块端口为二维数组如何调用?
必须分解为一维数组,然后再端口上一一列出。所以这点不如VHDL。 \\x0d\\x0a其实你如果嫌麻烦,可以变通一下的,比如做个接口,将两者对接。举例如下:\\x0d\\x0a你需要调用一个128*64存储器,但是设计128个64位宽的线组\/寄存器组,管理起来很不方便,比如\\x0d\\x0aa0[63:0],a1[63:0],a2[63...

问一下VHDL的数组array的语法,请帮我解释一下下面的语句是什么意思...
第一句应该是错了,array()这里括号中应是某种自定义的或者标准的范围量,而不是std_uLogic这种标准数据类型,参照第三句的形式。第二句不合适,of后面一般应是自定义好的信号或者变量,很少见到STD_ULOGIC这种标准的数据类型,因为由STD_ULOGIC组成的数组其实就是std_uLogci_vector(直接signal MVL9_...

VHDL语言,如何定义二维数组,急!!
可以这样定义3×2的二维数组:type TableName is array (2 downto 0,1 downto 0) of STD_LOGIC;应用时:constant table:TableName:= (('0','1'),('0','1'),('0','1')) ;

相似回答