从 DSP(数字信号处理器)的曙光时期开始,一句古老的引言依然回响:“哦,不!我们不得不使用最先进的 5µm NMOS!” 说话者的名字已湮没在历史的迷雾中,就像 5µm 芯片设计的远古时代中的许多事物一样。 这句话指的是第一个贝尔实验室 DSP,它的掩膜版实际上经历了 10% 的线性光刻收缩,达到了 4.5µm NMOS(N 沟道金属氧化物半导体)沟道长度,并在 1979 年底采用激进的全定制电路设计完成流片。 我引用的这位设计师意识到,当时最好的技术将是满足当时尖端的数字双音多频接收器的性能需求所必需的。
英特尔的一个并行项目将促成英特尔 2920,该项目在 25 年前的 ISSCC79(1979 年国际固态电路会议)上宣布。1 英特尔 2920 包含片上 (D/A) 数模转换器和 A/D(模数)转换器,但缺少硬件乘法器,很快就从市场上消失了。 NEC 的一个项目促成了 NEC µPD7720——有史以来最成功的 DSP 之一。 贝尔实验室 DSP-1 和 NEC µPD7720 在 ISSCC80 上宣布。2 DSP-1 实现了 5-MHz 的时钟速度,每秒执行 1.25-MB 的乘法累加运算,每个运算周期为四个时钟周期——足以让双音多频接收器滤波器实时执行。
曾经令人生畏的双音多频接收器的性能需求现在变得非常容易,但在过去的 20 年里,新的应用不断涌现,对 DSP 技术提出了新的要求(见图 1)。 Forward Concepts 的总裁兼首席分析师 Will Strauss 表示:“2003 年 DSP 的出货量健康增长了 24%,我们预测 2004 年的增长率会更高,达到 25%。 从长远来看,我们预测到 2007 年的复合增长率将达到 22.6%。”3 因此,游戏规则一直是:提升 DSP 性能,以可接受的成本运行算法,并开辟新的商业市场。 将这种趋势无限期地推演到未来可能过于草率。 事实上,精明的分析师曾多次预测 DSP 的消亡。4
性能要求是否会超过可编程 DSP 架构的跟进能力,从而需要一种新的方法? 或者,如果 DSP 要保持其历史增长曲线,需要什么样的工具和架构? 最终,这些问题将由富有创造力的架构师、市场竞争和应用需求来解答。 本文的目标是通过回顾技术和应用压力如何在过去塑造 DSP 架构,来阐明当前和未来的趋势。
首先,区分数字信号处理和数字信号处理器非常重要。 与模拟信号处理相比,数字信号处理的技术和应用已经成熟,并且比以往任何时候都更具商业价值。 在本文中,DSP 指的是 VLSI(超大规模集成)处理器组件。 因此,数字信号处理中的哪些特殊需求使 DSP 与其他可编程处理器不同? 换句话说,是什么使 DSP 成为 DSP?
实时性要求。 驱动 DSP 架构的基本应用特性是处理实时信号的要求。 实时性意味着信号代表物理或“真实”事件。 DSP 旨在处理实时信号,因此必须能够以信号生成和到达的速率处理样本。 向输出添加明显的延迟或延迟可能是令人反感的。
虽然高实时速率通常要求 DSP“快速”,但快速和实时是不同的概念。 例如,VLSI 设计的模拟必须快速——越快越好——但如果模拟器完成速度稍慢,应用程序也不会失败。 相反,实时应用程序不必快速——例如,医院病房的心脏监护仪不需要快速(30-Hz 采样率),但确实需要实时; 如果样本的处理时间过长,以至于几个小时后,监护仪显示的是五分钟前的数据,那将是灾难性的。
并非所有数字信号处理应用都需要实时处理。 许多应用程序是离线执行的。 例如,为 CD-ROM 母盘制作编码高保真音频使用复杂的数字信号处理算法,但这项工作不是实时完成的。 因此,不需要 DSP——任何旧处理器,只要速度足够快,让工程师可以回家吃晚饭就可以。 总结一下,DSP 最重要的区分特征是它们处理实时信号——信号可以是快速的或慢速的,但它们必须是实时的。
可编程性。 DSP 需要可编程吗? 不:在没有可编程架构的情况下处理数字信号是完全可行的。 然而,在本文中,DSP 指的是可编程 DSP——更具体地说,是指用户可编程 DSP,因为我的偏见是,那里存在最有趣的架构问题。 通常,最苛刻的应用需要非可编程架构。 例如,第一代可编程 DSP 可以执行单通道 32-Kbps ADPCM/DLQ(自适应差分脉冲编码调制/动态锁定量化器)编解码器,而非可编程但深度流水线化的专用定制集成电路可以在相同的技术中运行八个通道。
原因是可编程性是有代价的:可编程芯片中的每个操作——无论多么简单——都需要取指-解码-执行。 这在硅面积和功耗方面投入了很多,例如,左移两位。 当左移两位功能只是一个小构建块,允许其他构建块同时运行时,非可编程架构就会成功。 很容易想象许多构建块同时工作,在非可编程逻辑中实现 10 倍的性能优势。 专用 DSP 硬件的问题在于,您必须为每个应用程序开发新的芯片。 随着开发成本的增加,盈亏平衡点不断向使用可编程架构的方向转移。
更强大的性能。 更高的时钟速度允许在固定的时间间隔内执行更多指令。 1980 年,贝尔实验室团队努力使 DSP-1 以 5 MHz 的频率运行; 今天,在 130-nm 技术中,可以达到超过 500 MHz 的时钟速度。 在固定时间段内更多指令的优势可以用于实现以下一项或多项
第一个案例的例子是 G.729A,一种 CELP(码激励线性预测)语音编解码器。 它允许在低数据速率下获得良好的质量。 该算法每个样本的计算量大约是 G.711 PCM 的 30 倍。
第二个案例的例子是 VoIP(IP 语音)应用,其中 SoHo(小型办公室/家庭办公室)产品支持四个通道,CO(中心办公室)产品支持多达 256 个或更多通道。 通道密度是 VoIP 处理的关键指标。
第三个案例的例子是将 MPEG-2 视频压缩算法应用于解码不同图像分辨率的 DVD。 计算能力与视频分辨率成正比。 将 MPEG-2 从 NTSC(国家电视系统委员会)分辨率扩展到高清不仅需要六倍的处理能力,还需要新的蓝光 DVD 技术,以便更快地从光盘读取数据。
此外,先进的 VLSI 允许可编程架构在固定数据速率下降低固定算法的功耗和/或成本。 先进的技术以多种方式共同作用,使边界向有利于可编程 DSP 的方向移动。 今天需要高度专业化设计的应用程序,明天将成为廉价 DSP 的程序; 今天昂贵且耗电的 DSP,明天将成为廉价商品。 过去 25 年见证了用户可编程 DSP 作为实现数字信号处理应用的主要架构方法而崛起。
DSP 架构受到许多专门应用特性的驱动。 在回到最重要的实时约束的架构影响之前,让我们先看看其中的一些特性。
大多数 DSP 算法中的基本操作是乘法累加
累加器 ¨ 累加器 + X * Y
考虑图 2 中的 FIR(有限脉冲响应)滤波器。 FIR 是处理数字样本以去除或增强信号部分的最重要算法之一。 滤波器输出 y(k) 表示为样本 x(i) 乘以滤波器系数 c(j) 的累加。 系数(或抽头)越多,滤波器的精度就越高——因此希望有尽可能多的样本和系数。 许多重要的算法可以使用乘法累加来实现——例如,视频压缩中使用的变换所需的矩阵乘法。 大多数滤波器的系数都比通用寄存器文件所能容纳的系数多。 因此,x 和 y 操作数以及系数都是基于内存的。5
FIR 内循环计算一个新的 y(k)。 当内循环在 MIPS-I(一种典型的 RISC 汇编语言)中编程时,需要九条指令。 图 3 显示了在 TI TMS320C54xx 汇编中编程的滤波器。 DSP 采用基于内存的操作数和后修改寄存器间接寻址 (*AR2+, *AR3+)、零开销循环计数器 (RPT)(同时测试和递增)以及对循环缓冲区的隐式硬件支持——所有 CISC(复杂指令集计算机)技术。 因此,TMS320C54xx 内循环(其他 16 位 DSP 的典型代表)可以压缩到单条 16 位指令中。 在相当的时钟速度下,RISC 代码的性能几乎慢了 10 倍。 对于早期的 DSP 来说,这种损失无疑意味着大多数应用程序是否可以执行的区别。
支持 DSP 指令单周期执行速率的微架构需要指令总线、X 数据总线和 Y 数据总线。 这种架构通常被称为“改进的哈佛架构”。6 由于在低成本 IC 中实现足够性能所需的权衡,DSP 成为处理器分类中的“穷亲戚”分支。 这种血统延续了几代人。
实时处理的基本要求确实以基本方式约束了 DSP 架构。 DSP 程序必须在所有情况下都以实时速率维持处理,事实上,程序员必须以某种方式知道这一点已经完成,以便应用程序不会在现场失败。 换句话说,DSP 程序必须确定性地分配实时性。 在桌面 CPU 中常见的、不确定性的来源对于 DSP 程序员来说可能是灾难性的。 例如,页面错误和缓存未命中会导致 CPU 在操作完成时空闲数百个周期。 如果您必须每微秒采样一个值,那么页面错误或缓存未命中可能会导致错过窗口。 因此,DSP 需要固定内存或可以在程序启动后锁定的缓存。 其他不太重要的不确定性示例包括分支预测和函数(如“除法”)的数据相关终止。 虽然对于平均情况来说很好,但 DSP 程序也必须考虑最坏情况。
不仅必须实现实时性的确定性分配,而且传统上 DSP 使实现这一点变得简单明了。 在较新的 DSP 中,实时分配确实可以在编译时知道,但通常需要非常仔细的分析和迭代编程才能实现期望的结果。
为了使讨论更贴近实际,让我们用一个真实的 DSP 来举例说明。 TI 的 TMS320C54xx 针对手机市场,于 1994 年推出; 从某种意义上说,它是 TI 16 位 DSP 产品线的成果,该产品线始于 1983 年推出的 TMS32010,并经历了 'C1x、'C2x、'C2xx 和 'C5x 世代,最终发展到 'C54xx。 虽然没有保持严格的兼容性,但后续架构足够接近,足以让 TI 像英特尔对 x86 系列所做的那样,随着每个新产品的迭代迁移其不断增长的客户群。
早期的 TI DSP 牺牲了很多性能来提高易用性。 多年来,还纠正了许多其他缺点,例如缺少累加器保护位。 表 1 显示了 TMS320C54xx 如何解决此处讨论的每个 DSP 功能。 为了便于后续比较,还列出了 TMS320C62xx。
|
TMS320C54xx | TMS320C62xx |
推出年份 | 1994 | 1997 |
架构 | 16 位 DSP | VelociTI。 VLIW RISC-DSP。(8)32 位指令。 |
流水线阶段 | 6 | 11 |
指令 | 130 | 80 |
特殊寄存器数量 | 40 | 10 |
0.15µm 工艺下的时钟速度 | 160 MHz | 300 MHz |
0.15µm 工艺下的 MMAC | 160 | 600 |
乘法累加指令 | 是 | 否 |
后修改指针 | 是 | 是 |
零开销循环 | 是 | 否 |
循环缓冲区 | 是 | 是 |
TI DSP 产品线中正在发生另一种形式的“积累”,除了乘法累加算术运算之外:到 1990 年代中期,TI 架构已经增长到 130 多条指令。 新的专用指令是提高性能的一种方法——早期 DSP 曾经用来实现成本目标的方式。 将新指令打包到 TMS320C54xx 负担沉重的指令集中变得困难。 时钟速度可以随着时间的推移而提高,但如果 CISC 指令的增长持续下去,就无法充分利用先进技术。 DSP 架构需要以某种方式找到利用后代 IC 技术的额外晶体管来提高性能的方法。 更深的流水线几乎没有好处,因为更深的流水线必须使所有关键路径受益,而 CISC 指令有许多复杂的关键路径。 另一种策略,VLIW(超长指令字)并行性,通过并行执行多条指令来提高性能。 VLIW 在 CISC 指令集上相对无效,因为很难识别出并行执行的常用指令。
同样重要的是要注意,编译器在复杂的 16 位 DSP 指令集方面几乎没有取得成功。7 然而,随着更高的时钟速度和更大的本地内存允许更大的程序,对良好 DSP 编译器的需求变得至关重要。 因此,16 位 DSP 已经耗尽动力:它太复杂,无法通过摩尔定律扩展性能,也太复杂,无法支持良好的编译。 虽然 'C54xx 使用全定制 0.15µm 电路设计以 160 MHz 的频率运行,但 StrongARM RISC 在 0.18µm 工艺下突破了 600 MHz。
面对这场危机,TI 于 1997 年推出了全新的 32 位 VelociTI 指令集及其 TMS320C62xx 架构。 TMS320C62xx 作为八发射 VLIW 架构获得了广泛宣传(因此,实际指令长度为 8 x 32 或 256 位,并且可以在芯片上并行执行八条 32 位指令)。 同样重要的是,但较少被提及的是,每条指令都是相对简单的 32 位类 RISC 指令。 事实上,具有讽刺意味的是,自 1990 年代中期以来,RISC 就包含了乘法累加指令,但 TI——这家出货乘法累加器比任何供应商都多的公司——选择通过要求乘法后跟加法指令来实现常见的 DSP 内核,从而“超越 RISC”。8 我将新的类 RISC DSP 指令集称为“RISC-DSP”。
为了说明 RISC-DSP,让我们回到 FIR 滤波器程序。 我们看到,在 DSP 情况下,内循环的指令计数比传统 RISC 的情况好九倍。 但是请记住,今天的时钟速度是 1980 年代 DSP 开始走 CISC 道路时的 100 倍。 因此,RISC 可以比 1980 年代的 DSP 快近 10 倍的速度执行 FIR,但速度只有相同时钟速度的优化 DSP 架构的十分之一——当然,前提是 RISC 可以提供可锁定的缓存和其他避免不确定实时行为的方法。
这种 10 倍的优势是 RISC 不应该放弃的。 RISC 代码的性能可以通过一系列扩展来提高。 表 2 说明了传统 RISC 性能和传统 DSP 性能只是 FIR 滤波器性能谱上的两个点。 在 1980 年,为了满足最低性能目标,需要将刻度盘一直转到“DSP”; 今天,架构师可以选择频谱上性能较低的不同点。 在今天的时钟速度下,RISC-DSP 性能对于许多应用来说已经足够,并且还具有其他优势。 来自通用寄存器文件的源和目标很容易在 32 位 RISC-DSP 指令中编码,从而使编译器更成功。 将数据加载与执行分离可以实现更高的时钟速度,因为数据可以预加载到通用寄存器文件中。 对于每个特殊功能,都需要仔细研究潜在的指令节省数量、关键路径影响、中断开销,当然还有编译。
内循环指令计数 | |
MIPS-I(简单 RISC 基线) | 9 |
增量 DSP 功能 | |
乘法累加指令(目标) | 7 |
后修改指针 | 5 |
循环缓冲区指针 | 4 |
零开销循环指令 | 3 |
VLIW(并行执行、样本加载、系数加载) | 1 |
总而言之,32 位 RISC-DSP 指令集已将 DSP 转移到历史性的 RISC 技术学习曲线上。
我们已经看到,对良好工具和持续性能扩展的需求迫使 DSP 架构师打破过去复杂的 16 位指令集。 然而,RISC-DSP 真正在结合了“RISC 任务”和“DSP 任务”的应用中取得了成果。 此类应用程序正在随着数据包网络上的 DSP 应用程序而激增。
一个重要的例子是近未来的 3G 无线手机,具有视频通信和语音识别功能。 表 3 列出了关键任务,将它们分为传统 RISC 任务或传统 DSP 任务。 我们看到,大约 200 MHz 的单个 RISC-DSP 具有足够的性能来完成所有任务。9 在此应用中可实现的重要优势是不需要单独的 RISC 和 DSP 芯片——或单独的 RISC 和 DSP 内核。 由于数据不需要在两个不同的子系统之间通信,因此获得了显着的架构效率。 这种效率转化为硬件和性能优势,从而降低了成本和功耗。 因为这是一种手持式消费设备,所以节省功耗和成本的机会至关重要。
处理任务 | RISC-DSP 工作负载 |
CDMA EVRC 语音编解码器 | 38 Mhz |
自动增益控制和 MIC 阵列 | 7 Mhz |
声学回声消除器(32 毫秒窗口) | 10 Mhz |
MP3 解码 | 32 Mhz |
音频混音器 | 2 Mhz |
MPEG-4 QCIF 解码 (15 FPS) |
16 Mhz |
MPEG-4 QCIF 编码 (15 FPS) | 62 Mhz |
语音识别器(有限词汇量) | 不适用 |
通信协议 (384 KBPS) | 10 Mhz |
QVGA 渲染 (15 FPS) | 16 Mhz |
I/O | 2 Mhz |
RTOS 和 java 虚拟机 | 5 Mhz |
总计 | 200 MHz |
来源:Hays, W. P., Hanna, C., and Probell, J. LX5380: RISC-DSP for new Internet applications. Microprocessor Forum (2001 年 10 月)。 |
在通用处理器上合并 DSP 应用和 RISC 应用的关键障碍是对确定性响应时间的需求。 RISC 处理器通常支持操作系统,这使实时问题变得复杂。 然而,分组网络在一定程度上放宽了实时约束:样本以数据包的形式到达; 因此,实时响应速率是(有点不规则的)数据包到达速率。 例如,每秒通过 1 GigE(千兆以太网)传输 80,000 个数据包。 MontaVista 赞助的 Linux 抢占式内核保证了在多个 CPU 上最坏情况下的内核抢占延迟小于 1 毫秒。 VxWorks 保证了在 500-MHz Pentium 上几微秒的中断响应时间。 因此,DSP 应用现在通常可以在主要的实时操作系统下运行。
西门子 Tricore 值得认可为首批 RISC-DSP 之一。 “Tri”表示微处理器、DSP 和微控制器功能组合在一个通用处理器中。 英特尔和 Analog Devices 最近合作构建了英特尔 MSA(微信号架构)。 第一个产品 ADSP-21535 (Blackfin) 似乎是针对 3G 手机的。 StarCore 和 Philips Trimedia 是另外两个高性能 RISC-DSP 架构,每个架构都具有 VLIW 实现。
从 RISC 方面来看,所有供应商都在考虑数字信号处理要求:ARM 带有 “E” 扩展,日立 SH-DSP 现在进入第三代,IBM 的 PowerPC 带有 Book E。 MIPS 最近发布了 CoreExtend。 Jonah Probell 已经证明,带有 CoreExtend 的 DSP 扩展可以在音频应用上实现 3 倍的加速。10
应用于 RISC-DSP 指令集的 VLIW 架构为提高性能提供了一条重要的途径,但这些架构的硅成本不可忽略。 虽然 TI TMS320C62xx 数据路径中的八个功能单元的功能远远超出 'C54xx,但当应用于直接形式 FIR 等典型情况时,八发射 'C62xx 架构使用 256 位指令来完成 'C54xx 可以用 16 位完成的工作。 额外的硅成本也扩展到数据路径元素以及维持八个功能单元所需的寄存器文件上的 15 个端口。 因此,TI 的 VelociTI 产品定位于高性能应用,同时对价格和功耗不敏感。 在 VLIW 架构完全淘汰旧的 16 位 DSP 之前,还需要技术的另一次转折。
H.264 编解码器是需要 VLIW DSP 的应用程序的一个示例。 UB Video 已经为 600-MHz TI TMS320DM642 开发了 H.264 解码器软件。 该器件使用 'C64xx 内核以及专用的音频和视频接口。 它能够以八位精度实现 4,800 MMAC(每秒百万次乘法累加运算)。 UB Video 软件支持 SDTV(标准清晰度电视)分辨率的解码。 H.264 解码器 IC 支持大量的 MPEG-2 编码 DVD,以及其他编解码器和 ITU-T/ISO 标准本身的未来发展,这一点非常重要。 TI DSP 视频成像全球经理 Eric Braddom 认为 “在这个阶段,可编程性至关重要”,这从技术和商业角度来看都是可以理解的。11
与此同时,在使用 RISC-DSP 指令集的 VLIW 框架内,仍然有架构创新的空间。 H.264 在 DVD 市场中的前景在于其高清晰度 (1080i, 720p) 解码的潜力。 目前,H.264 中的高清分辨率超出了 600-MHz 'DM642 的能力。 TI 宣布它将应用其即将推出的 1-GHz DSP。 其他高端 VLIW DSP,如 Philips Trimedia,具有五指令发射能力,它们并没有等待,预计很快就会解决高清问题。 其他竞争对手将降低可编程性,转而采用 MPEG-2 和 H.264 的专用硬件。
要了解 DSP 架构离“成熟”还有多远,看看 Hennessy 和 Patterson 的教科书附录 C “架构调查” 就会让人大开眼界。12 作者比较了五种 RISC 架构。 在对使用成熟基准测试的编译器性能进行十年研究之后,我们发现 RISC 架构的相似之处多于不同之处。 DSP 离 “附录 C 状态” 还很远,但现在 DSP 应用已成为主流,RISC 供应商和 DSP 供应商都在向 RISC-DSP 靠拢,软件开发成本的不断增加——以及 Berkeley Design Technology (BDTI) 的 BDTImark2000 和 EEMBC (Embedded Microprocessor Benchmark Consortium) 等用于衡量设计进度的良好基准的出现——将推动 DSP 架构变得更加相似,这与 RISC 一代人之前走过的道路并无二致。
只要可编程 DSP 架构能够满足应用的成本和功耗目标,它将是首选解决方案。 但是,那些无法满足的应用呢? 在桌面市场中,应用程序和系统软件似乎落后于 VLSI 功能; 在数字信号处理中,“更快/更便宜/更低功耗” 的需求始终推动着 DSP VLSI 的发展。 Nick Tredennick 认为,“嵌入式系统市场中零成本、零功耗和零延迟细分市场的领先优势” 将推动 DSP 走向动态逻辑设计。13 事实上,这不是一个非此即彼的决定:可编程 DSP 可以通过专用硬件进行扩展,无论是经典固定协处理器还是可重构逻辑。 今天开发可重构 DSP 最引人注目的努力是 Altera 的 Code:DSP 计划。 ARM 或 Nios 处理器可用于为 Altera 的 DSP IP 添加可编程性。 FPGA(现场可编程门阵列)供应商 Altera 和 Xilinx 提供具有巨大数据并行性的 DSP 解决方案,这些解决方案能够在单个周期内执行整套 FIR 滤波器乘法运算。 由于 Altera 和 Xilinx 部件的成本相对较高,因此它们仅适用于对成本最不敏感的苛刻应用。 随着硅成本的降低,FPGA 可能会占据更大的市场份额。
数字信号处理的应用比以往任何时候都更加普遍。 自然数据类型的处理已成为计算的主要角色之一。 这些应用由 16 位 DSP 架构开启,这些架构经过高度专业化,以低成本满足性能要求。 在 1990 年代初期,16 位指令集遇到了瓶颈,需要突破到新的 32 位 RISC-DSP 才能继续扩展性能。 这种突破既是技术进步所必需的,也是技术进步所实现的:新的 32 位 DSP 能够以适度的硅成本提高性能,并提供更好的软件开发工具。
当前的趋势是嵌入式 RISC 和 DSP 架构趋于融合,从而形成更标准化的数字信号处理可编程架构。 这种趋势受到 DSP 架构研究的成熟和第三方软件成本的驱动。 诸如 VLIW 之类的技术,在必要时辅以专用硬件,将继续扩展可编程 DSP 的范围,并在未来保持良好的发展势头。
为了冒险回答我在一开始提出的问题,DSP 不会消失,但——由于它们自身的成功——将作为计算机架构的一个独立分支而消失。
我很高兴感谢 Jeff Bier 和 Berkeley Design Technology (BDTI) 借给我一本《DSP 处理器买家指南》,以帮助我进行背景研究。 我还要感谢 Ultra Data 的 Jonah Probell 对本文的帮助。
1. ISSCC 技术论文摘要 XXII,1979 年 2 月。
2. ISSCC 技术论文摘要 XXIII,1980 年 2 月。
3. Strauss, W. Forward Concepts。 为本文提供的引言。
4. Tredennick, N. DSP 的死亡。 2000 年 6 月 6 日; 参见:http://www.ttivanguard.com/dublin/dspdealth.pdf。
5. 输入样本是基于内存的,而不是来自 I/O 寄存器,因为它们是循环重用的。
6. 二战计算机先驱霍华德·艾肯根据使用的总线数量对处理器进行分类。 根据这种分类,DSP 不是 “改进的” 哈佛架构。 事实上,它们是 “Class III” 艾肯机器。
7. 如何将 130 多条指令打包到 16 位中? 使用大量的特殊寄存器。
8. 下一代 'C64xx 恢复了乘法累加运算。
9. 语音识别未包含在最坏情况负载的统计中,因为它是一个离线功能。
10. Probell, J. 通过扩展嵌入式处理器的指令集来提高应用程序性能。 DesignCon 2004; 参见:http://www.ultradatacorp.com/publications.html。
11. Yoshida, J. TI 和 UB Video 在 H.264 解码方面抢先一步。 EE Times(2002 年 12 月 2 日); http://www.eetimes.com/semi/news/OEG20021202S0048。
12. Hennessy, J. L. 和 Patterson, D. 计算机体系结构:定量方法,附录 C。Morgan Kaufman,旧金山:CA,1996 年。
13. 参见参考文献 4。
W. 帕特里克·海斯 ([email protected]) 是 Ultra Data Corporation 的联合创始人兼 VLSI 工程副总裁,该公司是位于马萨诸塞州沃尔瑟姆市的可授权处理器 IP 开发商,致力于高清视频处理。 此前,Hays 是 Lexra 的联合创始人兼首席技术官,他在 Lexra 领导定义了多个高性能 CPU 微架构,并创建了 RISC 架构的 DSP 和数据包处理扩展。 在 Lexra 之前,Hays 在 TranSwitch 和 Polycom (PictureTel) 担任总监级职位,在那里他领导开发了用于实时电信和视频应用的新型可编程架构。 在贝尔实验室,Hays 是 DSP32xx 的首席架构师,DSP32xx 是世界上第一个具有片上浮点运算的处理器。 他还管理了开发第一个定点 DSP16 的架构团队。 他是 11 项美国专利和专利申请的共同发明人。 他获得了哈佛大学物理学学士学位和麻省理工学院物理学博士学位。
最初发表于 Queue vol. 2, no. 1—
在 数字图书馆 中评论本文
William J. Dally, Ujval J. Kapasi, Brucek Khailany, Jung Ho Ahn, Abhishek Das - 流处理器:可编程性和效率
许多信号处理应用都需要效率和可编程性。例如,3G 蜂窝基站中的基带信号处理需要数百 GOPS(每秒十亿次运算,即吉 operations per second),在几瓦的功率预算下,效率约为 100 GOPS/W(每瓦 GOPS)或 10 pJ/op(每操作皮焦耳)。同时,为了适应不断发展的标准、支持多种空中接口以及跨不同空中接口动态调配处理资源,还需要可编程性。数字电视、监控视频处理、自动光学检测以及移动摄像头、便携式摄像机和 3G 蜂窝手机也有类似的需求。
Homayoun Shahri - 算法到 DSP 架构的映射
我们复杂的世界以信息的表示、传输和存储为特征——而信息主要以数字形式处理。随着 DSP(数字信号处理器)的出现,工程师能够相对容易地实现复杂算法。今天,我们在周围随处可见 DSP——在汽车、数码相机、MP3 和 DVD 播放器、调制解调器等等中。它们在复杂系统中的广泛使用和部署引发了 DSP 架构的革命,这反过来又使工程师能够实现日益复杂的算法。
Gene Frantz, Ray Simar - 处理器与处理
数字信号处理是一项隐形技术。从您的手机到火星探测器,它都是核心使能技术。它的作用远不止于实现一次性的突破性产品。它提供了不断增强的功能;比较拨号调制解调器的性能提升与近期 DSL 和有线调制解调器的性能提升。值得注意的是,数字信号处理已变得无处不在,但鲜为人知,并且大多数用户甚至没有意识到它是什么。