微处理器系统结构与嵌入式系统设计:第3章 微处理器体系结构及关键技术

上传人:cl****1 文档编号:569791189 上传时间:2024-07-31 格式:PPT 页数:71 大小:6.49MB
返回 下载 相关 举报
微处理器系统结构与嵌入式系统设计:第3章 微处理器体系结构及关键技术_第1页
第1页 / 共71页
微处理器系统结构与嵌入式系统设计:第3章 微处理器体系结构及关键技术_第2页
第2页 / 共71页
微处理器系统结构与嵌入式系统设计:第3章 微处理器体系结构及关键技术_第3页
第3页 / 共71页
微处理器系统结构与嵌入式系统设计:第3章 微处理器体系结构及关键技术_第4页
第4页 / 共71页
微处理器系统结构与嵌入式系统设计:第3章 微处理器体系结构及关键技术_第5页
第5页 / 共71页
点击查看更多>>
资源描述

《微处理器系统结构与嵌入式系统设计:第3章 微处理器体系结构及关键技术》由会员分享,可在线阅读,更多相关《微处理器系统结构与嵌入式系统设计:第3章 微处理器体系结构及关键技术(71页珍藏版)》请在金锄头文库上搜索。

1、自动化工程学院自动化工程学院测试技术及仪器研究所测试技术及仪器研究所肖肖 寅寅 东东E-mail: TELE: 028-61831303通信与信息工程学院通信与信息工程学院无线通信与嵌入式系统实验室无线通信与嵌入式系统实验室阎阎 波波E-mail: TELE: 028-61831107微处理器系统结构与嵌入式系统设计7/31/2024第三章第三章 微处理器体系结构及关键技术微处理器体系结构及关键技术3.1 微处理器体系结构及功能模块简介微处理器体系结构及功能模块简介1.处理器的主要功能理器的主要功能2.处理器的基本理器的基本结构构3.一个一个简化的化的处理器模型理器模型结构示例构示例3.2

2、 处理器设计处理器设计1.指令系指令系统2.数据通路数据通路控制流程控制流程时序部件序部件控制控制逻辑3.3 指令流水线技术指令流水线技术3.4 典型微处理体系结构简介典型微处理体系结构简介3.5 先进的微处理器技术先进的微处理器技术ARM、x86随机逻辑、微程序随机逻辑、微程序(微码微码)数据类型、指令功能、指令格式、寻址方式数据类型、指令功能、指令格式、寻址方式ALU、Reg、总线、总线程序、指令、微操作程序、指令、微操作时钟周期、工作周期、指令周期时钟周期、工作周期、指令周期特点特点、操作操作、局限局限、设计设计宽度、周期宽度、周期3第三章第三章 习题习题作业:作业:1313、5 5、9

3、 9、1010、1111、13151315思考:思考:1.61.6、4 4、6868 、1212、1616补充充题(选作)作)2 2、某计算机指令系统中,指令字长为、某计算机指令系统中,指令字长为1212位,每个地址码长位,每个地址码长3 3位,位,有三地址指令有三地址指令4 4条,单地址指令条,单地址指令255255条,零地址指令条,零地址指令1616条。条。(1 1)能否以扩展操作码为其编码?说明其理由。)能否以扩展操作码为其编码?说明其理由。(2 2)如果其中单地址指令为)如果其中单地址指令为254254条呢?说明其理由。条呢?说明其理由。 1 1、有一条、有一条4 4个段的线性流水线,

4、各段的执行时间分别为个段的线性流水线,各段的执行时间分别为50ns50ns、50ns50ns、100ns100ns、200ns200ns。 (1 1)连续向流水线输入)连续向流水线输入6 6条指令,画出指令执行的时条指令,画出指令执行的时- -空空图,求该流水线的实际吞吐率和效率。注意计算时需写出步骤。图,求该流水线的实际吞吐率和效率。注意计算时需写出步骤。 (2 2)该流水线的瓶颈在哪一个段?请采用两种不同的措)该流水线的瓶颈在哪一个段?请采用两种不同的措施消除此瓶颈,画出两种改进方法后执行施消除此瓶颈,画出两种改进方法后执行6 6条指令的时条指令的时- -空图。空图。 自动化工程学院自动化

5、工程学院测试技术及仪器研究所测试技术及仪器研究所肖肖 寅寅 东东E-mail: TELE: 028-61831303通信与信息工程学院通信与信息工程学院无线通信与嵌入式系统实验室无线通信与嵌入式系统实验室阎阎 波波E-mail: TELE: 028-61831107自动化工程学院自动化工程学院测试技术及仪器研究所测试技术及仪器研究所肖肖 寅寅 东东E-mail: TELE: 028-61831303第 三 章 结 束几个概念几个概念1.中央中央处理理单元元 Central Processing Unit, CPU2.微微处理器理器 Micro Processing Unit, MPU3.

6、微控制微控制单元元 Micro Control Unit, MCU4.单片机片机5.计算机算机单单片片芯芯片片控制器、运算器、寄存器控制器、运算器、寄存器CPU、少量存储器及、少量存储器及I/O接口接口CPU+存储器存储器+总线总线/接口接口+外设外设*6/867微处理器的主要功能微处理器的主要功能计算机系算机系统设计师认为:处理器是指一种能理器是指一种能够经过多个步多个步骤执行行计算算任任务的的数字数字设备。从本从本质上上讲,处理器的作用是理器的作用是协调和控制和控制计算机算机的各个部件,并的各个部件,并执行程序行程序的指令序列。的指令序列。处理器的理器的5个主要功能:个主要功能: 指令控制

7、指令控制:控制指令按程序:控制指令按程序逻辑顺序序执行。行。 操作控制操作控制:按照指令:按照指令执行行过程及指令程及指令约定功能的需求定功能的需求产生各种操作控制信号。生各种操作控制信号。 时序控制序控制:能:能够在适当的在适当的时间(时刻刻)使相使相应操作控制操作控制信号有效,并保持所需的信号有效,并保持所需的时长。 数据加工数据加工:对数据数据进行算行算术和和逻辑运算运算处理。理。 中断中断处理理:程序:程序执行行过程中程中应能能够及及时处理出理出现的的I/O操作操作请求及异常情况。求及异常情况。8CPU最基本的功能最基本的功能CPU的作用是协调和的作用是协调和控制计算机的各个部件控制计

8、算机的各个部件并执行程序中的指令序并执行程序中的指令序列,因此应具有以下基列,因此应具有以下基本功能:本功能: 取指令:取指令:当程序已在存储器中时,首先根据程序入口地当程序已在存储器中时,首先根据程序入口地址取出一条程序,为此要发出指令地址及控制信号。址取出一条程序,为此要发出指令地址及控制信号。 分析指令:分析指令:即指令译码,是指对当前取得的指令进行分析,即指令译码,是指对当前取得的指令进行分析,指出它要求什么操作,并产生相应的操作控制命令。指出它要求什么操作,并产生相应的操作控制命令。 执行指令:执行指令:根据分析指令时产生的根据分析指令时产生的“操作命令操作命令”形成相应形成相应的操

9、作控制信号序列,通过运算器、存储器及输入的操作控制信号序列,通过运算器、存储器及输入/输出设备输出设备的执行,实现每条指令的功能,其中包括对运算结果的处理的执行,实现每条指令的功能,其中包括对运算结果的处理以及下条指令地址的形成。以及下条指令地址的形成。*8/869微处理器的基本结构微处理器的基本结构冯诺依曼机:依曼机:5大部件大部件存存储程序程序串行串行单顺序序数据通路数据通路CPU的的RTL描述:描述:数据通路数据通路控制器控制器10数据通路数据通路:ALUReg+内部总线内部总线ALU:运算:运算Reg组:暂存存内内总线:传输p简单的的单总线 (ALU总线)p复复杂的多的多级总线(片上片

10、上总线)11控制器控制器输入入输出出12简化的处理器模型简化的处理器模型哈佛结构哈佛结构13CPU与内存储器的接口与内存储器的接口1.对外形成外形成三三总线形式;形式;2.寄存器寄存器MAR和和MBR简化了化了CPU与主存之与主存之间的的传送通送通路,使其容易控制路,使其容易控制;3.寄存器寄存器MAR和和MBR对用用户透明透明,即不能即不能编程程访问;14微处理器的微处理器的总体结构总体结构数据通道数据通道1.组成:组成:ALU+寄存器寄存器+内部总线内部总线2.功能:功能:基本的二进制算术、逻辑及移位运算;基本的二进制算术、逻辑及移位运算; 根据运算结果设置状态标志(进根据运算结果设置状态

11、标志(进/借位、溢出等);借位、溢出等); 3.特性:特性:数据通路宽度数据通路宽度:即字长,即字长,CPU单次传送和处理数据的能力。单次传送和处理数据的能力。数据通路周期数据通路周期:ALU运算并将保存结果的过程。运算并将保存结果的过程。控制单元(控制器)控制单元(控制器)时序控制部件:时序控制部件:指令周期、工作周期、时钟周期指令周期、工作周期、时钟周期(工作脉冲工作脉冲)指令译码逻辑:指令译码逻辑:微程序(微程序(CISC )、硬连逻辑()、硬连逻辑(RISC ) 、指令系统设计指令系统设计指令集指令集结构构(ISA)是体系是体系结构的主要内容之一,其功构的主要内容之一,其功能能设计实际

12、就是确定就是确定软硬件硬件的功能分配。的功能分配。考虑因素考虑因素 速度、成本和灵活性速度、成本和灵活性实现方式实现方式 硬件、硬件、软件件 优化策略优化策略 RISC、CISC;流水;流水线;多核;多核;实现内容实现内容 数据数据类型型、指令功能指令功能、指令格式指令格式、寻址方式址方式实现步骤实现步骤根据根据应用初用初拟出指令的分出指令的分类和具体的指令;和具体的指令;编写出写出针对该指令系指令系统的各种高的各种高级语言言编译程序;程序;对多种算法程序多种算法程序进行模行模拟测试,确,确认指令系指令系统的操作的操作码和和寻址方式的效能是否都比址方式的效能是否都比较高;高;用硬件用硬件实现高

13、高频使用的指令,使用的指令,软件件实现低低频使用指令。使用指令。指令集设计示例指令集设计示例假假设某机器的字某机器的字长是是8位位,支持常,支持常见的的简单指令:指令:指令是指令是双地址指令双地址指令,源操作数采用,源操作数采用2种种寻址方式址方式寄寄存器存器寻址址(R0R3)和立即数和立即数寻址址;目;目标操作数可采用操作数可采用2种种寻址方式址方式寄存器寄存器寻址和存址和存储器直接器直接。请为下述九下述九条机器指令条机器指令设计可行的代可行的代码方案。方案。若采用定长编码(若采用定长编码(8bit)方案,可定义指令格式如下:)方案,可定义指令格式如下:76543210=0000=0000表

14、示表示ADDADD=0001=0001表示表示SUBSUB=0010=0010表示表示MOVMOV=0011=0011表示表示ININ=0100=0100表示表示OUTOUT=0101=0101表示表示RRRR目的操作数寻址方式:目的操作数寻址方式:0 0存储器存储器直接寻址直接寻址 1 1寄存器寻址寄存器寻址目标寄存目标寄存器编号器编号源操作数寻址方式:源操作数寻址方式:0 0立即数寻址立即数寻址 1 1寄存器寻址寄存器寻址源寄存器源寄存器编号编号操操 作作 码码机器指令集机器指令集机器指令符号表示法机器指令符号表示法 由于直接与机器指令二进制表示法打交道由于直接与机器指令二进制表示法打交道

15、很困难,于是普遍使用的是机器指令符号表示很困难,于是普遍使用的是机器指令符号表示法法(symbol representation)。操作码可缩写成操作码可缩写成助记符助记符(mnemonic)来表示:来表示:ADD加加SUB减减MUL乘乘DIV除除LOAD 由存储器装入由存储器装入STOR 存入存储器存入存储器*18/86汇编语言汇编语言数据类型数据类型确认某种特殊类型的数据是否应该得到硬件支持确认某种特殊类型的数据是否应该得到硬件支持 数数值型数据:无符号整数、型数据:无符号整数、带符号整数、浮点数符号整数、浮点数 非数非数值数据:字符串数据:字符串确认字长(对数据长度的限制)确认字长(对数

16、据长度的限制) 截断(截断(truncation)或溢出()或溢出(overflow)在选择数据格式和长度时需要平衡数值范围、程序执行在选择数据格式和长度时需要平衡数值范围、程序执行期间发生溢出的可能性、处理设备和存储设备的复期间发生溢出的可能性、处理设备和存储设备的复杂性、以及价格和速度等因素。杂性、以及价格和速度等因素。指令类型指令类型指令按功能可分成以下三种基本指令按功能可分成以下三种基本类型:型:1. 数据传输:数据传输:将数据从一个地方(源地址)复制到另一个将数据从一个地方(源地址)复制到另一个 地方(目的地址),传输结束后源地址中的内容不变。地方(目的地址),传输结束后源地址中的内

17、容不变。u 数据数据传送范送范围: R-R、R-M、M-R或或M-Mu 数据数据传送送宽度:一般度:一般为固定固定值(如(如8、16或或32bit),其),其它它宽度的数据度的数据传送一般可通送一般可通过软件移位和合件移位和合并操作来并操作来实现。数据运算:数据运算:包括算术运算(加、减、乘、除等)和逻辑包括算术运算(加、减、乘、除等)和逻辑 运算(与、或、非、异或等)。运算(与、或、非、异或等)。 该类指令需要明确操作数的指令需要明确操作数的类型和型和长度。度。控制类:控制类:用于改变正常的程序执行流程,完成程序的跳转用于改变正常的程序执行流程,完成程序的跳转,主要包括转移指令和过程指令。,

18、主要包括转移指令和过程指令。I/O?机器指令要素机器指令要素操作码操作码(operation code,opcode):需要完成的操作;:需要完成的操作;源操作数源操作数 (source operand reference):操作所需的输入;:操作所需的输入;结果操作数结果操作数 (result operand reference):操作产生的结果;:操作产生的结果;下一条指令下一条指令 (next instruction reference):告诉:告诉CPU到哪里到哪里取下一条指令。取下一条指令。 *取 指译码执行回写22指令格式指令格式 在在计算机内部,指令由一个位串来表示。相算机内部,

19、指令由一个位串来表示。相应于指令于指令的各要素,的各要素,这些位串划分成几个些位串划分成几个字段字段:操作码字段操作码字段:说明明CPU应进行的操作行的操作按操作按操作类型分型分组:同:同类操作要求同操作要求同样或或类似的控制信号,似的控制信号,因此因此编码也也类似(有尽可能多的公共位)似(有尽可能多的公共位)操作数字段操作数字段/地址字段地址字段:说明源操作数和目的操作数存放的位置信息明源操作数和目的操作数存放的位置信息(R、M或或I/O);说明源操作数和目的操作数的数据明源操作数和目的操作数的数据类型型;下一条指令地址字段下一条指令地址字段: 如如紧跟当前指令,在主存或虚存中,跟当前指令,

20、在主存或虚存中,则不需不需显示引用;示引用; 如可能如可能产生跳生跳转,则需要需要显示示给出存出存储地址;地址;指令类型决定了指令类型决定了CPUCPU的软件功能特性的软件功能特性寻址方式决定了寻址方式决定了CPUCPU硬件功能特性硬件功能特性22/8623操作码字段操作码字段常常见指令字段分配指令字段分配操作操作码位段分配位段分配扩展操作展操作码操作数字段操作数字段 二元操作二元操作(binary operation)是一种基本操作是一种基本操作类型,型,这样的指令通常包含的指令通常包含三个操作数地址三个操作数地址:两个:两个源操作数和一个目的源操作数和一个目的(结果果)操作数。操作数。为了

21、了缩短指令短指令长度,可以采用以下方法:度,可以采用以下方法:一、只有一个地址指定一、只有一个地址指定给存存储器中的操作数,器中的操作数,而其余地址都指定而其余地址都指定给寄存器寄存器,可以在指令格式中明,可以在指令格式中明确地指定其寄存器号。确地指定其寄存器号。二、把一个、两个或三个操作数的地址在指令二、把一个、两个或三个操作数的地址在指令格式中格式中变成成隐含含的地址。的地址。隐含的地址可以指定含的地址可以指定给专用寄存器,而用寄存器,而这些寄存器的名字些寄存器的名字隐含在指令格式的含在指令格式的操作操作码中中。*24/86机器指令结构:机器指令结构:M-M、M-R、R-R机器指令结构:零

22、地址、单地址、双地址机器指令结构:零地址、单地址、双地址25寻址方式寻址方式操作数操作数实际存放位置:存放位置:寻址方式:址方式:1在指令在指令码中指定操作数:中指定操作数:立即数立即数寻址址2在寄存器中指定操作数:在寄存器中指定操作数:寄存器(直接)寄存器(直接)寻址址3在在存存储器器中中指指定定操操作作数数:存存储器器直直接接寻址址、存存储器器间接接寻址址4在在汇编程序中指定操作数:程序中指定操作数: 相相对寻址址5操作数在操作数在I/O接口中:接口中: 存存储器器寻址(存址(存储器映像器映像编址)或端口址)或端口寻址(独立址(独立编址)址)26立即数寻址立即数寻址immediate ad

23、dressing mode27寄存器直接寻址方式寄存器直接寻址方式register direct addressing mode 指令的地址字段指令的地址字段给出出寄存器号(名)寄存器号(名) ,而,而被指定的寄存器的内容被指定的寄存器的内容就是操作数。就是操作数。 28存储器直接寻址存储器直接寻址memory direct addressing mode指令的地址字段直接指令的地址字段直接给定一个定一个立即数立即数作作为存存储单元的元的地址地址。寄存器直接寻址29存储器间接寻址存储器间接寻址memory indirect addressing mode(1) 寄存器寄存器间接接寻址方式址方式

24、(2) 存存储器器间接接寻址方式址方式(3) 位移量位移量寻址方式址方式(4) 变址址寻址方式址方式(5) 比例尺比例尺寻址方式址方式用于加强编写与位置无关的汇编语言程序用于加强编写与位置无关的汇编语言程序30寄存器间接寻址方式寄存器间接寻址方式register indirect addressing mode 将存将存储器地址指定在器地址指定在寄存器中,即寄存器中,即让寄存器寄存器内容指向内容指向一个可一个可访问到到操作数的存操作数的存储器器单元。元。*30/8631存储器间接寻址方式存储器间接寻址方式 memory indirect addressing mode 多多级间接接寻址;址;

25、通常用于通常用于访问存存储器中的器中的“跳跳转表表”:跳:跳转表首址指表首址指定在定在寄存器寄存器中,中,该表中的每表中的每个表个表项指向一个可指向一个可访问到操到操作数的存作数的存储器器单元。元。跳转表跳转表32位移量寻址方式位移量寻址方式displacement addressing mode 通常用于数通常用于数组、矩矩阵类向量数据的存向量数据的存取:取:寄存器寄存器值指定数指定数组首址,首址,立即数立即数指定指定组内偏移;内偏移;33指数寻址方式指数寻址方式indexed addressing mode 通常用于数通常用于数组、矩矩阵类向量数据的存向量数据的存取:取:寄存器寄存器1值指

26、定指定数数组首址,首址,寄存器寄存器2指定指定组内偏移;内偏移;34比例尺寻址方式比例尺寻址方式scaled addressing mode用字节表示的操用字节表示的操作数的长度作数的长度位移量位移量寻址址+指数指数寻址址+自增自增/自减自减寻址址35PC相对寻址方式相对寻址方式Program Counter-related addressing mode 主要用在主要用在转移和跳移和跳转指令,指定指令,指定汇编语言程言程序序码的内部位置作的内部位置作为目的地址偏移量目的地址偏移量操作数。操作数。指令:JUMP abe 操作: PC abe = (PC)updated +immSign_ext

27、当前指令取出当前指令取出后的后的PCPC值值出现在指令中出现在指令中基本的数据通路结构基本的数据通路结构ALU的的实现:(1)由基本由基本门电路路实现全加器全加器;(2)由由n位全加器构成位全加器构成n位位加法器加法器;(3)以加法器以加法器为核心,核心,通通过扩展展输入入选择逻辑实现其它其它基本算基本算术和和逻辑运算;运算;ALU功能描述示例功能描述示例算算术逻辑运算功能运算功能移位运移位运算功能算功能数据通路的实现数据通路的实现程序、指令、微操作程序、指令、微操作40时序控制部件时序控制部件时序控制部件:序控制部件:脉冲源脉冲源+分分频逻辑;用以;用以产生各生各种系种系统所需的、所需的、满

28、足足时序要求的控制信号。序要求的控制信号。 指令周期指令周期 读取并取并执行一条指令所需的行一条指令所需的时间工作周期工作周期 指令周期中的不同工作指令周期中的不同工作阶段段时钟周期时钟周期 系系统中最小的基本中最小的基本时间分段分段CPU中的多中的多级时序序 一个指令周期中的多个工作周期一个指令周期中的多个工作周期 现代控制器代控制器设计趋势: 采用非集中控制模式,采用非集中控制模式,I/O和和M拥有各自的控制器,有各自的控制器,从而从而变为自主的功能部件。自主的功能部件。 I/O和和M采用异步控制。采用异步控制。控制器的设计控制器的设计 控制器根据指令控制器根据指令译码结果和当前状果和当前

29、状态决定在什么决定在什么时间、根据什么条件、根据什么条件、发出什么命令、做什么操作:出什么命令、做什么操作:生成生成时序控制信号序控制信号生成指令生成指令执行所需的控制信号行所需的控制信号响响应各种中断或异常事件各种中断或异常事件请求求按照微控制命令的形成方式,控制器可分按照微控制命令的形成方式,控制器可分为随机随机逻辑和和微程序微程序两种基本两种基本类型。型。随机逻辑随机逻辑CPU的结构的结构随机随机逻辑(硬硬连逻辑)体系体系结构用构用布布尔逻辑函函数数来表示来表示控制控制单元元的的输入和入和输出之出之间的关系。的关系。时序部件时序部件指令预处理指令预处理随机逻辑随机逻辑CPU的特点的特点优

30、点:优点: 可通可通过简化指令化指令减少所使用的减少所使用的门电路路总数从而减少制造数从而减少制造费用。用。缺点:缺点:指令集指令集结构与硬件构与硬件逻辑方程之方程之间存在存在着密切着密切联系,系,设计过程复程复杂。重用性差重用性差,设计成果很少能再利用到成果很少能再利用到以后的新以后的新CPU设计中。中。适用于适用于较简单的指令集的指令集结构。构。随机逻辑随机逻辑CPU的设计步骤的设计步骤 1.指令集结构驱动硬件的逻辑方程指令集结构驱动硬件的逻辑方程 定定义所需的指令集所需的指令集结构;构; 根据指令集决定硬件根据指令集决定硬件逻辑及状及状态机;机;2.硬件逻辑方程反馈到指令集结构硬件逻辑方

31、程反馈到指令集结构 对指令集指令集结构做必要的修改和构做必要的修改和优化;化; 最大限度地减少最大限度地减少逻辑复复杂度;度;*随机逻辑随机逻辑CPU的设计要点的设计要点 一、一、最小化逻辑门数目最小化逻辑门数目优化硬件化硬件逻辑、尽可能地少用触、尽可能地少用触发器器2.优化硬件时序优化硬件时序逻辑门级数最小化数最小化;建立并行通路以建立并行通路以满足足时序序约束束(增加增加逻辑)3.简化指令集简化指令集逻辑简单、寄存器数量少、寄存器数量少RISC最重要的目的最重要的目的随机逻辑随机逻辑CPU的操作的操作1-取指令取指令 程序程序计数器数器的的值经MUX送到存送到存储器;器; 存存储器送回的指

32、令写入器送回的指令写入指令寄存器指令寄存器; 程序程序计数器加数器加1后回写;后回写;47随机逻辑随机逻辑CPU的操作的操作2-指令译码与执行指令译码与执行 寄存器堆中的某个寄存器堆中的某个获得得ALU的一个的一个操作数操作数; 另一个另一个操作数操作数来自于寄存器堆中的数据寄存器;来自于寄存器堆中的数据寄存器; ALU的的结果果值被回写入寄存器堆。被回写入寄存器堆。48Balancing Operatorsa, b, c, d: 4-bit vectorsout = a * b * c * dXabXcXdzXabout = (a * b) * (c * d)XcdXzUnbalancedB

33、alanced4 x 48 x 412 x 416-bit4 x 44 x 48 x 816-bitDelay through 3 Stages of MultiplyDelay through 2 Stages of Multiply49随机逻辑随机逻辑CPU的指令集设计的指令集设计 考考虑如何如何让逻辑门可以快速而方便地可以快速而方便地实现 指指令令译码。 在随机在随机逻辑CPU的指令集中,可以使用以下的指令集中,可以使用以下4种种类型的指令:分支指令型的指令:分支指令(branch instruction) 、存存储器器引用指令引用指令(memory reference instruct

34、ion)、ALU指指令令(ALU instruction)、设置指令置指令(SET instruction) 一般的一般的设计方法是将指令内部的方法是将指令内部的结构划分成多个指构划分成多个指令字段令字段(field)。同。同时还要求要求这些指令字段在各指令中些指令字段在各指令中所放的位置尽可能一所放的位置尽可能一样。这样,在在CPU中可以减少指中可以减少指令令译码所需的所需的逻辑数量数量。49/8650指令的简化示例指令的简化示例如果限制在机器内部只用一个累加器,则指令集就会被限制在如果限制在机器内部只用一个累加器,则指令集就会被限制在如下范围内:如下范围内: 使用使用单目操作数的指令,可以

35、将累加器作目操作数的指令,可以将累加器作为一个源操作数,一个源操作数,同同时可作可作为一个目的操作数。一个目的操作数。 使用双目操作数的指令,可以将累加器作使用双目操作数的指令,可以将累加器作为一个源操作数,一个源操作数,以存以存储器作器作为另一个源操作数,累加器同另一个源操作数,累加器同时也可作也可作为目的操作目的操作数。数。2.如果只用一个索引寄存器,则寻址模式将局限于以下两种方如果只用一个索引寄存器,则寻址模式将局限于以下两种方式:式: 当当进行直接存行直接存储器器寻址址时,存,存储器地址由指令中的部分字器地址由指令中的部分字段提供。段提供。 当当进行指数行指数寻址址时,目,目标地址一部

36、分来自指令的存地址一部分来自指令的存储器地器地址,与指数寄存器相加之后,形成目址,与指数寄存器相加之后,形成目标操作数的地址。操作数的地址。微码微码CPU的结构的结构在微在微码结构中,构中,控制控制单元元的的输入和入和输出之出之间的关系被的关系被视为一个一个存存储系系统。时序部件时序部件指令预处理指令预处理 工作原理工作原理 微程序控制微程序控制(存储控制存储控制) 组成组成微码控制器微码控制器+微代码微代码微码微码CPU的操作的操作-指令译码与执行指令译码与执行1.控制控制逻辑对IR中的指中的指令令译码,确定,确定对应微微码程序地址并写入程序地址并写入 PC;2. PC向微向微码ROM提供提

37、供 地址,返回的微地址,返回的微码写写入入 IR; IR译码后后产生相生相应的控制信号;的控制信号; PC地址加地址加1后后获取下取下一条微指令地址,直一条微指令地址,直到完成整个微到完成整个微码程序程序*53微码微码CPU的特点的特点优点:优点:1.可以通可以通过减少取指令次数的方法来减少取指令次数的方法来降低存降低存储器器总访问时间从而提高系从而提高系统性能;性能;2.简化硬件化硬件设计,可使其成品机器几乎没有,可使其成品机器几乎没有设计上的上的错误;3.建立或改建立或改动微代微代码比建立或改比建立或改动电路省路省时、不易出不易出错,因此更易于,因此更易于创建新的建新的CPU版本版本;缺点

38、:缺点: 同同样功能微代功能微代码比硬比硬连逻辑实现的的开开销大大;*53/8654微码结构与随机逻辑结构的比较微码结构与随机逻辑结构的比较1.硬件设计开销硬件设计开销随机随机逻辑CPU的硬件和指令集必的硬件和指令集必须同步同步进行行设计和和优化,因此比化,因此比较复复杂。微微码CPU的指令集的指令集设计并不直接影响并不直接影响现有硬件,修改有硬件,修改指令集并不需要重新指令集并不需要重新设计新的硬件。新的硬件。2.性能性能如果采用相同指令集,如果采用相同指令集,则随机随机逻辑CPU操作会更快。操作会更快。如果如果执行相同的行相同的计算任算任务,微,微码CPU能能够通通过使用更使用更少少(但更

39、复但更复杂)的指令达到更高性能。的指令达到更高性能。当系当系统整体性能受限于存整体性能受限于存储器的速度器的速度时,微,微码CPU对性能提高的性能提高的优势更更为明明显。*54/86流水线结构与微码结构的比较流水线结构与微码结构的比较比比较下列操作在微下列操作在微码CPU和流水和流水线CPU中的中的执行情况行情况Mem(Reg 1)+Mem(Reg 2)Reg 3微微码机器(机器(CISC)中只需要一条指令表示,而在)中只需要一条指令表示,而在流水流水线机器(机器(RISC)里)里则需要需要3条指令;条指令;在流水在流水线机器中需要取存机器中需要取存5次存次存储器,而微器,而微码机器机器只需要

40、只需要3次。次。若存若存储器速度器速度为系系统瓶瓶颈,则应采用微采用微码CPU3次指令,次指令,2次数据次数据1次指令,次指令,2次数据次数据56微码微码CPU的设计步骤的设计步骤 1.建立建立硬件体系硬件体系结构构, 保保证其具其具备执行必要行必要基本功能基本功能步步骤的功能。的功能。2.将指令分割成将指令分割成许多微步多微步骤,转写成写成微程序微程序并写入并写入控制存控制存储器器。微指令微指令Micro-instruction微程序微程序Micro-program(固件(固件fireware)指令指令instruction微微码控制器控制器Microcode controller(定序器(

41、定序器sequencer)*56/8657流水线技术的特点流水线技术的特点 延延迟320ps吞吐量吞吐量3.12GIPS延延迟?ps吞吐量吞吐量?GIPS延延迟360ps吞吐量吞吐量8.33GIPS单个操作延迟增加;单个操作延迟增加;整体吞吐量增加;整体吞吐量增加;58流水线操作过程流水线操作过程59流水线的局限性流水线的局限性 各阶段性能差异各阶段性能差异会会导致流水线性能下降导致流水线性能下降 寄存器延迟开销寄存器延迟开销导导致流水线性能下降致流水线性能下降硬件空硬件空闲延延迟?ps吞吐量吞吐量?GIPS延延迟360ps吞吐量吞吐量5.88GIPS60指令流水线设计指令流水线设计1.基本要

42、求基本要求流水流水线各个段的操作相互独立各个段的操作相互独立流水流水线各个段的操作同步各个段的操作同步2.性能指标性能指标吞吐率吞吐率(Throughput Rate)加速比加速比(Speedup Ratio)效率效率(Efficiency)3.相关及处理相关及处理 结构相关、数据相关和控制相关深度深度(depth)或并行度或并行度(degree of parallelism)即流水级数即流水级数m等待时间等待时间(latency) 每一作业从开始到结束所需时钟周期数,每一作业从开始到结束所需时钟周期数,m理想流水理想流水线: 各各级延延时时间相等;相等; 无等待无等待时间; 大量代大量代码不

43、断流;不断流;61吞吐率吞吐率(Throughput Rate)吞吐率吞吐率Tp:指:指单位位时间内能内能处理的任理的任务数数(指令数指令数)。最大吞吐率最大吞吐率Tpmax:流水:流水线达到达到稳定状定状态后的吞后的吞吐吐率。率。用于描述流水用于描述流水线执行各种运算的行各种运算的速率速率,通常表示,通常表示为每秒每秒执行的运算数或每周期行的运算数或每周期执行的运算数。行的运算数。若一个m级线性流水线各级时长(即拍长)均为t,则连续处理n条指令时的实际吞吐率Tp为:可以看出,当n时,最大吞吐率Tpmax1/ t理想流水理想流水线,大量代,大量代码62加速比加速比(Speedup Ratio)

44、非流水非流水线执行行时间相相对流水流水线执行行时间之比。之比。 若一个m级线性流水线各级时长(即拍长)均为t,则连续处理n条指令时的加速比Sp为:可以看出,当 n时,Spm,即最大加速比等于流水线的段数m。63效率效率(Efficiency)一定一定时段内,流水段内,流水线所有段所有段处于工作状于工作状态的比率。的比率。 若一个m级线性流水线各级时长(即拍长)均为t,则连续处理n条指令时的效率E为:E =指令完成时间内占用的时空区 /指令总时空区可以看出,当 n时,E1,即流过流水线的指令越多,流水线效率越高。 64ARM体系结构体系结构1。RISC指令集,指令集,内核小,功耗低、内核小,功耗

45、低、成本低成本低2。哈佛结构。哈佛结构3。运算器操作。运算器操作数只能从寄存器数只能从寄存器输入输入/输出输出4。采用桶式移。采用桶式移位器处理位器处理ALU输输入,灵活高速入,灵活高速658086体系结构体系结构1。冯式结构。冯式结构2。运算器操作数可以从寄存器、存储器或。运算器操作数可以从寄存器、存储器或I/O端口获得端口获得3。分成两大功能部件。分成两大功能部件EU、BIU66ARM指令系统特点指令系统特点1。RISC指令规则,适合流水设计指令规则,适合流水设计2。寻址方式灵活简单,执行效率高。寻址方式灵活简单,执行效率高3。所有指令的条件执行实现最快速的代码执行。所有指令的条件执行实现

46、最快速的代码执行4。支持。支持Thumb(16 位)位)/ARM(32 位)双指令集,位)双指令集,能很好的兼容能很好的兼容8 位位/16 位器件位器件x86指令系统特点指令系统特点1。为保持兼容性采用变长的、高度不规则的。为保持兼容性采用变长的、高度不规则的CISC指令集。指令集。2。是基于专用寄存器组的二地址存储器。是基于专用寄存器组的二地址存储器-寄存寄存器器(M-R)机:对于二元操作,一个操作数总机:对于二元操作,一个操作数总是指定在寄存器中,另一个操作数可以从是指定在寄存器中,另一个操作数可以从存储器或寄存器中读取。存储器或寄存器中读取。片上多核处理器片上多核处理器(Chip of

47、Multi-core Processor) 易易扩展展 设计可复可复用用 低功耗低功耗 容忍容忍线延延迟69流处理器流处理器(Stream Processor)计算和数据分离算和数据分离重新重新组织流水流水线型的型的计算算链 硬硬连线流流处理器和可理器和可编程流程流处理器理器源结点源结点计算核心计算核心输出输出7/31/202470/ 32存储处理器存储处理器 (Processor In Memory) DRAM和和计算算逻辑集成在同集成在同一芯片内一芯片内 提供高效提供高效率的机制率的机制来来协调计算和通信算和通信71可重构计算处理器可重构计算处理器(Reconfigurable Processor) 时空域:采用空域:采用时分复用方式利用可重配置硬件分复用方式利用可重配置硬件 设计灵活,易升灵活,易升级静静态(全局)和(全局)和动态(局部,无需停止工作)(局部,无需停止工作)

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号