Tensilica增强Xtensa系列, 添加新硬件选项、总线桥和软件工具

本文作者:admin       点击: 2008-01-30 00:00
前言:
Tensilica日前宣布,完成对其Xtensa可配置处理器系列(Xtensa 7和Xtensa LX2)进行升级,添加新硬件选项和软件增强工具,使其适合更多SoC(片上系统)设计工程师的需求。添加功能包括支持新型、更小通用寄存器文件、一个新型整数乘法器和除法器运算单元、2种新AMBA™(高级微控制器总线架构3.0)总线桥,以及一款易用的新配置工具,该工具可分析C/C++源代码,并可自动建议VLIW(超长指令字)指令扩展,从而代码性能比通用代码的提高30%-60%。所有新功能为设计工程师提供最高生产能力可配置处理器设计环境,自动化确保每颗处理器设计从结构上皆是正确。

Tensilica总裁兼CEO Chris Rowen表示,“新一代产品代表了Tensilica Xtensa处理器产品线在3个方面显著提高,一是对深入嵌入式‘数据引擎’可配置性更加倾向性支持;二是对高端系统更加丰富支持;三是显著增强Tensilica处理器分析、建模和软件工具。Tensilica Xtensa处理器系列已广受关注。所有增强功能既帮助已有Xtensa用户设计更加复杂SoC产品,又使新的设计工程师们用比过去更少设计力量和设计时间取得可配置处理器能带来的全部优点。”

Tensilica市场副总裁Steve Roddy表示,“Xtensa可配置处理器结构非常灵活,目前在多种功能中进行生产,诸如简单无高速缓存控制器、中型Linux应用处理器、高性能3发射VLIW通用处理器、音频DSP(数字信号处理器)、视频DSP引擎、高性能图像处理器和高性能网络处理器等。其他任何一种处理器结构都无法与其多功能性相媲美。”

新硬件选项
Tensilica发布五种最新硬件选项包括:一个16-入的寄存器文件、一个浮动的异常矢量选项、一个小面积乘法器、一个整数除法器、以及一种新兼容AMBA桥接器。

首先,Tensiilca在Xtensa处理器中除已有32-入和64-入可配置选项外,增加一个小16-入主寄存器文件,使得在实例化一颗非常小的处理器IP核时可得到比8位和16位微控制器更小面积和更低功耗,而性能、灵活性和功能相当于一颗32位控制器。
其次,通过添加浮动异常矢量,Tensilica使客户们能够在流片后通过软件变动异常和中断句柄存储器位置。该功能赋予SoC设计工程师更多灵活性,并简化系统设计。
第三,Tensilica增加一个小面积、多周期32x32乘法器配置选项,使一种Xtensa配置设计面积可以非常小,但在乘法应用方面具备很好性能,如MP3解码。该功能为设计工程师提供一种新选项,比已有单周期、完全流水线32位和16位乘法器配置选项面积更小,比用纯软件模拟乘法指令性能更高。
第四,Tensilica添加一个小面积除法器配置选项,仅需4000门。该选项提供一种标准化、强大方式来提高增强型数字化应用性能,诸如那些运行在GPS(全球定位卫星)控制器和实时控制代码等典型伺服、发动机和引擎控制应用方面。
最后,Tensilica添加AMBA 3 AXI桥接器作为一个点击可选配置选项。这一选项,加上已有AMBA 2 AHB-lite(先进高性能总线子集)桥接器选项,使设计工程师能够无缝将Xtensa处理器嵌入到基于AMBA系统中,从而简化Xtensa处理器与其它AMBA外围设备的共同使用。

软件工具的增强
Tensilica在其软件开发包和基于Eclipse的Xtensa Xplorer™设计开发环境添加很多显著增强功能,使其对那些从未使用过可配置处理器设计工程师来说更简单、更快速。处理器配置工具增强最重要一点是针对Xtensa LX2自动可变长度指令扩展(FLIX)生成器,它可对设计工程师目标C代码进行分析,并建议VLIW指令规范,从而显著加速最关键代码。通过允许2条或者3条指令同时执行,FLIX使Xtensa LX2处理器可以像2发射或3发射VLIW CPU一样工作。设计工程师通过采用简单通用VLIW指令能够使通用代码加速40%-60%。该工具使设计工程师无需以缩小面积为目标对代码进行分析,从而显著缩短设计周期。在处理器IP核已经创造了这些新VLIW指令后,软件开发工程师只需要使用标准Xtensa C/C++编译器(XCC)来进行Xtensa IP核编程。 XCC能够自动从C/C++代码中提取指令级并行机制,并在任何可能情况下将操作打包进VLIW指令集中,而程序员不必修改C/C++代码应用程序,就可以利用VLIW指令扩展来加速代码。

第二,Tensilica引入“手工合并编辑器”,这是一款图形化工具,可使SoC设计工程师快速且图形化创造基本运算操作链条和合并,从而提高性能。例如,基础ADD和SHIFT操作可被整合为一条ADD_SHIFT指令在一个周期内运行。该ADD_SHIFT指令能够取代2条串行发射指令(ADD和SHIFT),从而节省了一个时钟周期并节约了代码大小。当与FLIX生成器一起工作时,这条由手工合并编辑器创造的操作合并指令被包含进了处理器IP核的RTL代码中,并被SoC设计工程师以芯片的方式实现。软件开发工程师仅需要使用标准的Tensilica软件开发环境就可以利用这些新指令。合并指令可自动的通过Xtensa C/C++编辑器(XCC)得到,而无需修改C/C++应用程序。

第三,设计工程师利用Xtensa编译器工具链核心部分XCC编译器对C/C++源文件进行编译,能够平均提高20%实时编译速度。这种优化编译器使设计工程师们能够在Xtensa处理器上运行他们的C/C++代码,并利用该处理器所有优化结果。为提高代码执行速度并降低代码大小,XCC采用复杂多级优化,诸如功能内联、软件流水线、静态单一分配形式(SSA)优化、以及其他代码生成技术等。Tensilica增强功能使XCC不再仅是32位处理器最快编译器之一,而且能以特别低代码密度取得最高效率。

第四,Tensilica提供一种新的动态加载器,这是一种在运行时可在不同存储器地址上加载二进制代码软件工具。它很有用,例如,对于音视频编解码器,相同编解码器可以在运行时根据现有的存储器情况被加载到不同的存储空间。

凭借第五种主要增强功能,Tensilica能够使其周期精确指令集模拟器(ISS)加速15%-30%。同样,TurboXiim快速功能模拟器也已经接受多种可改善其执行速度增强功能,而之前TurboXiim已经比ISS执行速度快50倍。

最后,Xtensa软件工具发布同时通过增加Xplorer 基于Eclipse IDE可视化和自动化高速缓存功耗搜索工具,增强Xenergy功耗估计工具功能。Xenergy通过对每条指令和正在执行的应用程序所用存储器存取情况进行分析建模,可产生Xtensa处理器和其存储器子系统代码程序的功耗分析文件。这一增强功能不仅包括了可视化视图和功耗分析文件的比较,而且包括可自动扫描不同指令和数据高速缓存配置,以及显示应用代码程序功耗分析图表,该代码程序是针对每一高速缓存配置特殊Xtensa配置。Xenergy是系统设计工程师工具包中颇有价值一款工具,可在配置一颗Xtensa处理器、编写专用TIE指令、以及决定写存储器和高速缓存配置方面指导设计工程师选择节能方案。

关于Tensilica公司
Tensilica成立于1997年7月,专门为日益增长的大规模嵌入式应用需求提供优化的专用微处理器和DSP内核的解决方案。Tensilica拥有获得专利的可配置和可扩展的处理器生成技术,是唯一一家提供应用最广泛的处理器内核的IP供应商,其产品涵盖微控制器、CPU、DSP、协处理器。通过Diamond系列标准处理器内核我们可以提供现货供应、不需配置的标准处理器内核,也可以通过Xtensa系列处理器内核让客户自己定制所需的处理器内核。所有的处理器内核都支持使用兼容一致的软件开发工具环境、系统仿真模型和硬件实现工具进行开发。
Tensilica公司:www.tensilica.com.