第四部分数据表示和指令系统教学课件

上传人:仙*** 文档编号:71424246 上传时间:2022-04-07 格式:PPT 页数:62 大小:365.50KB
收藏 版权申诉 举报 下载
第四部分数据表示和指令系统教学课件_第1页
第1页 / 共62页
第四部分数据表示和指令系统教学课件_第2页
第2页 / 共62页
第四部分数据表示和指令系统教学课件_第3页
第3页 / 共62页
资源描述:

《第四部分数据表示和指令系统教学课件》由会员分享,可在线阅读,更多相关《第四部分数据表示和指令系统教学课件(62页珍藏版)》请在装配图网上搜索。

1、第四章第四章 数据表示和指令系统数据表示和指令系统本章要点本章要点t浮点数据表示IEEE标准及应用t自定义数据表示定义、分类及优点t哈夫曼概念及在计算机中应用,操作码编码法t指令系统编码方法,指令系统设计原则t两种指令系统风格,特点(RISC、CISC)t简述RISC的主要技术4.1 引言引言(1)考虑计算机面向的应用领域,程序设计语言,编译程)考虑计算机面向的应用领域,程序设计语言,编译程序,操作系统直到硬件构成等诸多因素。序,操作系统直到硬件构成等诸多因素。(2)如何继承软件资产,保证软件向后兼容和向上兼容也)如何继承软件资产,保证软件向后兼容和向上兼容也是要加以考虑的现实问题。是要加以考

2、虑的现实问题。指令系统:指令系统:又称指令集(又称指令集(instruction set)是计算机体系结构)是计算机体系结构设计的核心,是计算机软、硬件接口设计的核心,是计算机软、硬件接口,是用机器语言汇编语言是用机器语言汇编语言编写程序的用户所能看到的计算机基本属性。编写程序的用户所能看到的计算机基本属性。411 传统计算机指令系统的设计技术传统计算机指令系统的设计技术 总之要对执行性能,软、硬件开发费用,可靠性等各种因总之要对执行性能,软、硬件开发费用,可靠性等各种因素间的矛盾,综合权衡考虑。设计一种新的指令系统,从提出素间的矛盾,综合权衡考虑。设计一种新的指令系统,从提出指令系统的编码到

3、实现这种指令系统的硬件要经过几次反复。指令系统的编码到实现这种指令系统的硬件要经过几次反复。 (1)根据计算机未来用途及通常机器指令集拟出初步指)根据计算机未来用途及通常机器指令集拟出初步指令系统设计及实现,令系统设计及实现, (2)编出这套指令系统设计的编译程序,)编出这套指令系统设计的编译程序, (3)进行模拟测试,研究这套指令操作码,寻址方式及)进行模拟测试,研究这套指令操作码,寻址方式及其他效能,其他效能, (4)进行指令系统的优化。)进行指令系统的优化。 (5)如此反复进行,要充分考虑计算机应用和对各类高)如此反复进行,要充分考虑计算机应用和对各类高级语言执行效率,并对大量算法进行测

4、试,使机器效能最高。级语言执行效率,并对大量算法进行测试,使机器效能最高。 计算机指令系统的设计技术基本过程:计算机指令系统的设计技术基本过程: 现代计算机指令系统设计必须由现代计算机指令系统设计必须由编译程序设计人员编译程序设计人员同同系系统结构设计人员统结构设计人员共同配合进行传统计算机指令系统的设计。共同配合进行传统计算机指令系统的设计。完备性:完备性:要求计算机的所有功能操作都包含在指令系统中,要求计算机的所有功能操作都包含在指令系统中,指令系统愈丰富,功能愈强,编译程序愈好写好用,运用指令系统愈丰富,功能愈强,编译程序愈好写好用,运用范围愈广。范围愈广。指令系统设计规则:指令系统设计

5、规则:规整性,均匀性:规整性,均匀性:要使相似的操作具有相同的规定,所要使相似的操作具有相同的规定,所有操作都均匀对称地在存储器和寄存器单元间进行,尽可有操作都均匀对称地在存储器和寄存器单元间进行,尽可能甚至不出现例外情况和特殊用法。能甚至不出现例外情况和特殊用法。正交性:正交性:编译程序设计人员希望数据类型、寻址方式、编译程序设计人员希望数据类型、寻址方式、操作类型都互相独立,这样便于处理,也减轻编译负担。操作类型都互相独立,这样便于处理,也减轻编译负担。可组合性对称性:可组合性对称性:指令系统对所有的寻址方式和指令系统对所有的寻址方式和所有数据类型都能适用,减化编译程序的代码生成。所有数据

6、类型都能适用,减化编译程序的代码生成。从系统结构设计人员角度出发,指令系统还应考虑到:从系统结构设计人员角度出发,指令系统还应考虑到:兼容性:兼容性:指令系统设计多次反复,注意简单周到,还应指令系统设计多次反复,注意简单周到,还应注意系列机中软件兼容性注意系列机中软件兼容性可扩性:可扩性:保留一定余量的操作码空间,为以后扩展用,保留一定余量的操作码空间,为以后扩展用,并适应工艺技术的新发展。并适应工艺技术的新发展。指令码高密度性:指令码高密度性:对于那些频度高的指令串可以进行优对于那些频度高的指令串可以进行优化,设计新指令代替,提高指令码密度,减少存储容量化,设计新指令代替,提高指令码密度,减

7、少存储容量和访问存储器次数,以提高效率。和访问存储器次数,以提高效率。4.1.2 指令系统发展的两种途径指令系统发展的两种途径CISC,RISC指令系统庞大指令系统庞大 硬件复杂、庞大硬件复杂、庞大 执行速度低执行速度低 编译程序复杂、长编译程序复杂、长 部分指令使用效率低部分指令使用效率低 PENTIUM处理器:处理器:RISC特征:特征:某些指令以硬连线来实现,并能在一个时钟某些指令以硬连线来实现,并能在一个时钟周期执行完;周期执行完;CISC特征:特征:用微代码实现,需要用微代码实现,需要2-3个时钟周期的执行时个时钟周期的执行时间,有多种寻址方式,多种指令长度,为数不多的通用寄间,有多

8、种寻址方式,多种指令长度,为数不多的通用寄存器。存器。4.2 数据类型和数据表示数据类型和数据表示 4.2.1 数据类型数据类型计算机中常用数据有三类:计算机中常用数据有三类: 用户定义的数据用户定义的数据 系统数据系统数据 指令数据指令数据数据类型:数据类型:指一组数据值的集合,还定义了可作用于这个集指一组数据值的集合,还定义了可作用于这个集合上的操作集。合上的操作集。 从系统结构看有基本数据类型,结构数据类型,抽象数据从系统结构看有基本数据类型,结构数据类型,抽象数据类型和访问指针。类型和访问指针。用户定义用户定义系统数据类型系统数据类型4.2.2 基本数据表示基本数据表示 数据表示:数据

9、表示:指在计算机中能由硬件直接辩认指在计算机中能由硬件直接辩认,指令指令系统可以直接调用的数据类型。系统可以直接调用的数据类型。 数据结构:数据结构:结构化数据的组织方式,它反应了结构化数据的组织方式,它反应了应用中各种数据元或信息元间的结构关系。它必须应用中各种数据元或信息元间的结构关系。它必须通过软件映象,变换成机器中所具有的(存储于一通过软件映象,变换成机器中所具有的(存储于一维存储器内)各种数据表示来实现的。维存储器内)各种数据表示来实现的。数据表示实质上是一个软、硬件取舍的问题。数据表示实质上是一个软、硬件取舍的问题。4.2.4 二进制定点,浮点,二进制定点,浮点, 数据表示数据表示

10、IEEE754 浮点数据表示标准:浮点数据表示标准:1823S符号位符号位EM指数指数尾数尾数32位单精度形式位单精度形式11152S 符号位符号位EM指数指数尾数尾数64位双精度形式位双精度形式32位浮点单精度数据形式:位浮点单精度数据形式:,无穷大为,则且为非数值,则,且当,规格化数为,数值当,非规格化数(为,则数值且当为,则数值且当)()(12) 1(2102550M255E). 1 (2540). 000000127126sESESNMENMNEMNMENME4.2.5 自定义数据表示自定义数据表示 为了缩短机器语言同高级语言对数据属性的为了缩短机器语言同高级语言对数据属性的说明之间的

11、语义差距。说明之间的语义差距。目的:目的:自定义数据表示:自定义数据表示:由数据本身来表明数据类型,使由数据本身来表明数据类型,使计算机内的数据具有自定义能力。计算机内的数据具有自定义能力。分类:分类:v 带标志符的数据表示带标志符的数据表示v 数据描述符数据描述符 带标志符的数据表示:带标志符的数据表示:描述简单数据,标志符是和每个数描述简单数据,标志符是和每个数据值相连,存在同一存贮单元内。据值相连,存在同一存贮单元内。数据标志位数据标志位数据值数据值优点:优点:(1)简化了指令系统。简化了指令系统。 (2 2)容易检出程序编制中的错误。)容易检出程序编制中的错误。(3 3)简化了编译程序

12、。)简化了编译程序。(4 4)支持数据库系统支持数据库系统 。 (5)简化程序设计)简化程序设计。 (6 6)便于软件测试。)便于软件测试。 数据描述符:数据描述符:用来描述复杂和多维数据,如向量、数组、记用来描述复杂和多维数据,如向量、数组、记录等,描述符专用来描述所要访问数据的特性,它和数据字录等,描述符专用来描述所要访问数据的特性,它和数据字分开存储,机器经描述符形成访问每个元素的地址及其他信分开存储,机器经描述符形成访问每个元素的地址及其他信息,增加一级以上寻址,(描述符或数据字)而数据字本身息,增加一级以上寻址,(描述符或数据字)而数据字本身又是带标志符数据表示。又是带标志符数据表示

13、。与带标志符数据表示不同之处:与带标志符数据表示不同之处: 标志符要与每个数据相连,两者合存在一个存储器单元标志符要与每个数据相连,两者合存在一个存储器单元中;而描述符则和数据分开放;中;而描述符则和数据分开放;要访问数据集中的元素时,必须先访问描述符,这就至少要访问数据集中的元素时,必须先访问描述符,这就至少要增加一级寻址;要增加一级寻址;描述符可看成是程序一部分,而不是数据一部分,因为它描述符可看成是程序一部分,而不是数据一部分,因为它是专门来描述要访问的数据的特性。是专门来描述要访问的数据的特性。 现以现以B6500,7500为例进行自定义数据表示的说明为例进行自定义数据表示的说明数据数

14、据000数值数值描述符描述符101P CISRTD长度长度地址地址311112022011数据描述符数据描述符0:单精度数据:单精度数据1:双精度数据:双精度数据1:不连续数据:不连续数据0:连续数据:连续数据1:数据集中的一个:数据集中的一个0:数据集的全体:数据集的全体1:在主存中:在主存中0:不在主存中:不在主存中只准读出的数据只准读出的数据00:数据描述符:数据描述符写其他描述符写其他描述符1013101410141014000000000000000000000000000000000000用数据描述符描述一个用数据描述符描述一个3*4二维阵列:二维阵列:三元素向量三元素向量四元素向

15、量四元素向量块内的元块内的元素个数素个数四元素向量四元素向量四元素向量四元素向量描述符读取操作数过程描述符读取操作数过程操作码操作码X Y101101101地址形成逻辑地址形成逻辑000000101指令指令寄存器寄存器描述符描述符描述符描述符主存储器主存储器(数据)(数据)(数据)(数据) CDCSTAR-100计算机对每一个计算机对每一个 向量数据用基地址,长向量数据用基地址,长度和位移量三个参量表示,其中对于指令,操作向量的起始度和位移量三个参量表示,其中对于指令,操作向量的起始地址地址=基址基址+位移量,操作向量有效长度位移量,操作向量有效长度=向量长度向量长度-位移量位移量向量加向量加

16、XAYBZC 其中其中X,Y,Z各区段表示寄存器号,分别表示源向量各区段表示寄存器号,分别表示源向量A,B和结果向量的位移量,而和结果向量的位移量,而A,B,C各区段分别存放源向量各区段分别存放源向量A,B和结果向量和结果向量C的基地址及长度。的基地址及长度。4.2.6 向量数据表示向量数据表示向量:向量:指具有指具有n个数据的数组。个数据的数组。特点:特点:各个数据称为数组的元素,而每个数据应具有相同的各个数据称为数组的元素,而每个数据应具有相同的数据类型,数据类型,(如实数或逻辑数如实数或逻辑数);相同的数据表示(如字长、字;相同的数据表示(如字长、字的格式相同);进行相同的操作;而各数据

17、之间是独立无关的格式相同);进行相同的操作;而各数据之间是独立无关的,这样的一个数组称为向量。的,这样的一个数组称为向量。 基地址基地址向量长度向量长度向量数据表示的参数向量数据表示的参数起始地址起始地址(基地址十位移量)(基地址十位移量)向量有效长度向量有效长度位移量位移量.A0 A1 A2 A3 A4A5 A6A7A01 0 0 1 1 0 0 1A3A2(0)A1(0)A4A7A6(0)A5(0)A0A7A4A301234567稀疏向量稀疏向量压缩向量压缩向量排序向排序向量量 稀疏向量的压缩表示稀疏向量的压缩表示4.3 指令系统设计原理指令系统设计原理指令系统中指令编码方法:指令系统中指

18、令编码方法:1. 正交法正交法 指令中的每个分段(包括操作码、操作数地址等)指令中的每个分段(包括操作码、操作数地址等) 相互独立,相互独立,操作数地址的编码同操作码无关,反之亦然操作数地址的编码同操作码无关,反之亦然 。优点:优点:对流水机特别适用,微程序控制数量减少。对流水机特别适用,微程序控制数量减少。2. 整体法整体法 指令中各个分段在译码时相互有关,操作码同操作数指令中各个分段在译码时相互有关,操作码同操作数地址的分界线并不清楚。地址的分界线并不清楚。优点:优点:可以把使用频度高的操作码同操作数地址码组合起来,可以把使用频度高的操作码同操作数地址码组合起来,加以缩短优化,而使用频度低

19、的可以较长些加以缩短优化,而使用频度低的可以较长些,这样可以节省存贮这样可以节省存贮容量。容量。缺点:缺点:在用微程序控制时,微程序数量较多,需要有较大的微在用微程序控制时,微程序数量较多,需要有较大的微程序控制存贮器。程序控制存贮器。3. 混合法混合法 这种方法把上两种方法的优点结合起来。这种方法把上两种方法的优点结合起来。(二)指令系统及结构的分类(二)指令系统及结构的分类指令系统也可以按下面几个准则分类:指令系统也可以按下面几个准则分类:1. 每条指令中显式指明的操作数个数每条指令中显式指明的操作数个数2. CPU中存放操作数部件的类型中存放操作数部件的类型3. 数据类型和数据表示数据类

20、型和数据表示4. ALU指令的操作数个数和位置指令的操作数个数和位置基本思想:基本思想:计算机系统中的一些基本操作(包括操作系统计算机系统中的一些基本操作(包括操作系统和高级语言的操作)应由硬件实现还是由软件实现;某些和高级语言的操作)应由硬件实现还是由软件实现;某些复杂操作是由一条指令实现还是由一串指令实现。复杂操作是由一条指令实现还是由一串指令实现。 堆栈机堆栈机优点:优点:面向堆栈,面向堆栈,指令短,表达式求值简单;可以有较高的指令短,表达式求值简单;可以有较高的 编码密度。编码密度。缺点:缺点:不能随机访问和编译技术不匹配,很难高速执行:这不能随机访问和编译技术不匹配,很难高速执行:这

21、 类机器的例子类机器的例子Burroughs 5500Burroughs 5500,HP3000HP3000。主要依据:在主要依据:在CPU中以何种存储方式来存放操作数。中以何种存储方式来存放操作数。指令系统集结构的分类指令系统集结构的分类分类:分类:v 堆栈型堆栈型v累加器型累加器型v通用寄存器型通用寄存器型R-RR-MM-M累加器为基础的指令系统累加器为基础的指令系统寄存器为基础的指令系统(寄存器为基础的指令系统(GPR机):机):取取/存寄存器存寄存器或存储器或存储器寄存器或存寄存器或存储器储器2/3IBM360/370DEC VAX-11RISC机机寄存器集寄存器集取取/存累加器存累加

22、器累加器累加器1PDP-8MC 6800累加器累加器进栈或退栈进栈或退栈堆栈堆栈0B5500/6500HP3000Transputer堆栈堆栈访问显式操访问显式操作数的过程作数的过程结果存放目结果存放目的地的地每条每条ALU指令需指指令需指明的显式明的显式操作数操作数机器型号机器型号CPU中存储部中存储部件形式件形式三种不同的指令系统集结构三种不同的指令系统集结构PDP-11,IBM360/370的的SS型指型指令令2M-M2VAX-11系列机系列机3M-M3PDP-10,MC 68000,IBM 360/370中中RX型指令型指令IBM360/370中的中的RS型指令型指令23R-M1IBM

23、 RT-PC,IBM360/370中中RR型指令型指令SPARC,MIPS,HP PA 等等RISC机机23R-R0计算机实例计算机实例ALU指令中指令中可能使用的可能使用的操作数个数操作数个数结构类型结构类型ALU指令指令访存操作数访存操作数个数个数典型计算机中典型计算机中ALU指令所使用的访存操作数的个数指令所使用的访存操作数的个数4.3.2 寻址技术寻址技术一一.访问方式访问方式v 按地址访问按地址访问: 串行顺序访问,按指定串行顺序访问,按指定 地址读取代码(地址地址读取代码(地址可是通用寄存器,专用寄存器,内存)可是通用寄存器,专用寄存器,内存) 地址概念:逻辑地址,物理地址地址概念

24、:逻辑地址,物理地址 地址编址方式采用三种:统一编址,局部编址,隐含编地址编址方式采用三种:统一编址,局部编址,隐含编址址 具体可按面向对象和寻址方式来区分具体可按面向对象和寻址方式来区分v 按内容访问:按内容访问: 给出欲访问单元内容,其主要特点是以并给出欲访问单元内容,其主要特点是以并行方式查找所需信息内容。(联想存储器)行方式查找所需信息内容。(联想存储器)寻址技术:寻址技术:指的是指令按什么方式寻找(或访问)到所需的操指的是指令按什么方式寻找(或访问)到所需的操作数或信息。它影响主存规模速度及存取方式。寻址方式对应作数或信息。它影响主存规模速度及存取方式。寻址方式对应用程序员是透明的。

25、用程序员是透明的。 二二 程序定位方式程序定位方式4.3.3 指令系统功能设计指令系统功能设计4.3.4 指令格式的优化指令格式的优化哈夫曼压缩的基本思想:哈夫曼压缩的基本思想: 当各种事件发生的概率不均时,采用优化技术对发生概率当各种事件发生的概率不均时,采用优化技术对发生概率最高的事件用最短的位数(时间)来表示(处理),而对出现最高的事件用最短的位数(时间)来表示(处理),而对出现概率较低的,用较长的位数(时间)来表示(处理),就会导概率较低的,用较长的位数(时间)来表示(处理),就会导致表示(处理)的平均位数(时间)的缩短。致表示(处理)的平均位数(时间)的缩短。 指令的优化通过操作码优

26、化和地址码优化进行。指令的优化通过操作码优化和地址码优化进行。指令格式优化的目的:指令格式优化的目的:如何用最短的位数表示指令的操作信息和地址信息,用最如何用最短的位数表示指令的操作信息和地址信息,用最短的时间处理频度高的指令,使二者之间有最佳配合以减短的时间处理频度高的指令,使二者之间有最佳配合以减少指令字中冗余信息以及用最少信息位来表示所需的操作少指令字中冗余信息以及用最少信息位来表示所需的操作信息和地址信息。信息和地址信息。用哈夫曼压缩概念进行编码的步骤:用哈夫曼压缩概念进行编码的步骤:(1) 将要编码的字符按出现频率的次序排列,频率相等的将要编码的字符按出现频率的次序排列,频率相等的符

27、号可任意排列;符号可任意排列;(2) 把出现频率最小的两个符号合并,并将其频率相加,把出现频率最小的两个符号合并,并将其频率相加,按相加后的频率次序重新排序;按相加后的频率次序重新排序;(3) 继续过程(继续过程(2),直至只剩下两个频率,此后以相反过),直至只剩下两个频率,此后以相反过程进行编码;程进行编码;(4) 对最后两个频率分别指定代码对最后两个频率分别指定代码0和和1;(5) 若某一频率由两个频率相加而成,则分别指定这两个若某一频率由两个频率相加而成,则分别指定这两个频的下一个代码为频的下一个代码为0或或1;(6) 继续过程(继续过程(5),直到所有符号均已指定不同代码为止。),直到

28、所有符号均已指定不同代码为止。I10.40I20.30I30.15I40.05I50.04I60.03I70.03指令指令使用频度使用频度操作码表示的平均长度操作码表示的平均长度L= =0.40*1.32+0.30*1.74+0.15*2.74+0.05*4.32+0.04*4.64+0.03*5.06+0.03*5.06=2.17则则信息冗余量信息冗余量K=1-H/操作码的实际平均长度操作码的实际平均长度=1-2.17/3=0.28(即即28%)1.000.600.300.150.060.090.030.030.040.050.150.300.40111111000000操作码的扩展(等长扩

29、展)操作码的扩展(等长扩展)0001000011101500000001.1110151111.11111111.000000011110151111.11111111.111111111111.80 0000 001.0 111641 0001 000.1 1115121 0001 000.1 1110 0000 0010 1111 0001 0001 1110 0000 0010 111.15/15/158/64/512编码法编码法 指令格式的优化指令格式的优化 地址码表示和寻址方式采取相应优化措施,程序所需总地址码表示和寻址方式采取相应优化措施,程序所需总位数才得以减少。由于操作数地址是

30、随机的无规律可循,归位数才得以减少。由于操作数地址是随机的无规律可循,归结为指令格式的优化。结为指令格式的优化。地址码优化时应注意的问题:地址码优化时应注意的问题: (1)操作数地址码长度可在很宽的范围内变化,只要恰)操作数地址码长度可在很宽的范围内变化,只要恰当安排就可与变长操作码很好合成定长指令。这样地址码宽当安排就可与变长操作码很好合成定长指令。这样地址码宽度应随不同指令,其宽度可以变化;度应随不同指令,其宽度可以变化; (2) 通过改变指令字中的地址数和地址码的长度,以使通过改变指令字中的地址数和地址码的长度,以使单地址、双地址甚至三地址都可以在指令中使用;单地址、双地址甚至三地址都可

31、以在指令中使用; (3)设法利用空白处存放立即操作数或常数。)设法利用空白处存放立即操作数或常数。 (4)丰富多彩的寻址方式。)丰富多彩的寻址方式。VAX-11指令格式和寻址方式指令格式和寻址方式操作数描述码操作数描述码描述码描述码1可能可能带的扩充字节带的扩充字节操作数描述码操作数描述码1操作码操作码158 702到到6个可能有的附加的操作数描述码和它们的扩充字节个可能有的附加的操作数描述码和它们的扩充字节VAX-11基本指令格式基本指令格式寄存器寄存器寻址方式寻址方式寻址方式寻址方式寄存器寄存器00直接量直接量74 30750指明指明12种寻址方种寻址方式之一,但不包式之一,但不包括直接量

32、方式括直接量方式指明指明16个个寄存器寄存器6位直接量位直接量VAX-1操作数描述码格式操作数描述码格式6a. 立即方式立即方式b. 绝对方式绝对方式c. 寄存器直接方式寄存器直接方式d. 寄存器间接寻址方式寄存器间接寻址方式e. 自增寻址方式自增寻址方式f. 自减寻址方式自减寻址方式g. 变址寻址方式变址寻址方式VAX-11的主要寻址方式的主要寻址方式i.变址的位移寻址方式变址的位移寻址方式j.自增变址寻址方式自增变址寻址方式k.自减变址寻址方式自减变址寻址方式 l. 基址寻址方式基址寻址方式m. 基址变址寻址方式基址变址寻址方式h. 位移寻址方式位移寻址方式4.3.5 指令系统的执行和优化

33、指令系统的执行和优化q面向目标程序优化实现面向目标程序优化实现q面向操作系统优化实现面向操作系统优化实现q面向高级语言优化实现面向高级语言优化实现(一)(一) 指令的控制和执行指令的控制和执行计算机的控制过程:计算机的控制过程:取指令、分析指令(译码、取操作数),取指令、分析指令(译码、取操作数),执行指令,再取下一条指令的周而复始过程。执行指令,再取下一条指令的周而复始过程。程序的执行过程:程序的执行过程:顺序执行、转移(条件转移或无条件转移)顺序执行、转移(条件转移或无条件转移)和进程的调用和返回。和进程的调用和返回。 (二)指令系统的优化和改进(二)指令系统的优化和改进 由计算机系统的层

34、次结构看,指令系统应对于各层的工作由计算机系统的层次结构看,指令系统应对于各层的工作给于有力的支持,这样计算机效率才能更高。给于有力的支持,这样计算机效率才能更高。面向目标程序的优化实现来改进面向目标程序的优化实现来改进静态使用频度:静态使用频度:对程序中出现的各种指令以及指令串对程序中出现的各种指令以及指令串进行统计得出的百分比。进行统计得出的百分比。动态使用频度:动态使用频度:在目标程序执行过程中对出现的各种在目标程序执行过程中对出现的各种指令和指令串进行统计得出的百分比。指令和指令串进行统计得出的百分比。 基本思路:基本思路:对于那些频度高的常用指令,可以考虑增强对于那些频度高的常用指令

35、,可以考虑增强其功能,加快其执行速度,缩短其指令字长;而对于那其功能,加快其执行速度,缩短其指令字长;而对于那些使用频度很低的指令就可以考虑将其取消,或将其功些使用频度很低的指令就可以考虑将其取消,或将其功能合并到某些频度较高的指令中去。能合并到某些频度较高的指令中去。优化传送类指令:如成组传送指令、自增循环(优化传送类指令:如成组传送指令、自增循环(LDIR) 自减循环(自减循环(LDDR)等)等优化转移类指令:如屏蔽码(优化转移类指令:如屏蔽码(IBM370),多种转移指令等),多种转移指令等优化运算类优化运算类 指令:如多项式运算指令指令:如多项式运算指令 POLYZ80微型计算机的自增

36、循环指令LDIR长度为2个字节,时钟周期传送一个数椐为5个或4个周期(当BC计数值为0时)因此,当传送100个数时,需499个周期。如没有该条指令,则需如下指令串 : 字节 周期LOOP: LD A (HL); 1 2 LD (DE) A; 1 2 INC HL ; 1 1 INC DE ; 1 1 DEC BC; 1 1 JP NZ LOOP 2 2该指令串统计完成当传送100个数时,需899个周期。 POLY指令完成 P(X)=C(0)+X*(C(1)+X*(C(2)+X*C(d).)运算OP arg degree tbladdr优化运算类指令:优化运算类指令:OP 操作码 arg 变量值

37、 degree 多项式的阶tbladdr 系数表地址目标:目标:尽可能缩短高级语言和机器语言的语义差距,以利于尽可能缩短高级语言和机器语言的语义差距,以利于支持高级语言编译系统,缩短编译程序的长度和编译所需支持高级语言编译系统,缩短编译程序的长度和编译所需的时间。的时间。面向高级语言和编译程序改进指令系统面向高级语言和编译程序改进指令系统v对使用频度高语句采取增加相应功能指令提高编译速度对使用频度高语句采取增加相应功能指令提高编译速度和执行速度和执行速度v增强系统结构的规整性,正交性,可组合性,统一性和增强系统结构的规整性,正交性,可组合性,统一性和全面性等全面性等v直接执行系统结构(直接执行

38、系统结构(DEADEA)能直接执行高级语言源码,不)能直接执行高级语言源码,不需要经过中间翻译。需要经过中间翻译。 设置特权指令支持操作系统可靠运行设置特权指令支持操作系统可靠运行 增加支持工作状态和增加支持工作状态和访问方式访问方式转换指令,如转换指令,如VAX-11VAX-11操作系统操作系统分四层,每层有不同访问特权,利用分四层,每层有不同访问特权,利用CHMXCHMX指令增加访问权和指令增加访问权和 RETRET返回指令改变访问方式,减少转换开销:返回指令改变访问方式,减少转换开销:内核方式(内核方式(K K)、)、执行方式(执行方式(E E)、管理方式()、管理方式(S S) 、用户

39、方式(、用户方式(V V) 支持进程转换指令如支持进程转换指令如VAX-11VAX-11设保存进程关联指令设保存进程关联指令 SVPCTX SVPCTX ,恢复进程关联指令恢复进程关联指令LDPCTXLDPCTX 设置用来支持进程同步和互斥的指令设置用来支持进程同步和互斥的指令 设置中断系统指令设置中断系统指令指令对操作系统的支持指令对操作系统的支持目标:目标:如何缩短操作系统与计算机系统结构之间的语义差如何缩短操作系统与计算机系统结构之间的语义差距,以利于进一步减少运行操作系统所需要的辅助操作时距,以利于进一步减少运行操作系统所需要的辅助操作时间和节省操作系统软件所占用的存储空间。间和节省操

40、作系统软件所占用的存储空间。 4.4 RISC计算机计算机(二)(二)RISC结构设计原则结构设计原则(1)选择)选择使用频度高使用频度高的指令,增加少量支持操作系统和高级语的指令,增加少量支持操作系统和高级语言实现及其他功能的有用指令,言实现及其他功能的有用指令,寻址方式寻址方式也取最基本的一、两也取最基本的一、两种,使指令种,使指令条数少条数少,格式简单格式简单,并具有,并具有相同长度相同长度。(2)提高处理速度,采用)提高处理速度,采用流水技术流水技术使每一条指令都在一个机器使每一条指令都在一个机器周期内完成。大部分指令操作在周期内完成。大部分指令操作在寄存器寄存器之间进行,采用硬件逻之

41、间进行,采用硬件逻辑控制实现操作,只有少量使用微程序实现。辑控制实现操作,只有少量使用微程序实现。(3)简化编译简化编译工作,一个周期完成一条指令操作,编译器工作,一个周期完成一条指令操作,编译器 易于调整指令流。易于调整指令流。美国卡内基梅隆(美国卡内基梅隆(Canegic Mellon)大学定义)大学定义(1) 指令系统中的大多数指令只需执行简单和基本功能,其执指令系统中的大多数指令只需执行简单和基本功能,其执行过程是在单个机器周期期内完成。行过程是在单个机器周期期内完成。(2) 只保留只保留LOAD指令和指令和STORE指令。面向运算的操作都经过指令。面向运算的操作都经过LOAD指令和指

42、令和STORE指令,从内存储器预先放在寄存器堆内,指令,从内存储器预先放在寄存器堆内,加快执行速度。加快执行速度。(3) 芯片逻辑不采用或少采用微码技术,而硬布线逻辑,减少芯片逻辑不采用或少采用微码技术,而硬布线逻辑,减少指令解释的开销。指令解释的开销。(4) 减少指令数和寻址方式,使控制部件简化,加快执行速度。减少指令数和寻址方式,使控制部件简化,加快执行速度。(5) 指令格式固定,指令译码简化。指令格式固定,指令译码简化。(6) 编译开销很大,应尽可能优化。编译开销很大,应尽可能优化。(三)(三)RISC主要特征主要特征(四)(四) RISC的的CPI讨论讨论(五)(五) RISC体系结构

43、体系结构(一)(一)RISC的体系结构的体系结构(二二) 指令系统指令系统4.4.3 RISC的主要技术的主要技术 (一)流水线结构和指令调度(一)流水线结构和指令调度 RISC主要特点之一是充分提高流水线效率主要特点之一是充分提高流水线效率 流水线执行和相关性流水线执行和相关性 IF ID EX WR IF ID EX WR IF ID EX WR IF ID 气泡气泡 EX WRIF冲刷冲刷IF 取指令取指令 ID-指令译码指令译码 EX-执行指令执行指令 WR-写回结果写回结果 nn+1n+2n+3n+4(二)寄存器窗口(二)寄存器窗口 芯片上有大量通用寄存器,在执行程序时可以存放芯片上

44、有大量通用寄存器,在执行程序时可以存放更多的操作数或公用参数,采用寄存器窗口技术还可以更多的操作数或公用参数,采用寄存器窗口技术还可以更好支持过程的调用和返回,提高机器工作效率。更好支持过程的调用和返回,提高机器工作效率。寄存器窗口技术:寄存器窗口技术:就是把整个寄存器组分成很多小组,每就是把整个寄存器组分成很多小组,每个过程分配一个寄存器小组,当发生过程调用时,自动地个过程分配一个寄存器小组,当发生过程调用时,自动地把把CPUCPU转换到不同的寄存器小组使用,不再需要作保存和恢转换到不同的寄存器小组使用,不再需要作保存和恢复的操作,这个寄存器小组就叫做寄存器窗口,相邻的寄复的操作,这个寄存器

45、小组就叫做寄存器窗口,相邻的寄存器窗口间有部分是重叠的,便于调用参数传送。存器窗口间有部分是重叠的,便于调用参数传送。RISCRISC有八个寄存器窗口有八个寄存器窗口,代表八个过程,重叠窗口之间构,代表八个过程,重叠窗口之间构成类似环形缓冲器,窗口之间转换时通过改变硬件指针内成类似环形缓冲器,窗口之间转换时通过改变硬件指针内容实现的,当超过八个过程调用时,将一个窗口内容传送容实现的,当超过八个过程调用时,将一个窗口内容传送到内存,以腾出一个窗口,返回时,再一个个返回。到内存,以腾出一个窗口,返回时,再一个个返回。 参数参数A137132 本地本地A131122 参数参数A/参数参数B12111

46、6 本地本地B115106 参数参数B/参数参数C105100 本地本地C9990 暂存暂存C8984. . 全局全局90R9AR0AR31AR26AR25AR16AR15AR10AR31BR26BR25BR16BR15BR10BR31CR26CR25CR16CR15CR10CR9BR0BR9CR0C过程过程A过程过程B过程过程CRISCII的寄存器窗口的寄存器窗口高区高区本区本区低区低区 RISC机中所采用的编译技术突出了两点:一是如何最机中所采用的编译技术突出了两点:一是如何最佳分配寄存器堆中的寄存器,从而减少对存储器的佳分配寄存器堆中的寄存器,从而减少对存储器的 访问;访问;二是设法对程

47、序中的指令序列在保持原来语义二是设法对程序中的指令序列在保持原来语义 基础上进行基础上进行重新排序和调度。重新排序和调度。(三)(三) 优化编译技术优化编译技术优点:优点:v RISC指令系统条数少,简单对称,这减轻了编译程序的指令系统条数少,简单对称,这减轻了编译程序的负担负担.;v RISC寻址方式简单,只有寻址方式简单,只有LOAD和和STORE指令访问存指令访问存储器。其它操作均在通用寄存器中进行,这简化了寻址方储器。其它操作均在通用寄存器中进行,这简化了寻址方式和访存操作式和访存操作 ;v 大多数指令在一个周期内完成,为优化编译器进行调整大多数指令在一个周期内完成,为优化编译器进行调

48、整指令流序列,减少相关,提高并行度带来了方便;指令流序列,减少相关,提高并行度带来了方便; RISC对优化编译器带来的困难:对优化编译器带来的困难:4.4.4 RISC机指令系统示例机指令系统示例(一)(一) 加州大学的加州大学的RISCII机机1 .指令系统指令系统指令数指令数39条,其中条,其中ALU指令指令12条,条, LOAD/STORE指令指令16条,控制转移指令条,控制转移指令6条,辅助指令条,辅助指令5条。条。指令格式两种,短立即数格式和长立即数格式指令格式两种,短立即数格式和长立即数格式主要两种访存寻址方式,变址型和主要两种访存寻址方式,变址型和PC相对型相对型2 采用优化延迟

49、转移技术采用优化延迟转移技术3 采用多寄存器和窗口重叠技术采用多寄存器和窗口重叠技术流水方式采用三级:取指和译码,读数和执行,写回。流水方式采用三级:取指和译码,读数和执行,写回。采用优化延迟转移,相关通路技术处理相关。采用优化延迟转移,相关通路技术处理相关。(二)(二) 斯坦福大学的斯坦福大学的MIPS和和MIPS R3000机机1 . 指令系统指令系统指令数指令数91 条,其中条,其中ALU指令指令32条,条, LOAD/STORE指令指令12条,条,控制转移指令控制转移指令2条,浮点指令条,浮点指令17条,协处理指令条,协处理指令16条。条。指令格式指令格式三种,立即数型,转移型和寄存器

50、型。字长为三种,立即数型,转移型和寄存器型。字长为32位位寻址方式寻址方式有基址加有基址加16位位移量的访存,立即数寻址和寄存器寻位位移量的访存,立即数寻址和寄存器寻址址2 . 采用优化编译器进行指令序列的重新安排技术采用优化编译器进行指令序列的重新安排技术3 . 有有32个寄存器但不采用窗口重叠技术,而采用延迟优化技术个寄存器但不采用窗口重叠技术,而采用延迟优化技术4 . 采用采用“比较转移比较转移”指令,进行优化编译。指令,进行优化编译。流水方式分为取指,译码及读数,执行,访存,写回共流水方式分为取指,译码及读数,执行,访存,写回共5级。级。 分开指令数据分开指令数据CACHE的结构的结构

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!