《电子产品世界》杂志,1996年第9期,pp.111&32 如何选用数字信号处理器 清华大学计算机系 郑方 fzheng@hs752.dcs.tsinghua.edu.cn, (010)62594141 随着大规模集成电路和计算机技术的飞速发展,数字信号处理(DSP)技术已经渗 透到几乎各个领域,包括计算机语音学、计算机视觉、计算机多媒体技术、超文本 数据传输等各个领域,而用于进行数字信号处理的专用DSP芯片的性能价格比也在 惊人地 DSP的 产 AnalogDevices,Inc. 、TexasInstruments 、AT&T、Motorala 、NEC 等,而 在 多DSP 产 , TI 和ADI 比 的, 产品的 性而成 DSP芯片 的 领 ?¢ £?DSP¥?和§计的currency1'“在currency1? ??的 fifl 如何选用DSP芯 片 –?? · 体产品规格 清?的??,?? ·各”DSP芯片的性能和 ? 比 …?的??,‰能选用 ?于 `′的芯片 在?多?ˉ?,DSP处理器的 性 ˙ MIPS速¨ ??, ˙于¢”DSP 器?的?ˇ— ¢ 等 于 ¢”DSP器?, MIPS 的 DSP器?能? 的 a¢ 性能 ,如?算、??、'o o和I/O 能?等, ?? £几个方?? 选用DSP芯片 ? 的几个 ,??能·? 选用芯片 ¢ 的? ¢、DSP的算 和 ? 数字信号处理的算 –样¢ :(1)信号处理 算术?算 比如数字 滤波器 Z变换 基础, 差分方'完…可 用算术?算 实现;?如FFT算 除?数?算可 用速查表外, 余?算… 乘 和 (2)信号处理算 ?算量大, 速¨快 ¢维的语音信号,还 二维的图象信号,¢般地算 的?算量 都?大,且算 的实现都 实时 (3)信号处理算 某 模式 比 典 型的 卷积?算 的乘积和 数字滤波器 的连续递推移位 (4)信号处理 专 门的接口 ¢个非 的接口 把模拟信号 数字信号相互转换的ADC和DAC, 外大量的数据交换? 高速的数据 能? 数字信号处理的 DSP芯片 专门§计的 DSP芯片的§计 满 足数字信号处理的–样¢ :(1)快速灵活的?算:单周期;允许` 计算次o (2)乘/累 的动态扩展范围:保证卷积?算(乘积和) 发 间溢 (3)单周期内取 两个操?数:保证快速乘积和?算 (4) ?循环缓冲区:˙ ?处理地??针的跳 转和回绕(取模??) (5)无额外开销的循环和转移:条?判断 跳转 占¢个周期 ADI的ADSP-21xx系 和TI的TMS320xx系 无 –样的 §计 的,a 都 的DSP处理器芯片 的 , 两 ?间也 ¢ 差 ?? ? ¢?ADSP-21xx芯片 二、ADSP-21xx系 处理器的 ADI 的ADSP-21xx系 处理器( 表器? ADSP-2101) 基于 的 Harvard 的16bit 系 处理器,–样的 可 操?数的数据£'o 器和数据 器 到?算 分 1. 语 的 ?ˇ都 单字、单周期?ˇ,— 用 数语 进行 ,可? 性 比如MR=MX0*MY0(SS)?ˇ,a把取 器MX0和MY0的两个 号 数乘 到MR 器 , ?ˇ 、方 2. 语 大量的(单周期)—行?ˇ,– —行?ˇ£ 能 可分 两 分, ¢ 分进行计算, ¢ 分进行操?数 取 处理器?用 的Harvard ,数 据和'o 器的数据和地?¢£(?4条) 分¥的,保证可 时£'o和数据 器 各取¢个数据 外?操?数?操?发 在?ˇ周期开§时、 操?发 在 周期 currency1时'的? 规“保证?在—行?ˇ ¢个操?的?可 ¢个操?的 的,???ˇ条数 ¢个典型的—行?ˇ的fi子 ,MR=MR+MX0*MY0(SS), MX0=DM(I0,M1),MY0=PM(I4,M5), ?ˇ把乘累 取两个操?数集 在¢个周 期内完成,a fl 的乘积和?算–用¢个单?ˇ循环体 可 实现,可?高? 3. 乘/累 的动态扩展范围大,两个16位的数据相乘, ·保 在40位 的 MR 器 , 器?可 ?累 用,?可 分 ?个? 器单 用 – ?大的动态范围保证在¢ 循环次数的乘累 ?算 ”于发 间溢 4. 单周期的条??ˇ ¢个 用的?ˇ?式, ?ˇ允许…据 次?算‰ ? 的 · `进行?算‰跳转,–”?式保证?条?判断无?额外的周期开销 如 ,循环′动?ˇ( 占¢个周期)¢??行,循环的 周期开销 在循环 体的?ˇ ,而条?判断和分ˉ跳转都˙ ?实现, ?`何额外的周期开销 5. 数据 取?ˇ ?大的灵活性 a可 …据? 在·¢个操?数进行完 取 ? 动 地??针, ??可˙'o` ? 如·? , ?可 在地? ?针超˙循环缓冲区的¨ 时 动把?针回绕到缓冲区的 ,– ? ?循环 缓冲区'的取模?? 比如,??针 器M1=3, ?¨ 器L0=16,地?? 针 器I0=14,??·DM(I0,M1) 取? ,I0 动变 (14+3)mod16=1 6. ¢个 用的 ?行口数据传输的 动缓冲区 如·允许?–个 能,? ?– 在?个缓冲区(大? 可 '的)的接ˇ‰发 … 完成时‰ 发 ?行口 断 –?—?¢ 的额外开销 7. 外还 ¢ 用的 能,如乘 可 ? 操?数 号数、无 号数 ‰¢个 号数¢个 无 号数;可 动产 FFT 位 o地?; 断 态的 动保 和 ;单周期的 断现 保 和 ;?行口字?可 ' 3 16位; 'o可£EPROM 电 动 ; 等等,无 DSP算 的? 大 高 在 30ns?ˇ周期的ADSP-2181处理器 ,1024 的 数FFT?算的时间– 1.07ms ?、 £ ?的? , ? ? ??算能?、数据??能?、'o o能? 和I/O操?能? 的 ,a 和MIPS? 样 在选用 时 ? 到– 两” 的 相 MIPS? 的DSP芯片, 在 进行¢ DSP?算时表现 的性能差 ?大 还 ¢个非 的 ¢?DSP ` ?? 的??模拟和 ? acurrency1 视?– , 的开发currency1 能大大 开发周期 在 –方?,ADI和TI 都?fl , 的 的, 的 第?方开发? 开发currency1 的 ?、 ?的§计 ADSP-21xx系 处理器的 · ?§计 ?方 的, 接口 ?、o单, 器扩 方 处理器·外§的 也 o单, 到处理器 的外§都可 象到处理器的数据 器单? 除 外,ADI ? 的? ?开发currency1 ??模拟器可 进行算 的 证和方?的 证 在模拟器 , ' 可 ·'o进行单?、多? ?,还可 ·?行口、 时器等各”内 断等进行 ? 和 ?,?到???模拟 ?的 的 ? a器可 实时地·实?的 ?进行 ?,?˙ ? a器?间的 传输? ,§计人 可 · ?的时o 体的 ? ?进行实地 ? – currency1 ?开发周期 、 用实fi ˙于ADSP ? ? 的¢ , 在数字信号处理的几乎各个 用 领域 ADSP芯片都堪称 乘?选 a可 用在¢维的信号处理 ,如语音处理 OakTechnology 的Mozart 声卡 ADSP-21xx芯片 处理器的 ?实 ,第?方开发 ?开发?大量 的 ? 码,如FFT ?算 、相 分析算 、 量?算、卷积?算等 GSM 和CELP语音压 算 等,用户可 用 低的投入获fl– 码 北京声迅 产的数字电话答录机 ?用?GSM语音压 算 的,用户?˙–样的答录机可 在本地‰ 地方 地?取 的留 信息,–”随机 取信息的方 性 给用 户带 ?大的方 , 志着顺o 取的磁带式答录机的 currency1 语音的压 还 原还 能说明fifl, 杂的语音识 算 也可 用ADSP 语 方 地实现 清华大学计算机系 国科技开发院江门分院联?¥ 的傻瓜式声 电话机 比 成 的¢fi 用傻瓜电话机,用户免去?记电话号码?苦,打电话时–?口呼 ·方的姓名,傻瓜机 把预 的电话号码 动拨 去,¢台傻瓜机可 200 门电话?多 如 ,–样的机器·盲人‰夜间 用 带 ?福音 在二维的数字信号处理 比 典型的 用 进行图象压 和还原 图象的¢ 典型的处理如图象 、抽边、 方图分析、旋转、艺术处理等都可 用??方 地实现 §计 专用的电路?,可 ·图象进行实时的压 和回放 在多媒体电视 议系统 可 发挥 大的优势 除?数字信号处理方?,ADSP的 外¢ 非 的 用领域 currency1业 、 无£?讯、声纳、图?等 ADSP ? 的外 接口,?˙– 接口, CPU可 ?˙?集 的信息进行综?和分析, 比 ?理的动?系 外围§备 比如模糊 洗衣机 可 ?用–样的芯片进行