可配置处理器技术入门课程系列(二):基本架构和开发流程

2017-02-07 电子工程世界
分享到:

基本架构和开发流程
 
    以Tensilica的Xtensa可配置处理器架构为例,探讨可配置处理器的开发原理。
 
Xtensa可配置处理器架构是可配置可扩展的微处理器技术,可以用于片上系统SOC设计。现在的SOC需要更高系统性能、更高输入/输出带宽和更高功耗利用率,
Xtensa架构均实现提供相应的解决方案。系统设计师可根据各自的应用需求,首先配置和选择架构元素,比如:内部cache大小,总线位宽,FPU单元, DSP引擎,中断数量…
进而针对应用扩展添加全新的指令、寄存器和I/O端口来设计具有专用功能的处理器内核。这种方法甚至能提供与手工RTL设计的硬逻辑有可比性的性能、尺寸和功耗等特性。通过图1可以看到Xtensa处理器的架构。
 
可配置处理器技术入门第二讲 1
 
Xtensa处理器产生器可通过TIE语言增加新的功能来自动产生用户所需要的硬件,产生硬件是经过验证的RTL代码格式。自动产生的处理器RTL代码可以和现在的SOC设计流程无缝结合,用于逻辑综合。处理器产生器还可建立与产生的处理器相匹配的系统软件。
 
可以说Tensilica可配置处理器技术的核心,是在于可伸缩可扩展的Xtensa处理器架构和功能强大的自动化生成工具—处理器生成器。
TIE语言(Tensilica Instruction Extension) 
TIE语言是Tensilica创建的一种简化的Verilog语言,可以描述全新的寄存器、执行单元、指令和I/O接口。被连同处理器配置选项一同输入处理器生成器后,可以产生定制的处理器及相关的工具链。
TIE例子:
operation BYTESWAP {out AR outR, in AR inpR}{}
{
 
assign outR =
 
 
{inpR[7:0],inpR[15:8],inpR[23:16],inpR[31:24]};
}
 
 
// C language syntax
#include <xtensa/tie/TIEFilename.h>
int a, b;
. . .
a = BYTESWAP(b);
. . .
 
 
可配置Xtensa处理器能够让设计人员对处理器进行量身定做以满足片上系统SOC中的特定任务。Xtensa设计流程,如图2所示。
可配置处理器技术入门第二讲 2
 
Xtensa 处理器生成器同时可以针对特定配置和扩展,自动生成完整而有效的软件工具,包括编译器、指令集仿真器、调试器、操作系统接口等软件环境。在处理器配置信息完整的情况下,处理器生成器可以在一个小时左右生成一颗新处理器的RTL设计和软件环境。
 

×
官方微信