计算机系统结构—第二章(指令系统) 课件.ppt

上传人(卖家):三亚风情 文档编号:3487314 上传时间:2022-09-06 格式:PPT 页数:126 大小:2.88MB
下载 相关 举报
计算机系统结构—第二章(指令系统) 课件.ppt_第1页
第1页 / 共126页
计算机系统结构—第二章(指令系统) 课件.ppt_第2页
第2页 / 共126页
计算机系统结构—第二章(指令系统) 课件.ppt_第3页
第3页 / 共126页
计算机系统结构—第二章(指令系统) 课件.ppt_第4页
第4页 / 共126页
计算机系统结构—第二章(指令系统) 课件.ppt_第5页
第5页 / 共126页
点击查看更多>>
资源描述

1、Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系w 指令系统的分类指令系统的分类w 数据表示数据表示w 寻址技术寻址技术w 指令格式的优化设计指令格式的优化设计w 指令系统的功能设计指令系统的功能设计w 综合实例:综合实例:MIPS指令集指令集Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容根据根据CPU中操作数的存储方法分类(主要分中操作数的存储方法分类(主要分类准则)类准则)根据指令中显式操作数个数分类根据指令中显式操作数个数分类根据操作数能否放在存储器中分类根据操作数能否放在存储器中分类堆

2、栈型指令系统堆栈型指令系统累加器型指令系统累加器型指令系统寄存器型指令系统寄存器型指令系统6 之 1以以C=A+B为例说明不同指令系统的特点为例说明不同指令系统的特点6 之 2 灰色块:灰色块:操作数 黑色块:黑色块:结果 TOSTOS:栈顶Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系指令长度短,代码密度高,占用存储空间小。指令长度短,代码密度高,占用存储空间小。代码效率低,执行效率不高。代码效率低,执行效率不高。指令长度短,代码密度高,代码效率高。指令长度短,代码密度高,代码效率高。执行效率不高。执行效率不高。指令简单,执行效率高,对编译程序

3、支持好。指令简单,执行效率高,对编译程序支持好。指令长度长。指令长度长。本章内容现在通用寄存器型已成为主流结构6 之 3Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容 根据分类标准根据分类标准2、3可以分为:可以分为:6 之 4Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容6 之 5Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容w 针对应用需求,对指令中各属性分布进行针对应用需求,对指令中各属性分布进行分析,根据指令执行效率确定

4、指令集风格分析,根据指令执行效率确定指令集风格w 根据各种指令的各属性分布确定寄存器数根据各种指令的各属性分布确定寄存器数及操作数个数及操作数个数w 必须考虑对必须考虑对OS和编译程序的支持和编译程序的支持6 之 6Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容w 基本概念基本概念w 基本数据表示基本数据表示w 高级数据表示高级数据表示w 数据表示设计数据表示设计Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容数据表示 计算机系统中可以使用和处理的各种数据的类型,主计算机系统中可以使用

5、和处理的各种数据的类型,主要有:整数、布尔数、字符、文件、图、表、树、阵列、要有:整数、布尔数、字符、文件、图、表、树、阵列、队列、链表、栈、向量、串等。队列、链表、栈、向量、串等。能由硬件直接识别和引用(即有相应运算指令和有硬能由硬件直接识别和引用(即有相应运算指令和有硬件支持)的数据类型,例如:定点数据表示、逻辑数据表件支持)的数据类型,例如:定点数据表示、逻辑数据表示、浮点数据表示等。示、浮点数据表示等。带有结构的数据元素的集合,例如:串、队列、栈、带有结构的数据元素的集合,例如:串、队列、栈、向量、阵列、链表、树、图等。向量、阵列、链表、树、图等。3 之 1Computer Archi

6、tectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容数据表示 3 之 2w 数据表示和数据结构都是数据类型的子集;数据表示和数据结构都是数据类型的子集;w 数据表示是数据类型中最常用、也是相对较简数据表示是数据类型中最常用、也是相对较简单,用硬件实现相对比较容易的;单,用硬件实现相对比较容易的;w 数据结构由软件进行实现,转换成数据表示。数据结构由软件进行实现,转换成数据表示。确定哪些数据类型用数据表示实确定哪些数据类型用数据表示实确定哪些数据类型用数据表示实现,是软件与硬件的取舍问题。现,是软件与硬件的取舍问题。现,是软件与硬件的取舍问题。Computer Archit

7、ectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容数据表示 3 之 3 数据类型是指令系统的核心内容,系统数据类型是指令系统的核心内容,系统结构设计者在设计时应首先确定:结构设计者在设计时应首先确定:Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容数据表示 定点数、浮点数、十进制数、逻辑数、字符等。定点数、浮点数、十进制数、逻辑数、字符等。支持数据结构,提高系统效率和性能支持数据结构,提高系统效率和性能/价格。价格。w 根据应用需求,设计各种参数、指标。根据应用需求,设计各种参数、指标。浮点数数据表示的设计。浮点数数据

8、表示的设计。2 之 1Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系w 浮点数格式浮点数格式w 浮点数尾数基值选择浮点数尾数基值选择w 浮点数尾数下溢处理浮点数尾数下溢处理w 浮点数格式设计浮点数格式设计本章内容数据表示 2 之 2Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系两个符号:两个符号::尾数符号尾数符号:阶码符号阶码符号本章内容数据表示 浮点数数据表示1位位1位位q位位p位位mfefem两个数值:两个数值::尾数的值尾数的值 :阶码的值阶码的值两个基:两个基::尾数的基尾数的基:阶码的基

9、阶码的基两个字长两个字长::尾数的长度尾数的长度:阶码的长度阶码的长度Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系 随随rm加大,范围加大。加大,范围加大。随随rm加大,个数增多。加大,个数增多。随随rm加大,精度变低。加大,精度变低。随随rm加大,损失变小。加大,损失变小。随随rm加大,速度变快。加大,速度变快。rm的选择应根据应用需的选择应根据应用需要来综合平衡:要来综合平衡:m 尾数字长较长可以弥补尾数字长较长可以弥补精度的损失。精度的损失。m 提高的精度可以弥补尾提高的精度可以弥补尾数字长较短的不足。数字长较短的不足。本章内容数据表示

10、浮点数数据表示Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系 在浮点数操作(相加、相乘、在浮点数操作(相加、相乘、右移等)过程中产生的下溢会造右移等)过程中产生的下溢会造成精度的损失。成精度的损失。设计设计,有多种方,有多种方法,不同的方法有不同的优点和法,不同的方法有不同的优点和缺点,其出发点和应用场合也不缺点,其出发点和应用场合也不一样,应根据需要进行选择。一样,应根据需要进行选择。w 截断法截断法 w 舍入法舍入法 w 恒置恒置“1”法法 w 查表舍入法查表舍入法 本章内容数据表示 浮点数数据表示Computer ArchitectureV

11、3同济大学.电子与信息工程学院.计算机科学与工程系本章内容数据表示 浮点数数据表示 码制可以采用原码或补码,数制可以采用整数码制可以采用原码或补码,数制可以采用整数或小数,基可以采用二进制、四进制、八进制、或小数,基可以采用二进制、四进制、八进制、十进制或十六进制。多数机器采用十进制或十六进制。多数机器采用表表示,尾数的基示,尾数的基rm。码制可以采用移码或补码,数制采用整数,基码制可以采用移码或补码,数制采用整数,基re=2。一般机器都采用一般机器都采用表示。表示。2 之 1Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容数据表示 浮点数

12、数据表示 在表数范围和表数精度给定的情况下,如何确定最短在表数范围和表数精度给定的情况下,如何确定最短的尾数字长的尾数字长p和阶码字长和阶码字长q。w 阶码长度阶码长度q 影响表数范围。影响表数范围。尾数长度尾数长度p 影响表数精度。影响表数精度。尾数基值尾数基值rm 影响表数范围、精度及数在数轴上分布离散程度。影响表数范围、精度及数在数轴上分布离散程度。2 之 2Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容数据表示 堆栈、向量、数组(队列)、记录、自定义数堆栈、向量、数组(队列)、记录、自定义数据表示等。据表示等。支持数据结构,提高系

13、统效率和性能支持数据结构,提高系统效率和性能/价格。价格。自定义数据表示。自定义数据表示。2 之 1Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容数据表示 w 存在问题存在问题w 解决方法解决方法带标志符的数据表示法带标志符的数据表示法数据描述符表示法数据描述符表示法2 之 2Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容数据表示 自定义数据表示 在高级语言与机器语言之间存在着很大在高级语言与机器语言之间存在着很大的语义差距(例如:的语义差距(例如:),增加了编译程序的负担,能否在)

14、,增加了编译程序的负担,能否在设计机器语言时,缩短与高级语言之间的差设计机器语言时,缩短与高级语言之间的差距?距?Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容数据表示 自定义数据表示 每个数据的格式为:每个数据的格式为:n在在B5000大型机中,每个数据有一位标志符大型机中,每个数据有一位标志符n在在B6500/B7500大型机中,每个数据有三位标志大型机中,每个数据有三位标志n在在R-2巨型机中采用巨型机中采用10位标志符位标志符10位标志符位标志符功能功能数值数值陷井陷井封写封写类型类型校验校验2位位2位位1位位4位位1位位标志符标

15、志符数值数值 标志符由编译器或标志符由编译器或其它系统软件建立,对其它系统软件建立,对一般高级语言程序员和一般高级语言程序员和计算机用户透明。计算机用户透明。4 之 1Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系简化指令系统和程序简化指令系统和程序设计设计简化编译程序简化编译程序便于硬件实现一致性便于硬件实现一致性校验校验能由硬件自动完成数能由硬件自动完成数据类型的变换据类型的变换为软件调试和应用软为软件调试和应用软件开发提供支持件开发提供支持支持了数据库系统的支持了数据库系统的实现与数据类型无关实现与数据类型无关的要求的要求数据和指令的长度可

16、数据和指令的长度可能不一致能不一致指令执行速度降低,指令执行速度降低,程序设计时间、编译程序设计时间、编译时间和调试时间缩短时间和调试时间缩短硬件复杂度增加。硬件复杂度增加。本章内容数据表示 自定义数据表示4 之 2Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系 存储空间将会增加。存储空间将会增加。w 合理地设计和使用会不增合理地设计和使用会不增反降。反降。w 数据字增加,指令字数据字增加,指令字缩小缩小编译程序缩短,目的编译程序缩短,目的程序缩短程序缩短本章内容数据表示 自定义数据表示数据字长数据字长加长加长数据数据指令指令指指令令字字长长缩缩

17、短短采用标志符采用标志符的指令字长的指令字长标志符长度标志符长度不采不采用标用标志符志符的指的指令和令和数据数据字长字长采用标志符的数据长度采用标志符的数据长度4 之 3Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系假设假设X处理机的数据不处理机的数据不带标志符,其指令字长和数带标志符,其指令字长和数据字长均为据字长均为32位;位;Y处理机处理机的数据带标志符,数据字长的数据带标志符,数据字长增加至增加至35位,其中位,其中3位是标位是标志符,其指令字长由志符,其指令字长由32位减位减少至少至30位。并假设一条指令位。并假设一条指令平均访问两个操

18、作数,每个平均访问两个操作数,每个操作数平均被访问操作数平均被访问R次。分次。分别计算一个有别计算一个有I条指令的程条指令的程序在这两种不同类型的处理序在这两种不同类型的处理机中所占用的存储空间。机中所占用的存储空间。程序在程序在X中的存储空间:中的存储空间:程序在程序在Y中的存储空间:中的存储空间:二者的比值为:二者的比值为:当当R3时有时有 BY/BX 数据表示 自定义数据表示RIIBY35230321635153223235230RRRIIRIIBBXYRIIBX322324 之 4Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容数据

19、表示 自定义数据表示w 对于许多连续存放的同属性数据,例如:向对于许多连续存放的同属性数据,例如:向量、矩阵、多维数组等,可以采用一个数据描述量、矩阵、多维数组等,可以采用一个数据描述符作用于这样的一组数据,而没有必要让每个数符作用于这样的一组数据,而没有必要让每个数据都带标志符。据都带标志符。以以Burroughs公司生产的公司生产的机中采用的机中采用的数据描述符表示方法进行介绍。数据描述符表示方法进行介绍。5 之 1Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容数据表示 自定义数据表示101数据块起始地址数据块起始地址标志位标志位数据

20、块长度数据块长度000数值数值5 之 2Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容数据表示 自定义数据表示5 之 3101000000101操作码操作码xy指令指令主存储器主存储器101101地址形地址形成逻辑成逻辑寄存器寄存器描述符描述符(数据)(数据)(数据)(数据)描述符描述符Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容数据表示 自定义数据表示101标志标志3101标志标志4101标志标志4101标志标志4000a11000a12000a13000a14000a21000

21、a22000a23000a24000a31000a32000a33000a34OPCXY5 之 4Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容数据表示 自定义数据表示w 整块数据可一次性操作整块数据可一次性操作简化编译中的代码生成简化编译中的代码生成 标志符是和每个数据相连,合存于一个存储标志符是和每个数据相连,合存于一个存储单元中,单元中,;描述符是;描述符是和数据分开存放的,和数据分开存放的,。5 之 5Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容数据表示 确定哪些数据类型用

22、数据表示来实现的确定哪些数据类型用数据表示来实现的原则主要有:原则主要有:w 原则一原则一w 原则二原则二Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容数据表示数据表示设计 主存和处理机间所需传送的消息量有否减少主存和处理机间所需传送的消息量有否减少高速运算部件是否节省了时间高速运算部件是否节省了时间是否节省了大量的辅助操作(由硬件完成)是否节省了大量的辅助操作(由硬件完成)是否节省了编译所需要的时间是否节省了编译所需要的时间 向量数据表示的引入(例如:两个向量数据表示的引入(例如:两个200200的定点数的定点数矩阵相加)。矩阵相加)。

23、Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容数据表示 数据表示设计 尽管堆栈操作速度很快,但矩阵运算效率却降低了。尽管堆栈操作速度很快,但矩阵运算效率却降低了。还需要解决通用性问题、如何高效地实现不同的数据结还需要解决通用性问题、如何高效地实现不同的数据结构、如何确定阵列型数据表示的规模等。构、如何确定阵列型数据表示的规模等。堆栈、向量、链表等结构的实现低效。堆栈、向量、链表等结构的实现低效。Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系 寻址技术就是寻找操作寻址技术就是寻找操作数及其他信

24、息的地址的技术,数及其他信息的地址的技术,它是软件和硬件的一个主要它是软件和硬件的一个主要分界面。分界面。寄存器、主存储器、堆寄存器、主存储器、堆栈和输入输出设备。栈和输入输出设备。分析各种寻址技术的分析各种寻址技术的优缺点,如何选择和确定优缺点,如何选择和确定寻址技术。寻址技术。本章内容w 编址方式编址方式w 寻址方式寻址方式w 定位方式定位方式Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容寻址技术w 编址单位编址单位w 零地址空间个数零地址空间个数w I/O设备的编址技术设备的编址技术w 并行存储器的编址技术并行存储器的编址技术Com

25、puter ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容寻址技术编址方式w 字编址字编址w 字节编址字节编址w 位编址位编址Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容寻址技术编址方式编址单位 。即,每个编。即,每个编址单位所包含的信息量(例:二进制位数)与访问一次设址单位所包含的信息量(例:二进制位数)与访问一次设备(指读或写)所获得的信息量是相同的。备(指读或写)所获得的信息量是相同的。实现很简单,地址信息、存储器容量等没有任何浪费。实现很简单,地址信息、存储器容量等没有任何浪费。没有对非数值

26、计算的应用(要求按字节编址,因为它没有对非数值计算的应用(要求按字节编址,因为它的基本寻址单位是字节)提供支持。的基本寻址单位是字节)提供支持。Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系 每个编址单位是字节。每个编址单位是字节。w 编址单位与信息的基本编址单位与信息的基本单位(一个字节)相一致。单位(一个字节)相一致。w 地址空间的浪费。地址空间的浪费。因为每个编址单位所包因为每个编址单位所包含的信息量(一个字节)与含的信息量(一个字节)与访问一次设备所获得的信息访问一次设备所获得的信息量(通常是一个字:字节的量(通常是一个字:字节的4倍以上

27、)不相同,从而就倍以上)不相同,从而就产生了数据如何在存储器里产生了数据如何在存储器里存放的问题。存放的问题。有三种:(有三种:(1、2、3)本章内容寻址技术编址方式编址单位Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系 不浪费存储器资源。不浪费存储器资源。本章内容寻址技术编址方式编址单位字节编址n增加读取时间(可能需增加读取时间(可能需要两个存储周期)要两个存储周期)n存储器的读写控制比较存储器的读写控制比较复杂复杂字字单单-字节字节单字单字字字半半-单字单字字字双双-半字半字字节字节存储字长:存储字长:6464位(位(8 8字节)字节)主存空

28、间主存空间Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系 浪费存储器资源。浪费存储器资源。本章内容寻址技术编址方式编址单位字节编址n读取都可以在一个存储读取都可以在一个存储周期内完成周期内完成n存储器的读写控制比较存储器的读写控制比较简单简单存储字长:存储字长:64位(位(8字节)字节)主存空间主存空间字节字节浪费浪费半字半字浪费浪费单字单字浪费浪费双字双字Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系性能是前两种方法的折中性能是前两种方法的折中 本章内容寻址技术编址方式编址单位字节编址存储字长:存

29、储字长:64位(位(8字节)字节)主存空间主存空间字节字节浪费浪费双字双字单字单字浪费浪费双字双字字节字节浪费浪费单字单字双字双字字节字节 浪费浪费半字半字xx00 xx08xx10 xx18xx20 xx28xx30地址地址Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容寻址技术编址方式编址单位 每个编址单位是位。每个编址单位是位。同字节编址,只不过地址信息的浪费更同字节编址,只不过地址信息的浪费更大。大。Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容寻址技术编址方式 通用寄存器、主

30、存储器和输入输出设备均独立编址。通用寄存器、主存储器和输入输出设备均独立编址。主存储器与输入输出设备统一编址。主存储器与输入输出设备统一编址。w 所有存储设备统一编址,最低端是通用寄存器,最高端所有存储设备统一编址,最低端是通用寄存器,最高端是输入输出设备,中间为主存储器。是输入输出设备,中间为主存储器。所有存储设备都无需编址,例如:堆栈、所有存储设备都无需编址,例如:堆栈、Cache等。等。Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容寻址技术编址方式 对对I/O设备本身进行编址,没有对寄存器进行编址。设备本身进行编址,没有对寄存器进行

31、编址。一个地址是数据寄存器,另一个是状态或控制寄存器。一个地址是数据寄存器,另一个是状态或控制寄存器。根据各种根据各种I/O设备的不同需要为它分配不同数据的地址。设备的不同需要为它分配不同数据的地址。Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容寻址技术编址方式w 高位交叉编址高位交叉编址 主要目的是用来扩大存储器容量。主要目的是用来扩大存储器容量。w 低位交叉编址低位交叉编址 主要目的是提高存储器速度。主要目的是提高存储器速度。Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容寻址技术

32、编址方式并行存储器的编址技术MBR存储体存储体0MAR0.00.00.0F.FMBR存储体存储体1MAR0.10.00.1F.FMBR存储体存储体n-1MARF.F0.0F.FF.F译码器译码器 高位高位 地址寄存器(低位)地址寄存器(低位)数据寄存器数据寄存器 地址寄存器地址寄存器 Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容寻址技术编址方式并行存储器的编址技术MBR存储体存储体0MAR0.00.0F.F0.0MBR存储体存储体1MAR0.00.1F.F0.1MBR存储体存储体n-1MAR0.0F.FF.FF.F译码器译码器 地址寄存

33、器(高位)地址寄存器(高位)(低位)(低位)数据寄存器数据寄存器 地址寄存器地址寄存器 Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容寻址技术w 常用寻址方式常用寻址方式w 寻址方式选择寻址方式选择w 寻址方式参数大小选择寻址方式参数大小选择常用寻址方式的含义和使用常用寻址方式的含义和使用Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容寻址技术寻址方式 使用使用根据指令系统风格和各根据指令系统风格和各种寻址方式的使用频率,选择高频率的寻址种寻址方式的使用频率,选择高频率的寻址方式。方式

34、。在在VAX指令集机器上运行指令集机器上运行gcc、Spice和和Tex基准程序,各种寻址方式的分布见基准程序,各种寻址方式的分布见图图。2 之 1偏移寻址和立即数使用频率很高,必须支持偏移寻址和立即数使用频率很高,必须支持这两种方式;对其他寻址方式,则应根据软、这两种方式;对其他寻址方式,则应根据软、硬取舍原则进行选择。硬取舍原则进行选择。2 之 2Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容寻址技术寻址方式 根据根据进行分析和选择。进行分析和选择。偏移寻址参数大小选择偏移寻址参数大小选择立即数参数大小选择立即数参数大小选择 偏移寻址

35、方式中的地偏移寻址方式中的地址长度至少为址长度至少为1216bit(75%99%)。)。偏移的范围如何确偏移的范围如何确定,因为其大小直接定,因为其大小直接影响指令的长度。影响指令的长度。在在Alpha体系结构计算机上使用体系结构计算机上使用SPEC CPU2000测试所得结果测试所得结果 立即数寻址模式中的立立即数寻址模式中的立即数字段长度至少为即数字段长度至少为816bit(50%80%)。)。立即数的取值范围如立即数的取值范围如何确定,因为其大小直何确定,因为其大小直接影响指令的长度。接影响指令的长度。在在Alpha体系结构计算机上使用体系结构计算机上使用SPEC CPU2000测试所得

36、结果测试所得结果Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容寻址技术 在程序装入主存储器之前,程序中的指令和数据的主在程序装入主存储器之前,程序中的指令和数据的主存物理地址就已经确定了的称为直接定位方式。存物理地址就已经确定了的称为直接定位方式。在程序装入主存储器的过程中随即进行地址变换,确在程序装入主存储器的过程中随即进行地址变换,确定指令和数据的主存物理地址的称为静态定位方式。定指令和数据的主存物理地址的称为静态定位方式。在程序执行过程中,当访问到相应的指令或数据时才在程序执行过程中,当访问到相应的指令或数据时才进行地址变换,确定指

37、令和数据的主存物理地址的称为动进行地址变换,确定指令和数据的主存物理地址的称为动态定位方式。态定位方式。Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容w 指令的组成指令的组成w 操作码的优化设计操作码的优化设计w 地址码的优化设计地址码的优化设计w 指令字格式的优化设计指令字格式的优化设计Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容指令格式的优化设计 指令一般由两部分组成:指令一般由两部分组成:和和。由两部分组成:由两部分组成:指令的操作种类指令的操作种类所用操作数的类型所用操作数

38、的类型 由三部分组成:由三部分组成:操作数地址操作数地址地址的附加信息地址的附加信息寻址方式寻址方式2 之 1Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容指令格式的优化设计程序的程序的w 指令格式要指令格式要,以减少硬件译码,以减少硬件译码的复杂度的复杂度2 之 2Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容指令格式的优化设计w 评价方法评价方法w 固定长度操作码固定长度操作码w Huffman编码编码w 扩展编码法扩展编码法Computer ArchitectureV3同济大学

39、.电子与信息工程学院.计算机科学与工程系本章内容指令格式的优化设计操作码的优化设计其中:其中:表示第表示第i种操作码在程序种操作码在程序中出现的概率;中出现的概率;表示第表示第i种操作码的编码种操作码的编码长度;长度;操作码的总数。操作码的总数。其中:其中:为信息熵(理论上的最短为信息熵(理论上的最短平均码长)。平均码长)。2 之 1Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容指令格式的优化设计操作码的优化设计 为增加可比性,对下面介绍的编码方法为增加可比性,对下面介绍的编码方法采用同一例子:采用同一例子:。2 之 2指令指令I1概率概

40、率 0.45I20.30I30.15I40.05I50.03I60.01I70.01Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容指令格式的优化设计操作码的优化设计 所有指令的操作码长度都是相同的。如果需要所有指令的操作码长度都是相同的。如果需要编码的指令有编码的指令有n条,则固定长度操作码的位数至少条,则固定长度操作码的位数至少需要需要 log2n 位。目前许多的位。目前许多的RISC采用该思想。采用该思想。H=1.95;l=3;R=35%w 非常规整,硬件译码也很简单。非常规整,硬件译码也很简单。浪费严重。浪费严重。Computer

41、ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容指令格式的优化设计操作码的优化设计 概率高的用短位数表示,概率低的用长位数表概率高的用短位数表示,概率低的用长位数表示。示。利用利用Huffman树实现。树实现。是最优化的编码方式(平均码长最短,信息的是最优化的编码方式(平均码长最短,信息的冗余量最小),但操作码很不规整。冗余量最小),但操作码很不规整。4 之 1Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容指令格式的优化设计操作码的优化设计1.把所有指令按照使用概率自左向右排列好。把所有指令按照使用概率

42、自左向右排列好。2.选取两个概率最小的结点合并成一个概率值是二者之选取两个概率最小的结点合并成一个概率值是二者之和的新结点,并把这个新结点与其它还没有合并的结和的新结点,并把这个新结点与其它还没有合并的结点一起形成新结点集合。点一起形成新结点集合。3.在新结点集合中选取两个概率最小的结点进行合并,在新结点集合中选取两个概率最小的结点进行合并,如此继续进行下去,直至全部结点合并完毕。如此继续进行下去,直至全部结点合并完毕。4.最后得到的根结点的概率值为最后得到的根结点的概率值为1。5.每个结点都有两个分支,分别用每个结点都有两个分支,分别用“0”和和“1”表示。表示。6.从根结点开始,沿尖头所指

43、方向,到达属于该指令的从根结点开始,沿尖头所指方向,到达属于该指令的概率结点,把沿线所经过的代码组合起来得到这条指概率结点,把沿线所经过的代码组合起来得到这条指令的操作码编码。令的操作码编码。4 之 2Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容指令格式的优化设计操作码的优化设计0.450.300.150.050.030.010.011.000.550.250.100.050.020101010101014 之 3Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容指令格式的优化设计操作

44、码的优化设计指令序号指令序号 概率概率Huffman编码法编码法操作码长度操作码长度I10.45 01位位I20.30 102位位I30.15 1103位位I40.05 11104位位I50.03 111105位位I60.01 1111106位位I70.01 1111116位位H=1.95;l=1.97;R1%4 之 4Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容指令格式的优化设计操作码的优化设计 是固定长度操作码和是固定长度操作码和Huffman编码法相结合形编码法相结合形成的。即:成的。即:。有多种扩展编码,等长扩展(例如:有多种扩

45、展编码,等长扩展(例如:4-8-12、3-6-9等)?不等长扩展(例如:等)?不等长扩展(例如:4-6-10等)?等)?取决于具体指令的使用频度的分布。取决于具体指令的使用频度的分布。5 之 1Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容指令格式的优化设计操作码的优化设计序号序号 概率概率1-2-3-5扩展编码扩展编码I10.450I20.3010I30.15110I40.0511100I50.0311101I60.0111110I70.01111112-4等长扩展编码等长扩展编码0001101100110111101111平均码长平均

46、码长2.02.2信息冗余量信息冗余量2.5%11.4%5 之 2Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容指令格式的优化设计操作码的优化设计操作码编码操作码编码说明说明0000000111104位长度的操作码位长度的操作码共共15种种1111 00001111 00011111 11108位长度的操作码位长度的操作码共共15种种1111 1111 00001111 1111 00011111 1111 111012位长度的操作码位长度的操作码共共16种种5 之 3Computer ArchitectureV3同济大学.电子与信息工程学

47、院.计算机科学与工程系本章内容指令格式的优化设计操作码的优化设计操作码编码操作码编码说明说明0000000101114位长度的操作码位长度的操作码共共8种种1000 00001000 00011111 01118位长度的操作码位长度的操作码共共64种种1000 1000 00001000 1000 00011111 1111 011112位长度的操作码位长度的操作码共共512种种5 之 4Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容指令格式的优化设计操作码的优化设计5 之 5编码方法编码方法各种不同长度操作码的指令种类各种不同长度操作码

48、的指令种类总的总的指令种类指令种类4位操作码位操作码 6位操作码位操作码 10位操作码位操作码15/3/1615316348/31/1683116558/30/3283032708/16/2568162562804/32/256432256292Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容指令格式的优化设计w 地址个数的选择地址个数的选择w 优化单个地址码优化单个地址码Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容指令格式的优化设计地址码的优化设计地址数目地址数目指令指令条数条数程

49、序程序存储量存储量程序执程序执行速度行速度适用场合适用场合三地址三地址少少最大最大一般一般向量、矩阵运算为主向量、矩阵运算为主二地址二地址一般一般很大很大很低很低一般不宜采用一般不宜采用一地址一地址较多较多较大较大较快较快连续运算,硬件结构简单连续运算,硬件结构简单零地址零地址最多最多最小最小最低最低嵌套、递归、变量较多嵌套、递归、变量较多二地址二地址R型型一般一般最小最小最快最快多累加器、数据传送较多多累加器、数据传送较多采用各种不同地址数指令编写的程序的特点和适用范围采用各种不同地址数指令编写的程序的特点和适用范围Computer ArchitectureV3同济大学.电子与信息工程学院.

50、计算机科学与工程系本章内容指令格式的优化设计地址码的优化设计 要用一个较短的地址码表示一个较大的逻辑地要用一个较短的地址码表示一个较大的逻辑地址空间,同时还要有较灵活有效的寻址方式。址空间,同时还要有较灵活有效的寻址方式。w 用间址寻址方式缩短地址码长度用间址寻址方式缩短地址码长度用变址寻址方式缩短地址码长度用变址寻址方式缩短地址码长度用寄存器间接地址方式缩短地址码长度(是用寄存器间接地址方式缩短地址码长度(是最有效的方法)最有效的方法)Computer ArchitectureV3同济大学.电子与信息工程学院.计算机科学与工程系本章内容指令格式的优化设计 操作码和地址码的优化,会造成指令字操

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(计算机系统结构—第二章(指令系统) 课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|