RISC处理器设计讲解.pptVIP

  1. 1、本文档共48页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
RISC处理器设计讲解

RISC处理器设计 RISC系统结构 基本思想:简单结构的高效实现 体:指令系统结构 操作:简单 数据:Load-Store结构,寻址方式简单 编码:定长 相:实现与使用方式 简化硬件,提高主频 指令流水线技术:寄存器操作容易解决相关 编译技术 用:性能及兼容性 性能:每条指令周期数差不多,主频高,CPI高 流水及多发射技术在提高性能的前提下不影响兼容性 指令系统结构 指令系统的设计原则 指令系统在计算机中的位置 硬件和软件的界面 设计要求 兼容性:在很长时间内保持不变 通用性:适合于各种应用 方便:编译器或程序员觉得好用,有较多功能 高效:便于CPU设计的优化,不同的实现方法得到不同的性能 影响指令系统设计的因素 工艺技术的发展(1) 工艺技术是处理器技术发展的源动力 集成度及CPU主频提高快,访存延迟提高慢 1990年: 33MHz Intel 386, 80ns访存延迟 1996年:266MHz Intel PII, 60ns访存延迟 上述趋势影响系统结构研究的内容 并行技术:流水线、多处理器、磁盘阵列 存储层次 网络 工艺技术的发展(2) Moore定律 Intel的创始人之一Gordon Moore在1971年预言每18个月芯片集成度增加一倍。 30年来这个预言基本正确,普遍认为这个定律可以适用到2010年 2002年达到每个芯片100,000,000个晶体管 2910年达到每个芯片1,000,000,000个晶体管 这么多晶体管用来做什么?=系统结构的研究 工艺技术的发展(3) Moore定律:处理器集成度提高 工艺技术对指令系统的影响 早期的指令系统设计主要考虑如何减少硬件 随着集成度的提高,如何有效利用芯片面积成为系统结构重要研究内容,一些新的并行结构如PIM、SIMD等必然影响指令系统 多发射技术的兼容性好 由于CPU与存储器的速度差距,指令系统的设计应能较好地利用存储层次,如通过并行或流水容忍延迟。 微处理器技术的发展(1) 通常微处理器指单片上的处理器 1971年Intel设计出第一个商品化微处理器。 70年代以来,微处理器的性能提高速度远大于大型机或小型机。 目前几乎所有的计算机系统都基于微处理器 微处理器性能的提高不仅得益于微电子技术,更加得益于系统结构技术(近年来尤其如此)。 主频每3年增加一倍,微处理器速度每18个月增加一倍(约每年增加50%)。性能价格比每年增加70%。 系统结构对指令系统的影响 指令系统本身是系统结构设计的一部分 不改变指令系统的前提下提高性能,如流水、多发射等 指令系统的兼容性与系统结构发展的矛盾关系 Intel的做法 编译技术对指令系统的影响 指令是编译器的工作结果 早期的指令系统主要考虑如何便于编程 编译器的影响 寄存器分配 堆栈用于存放局部变量,全局数据区用于存放静态数据,堆用于存放动态数据。 寄存器分配要考虑一致性问题,可以被aliased的数据不能分配在寄存器中(C中的volatile)。 为使编译器有效使用graph coloring启发式算法,至少需要16个通用寄存器。 规整:所有访存指令都可用所有寻址方式 简单:简化trade-offs,允许编译时确定常量,只提供基本的通用操作。 设计指令系统考虑的因素 操作 操作种类 操作数 堆栈型、累加器型、寄存器型 操作数个数和类型 访存操作数的寻址方式:寄存器、立即数、直接、间接... 指令编码 定长、变长 指令系统的类型(1) 根据指令使用数据的方式,指令系统分为以下几类 堆栈型(Stack):操作数在栈顶,运算操作不用指定操作数 累加器型(Accumulator):一个操作数总在累加器中,结果也写回累加器 寄存器型(Register),每个操作数都由指令指定 Register-Register型,又称为Load-Store型,所有运算操作的操作数都在寄存器中 Register-Memory型, Memory-Memory型, 上述三种指令系统类型也可以分别称为0地址指令,单地址指令,以及多地址指令 指令系统的类型(2) 例子:不同指令系统完成C=A+B的指令序列,假设A、B、C在内存中不同的单元 指令系统的类型(3) 早期的计算机多用堆栈和累加器型指令 出于降低硬件复杂度的考虑 现在已经不用(Intel有点例外) 80年代后的机器主要是寄存器型 访问寄存器比访问存储器快 便于编译器使用和优化 寄存器可以用来存放变量,减少访存次数 寄存器指令再分类 分类标准 运算操作中操作数的个数 运算操作中存储器操作数的个数 存储访问的表示 两个方面 如何表示地址:寻址方式 给定一个地址,访问目标及其长度 访存对象 存储器按字节编址:所有地址都是字节地址 访问长度:字节、半字、字、双字 地址对齐简化硬件设计:如字地址最低两位为

文档评论(0)

33ggoup + 关注
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档