基于RISC结构的多功能嵌入式处理器结构设计.docVIP

基于RISC结构的多功能嵌入式处理器结构设计.doc

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

  基于RISC结构的多功能嵌入式处理器结构设计|第1 由于指令集可以方便地扩展,所以其它一些新的专用功能指令或指令集可以取代或加入到DSP单元之中,使之成为同RISC单元并行的执行单元。通过这种方法,一些专门指令可以方便地扩充到指令集中,例如一些专门的图像和通信处理指令,甚至是实现高精度制造技术中一些算法,如模糊逻辑指令集等。 最优化的指令集设计 鉴于单纯RISC结构的多种局限性,人们提出了许多提高单纯RISC结构性能的措施。32位定点指令格式改进了指令译码设计,加快了程序执行速度,也使得3操作数指令可通过传统设计所固有的共享寄存器集来寻址。然而,通过对典型应用代码的运行分析,在绝大多数情况下,第三个操作数不是寄存器变量而是常量。在一个3操作数指令中,那些常量的长度均大于其对应的操作数域5~8位,大于的部分需要后续指令来装载,这大大地削弱了定长指令的优越性。但通过精心设计,16位+16位和16位+32位变长指令通常能够满足常量操作数的要求。 另外,32位定长的RISC指令集在考虑芯片设计的“硅变效应”方面有很多缺陷。同复杂指令集计算机 (CISC)程序相比,它生成的应用程序代码需要较多的存储空间,这将直接导致目标系统的电路板尺寸增大、成本和功耗的显著提高等问题。在任何情况下,快速指令译码并不能总是保证程序的快速执行,因为必须综合考虑存储器的存取速度。 为平衡考虑代码生成空间的大小和存储器存取速度的影响,必须保证有基本的16位的指令格式,同时具有32位和48位长度的指令格式。在E1-32处理器的16位指令格式中,各用5位对32个目的寄存器和32个源寄存器寻址。另一方面,这5位也可以用来寻址一个直接操作数,在32个“最常用”的常量中找到要用的常量,其它的不常用常量和比较大的数值需要用扩展后的16位或32位来寻址。因为操作码占用6位,所以一个简单的常量装载操作需要一个16位指令(6位操作码+5位常量+5位目的寄存器)。 基于RISC规则的装载/存贮操作只定义了寄存器类型的操作数,并且几乎所有的指令在单周期内完成。这得益于使用了一种只有两级深度的管道机制,它使得一条跳转指令执行后可以进行快速的重装载动作,跳转目标地址在指令缓存内的延时跳转不用一个等待周期即可执行。若使用更深度的管道会减慢程序执行,因为它需要等待数据再装载。 不断扩展的RISC指令集 由于最初RISC结构具有定长、单周期指令等的特征,这就使得其指令集不可能包含乘除等复杂运算,所以乘除运算只好通过软件或片内/外的其它硬件逻辑来实现。为解决这类问题,实现诸如数字信号处理函数等运算,标准的硬件方法是集成RISC CPU和DSP 内核在单芯片内。然而,这样的双核结构实现起来具有一定的复杂性,对两个处理器之间的同步要求非常高,出现了内部总线量成倍增加、要求有双口RAM问题,还可能出现字长和队列紊乱等问题。 500)this.style.ouseg(this) 一个可解决问题的办法是在RISC核指令集中增加一些复杂函数指令,这就解决了上述的大部分问题,但其最大的缺点在于函数的复杂性导致要多个时钟才能执行这样的一条指令。更糟糕的是,当作为一些更复杂函数的一部分时,这些专门函数指令经常要在一个紧凑的循环中被重复执行。由于大量的多周期指令在后台运行,使得实时应用的中断延时成为另一个值得关注的问题。 为彻底解决这些问题,最好能够设计出这样一种体系结构:只含有一套指令集,但可以通过位于单核内的一个独立执行单元来进行复杂指令的扩展。与双核结构不同的是,RISC和独立的指令单元组成单核的指令译码、指令缓存、装载/存储单元、内部总线、CPU寄存器和存储器接口等,所有这些主要的内核资源在单内核指令流执行时均是共用的。 该特点又使CPU重新具备了较高的硅单元面积效率和简单的软件开发模型的优点。但是与一个简单的RISC处理器设计要直接去处理一些复杂指令不同的是,这种结构可以通过单核内的独立执行单元来执行那些专门的复杂指令,这些复杂指令与RISC指令是并行执行的,这样就避免了指令/数据流程迟延和中断延时(二者总是在一起出现)问题。 实现实例 Hyperstone的E1-32结构在一个单核内结合了一个32位的RISC CPU和一个简单的DSP执行单元,它们通过一个单一指令流程来运行程序,该结构可以支持各种DSP算法需求的数据结构,如16/32位整数、16位复数等。RISC指令同时扩充了13条额外指令,用以进行DSP处理和其它特殊计算,如单指令乘法、乘法累加(包括复数运算)、加减(包括定点舍入运算)等。 DSP运算是通过单核内的独立DSP单元来完成, 同时DSP单元和RISC ALU单元的处理过程完全并行,当在DSP和ALU处理的时间内有数据装载/存储操作时,DSP、ALU和装载/存储三个动作也是并行的。A

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档