• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 无线通信 > 技术文章 > 利用可配置处理器来创建多标准多分辨率视频引擎

利用可配置处理器来创建多标准多分辨率视频引擎

录入:edatop.com     点击:

可配置处理器解决了问题

如何在处理器中进行SAD运算呢?有一个方法是编写一个能够同时进行"减-求绝对值-加"计算的指令。这可以将16x16宏模块所需的计算次数从768减少到256。另外,由于一个执行这种综合化简单运算的功能单元一般都能够优化成一个周期,意味着计算周期也被减少到了256。

但是如何执行这个"减-求绝对值-加"指令呢?

在这个时候,就需要可配置处理器了。可配置处理器是嵌入式的,设计者可以配置选项菜单中进行选择,并通过添加特殊应用指令、寄存器文件和接口来扩展处理器功能。

下面是目前的可配置处理器具备的一些可配置和可扩展性功能,传统的固定式处理器是没有这些功能的:

可配置性,有下面的一系列选项可供选择:

·设计者想要或者不想要的指令,包括:16x16相乘或乘法累加、漏斗转换、浮点指令等;

·零耗循环、5或7个步进管线、本地数据加载/存储单元的数量等各种功能;

·是否需要内存保护、内存转换或者一个全内存管理单元(MMU);

·是否需要一个系统总线接口;

·系统总线和本地内存接口的宽度;

·本地内存的数量和大小;

·中断的次数、种类和等级

可扩展性,可自由添加下列由设计者自定义的组件:

·寄存器和寄存器文件;

·多周期、任意复杂功能单元;

·SIMD功能单元;

·将基本型处理器转换成多发射处理器;

·定制能够直接从数据路径读取和写入的接口,例如在处理器内核上的类似于GPIO(通用IO)的端口或管脚,以及可以用来和其它逻辑或者处理器内核进行连接的外置FIFO。

可配置性的优点在于使你可以通过选择你的应用所需的功能选项来构建一个规模适中的处理器,而可扩展性的优点则是让设计者可以通过创造能加快应用速度的指令、寄存器文件、功能单元和接口来定制处理器,使之完全与其视频应用相匹配。但必须注意的是,只有当今先进的可配置处理器才具能提供设计者自定义可扩展性。

利用可配置处理器来构建视频引擎

创建能进行多次运算的功能单元

这一步即是SAD运算和加速SAD运算的内容。

对于可配置处理器来说,要添加这一综合运算功能简直是小菜一碟。它可以添加名为"sub。abs。acc(减-求绝对值-加)"的新指令来进行"相减、求绝对值和相加"运算。如图3所示。

\

图3:进行"相减、求绝对值和相加"运算的新指令

现代的可配置处理器(例如Tensilica的Xtensa处理器)所配的软件工具会自动修改编辑器工具,包括C/C++编辑器、汇编程序、调试器、模仿器和ISS(指令集仿真器)。此时,C编辑器会识别新的C内部指令"sub。abs。acc"并安排相应的指令,调试器则显示sub。abs。acc功能模块中使用的内部信号,同时,汇编程序会将之作为一个新的指令进行处理,而ISS则对之进行周期精确级仿真。

创建新的加载/存储接口

要在如此之大的寄存器文件(和相应的SIMD功能单元)中读出和写入数据,要求可以进行大规模的加载和存储。还是在可配置处理器中,设计者可以自定义加载和存储指令来直接在自定义寄存器文件中加载和存储数据。接着,编辑器会自动生成对应于这个加载/存储接口的加载/存储指令,从而将数据从内存中加载到寄存器文件中。

图6是处理器数据路径的更新图。如图中所示,硬件生成工具自动生成大的自定义寄存器文件和加载/存储接口以及所有相关的正向控制和旁路逻辑。特别需要注意的是这些工具还会生成硬件逻辑来将数据从基本寄存器文件转移到用户自定义的寄存器文件中。

作者:Sumit Gupta    来源:Tensilica

上一篇:EOC技术凸显其适用性,未来该如何持续演进
下一篇:解决户外电源节能减排的方法

手机天线设计培训教程详情>>

手机天线设计培训教程 国内最全面、系统、专业的手机天线设计培训课程,没有之一;是您学习手机天线设计的最佳选择...【More..

射频和天线工程师培训课程详情>>

  网站地图