存储器的设计 寻址存储器(RAM 和ROM) ROM 和RAM 属于通用大规模器件,一般不需要自行设计,特别是采用PLD 器件进行设计时; 但是在数字系统中,有时也需要设计一些小型的存储器件,用于特定的用途:临时存放数据,构成查表运算等
此类器件的特点为地址与存储内容直接对应,设计时将输入地址作为给出输出内容的条件; RAM 随机存储器 RAM 的用途是存储数据,其指标为存储容量和字长; RAM 的内部可以分为地址译码和存储单元两部分; 外部端口为: wr 写读控制 cs 片选 d 数据端口 adr 地址端口 例 16x8 位 RAM 的设计 设计思想: 将每个 8 位数组作为一个字(word);总共存储16 个字; 将 ram 作为由 16 个字构成的数组,以地址为下标; 通过读写控制模式实现对特定地址上字的读出或写入; library ieee; use ieee
std_logic_1164
all; use ieee
std_logic_unsigned
all; entity kram is port ( clk,wr,cs: in std_logic; d: inout std_logic_vector(7 downto 0); adr: in std_logic_vector(3 downto 0)); end kram; architecture beh of kram is subtype word is std_logic_vector(7 downto 0); type memory is array (0 to 15) of word; signal adr_in:integer range 0 to 15; signal sram:memory; begin adr_in