常用模块电路的设计.doc

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验三 常用模块电路的设计 一、实验目的: 掌握QuartusII宏功能模块的设计方法。 掌握VHDL设计ROM和RAM的方法。 掌握三态总线的设计与使用方法。 掌握4×4键盘扫描模块设计方法。 掌握PS2接口电路设计方法。 了解640×480VGA显示控制电路的原理和设计方法。 二、实验的硬件要求: EDA/SOPC实验箱。 计算机。 三、实验原理 1、QuartusII宏功能模块应用 Altera提供多种方法来获取Altera Megafunction Partners Program(AMPP?)和 MegaCore?宏功能模块,这些函数经严格的测试和优化,可以在Altera特定器件结构中发挥出最佳性能。可以使用这些知识产权的参数化模块减少设计和测试的时间。MegaCore和AMPP宏功能模块包括应用于通信、数字信号处理(DSP)、PCI和其它总线界面,以及存储器控制器中的宏功能模块。 Altera提供的宏功能模块与LPM函数有: ①算术组件: 包括累加器、加法器、乘法器和LPM算术函数; ②门电路: 包括多路复用器和LPM门函数。 ③I/O组件: 包括时钟数据恢复(CDR)、锁相环(PLL)、双数据速率(DDR)、千兆位 收发器块(GXB)、LVDS接收器和发送器、PLL重新配置和远程更新宏功能模块。 ④存储器编译器:包括FIFO Partitioner、RAM和ROM宏功能模块。 ⑤存储组件: 包括存储器、移位寄存器宏模块和 LPM 存储器函数。 宏功能模块应用可以通过元件库中的“Megafunctions/LPM”或“MegaWizard Plug-In Manager”进行参数化设置并使用。其操作方法请参考“QuartusII基于宏功能模块的设计”。 2、ROM和RAM存储器设计 用FPGA实现ROM和RAM存储器可以用逻辑单元,也可以用内含的EAB/ESB,一般用VHDL直接构造存储器时用的是逻辑单元,对于内含EAB/ESB的FPGA芯片,使用“MegaWizard Plug-In Manager”定制存储器,可选择使用EAB/ESB,这样可以节约大量的逻辑单元。 一般较大规模的ROM和RAM使用“MegaWizard Plug-In Manager” 定制,而较小规模,且有特殊特性要求时用VHDL直接构造。 3、 四、实验内容: 1、QuartusII宏功能模块实现ROM存储器模块 ①新建一个原理图文件。 ②使用“MegaWizard Plug-In Manager”向导,按图3.1的步骤定制一个32×8bit的ROM模块。 ③建立内存初始化文件 QuartusII 能接受的LPM_ROM 中的初始化数据文件的格式有2 种:Memory Initialization File (.mif)格式和Hexadecimal(Intel-Format)File(.hex)格式。内存初始化文件可以手工编写,也可以用其它软件生成。本例数据量较小,可以在QuartusII中直接file→new→……Memory File→Memory Initialization File,然后填写每个存储单元的数据(如:0~31依次递增)即可。 图3.1使用“MegaWizard Plug-In Manager”定制ROM ④生成图3.2所示的ROM模块添加管脚,编译并仿真测试。 图3.2 测试ROM模块 2、QuartusII宏功能模块实现RAM存储器模块 RAM与ROM定制方法相似,按图3.3定制一个 32×8bit一端口RAM,该RAM读写共用一个地址总线,“wren”为写入信号,高电平有效。除了一端口RAM,还有二端口、三端口RAM,也可以采用读写地址总线分开的形式。还有一种形式,读写数据采用同一条总线,应使用三态总线,且读写控制必须分开进行。 图3.3 32×8bit一端口RAM 图3.4为仿真波形,注意观察哪些地址位写入了什么数据? 图3.4 一端口RAM仿真波形 3、用VHDL设计ROM和RAM 用VHDL可以非常灵活地设计各种特性的存储器。图3.5和图3.6分别是实现ROM和RAM的VHDL代码。 图3.5 一端口ROM存储器VHDL代码 图3.5的ROM存储器采用组合逻辑电路方式设计,从下面的功能仿真波形可以看到,输出“d”与地址“adr”同步变化。请改用时序逻辑电路方式实现,该怎么描述?输出“d”与地址“adr”的时序关系是怎样的? 图3.6的RAM读写数据采用一条总线“d”,“d”应使用“inout”类型端口,注意代码中是如何描述三态总线的?(要点:没有数据输出的时候(只有wr=0并且cs=1时才输出数据),“d”应设置为高阻态,即释放总线,允许总线输入数据。) 图3.6 一端口RAM存储器VHD

文档评论(0)

ktj823 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档