集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 1441|回复: 3

把4*4矩阵rom改为16*16矩阵rom

[复制链接]
chump0912 发表于 2014-4-18 08:35:41 | 显示全部楼层 |阅读模式
我用VHDL编辑一个4*4的矩阵交织器。

这只是其中一个模块,要求是能储存一个16*16的矩阵。
ibrary ieee;
use ieee.std_logic_1164.all;
entity rom is
generic(n:integer:=16);
port(addr: in integer range 0 to n-1;
     clk: in std_logic;
     data: out std_logic_vector(7 downto 0));
     end rom;
architecture rtl of ROM is
subtype rom_word is std_logic_vector(7 downto 0);
type rom_table is array(0 to 15) of rom_word;
constant rom: rom_table:=rom_table'(
rom_word'("00000000"),
rom_word'("00000100"),
rom_word'("00001000"),
rom_word'("00001100"),
rom_word'("00000001"),
rom_word'("00000101"),
rom_word'("00001001"),
rom_word'("00001101"),
rom_word'("00000010"),
rom_word'("00001010"),
rom_word'("00001110"),
rom_word'("00000110"),
rom_word'("00000011"),
rom_word'("00000111"),
rom_word'("00001011"),
rom_word'("00001111"));
begin process(clk)
begin
     if clk'event and clk='1' then
     data<=rom(addr);
     end if;
     end process;
     end rtl;

现在我想把这矩阵改为16*16的。我应该怎么改?
昵小筑 发表于 2014-4-18 09:36:31 | 显示全部楼层
这个得调用256个字节大小的rom,然后把数据保存到rom中,再根据地址调用就好了
 楼主| chump0912 发表于 2014-4-18 10:01:43 | 显示全部楼层
昵小筑 发表于 2014-4-18 09:36
这个得调用256个字节大小的rom,然后把数据保存到rom中,再根据地址调用就好了

恩,这样,那我应该在原有的程序上怎么改?
昵小筑 发表于 2014-5-11 15:09:32 | 显示全部楼层
建立一个256个字节大小的rom,把相应的数值写进去。 再将ROM例化进模块里不行吗
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2025-5-7 07:20 , Processed in 0.059662 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表