CPU模型笔记

CPU模型笔记

 

 

一、部件

1、单元

(1).ALU(Arithumetic and Logic Unit):算数逻辑单元(运算器),进行多组算数和逻辑运算

(2).CU(Control Unit):控制单元,执行计算机指令

 

2、寄存器

(1)ACC(Accumulator)累加寄存器(属于通用寄存器)

(2)PSWR(Program Status Word Register):状态标志寄存器,存放状态字,表征程序及机器状态

(3)MAR(Memory Address Register):存储地址寄存器。存放当前CPU访问主存的地址

(4)MDR(Memory Data Register):存储指令寄存器。从主存读取数据和指令。

将指令传给IR(指令寄存器),将数据传给AC(累加寄存器)和ALU(逻辑运算单元)

(5)IR(Instruction Register):指令寄存器。存放从主存中取出的指令

(6)PC(Program Counter):程序计数器,存放下一条执行的指令

 

3、其他

(1)ID(Instruction Decoder,英文应该是这个吧):译码器。翻译指令

(2)主存:主存储器,存放指令和数据

(3)I/O线:不知道这是什么,不知道为什么不和主存放在一起。以后再补充吧

 

二、线路

1、MDR→IR:MDR读取出指令,将指令放到IR里面

2、IR→ID:将IR将指令传给ID进行译码

3、ID→CU:译码完成后交由CU进行执行

4、IR→MAR:IR读取MAR地址

5、MDA→MAR,MAR→MDA:MDR通过MAR从主存中读取/存放数据

6、ACC→MDR,MDR→ACC:ACC将数据存放到MDR,MDR将从主存读取的数据传给ACC

7、ALU→ACC,ACC→ALU:ALU对ACC的数据进行存储/读取操作

8、ALU→PSWR:ALU在运算的过程中记录下程序的运行状态,将状态信息存放到PSWR

9、IR→PC:IR让PC读取下一条指令

 

三、指令循环

执行完一条指令以后:

(1)IR让PC读取下一条指令(记为指令A)

(2)IR读取MAR地址,将指令A存放到主存中

(3)MDR通过MAR读取主存的指令和数据

(4)MDR将指令(指令A)发送给IR,完成一次指令循环