首页 考试吧论坛 Exam8视线 考试商城 网络课程 模拟考试 考友录 实用文档 求职招聘 论文下载 | ||
2011中考 | 2011高考 | 2012考研 | 考研培训 | 在职研 | 自学考试 | 成人高考 | 法律硕士 | MBA考试 MPA考试 | 中科院 |
||
四六级 | 职称英语 | 商务英语 | 公共英语 | 托福 | 雅思 | 专四专八 | 口译笔译 | 博思 | GRE GMAT 新概念英语 | 成人英语三级 | 申硕英语 | 攻硕英语 | 职称日语 | 日语学习 | 法语 | 德语 | 韩语 |
||
计算机等级考试 | 软件水平考试 | 职称计算机 | 微软认证 | 思科认证 | Oracle认证 | Linux认证 华为认证 | Java认证 |
||
公务员 | 报关员 | 银行从业资格 | 证券从业资格 | 期货从业资格 | 司法考试 | 法律顾问 | 导游资格 报检员 | 教师资格 | 社会工作者 | 外销员 | 国际商务师 | 跟单员 | 单证员 | 物流师 | 价格鉴证师 人力资源 | 管理咨询师考试 | 秘书资格 | 心理咨询师考试 | 出版专业资格 | 广告师职业水平 驾驶员 | 网络编辑 |
||
卫生资格 | 执业医师 | 执业药师 | 执业护士 | ||
会计从业资格考试(会计证) | 经济师 | 会计职称 | 注册会计师 | 审计师 | 注册税务师 注册资产评估师 | 高级会计师 | ACCA | 统计师 | 精算师 | 理财规划师 | 国际内审师 |
||
一级建造师 | 二级建造师 | 造价工程师 | 造价员 | 咨询工程师 | 监理工程师 | 安全工程师 质量工程师 | 物业管理师 | 招标师 | 结构工程师 | 建筑师 | 房地产估价师 | 土地估价师 | 岩土师 设备监理师 | 房地产经纪人 | 投资项目管理师 | 土地登记代理人 | 环境影响评价师 | 环保工程师 城市规划师 | 公路监理师 | 公路造价师 | 安全评价师 | 电气工程师 | 注册测绘师 | 注册计量师 |
||
缤纷校园 | 实用文档 | 英语学习 | 作文大全 | 求职招聘 | 论文下载 | 访谈 | 游戏 |
(四) 指令集的精简化
1.RISC的开拓性工作
(1)1967年Seymour Cray在研制CDC-6600时,事实上他就已经采用了精简指令集的思想。因此,我们说他的工作是RISC思想的先驱。
(2)IBM801项目1975年IBM的沃森研究中心开始了对复杂指令系统是否合理的研究,称为801项目。到1979年研制成32位的IBM801小型计算机,该机只有120条指令,速度达到10MIPS,这可以说是世界上最早利用精简指令思想研制成的计算机。
(3)伯克利的RISC项目1980年美国加州大学伯克利分校的David Patterson教授领导了RISC项目。RISC这一缩写正是Patterson在伯克利讲课时首先使用的。
(4)斯坦福的MIPS项目1981年美国斯坦福大学的John Hennessy教授开始了MIPS项目。以上四个著名的项目可以说是RISC技术的四个主要技术来源,它们为RISC技术奠定了基础。
2.CISC的主要弊病
(1)CISC的最直觉的弊病就是指令集过分庞杂。
(2)微程序技术是CISC的重要支柱。每条复杂指令都要通过执行一段解释性微程序才能完成,这就需要多个CPU周期,从而降低了机器的处理速度。
(3)由于指令系统过分庞大,使高级语言编译程序选择目标指令的范围很大,并使编译程序本身冗长而复杂,从而难以优化编译使之生成真正高效的目标代码。
(4)CISC强调完善的中断控制,势必导致动作繁多,设计复杂,使研制周期增长。
(5)CISC给芯片设计带来很多困难,使芯片种类增多,出错几率增大,成本提高而成品率降低。
3.RISC的基本特征
(1)精简指令数量
(2)简化指令格式
(3)采用单周期指令
(4)采用寄存器操作
(5)硬线控制逻辑
(6)优化编译程序
4.RISC的关键技术
(1)重叠寄存器窗口技术在伯克利的RISC项目中,首先采用了重叠寄存器窗口(overlapping register windows)技术。
(2)优化编译技术RISC使用了大量的寄存器,如何合理分配寄存器、提高寄存器的使用效率,减少访存次数等,都应通过编译技术的优化来实现。
(3)超流水及超标量技术这是RISC为了进一步提高流水线速度而采用的新技术。
(4)硬线逻辑与微程序相结合在微程序技术中,微指令的格式可分为3类:水平型、垂直型、混合型。水平型微指令一次就能控制多种信息的并行传送,具有执行速度快、效率高、灵活性强、微程序短等优点。垂直型微指令与机器码指令类似,规整直观,容易掌握,但效率低,速度慢。混合型则在两者之间。目前,大多数RISC芯片采用的微程序都是高度水平型的微指令或者是用毫微程序方式实现,以便减少或免去微指令的译码时间,直接控制通路操作来加快微指令的流水和解释。
(五) 指令的流水处理
1.流水线的基本概念
(1)指令控制方式指令控制方式有3种,顺序方式、重叠方式、流水方式。顺序方式是指各条机器指令之间顺序串行地执行,执行完一条指令后才取下一条指令,而且每条机器指令内部的各个微操作也是顺序串行地执行。这种方式的优点是控制简单。缺点是速度上不去,机器各部件的利用率低。重叠方式是指在解释第K条指令的操作完成之前,就可开始解释第K+1条指令。通常采用的是一次重叠,即在任何时候,指令分析部件和指令执行部件都只有相邻两条指令在重叠解释。这种方式的优点是速度有所提高,控制也不太复杂,缺点是会出现冲突、转移、相关等问题,在设计时必须想办法解决。流水方式是模仿工业生产过程的流水线(如汽车装配线)而提出的一种指令控制方式。流水(pipelining)技术是把并行性或并发性镶嵌到计算机系统里的一种形式。它是一种把重复的顺序处理过程分解为若干子过程,每个子过程能在专用的独立模块上有效地并发工作的技术。在概念上“流水”可以看成是“重叠”的延伸。差别仅在于“一次重叠”只是把一条指令解释分解为两个子过程,而“流水”则是分解为更多的子过程。为了描述流水线的工作,我们画出时空图,它是分析评价流水线性能的重要工具。
(2)流水线的种类
①从流水的级别上,可分为部件级、处理机级以及系统级的流水。
②从流水的功能上,可分为单功能流水线和多功能流水线。
③从流水的联接上,可分为静态流水线和动态流水线。这是针对多功能流水线而分的。
④从流水是否有反馈回路,可分为线性流水线和非线性流水线。
⑤从流水的流动顺序上,可分为同步流水线和异步流水线。
⑥从流水线的数据表示上,可分为标量流水线和向量流水线。
(3)流水的相关处理
①局部性相关处理由于流水机器同时解释多条指令,这些指令可能有对同一主存单元或同一寄存器的“先写后读”的要求,这时就出现了相关,这种相关包括指令相关、访存操作数相关以及通用寄存器组相关等,它只影响相关的两条或几条指令,而且至多影响流水线的某些段推后工作,并不会改动指令缓冲器中预取到的指令内容,影响是局部的,所以称为局部性相关。解决局部性相关有两种方法:一种是推后法,即推后对相关单元的读,直至写入完成。另一种是通路法,即设置相关专用通路,使得不必先把运算结果写入相关存储单元,再从这里读出后才能使用,而是经过相关专用通路直接使用运算结果,这样可以加快速度。
②全部性相关处理转移指令(尤其是条件转移指令)与它后面的指令之间存在关联,使之不能同时解释,执行转移指令时,可能会改动指令缓冲器中预取到的指令内容,从而会造成流水线吞吐率和效率下降,比局部性相关的影响要严重得多,所以称为全局性相关。解决全局性相关有三种方法:一种是猜测转移分支;一种是加快和提前形成条件码;还有一种是加快短循环程序的处理。条件转移指令有两个分支:一个分支是按原来的顺序继续执行下去,称为转移不成功分支。另一个分支是按转移后的新指令序列执行,称为转移成功分支。许多流水机器都猜选转移不成功分支,这样做时,猜对的机率很大,流水线的吞吐率和效率就会比不采用猜测法时高得多。除猜测法外,还可以尽早获得条件码以便对流水线简化条件转移的处理。这意味着能精确地预知流向哪个分支。事实上,完全有可能提前形成条件码,例如一个乘法算所需时间较长,但在运算之前就能知道其结果为正或为负,或者是否为零,因此,加快单条指令内部条件码的形成,或者在一段程序内提前形成条件码,对转移问题的顺利解决是很有好处的。由于程序中广泛采用循环结构,所以流水线大都采用特殊措施以加快循环程序的处理。例如使整个循环程序都放入指令缓冲存储器中,对提高流水效率和吞吐率均有明显效果。
③流水的中断处理中断和转移一样,也会引起流水线断流。好在中断出现的概率要比条件转移出现的概率低得多,因此只要处理好断点现场保护及中断后的恢复,尽量缩短断流时间即可。
2.RISC中的流水技术
RISC中采用的流水技术有3种:超流水线、超标量以及超长指令字。
(1)超流水线技术超流水线(superpipelime)技术是RISC采用的一种并行处理技术。它通过细化流水、增加级数和提高主频,使得在每个机器周期内能完成一个甚至两个浮点操作。它的实质是以时间换取空间。超流水机器的特征是在所有的功能单元都采用流水,并有更高的时钟频率和更深的流水深度。由于它只限于指令级的并行,所以超流水机器的CPI值稍高,CPI的含义是每个指令需要的机器周期数(clock cycles per instruction)。不过,它在时钟频率高方面的优点大于其在CPI方面的缺点。
(2)超标量技术超标量(superscalar)技术是RISC采用的又一种并行处理技术。它通过内装多条流水线来同时执行多个处理,其时钟频率虽然与一般流水接近,但它却有更小的CPI。它的实质是以空间换取时间。许多研究人员都曾建议过“多指令分发”(multiple instruction issue)技术,Agerwala和Cocke把这种方法作为RISC思想的扩充,并创造了Supersalar一词。超标量结构正变得越来越复杂。除了指令数目增加外,在执行程序时还要靠硬件来对指令的处理顺序进行动态控制。硬件的复杂性还将随着时钟频率的提高而增加。
(3)超长指令字技术超长指令字(very long instruction word)简称为VILW技术,它由LIW发展而来。VLIW和超标量都是80年代出现的概念,其共同点都是要同时执行多条指令,其不同在于超标量依靠硬件来实现并行处理的调度,VILW则充分发挥软件的作用,而使硬件简化,性能提高。例如,超标量同时分发4条指令已经困难,但是VLIW同时分发8条指令的产品已经指日可待。因此,VLIW有更小的CPI值,但也要有足够高的时钟频率。为使每个功能单元都保持在忙状态,在直线代码序列(straightline code sequence)中必须使经过调度的指令有足够的工作。这是使用跟踪调度(trace scheduling)技术,通过解开循环(unˉrolling loops)和跨过基本块调度代码(scheduling code across basic blocks)来完成的。总之,利用VLIW可以提高指令处理的并行程度,减小CPI,简化控制硬件而可以设置更多的运算器和扩大Cache容量,同时还能提高与内存间数据传输的速率,以便采用更高的时钟频率,使得在超标量潜力已尽的情况下把微处理器的性能再提高2至5倍以上。
希望与更多计算机等级考试的网友交流,请进入计算机等级考试论坛
更多信息请访问:考试吧计算机等级考试栏目
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |