下载此文档

计算机系统结构》电子教案(3).ppt


文档分类:IT计算机 | 页数:约45页 举报非法文档有奖
1/45
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/45 下载此文档
文档列表 文档介绍
该【计算机系统结构》电子教案(3) 】是由【相惜】上传分享,文档一共【45】页,该文档可以免费在线阅读,需要了解更多关于【计算机系统结构》电子教案(3) 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。第2章指令系统的设计本章主要内容(1)指令操作码的优化〔不讲〕(2)RISC技术简介(3)MIPS指令集(4)MIPS模拟器〔补充〕〔P44〕名词:RISC——puting,精简指令集计算机(1)RISC产生的背景:20%与80%规律(2)RISC设计的根本原那么:只设置最常用的简单指令,凡遇复杂操作均用多条简单指令实现;指令长度固定,操作码与操作数长度都尽量统一;根本指令的启动时间间隔降低到1个时钟周期;访问主存只有load和store指令,用变址寻址;尽量采用硬连逻辑对指令译码;为了加快执行速度,在编译过程中对目标代码结构进行优化;(3)RISC性能优势的原因 采用RISC技术的主要动机是使各条指令的执行时序尽可能一致,CPU在执行时间上可以把它们安排得更紧凑,就像许多大小相近的箱子容易被堆放得更密集一样。这样机器内的各种资源可以充分利用,单位时间内能执行更多的指令,速度更快。 这方面的具体内容,在第3章讲流水线时会详细介绍。,IBM研究中心的JohnCocke证明,计算机中约20%的指令承担了80%的工作,1974年,他提出RISC的概念。 在RISC的早期研究中,加州大学伯克利分校〔UCBerkeley〕和斯坦福大学〔Stanford〕提出了许多有创见的新思想。伯克利率先在1982年完成了RISCI型32位芯片的设计,斯坦福大学那么在JohnHennessy〔现任校长〕带着下于1983年完成了第一个采用RISC理念的商用MIPS微处理器。 1984年Hennessy等人创立了MIPS计算机公司,1998年改名为MIPS技术公司〔美普思科技公司,MIPSTechnologiesInc〕,目前是美国最著名的芯片设计公司之一。MIPS技术公司本身不生产微处理器,它只设计高性能工业级的32位和64位CPU的结构体系,并且向其它半导体公司提供使用其内核〔IP〕的授权,用于生产基于MIPS而又各具特色的微处理器。1999年MIPS技术公司发布了MIPS32和MIPS64架构标准。 MIPS的通用微处理器主要用于构建高性能工作站、效劳器和超级计算机系统,其嵌入式产品在1999年以前全球销量第一,目前也仅次于ARM。“无内部互锁流水级的微处理器〞〔Microprocessorwithoutinterlockedpipedstages〕,其机制是尽量利用软件方法防止流水线中的数据相关问题。 MIPS具有强大的应用根底,能在MIPS上运行的操作系统,包括Linux、WindRiver、WinCE、GNU、和MontaVista等;支持14种编译器,包括MIPS、SDE、GreenHills、GNU和WindRiver等;支持15种调试器,包括GNU、GreenHills、WindRiver、ASHLING和FS2等;支持18种仿真工具,raphics、Synopsys、CoWare和Candence等。 中国科学院计算所的龙芯1和2都采用64位MIPS指令架构。中国龙芯已与MIPS公司合作,购置其指令系统授权,以便批量生产与出口。〔P47〕32个64位通用存放器〔GPRs〕,也称为整数存放器名称是R0,R1,…,R31〔也可写为$0,$1,…,$31〕R0的值永远是0,可用作源存放器,也可作为无用结果的目的存放器;R31用于存放跳转并链接类指令的返回地址。32个64位浮点数存放器〔FPRs〕F0,F1,…,F31用来存放32个单精度浮点数〔32位〕,也可以用来存放32个双精度浮点数〔64位〕。存储单精度浮点数〔32位〕时,只用到FPR的一半,其另一半没用。特殊功能存放器PC〔programcounter,程序计数存放器〕HI〔整数乘除结果高位存放器,除法余数〕LO〔整数乘除结果低位存放器,除法的商〕它们可以与通用存放器交换数据。浮点状态存放器:用来保存有关浮点操作结果的信息。〔程序员****惯用法〕MIPS编译器支持一些专业程序员对32个通用存放器GPR〔GENERALPURPOSEREGISTER〕约定的****惯性用法〔非强制的〕:REGISTERNAME USAGE$0$zero 常量0(constantvalue0)$2-$3$v0-$v1 函数调用返回值(valuesforresultsandexpressionevaluation)$4-$7$a0-$a3 函数调用参数(arguments)$8-$15$t0-$t7 暂时的(或随便用的)$16-$23$s0-$s7 保存的(或如果用,需要SAVE/RESTORE的)(saved)$24-$25$t8-$t9 暂时的(或随便用的)$26-$27$k0-$k1 由操作系统的异常或中断处理程序使用$28$gp 全局指针(GlobalPointer)$29$sp 堆栈指针(StackPointer)$30$fp 帧指针(FramePointer)(BNN:fpisstaleacutally,andcanbesimplyusedas$t8)$31$ra 返回地址(returnaddress)〔8位〕半字〔16位〕字〔32位〕双字〔64位〕浮点数单精度浮点数〔32位〕双精度浮点数〔64位〕字节、半字或者字在装入64位存放器时,用零扩展或者用符号位扩展来填充该存放器的剩余局部。装入以后,对它们将按照64位整数的方式进行运算。〔P47〕立即数寻址与偏移量寻址; 立即数字段和偏移量字段都是16位的。存放器间接寻址是通过把0作为偏移量来实现的;16位绝对寻址是通过把R0〔其值永远为0〕作为基址存放器来完成的;MIPS的存储器按字节寻址,地址为64位;所有存储器访问必须是边界对齐的,即访问地址必须是该数据长度〔字节数〕的整倍数,又叫整数边界原那么;MIPS的存储器按字节编制;所有数据字、指令字从最高有效位开始依次标记为bit0、1、2……;MIPS处理器的存储顺序,可以设置为“小端字节表示顺序〞〔Littile- Endian,低位字节放在低地址〕或者“大端字节表示顺序〞〔Big-Endian, 高位字节放在低地址,以便适合网络数据包内顺序〕。在下文使用的 MIPS64模拟器中采用“小端字节表示顺序〞。〔P48〕MIPS32和MIPS64体系结构定义了兼容的32位和64位处理机指令使用条件编译或宏汇编指令能写出可同时在MIPS32和MIPS64上运行的程序寻址方式编码到操作码中所有的指令都是32位的操作码占6位3种指令格式〔3种格式中,同名字段的位置固定不变〕——I类指令包括所有的load和store指令,立即数指令,分支指令,存放器跳转指令,存放器链接跳转指令。立即数字段为16位,用于提供立即数或偏移量。load指令访存有效地址:Regs[rs]+immediate从存储器取来的数据放入存放器rtstore指令访存有效地址:Regs[rs]+immediate要存入存储器的数据放在存放器rt中立即数指令Regs[rt]←Regs[rs]opimmediate分支指令转移目标地址:Regs[rs]+immediate,rt无用存放器跳转、存放器跳转并链接转移目标地址为Regs[rs]

计算机系统结构》电子教案(3) 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数45
  • 收藏数0 收藏
  • 顶次数0
  • 上传人相惜
  • 文件大小2.31 MB
  • 时间2024-03-26
最近更新