微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 可配置处理器开发原理

可配置处理器开发原理

时间:04-23 来源:互联网 点击:

该技术的缺点是超标量处理器用于完全复制处理器执行部件的硬件开销大,而且程序代码中缺少指令级并行性。尽管4路超标量处理器设计时可以在每个时钟周期发射4个操作, 但是实际上从通用程序代码中抽取的平均指令级并行性通常低于两个操作。

第二种方法是采样称为超长指令字VLIW的技术来保证处理器每个时钟周期发射多个操作。该方法采用一个非常长的指令字来对多个操作进行编码,有时每个指令字可以达到几百位,多个操作可以同时发射到VLIW处理器的多个执行部件。VLIW处理器的编译器负责找出应用程序代码中的指令级并行性,VLIW处理器编译器通常具有比较高的能力来识别程序中的并行性,因为编译器扫描指令的窗口范围比超标量处理器要大,而超标量处理器是采用指令译码和发射部件来对指令代码的并行性进行调度。VLIW技术从处理器硬件开销的角度来说是非常有效的,然而VLIW处理器会造成指令代码的剧烈膨胀(故需要更大的存储器),因为每条VLIW指令字都非常长,而且VLIW编译器经常不能找到足够的目标程序代码中的指令级并行性来保证处理器中的每个执行部件都保持忙碌状态。因此,VLIW处理器由于带有与代码相关的特性以及会耗尽片上的指令存储器,故对深度嵌入式应用的处理器而言也不是一个理想的选择。

因此,处理器设计人员开发了一种变种VLIW结构,称为可变长度指令扩展FLIX技术,用于Xtensa处理器。和VLIW指令一样,FLIX指令可以将多个独立的指令操作进行编码,变成一个FLIX指令字,该指令字宽度为32位或者64位,如图3所示。和所有设计人员定义的TIE指令一样,FLIX指令均是可选择的,并且它们可以和Xtensa处理器现有的16和24位指令自由地混合在一起。因此,采用FLIX指令就避免了代码膨胀问题,同时应用程序代码执行速度更快,而不是使得程序代码变得很长。

由于提高了输入/输出带宽和计算性能,因此基于Xtensa 处理器的片上系统SOC设计通常可以以比基于固定指令集体系结构ISA的处理器更低的时钟频率进行运行,这些低频的时钟频率可以保证系统有更低的SOC系统功耗。然而,Xtensa处理器还可以通过扩展的内部时钟门控技术来保证系统有更低的系统功耗,时钟门控技术是由TIE指令进行自定义扩展的。

由于微处理器是由指令进行驱动的,因此可以通过对处理器指令执行流水线中的指令进行分析来确定在某些时间处理器的哪些部件处于运行状态。这种分析通常需要几十亿个系统仿真时钟周期,这样可以让Xtensa设计人员在处理器设计时通过增加细粒度时钟门控来关闭那些指令执行过程中没有执行到的处理器单元部件。进一步,如果处理器没有执行到的TIE操作,那么Xtensa就可以对TIE扩展定义的整个系统硬件关闭时钟。因此,Xtensa处理器可以拥有几百个不同的门控时钟域,这样可以真正使得微处理器的活动功耗降到最低。

  可配置处理器设计过程自动化

可配置Xtensa处理器能够让设计人员对处理器进行量身定做以满足片上系统SOC中的特定任务。Xtensa设计流程,如图4所示。

Xtensa 处理器生成器同时可以针对特定配置和扩展,自动生成完整而有效的软件工具,包括编译器、指令集仿真器、调试器、操作系统接口等软件环境。在处理器配置信息完整的情况下,处理器生成器可以在一个小时左右生成一颗新处理器的RTL设计和软件环境。

  结论

同标准处理器一样,可配置处理器也可以建立了一个完整的可编程的设计环境,系统软件工具链可以自动产生,开发人员可以充分利用了扩展技术为应用需要来构建微处理器。

短时间内,标准处理器和可配置处理器将共存。长久看来,可配置处理器因为其可以进行架构的配置和扩展,故而能更加适应后PC时代多种应用的需求,而得到越来越广泛的应用。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top