DSP是什么
| 数字信号处理 | 数字信号处理器 | DSP处理器与通用处理器的比较 |
Digital Signal Processing 数字信号处理
作为一个案例研究,我们来考虑数字领域里最通常的功能:滤波。简单地说,滤波就是对信号进行处理,以改善其特性。例如,滤波可以从信号里清除噪声或静电干扰,从而改善其信噪比。为什么要用微处理器,而不是模拟器件来对信号做滤波呢?我们来看看其优越性:
模拟滤波器(或者更一般地说,模拟电路)的性能要取决于温度等环境因素。而数字滤波器则基本上不受环境的影响。
数字滤波易于在非常小的宽容度内进行复制,因为其性能并不取决于性能已偏离正常值的器件的组合。
一个模拟滤波器一旦制造出来,其特性(例如通带频率范围)是不容易改变的。使用微处理器来实现数字滤波器,就可以通过对其重新编程来改变滤波的特性。
信号处理方式的比较
比较因素 模拟方式 数字方式
修改设计的灵活性 修改硬件设计,或调整硬件参数 改变软件设置
精度 元器件精度 A/D的位数和计算机字长,算法
可靠性和可重复性 受环境温度、湿度、噪声、 不受这些因素的影响
电磁场等的干扰和影响大
大规模集成 尽管已有一些模拟集成电路, 但品种较少、集成度不高、价格较高DSP器件体积小、功能强、功耗小、一致性好、使用方便、性能/价格比高
实时性 除开电路引入的延时外,处理是实时的 由计算机的处理速度决定
高频信号的处理 可以处理包括微波毫米波乃至光波信号 按照奈准则的要求,受S/H、A/D和 处理速度的限制
Digital Signal Processor 数字信号处理器
微处理器(Microprocessor)的分类
通用处理器(GPP)
采用冯.诺依曼结构,程序和数据的存储空间合二而一
8-bit Apple(6502),NEC PC-8000(Z80)
8086/286/386/486/Pentium/Pentium II/ Pentium III
PowerPc 64-bit CPU(SUN Sparc,DEC Alpha, HP)
CISC 复杂指令计算机, RISC 精简指令计算机
采取各种方法提高计算速度,提高时钟频率,高速总线,多级Cashe,协处理器等
Single Chip Computer/ Micro Controller Unit(MCU)
除开通用CPU所具有的ALU和CU,还有存储器(RAM/ROM)寄存器,时钟,计数器,定时器,串/并口,有的还有A/D,D/A
INTEL MCS/48/51/96(98)
MOTOROLA HCS05/011
DSP
采用哈佛结构,程序和数据分开存储
采用一系列措施保证数字信号的处理速度,如对FFT的专门优化
MCU与DSP的简单比较
MCU DSP
低档 高档 低档 高档
指令周期(ns) 600 40 50 5
乘加时间(ns) 1900 80 50 5
US$/MIPS 1.5 0.5 0.15 0.1
DSP处理器与通用处理器的比较
考虑一个数字信号处理的实例,比如有限冲击响应滤波器(FIR)。用数学语言来说,FIR滤波器是做一系列的点积。取一个输入量和一个序数向量,在系数和输入样本的滑动窗口间作乘法,然后将所有的乘积加起来,形成一个输出样本。
类似的运算在数字信号处理过程中大量地重复发生,使得为此设计的器件必须提供专门的支持,促成了了DSP器件与通用处理器(GPP)的分流:
1 对密集的乘法运算的支持
GPP不是设计来做密集乘法任务的,即使是一些现代的GPP,也要求多个指令周期来做一次乘法。而DSP处理器使用专门的硬件来实现单周期乘法。DSP处理器还增加了累加器寄存器来处理多个乘积的和。累加器寄存器通常比其他寄存器宽,增加称为结果bits的额外bits来避免溢出。
同时,为了充分体现专门的乘法-累加硬件的好处,几乎所有的DSP的指令集都包含有显式的MAC指令。
2 存储器结构
传统上,GPP使用冯.诺依曼存储器结构。这种结构中,只有一个存储器空间通过一组总线(一个地址总线和一个数据总线)连接到处理器核。通常,做一次乘法会发生4次存储器访问,用掉至少四个指令周期。
大多数DSP采用了哈佛结构,将存储器空间划分成两个,分别存储程序和数据。它们有两组总线连接到处理器核,允许同时对它们进行访问。这种安排将处理器存贮器的带宽加倍,更重要的是同时为处理器核提供数据与指令。在这种布局下,DSP得以实现单周期的MAC指令。
还有一个问题,即现在典型的高性能GPP实际上已包含两个片内高速缓存,一个是数据,一个是指令,它们直接连接到处理器核,以加快运行时的访问速度。从物理上说,这种片内的双存储器和总线的结构几乎与哈佛结构的一样了。然而从逻辑上说,两者还是有重要的区别。
GPP使用控制逻辑来决定哪些数据和指令字存储在片内的高速缓存里,其程序员并不加以指定(也可能根本不知道)。与此相反,DSP使用多个片内存储器和多组总线来保证每个指令周期内存储器的多次访问。在使用DSP时,程序员要明确地控制哪些数据和指令要存储在片内存储器中。程序员在写程序时,必须保证处理器能够有效地使用其双总线。
此外,DSP处理器几乎都不具备数据高速缓存。这是因为DSP的典型数据是数据流。也就是说,DSP处理器对每个数据样本做计算后,就丢弃了,几乎不再重复使用。
3 零开销循环
如果了解到DSP算法的一个共同的特点,即大多数的处理时间是花在执行较小的循环上,也就容易理解,为什么大多数的DSP都有专门的硬件,用于零开销循环。所谓零开销循环是指处理器在执行循环时,不用花时间去检查循环计数器的值、条件转移到循环的顶部、将循环计数器减1。
与此相反,GPP的循环使用软件来实现。某些高性能的GPP使用转移预报硬件,几乎达到与硬件支持的零开销循环同样的效果。
4 定点计算
大多数DSP使用定点计算,而不是使用浮点。虽然DSP的应用必须十分注意数字的精确,用浮点来做应该容易的多,但是对DSP来说,廉价也是非常重要的。定点机器比起相应的浮点机器来要便宜(而且更快)。为了不使用浮点机器而又保证数字的准确,DSP处理器在指令集和硬件方面都支持饱和计算、舍入和移位。
5 专门的寻址方式
DSP处理器往往都支持专门的寻址模式,它们对通常的信号处理操作和算法是很有用的。例如,模块(循环)寻址(对实现数字滤波器延时线很有用)、位倒序寻址(对FFT很有用)。这些非常专门的寻址模式在GPP中是不常使用的,只有用软件来实现。
6 执行时间的预测
大多数的DSP应用(如蜂窝电话和调制解调器)都是严格的实时应用,所有的处理必须在指定的时间内完成。这就要求程序员准确地确定每个样本需要多少处理时间,或者,至少要知道,在最坏的情况下,需要多少时间。
如果打算用低成本的GPP去完成实时信号处理的任务,执行时间的预测大概不会成为什么问题,应为低成本GPP具有相对直接的结构,比较容易预测执行时间。然而,大多数实时DSP应用所要求的处理能力是低成本GPP所不能提供的。
这时候,DSP对高性能GPP的优势在于,即便是使用了高速缓存的DSP,哪些指令会放进去也是由程序员(而不是处理器)来决定的,因此很容易判断指令是从高速缓存还是从存储器中读取。DSP一般不使用动态特性,如转移预测和推理执行等。因此,由一段给定的代码来预测所要求的执行时间是完全直截了当的。从而使程序员得以确定芯片的性能限制。
7 定点DSP指令集
定点DSP指令集是按两个目标来设计的:
使处理器能够在每个指令周期内完成多个操作,从而提高每个指令周期的计算效率。
将存贮DSP程序的存储器空间减到最小(由于存储器对整个系统的成本影响甚大,该问题在对成本敏感的DSP应用中尤为重要)。
为了实现这些目标,DSP处理器的指令集通常都允许程序员在一个指令内说明若干个并行的操作。例如,在一条指令包含了MAC操作,即同时的一个或两个数据移动。在典型的例子里,一条指令就包含了计算FIR滤波器的一节所需要的所有操作。这种高效率付出的代价是,其指令集既不直观,也不容易使用(与GPP的指令集相比)。
GPP的程序通常并不在意处理器的指令集是否容易使用,因为他们一般使用象C或C++等高级语言。而对于DSP的程序员来说,不幸的是主要的DSP应用程序都是用汇编语言写的(至少部分是汇编语言优化的)。这里有两个理由:首先,大多数广泛使用的高级语言,例如C,并不适合于描述典型的DSP算法。其次,DSP结构的复杂性,如多存储器空间、多总线、不规则的指令集、高度专门化的硬件等,使得难于为其编写高效率的编译器。
即便用编译器将C源代码编译成为DSP的汇编代码,优化的任务仍然很重。典型的DSP应用都具有大量计算的要求,并有严格的开销限制,使得程序的优化必不可少(至少是对程序的最关键部分)。因此,考虑选用DSP的一个关键因素是,是否存在足够的能够较好地适应DSP处理器指令集的程序员。
8 开发工具的要求
因为DSP应用要求高度优化的代码,大多数DSP厂商都提供一些开发工具,以帮助程序员完成其优化工作。例如,大多数厂商都提供处理器的仿真工具,以准确地仿真每个指令周期内处理器的活动。无论对于确保实时操作还是代码的优化,这些都是很有用的工具。
GPP厂商通常并不提供这样的工具,主要是因为GPP程序员通常并不需要详细到这一层的信息。GPP缺乏精确到指令周期的仿真工具,是DSP应用开发者所面临的的大问题:由于几乎不可能预测高性能GPP对于给定任务所需要的周期数,从而无法说明如何去改善代码的性能。
DSP硬件结构的特点和软件的特点
硬件结构的特点
1 Harvard结构
程序与数据存储空间分开,各有独立的地址总线和数据总线,取指和读数可以同时进行,从而提高速度,目前的水平已达到90亿次浮点运算/秒(9000MFLOPS)
2 采用流水作业(pipline)
3 独立的硬件乘法器
乘法指令在单周期内完成,优化卷积、数字滤波、FFT、相关、矩阵运算等算法中的大量重复乘法
4 循环寻址(Circular addressing),位倒序(bit-reversed)等特殊指令
使FFT、卷积等运算中的寻址、排序及计算速度大大提高。1024点FFT的时间已小于1μs
5 独立的DMA总线和控制器
有一组或多组独立的DMA总线,与CPU的程序、数据总线并行工作,在不影响CPU工作的条件下,DMA速度已达800Mbyte/s以上
6 多处理器接口
使多个处理器可以很方便的并行或串行工作以提高处理速度
7 JTAG(Joint Test Action Group)标准测试接口(IEEE 1149标准接口)
便于对DSP作片上的在线仿真和多DSP条件下的调试
软件的特点
1 立即数寻址
2 直接寻址
TI公司的TMS320系列芯片将数据存储器分为512页,每页128字。设置一个数据页指针DP(Data
Pointer),用9-bit指向一个数据页,再加上一个7-bit的页内偏移地址,形成16-bit的数据地址。这样有利于大大加快寻址速度。
3 间接寻址
8个辅助寄存器(AR0--AR7),由一个辅助寄存器指针(ARP
3-bit)来指定一个辅助寄存器算术单元(ARAU)作16-bit无符号数运算,决定一个新的地址,装入辅助寄存器中的一个
AR0--AR7的内容相当灵活,可以装入立即数,加上立即数,减去立即数;也可以从数据存储器装入地址;还可以作以下的变址寻址:
将该AR的内容加1或减1,再寻址(循环常用)
将该AR的内容加上或减去AR0的内容,再寻址
将该AR的内容逆向进位加上或减去AR0的内容,再寻址
由于采用反向进位,得以实现位倒序寻址
原序 原地址 位倒序后地址 位倒序
0 000 000 0
1 001 100 4
2 010 010 2
3 011 110 6
4 100 001 1
5 101 101 5
6 110 011 3
7 111 111 7
例:MAC X0,Y0,A X:(R0)+,X0 Y:(R4)+N4,Y0
这条指令命令DSP56300:
将寄存器X0和Y0中的数相乘
结果加到Acc A中
将寄存器R0所指的X存储器地址中的值装入寄存器X0
将寄存器R4所指的Y存储器地址中的值装入寄存器Y0 R0的值加1
寄存器N4的值加给R4
可以看到,运算后的次序符合FFT的蝶形运算的要求
采用循环寻址实现零开销的循环,大大增进了如卷积、相关、矩阵运算、FIR等算法的实现速度
4 独特的乘法指令
DSP开发工具
1 代码生成工具
C 优化编译器
汇编语言工具
汇编器(Assembler)
连接器(Linker)
归档器(Archiver)
交叉引用列表器(Cross-Reference Lister)
2 系统集成及调试环境与工具(以TI为例)
调试器接口(C/Assembly source debugger)
为嵌入式系统的开发提供了丰富的功能与灵活性。该调试器是下面要讨论的软仿真器、评估模块、在线仿真器等的标准接口。
该调试器可以运行在PC或SPARC等平台上,对用C
或汇编语言写的程序提供完全的控制。其代码分析功能通过快速确认最费时的程序段,提示应该将开发时间集中在什么地方
软仿真器(Simulator)
TMS320软件仿真器是一个软件程序,使用主机的处理器和存储器来仿真TMS320
DSP的微处理器和微计算机模式,从而进行软件开发和非实时的程序验证。在PC机上,典型的仿真速度为每秒几百条指令
DSP入门套件(DSK,DSP Starter Kit)
为初学者设计和生产的DSK是一种用以评价DSP平台的廉价的开发工具。在PC机的DOS或Windows下,用户可以使用DSK来作DSP的实验,进行诸如控制系统、语音处理等应用;也可以用来编写和运行实时源代码,并对其作评估;还可以用来调试用户自己的系统
银杏开发、实验系统(DES,Dsp Expirement System)
银杏DES含有TMS320C542-40及相关接口,还特别内置了信号源,附带虚拟示波器和频谱仪软件。采用这套系统使用户对外设的依赖降到最低,仅仅需要一张卡和一套软件就可以进行DSP的开发或实验。
标准评估模块(EVM)
TMS320的评估模块(EVM)是廉价的开发板,用于器件评估、标准程序检查、以及有限的系统调试。EVM是一个PC插件,包括目标处理器、一个小容量的存储器、和有限的外设。EVM可以用来实时运行代码,并与外部系统接口
TMS320硬件仿真器(Emulators)
扩展开发系统(XDS,extended development system)是功能强大的全速仿真器,用以作系统级的集成与调试。
扫描式仿真(Scan-Based
Emulator)是一种独特的、非插入式的系统仿真、集成、调试方法。使用这种方法,程序可以从片内或片外的目标存储器实时执行,在任何时钟速度下都不会引入额外的等待状态
3 实时操作系统
对于简单的DSP任务,用前面介绍的开发工具已能满足开发任务的需要,往往不需要操作系统就可以进行。但当DSP的任务增加和任务的复杂性提高,例如对实时性要求很高的多DSP并行操作的多任务系统,可能就需要某种操作系统来管理系统的资源,安排多任务的执行和任务间的信息交换等
DSP的操作系统SPOX
SPOX是专为DSP系统设计和软件开发而设计的实时多任务操作系统。它提供一组由C语言调用的功能,与所开发的硬件平台无关,从而将DSP的实时应用部分从许多低层的硬件细节中隔离出来。它作为DSP实时应用开发的一个集成环境,完成从新的算法概念出发,直到把应用软件装入产品硬件的整个开发任务
DSP芯片介绍
1 什么是DSP芯片
DSP芯片,也称数字信号处理器,是一种具有特殊结构的微处理器。DSP芯片的内部采用程序和数据分开的哈佛结构,具有专门的硬件乘法器,广泛采用流水线操作,提供特殊的DSP
指令,可以用来快速地实现各种数字信号处理算法。根据数字信号处理的要求,DSP芯片一般具有如下的一些主要特点:
(1) 在一个指令周期内可完成一次乘法和一次加法。
(2) 程序和数据空间分开,可以同时访问指令和数据。
(3) 片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问。
(4) 具有低开销或无开销循环及跳转的硬件支持。
(5) 快速的中断处理和硬件I/O支持。
(6) 具有在单周期内操作的多个硬件地址产生器。
(7) 可以并行执行多个操作。
(8) 支持流水线操作,使取指、译码和执行等操作可以重叠执行。
与通用微处理器相比,DSP芯片的其他通用功能相对较弱些。
2 DSP芯片的发展
世界上第一个单片DSP芯片是1978年AMI公司宣布的S2811,1979年美国Iintel公司发布的商用可编程期间2920是DSP芯片的一个主要里程碑。这两种芯片内部都没有现代DSP芯片所必须的单周期芯片。
1980年。日本NEC公司推出的μPD7720是第一个具有乘法器的商用DSP 芯片。第一个采用CMOS工艺生产浮点DSP芯片的是日本的Hitachi
公司,它于1982年推出了浮点DSP芯片。1983年,日本的Fujitsu公司推出的MB8764,其指令周期为120ns
,且具有双内部总线,从而处理的吞吐量发生了一个大的飞跃。而第一个高性能的浮点DSP芯片应是AT&T公司于1984年推出的DSP32。
在这么多的DSP芯片种类中,最成功的是美国德克萨斯仪器公司(Texas
Instruments,简称TI)的一系列产品。TI公司灾982年成功推出启迪一代DSP芯片TMS32010及其系列产品TMS32011、TMS32C10/C14/C15/C16/C17等,之后相继推出了第二代DSP芯片TMS32020、TMS320C25/C26/C28,第三代DSP芯片TMS32C30/C31/C32,第四代DSP芯片TMS32C40/C44,第五代DSP芯片TMS32C50/C51/C52/C53以及集多个DSP于一体的高性能DSP芯片TMS32C80/C82等。
自1980年以来,DSP芯片得到了突飞猛进的发展,DSP芯片的应用越来越广泛。从运算速度来看,MAC(一次乘法和一次加法)时间已经从80年代初的400ns(如TMS32010)降低到40ns(如TMS32C40),处理能力提高了10多倍。DSP芯片内部关键的乘法器部件从1980年的占模区的40左右下降到5以下,片内RAM增加一个数量级以上。从制造工艺来看,1980年采用4μ的N沟道MOS工艺,而现在则普遍采用亚微米CMOS工艺。DSP芯片的引脚数量从1980年的最多64个增加到现在的200个以上,引脚数量的增加,意味着结构灵活性的增加。此外,DSP芯片的发展,是DSP系统的成本、体积、重量和功耗都有很大程度的下降。
3 DSP芯片的分类
DSP的芯片可以按照以下的三种方式进行分类。
1. 按基础特性分
这是根据DSP芯片的工作时钟和指令类型来分类的。如果DSP芯片在某时钟频率范围内的任何频率上能正常工作,除计算速度有变化外,没有性能的下降,这类DSP芯片一般称之为静态DSP芯片。
如果有两种或两种以上的DSP芯片,它们的指令集和相应的机器代码机管脚结构相互兼容,则这类DSP芯片称之为一致性的DSP芯片。
2. 按数据格式分
这是根据DSP芯片工作的数据格式来分类的。数据以定点格式工作的DSP芯片称之为定点DSP芯片。以浮点格式工作的称为DSP芯片。不同的浮点DSP芯片所采用的浮点格式不完全一样,有的DSP芯片采用自定义的浮点格式,有的DSP芯片则采用IEEE的标准浮点格式。
3. 按用途分
按照DSP芯片的用途来分,可分为通用型DSP芯片和专用型的DSP芯片。通用型DSP芯片适合普通的DSP应用,如TI公司的一系列DSP芯片。专用型DSP芯片市为特定的DSP运算而设计,更适合特殊的运算,如数字滤波,卷积和FFT等。
4 DSP芯片的选择
设计DSP应用系统,选择DSP芯片时非常重要的一个环节。只有选定了DSP芯片才能进一步设计外围电路集系统的其它电路。总的来说,DSP芯片的选择应根据实际的应用系统需要而确定。一般来说,选择DSP芯片时考虑如下诸多因素。
1.
DSP芯片的运算速度。运算速度是DSP芯片的一个最重要的性能指标,也是选择DSP芯片时所需要考虑的一个主要因素。DSP芯片的运算速度可以用以下几种性能指标来衡量:
(1) 指令周期。就是执行一条指令所需要的时间,通常以ns为单位。
(2) MAC时间。即一次乘法加上一次加法的时间。
(3) FFT执行时间。即运行一个N点FFT程序所需的时间。
(4) MIPS。即每秒执行百万条指令。
(5) MOPS。即每秒执行百万次操作。
(6) MFLOPS。即每秒执行百万次浮点操作。
(7) BOPS。即每秒执行十亿次操作。
2. DSP芯片的价格。根据一个价格实际的应用情况,确定一个价格适中的DSP芯片。
3. DSP芯片的硬件资源。
4. DSP芯片的运算速度。
5. DSP芯片的开发工具。
6. DSP 芯片的功耗。
7. 其它的因素,如封装的形式、质量标准、生命周期等。
DSP应用系统的运算量是确定选用处理能力多大的DSP芯片的基础。那么如何确定DSP系统的运算量以选择DSP芯片呢?
1. 按样点处理
按样点处理就是DSP算法对每一个输入样点循环一次。例如;一个采用LMS算法的256抽头德的自适应FIR滤波器,假定每个抽头的计算需要3个MAC周期,则256抽头计算需要256*3=768个MAC周期。如果采样频率为8KHz,即样点之间的间隔为125μs的时间,DSP芯片的MAC周期为200μs,则768个周期需要153.6μs的时间,显然无法实时处理,需要选用速度更快的芯片。
2. 按帧处理
有些数字信号处理算法不是每个输入样点循环一次,而是每隔一定的时间间隔(通常称为帧)循环一次。所以选择DSP芯片应该比较一帧内DSP芯片的处理能力和DSP算法的运算量。假设DSP芯片的指令周期为P(ns),一帧的时间为⊿τ(ns),则该DSP芯片在一帧内所提供的最大运算量为⊿τ/
P 条指令。
5 DSP芯片的基本结构
DSP芯片的基本结构包括:
(1)哈佛结构;
(2)流水线操作;
(3)专用的硬件乘法器;
(4)特殊的DSP指令;
(5)快速的指令周期。
哈佛结构
哈佛结构的主要特点是将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个相互独立的存储器,每个存储器独立编址,独立访问。与两个存储器相对应的是系统中设置了程序总线和数据总线,从而使数据的吞吐率提高了一倍。由于程序和存储器在两个分开的空间中,因此取指和执行能完全重叠。
流水线与哈佛结构相关,DSP芯片广泛采用流水线以减少指令执行的时间,从而增强了处理器的处理能力。处理器可以并行处理二到四条指令,每条指令处于流水线的不同阶段。入图示出一个三级流水线操作的例子。
CLLOUT1
取指 N N-1 N-2
译码 N-1 N N-2
执行 N-2 N-1 N
图4-1 三级流水线操作
专用的硬件乘法器
乘法速度越快,DSP处理器的性能越高。由于具有专用的应用乘法器,乘法可在一个指令周期内完成。
特殊的DSP指令DSP芯片是采用特殊的指令。
快速的指令周期哈佛结构、流水线操作、专用的硬件乘法器、特殊的DSP指令再加上集成电路的优化设计可使DSP芯片的指令周期在200ns以下。
6 DSP系统的特点
数字信号处理系统是以数字信号处理为基础,因此具有数字处理的全部特点:
(1) 接口方便。DSP系统与其它以现代数字技术为基础的系统或设备都是相互兼容,这样的系统接口以实现某种功能要比模拟系统与这些系统接口要容易的多。
(2) 编程方便。DSP系统种的可编程DSP芯片可使设计人员在开发过程中灵活方便地对软件进行修改和升级。
(3) 稳定性好。DSP系统以数字处理为基础,受环境温度以及噪声的影响较小,可靠性高。
(4) 精度高。16位数字系统可以达到的精度。
(5) 可重复性好。模拟系统的性能受元器件参数性能变化比较大,而数字系统基本上不受影响,因此数字系统便于测试,调试和大规模生产。
(6) 集成方便。DSP系统中的数字部件有高度的规范性,便于大规模集成。
7 DSP芯片的应用
自从DSP芯片诞生以来,DSP芯片得到了飞速的发展。DSP芯片高速发展,一方面得益于集成电路的发展,另一方面也得益于巨大的市场。在短短的十多年时间,DSP芯片已经在信号处理、通信、雷达等许多领域得到广泛的应用。目前,DSP芯片的价格也越来越低,性能价格比日益提高,具有巨大的应用潜力。DSP芯片的应用主要有:
(1) 信号处理--如,数字滤波、自适应滤波、快速傅里叶变换、相关运算、频谱分析、卷积等。
(2) 通信--如,调制解调器、自适应均衡、数据加密、数据压缩、回坡抵消、多路复用、传真、扩频通信、纠错编码、波形产生等。
(3) 语音--如语音编码、语音合成、语音识别、语音增强、说话人辨认、说话人确认、语音邮件、语音储存等。
(4) 图像/图形--如二维和三维图形处理、图像压缩与传输、图像增强、动画、机器人视觉等。
(5) 军事--如保密通信、雷达处理、声纳处理、导航等。
(6) 仪器仪表--如频谱分析、函数发生、锁相环、地震处理等。
(7) 自动控制--如引擎控制、深空、自动驾驶、机器人控制、磁盘控制。
(8) 医疗--如助听、超声设备、诊断工具、病人监护等。
(9) 家用电器--如高保真音响、音乐合成、音调控制、玩具与游戏、数字电话/电视等
DSP芯片开发和产品应用
一、DSP程序开发
为了使DSP有效运行、必须要用能充分考虑DSP内部并行性的汇编语言进行编制DSP程序。前面提到,美国TI公司的DSP推销员说DSP编程容易,实际上他是指DSP的汇编语言相对于计算机的汇编语言而言,比较容易一些,因为没有像计算机汇编语言那样复杂。但是,对于习惯用高级语言编程的用户,利用DSP汇编语言编程还是有困难的。因为,汇编语言是面向机器的程序设计语言,它是一种把机器语言(机器指令码)符号化的低级程序设计语言。使用计算机汇编语言的用户一定要熟悉机器硬件结构和指令系统;使用DSP汇编语言的用户一定要熟悉DSP芯片内部结构和指令系统,这对于DSP用户来说也实非容易的事情。
从发展DSP应用角度观察,应该有相当规模的DSP开发应用队伍,这个队伍的成员应该掌握使用汇编语言AssemblyLanguage编程基本功,才能开发出高效率的DSP应用程序。特别是在利用多个DSP芯片开展并行处理应用时,具有这种编程基本功底是绝对必要的。甚至,在某些专业应用领域,诸如,日本简易便携电话PHS、磁盘驱动器里的控制系统等,可能仅有一块DSP芯片,供编程的空间很小,需要用DSP指令编写高效率精干的小程序。因为,利用汇编语言编制应用程序,DSP还需要一种汇编程序Assembler通过代真把源程序中各个符号转换成DSP可执行的指令代码。Assembler也要占用DSP的有限存储空间。前文提及的正确理解DSP,实际上也包括这一层含义。也就是说,不对DSP的性能和结构有透澈地了解,很难推广DSP应用。
从DSP编程角度观察,需要重视以下两点:首先,DSP处理任务的执行时间要给予重视,其次,C语言及其编译程序Compiler支持工具也很重要。这是日本武藏工业大学的学者曾祢元隆等研究DSP应用的重要心得体会,对于推广DSP应用具有重要意义。
现在,美国TI公司尽管已提供软件支持工具,但是,对于并行执令还有一定的困难。如今美国、墨西哥和日本武藏工业大学等,正在积极地开发更好用的编译程序,除了特殊指令以外,已经可以实现自动翻译。日本武藏工业大学的DSP研究与开发状况如下:对于TI公司的DSP系列产品中的C40和C3X的新编译程序已基本上开发出来,对于其他的DSP用的软件工具正在加紧研究与开发之中。
二、多个DSP并行处理
随着数字信号处理器DSP芯片逐年增多和芯片价格的降低,多个DSP芯片并行处理的实用化研究,成为近年来DSP研究热点之一。提起多个DSP并行处理,使人们很快联想到跨入九十年代的超级并行处理MPP(MassivelyParalleProcessing)巨型机热潮。这类机器一上市,宣称具备三
大特点:
〈1〉高性能?/FONT>MPP巨型机的峰值处理性能可以理解为单个微处理器的性能与系统内容纳的微处理器总个数的乘积,系统里链接的MPU个数愈多,则峰值处理速度愈高;
〈2〉伸缩性椣低成焖跣园嘀趾澹低承阅堋⑾低惩ㄐ糯淼榷加胂低衬诹唇拥奈⒋砥鞲鍪上咝栽龀す叵担低彻婺?纱罂尚。硐殖隽己玫目缮焖跣裕?/P>
〈3〉高性能/价格比椢蘼?/FONT>CISC还是RISC微处理器MPU都是工业化大生产的标准产品,构筑成MPP巨型机,其性能可同向量机媲美,而价格仅为向量巨型机的1/10甚至更低,堪称是高性能/价格比。
九十年代初期的MPP巨型机,由于技术不够成熟,特别是编译系统不成熟,导至MPP巨型机实际有效性能仅为其峰值处理速度的1/10以下。早期的MPP巨型机厂家,如象赫赫有名的美国TMC公司、KSR(KendallSquareResearch)公司都先后倒闭,美国著名的小巨型机厂家Convex公司已被HP公司并购。但是,这些有创见的小公司开发的先进技术,依然存在并经过不断改进正被发扬光大。例如,有关的“超级计算机更高无尽头”报道,MPP巨型机的峰值处理速度已超过1TFLOPS,正向100TFLOPS冲刺。
现在,对于超级并行处理MPP技术已历经多年探索研究,正开始走出摇篮期向成熟化方向迈进。据日本京都大学工学部教授富田真治分析,MPP技术走向成熟,将需在以下5方面取得突破性进展:〈1〉并行处理语言、调试程序和软件工具,要求实现标准化;〈2〉需要加强应用研究,掌握和理解大规模应用程序,要对并行处理程序的处理类型分类,需要有基准测试程序评价;〈3〉研究MPP巨型机的单元处理器的体系结构,优化出单元处理器结构;〈4〉共享存储器结构和消息传送结构有待进一步研究,大规模共享存储器系统里,缓存控制采取登录方式可能会有大发展;〈5〉高速互连网络和同步结构是MPP系统的重要组成部分,有待进一步研究和发展。美国NII构想的核心部分HPCC计划已接近尾声,日本与美国HPCC对抗的计划Mandala正在实施,将必然要对上述MPP关键性技术取得突破性进展。
在这样的背景下,国际上出现多个DSP并行处理研究与开发热点,显然是紧密相关的。因为,把MPP系统与现在研究的多个DSP并行处理系统两相对照(参阅图1所示的多个DSP网络拓扑结构),不难发现MPP系统和多个DSP并行处理系统极为相拟。现在之所以称图1所示的系统为多个DSP并行处理系统,是因为网络结点上的处理器是数字信号处理器DSP。假若标明处理器是复杂指令集计算机CISC型或精简指令集计算机RISC型微处理器MPU,则该系统就是超级并行处理巨型机系统。因此,现在出现的多个DSP网络拓扑结构或者多个DSP并行处理系统并不是新东西,而是现代MPP技术向数字信号处理领域扩散的结果。现代科学技术高度综合发展的今天,各种科学技术相互交叉和渗透,MPP技术扩展到数字信号处理领域也是很自然的。
欧美各工业发达国家已把DSP并行处理系统中结点处理器个数扩展到128个,试图获得更高的信号处理速度。日本武藏工业大学现已研制出几种DSP网络,例如,C25
16、C40 32和86220
16等,实现高速运算。据该大学的DSP研究与开发实践发明,利用多个DSP执行大规模处理任务时,各DSP之间交换数据实现数据通信和对各DSP均衡地分配处理任务,都是重要的研究课题。这个问题不解决,尽管网络里有多个DSP结点,也是不能充分发挥各结点DSP作用和实现高速处理。连接DSP的网络拓扑结构是多种多样,最简单的连接方式是总线结构,其它,像超立方体连接
、树状连接和环状连接等等,都各有其特点,也只能根据应用问题的类型选择相应的连接机构。特别是多个DSP并行处理系统的管理也是个难题,为此需要考虑内置操作系统OS功能的管理电路,用于母板,路由器和仲裁器等管理。
从日本高等学校研究与开发多个DSP并行处理系统中所遇到技术问题,可以看到问题的性质和在MPP系统里的问题在本质上是一样的,只是因为目前系统规模还不大,问题不那么突出罢了。不难想像随着DSP网络拓扑结构规模的扩大,必然要借鉴更多的MPP新技术。无疑,也必须要研
究DSP并行处理语言和编译程序以及调试软件工具;需要掌握和理解DSP大规模应用程序;需要研究适合多个DSP并行处理系统中的结点DSP的体系结构,优化出DSP结构;对于共享存储器结构,消息传送结构以及DSP互连网络结构,都将需要进行深入研究。难怪,日本武藏工业大学电力信息研究室的教授曾弥元隆一再大声疾呼,要正确地理解DSP功能,将其用于控制和实时计算,巨型实时计算,要考虑研制出经得住国际竞争的系统产品。他还着重指出,多DSP网络是国际上近一两年出现的新研究热点,值得注意的是国际上已把多DSP的网络系统用于VR和CG等领域,日本应该在这方面有所作为。
三、瞄准CG和VR
所谓计算机图像学CG(ComputerGraphics)是研究用计算机处理图形信息,或者是研究处理人和计算机之间图形通信等有关的理论和技术叫作计算机图像学CG。众所周知,传统的方法把要求计算机处理的问题输入到计算机和获取计算机处理的结果,都采用字母和数码形式。但是,在日常工作、学习和生活中,人们习惯于和图表、图形打交道,因为这类表达方式直观且方便。随着计算机科学技术的进步,出现图形输入/输出设备及其相应的图形处理软件,这也为计算机图形学CG奠定了物质基础。现代计算机图形学包括图形的输入、图形的生成,图形在机器里的表示,图形的操作处理以及人机交互图形通信等诸多内容。
另一方面,美国VPIResearch公司提出虚拟现实VR(VirtualReality)新技术术语并且向市场推出VR系统产品RB2,把数据手套(DataGlove)作为人机接口,头盈式显示器HMD(HeadMountdeDisplay)后来也作为VR系统的配套输出设备。VR系统现在也称为人工现实系统AR(ArtificialReality)。这也说明VR系统的本质,利用它可使人一面用HMD观察由计算机图形学CG技术实现的3维空间,一面把人带入到人工实现的虚拟世界,利用数据手套操作,使人有如身临其境地去体验和感受这人工虚拟世界。
莫道CG和VR技术都不是日本高技术企业发明的,一旦日本厂家介入这一领域里,利用其先进生产设备和制造工艺迅速地改进CG和VR技术产品。例如,日本日商电子公司完全接产VPLReseach公司的数据手套DatagloveModelJ以后,已于1995年将其售价降低50-60万日元;利用新电子器件和工艺,制作出性能更高、价格更便宜的兼容新产品。该公司利用廉价PC机同引进美国Autodesk公司的VR软件CDK(CyberspaceDeveloperKit)相结合,开发出新的系统产品VRmaker,已于1995年大量投放市场。与VRmaker系统配套的HMD,其售价高达210万日元。自从1996年夏季以来,日本松下电工、索尼、岛津制作所和Olympus光学工业公司等厂家,纷纷将其HMD新产品投放市场。例如,Olympus光学工业公司的HMD新产品MediamaskMW601,LCO尺寸为1.35英寸,象素点个数为1068
480,产生的立体虚像与人眼距离约为2m,HMD外形尺寸184 230
234mm3,重量700克,售价仅为90万日元;索尼公司的PLM-50型HMD新产品,能显示2维虚像,象素点个数为800
225,重量为300克,其售价仅为8.8万日元。实际上,日本厂家早已开发出HMD原型(92-93年),之所以迟迟未能上市,是因为一直同大学和医学单位协作,开展评价HMD对视觉的影响。现已证实,索尼的PLM-50
型HMD在使用2小时左右看电影),完全对人视觉无害。显示3维图像HMD,对视觉的影响仍在调查之中,对视沉影响程度尚不完全清楚。
近年来,CG和VR技术应用在日本已日益广泛,诸如整形手术后手功能修复,手语输入,机器人手臂远程操作、虚拟厨房仿真体验系统,3维CG动画制作,计算输出数据可视化,虚拟手术模拟,产品原型装配与设计验证等等,正向家庭娱乐等领域扩展。日本自从泡沫经济破灭以后,正采取新经济政策恢复经济、低附加产值的电子产品生产早已转向海外,国内振兴电子产业正向高技术高附加产值的产品转移。例如,CG和VR系统产品也正是日本高技术企业的目标之一。而运行CG软件和提供VR系统3维图形处理能力的最关键器件DSP,正是日本厂家薄弱的一环。日本武
藏工业大学电力信息研究室教授曾弥等,无疑正承担日本DSP研究与开发的重任。再这样的背景下,日本的专家学者怎能不在日本新闻媒介上大声疾呼要理解和重视DSP呢。况且,多DSP网络卡作为3为图形加速器在国际上已广泛应用CG和VR系统的情况下,无疑,日本研究与开发多DSP并行处理系统已迫在眉睫,刻不容缓。
由于数字信号处理器DSP可以高速处理极为大量的数字化数据,在各种电子机日益数字化的今天,DSP将要继续高速增长,其应用仍将扩大。根据新的需求发展,DSP将要向低价格、高性能、专用化和扩充有快闪ROM功能方向发展。
----
单个数字信号处理(DSP)芯片曾经作为协处理器来实现滤波器算法。现在DSP技术的发展已实现了多个复杂算法的并行。但是,这种功能的扩展也产生了新的问题,开发人员发现,在DSP处理能力方面,当MIP和存储器的问题得到解决时,他们又面临着新的课题,即如何来管理设计复杂的软件。
----
如何合理地安排数据流程,使之在DSP的各执行单元间无冲突地顺利执行,仍是DSP开发人员面临的一个非常重要的问题。由于设计的复杂性,将算法映射到DSP具体目标硬件上时,尚不能采用高层次编程语言,必须使用汇编语言,并对器件的并行执行机制有十分清楚的了解。而这种局限于汇编语言的编程设计,正是提高软件开发效率的瓶颈。
----
90年代早期,嵌入式系统和桌面应用的开发人员曾面临相似的问题。当时为提高设计效率而采用的方法现在仍可借鉴使用。一个短期的解决方案是由编程人员自己解决这一问题。但是,编程人员相对短缺,而且DSP领域编程人员更为紧缺。在DSP开发时,可以考虑采用非DSP专业的编程人员,但这些人员一般倾向于使用桌面和嵌入式应用的开发工具。而DSP开发领域还没有类似的工具,这就阻碍了DSP应用的进一步推广。
开发相似,实质不同
----
即使采用了上述的开发工具,DSP还具有不同于RISC和CISC的独特特征。DSP处理能力不仅靠越来越快的时钟速率来实现,而且还依赖于并行处理结构的进一步采用。早期的DSP仅含有单个多路器和累加器,由哈佛结构以及一些控制寄存器环路组成。而目前的DSP处理器通常采用多个执行单元,每个执行单元都由算数逻辑运算单元(ALU),一个多路器和累加器组成,而且这些执行单元可以并行执行。
---- 美国I.C.Com 公司在与西门子半导体公司的合作中,开发出了Carmel
DSP,它通过一个非常类似C的汇编语言来解决DSP开发面临的上述瓶颈问题。
---- I.C.Com公司VLSI设计副总裁Amnon
Rom说:“我们的目的是使我们的汇编语言Carmel尽可能地接近C语言。对DSP开发来说,减少开发过程中从浮点算法转换到固定点算法,然后再到汇编语言程序所需的时间非常重要。通过将汇编语言与之一一对应,从而减去了从C语言到汇编语言的开发步骤。”
友好易用的硬件系统
----
美国ZSP公司采用易于编译的硬件系统来解决DSP开发中面临的这一问题。其硬件系统包含一个正交指令集,一个透明状态机和一个流水线控制单元。其中流水线控制单元是该结构的关键,它代替编程人员对DSP中的并行执行单元进行作业安排控制。通过分配指令到硬件、解决数据和资源间的依存问题,从而将指令分组分配到DSP的各个并行执行单元。这样减去了编程人员和编译器安排分配并行任务的负担。----
ZSP公司提供一套完整的软件开发工具,让编程人员管理复杂的DSP编程任务。可以通过命令行直接调用这一工具,或者通过使用Premia的Codewright编辑器。Codewright是一个开发工作平台,通过它可启动其他应用程序。ZSP就是采用该平台来管理其Gnu
编译器、汇编器、链接器、仿真器以及调试工具。
----
Codewright开发环境进一步扩展,包括了设计项目目录管理功能,对项目可执行程序的生成进行参数调整。针对基本的DSP软件开发,ZSP公司提供了一个完整的解决方案。
---- 美国TI公司认为DSP未来的发展在于软件,并已经开始着手两项开发。首先,它将Code Composer
IDE的功能与DSP/BIOS和RTDX驱动程序进行集成,组成综合开发环境Code Composer
Studio。这是TI将其收购的GoDSP公司Code Composer
DSP调试工具与Spectron的低档DSP操作系统进行统一集成的结果。其次,它建立了DSP软件模块的标准接口,以便更好地重新利用现有的实现了的DSP算法。
---- TI公司认为,通过将一个汇编语言优化器集成到其Code
Composer开发环境,从而减少了对汇编语言的需要。据称该工具产生的编码的效率可达到手工调试的汇编语言的80。
----
对DSP开发,每个MIP和存储器字非常珍贵,对这一资源的任何浪费都会影响项目的进展,使之难以完成。但为了提高软件开发效率,也必须牺牲一些MIP和存储器为了更好地开发
----
对DSP开发,每个MIP和存储器字(Word)非常珍贵,对这一资源的任何浪费都会影响项目的进展,使之难以完成。但为了提高软件开发效率,也必须牺牲一些MIP和存储器。这些MIP和存储器资源是用在DSP内访问程序和数据转换方面,访问程序将DSP算法的内部表达方式转换成共用的方式,以便进行通信。
----
TI公司提出的软件标准包含两个方面,一是处理目标硬件与主机的接口,另一方面处理内部的API(应用程序接口)集,以提供DSP软件模块间的通信。在主机一侧,是Active
X程序集,用来处理与目标硬件间的通信,并模拟目标器件的行为。这里主机接口包括以下四个主组:项目服务器,编辑服务器,图象服务器和调试服务器。其中调试服务器用来建立和维持与目标硬件间的通信。在目标硬件一侧,链接依赖于RTDX和DSP
BIOS。
---- Blue Wave Systems的产品经理Nick Keeling对Code Composer
Studio表示很大的兴趣,他说,通过这一产品,可以看到DSP软件开发步入成熟。这一进程是TI与其第三方DSP板级开发商共同合作的结果,从Code
Composer Studio开发的初期,第三方板级开发商就积极地参与了进来。而这一参与使第三方厂商有能力对Code Composer
Studio的功能开展进一步开发。
---- Blue Wave Systems公司正对Code Composer
Studio进行改进,使它能自动识别与之相连的任何电路板,包括读取电路板上的配置信息,以及识别安装在电路板上的驱动程序类型。该公司可提供这种电路板和改进后的具备自动识别功能的Code
Composer Studio开发环境。
---- Analog Devices公司的Visual DSP工具集与TI公司的Code
Composer类似,但不包括主机与目标硬件的链接。该工具支持其全部SHARC DSP系列产品。
---- Visual
DSP是集成了IDE和调试器的一个项目管理工具。原码调试工作可在一个C语言和汇编语言的混合环境中完成。同时调试工作可通过一个硬件仿真器在主机上进行,也可直接在目标硬件上实现。
----
目标器件接口数据流可通过中断的随机组合来仿真。并可在指定的地址范围内和地址范围外设置观测点进行检查。这种功能使开发人员能更好地处理堆栈资源的下溢和上溢。
DSP产品应用
----
在即将告别20世纪、步入21世纪的世纪之交的时刻,让我们首先回顾一下国际上电子工业最近30年来发展的历程:70年代的电子工业以消费电子为主,代表性的产品是录像机、摄像机、彩电,主要的生产厂商是日本的Sony、JVC、荷兰的Philips等家电厂商,依靠的是大规模生产和优秀的质量。80年代是计算机时代,代表性的产品是PC机、硬盘驱动器、打印机,主要生产厂商是美国的Intel、IBM、Microsoft、Compaq等公司。90年代起是信息时代,代表性的产品是个人通信网、网络接入设备、数字化消费类电子产品,主要生产厂商目前尚难确定,处于战国七雄争霸时代,主要获胜的战略之一是以DSP为核心的技术及其创新产品。
----
DSP可以代表数字信号处理技术,也可以代表数字信号处理器,其实两者是不可分割的,前者是理论上的技术,要通过后者变成实际产品。两者结合起来就成为解决某一实际问题和实现某一方案的手段棗数字信号处理解决方案(DSPS)。
----
DSPS正在改变我们生活方式的各个方面,例如人们之间的联系方式正由电话转向个人通信方式。人类从电话发明到5千万电话用户数花了70年时间,模拟蜂窝电话达到5千万用户花了14年,而数字蜂窝电话(GSM是其中之一)只花了5年就达到相同的用户数。
----
再如我们的娱乐方式,VCD、DVD正替代VHS录像机,数字电视机开始替代模拟的NTSC或PAL制电视机。家庭影院主要由数字化A/V设备组成,DSP不仅给你环绕声,还为你虚拟各种现场效果。
---- DSP日益进入人们的生活,所以DSP芯片的年增长率超过50,在最近几年整个半导体产量下降的情况下,唯有DSP芯片保持高速增长的势头。
----
DSP的发展面临的挑战是CPU速度的急速增快和价格的持续下降,使DSP制造商面临两种选择,一种是加快DSP的发展,另一种是退出竞争。看来主要的DSP制造商都选择了第一种路线,尤其是占全球DSP销售份额45的美国TI公司在对公司的产品进行结构性调整的基础上,以多元化投资转到单一化投资,确立以DSPS为主要发展的产品,即集所有技术、所有产品于DSP。
---- TI公司在原来已被人们熟知的TMS320C1X、TMS320C25、TMS320C3X/4X、TMS320C5X、
TMS320C8X的基础上发展了三种新的DSP系列,它们是:TMS320C2000、TMS320C5000、TMS320C6000系列,成为当前和未来相当长时期内TI
DSP的主流产品,前面提到的那些老型号产品均将被这三种新系列产品替代。从今年开始,’C1X、’C25、C5X、C8X的价格每年都会上调,今年提升了10。而’C2000、’C5000和’C6000三种新系列芯片的价格会逐年作较大幅度的下调,因此无论从价格还是技术支持或是从产品开发的连续性出发,建议大家尽量采用新的DSP系列,在进行教学、培训时也应介绍这三种新的系列。
三种新型TMS320 DSP系列的特点
---- 1.TMS320C2000——作控制用的最佳DSP,可以替代老的’C1X和’C2X。现在有趋势集中在以下两个方向上:
---- (1)’C20X
16位定点DSP,速度为20MIPS,主要用途是电话、数字相机、售货机等,其中:’F206带有闪速存储器,售价从5~17美元。
---- (2)’C24X 16位定点DSP,速度为20MIPS,用作数字马达控制、工业自动化、电力转换系统、空调等,售价从4~18美元。
----
2.TMS320C5000——低功耗高性能DSP,16位定点,速度40~200MIPS。主要用途是有线和无线通信、IP、便携式信息系统、寻呼机、助听器等。价格5~75美元。
----
目前’C5000系列中又有三种新成员,一种是’C5402,这是廉价型的DSP,目标价格是每片5美元(50K批量),速度保持100MIPS,片内存储空间稍小一些,RAM为16K、ROM为4K。主要应用对象是无线Modem、新一代PDA、网络电话和其它电话系统以及消费类电子产品。
----
第二种是’C5420,它拥有两个DSP核,速度达到200MIPS,200K片内RAM,功耗0.32mA/MIPS,200MIPS全速工作时不超过120mW,为业内功耗最低的DSP。’C5420是当今集成度最高的定点DSP,适合于做多通道基站、服务器、Modem和电话系统等要求高性能、低功耗、小尺寸的场合。
----
第三种是’C5416,它是TI公司0.15μm器件中的第一款,速度为160MIPS,有三个多通道缓冲串行口(McBSPs),能够直接与T1或E1线路联接,不需要外部逻辑电路,有128K片内RAM。应用对象是VoIP、通信服务器、PBX(专用小交换机)和计算机电话系统等。
----
3.TMS320C6000——这是TI公司1997年2月推向市场的高性能DSP,综合了目前DSP的所有优点,具有最佳的性价比和低功耗。’C6000系列中又分成定点和浮点两类。
---- (1)’C62XX 16位定点DSP,速度为1200~2000MIPS,用于无线基站、ADSL
Modem、网络系统、中心局交换机、数字音频广播设备等,价格为21~224美元。
---- (2)’C67XX
32位浮点DSP,速度为1Gflops,用于基站数字波束形成、医学图像处理、语音识别、3-D图形等,价格109~233美元。
----
C6000在向两个方向发展,一是追求更高的性能,二是在保持高性能的同时向廉价型发展。前者如定点’C6202可以达到2000MIPS的速度,后者如定点’C6211只有25美元、浮点的’C6711仅售20美元。
---- 在老的TI
DSP系列中,浮点’C30还是TI公司主推的产品,因此它的售价不像其它老系列每年都要提升。TI公司还在对这个型号作性能改进和制造廉价型,如新近推出的’C33采用0.18μm制造工艺,有1M
RAM,速度为120Mflops,为老产品的两倍,而价格仅5美元。速度更高的150Mflops为8美元。’C33与其它’C3X器件代码兼容,所以用户可以保护其软件环境,在他们换用新器件时还可以减少开发时间。
----
上面所介绍的TI公司的新一代DSP已经替代80年代和90年代初的老一代产品,在电子信息产业方面获得了广泛的应用。’C2000系列已用于数字马达控制、数字照相机、PC照相机;’C5000系列用于蜂窝网手机、程控交换;’C6000系列用于基站、ADSL、V.90
56K Modem。
---- 有数百家直接依靠TI的DSP而成立的公司,称为TI的第三方(Their
Party),它们有做DSP开发工具的,有从事DSP硬件平台开发的,有从事DSP应用软件开发的。这些公司基本上是80年代末,90年代初才创建的,开始时往往只有几个人,经过5年、10年现在均发展到具有相当规模。如D2
Technologies、DSP Research、DSP Tools、Dialogic、GD DSP、HotHaus、Micro LAB
Systems、PenTek、Seed、Spectrum Digital、Spectrum Signal Processing、White
Mountain DSP等公司,在DSP开发工具、应用软件、DSP平台方面都很有成就。
----
相对国外DSP的应用开发和第三方公司的情况,我国国内差距相当大,知道使用DSP的单位不多,这些单位中大多数还在使用’C25,’C5X。DSP工具开发已经起步,但也只有闻亭和合众达两家,而专门从事DSP硬件平台和应用软件开发的单位和公司还没有,“第三方”在中国基本上是空白。
----
上海交通大学在1997年初与TI公司联合成立了DSP技术中心,除在本科生和研究生中进行新一代DSP的教学外,还尽一切努力开展DSP的应用研究,研究的目标完全放在新产品的开发方面。我们(指上海交大,以下皆同)组成了一支包括教师、研究生在内的三十余人的DSP应用R&D队伍,配备有TI公司提供的最新DSP开发工具和齐全的资料,并获得上海市科委的支持,设立了上海数字技术中心。目前我们已经和正在进行研究和开发的项目主要分成以下三类:
---- 1. 语音编码及其相关产品
在所有的通信系统中,语音通信仍然是最基本的通信方式,也是应用最普遍的。ITU制订了许多语音压缩标准,我们已经做出来的有用’C542实现的G.728、G.723、GSM06.10,正在进行的有G.722、G.726、G.729、FS1016等。
----
在此基础上正在研制多通道电话记录仪。用自制的’C542电话压缩卡,将一张电话卡的数码率从64kbps降到13kbps,语音质量MOS(平均判分)为3.7,而国内使用最普遍的语音卡采用ADPCM算法,32kbps时才有相同的音质,号称能用到16kbps,但音质仅为2分。我们每张卡可同时压缩8路电话,一台PC机可插4张卡,同时压缩32路电话。另一个正在开发的是数字电话扩容系统(DCME),采用’C6201DSP和ITU-G.728语音压缩算法、将E1的每路64kbps电话压缩到16kbps,压缩4倍,这样可将30路的E1扩容至120路的E2系统。
---- 2. Hi-Fi音频压缩及相关产品
最近几年VCD、DVD、MD、DAB、DVB等数字音视频产品万紫千红,在这些数字化新家电中,DSP最起作用的地方是Hi-Fi的音频处理,我们已对MPEG音频Layer2、Layer3、MPEG-2
AAC、Dolby
AC-3等用C语言仿真研究,在此基础上用’C549实现了MP3解码器的初样。正在用’C6201和’C6701分别实现MP3编码器和MPEG-2
AAC编解码器。MPEG-2 AAC重建的音质超过MP3和AC-3将成为21世纪直播卫星、地面DAB和SW、MW、AM广播数字化的首选标准。
---- 3. 图象压缩及相关产品
完成用’C542实现的脱机的便携式彩 {MOD}静止图像传输系统,分辨率有576×480、352×288(CIF)、176×144(QCIF)等可选择,发送端图像压缩终端如一般的Modem大小,可通过Modem在PSTN(公共交换电话网)上拨号传输图像,也可通过无线Modem在CDPD分组无线数据网中传输,适用于远程监控、彩 {MOD}文件传送。在此基础上正在开发用’C6201
DSP的符合H.263标准的可视电话。
----
我们对DSP的应用前景充满希望和信心,也盼望有更多的高校、科研机构、公司开展DSP的应用研究,藉此开发最新的数字化电子产品,为振兴我国电子工业作出贡献。
在新闻界一片赞扬数字化声中,世界电子产品市场又开始热闹起来。形形 {MOD} {MOD}的数字化电子机器产品,繁花似锦,诸如,数字化电视机、数字化移动电话、数字化无绳电话、数字化照像机和数字化摄像记录一体型VTR等,不胜列举。数字化电子机器日益增多,意味着迈向多媒体信息化社会的步伐加快。实现多媒体信息化已不是梦想,而是一步一步地向人们走来。对于多媒体信息化社会,需要以先进的技术手段去传送、处理和显示极为庞大而复杂的数据。固然模拟式的电子机器实现数字化可以提高性能和质量,而另一方也需要装备大量的高速数字集成电路IC。特别是模拟式的图形、图像信息转换成数字化的代码信息,尽管采用现代数字压缩技术,仍然是存在相当可观的信息量。例如,一部72分钟的电影胶片,采用MPEGⅡ技术压缩后的数字化代码图像信息。仍需要高达3GB的磁盘才能容纳下全球信息。
现代数字信号处理器是执行高速数字信号处理的IC电路、它恰好适应多媒体信息化社会需求,迅速发展壮大。如今,世界电子器件市上,各种各样的DSP器件已相当丰富。大大小小封装形式的DSP器件,已广泛应用于各种产品的生产领域,而且DSP的应用领域仍在不断地扩大,发展迅速异常。
一、数字化移动电话
数字化移动电话尽管花样繁杂,但基本上可划为两大类:高速移动电话和低速移动电话。其中,高速移动电话顾名思义是在高速移动体里使用的电话,诸如可在飞机、轮船和汽车等里自由通话的电话。虽然数字化高速移动通过标准很多,但当今普遍应用的是欧洲GSM(GlobalSystemforMobileCommunication)标准。自从推出数字化蜂窝式电话机以来,现已遍布全球70多个国家广泛应用。俗称GSM标准的数字化蜂窝电话,叫作数字化大哥大,它具备国际漫游(Roaming)功能,SIMC(SubscriberIde