版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、控制器: 包括: 程序计数器(PC) 指令寄存器(IR) 指令译码器 时序产生器 操作控制器 是发布命令的“决策机构”,即完成协调和指挥整个计算机系统的操作。 主要功能: 从内存中取出一条指令,并指出下一条指令在内存中的位置。 对指令进行译码或测试,并产生相应的控制信号。 输出相应的控制信号,指挥并控制CPU,内存和I/O之间的数据流动的方向。,运算器 包括: 算术逻辑单位(ALU) 累加寄存器(AC) 数据缓冲寄存器(DR) 状态条件寄存器(PSW) 是数据加工处理部件。 运算器接受控制器的命令而进行动作,即运算器所进行的全部操作都是由控制器发出的控制信号来指挥的,所以它是执行部件。 主要功
2、能: 执行所有的算术运算。 执行所有的逻辑运算,并进行逻辑测试。,CPU的功能和组成,CPU的主要寄存器,累加寄存器AC AC通常简称为累加器。 功能是:当运算器的算术逻辑单元(ALU)执行全部算术和逻辑运算时,为ALU提供一个工作区。 累加寄存器暂时存放ALU运算的结果信息。显然,运算器中至少要有一个累加寄存器。,2.指令寄存器IR 指令寄存器用来保存当前正在执行的一条指令。存放从内存中取出的指令;其中指令的操作码送到指令译码器,译码后输出控制信号。,程序计数器PC 程序计数器中存放的是下一条指令在内存中的地址。 若程序顺序执行:PC PC+1;若程序有跳转:PCPC+偏移地址。,状态条件寄
3、存器PSW 状态条件寄存器保存由算术指令和逻辑指令运行或测试的结果建立的各种条件码内容,同时状态条件寄存器还保存中断和系统工作状态等信息,以便使CPU和系统能及时了解机器运行状态和程序运行状态。因此,状态条件寄存器是一个由各种状态条件标志拼凑而成的寄存器。 O 溢出 D 方向 I 中断允许 T 追踪 S 符号 Z 零 A 辅助进位 P 奇偶 C 进位,CPU的功能和组成,地址寄存器AR 地址寄存器用来保存当前CPU所访问的内存单元的地址。由于在内存和CPU之间存在着操作速度上的差别,所以必须使用地址寄存器来保持地址信息,直到内存的读/写操作完成为止。,缓冲寄存器DR 缓冲寄存器用来暂时存放由内
4、存储器读出的一条指令或一个数据字;反之,当向内存存入一条指令或一个数据字时,也暂时将它们存放在缓冲寄存器中。,CPU的功能,(4)数据加工: 对数据进行算术运算和逻辑运算处理。完成数据的加工处理,这是CPU的根本的任务。,(1)指令控制 :程序是指令的有序集合,保证机器按规定的顺序执行程序。,(2)操作控制:CPU管理并产生由内存取出的每条指 令的操作信号,并把各种操作信号送往相应的部件,从而控制这些部件按指令的要求进行动作。,(3)时间控制: 对各种操作实施时间上的控制,计算机中各种指令的操作信号均受到时间的严格控制。,指令周期,程序的执行过程:,冯.诺依曼结构的计算机执行程序的顺序: 1.
5、 从程序首地址开始。 2. 分步执行每一条指令,并形成下条待执行指令的地址。 3. 自动地连续执行指令,直到程序的最后一条指令。,指令周期,读取指令 指令地址送入主存地址寄存器 读主存,读出内容送入指定的寄存器 分析指令 按指令规定内容执行指令 不同指令的操作步骤数 和具体操作内容差异很大 检查有无中断请求 若无,则转入下一条指令的执行过程,形成下一条指令地址,指令的执行过程,中断检测点,指令周期的基本概念,指令周期:CPU每取出并执行一条指令,都要完成一系列的操作,这一系列操作所需用的时间通常叫做一个指令周期。,机器周期:机器周期也称为CPU周期。通常用内存中读取一个指令字的最短时间来规定C
6、PU周期。指令周期常常用若干个CPU周期数来表示,,时钟周期:一个CPU周期时间又包含有若干个时钟周期(通常称为节拍脉冲或T周期,它是处理操作的最基本单位)。这些时钟周期的总和则规定了一个CPU周期的时间宽度。,指令周期,指令周期,下面以一个简单的程序来具体认识每一条指令的指令周期和执行过程。,CLA指令的指令周期,指令周期,算术逻辑单元,状态条件寄存器,程序计数器PC,地址寄存器AR,地址总线ABUS,数据总线DBUS,累加器AC,缓冲寄存器DR,CPU,ALU,指令寄存器IR,指令译码器,操作控制器 时序产生器,时钟,状态反馈,取指控制,执行控制,c,c,c,c,+1,000 020,20
7、,21,22,23,24,30,31,40,CLA,ADD 30,STA 40,NOP,JMP 21,000 006,000 020,CLA,CLA,000 021,指令周期,算术逻辑单元,状态条件寄存器,程序计数器PC,地址寄存器AR,地址总线ABUS,数据总线DBUS,累加器AC,缓冲寄存器DR,CPU,ALU,指令寄存器IR,指令译码器,操作控制器 时序产生器,时钟,状态反馈,取指控制,执行控制,c,c,c,c,+1,20,21,22,23,24,30,31,40,CLA,ADD 30,STA 40,NOP,JMP 21,000 006,000 020,CLA,CLA,000 021,指
8、令周期,ADD指令的指令周期,ADD指令的指令周期由三个CPU周期组成。 第一个CPU周期:取指令阶段。和CLA指令相同。 第二个CPU周期:将操作数的地址送往地址寄存器并完成地址译码。 第三个CPU周期:从内存取出操作数并执行相加的操作。,指令周期,一个CPU周期,一个CPU周期,取指令阶段,执行指令阶段,开始,取指令PC+1,对指令译码,送操作数地址,取下条指令PC+1,取出操作数,执行加操作,一个CPU周期,指令周期,算术逻辑单元,状态条件寄存器,程序计数器PC,地址寄存器AR,地址总线ABUS,数据总线DBUS,累加器AC,缓冲寄存器DR,CPU,ALU,指令寄存器IR,指令译码器,操
9、作控制器 时序产生器,时钟,状态反馈,取指控制,执行控制,c,c,c,c,+1,20,21,22,23,24,30,31,40,CLA,ADD 30,STA 40,NOP,JMP 21,000 006,000 021,ADD,ADD 30,000 021,000 022,000 030,000 006,0+6=6,000 006,指令周期,STA指令的指令周期,STA指令的指令周期由三个CPU周期组成。 第一个CPU周期:取指令阶段,其过程和CLA指令、ADD指令完全一样,不同的是此阶段中程序计数器加1后变为023,因而为取第四条指令做好了准备。我们假定,第一个CPU周期后结束,“STA 40
10、”指令已放入指令寄存器并完成译码测试。 第二个CPU周期:送操作数地址。 第三个CPU周期:累加寄存器的内容传送到缓冲寄存器,然后再存入到所选定的存储单元中。,指令周期,算术逻辑单元,状态条件寄存器,程序计数器PC,地址寄存器AR,地址总线ABUS,数据总线DBUS,累加器AC,缓冲寄存器DR,CPU,ALU,指令寄存器IR,指令译码器,操作控制器 时序产生器,时钟,状态反馈,取指控制,执行控制,c,c,c,c,+1,20,21,22,23,24,30,40,CLA,ADD 30,STA 40,NOP,JMP 21,000 006,000 022,STA,STA 40,000 022,000
11、023,000 040,000 006,000 006,000 006,指令周期,NOP指令和JMP指令的指令周期,NOP指令是一条空指令,包含两个CPU周期。 第一个周期:取指令。 第二个周期:执行指令,因是空指令,所以操作控制器不发出任何控制信号。 JMP指令由两个CPU周期组成。 第一个周期:取指令周期,同其他指令。 第二个周期:执行阶段,CPU把指令寄存器中的地址码部分21送到程序计数器,从而用新内容21代替PC原先的内容25,这样,下一条指令将不从25单元中读出,而从21单元开始读出并执行,从而改变了程序原先的执行顺序 。,指令周期,算术逻辑单元,状态条件寄存器,程序计数器PC,地址
12、寄存器AR,地址总线ABUS,数据总线DBUS,累加器AC,缓冲寄存器DR,ALU,指令寄存器IR,指令译码器,操作控制器 时序产生器,时钟,状态反馈,取指控制,执行控制,c,c,c,c,+1,20,21,22,23,24,30,40,CLA,ADD 30,STA 40,NOP,JMP 21,000 006,000 024,JMP 21,JMP 21,000 024,000 021,000 006,000 006,000 025,000 021,注意 执行“JMP 21”指令时,我们此处所给的四条指令组成的程序进入了死循环,除非人为停机,否则这个程序将无休止地运行下去,因而内存单元40中的和数
13、将一直不断地发生变化。 当然,我们此处所举的转移地址21是随意的,仅仅用来说明转移指令能够改变程序的执行顺序而已。,指令周期,用方框图语言表示指令周期 在进行计算机设计时,可以采用方框图语言来表示一条指令的指令周期。 一个方框代表一个CPU周期,方框中的内容表示数据通路的操作或某种控制。 一个菱形符号代表某种判别或测试,不过时间上它依附于它前面一个方框的CPU周期,而不单独占用一个CPU周期。 符号“”代表一个公操作。,注意: 各类信息的传送路径 指令:M-DBUS-DR-IR 地址:PC-AR-ABUS-(取决于寻址方式) 数据: 寄存器-寄存器 总线直接传送 寄存器-存储器 Ri-DBUS
14、-DR-M 存储器-寄存器 M-DR-BUS-Ri,例:如图所示为双总线结构机器的数据通路,IR为指令寄存器,PC为程序计数器(具有自增功能),M为主存(受R/W信号控制),AR为地址寄存器,DR为数据缓冲寄存器, ALU由加、减控制信号决定完成何种操作,控制信号G控制的是一个门电路。另外,线上标注有小圈表示有控制信号,例中yi表示y寄存器的输入控制信号,R1o为寄存器R1的输出控制信号,未标字符的线为直通线,不受控制。 1.“ADD R2,R0”指令完成(R0)+(R2)R0功能操作。假设该指令的地址已放入PC中。 2.“SUB R1,R3”指令完成(R3)-(R1)R3的功能操作。,习题:
15、,参见图中的数据通路。画出存数指令“STA R1,(R2)”的指令周期流程图,其含义是将寄存器R1的内容传送至(R2)为地址的主存单元中。标出个为操作信号序列。,PCAR,MDR,DRIR,R2AR,R1DR,DRM,PC0,G,ARi,DR0,G,IRi,R20,G,ARi,R10,G,DRi,R/W=W,R/W=R,参见图中的数据通路,画出取数指令“LDA (R3),R0”的指令周期流程图,其含义是将(R3)为地址主存单元的内容取至寄存器R0中。标出个为操作信号序列。,PCAR,MDR,DRIR,R3AR,MDR,DRR0,PC0,G,ARi,DR0,G,IRi,R30,G,ARi,DR0
16、,G,R0I,R/W=R,R/W=R,CPU的基本构成: 控制器,运算器,寄存器(cache,指令缓存) 寄存器的类型: 指令寄存器(IP) 程序计数器(PC) 数据寄存器(DR) 地址寄存器(AR) 状态寄存器(SR) 数据通路: 总线结构(单总线,双总线,多总线) 专用通路(如MIPS),数据通路示例:总线结构,控制信号: R1out:R1的输出控制 R1in: R1的输入控制 Yin: Y的输入控制 IRin: IR的输入控制 IRout: IR的输出控制 PCin: PC的输入控制 PCout: PC的输出控制 PC+1: PC计数更新控制 ADD: ALU加法操作控制,专用通路结构,
17、专用通路结构,控制信号: MemRead存储器读 MemWrite存储器写 ALUOp运算操作码 ALUSrcALU数据选择 PCWritePC写 PCSourcePC输入选择,RegWrite数据寄存器写 MemtoReg写数据选择 RegDst写寄存器选择 Irwrite指令寄存器 Jump选择转移地址,指令的执行过程一、运算指令的执行过程,专用通路结构:如add $1, $2, $3 (1) 取指令。IR = MemoryPC PC = PC + 4,一、运算指令的执行过程,专用通路结构:如add $1, $2, $3 (2) 指令译码及读取操作数。A = RIR25:21 B = RI
18、R20:16,一、运算指令的执行过程,专用通路结构:如add $1, $2, $3 (3) 执行。ALUoutput = A + B,一、运算指令的执行过程,专用通路结构:如add $1, $2, $3 (4) 写回。RIR15:11 = ALUoutput,一、运算指令的执行过程,单总线结构: 如ADD R3, R1, R2 (1) PCMAR (2) PC+1PC,一、运算指令的执行过程,单总线结构: 如ADD R3, R1, R2 (1) PCMAR (2) PC+1PC (3) DBUSMDR (4) MDRIR,一、运算指令的执行过程,单总线结构: 如ADD R3, R1, R2 (
19、1) PCMAR (2) PC+1PC (3) DBUSMDR (4) MDRIR (5) R1Y,一、运算指令的执行过程,单总线结构: 如ADD R3, R1, R2 (1) PCMAR (2) PC+1PC (3) DBUSMDR (4) MDRIR (5) R1Y (6) R2 + YZ,一、运算指令的执行过程,单总线结构: 如ADD R3, R1, R2 (1) PCMAR (2) PC+1PC (3) DBUSMDR (4) MDRIR (5) R1Y (6) R2 + YZ (7) ZR3,二、访存指令的执行过程,专用通路结构 读操作:如lw $1, off($2) (1) 取指令
20、。IR = MemoryPC PC = PC+4,二、访存指令的执行过程,专用通路结构 读操作:如lw $1, off($2) (2) 指令译码。A = RIR25:21,二、访存指令的执行过程,专用通路结构 读操作:如lw $1, off($2) (3) 计算地址。ALUoutput = A + Sign-extend(IR15:0),二、访存指令的执行过程,专用通路结构 读操作:如lw $1, off($2) (4) 访存。Memory-data = MemoryALUoutput,二、访存指令的执行过程,专用通路结构 读操作:如lw $1, off($2) (5) 写回。RIR20:16
21、 = Memory-data,二、访存指令的执行过程,专用通路结构 写操作:如Store $1,offs($2) (1) IR = MemoryPC PC = PC + 4,二、访存指令的执行过程,专用通路结构 写操作:如Store $1,offs($2) (2) A = RIR25:21 B = RIR20:16,二、访存指令的执行过程,专用通路结构 写操作:如Store $1,offs($2) (3) ALUoutput = A + Sign-extend(IR15:0),二、访存指令的执行过程,专用通路结构 写操作:如Store $1,offs($2) (4) MemoryALUoutp
22、ut = B,二、访存指令的执行过程,单总线结构: 读操作:如LOAD R1,mem (1) PCMAR (2) PC+1PC,二、访存指令的执行过程,单总线结构: 读操作:如LOAD R1,mem (1) PCMAR (2) PC+1PC (3) DBUSMDR (4) MDRIR,二、访存指令的执行过程,单总线结构: 读操作:如LOAD R1,mem (1) PCMAR (2) PC+1PC (3) DBUSMDR (4) MDRIR (5) IR(地址段)MAR,读存储器,二、访存指令的执行过程,单总线结构: 读操作:如LOAD R1,mem (1) PCMAR (2) PC+1PC (
23、3) DBUSMDR (4) MDRIR (5) IR(地址段)MAR,读存储器 (6) DBUSMDR (7) MDRR1,二、访存指令的执行过程,单总线结构: 写操作:如STORE R1,mem (1) PCMAR (2) PC+1PC,二、访存指令的执行过程,单总线结构: 写操作:如STORE R1,mem (1) PCMAR (2) PC+1PC (3) DBUSMDR (4) MDRIR,二、访存指令的执行过程,单总线结构: 写操作:如STORE R1,mem (1) PCMAR (2) PC+1PC (3) DBUSMDR (4) MDRIR (5) IR(地址段)MAR,二、访存
24、指令的执行过程,单总线结构: 写操作:如STORE R1,mem (1) PCMAR (2) PC+1PC (3) DBUSMDR (4) MDRIR (5) IR(地址段)MAR (6) R1MDR,写存储器,三、控制指令的执行过程,专用通路结构 如无条件转移指令操作: J Target (1) IR = MemoryPC,三、控制指令的执行过程,专用通路结构 如无条件转移指令操作: J Target PC = (IR25:0 2) | PC+431:28,三、控制指令的执行过程,单总线结构:如BR offs (1) PCMAR (2) PC+1PC,三、控制指令的执行过程,单总线结构:如B
25、R offs (1) PCMAR (2) PC+1PC (3) DBUSMDR (4) MDRIR,三、控制指令的执行过程,单总线结构:如BR offs (1) PCMAR (2) PC+1PC (3) DBUSMDR (4) MDRIR (5) PCY,三、控制指令的执行过程,单总线结构:如BR offs (1) PCMAR (2) PC+1PC (3) DBUSMDR (4) MDRIR (5) PCY (6) Y + IR(地址段)Z,三、控制指令的执行过程,单总线结构:如BR offs (1) PCMAR (2) PC+1PC (3) DBUSMDR (4) MDRIR (5) PCY
26、 (6) Y + IR(地址段)Z (7) ZPC,三、控制指令的执行过程,条件转移指令操作,有条件地修改PC 方式:条件码,条件寄存器,比较与转移 专用通路结构:如beq $1,$2,offs (1) IR = MemoryPC PC = PC + 4,三、控制指令的执行过程,专用通路结构:如beq $1,$2,offs (2) A = RIR25:21 B = RIR20:16 Target = PC + (Sign-extend(IR15:0) 2),三、控制指令的执行过程,专用通路结构:如beq $1,$2,offs (3) if(A = B) PC = Target,三、控制指令的执
27、行过程,单总线结构:BNE offs (1) PCMAR (2) PC+1PC,三、控制指令的执行过程,单总线结构:BNE offs (1) PCMAR (2) PC+1PC (3) DBUSMDR (4) MDRIR,三、控制指令的执行过程,单总线结构:BNE offs (1) PCMAR (2) PC+1PC (3) DBUSMDR (4) MDRIR (5) if(!Z) PCY; else goto END,三、控制指令的执行过程,单总线结构:BNE offs (1) PCMAR (2) PC+1PC (3) DBUSMDR (4) MDRIR (5) if(!Z) PCY; else
28、 goto END (6) Y + IR(地址段)Z,三、控制指令的执行过程,单总线结构:BNE offs (1) PCMAR (2) PC+1PC (3) DBUSMDR (4) MDRIR (5) if(!Z) PCY; else goto END (6) Y + IR(地址段)Z (7) ZPC,操作控制器和时序产生器 数据通路:通常把寄存器之间传送信息的通路称为“数据通路”。 操作控制器:根据指令操作码和时序信号,产生各种 操作信号,以便正确建立数据通路,从而完成取指令和执 行指令的操作。 时序产生器:因为计算机高速地进行工作,每一个动 作的时间是非常严格的,不能有任何差错。时序产生器的 作用,就是对各种操作实施时间上的控制。,时序产生器和控制方式,时序信号的作用和体制 计算机的协调动作需要时间标志,而时间标志则是用时序信号来体现的。 操作控制器发出的各种控制信号都是时间因素(时序信号)和空间因素(部件位置)的函数。 组成计算机硬件的器件特性决定了时序信号最基本的体制是电位-脉冲制。,根据设计方法不同,操作控制器可分为时序逻辑型、存储逻辑型、时序逻辑与存储逻辑结合型三种。 1.硬布线控制器 是采用时序逻辑技术来实现的; 2.微程序控制器 是采用存储逻辑来实现的; 3.前两种方式的组合,时序产生器和控制方式,主状态周期(指令周期):包含若干个节拍周期,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 20263D模型师招聘试题及答案
- 中化学华谊工程科技集团有限公司2026届校园招聘参考题库必考题
- 南昌职教城教育投资发展有限公司2025年第七批公开招聘工作人员专题参考题库附答案
- 国家电投集团苏州审计中心选聘参考题库附答案
- 岳池县关于2025年社会化选聘新兴领域党建工作专员的考试备考题库必考题
- 招2人!2025年同德县文化馆面向社会公开招聘政府聘用人员的考试备考题库必考题
- 江西省供销合作社联合社公开招聘江西省金合控股集团有限公司副总经理及财务总监专题备考题库必考题
- 石棉县人力资源和社会保障局关于2025年下半年面向县内公开考调事业单位工作人员的(7人)参考题库必考题
- 辽宁科技大学2026年招聘高层次和急需紧缺人才102人备考题库必考题
- 雅安市卫生健康委员会所属事业单位雅安市卫生健康与人才服务中心2025年公开选调事业人员的参考题库必考题
- 学生计算错误原因分析及对策
- DB32T 4398-2022《建筑物掏土纠偏技术标准》
- (精确版)消防工程施工进度表
- 保险公司资产负债表、利润表、现金流量表和所有者权益变动表格式
- 送货单格式模板
- 防止激情违纪和犯罪授课讲义
- XX少儿棋院加盟协议
- 五年级数学应用题专题训练50题
- 2021年四川省资阳市中考数学试卷
- 河南省郑氏中原纤维素有限公司年产 0.2 万吨预糊化淀粉、0.5 万吨羧甲基纤维素钠、1.3 万吨羧甲基淀粉钠项目环境影响报告
- 高处作业安全培训课件
评论
0/150
提交评论