VHDL与数字系统设计课程设计报告.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
23 - 《VHDL与数字系统设计》 课程设计报告 课题: 简单处理器的设计与实现 专业: 微电子科学与工程 目 录 设计任务与功能要求1 实现原理与设计框图3 单元模块VHDL设计描述7 处理器实现功能与操作说明20 处理器仿真结果测试结果及分析21 课程设计主要步骤及收获总结26 附录:各模块连接电路图28 一、设计任务与功能要求 1.1设计题目:简单处理器的设计与实现 1.2设计目的:通过小型处理器应用产品的设计与调试过程,运用VHDL与可编程逻辑器件课程所学的基本知识,在设计中加以应用,进而得到理解、巩固和提高发展,通过实践的过程学习与掌握分析与解决实际问题的方法与手段,提高设计、编程与调试的实际动手能力,作为工程技术工作的一次基本训练。 1.3设计任务:用VHDL语言设计一个简单的3位(预留1位)处理器,包含赋值、复制、加法、减法四条指令并完成相关的仿真测试与实验箱硬件上机测试。 1.4基本设计要求:图1是一个处理器的原理图,它包含了一定数量的寄存器、一个复用器、一个加法/减法器(Addsub),一个计数器和一个控制单元。 图1 简单处理器的电路图 下表是该处理器所支持的指令。 操作 功能 mv Rx, Ry mvi Rx, #D add Rx, Ry sub Rx, Ry Rx ← [Ry] Rx ← Data Rx← [Rx]+[Ry] Rx← [Rx]+[Ry] 1)Rx ← [Ry] :将寄存器Ry中的内容复制到Rx。 2)Mvi Rx,#D :将立即数存入寄存器Rx中去。 3)Add Rx,Ry :将Rx的立即数与Ry的立即数相加后把计算结果存入Rx。 4)Sub Rx,Ry :将Rx的立即数与Ry的立即数相减后把计算结果存入Rx。 下表是该处理器实现指令所需的周期。 时间 指令 T0 T1 T2 T3 (mv):I0 (mvi):I1 (add):I2 (sub):I3 IRin IRin IRin IRin RYout,RXin,Done DINout,RXin,Done RXout,Ain RXout,Ain RYout,Gin,Addsub RYout,Gin,Addsub Gout,RXin,Done Gout,RXin,Done 图2是处理器工作状态图: 图2处理器状态图 1.5完成情况:按设计要求全部完成,并实现了硬件上机测试及仿真波形图测试。 二、实现原理与设计框图 本次课程设计的课题是简单处理器的设计与实现,是以VHDL与可编程逻辑器件为理论知识为核心,通过对编程器件的理解进行初步的设计,实现四条简单的工作指令:立即数赋值,复制,加法,减法。通过对设计的简单处理器进行不同的引脚分配实现硬件上电测试。 2.1实现原理: 数据传输实现过程:16位数据从DIN输入到系统中,可以通过复用器分配给R0~R7和A,复用器也允许数据从一个寄存器传通过Bus送到另外一个寄存器。 加法和减法的实现过程:复用器先将一个数据通过总线放到寄存器A中,然后将另一个数据放到总线上,加法/减法器对这两个数据进行运算,运算结果存入寄存器G中,G中的数据又可根据要求通过复用器转存到其他寄存器中。 所有指令都按9位编码(取自DIN的高9位)存储在指令存储器IR中,编编码规则为IIIXXXYYY,III表示指令,XXX表示Rx寄存器,YYY表示Ry寄存器。立即数#D是在mvi指令存储到IR中之后,通过16位DIN输入的。 有一些指令,如加法指令和减法指令,需要在总线上多次传输数据,因此需要多个时钟周期才能完成。控制单元使用了一个两位计数器来区分这些指令执行的每一个阶段。当Run信号置位时,处理器开始执行DIN输入指令。当指令执行结束后,Done信号置位,下表列出四个指令在执行过程中每一个时间段置位的控制信号。 表1:加减法,移位指令编码规则 DIN(16bit) 15 14 13 12 11 10 9 8 7 9 5 4 3 2 1 0 指令(9位) NULL 操作码(3位) Rx(3位) Ry(3位) 8 7 6 5 4 3 2 1 0 表2:立即数输入编码规则 DIN(16bit) 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 指令(10位) NULL 操作码(3位) Rx(3位) 立即数(4位) 9 8 7 6 5 4 3 2 1 0 复制指令原理:将寄存器Rx的值赋给寄存器Ry(以mv R0, R1为例) (1 )计数器为“00”时,指令寄存器的置位控制信号输入端IRin=1有效,将DIN输入的数据的高9位锁存。置位的控制信号如图3加粗黑线所示。 图3 (2)计数器为“01”时,首先控制单元根据设计器为

文档评论(0)

177****6330 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档