文档详情

存储器设计范例.pdf

发布:2018-03-16约1.38万字共10页下载文档
文本预览下载声明
第 8 章 存储器设计范例 在数字电路中,存储器是一种能够存储大量二进制信息的逻辑电路,通常用于数字系 统中大量数据的存储。存储器的工作原理是,存储器为每一个存储单元编写一个地址,因此 只有地址指定的那些存储单元才能够与公共的I/O 相连,然后进行存储数据的读/写操作。 通常按存取方式把存储器分为只读存储器(ROM )、随机存储器(RAM )、顺序存储器 和直接存取存储器 4 类。本章将介绍其中的只读存储器(ROM )、随机存储器(RAM )、堆 栈和FIFO 的设计方法。 8.1 只读存储器 (ROM) ROM 是一种重要的时序逻辑存储电路,它的逻辑功能是在地址信号的选择下,从指定 存储单元中读取相应的数据。ROM 只能进行数据的读取,而不能修改或写入新的数据。本 节将以16×8 的ROM 为例,介绍ROM 的设计方法。 1.电路符号 ROM 的电路符号如图8-1-1 所示。输入信号:地址选择信号 addr[3..0] ;使能端en 。输 rom 出信号:数据输出端data[7..0] 。 addr[3..0]addr[3..0] data[7..0]data[7..0] 2 .设计方法 enen 采用文本编辑法,利用 Verilog HDL 语言描述 ROM , inst 代码如下。 图 8-1-1 ROM 的电路符号 (1)代码一:使用 function 说明语句。 module rom(addr,data,en); input[3:0] addr; //地址选择信号 output[7:0] data; //数据输出端 input en; //使能端 reg[7:0] data; function[7:0] romout; input[3:0] addr; case(addr) 3h0 : romout = 8 //数据 3h1 : romout = 8 3h2 : romout = 8 3h3 : romout = 8 3h4 : romout = 8 3h5 : romout = 8 3h6 : romout = 8 3h7 : romout = 8 3h8 : romout = 8 第 8 章 存储器设计范例 255 3h9 : romout = 8 3h10 : romout = 8 3h11 : romout = 8 3h12 : romout = 8 3h13 : romout = 8 3h14 : romout = 8 3h15 : romout = 8 default : romout = 8bx; endcase endfunction always @(*) begin if(en) begin data=romout(addr); end
显示全部
相似文档