中央处理器

一、CPU的功能组成

1.CPU的功能

74e937bb0f9147f8b1dd7557bfc6effd.png

 

●指令控制(程序的顺序控制)

●操作控制(一条指令有若干操作信号实现)●时间控制(指令各个操作实施时间的定时)●数据加工(算术运算和逻辑运算)

2.CPU的基本组成

8e66d086507a43428376033005b321fa.png

 (1)中央处理器 CPU =运算器+ cache +控制器

(2)运算器

● ALU 

●通用寄存器:R0~R3

●暂存器: DR 

●状态字寄存器: PSw 

(3) cache 

●指令 cache : PC , IBUS 

●数据 cache : AR , DBUS

控制器
控制器组成:程序计数器、指令寄存器、数据缓冲器、地址寄存器、通用寄存器、状态寄存器、时序发生器、指令译码器、总线(数据通路)
●程序计数器 PC ( Programming Counter )
用来存放正在执行的指令的地址或接着将要执行的下一条指令的地址

顺序执行时,每执行一条指令, PC 的值应加1


要改变程序执行的顺序时,一般由转移类指令将转移目标地址送往PC,可实现程序的转移

●指令寄存器 IR ( Instruction Register )

指令寄存器用来存放从存储器中取出的待执行的指令。
在执行该指令的过程中,指令寄存器的内容不允许发生变化,以保证实现指令的全部功能。

3.CPU中的主要寄存器

数据缓冲寄存器(DR):数据缓冲寄存器用来暂时存放ALU的运算结果,或由数据存储器读出的一个数据字,或来自外部接口的一个数据字。

指令寄存器(IR):指令寄存器用来保存当前正在执行的一条指令。指令划分为操作码和地址码字段,由二进制组成。

程序计数器(PC):为了保证程序能够连续地执行下去,CPU必须具有某些手段来确定下一条指令的地址。

数据地址寄存器(AR):数据地址寄存器用来保存当前CPU所访问的数据储存器(简称库存)单元的地址。

通用寄存器:当算术逻辑单元(ALU)执行算术或逻辑运算时,为ALU提供一个工作区。

程序状态字寄存器(PSWR):程序状态字寄存器有称状态条件寄存器,保存由算术运算指令和逻辑运算指令运算或测试结果建立的各种条件代码。

4.操作控制器与时序产生器

数据通路:许多寄存器之间传送信息的通路。
操作控制器:为数据通路的建立提供各种操作信号。根据设计方法不同,可分为时序逻辑型和存储逻辑型:
●硬布线控制器
●微程序控制器
时序产生器:提供定时和时序信号

二、指令周期

1.指令周期的基本概念

8c49ac2d998140219d27d82bcfee6e5c.png

                    取指令-执行指令程序列

●概念

●指令周期:指取指令、分析指令到执行完该指令所需的全部时间。

●各种指令的指令周期相同吗?为什么?

● CPU 周期通常又称时钟周期

●通常把一条指令周期划分为若干个机器周期,每个机器周期完成一个基本操作。

主存的工作周期(存取周期)为基础来规定 CPU 周期,比如,可以用 CPU 读取一个指令字的最短时间来规定 CPU 周期

●不同的指令,可能包含不同数目的 CPU 周期。

●一个 CPU 周期中,包含若干个节拍脉冲( T 周期)。

●单周期、多周期的概念。

●时钟周期

●在一个 CPU 周期内,要完成若干个微操作。这些微操作有的可以同时执行,有的需要按先后次序串行执行。因而需要把一个 CPU 周期分为若干个相等的时间段,每一个时间段称为个节拍脉冲或 T 周期。

●时钟周期通常定义为机器主频的倒数。时钟周期不等于 T 周期。

951bad3b70af48af898d9918fd57683e.png

                             指令周期

若指令字长等于机器字长等于存储字长,则访存周期等于机器周期(CPU周期)。

不采用三级时序系统时CPU周期称为时钟周期。

2. MOV指令的指令周期

f884971d8f03471cb55eeac247ba9203.png

                  MOV指令的指令周期

f13a8dd142a842af98db89cb0805f5f8.png

ef9a785dfae74ae7a63897f1e702012e.png

                       MOV指令执行周期 

 3.LAD指令的指令周期

b6f7a6d3e66b4391961ecfc1af6603c4.png

                     LAD指令的指令周期

35b3404429de43b0b32e068ec02d2b2c.png

              LAD指令的执行周期(寄存器间接寻址)

4.ADD指令的指令周期

第1个 CPU 周期取 ADD 指令(指令 cache )
第2个 CPU 周期执行加法运算(运算器)

a1f95ee044bd49ac9ecbc205a16f03dc.png

 5.STO指令的指令周期

f95c4c78fd3e40b2b4a336d7a0c8f725.png

                    STO指令的指令周期

4b7f002f084441688ad34e60af9b285f.png

                       STO指令执行周期

6. JMP指令的指令周期

0600c03c3791474eac1271d93e544151.png

                   JMP指令的指令周期

156e13f7ff83434d9f5c48c3d935decc.png                     JMP指令执行周期

7.用方框图语言表示指令周期

ffa5479790584643afd563732e445827.png

               用方框图语言表示指令周期

3dfe7823086e47f69e07c2fe2d06c97e.png

bdcd9c9aef3e40bfb41c0217783833c3.png 

            加法和减法指令周期流程图

三、流水CPU

1.并行处理技术

并行性( Parrelism )概念
●问题中具有可以同时进行运算或操作的特性●例:在相同时延的条件下,用 n 位运算器进行 n 位并行运算速度几乎是一位运算器进行 n 位串行运算的 n 倍(狭义)
●(广义)含义
●只要在同一时刻(同时性)或在同一时间间隔内(并发性)完成两种或两种以上性质相同或不同的工作,他们在时间上相互重叠,都体现了并行性

●时间并行(重叠):让多个处理过程在时间上相互错开,轮流使用同一套硬件设备的各个部件,以加快硬件周转而赢得速度,实现方式就是采用流水处理部件

●空间并行(资源重复):以数量取胜

●它能真正的体现同时性

● LSI 和 VLSI 为其提供了技术保证●时间+空间并行

● Pentium 中采用了超标量流水线技术

2.流水CPU的结构

1161aa32ec314ae98a791191fd65873e.png

●流水线 CPU 时空图

● IF ( Instruction Fetch 取指)

● ID ( Instruction Decode 指令译码)

● EX ( Execution 执行)

● WB ( Write Back 写回)

482363bc8e75430caba4706109133cf2.png

 b3bb8a6cf61f461191da3726464c23ae.png

9fa0321b8f8640289d4dd99060e772d5.png 

c3acb31930a74600b5b2b3e5160c4dc2.png

(双发射流水) 

 流水线分类

●按级别分为
●指令流水线
●算术流水线
●处理机流水线(宏流水线)

3.流水线中的主要问题

●三种相关冲突:资源相关、数据相关、控制相关

●资源相关:多条指令进入流水线后在同一时钟周期内争用同一功能部件。

●解决办法:后边指令拖一拍再推进;增设一个功能部件

7405c4e247e74694935c338908acca31.png

 

●数据相关

8c08ed9dcc354e9c976d05ee79fbac43.png

 

●控制相关

●引起原因:转移指令

●解决办法:延迟转移法,转移预测法

 

 

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值