适用于RISC CPU的转移指令的原理及仿真研究

最新更新时间:2014-02-19来源: 电源网关键字:RISC  CPU  转移指令 手机看文章 扫描二维码
随时随地手机看文章

本文介绍的RISC CPU对转移指令的处理方法,为5级流水线作业,分别是取指、译码、执行、访存、回写,对转移指令的处理在取指级和译码级完成;译码级给出转移指令所包含的详细信息,取指级包含有地址计算单元,转移目标Cache (BTC),跳转判断单元等。对转移指令的处理使用了延时跳转、2BC以及BTC方法。

1 转移指令的原理

RISC CPU的指令集中包含有条件转移指令和非条件转移指令。所有的转移指令均使用延时转移,每条转移指令后面跟随一条延时槽指令;采用2BC预测条件转移是否跳转,而BTC则保存转移目标为固定地址的转移指令执行后的信息。以下分别介绍在该RISC CPU设计中转移指令的设计以及延时转移、BTC、2BC的具体实现方法。

2 转移指令类型及格式

RISC CPU的指令集中包含条件转移指令(BCC)和非条件转移指令(CALL和RET),其编码格式为图1所示。CALL指令包含2位的操作码和30位的绝对地址。BCC指令包含8位操作码, 4位条件码(Condition Code),19位偏移量以及1位用来区分指令是否带A参数(即ANNUL操作)。所有的BCC指令使用相同的操作码,不同的BCC指令用条件码来区分,共有16类BCC指令;偏移量为带符号数,在低位用00扩展后可以对±220的相对地址寻址。RET指令包含8位的操作码和两个5位的寄存器地址。

3 2BC的作用及工作原理

因为转移指令执行一次之后,转移目标地址、延时槽指令都保存在BTC中了,当该指令再次执行时,这些信息就直接从Cache读出,因此在取指级就可以得到跳转目标地址和延时槽指令。对于非条件转移指令,跳转总是执行,因此BTC命中时就可以直接决定下一条指令的地址为转移目标地址,而当前周期DI被送到指令总线上;但对于条件转移指令,跳转与否是根据条件码和ALU的标志位来决定的。如果转移指令前面一条指令的执行结果改变标志位,而当BTC命中时该指令还在译码级,则跳转与否需要等待一个时钟周期才能决定。为了避免因为等待而造成流水线的停顿,采用2BC当前的状态预测跳转是否执行,在接下来的时钟周期,标志位有效之后,再检查预测是否正确,如果不正确,就进行更正。当预测准确时,采用2BC 与BTC可以使转移指令的执行时间缩短一个周期。即使预测不准确,与不采用预测相比也不会有损失。2BC的工作原理如图2所示,初始值为Nx(第一次不跳转执行)或Tx(第一次跳转执行),t表示跳转执行,n表示跳转不执行。当HI为N或Nx时,预测跳转不发生;当HI为T或Tx时,预测跳转发生。

4 BTC命中

在取指周期开始时如果发现当前取指地址包含在BTC的TAG中,并且对应行的VI也有效,则认为BTC命中,从而启动命中任务:读出命中行的数据,把DI送到指令总线,如果是CALL指令,转移目标地址作为下一条指令的地址;如果是BCC指令则需要判断跳转是否发生:当标志位有效时,根据条件码与标志位判断,否则根据HI进行预测,然后确定下一条指令的地址:跳转时为转移目标地址,不跳转为PC+2。对于带A参数的BCC指令,在跳转不执行时,要禁止DI在下一时钟进入译码级。BTC命中的流程如图3。

5 BTC检查

如果前一周期BTC命中,则在当前周期开始时启动BTC检查任务;如果前一周期BTC是根据HI预测BCC的跳转,那么在当前时钟标志位有效后,要重新判断跳转决定是否正确,如果不正确就要进行更正,给出正确的取指地址,请求在下一时钟禁止译码级或执行级。同时还要根据最终的跳转情况和HI的更新算法更新HI。BTC检查的流程图如图4。

6 结论

整个RISC CPU用Verilog HDL语言进行了描述,并针对标准程序进行了仿真仿真结果表明,采用上述方法处理转移指令可以明显提高流水线的吞吐率。由于在转移指令后面插入了延时槽指令,转移指令的执行与程序顺序执行时完全相同;BTC的使用虽然在硬件上增加了一些开销,但使转移指令再次执行时基本不占用流水线资源,大大提高了CPU的效率。

关键字:RISC  CPU  转移指令 编辑:探路者 引用地址:适用于RISC CPU的转移指令的原理及仿真研究

上一篇:基于1602液晶电压驱动器应用于proteus仿真
下一篇:结合MDA-EDA集成电子散热的仿真解决方案

推荐阅读最新更新时间:2023-10-12 22:35

HTC正同ST-Ericsson联合开发智能手机CPU
        北京时间4月23日消息,据国外媒体报道,在 苹果 和三星纷纷开始为自己的移动设备配置自主开发的芯片后 ,HTC也正在开发自己的处理器芯片。消息称,这家台湾的智能手机厂商目前已经同ST-Ericsson签署了联合开发芯片的合作备忘录。 以往,三星、苹果主要是为自己的旗舰级移动设备配置功能强大的CPU,但HTC未来的芯片预计将运行在较为低端的智能手机上。据悉,配置了全新芯片的HTC移动设备将在2013年大规模出货。 HTC看上去正逐渐对 高通 的 芯片失去耐心,因为直到2012年,高通的芯片才被配置到HTC大多数的设备中。今年二月,HTC就暗示了自己的不满,甚至可能认为高通是导致自己近期销 量下滑
[手机便携]
使用图形化的开发环境——LabView开发嵌入式系统
传统设计模式所应对的挑战 嵌入式系统正在渗入现代社会的各个方面,广泛地应用于航空航天、通信设备、消费电子、工业控制、汽车、船舶等领域,据统计,在美国平均每个中产阶级家庭要使用40~50个嵌入式系统。巨大的市场需求推动了嵌入式系统向更高的技术水平发展。设计师们一方面采用性能更强大的嵌入式处理器如32位、64位RISC芯片取代传统的8位、16位微处理器;另一方面嵌入式系统也由单处理器单操作系统的传统结构向混合型Multi-core系统发展,通过采用多个处理器和OS提高系统并行度来提高系统运行效能,并且设计师们往往同时采用MPU、DSP和FPGA等多种可编程器件来增强处理能力,满足应用功能的升级。 嵌入式系统复杂性的不断增加
[工业控制]
CPU/GPU整合运算趋势 CPU性能才是关键
2011年的IT产业是一个以智能、融合为主导的一年,自从英特尔的新一代Sandy Bridge架构的处理器,将融合做到了极致之后,引起了新一轮的电脑处理器的革命性提升,各厂家纷纷推出了上百款搭载SNB新平台的笔记本等产品。   融合是趋势  新一代酷睿真正将CPU和GPU融合成一体,其最大的特性在于将GPU芯片完全融入到CPU当中,而不再是封装到一片硅片中这么简单。与处理器当中的CPU核心一样,GPU核心也全面采用了32nm制程工艺,并且可以共享三级缓存,同时也支持二代睿频加速技术。在需要大量GPU运算的场合,可以实现GPU运算性能成倍的增长。新加入的重量级AVX指令集理论上可以提升2倍的浮点运算能力。    ▲融合是趋势
[手机便携]
<font color='red'>CPU</font>/GPU整合运算趋势 <font color='red'>CPU</font>性能才是关键
芯原戴伟民:RISC-V要借鉴Linux专利联盟,保护相关企业利益
日前,在第三届滴水湖中国RISC-V产业论坛期间,中国RISC-V产业联盟理事长,芯原股份创始人、董事长兼总裁戴伟民表示,目前RISC-V还不存在相关专利诉讼问题,但并不意味着专利不存在风险。 如果说RISC-V开源指令集是“字典”,“字典”里拿出来的东西没问题,但是从字典到文章,就有可能存在侵权问题。 戴伟民以微软与Linux的案例解释了专利问题。 过去,微软作为闭源公司的典型代表,动辄拿起专利武器,打击竞争对手。微软公司早期对开源软件采取敌意的姿态,因为其将Linux等开源软件视为Windows等商业软件的威胁。微软公司于2009年2月起诉导航设备制造公司TomTom侵犯其多项专利,该多项专利中有2项涉及FAT文件
[半导体设计/制造]
芯原戴伟民:<font color='red'>RISC</font>-V要借鉴Linux专利联盟,保护相关企业利益
ARM处理器简介及RISC特点
第一ARM处理器简介及RISC特点 ARM处理器简介 ARM(Advanced RISC Machines)是一个32位RISC(精简指令集)处理器架构,ARM处理器则是ARM架构下的微处理器。ARM处理器广泛的使用在许多嵌入式系统。ARM处理器的特点有指令长度固定,执行效率高,低成本等。 RISC设计主要特点 1、指令集——RISC减少了指令集的种类,通常一个周期一条指令,采用固定长度的指令格式,编译器或程序员通过几条指令完成一个复杂的操作。而CISC指令集的指令长度通常不固定。 2、流水线——RISC采用单周期指令,且指令长度固定,便于流水线操作执行。 3、寄存器——RISC的处理器拥有更多的通用寄存器,寄存器操作较多。
[单片机]
ARM处理器简介及<font color='red'>RISC</font>特点
PIC单片机是什么?
什么是PIC单片机? PIC单片机(Peripheral Interface Controller)是一种用来开发的去控制外围设备的集成电路(IC)。一种具有分散作用(多任务)功能的CPU。与人类相比,大脑就是CPU,PIC 共享的部分相当于人的神经系统。 PIC 单片机是一个小的计算机 PIC单片机有计算功能和记忆内存像CPU并由软件控制允行。然而,处理能力—存储器容量却很有限,这取决于PIC的类型。但是它们的最高操作频率大约都在20MHz左右,存储器容量用做写程序的大约1K—4K字节。 时钟频率与扫描程序的时间和执行程序指令的时间有关系。但不能仅以时钟频率来判断程序处理能力,它还随处理装置的体系结构改变
[单片机]
高通超级强大CPU在路上了
7月2日上午,高通公司正式宣布,现任高通公司总裁安蒙正式就任高通CEO。 安蒙同时也通过社交媒体发表了一段简短的就任感言:“我非常荣幸出任高通公司 CEO,并有机会领导这样一家了不起的公司。25年前,我作为一名工程师加入高通公司。多年来我们始终坚持的一点是,专注于研发具有变革性的领先技术。相信,这一点永远不会改变。” 据了解,今年1月5日,高通公司正式宣布公司首席执行官史蒂夫·莫伦科夫将于6月30日正式退休,由高通总裁克里斯蒂亚诺·安蒙接任,从2021年6月30日起生效。 根据小编了解,安蒙现年50岁,1995年就加入高通公司,从工程师岗位逐渐成长到技术管理岗位,并于2018年1月成为高通公司总裁。 在担任公司总裁期间,安
[手机便携]
新一代RISC微处理器ARM11的特点技术
ARM11系列微处理器是ARM公司近年推出的新一代RISC处理器,它是ARM新指令架构——ARMv6的第一代设计实现。   该系列主要有ARM1136J,ARM1156T2和ARM1176JZ三个内核型号,分别针对不同应用领域。   本文将对全新的ARMv6架构进行介绍,并深入分析ARM11处理器的先进特点和关键技术。 ARMv6结构体系   实现新一代微处理器的第一步就是订立一个新的结构体系。这里所说的结构体系只是对处理器行为进行描述,并不包括具体地指定处理器是如何被建造的。结构体系的定义提供了处理器和外界(操作系统,应用程序和调试支持)的接口,从细节上说,处理器结构体系定义了指令集、编程模式和最近
[新品]
小广播
最新电源管理文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved