组合逻辑控制单元设计.docVIP

  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文档。上传文档
查看更多
 组合逻辑控制单元设计

一、实验课题 实验要求: 按照题目要求用硬布线(组合逻辑)控制法设计一个简单模型机的控制单元CU(微操作信号产生电路),决定外部的端口(名称、有效电平)和内部各元件的连接,画出系统框图和逻辑图,设计仿真数据,用VHDL编程和仿真。 主要元件设计: 1.指令译码器 功能要求:3-8译码器。 2.控制单元 功能要求:假设该模型机有8条不同类型的指令。包括:算术运算、逻辑运算、移位、数据传送、访存操作、转移等。根据每条指令的功能和时序,分析其执行过程中需要在各个阶段产生的全部微操作,导出产生这些微操作控制信号的逻辑。 3.用层次结构设计的方法设计一个控制单元CU(微操作控制信号产生电路)。包括指令译码器和控制单元。 功能要求:能够正确产生8条不同指令在执行过程中(每个机器周期、每拍)发出的全部微操作。 二、逻辑设计 写该实验的逻辑设计,包括:顶层系统框图,下层各主要元件的系统框图。顶层和下层各主要元件的端口(引脚)描述:端口名称、功能、有效电平、位数等。逻辑图,必须在图中清楚地标出每个内部连接线的Signal(与VHDL程序中的Signal一致)。根据所用的描述方式,可能还需要有:真值表/功能表/逻辑函数等。 1、3-8译码器: 系统框图: S是工作信号,当S=1时,3-8译码器工作;当S=0时,3-8译码器不工作。A是输入信号,Y是输出信号 S A2 A1 A0 Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 1 0 0 0 0 0 0 0 0 0 0 1 加法 1 0 0 1 0 0 0 0 0 0 1 0 与 1 0 1 0 0 0 0 0 0 1 0 0 或 1 0 1 1 0 0 0 0 1 0 0 0 左移 1 1 0 0 0 0 0 1 0 0 0 0 右移 1 1 0 1 0 0 1 0 0 0 0 0 数据传送 1 1 1 0 0 1 0 0 0 0 0 0 取数 1 1 1 1 1 0 0 0 0 0 0 0 无条件转移 0 × × × 0 0 0 0 0 0 0 0 Y(0)=S and (not A(2)) and (not A(1)) and (not A(0)); Y(1)=S and (not A(2)) and (not A(1)) and A(0); Y(2)=S and (not A(2)) and A(1) and (not A(0)); Y(3)=S and (not A(2)) and A(1) and A(0); Y(4)=S and A(2) and (not A(1)) and (not A(0)); Y(5)=S and A(2) and (not A(1)) and A(0); Y(6)=S and A(2) and A(1) and (not A(0)); Y(7)=S and A(2) and A(1) and A(0); 2、控制单元: 设计过程:把每条指令的实现分成取指令、分析指令、执行指令三个步骤,每一步由一个机器周期实现,一条指令的实现需要三个机器周期,即M1(取指周期)、M2(分析周期)、M3(执行周期);每个机器周期由三个节拍组成,即T0、T1、T2。如下图所示: 1、加法指令:寄存器R1中的一个数与寄存器R0中的一个数相加,结果放在R1中。 即实现(R0)+(R1)→R1 2、与指令:寄存器R1中的一个数与寄存器R0中的一个数,结果放在R1中。 即实现(R1)and (R0) → R1 3、或指令:寄存器R1中的一个数或寄存器R0中的一个数,结果放在R1中。 即实现(R1)or (R0) → R1 4、逻辑左移指令:寄存器R1中的数左移,移动位数存放在寄存器R0中,结果放在R1中。 即实现(R1)R1 5、逻辑右移指令:寄存器R1中的数左移,移动位数存放在寄存器R0中,结果放在R1中。 即实现(R1)R1 6、数据传送指令:寄存器R0

文档评论(0)

gbn092 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档