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

南宁有做门户网站的公司吗广东公共广告20120708

南宁有做门户网站的公司吗,广东公共广告20120708,webapp 做视频网站,济南做网站最好的公司1.1异常处理 处理器中很多事情都会导致异常控制流,此时,程序执行的正常流程被破坏掉。异常可以由程序执行从内部产生,也可以由某个外部信号从外部产 生。 我们的指令集体系结构包括三种不同的内部产生的异常: l)halt指令&#…

1.1异常处理

处理器中很多事情都会导致异常控制流,此时,程序执行的正常流程被破坏掉。异常可以由程序执行从内部产生,也可以由某个外部信号从外部产 生。

我们的指令集体系结构包括三种不同的内部产生的异常:

l)halt指令,

2)有非法指令和功能码组合的指令,

3)取指或数据读写试图访问一个非法地址。

我们把导致异常的指令称为异常指令。

通常在一个流水线化的系统中,异常处理包括一些细节问题。

首先,可能同时有多条指令会引起异常。例如,在一个流水线操作的周期内,取指阶段中有 halt指令,而数据内存会报告访存阶段中的指令数据地址越界。我们必须确定处理器应该向操作系统报告 哪个异常。基本原则是:由流水线中最深的指令引起的异常,优先级最高。

第二个细节问题是,当首先取出一条指令,开始执行时,导致了一个异常,而后来由于分支预测错误,取消了该指令。

第三个细节问题的产生是因为流水线化的处理器会在不同的阶段更新系统状态的不同部分。有可能会出现这样的情况,一条指令导致了一个异常,它后面的指令在异常指令完成之前改变了部分状态。

一般地,通过在流水线结构中加人异常处理逻辑,我们既能够从各个异常中做出正确的选择,也能够避免出现由于分支预测错误取出的指令造成的异常。

1.2PIPE 各阶段的实现

1. PC 选择和取指阶段

这个阶段必须选择程序计数器的当前值,并且预测下一个PC值。用于从内存中读取指令和抽取不 同指令字段的硬件单元与SEQ中考虑的那些一样。

2. 译码和写回阶段

这个阶段的复杂性主要是跟转发逻辑相关。它为后面的阶段将valP信号合并到valA信号,这样可以减少流水线寄存器中状态的数量。它还实现了源操作数valA的转发逻辑。合并信号valA和valP的依据是,只有 call和跳转指令在后面的阶段中需要 valP 的值,而这些指令并不需要从寄存器文件 A端口中读出的值。这个选择是由该阶段的 icode 信号来控制的。

3. 执行阶段

图中展现的是PIPE 执行阶段的逻辑。这些硬件单元和逻辑块同SEQ中的相同, 使用的信号做适当的重命名。我们可以看到信号e _valE和e _dstE作为转发源,指向译码阶段。一个区别是标号为 “Set CC” 的逻辑以信号:m_stat和W _stat 作为输人,这个 逻辑决定了是否要更新条件码。

1.3流水线控制逻辑

在准备创建流水线控制逻辑,完成PIPE设计。这个逻辑必须处理下面4种控制情况.

加载/使用冒险:在一条从内存中读出一个值的指令和一条使用该值的指令之间,流水线必须暂停一个周期。

处理ret: 流水线必须暂停直到ret指令到达写回阶段。

预测错误的分支:在分支逻辑发现不应该选择分支之前,分支目标处的几条指令已经进人流水线了。必须取消这些指令,并从跳转指令后面的那条指令开始取指。

异常:当一条指令导致异常,我们想要禁止后面的指令更新程序员可见的状态,并且在异常指令到达写回阶段时,停止执行。

1. 特殊控制情况所期望的处理

在这个阶段设计中,每个流水线寄存器中会包含一个状态码 stat,随着每条指令经过流水线阶段,它会记录指令的状态。当异常发生时,将这个信息作为指令状态的一部分记录下来,并且继续取指、译码和执行指令,就好像什么都没有出错似的。当异常指令到达访存阶段时,会采取措施防止后面的指令修改程序员可见的状态。

2. 发现特殊控制条件

一些低级机制使得流水线控制逻辑能将指令阻塞在流水线寄存器中,或是往流水线中插入一个气泡。

假设每个流水线寄存器有两个控制输入:暂停(stall)和气泡(bubble)。这些信号的设置决定了当时钟上升时该如何更新流水线寄存器。

在正常操作下,这两个输入都设为 0,使得寄存器加载它的输入作为新的状态。

当暂停信号设为 1 时,禁止更新状态。相反,寄存器会保持它以前的状态。这使得它可以将指令阻塞在某个流水线阶段中。

当气泡信号设置为 1 时,寄存器状态会设置成某个固定的复位配置(configuration),得到一个等效于 nop 指令的状态。

3. 流水线控制机制

图4-中的表给出了各个流水线寄存器在三种特殊情况下应该采取的行动。对每种情况的处理都是对流水线寄存器正常、暂停和气泡操作的某个组合。在时序方面,流水线寄存器的暂停和气泡控制信号是由组合逻辑块产生的。当时钟上升时,这些值必须是合法的,使得当下一个时钟周期开始时,每个流水线寄存器要么加载,要么暂停,要么产生气泡。

4. 控制条件的组合

从这些图中我们可以看出,大多数控制条件是互斥的。例如,不可能同时既有加载/ 使用冒险又有预测错误的分支,因为加载/使用冒险要求执行阶段中是加载指令(mrmovq 或popq),而预测错误的分支要求执行阶段中是一条跳转指令。

5. 控制逻辑实现

图中是流水线控制逻辑的整体结构。根据来自流水线寄存器和流水线阶段的信号,控制逻辑产生流水线寄存器的暂停和气泡控制信号,同时也决定是否要更新条件码寄存器。

http://www.wangmingla.cn/news/94109.html

相关文章:

  • 校园网站建设年度工作计划如何制作百度网页
  • 做外贸怎么打开国外网站小程序开发平台
  • python做网站安全性抖音seo怎么做
  • 网站管理权限企业培训师
  • 网站开发所有工具多大企业网站设计模板
  • vip视频解析网站建设深圳seo推广外包
  • WordPress博客reBorn北京网站seo哪家公司好
  • 手机链接ppt在哪个网站做友情链接的英文
  • 微信支付 网站备案软件培训班
  • 上海网站建设托管软件制作
  • 企业做网站有什么好处坏处百度权重排名查询
  • 外国网站翻墙怎么做最近一周国内热点新闻
  • 网站有收录没权重百度搜索智能精选
  • 网站空格 教程网址大全qq浏览器
  • 电子商务网站的建设视频seo技术培训中心
  • 动态网页源码seo如何提高排名
  • 免费广告行业网站建设天津百度seo
  • 宝塔面板怎么做自己的网站女教师遭网课入侵直播录屏曝光se
  • 潍坊网站建设SEO优化seo谷歌
  • 昆明网站制作公司百度推广杭州搜索引擎推广排名技术
  • 政府网站建设服务sem竞价托管价格
  • 做网站手机广东又出现新病毒
  • 做网站的类型广州市疫情最新
  • 晋中推广型网站建设阿里巴巴国际站关键词推广
  • 怎么做代购彩票网站吗提升网页优化排名
  • 游戏网页设计模板2021百度seo
  • 东阳网络推广网站seo快速排名优化
  • 王烨森温州最好的seo
  • 专业做甜点的网站网站关键词优化价格
  • 中国建筑工程平台网茂名百度seo公司