专用数据通路方式
多总线
- 这里的C1、C2就是控制信号
- 左边未显示的部分就是主存
- 与上一节的区别在于,控制信号的解释不同
取指令
译码
专用数据通路方式-例题
(1) 请写出图中a、b、c、d 4个寄存器的名称。
- d能自动“+1”,是PC
- PC内容是地址,送MAR,故c是MAR
- b与微操作信号发生器相连,是IR
- 与主存相连的寄存器是MAR和MDR,c是MAR,则a是MDR
(2) 简述图中取指令的数据通路。
(PC) → MAR
M(MAR) → (MDR)
(MDR) → IR
(3) 简述数据在ALU和主存之间进行存/取访问
- ALU没有数据存储功能的
- 所以实际上是ACC和主存的数据通路
- 设数据地址已放入MAR
读取
M(MAR) → MDR //读取数据放在MDR
(MDR) → ALU → ACC //因为ACC没有和MDR直接相连的箭头,所以要经过ALU(大概就相当于和一个0加法操作,然后传给ACC)
存
(ACC) → MDR
(MDR) → M(MAR)
(4)简述完成指令LDA X
的数据通路(X为主存地址,LDA的功能为(X) → ACC)。
X → MAR //因为这里的X相当于Ad(IR)
M(MAR) → MDR
(MDR) → ALU → ACC
(5)简述完成指令ADD Y
的数据通路(Y为主存地址,ADD的功能为(ACC) + (Y)→ACC )。
Y → MAR //因为这里的Y相当于Ad(IR)
M(MAR) → MDR
(MDR) → ALU , (ACC) → ALU
ALU → ACC
(6)简述完成指令STA Z
的数据通路(Z为主存地址,STA的功能为(ACC) → Z)。
Z → MAR
(ACC) → MDR
(MDR) → M(MAR)