-
指令寄存器 编辑
指令寄存器(IR,Instruction Register),用于暂存当前正在执行的指令。指令寄存器的时钟信号是clk,在clk的上升沿触发。指令寄存器将数据总线送来的指令存入16位的寄存器中,但并不是每次数据总线上的数据都需要寄存,因为数据总线上有时传输指令,有时传输数据。由CPU状态控制器的 Ir_ena信号控制数据是否需要寄存。复位时,指令寄存器被清零。根据指令在存贮器中的地址(由指令地址计数器给出),把指令从存贮器中取出来之后,需要有一个专门用于存放指令的地方,以便对指令进行分析和执行。这个专门存放现行指令的部件就叫做指令寄存器。指令寄存器的位数应满足指令长度的要求。指令寄存器与CPU的8根数据总线相连接。当程序计数器访问存储器地址时,存储在该地址单元内的信息经8位数据总线送出,并储存在指令存器中。
1、将程序计数器(PC)中的内容送至存储器地址寄存器(MAR),并送地址总线(AB) 。
2、由控制单元(CU)经控制总线(CB)向存储器发读命令 。
3、从主存中取出的指令通过数据总线(DB)送到存储器数据寄存器(MDR) 。
4、将MDR的内容送至指令寄存器(R)中 。
5、将PC的内容递增,为取下一条指令做好准备 。
以上这些操作对任何一条指令来说都是必须要执行的操作,所以称为公共操作 。
指令寄存器的功能由三部分构成:扫描移位寄存器、保持寄存器与译码逻辑。扫描移位寄存器从TDI端扫描移入当前指令代码;保持寄存器对当前指令代码进行保持;译码逻辑根据当前指令代码,产生相应的数据寄存器控制信号。三部分的运行控制信号均来自TAP控制器 。
1、本站所有文本、信息、视频文件等,仅代表本站观点或作者本人观点,请网友谨慎参考使用。
2、本站信息均为作者提供和网友推荐收集整理而来,仅供学习和研究使用。
3、对任何由于使用本站内容而引起的诉讼、纠纷,本站不承担任何责任。
4、如有侵犯你版权的,请来信(邮箱:baike52199@gmail.com)指出,核实后,本站将立即删除。