[求助] vhdl如何定义数组?

huangfujing   2016-5-16 13:12 楼主
用RAM 的IP核进行读写操作,要用数组将写进ram的值存储下来,下面是代码,编译不通过,出现Error (10476): VHDL error at testRam.vhd(61): type of identifier "datain" does not agree with its usage as "integer" type是我的输入的数据和地址都应该换成整数输入么?

TYPE matrix_index is array (31 downto 0) of std_logic_vector(31 downto 0);

SIGNAL men_data: matrix_index;

begin
       
        process(clock,rst)
                begin
               
                if(clock='1'and clock'event) then
                        if(rst='1')then
                                count <=(others=>'0');
                        else
                                if wren='0'then
                                                count <= count +1;
                                end if;
                        end if;
                end if;

                if(clock='1'and clock'event) then
                        if(rst='1')then
                                datain<=(others=>'0');
                                address1<=(others=>'0');
                        else
                                if wren='1'then                                   --写有效
                               
                                        datain<=datain+1;
                                        address1<=address1+1;
                                        men_data(datain)<=datain;
                                else                        --读有效 读出某个地址上的数据
                                        address1<=men_data(count);
                                end if;
                        end if;
                end if;
        end process;


回复评论 (3)

MicroPython中文社区https://micropython.org.cn/forum/  
点赞  2016-5-16 21:37
引用: 5525 发表于 2016-5-16 21:37 推荐参考 http://www.rfwireless-world.com/source-code/VHDL/read-write-RAM-vhdl-code.html大神,问一下,ram这个可以选取地址读出相对应的数据么?
本帖最后由 huangfujing 于 2016-5-17 20:47 编辑
点赞  2016-5-17 14:19
RAM必须能支持读数据,只能写不能读这个RAM没意义啊。

下面就是根据地址,选择数据输出
data_out <= ram1_1(conv_integer(r_add));
MicroPython中文社区https://micropython.org.cn/forum/  
点赞  2016-5-17 22:05
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复