您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > 存储器功能部件的设计与实现
存储器功能部件的设计与实现一、实验目的1、学习QuartusII软件的基本操作2、理解存储器的基本原理和过程3、设计出存储器功能部件并对设计的正确性进行验证二、实验内容1、设计出功能完善的存储器功能部件,并对设计的正确性进行验证。具体要求如下:(1)用图形方式设计出存储器功能部件的电路原理图(2)测试波形要用时序仿真实现,验证存储器的读、写操作(3)写、读操作至少要访问到4个不连续的存储单元,即先向4个以上不连续的存储单元中写入不同的数据,再依次读出(4)将设计文件封装成器件符号(5)存储器的数据宽度最好为16位2、存储器扩展实验,具体如下:(1)用图形方式设计出存储器功能部件的电路原理图(2)用数据宽度为4或8,地址宽度为6的存储器,扩展成数据宽度为16,地址宽度为8的存储器(3)测试波形要用时序仿真实现,验证存储器的写、读操作,要访问到所有的存储器器件,即如果存储器的扩展设计用了8个存储器器件,就要用至少8个不同的数据,访问8个不同地址的存储单元,而这8个不同地址的存储单元,分别位于8个存储器器件中(4)将设计文件封装成器件符号三、实验装置安装有QuartusII软件的PC机1台。四、实验原理(1)存储器功能部件设计利用参数化宏功能模块LPM_RAM_DQ设计16位存储器相对简单,只需要在存储模块定义LPM_RAM_DQ的参数数据位数LMP_WIDTH为16位、地址位数LMP_WIDTHAD为8即可定义成相应容量的存储器。在该设计中需要说明的是,为了方便将设计的存储器模块用到总线系统中,所设计的模块要具有数据暂存和三态输出的功能,因此在存储器数据输入端需要添加数据暂存功能,在存储器数据输出端需要添加三态输出功能,即还要用到74213、74244芯片作为存储器的输入和输出。(2)存储器扩展实验存储器扩展实验要求在利用参数化宏功能模块LPM_RAM_DQ设计存储器时数据位数LMP_WIDTH设置为4或8、地址位数LMP_WIDTHAD为6,再利用这样设计的存储器模块进行字扩展(地址宽度扩展)和位扩展(数据宽度扩展),最终实现数据宽度为16、地址宽度为8的存储器。五、设计六、实验结果数据寄存器74273*2地址寄存器74273存储器LPM_RAM_DQ三态门74244*2RDWRWRE(1)原理图数据暂存功能:用1个74273作为8位地址的数据暂存器,用2个74273作为16位数据的数据暂存器。从总线上输入的数据首先存入这3个暂存器中,再通过写功能将数据写入存储器中相应地址。三态输出功能:用2个74244作为16位数据的三态输出。打开三态门,给出读信号和地址,从存储器中的相应地址里的数据读出打入总线。存储器:用一个LPM_RAM_DQ芯片。LPM_WIDTH设置为16,表示数据位数为16位,LPM_WIDTHAD设置为8,表示地址位数为8位。data[]端接2个74272组成的数据暂存器,address[]端接1个74274组成的地址暂存器,q[]端接2个74244组成的三态输出。(2)波形仿真写功能:将clka打开,在a[]中输入8位地址,0012、0044、0013、00AA。将clkd打开,在in[]中输入16位数据,对应上面的4个地址,1234、AB2C、3F4A、23DA。将清零端设置为无效将存储器的写使能WRE打开,写控制WR打开,读控制RD关闭,数据写入相应的地址。读功能:将clka打开,在a[]中输入8位地址,0012、0044、0013、00AA。将存储器的写使能WRE关闭,写控制WR打开,读控制RD打开,且WR在RD之前,输出端out[]读出相应地址的数据。(3)器件封装七、实验总结通过这次实验,我们更加了解了存储器的工作原理,以及存储器在写存储和读存储的过程。在连线过程中我也能够更加熟练地连接线,有了很大的收获。同时加强了对课本教材的理解,增加了动手实践能力,通过与队友的合作,更深刻的体会到了团队力量的重要性。另外在本次实验中,我们也学会了如何将复杂问题分解成多个简单模块,这样可以很大程度上简化整个设计以及实现上的难度。
本文标题:存储器功能部件的设计与实现
链接地址:https://www.777doc.com/doc-2485398 .html