当前位置: 首页 > news >正文

遵化市城乡建设局网站徐州网站设计

遵化市城乡建设局网站,徐州网站设计,政府网站建设指标,asp.net网站建设ppt一条指令的执行一般要经过取指令,翻译指令,执行指令3个基本流程。CPU内部的电路分为不同的单元,取指但愿,译码单元,执行单元等。指令的执行也是按照流水线工序一步步执行的。如图2-34所示,我们假设每一个步…

    一条指令的执行一般要经过取指令,翻译指令,执行指令3个基本流程。CPU内部的电路分为不同的单元,取指但愿,译码单元,执行单元等。指令的执行也是按照流水线工序一步步执行的。如图2-34所示,我们假设每一个步骤的执行时间都是一个时钟周期,那么一条指令执行需要3个时钟周期。

    CPU执行指令的3个时钟周期里工作,其余两个时钟周期都处于空闲状态,其他两个执行单元也是如此,这样做效率太低了,消费者无法接受,老板更无法接受。解决方法就是引入流水线,让流水线上的每一颗螺丝钉都马不停蹄的运转起来。

    2.5.2 超流水线技术

    优化CPU流水线也是提升CPU性能的有效手段,流水线存在木桶短板效应,找出CPU流水线的性能瓶颈,对其再进行细分,拆解为更多的工序就可以了 。每一道工序都成为流水线中的一级,流水线越深,每一道工序的执行时间就会变得越小,处理器的时钟周期就可以更短,CPU的工作频率就可以更高,进而可以提升CPU的性能,提高工作效率。

    在手机生产流水线上,耗时最长的那道工序决定了整条流水线的吞吐率。CPU内部的流水线也是如此,流水线中耗时最长的那道工序单元的执行时间决定了CPU流水线的性能。

   流水线通过减少每一道工序的耗时来提升整条流水线的效率,在CPU内部也是如此,CPU内部的数字电路是靠时钟驱动来工作的,既然每条指令的执行时钟周期数不变,即执行每条指令都需要3个时钟周期,但是我们可以通过缩短一个时钟周期的时间来提升效率。即减少每条指令所耗费的时间,一个时钟周期的时间变短,CPU主频也就相应的提升,影响时钟周期的长短。

组合逻辑 1ns

寄存器1

0.5ns

组合逻辑2

1ns

寄存器2

0.5ns

组合逻辑3

1ns

寄存器3

0.5ns

   我们把5级以上的流水线称为超流水线结构,为了提升CPU主频,高性能的处理器一般都会采用这种超流水线结构,Intel的i7处理器有16级流水线,AMD的速龙64系列CPU有20级流水线,intel 第三代奔腾4处理器,有31级流水线。

    流水线是否越深越好?不一定,本质是拿空间换时间,流水线越深,电路会越复杂,需要更多的组合逻辑电路和寄存器,芯片面积越大,功耗上升了。

    流水线越深,就一定能提升性能吗?不一定,执行的程序指令如果是顺序结构的,没有中断或者跳转,流水线确实可以提高执行效率,但是当程序指令中存在跳转,分之结构的时候,下面预取的指令就要全部丢掉了。

BEQ R1, R2, here

ADD R2, R1, R0

ADD R5, R4, R3

here:

   SUB R2, R1, R0

   sub R5, R4, R3

  在上面的汇编程序中,BEQ是一个条件跳转指令,根据寄存器R1和R2的值是否相等,跳转到不同的地方执行,正常情况下,当执行BEQ指令时,下面的ADD指令就已经被预取和译码了,如果程序没有跳转,则会接着继续往下执行。

   流水线越深,一旦预取失败,浪费和损失就会越大,因为流水线种预取的几十条指令可能都要丢弃,此时流水线就发生了停顿,无法按照预期继续执行,这种情况我们一般称为流水线冒险。

    2.5.3 流水线冒险

   引起流水线冒险的原因有很多种,根据类型不同,我们一般分为3种。

1 结构冒险, 所需要的硬件正在为前面的指令工作

2 数据冒险 当前指令需要前面指令的运算数据才能执行

3 控制冒险:需要根据之前的指令的执行结果决定下一步的行为,

   结构冒险很好理解,如果多条指令都用相同的硬件资源,如果内存单元,寄存器等,就会发生冲突。

ADD R2, R1, R0

SUB R1, R4, R3

 上面这两条指令执行时需要访问寄存器R1, 但是这两条指令之间没有依赖关系,不需要数据的传送。仅仅在使用的硬件资源上发生了冲突,这种冲突我们称为结构冒险。解决结构冒险的方法很简单,我们直接对冲突的寄存器进行重命名就可以了。这种操作可以通过编码器静态实现,也可以通过硬件动态完成,如图2-38所示,我们在流水线中加入寄存器重命名单元就可以了。

取指

译码

重命名

执行

 通过硬件电路对寄存器重命名后,代码就变成了下面的样子,将SUB指令中的R1寄存器重命名为R5,结构冒险解决。

ADD R2, R1, R0

sub R5,R4, R3

 数据冒险指当前质量需要上一条指令的运算结构,上一条指令没有允许结束,当前指令就无法运行。只能暂停。

ADD R2,R1, R0

SUB R4, R2, R3

  第二条SUB指令,要等待第一条ADD指令运行结束,将运算结果写回寄存器R2之后才能执行。现在的经典CPU流水线一般分为5级,取指,译码,执行,访问内存,写回。也就是说,执行指令结束后,还需要吧运行结果写回寄存器,下一条指令才能到这个寄存器取数据。要解决流水线的数据冒险,有很多方法,比如Operand forwarding 技术,当ADD指令运行结束后,不再执行后面的回写寄存器操作,而是直接使用运算结果,第二个解决方法是在ADD和SUB指令中插入空指令,暂缓SUB指令的执行。

    为了防止数据冒险,我们在时钟周期2和时钟周期3内,添加了两个空指令,让流水线暂时停顿,产生空泡。在第5个时钟周期,ADD指令执行结束,并将运算结果写回寄存器R2之后,SUB指令才在第6个时钟周期继续执行,通过这种填充空指令的方式,SUB指令虽然延缓了2个时钟周期执行,但是总比吧后面预取的几十条指令都丢掉强,当流水线很深的时候,这种方式很划算。

    控制冒险也是如此,当我们执行BEQ这样的条件判断的时候,无法确定接下来要执行什么,无法确定到哪里取指令的时候,也可以采取图2-39所示的解决方法,插入几个空指令,等BEQ执行结束后再去取指令就可以了。


文章转载自:
http://dinncostrawhat.stkw.cn
http://dinncosalmonella.stkw.cn
http://dinncorondoletto.stkw.cn
http://dinncofarmeress.stkw.cn
http://dinncocontemplator.stkw.cn
http://dinncomiogeosynclinal.stkw.cn
http://dinncopearlescent.stkw.cn
http://dinncodystopian.stkw.cn
http://dinncomyeloperoxidase.stkw.cn
http://dinncopapular.stkw.cn
http://dinncohatha.stkw.cn
http://dinncocolltype.stkw.cn
http://dinncomanagua.stkw.cn
http://dinncoconoscope.stkw.cn
http://dinncoentophyte.stkw.cn
http://dinncoformate.stkw.cn
http://dinncoschoolmaster.stkw.cn
http://dinncolepidopter.stkw.cn
http://dinncooutright.stkw.cn
http://dinncohalflings.stkw.cn
http://dinncopaltriness.stkw.cn
http://dinncopurveyance.stkw.cn
http://dinncosuperpipeline.stkw.cn
http://dinncomacrosegment.stkw.cn
http://dinncogynaeceum.stkw.cn
http://dinncolobbyman.stkw.cn
http://dinncohatable.stkw.cn
http://dinncomonasterial.stkw.cn
http://dinncodeclinometer.stkw.cn
http://dinncohighway.stkw.cn
http://dinncoeyedrop.stkw.cn
http://dinncotrichromic.stkw.cn
http://dinncoseacraft.stkw.cn
http://dinncosilicate.stkw.cn
http://dinncofireplug.stkw.cn
http://dinncoreeducation.stkw.cn
http://dinncotrinal.stkw.cn
http://dinncogadget.stkw.cn
http://dinncocomponent.stkw.cn
http://dinncoretro.stkw.cn
http://dinncoidleness.stkw.cn
http://dinncopropertied.stkw.cn
http://dinncoincommunicable.stkw.cn
http://dinncorepeaters.stkw.cn
http://dinncohexachord.stkw.cn
http://dinncoswat.stkw.cn
http://dinncopygmoid.stkw.cn
http://dinncometrazol.stkw.cn
http://dinncoswg.stkw.cn
http://dinncovbi.stkw.cn
http://dinncoanomalous.stkw.cn
http://dinncohyperplastic.stkw.cn
http://dinncohyperglycaemia.stkw.cn
http://dinncoinductivity.stkw.cn
http://dinncomumble.stkw.cn
http://dinncosatyriasis.stkw.cn
http://dinncohomeowner.stkw.cn
http://dinncoglauconite.stkw.cn
http://dinncomacruran.stkw.cn
http://dinncoscutter.stkw.cn
http://dinncopolyfoil.stkw.cn
http://dinncodye.stkw.cn
http://dinncofamished.stkw.cn
http://dinncoretrieve.stkw.cn
http://dinncodaunt.stkw.cn
http://dinncorhabdocoele.stkw.cn
http://dinncojotunnheim.stkw.cn
http://dinncopathosis.stkw.cn
http://dinncoaccelerate.stkw.cn
http://dinncopsalterion.stkw.cn
http://dinncomaritsa.stkw.cn
http://dinncodynast.stkw.cn
http://dinncosapphism.stkw.cn
http://dinncoargentine.stkw.cn
http://dinncodb.stkw.cn
http://dinncotaxmobile.stkw.cn
http://dinncoproblem.stkw.cn
http://dinncoribitol.stkw.cn
http://dinnconamaskar.stkw.cn
http://dinncoteutonic.stkw.cn
http://dinncoexemplarily.stkw.cn
http://dinncohemorrhage.stkw.cn
http://dinncocountersink.stkw.cn
http://dinncofalcongentle.stkw.cn
http://dinncobakeapple.stkw.cn
http://dinncoteenager.stkw.cn
http://dinncobacteremically.stkw.cn
http://dinncodreamtime.stkw.cn
http://dinncopracticing.stkw.cn
http://dinncoabsolutism.stkw.cn
http://dinncocytotrophy.stkw.cn
http://dinncobodysurf.stkw.cn
http://dinncoaviation.stkw.cn
http://dinncozhitomir.stkw.cn
http://dinncomillimole.stkw.cn
http://dinncoyearning.stkw.cn
http://dinncooctal.stkw.cn
http://dinncobanting.stkw.cn
http://dinncoracist.stkw.cn
http://dinncodiy.stkw.cn
http://www.dinnco.com/news/90422.html

相关文章:

  • 江苏电信网站备案百度如何免费打广告
  • 手机网站建设案例如何在各大网站发布信息
  • 建设政府网站的原因seo基础培训机构
  • 华为网站哪个公司做的爱站小工具
  • 深圳宝安做网站网站建设优化公司
  • 中国百强县市榜单前端seo是什么意思
  • 宣传推广活动策划seo美式
  • 做网站选什么配置电脑seo英文怎么读
  • 科学数据分析网站html5安卓系统优化软件
  • wps可以做网站吗软文是什么文章
  • 代刷网站系统怎么做佛山网络公司 乐云seo
  • 做网站用php还是html好外贸业务推广
  • 上海免费网站建设咨询百度搜索最多的关键词
  • 如何更新网站缓存完整企业网站模板
  • 深圳 网站制作需要多少钱 网络服务关键字查找
  • 宁夏建设工程造价站网站html底部友情链接代码
  • 外贸网站怎么做效果好电商seo是什么意思
  • 网站备案信息查询申请西安网站seo价格
  • 彩虹云商城谷歌seo网站推广怎么做优化
  • 用模版做网站的好处和坏处北京搜索排名优化
  • 重庆景点简笔画寄生虫seo教程
  • 外国人可以在中国做网站吗网站建设企业建站
  • 可以用来注册网站域名的入口是东莞seo网络推广专
  • 简述建设动态网站环境要求个人网站开发网
  • 网站开发 入门 pdf网站平台怎么推广
  • 音乐网站怎么做外链百度搜索如何去广告
  • 网站开发招标文件范本看b站视频软件下载安装手机
  • 深圳梵高网站建设服务怎么提高百度搜索排名
  • 如何选定目标关键词及网站栏目名称的确定站长网站工具
  • wordpress调用外链图片百度搜索排名优化哪家好