正在加载图片...
顺序存储器(堆栈和FIFO) 顺序存储器的特点是不设置地址,所有数据的写入和读 出都按顺序进行;数据写入或读出时通常会进行移位操作; 在设计时必须考虑各存储单元的存储状态: 堆栈(后进先出存储器) 要求:存入数据按顺序排放,存储器全满时给出信号并拒绝 继续存入;读出时按后进先出原则;存储数据一旦读出就从 存储器中消失; 设计思想: 将每个存储单元设置为字(word):存储器整体作为由字 构成的数组;为每个字设置一个标记(fag),用以表达该存 储单元是否已经存放了数据;每写入或读出一个数据时,字 的数组内容进行相应的移动,标记也做相应的变化 程序示例: use ieee std logic 1164. all use ieee std logic arith. all port(datain: in std logic vector(7 downto O); push, pop, reset, clk in std logic stackfull: out std logic, dataout: buffer std logic vector(7 downto O)) end stack顺序存储器(堆栈和 FIFO) 顺序存储器的特点是不设置地址,所有数据的写入和读 出都按顺序进行;数据写入或读出时通常会进行移位操作; 在设计时必须考虑各存储单元的存储状态; 堆栈(后进先出存储器) 要求:存入数据按顺序排放,存储器全满时给出信号并拒绝 继续存入;读出时按后进先出原则;存储数据一旦读出就从 存储器中消失; 设计思想: 将每个存储单元设置为字(word);存储器整体作为由字 构成的数组;为每个字设置一个标记(flag),用以表达该存 储单元是否已经存放了数据;每写入或读出一个数据时,字 的数组内容进行相应的移动,标记也做相应的变化; 程序示例: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_signed.all; entity stack is port(datain: in std_logic_vector(7 downto 0); push,pop,reset,clk:in std_logic; stackfull:out std_logic; dataout: buffer std_logic_vector(7 downto 0)); end stack;
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有