计算机组成原理(8) |
您所在的位置:网站首页 › ir寄存器和mar › 计算机组成原理(8) |
目录 1.专用数据通路方式 (1)取指令 (2)分析指令 (3)专用数据通路方式的例题 上一节讲到了CPU内部单总线数据通路方式,这节来讲专用数据通路方式 1.专用数据通路方式•将PC的值传送到MAR中,即(PC)--->MAR,此时C0有效 •MAR的地址信息通过地址总线传送给主存,即(MAR)--->主存,此时C1有效 •主存接收地址信息,再让CU给主存发送读控制信号,主存则可读取出对应地址的数据,即:1--->R •主存将读取的数据通过数据总线传送给MDR,即M(MAR)--->MDR,此时C2有效。 •执行指令之前,应该将指令送到IR中,即,(MDR)--->IR,此时C3有效 •每取出一条指令PC自动加1 取指令过程,如下图所示: 将IR中的指令的操作码部分传到CU中进行译码,Oo(IR)--->CU,此时C4有效。如下图所示: 下图是一个简化了的CPU主存连接结构示意图(图中省略了所有的多路选择器)。其中有一个累 加寄存器(ACC)、一个状态数据寄存器和其他4个寄存器:主存地址寄存器(MAR)、主存数据寄存器(MDR)、程序寄存器(PC)和指令寄存器(IR),各部件及其之间的连线表示数据通路,箭头表示信息传递方向。 (1)请写出图中a、b、c、d 4个寄存器的名称。 (2)简述图中取指令的数据通路。 (3)简述数据在运算器和主存之间进行存/取访问 (4)简述完成指令LDA X的数据通路(X为主存地址,LDA的功能为(X)--->ACC) (5)简述完成指令ADD Y的数据通路(Y为主存地址,ADD的功能为(ACC)+(Y)--->ACC) (6)简述完成指令STA Z的数据通路(Z为主存地址,STA的功能为(ACC)--->Z) (1)请写出图中a、b、c、d 4个寄存器的名称。 d 能自动“+1”,是PC PC内容是地址,送MAR,故c是MAR 微操作信号发生器中包含指令译码器,用来解析操作码,b与微操作信号发生器相连,是IR。IR将指令的操作码部分传送到微操作信号发生器,微操作信号发生器的指令译码器再解析操作码 MAR中的地址信息只有可能单向的传送给主存储器,而MDR与主存是双向交互的,即MDR读/写主存。所以a是MDR (2)简述图中取指令的数据通路。 指令的地址存放在PC中,所以将PC的值放到MAR中 (PC)--->MAR 根据MAR的值在主存中找到相应的数据,放到MDR中 M(MAR)--->MDR 将MDR的指令存放到IR中 (MDR)--->IR 将指令的操作码部分交由微操作信号发生器解析 OP(IR)--->微操作信号发生器 取出一条指令后,PC自动加1 (PC)+1--->PC (3)简述数据在运算器和主存之间进行存/取访问 解读:运算器ALU并不是寄存器,这个部件没有存储的功能,ALU要使用的数据会放到ACC中,题目中问的运算器和主存之间进行存/取访问的数据通路,实质上是ACC和主存之间进行存/取访问的数据通路 设数据地址已放入MAR中 取: 把主存中MAR指明的数据放到MDR中 M(MAR)--->MDR MDR的数据由ALU转发到ACC中,这样就完成了从主存读一个数据存放到ACC中 (MDR)--->ALU--->ACC 存: 将ACC中的数据传输到MDR中 (ACC)--->MDR 主存储器根据MAR提供的地址信息,往存储单元中存放MDR的数据 (MDR)--->M(MAR) (4)简述完成指令LDA X的数据通路(X为主存地址) (5)简述完成指令ADD Y的数据通路(Y为主存地址,ADD的功能为(ACC)+(Y)--->ACC) (6)简述完成指令STA Z的数据通路(Z为主存地址,STA的功能为(ACC)--->Z) (4)(5)(6)要完成的将X放到ACC中,再从主存储器中取出另一个操作数Y,X+Y的运算结果再放入ACC中,再把这一结果存入主存储器中,存放到Z所指的地址。 (4) 把地址X放入MAR中 X--->MAR或Ad(IR)--->MAR 主存储器根据MAR的地址信息在存储单元找到相应的数据放到MDR中 M(MAR)--->MDR 再将MDR的数据,由ALU转发,存入ACC中 (MDR)--->ALU--->ACC (5) Y为主存地址,所以将Y存放到MAR中 Y--->MAR或者Ad(IR)--->MAR 将Y所指的数据从主存储器读出,通过数据总线放到MDR中 M(MAR)--->MDR 到这一步骤,加法操作的X存放到ACC中,Y存放再MDR中,将这两个数相加,再把相加的结果存放回ACC中 ALU--->ACC (6) 由于这个指令已经放到IR指令寄存器中,所以MAR直接从IR指令寄存器中将指令的地址码取出 Z--->MAR或Ad(IR)--->MAR 再将加法得到的结果,由ACC传送到MDR中 (ACC)--->MDR 最后将MDR存放的数据,存放到MAR指向的存储单元即可 (MDR)--->M(MAR) 总结: 对于专用数据通路,若两个部件之间存在数据流动,就需要为其建立专门数据通路。所以成本较高,但是各个数据通路相互独立,可以并行进行指令的传送,效率提高很多。 专用数据通路中,某个部件的输入可能会有多条,可以用多路选择器或三态门,CU通过控制信号决定哪个输入信号有效即可。 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |