VHDL实验指令译码器.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文档。上传文档
查看更多
VHDL实验指令译码器

学院 计算机组成原理 实验报告? 年级    学号   姓名  成绩     专业  实验地点 计算机实验室   指导教师      实验项目 CPU指令译码器 实验日期   实验目的 理解指令译码器的作用和重要性 学习设计指令译码器 实验原理 组合逻辑控制器中的控制信号直接由各种类型的逻辑门和触发器等构成,一旦控制部件构成后,除非重新设计和物理上对它重新连接,否则要想增加新的功能是不可能的。结构上的这种缺陷使得应连线控制器的设计和调试变得非常复杂而且代价很大。所以,硬连线控制器曾一度被微程序控制器所取代。但是随着新一代机器及VSLI技术的发展,这种控制器又得到了广泛重视。 逻辑网络的输入信号来源有3个:①指令操作码译码器的输出In;②来自时序发生器的节拍电位信号Tk; ③来自执行部件的反馈信号Bj。逻辑网络的输出信号就是微操作控制信号,用来对执行部件进行控制。 组合逻辑控制器的基本原理为:某一微操作控制信号Cm是指令操作码译码器的输出In,时序信号(节拍电位信号Tk)和状态信号Bj逻辑函数。即 Cm=f(In,Tk,Bj)用这种方法设计控制器,需要根据每条指令的要求,让节拍电位和时序脉冲有步骤地去控制机器的各有关部件,一步一步地执行指令所规定的微操作,从而在一个指令周期内完成一条指令所规定的全部操作。 实验步骤 将实验台设置成FPGA-CPU独立调试模式,REGSEL=0,CLKSEL=1,FDSEL=0。使用实验台上的单脉冲,即STEP_CLK短路子短接,短路子RUN_CLK断开。 将设计在Quartus 下输入,编译后下载到TEC-CA上得FPGA中。 波动试验台上的开关SD5~SD0,改变IR[15..12],进位标志C和结束位0标志Z,观察指示灯R10~R0显示的控制信号,并填写表6-28和表6-29。 进位C对应试验台开关SD4,结果为0标志Z对应试验台开关SD5。IR[15..12]对应试验台开关SD0、SD1、SD2、SD3。 实验结果 添加功能 OUTBOUND SR 指令编码: 功能:[SR]=SR;PC=PC+1 INBOUND DR,SR 指令编码 功能:[DR]=[DR]-DR。PC=PC+1 实验代码 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; entity instruction_decoder is port (IRH: in std_logic_vector(3 downto 0); c,z: in std_logic; op_code: out std_logic_vector(2 downto 0); c_z_j_flag: out std_logic; lj_instruct: out std_logic; DRWr: buffer std_logic; Mem_Write: out std_logic; DW_intruct: buffer std_logic; change_z: out std_logic; change_c: out std_logic; sel_memdata: out std_logic ); end instruction_decoder; architecture behav of instruction_decoder is signal zj_instruct, cj_instruct: std_logic; begin sel_memdata = IRH(3) and IRH(2) and (not IRH(1)); change_z = ((not IRH(3)) and (not IRH(2))) or ((not IRH(3)) and IRH(2) and (not IRH(1))) or ((not IRH(3)) and IRH(2) and IRH(1) and (not IRH(0))); change_c = (not IRH(3)) and (not IRH(2)); c_z_j_flag = (zj_i

文档评论(0)

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

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

1亿VIP精品文档

相关文档