计算机组成原理知识点整理

第三章 CPU子系统

3.1 概述:

1.运算部件

  • 输入逻辑:操作数可以来自于寄存器也可以来自于CPU内部数据线。输入逻辑可以是选择器或者暂存器。
  • 算数逻辑运算单元(ALU):加法器、求和逻辑、传递逻辑
  • 输出逻辑:运算结果是否经过处理移位门

     4中典型的ALU设置方式—P80

2.寄存器组

  • 指令寄存器IR:用于存储当前正在执行的指令。其输出包括操作码的信息,地址信息等等,是产生微命令的主要逻辑依据。
  •          常在主存的数据寄存器和指令寄存器之间设置直接传输通路,指令从主存取出后,经过数据      寄存器,沿直接通路快速送往IR,提高读取指令的速度。
  • 程序计数器PC:指示指令在存储器中的存放位置,程序顺序执行时,每从主存取出一个指令,PC增加一个存储单元数,指向下一条指令的地址。自动!
  • 程序状态字寄存器PSW:用于记录现行程序的运行状态和只是程序的工作方式,特征位、编程设定位。--P81

      IRPCPSW,等专用寄存器属于控制部件,其存放的信息是产生控制信号的重要依据。

  • 通用寄存器:可通过程序访问,分配各自编号,可以被分配执行多种任务。RAM
  • 暂存器:无编号,只能在CPU内部使用,对用户透明

     通用寄存器、暂存器主要用于存放数据信息,提供处理对象。

  • 地址寄存器MAR:存放目标单元的地址,CPU访问主存是找到需访问的存储单元。
  • 数据缓冲寄存器MBR:用于存放CPU与主存之间交换的数据。
  • 堆栈指针寄存器SP

                                                                                                                                                                   

3. 控制部件(微命令产生部件):对指令进行译码,并且根据时序信号和外部输入的状态信号,产生执行过程中每个时钟周期所需要的控制信号。CPU中两种控制部件:组合逻辑控制器、微程序控制器。

4. 时序系统:是产生时序信号的部件。由一个晶体振荡器和一组计数倍频逻辑组成。周期,节拍,脉冲等时间信号称为时序信号。节拍:执行一步操作所需要的时间,一个周期可能执行几步,就可能包含几个节拍。

5. 数据/控制通路:

  • 单路内部总线,分立寄存结构:ALU只发不收、寄存器只收不发。
  • 单路内部总线,集成寄存结构:双向数据线
  • 多路总线结构:一个节拍可以并行执行多路数据传输操作。

 3.2指令格式

  1. 指令中的基本信息:操作码、操作数或操作数地址、存放运算结果的地址、后继指令地址。对于双操作数的运算,指令应给出4个地址:操作数1存放地址、操作数2存放地址、结果存放地址、后继指令存放地址。
  2. 地址结构:

  • 三地址指令:(后继指令地址采用隐地址方式)

OP

A1

A2

A3

指令格式:        

      指令功能:(A1)OP(A2)->A3

                        (PC)+n->PC

  • 二地址指令:

OP

A1

A2

指令格式:

指令功能:(A1)OP(A2)->A1

                  (PC)+n->PC

  • 一地址指令:

OP

A

指令格式:

指令功能:

  • 只有目的操作数:

                    OP(A)->A   

                   (PC)+n->PC

  • 隐含约定目的地的双操作数:

                        (AC)OP(A)->AC  

                         (PC)+n->PC

  • 零地址指令:

OP

指令格式:

指令功能:

  • 不需要操作数
  • 单操作数指令,并隐含在累加器AC中。
  • 对堆栈栈顶单元的数据进行操作

3. 操作码结构:操作码的位数决定了操作类型的多少,8位最多有256种指令。如果指令字长有限,地址位数和操作码位数就会相互制约!

  • 固定长度操作码:指令采用可变字长格式,则固定操作码长度,一般第一字节8位为操作码。
  • 可变长度操作码(扩展操作码):操作码长度与地址位数相制约。

4.指令字长:复杂指令集(CISC)、精简指令集(RISC)

  • 可变字长指令
  • 固定字长指令

5. 常见寻址方式:

(1)立即寻址:指令直接给出操作数。MOV R0,1234H

(2)主存直接寻址:指令给出操作数的有效主存地址。MOV R0,(1000H)

(3)寄存器直接寻址:指令给出寄存器号。MOV R0,R1

(4)主存间接寻址:指令给出操作数地址存放的地址。MOV R0,((1000H))

(5)寄存器间接寻址:指令给出操作数地址存放的寄存器号。MOV R0,(R1)

  •  自增型寄存器  (R)+
  •  自减型寄存器  -(R)

(6)变址寻址:指令中分别给出一个寄存器号和一个形式地址,寄存器中的内容作为偏移量,形式地址作为基准地址,将基准地址和偏移量相加得到操作数的有效地址。按此地址访存

(7)基址寻址:与变址寻址不同,基准地址将寄存器中的内容作为基准地址,形式地址作为偏移量,二者相加,得到有效地址。

(8)基址加变址寻址:有效地址=基准地址+变址偏移量+常规偏移量

(9)PC相对寻址:程序计数器PC当前内容作为基准地址,指令中给出的形式地址为偏移量(可正、可负)

(10)页面寻址:寄存器PC高位段作为有效地址高位段,指令中形式地址d作为有效地址低位段,这两部分拼接得到有效地址,操作数有效地址=(PC)H∪d 

(11)堆栈寻址SP

6.CPU基本模型:

     CPU设计步骤:

(1)拟定指令系统:明确硬件功能,规定指令格式、寻址方式、指令类型设置

(2)确定总体结构:寄存器、ALU、数据通路设置

(3)安排时序

(4)拟定指令流程和微命令序列:画流程图(寄存器传送级)、列操作时间表

(5)形成控制逻辑:

  • 组合控制:列逻辑式,形成逻辑电路
  • 微程序控制:按微指令格式编写微程序

(6)指令格式(假设主存容量为64K×16)

         设采用定长指令,指令字长16位,采用寄存器寻址,指令中给出寄存器号

(7)寻址方式

      CPU可编程访问的寄存器:

       通用寄存器R3~R0,指令寄存器IR,程序状态字寄存器PSW,堆栈指针SP

(8)指令类型

         MOV,ADD,EOR,COM … …JMP,RST…

  • 转移指令JMP

方式位 0:为0时跳转

方式位 1:为1时跳转

  • 转子指令

  • 返回指令RST

   

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值