课程设计(论文)-基于VHDL的ROM的设计与仿真.doc
-
资源ID:11032539
资源大小:8.56MB
全文页数:17页
- 资源格式: DOC
下载积分:4元
快捷下载
![游客一键下载](/images/hot.gif)
会员登录下载
微信登录下载
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
课程设计(论文)-基于VHDL的ROM的设计与仿真.doc
课程设计说明书 NO.1 ROM的VHDL设计与仿真 沈 阳 大 学课程设计说明书 NO.2 目 录1、课程设计的目的.12、设计方案论证 .23、课程设计的程序编写 .44、设计结果与分析 .65、心得体会.136、参考文献.14 沈 阳 大 学课程设计说明书 NO.11.课程设计的目的 IC设计基础课程设计是学习IC设计基础课程之后的实践教学环节。 根据课堂讲授内容,学生做相应的自主练习,消化课堂所讲解的内容;通过调试典型例题或习题积累调试电路程序的经验;通过完成辅导教材中的编程题,逐渐培养学生的编程能力、用计算机解决实际问题的能力。其目的是训练学生综合运用学过的IC设计技术的基础知识,通过解决比较简单的实际问题巩固和加深在IC设计基础课程中所学的理论知识和实验技能。独立完成查找资料,选择方案,设计电路,安装调试,分析结果,撰写报告等工作。使学生进一步理解所学本课程的内容,初步掌握模拟电子电路设计的一般方法步骤,通过理论联系实际提高和培养学生。并理论联系实际提高和培养学生的分析、解决实际问题的能力,创新能力及动手能力,为后续课程的学习、毕业设计、毕业后的工作打下基础。在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过课程设计,把以前所学过的知识重新温故,巩固了所学的知识。 沈 阳 大 学课程设计说明书 NO.22.设计方案论证2.1软件介绍 Max+plus是Altera公司提供的FPGA/CPLD开发集成环境,Altera是世界上最大可编程逻辑器件的供应商之一。Max+plus界面友好,使用便捷,被誉为业界最易用易学的EDA软件。在Max+plus上可以完成设计输入、元件适配、时序仿真和功能仿真、编程下载整个流程,它提供了一种与结构无关的设计环境,是设计者能方便地进行设计输入、快速处理和器件编程。Max+plus开发系统的特点:1、开放的界面,Max+plus支持与Cadence,Exemplarlogic,Mentor Graphics,Synplicty,Viewlogic和其它公司所提供的EDA工具接口。2、与结构无关,Max+plus系统的核心Complier支持Altera公司的FLEX10K、FLEX8000、FLEX6000、MAX9000、MAX7000、MAX5000和Classic可编程逻辑器件,提供了世界上唯一真正与结构无关的可编程逻辑设计环境。3、完全集成化,Max+plus的设计输入、处理与较验功能全部集成在统一的开发环境下,这样可以加快动态调试、缩短开发周期。4、丰富的设计库,Max+plus提供丰富的库单元供设计者调用,其中包括74系列的全部器件和多种特殊的逻辑功能(Macro-Function)以及新型的参数化的兆功能(Mage-Function)。5、模块化工具,设计人员可以从各种设计输入、处理和较验选项中进行选择从而使设计环境用户化。6、硬件描述语言(HDL),Max+plus软件支持各种HDL设计输入选项,包括VHDL、Verilog HDL和Altera自己的硬件描述语言AHDL。7、Opencore特征,Max+plus软件具有开放核的特点,允许设计人员添加自己认为有价值的宏函数。2.2ROM概述 在数字电路中,存储器是一种能够存储大量二进制信息的逻辑电路,用来构成数字电路或数字系统中的存储部分。对于存储起来说,由于存储单元数目极大而器件的引脚数目有限,因此存储器采用一种地址的方法来进行存储单元的访问,这样可以大大减低存储器引脚的数目。一般可以将存储器分为只读存 沈 阳 大 学课程设计说明书 NO.3储器(ROM),和随机存储器(RAM)。ROM按其性能不同可分为:ROM,只读内存(Read-Only Memory)是一种只能读取资料的内存;PROM可编程程序只读内存(Programmable ROM,PROM)之内部有行列式的镕丝,视需要利用电流将其烧断,写入所需的资料,但仅能写录一次;.EPROM,可抹除可编程只读内存(Erasable Programmable Read Only Memory,EPROM)可利用高电压将资料编程写入,抹除时将线路曝光于紫外线下,则资料可被清空,并且可重复使用;EEPROM ,电子式可抹除可编程只读内存(Electrically Erasable Programmable Read Only Memory,EEPROM)之运作原理类似EPROM,但是抹除的方式是使用高电场来完成,因此不需要透明窗。只读存储器在正常工作时从中读取数据,不能快速地修改或重新写入数,适用于存储固定数据的场合。下图是一个ROM存储的例子,该ROM有4位地址线ADDR(0)ADDR(3),8位数据输出线DATAOUT(0)DATAOUT(7)及使能CE,如图1所示。图1 ROM原理图 沈 阳 大 学课程设计说明书 NO.4表1 ROM端口说明端口宽度方向说明CE1输入控制引脚ADDR3.04输入从处理器来的地址DATAOUT7.08输出输出到ROM的地址信号 本次课程设计设计的是寻址存储器设计:16*8位ROM2.3源程序library ieee;use ieee.std_logic_1164.all;entity rom is port(dataout:out std_logic_vector(7 downto 0); addr:in std_logic_vector(3 downto 0); ce:in std_logic);end entity;architecture d of rom is signal id:std_logic_vector(4 downto 0);begin id<=addr & ce;dataout<="00001111"when id="00000"else "11110000"when id="00010"else "11001100"when id="00100"else "00110011"when id="00110"else "10101010"when id="01000"else "01010101"when id="01010"else 沈 阳 大 学课程设计说明书 NO.5 "10011001"when id="01100"else "01100110"when id="01110"else "00000000"when id="10000"else "11111111"when id="10010"else "00010001"when id="10100"else "10001000"when id="10110"else "10011001"when id="11000"else "01100110"when id="11010"else "10100110"when id="11100"else "01100111"when id="11110"else "XXXXXXXX"end d; 沈 阳 大 学课程设计说明书 NO.63.设计结果与分析 将以上程序写入MAX+plus软件中进行运行仿真,首先新建一个text editor file文档,如图2所示,单击“OK”,即可新建,将源程序写入其中,如图3所示。图2 新建一个text editor file文档图3将程序写入text editor file文档将此程序保存到目标目录,单击file选项,选择其中的save,或者直接单击工具栏中的保存按钮,会出现如图4所示对话框,将文件名填入File Name中,扩张名为.vhd,即保存为rom.vhd,单击“OK”即可。 沈 阳 大 学课程设计说明书 NO.7图4 保存文件将此文置顶,即点击菜单栏中File选项,选择其中的project,再选择下一级选项中的“set project to current file”即可实现置顶操作。然后进行编译,单击MAX+plusII软件的菜单栏中的MAX+plusII菜单,选择其中的Compiler选项就会出现编译过程图,单击Start即可实现编译,如果程序准确无误可得到如图5所示的编译结果图。图5 对rom程序进行编译的结果图 沈 阳 大 学课程设计说明书 NO.8 新建一个Graphic Editor File文档如图6所示,单击OK按钮,打开原理图编辑器,进入原理图设计输入电路编辑状态。 图6 新建Graphic Editor File文档 放置一个期间在院里图上,在原理图的空白处双击鼠标左键,出现窗口如图7所示,进入器件选择输入窗口。图7 选择元件图 沈 阳 大 学课程设计说明书 NO.9在“Symbol Name”提示处输入元件名称rom即可放置元件在原理图上,如图8所示。图8是一个16*8位rom,有两个输入端口,分别是CE和ADDR,一个输出端,是DATAOUT。图8 放置元器件结果图 接下来要保存原理图,单击按钮图标,对于新建文件,出现类似文件管理器的图框,选择保存路径、文件名称保存原理图,原理图的扩展名为.gdf,本实验中取名为rom.gdf。新建一个波形文件,即单击新建图标,选择其中的Waveform Editor file来进行新建,然后添加仿真激励信号波形,启动MAX+plusIIWaveform editor菜单,进入波形编辑窗口,将鼠标移至空白处单击右键,出现添加输入输出引脚对话窗口,选择Enter nodes form snf 选项并按左键确认,出现图9所示对话框,单击List和=>按钮,选择要仿真的引脚。单击OK按钮,列出仿真电路的输入输出引脚图。 沈 阳 大 学课程设计说明书 NO.10图9 添加rom仿真引脚 添加好输入、输出引脚后会出现如图10所示的引脚图,再对此图中的输入引脚按照源程序的要求进行初始化。输入引脚设置好后就可以进行仿真。图10 rom各引脚图 仿真前将此文件置顶,即点击菜单栏中File选项,选择其中的project,再选择下一级选项中的“set project to current file”即可实现置顶操作。然后进行仿真,单击菜单栏中的MAX+plusII菜单,选择其中的Simulator选项进行仿真。仿真过程如果准确无误则出现如图11所示的对话框。 沈 阳 大 学课程设计说明书 NO.11图11 仿真过程图 将此对话框关闭,观察波形仿真图的仿真结果,如图12所示。观察其中仿真过后的输出引脚是否与源程序给出的结果一致,如果仿真结果与源程序不一致则仿真出错或输入引脚设置有误,如果仿真结果与源程序一致则输入引脚初始化和仿真过程都正确。图12 输入、输出引脚仿真结果图 如果将输入引脚组按照源程序设置一个十进制值,进行仿真则会出现如图13所示仿真结果,结果为十六进制数。可以将此结果转换为二进制数来判断仿真是否正确。 沈 阳 大 学课程设计说明书 NO.12图13 输入引脚为十进制的仿真结果图由运行结果可知,输入端ADDR输入数据,经MAX+plusII软件进行运行仿真后得到输出端结果,经验证后仿真结果正确。本次课程设计实现了对16*8位rom的设计及仿真。该rom有4位地址线ADDR(0)ADDR(3),8位数据输出线DATAOUT(0)DATAOUT(7)及使能端CE,且CE为低电平有效。 沈 阳 大 学课程设计说明书 NO.134. 设计体会 通过这次IC设计基础技术课程设计,加强了我们动手能力,提高了我们的思考和解决问题的思维。此次设计我们选用的是MAX+plusII软件,在整个设计过程中整个小组的同学团结一致和互帮互助,遇到了很多问题,有时心里想着这样的接法可以行得通,但实际进行运行仿真时,总是实现不了,但最终通过我们自己的努力解决了这些问题,我们受益匪浅。做课程设计同时也是对课本知识的巩固和加强,由于课本上的知识太多,平时课间的学习并不能很好的理解和运用各个元件的功能,而且考试内容有限,所以在这次课程设计过程中,我们了解了很多元件的功能,并且对于其在电路中的使用有了更多的认识。平时看课本时,有时问题老是弄不懂,做完课程设计,那些问题就迎刃而解了。而且还可以记住很多东西,比如一些引脚的初始化过程,通过动手实践让我们对各个元件映象深刻。认识来源于实践,实践是认识的动力和最终目的,实践是检验真理的唯一标准。所以这个期末测试之后的课程设计对我们的作用是非常大的。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。同时,我也学到了很多课内学不到的东西,比如独立思考解决问题,出现差错的随机应变,和与人合作共同提高。在这次数字电子课程设计过程中,我们学会使用MAX+plusII软件设计电路并运行仿真,让我们的动手能力得到很大的提高,增加了我们的学习兴趣。 沈 阳 大 学课程设计说明书 NO.145. 参考文献1任艳颖,王彬.IC设计基础M.西安:西安电子科技大学出版社. 2006.5:249258.2谭会生,张昌凡.EDA技术及应用M.西安:西安电子科技大学出版社.2010.2:192193.3张明,吴琼,武刚.微机原理及接口技术M.沈阳:东北大学出版社.2010.12:134138.4姜雪松,吴钰淳.VHDL设计实力例子及仿真M.北京:机械工业出版社.2007.1107109.5杨守良.基于FPGA的ROM设计问题J.信息技术.2010年03期.6平均芬.硬件描述语言VHDL在EDA仿真中的应用J.现代电子技术.2005年06期. 沈 阳 大 学