第6章 中央处理器1_第1页
第6章 中央处理器1_第2页
第6章 中央处理器1_第3页
第6章 中央处理器1_第4页
第6章 中央处理器1_第5页
已阅读5页,还剩71页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第6章中央处理器与设计,天道酬勤,中央处理单元(CentralProcessingUnit,简称CPU)是计算机的核心部件,它是计算机的数据处理中心和控制中心,通过它可反映出计算机的主要功能和性能。本章主要介绍CPU的基本功能与结构、时序与控制、硬布线控制器组成与设计、微程序控制器组成和微程序设计技术、CPU举例、流水线CPU及并行处理技术、多核处理器等内容。目的是为了帮助读者对中央处理器与硬布线控制器和微程序控制器的设计方法有一个较全面的了解。,6.1CPU的基本功能与结构6.1.1CPU的基本功能,6.1CPU的基本功能与结构6.1.1CPU的基本功能,6.1CPU的基本功能与结构6.1.1CPU的基本功能,6.1CPU的基本功能与结构6.1.1CPU的基本功能1.指令控制指令控制就是指程序执行时的顺序控制。2.操作控制一条指令的执行需要若干个操作信号(即微命令控制信号)的组合控制来实现。3.时间控制对各种操作实施时间上的定时,叫做时间控制。4.数据加工数据加工就是对数据进行算术运算和逻辑运算,完成数据的加工处理,是CPU的根本任务。,6.1.2CPU的基本结构,图6.0,6.1.3算术/逻辑运算器的功能,运算器的主要功能:1、执行所有的算术运算。2、执行所有的逻辑运算,并进行逻辑测试。6.1.4控制器的结构及功能1.控制器的结构控制器的基本结构如图6.1所示,主要由以下几部分组成:(1)指令部件。包括程序计数器PC、指令寄存器IR、指令译码器ID、地址寄存器AR等。(2)时序部件。包括脉冲源、启停控制逻辑、时序信号发生器。(3)微命令控制信号发生器。或称作时序控制信号形成部件。(4)中断控制逻辑。控制中断处理的硬件逻辑。,2.控制器的基本功能无论哪一种控制器都必须具有以下基本功能:(1)取指令(2)分析指令(3)执行指令(4)发出各种微命令信号(5)改变指令的执行顺序(6)控制程序和数据的输入和结果输出(7)对异常情况和某些请求的处理。,6.1.5寄存器与总线接口,寄存器组织(1)程序计数器PC(2)地址寄存器AR(3)数据寄存器DR(4)指令寄存器IR(5)累加寄存器AC(6)程序状态寄存器PSW2.总线接口,6.2时序与控制,6.2.1指令周期1.指令周期的基本概念(1)指令周期CPU每取出并执行一条指令,都要完成一系列的操作,这一系列操作所需用的时间通常叫做一个指令周期。或者说,CPU完成一条指令的时间叫做指令周期。不同的指令,由于其操作性质不同,所需的执行时间也会有较大的区别。因此,各种指令的指令周期不尽相同。,6.2.2时序信号发生器,6.2.2时序信号发生器,6.2.3控制方式,同步控制方式2.异步控制方式3.联合控制方式6.3.1基本概念1.微命令和微操作2.微周期一条机器指令从取指到执行完毕所需的的时间称为指令周期,相应一条微指令从控存读取并执行完毕所需的时间称为一个微周期。3.相容微操作与相斥微操作微操作是执行部件中的最基本的操作。由于数据通路的关系,微操作可以分为相容微操作和相斥操作两种。所谓相容微操作是指在同一个节拍内可以并行执行的微操作;而相斥微操作则是指不能在同一个节拍内并行执行的微操作。,6.3.2硬布线控制器的基本原理,6.3.3硬布线控制器的设计步骤,具体可以按照以下步骤进行:1.指令操作码的分配2.确定机器周期、节拍与主频3.绘制指令流程图4.根据指令流程图,编制指令操作时间表5.根据指令操作时间表,编制微操作表6.微操作的逻辑综合7.画出硬布线控制器逻辑图,6.3.4硬布线控制器设计举例,例6.1为了更清楚地说明硬布线控制器的设计过程,在此我们先设计一个简单模型CPU的控制器,如图6.7所示。12个微命令控制信号所对应的操作如表6.1所示。假设图6.7所示的简单模型CPU有以下7条指令:指令助记符操作描述与说明LDAX;(X)AC,把存储单元x的内容送至累加器STAX;(AC)X,把累加器内容送至存储单元ADDX;(AC)+(X)AC,加法ANDX;(AC)(X)AC,逻辑与COM;(AC)AC,累加器取反JMPX;XPC,无条件转移JMPZX;如果AC=0则xPC,条件转移,指令操作码的分配2.确定机器周期、节拍与主频3.绘制指令操作流程图假如每条指令操作包含取指周期和执行周期,其中取指操作为公共操作。根据表6.2绘制7条指令操作流程图。以指令的执行过程为线索,按指令类型分类,将每条指令归纳为一个微操作序列,根据操作的先后顺序画出指令流程图。如图6.8所示。,图6.87条指令操作流程及时序划分示意图,4.根据指令流程图,编制指令操作时间表根据图6.8指令流程和表6.1,编制指令操作时间表如表6.3。5.根据指令操作时间表,编制微操作表根据表6.3的指令操作时间表,编制指令微操作表如表6.4所示。6.微操作的逻辑综合根据表6.4所示的微操作表,以每一个微操作为单位进行“同类项合并”,写出每一个微操作命令的逻辑表达式。,写出12个微命令信号的逻辑表达式如下:C1=M2T4I3C2=M2T4I4C3=M2T1I5C4=M1(T2+T3)+M2(T2+T3)(I1+I3+I4)C5=M2(T3+T4)I2C6=M2T2I2C7=M2T4I1C8=M2T1(I1+I2+I3+I4)C9=M2T1(I6+I7ZF)C10=M1T4C11=M1T1C12=M1T4,6.3.5阵列逻辑控制器,1.通用可编程逻辑器件常见的阵列逻辑电路有:读写存储器(randomaccessmemory,简称RAM)是一种典型的阵列逻辑电路,它的存储单元排列成阵列形式。只读存储器(readonlymemory,简称ROM),也是一种重要的阵列逻辑电路。可编程序逻辑阵列(programmablelogicarray,简称PLA)可编程序阵列逻辑(programmablearraylogic,简称PAL)通用阵列逻辑(generalarraylogic,简称GAL)门阵列(gatearray,简称GA)宏单元阵列(macrocellarray,简称MA)可编程门阵列(programmablegatearray,简称PGA),PLA,2.阵列逻辑控制器设计举例微命令控制信号C的函数为:C=(I,M,T,B)例6.2采用阵列逻辑来实现例6.1设计所要求的简单组合逻辑网络,其指令和指令操作码及微命令控制信号C1C12不变,如LDA的操作码为000,STA的操作码为001,ADD的操作码为010,AND的操作码为011,COM的操作码为100,JMP的操作码为101,JMPZ的操作码为110。,将3位操作码用ABC三个字母表示,若操作码为1,则用原变量表示,若操作码为0,则用反变量表示,并代入例6.1的12个微命令控制信号的组合逻辑表达式得:C1M2T4ABCC2M2T4ABCC3M2T1ABCC4M1(T1+T3)+M2(T2+T3)(ABC+ABC+ABC)M1(T1+T3)+M2(T2+T3)(AB+AC)C5M2(T3+T4)ABCC6M2T2ABCC7M2T4ABCC8M2T1(ABC+ABC+ABC+ABC)M2T1AC9M2T1(ABC+ABCZF)C10M1T4(A+B+C)C11M1T1(A+B+C)C12M1T4(A+B+C)采用阵列逻辑器件实现上列逻辑函数,使之成为阵列逻辑控制器。读者可将阵列逻辑控制器和硬布线控制器作一比较。,6.3.6指令执行过程举例,图6.12控制器的基本结构框图,图6.13运算器结构框图,加法指令的执行要完成以下操作:1.取指令:从存储器取指令,送入指令寄存器,并进行操作码译码。程序计数器加1,为下一条指令作好准备。控制器发出的控制命令:PCAB,WR#=0,M/IO#=1;DBIR;PC1。2.计算数据地址:将计算得到的有效地址送地址寄存器AR。其中rs1表示通用寄存器地址、GR表示通用寄存器、disp表示位移量。控制器发出的控制命令:rs1GR,(rs1)ALU,dispALU;“十”(加法命令送ALU);ALUAR(有效地址送地址寄存器)。3.取数:到存储器取数,控制器发出控制信号ARAB,WR#=0,M/IO#=1;DBDR。即将地址寄存器内容送地址总线,同时发访存读命令,存储器读出数据送数据总线后,打入请据寄存器。4.运算送结果:进行加法运算,结果送寄存器,并根据运算结果置状态位N,Z,V,C。,图6.14加法指令时序图,6.4微程序控制器结构原理,6.4.1微程序控制的基本概念1.微指令和微程序2.微指令与机器指令的关系,6.4.2微程序控制器的基本结构,1.控制存储器(CM)2.微指令寄存器(IR)3.地址转移逻辑4.微地址寄存器(AR)5.控制存储器的操作,图6.18,图6.19,6.4.3微程序控制的基本原理,图6.20CPU逻辑框图,表6.5微操作控制信号一览表,1.取指阶段所需的微操作(公共操作)T1:程序计数器PC中的指令地址送地址总线AB:PCAB(1)T2:发访存控制命令,ADS(21),MIO#=1(22),WR#=0(23)。从存储器取指令送数据总线。T3:指令送指令寄存器:DBIR(5),程序计数器PC+1:PC十1(3)。2.计算地址阶段所需的微操作T1:取两个源操作数(计算地址用):rslGR(8),(rsl)ALU(10),dispALU(4)。T2:加法运算:“+”(13)。T3:有效地址送地址寄存器:ALUAR(19)。3.取数阶段所需的微操作T1:数据地址送地址总线:ARAB(20)。T2:发访存控制命令:ADS(21),MIO#(22),WR#(23)。由存储器将数据送数据总线DB。T3:数据送数据寄存器:DBDR(6)4.加法运算和送结果阶段所需的微操作T1:两源操作数送ALU:rsGR(9),(rs)ALU(11);DRALU(12)。T2:加法运算:“+”(13)T3:送结果;ALUGR(17),图6.21微指令格式,6.4.4微程序控制器和硬布线控制器的比较,1、原理方面:2、结构方面:3、指令分析:4、功能扩充:5、工作速度:6、设计周期:,6.5微程序设计技术,设计微指令结构追求的目标应当是:1、有利于缩短微指令长度;2、有利于减小控制存储器的容量;3、有利于提高微程序的执行速度;4、有利于对微指令的修改;5、有利于提高微程序设计的灵活性;,6.5.1微指令的编码方式,1.微指令控制位直接表示法,2.字段直接编译表示法,图6.24字段直接编译法的指令结构,图6.23直接表示法下的微指令结构,3字段间接编译法,图6.25字段间接编译法的指令结构,4.混合表示法,6.5.2微地址的形成方法,下面先介绍几个基本概念:现行微指令:当前正在执行的微指令。现行微地址:现行微指令所在的控制存储器单元的地址。后继微指令:下一条要执行的微指令。后继微地址:后继微指令所在的控制存储器单元地址。微程序控制:当前微指令执行完毕后,产生后继微指令的微地址的方法。通常,产生后继微地址的方法有计数器方式、断定方式和多路转移方式等。,1.计数器方式,第一种方式:将微指令的地址字段(顺序控制字段)分成两部分:转移控制字段BCF和转移地址字段BAF。如图6.27所示。其中转移地址字段给出转移用部分微地址,转移控制字段用于规定后继微地址是顺序执行还是非顺序执行。BCF的输出送入译码器进行译码。假设BCF为3位二进制,编码及操作如下:BCF=000,顺序执行微指令,后继微地址为PC+1。BCF=001,机器指令操作码产生后继微地址的微命令,后继微地址由OP变换后产生。BCF=010,无条件转移微指令,将BAF送PC。BCF=011,条件转移微指令,后继微指令地址由转移条件的测试结果确定。BCF=100,测试循环微指令,后继微地址由测试循环条件确定。BCF=101,转微子程序微命令,后继微地址即微子程序入口微地址由PC与BAF字段组合形成。BCF=110,返回微命令。,图6.27计数器方式的工作原理图,2.断定方式(下址字段方式)3.多路转移方式,6.5.3微指令的格式,1.水平型微指令,2.垂直型微指令,控制字段判别测试字段下地址字段,如垂直型微指令格式举例:(1)R-R传送型微指令,(2)访问主存微指令,3.两种微指令格式的比较水平型微指令的特点:(1)水平型微指令并行操作能力强,效率高,灵活性强。(2)水平型微指令执行一条指令的时间短。(3)水平型微指令有微指令字长而微程序短。(4)水平型微指令用户难以掌握。垂直微指令的特点:(1)垂直型微指令与机器指令很相似,用户容易熟悉掌握,有利于推广和应用。(2)垂直型微指令执行一条指令的时间短。(3)微指令字较短而微程序长。(4)微程序的自动设计过程比较简单。两种微指令格式各有优缺点。应用时两种微指令格式可以混合使用,也可以单独使用。,6.5.4微程序设计举例,例6.3具体讨论微程序设计,为了便于与组合逻辑比较,仍以图6.7所示的简单模型CPU为例,而且其指令系统也与例6.2假设的指令相同,设计出其微程序。1.列出机器的全部控制信号一览表这一步设计与前面例6.1组合逻辑设计相同,为了便于讨论和读者学习,在此重复前面表6.1所示的简单模型CPU控制信号,对重复表号不再排序,而记作“重复表6.1”。,重复表6.1简单模型CPU控制信号一览表,2.绘制指令操作流程及时序划分示意图,(1)取指阶段的微操作取指阶段的微操作为公共操作,基本上与组合逻辑控制相同,不同的是指令取至IR后,微程序控制需由操作码形成执行阶段微程序的入口地址。即T1(PC)ART2MemDRT3(PC)+1PC,(DR)IR,IP(OP)微程序入口地址形成部件可见,取指操作共需3条微指令完成。一般IP(OP)是直送微程序入口地址形成部件的,不需要“IP(OP)微程序入口地址形成部件”这个微操作。,(2)执行阶段的微操作执行阶段的微操作由操作码的性质而定,同时也需考虑后续微指令地址的形成问题。下面将重复图6.8中所示机器指令对应的微指令序列填入表6.6中。3.确立微指令格式微指令的格式包括微指令的编码方式、后继微指令的地址形成方式和微指令字长等三个方面。(1)微指令的编码方式本例微操作数较少,可采用直接编码方式,由微指令控制字段直接产生微命令控制被控部件的操作。(2)后继微指令的地址形成方式可采用微指令的下址字段和由指令的操作码和两种方式形成后继微指令的地址。(3)微指令字长,4.编写微指令代码根据上述重复图6.8或表6.6编写微指令代码,表6.7列出了取指微程序和对应7条机器指令的微程序代码,表中空格中“0”缺省。将表中的微程序代码固化到控存ROM中,就可以用来形成7条机器指令操作所需的时序控制信号。,6.6流水线式CPU,6.6.1并行处理技术1.并行处理的基本概念(1)并行性的基本概念(2)并行性的表示方法(3)并行性的等级,2并行性的开发途径(1)时间并行时间并行指时间重叠(Timeinterleaving),在并行性概念中引入时间因素。(2)空间并行空间并行指资源重复(Resourcereplication),在并行性概念中引入空间因素。以“数量取胜”为原则来大幅度度提高计算机的运行速度。(3)时间空间并行时间空间并行即时间并行+空间并行,既采用时间并行性又采用空间并行性。例如,奔腾CPU采用了超标量流水线技术,在一个机器周期中同时执行两条指令,因而既具有时间并行性,又具有空间并行性。,6.6.2流水线式CPU的结构,1.流水线式CPU的组成流水线式CPU的组成示意图见图6.29。CPU按流水线方式组织,通常由指令部件、指令队列和执行部件三部分组成。这三大功能部件可以组成一个三级流水线。图中存储器体系包括多体交叉存储器和Cache。,2.流水线式CPU的时空图,6.6.3流水线中的主要问题及解决方法,1.资源相关2.数据相关3.控制相关6.7CPU举例6.7.1早期Intel系列CPU简介1、Intel8086/8088CPUIntel公司1978年研制成功时钟频率:4.7MHz-10MHz2.9万个晶体管、91种指令由EU执行单元和BIU总线接口单元两个处理单元组成20位地址总线,寻址能力220=1048576=1(MB)16位数据总线4个16位通用寄存器:AX,BX,CX,DX,5个16位地址指针寄存器:IP,BP,SP,SI,DI4个16位段界寄存器:CS,DS,SS,ES,图6.318086CPU内部逻辑框图,2、Intel80286CPU3、Intel80386CPU4、Intel80486CPU6.7.2早期Pentium系列CPU1、Pentium系列CPU的性能特点,图6.32PentiumCPU结构示意图,6.7.3RISC处理器,1.RISC的产生和发展2.RISC主要特点RISC处理器是当今UNIX领域64位多处理机的主流芯片。RISC的主要特点如下:指令数目少,一般都选用使用频率最高的一些指令;指令长度固定,指令格式种类少,寻址方式种类;大多指令可在一个时钟周期内完成;由于指令集简化后,流水线以及常用指令均可用硬件执行;采用大量的寄存器,使大部分指令操作都在寄存器之间进行,提高了处理速度;采用Cache主存辅存三级存储结构,使取数与存数指令分开执行,使处理器可以完成尽可能多的工作,且不因从存储器存取信息而放慢处理速度。,3.RISC和CISC体系(1)CISC体系CISC体系的优点:能够有效缩短新指令的微程序设计时间,允许设计师实现CISC体系机器向上兼容。新的系统可以使用一个包含早期系统的指令超集,也可使用早期机器上使用的相同软件。另外微程序指令的格式与高级语言相匹配,因而编译器并不一定要重新编写。CISC体系的缺点:指令集及芯片的设计比上一代产品更复杂,不同的指令,需要不同的时钟周期来完成。,(2)RISC体系RISC是一种为了提高处理器运行速度而设计的芯片体系。它的关键技术在于流水线操作,在一个时钟周期内完成多条指令。RISC的指令特征是:精简的指令集、指令长度相同、单机器周期指令。RISC体系的优点:在使用相同的芯片技术和相同运行时钟下,RISC系统的运行速度是CISC的24倍。由于RISC的指令系统是精简的,RISC处理器比相对应的CISC处理器设计更简单,需要的时间更短,并可应用更多的先进技术,开发更快的下一代产品。RISC体系的缺点:编写的程序代码会变得较长。另外,RISC体系的处理器需要更快的内存,通常在内部设置Cache。现在的嵌入式处理器一般都采用RISC体系。,4.RISC和CISC的比较它们主要差别如下:(1)指令系统:RISC设计者把主要精力放在那些经常使用的指令上,尽量使它们具有简单高效的特色。对不常用的功能,常通过组合指令来完成。(2)控制器:RISC的控制器一般采用组合逻辑控制(即硬布线控制);而CISC机器的控制器大多采用微程序控制。(3)CPU:RISCCPU包含有较少的单元电路,因而面积小、功耗低;而CISCCPU包含有丰

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论