通用DSP的RISC核心开发单处理器VoIP
扫描二维码
随时随地手机看文章
各种服务不断匯整至ip网路环境,促使业者开发各种创新的voice over ip (voip)终端产品,包括ip电话、商用与家用voip闸道器以及无线ip电话等。市场亦开始朝向将ip系统与语音功能整合的方向发展,例如:pda等掌上型装置、汽车、全球卫星定位系统以及其它装置。虽然某些具备更高密度语音频道的系统仍需搭配传统的多重处理器与独立的专属risc与dsp核心,但更多的设计方案在面临成本、功耗及复杂度持续紧缩的限制下,採用单处理器架构更能达成最好的功效。此外,同业竞争压力以及急迫的上市时程,更激发系统设计业者对完整单处理器voip平台的迫切需要,协助业者克服不同处理器之间的整合挑战。
单处理器voip设计方案能够协助业者达到成本、功耗、效率及上市时程等整体目标。然而,使用单一元件取代独立式dsp尚须克服各种效能上的问题,各种语音处理演算,例如:支援语音压缩与解压缩的各种itu-t相容语音编/解码器、line echo cancellation、voice activity detection (vad)以及comfort noise generation (cng),都可能衍生出可观的讯号处理需求。此外,处理器核心亦须处理各种电信演算作业,例如:dtmf、拨号音产生、来电显示功能、服务品质(qos)、使用者介面功能(显示、播号键、铃声等)以及连结外部应用系统的api介面。
由于即时效能的确切性对语音应用至关重要,故研发人员不能仅在标准型risc核心上重新建置现有的dsp应用,就希望达到最佳的效能结果。一套成功的单核心voip系统须结合各种dsp导向的强化方案,作为risc硬体的基础,并开发各种软体的创新化最佳方案,以充份发挥处理器功能。以下文章将探讨hellosoft 如何运用arm9e(tm)系列处理器核心与各项dsp强化元件,达成上述的各项目标。
核心中的dsp强化技术
建立一套可行的单处理器voip平台,首先必须选择适合的risc核心负责各种讯号处理功能。hellosoft的参考设计方案中採用arm926ej-s(tm),主要原因即为该处理器核心的dsp延伸元件直接嵌入risc处理器的架构中,其内部的特殊改良设计包括单週期16x16 与32x16 multiple accumulate (mac) 功能、饱和演算函式(例如:saturating add、saturating double add及saturating subtract等功能)以及count leading zeros (clz) 指令。这些强化指令可用来迅速开发稳定的控制迴圈以及bit-exact的精准演算法,满足各种先进讯号处理系统的需求,例如:语音编/解码器、迴音消除等。clz功能针对固定小数点演算与除法运算进行改良(如图1所示)。
图1 dsp强化延伸技术避免大幅变更核心成熟的五阶式管线以及harvard记忆体架构,因此对硬体资源的冲击能够降至最低程度。此套技术并未增加暂存器或状态,也为增加对暂存器的使用限制。arm9e系列资料路径仅增加少量的区块,包括一套高速32x16 乘数器、clz区块以及两组饱和运算区块。因此,arm926ej-s核心的运作状况与其他arm9核心的效能息息相关(arm9核心採用0.13微米原生型制程,提供220mhz以上的时脉速度)。
arm9e系列延伸元件亦与其它arm系列核心中的dsp延伸元件相容,例如:arm10e(tm)系列及arm11(tm)系列。这种特性为研发业者提供一套稳固的基础,协助他们建置高效能、低功耗、单处理器型的voip系统,并提供最佳化的研发弹性及新技术转移升级的管道。
人工开发创造出的dsp软体效率
开发高效率voip程式码不仅只是将现有的dsp演算法重新建置在risc核心。由于dsp功能原本就极为依赖处理器,并且须用组译语言撰写,才能充份发挥硬体功能。因此,除了採用arm9e系列dsp延伸技术外,voip函式皆以人工撰写,以彻底发挥底层arm9e系列处理器的资源,打造出仅需17mhz的频宽即可建置g.729ab codec的优异系统,同时,g.168/16ms线路迴音消除则仅需15mhz的频宽。
目前在专属的dsp处理器上建置语音处理演算法的技术已变得更为简便,因为现今的dsp硬体通常拥有足够的爆发管线处理功能,能够克服一定程度的软体低效率问题。由于dsp透过单一指令同步执行多组作业,因此软体设计师在处理迴圈的序列及时序,或是考量载入资料数量上不需花费太多心思。相较之下,在dsp优化的risc处理器上建置各种voip函式,必须彻底掌握关键的硬体相关议题,如:资料流、迴圈时序、跨迴圈排序以及资料载入的效率等。
arm9e 系列较独特的优点