<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 消費電子 > 設計應用 > 基于可配置處理器Xtensa LX的數(shù)字音頻方案

          基于可配置處理器Xtensa LX的數(shù)字音頻方案

          作者: 時間:2008-03-04 來源:網(wǎng)絡 收藏

          所有的媒體都正在向格式進行轉(zhuǎn)換,現(xiàn)在就連音樂也幾乎都是的。電視和視頻正迅速轉(zhuǎn)換為全格式。數(shù)碼照片將很快淘汰過時的膠卷。在今后幾年,這種轉(zhuǎn)換將是全方位的,數(shù)字媒體格式將會成為標準格式。因此,電子行業(yè)需要面臨數(shù)字媒體格式轉(zhuǎn)換引擎的開發(fā),以此為媒體用戶提供聲音和圖像。

          技術作為第一種完全數(shù)字化的媒體,在轉(zhuǎn)換方面進行得最為深入?,F(xiàn)在的系統(tǒng)必須支持多種數(shù)字格式,從最早的格式到最新的格式。隨著數(shù)字音頻格式變得越來越先進,其技術也越來越復雜,目的是通過使用更少的位數(shù)來得到更好的聲音效果。隨著大量的數(shù)字音頻媒體格式(包括MP3、AC3、AAC和WMA)和用于手機的各種語音編解碼器的使用,數(shù)字音頻格式的轉(zhuǎn)換需要某種固件可編程的。對于諸多不同數(shù)字音頻格式的轉(zhuǎn)換而言,采用專用硬件會顯得過于復雜。

          許多種可編程都可以用于數(shù)字音頻格式的轉(zhuǎn)換處理。對PC而言,一般采用通用的32位或者64位CPU處理音頻數(shù)據(jù),因為這在PC中已經(jīng)很普遍。這些CPU的主頻現(xiàn)在已經(jīng)達到幾GHz,因此其帶寬足可以輕松地處理音頻數(shù)據(jù)格式的轉(zhuǎn)換,然而其成本也高達數(shù)百美元,且功耗達到幾十上百瓦,因此,通用CPU并不適合低功耗、以電池作為電源的設備。

          低功耗、低成本的數(shù)字信號(DSP)也可以在許多消費類設備中用于實現(xiàn)數(shù)字音頻編解碼器。一般而言,低成本DSP為16位DSP,這類處理器在正確處理現(xiàn)在復雜的16位音頻數(shù)據(jù)編解碼時缺少足夠的位精度,更不用說更加先進的20位音頻格式了。而且,DSP一般缺少媒體產(chǎn)品中與任務控制相關的指令和輸入/輸出功能,因此在這類設計中通常需要一個控制處理器。這樣做的后果是,即使是一個簡單的DSP的音頻播放器也必須要采用雙處理器體系結(jié)構(gòu),這使得設計變得復雜,并增加了設計中存在缺陷的風險。

          采用可處理器內(nèi)核可以構(gòu)建一個音頻處理器,該處理器既具有DSP的高性能與低功耗特性,又具有通用處理器的良好控制能力。Tensilica的的HiFi音頻引擎即是該類處理器的范例。HiFi音頻處理器32位的 V處理器內(nèi)核,具有24位音頻專用的指令。該處理器內(nèi)核已經(jīng)在多種產(chǎn)品中采用,包括移動電話、便攜式音頻播放器、便攜攝像機、數(shù)碼相機以及個人視頻錄像(PVR)。

          Tensilica公司 處理器的推出可以提高原有的HiFi音頻引擎性能,為用戶提供被稱為Xtensa HiFi 2音頻引擎的更加強大的音頻處理器。該引擎可以利用更窄的帶寬(因而功耗和能量更低)來運行更復雜的數(shù)字音頻編解碼算法。Xtensa 處理器具有某些可特性,因而可以允許上述的這些改進。

          特別的是,Xtensa 處理器具有稱為FLIX(可變長度指令擴展)的功能,允許處理器將現(xiàn)有的16位和24位Xtensa指令混和生成定制的寬指令。每一條FLIX格式的指令都可以將多個獨立的操作放進每個寬指令字中的操作槽中。Xtensa LX處理器的Xtensa HiFi 2音頻引擎擴展就增加了300多條專用音頻DSP指令,包括24位的MAC(乘法/累加)指令和流編碼指令,這些指令的引入大大減少了復雜音頻編解碼算法的執(zhí)行周期數(shù)。

          有些新的專用音頻指令為24位指令,有些則為64位FLIX格式的指令。HiFi 2音頻引擎的FLIX格式指令包括兩個操作槽。所有的HiFi 2音頻引擎指令擴展都可以直接利用與Tensilica的自動化Xtensa Processor Generator(處理器生成器)生成的處理器一起產(chǎn)生的編譯器。如圖1所示。


          圖1:HiFi 2指令格式

          HiFi 2音頻引擎擴展對Xtensa LX處理器增加的硬件包括兩個MAC單元。每個MAC單元可以執(zhí)行2424位和3216位的乘法,兩個MAC單元都采用流水線方式執(zhí)行,因此每個時鐘周期都可以產(chǎn)生一個新的執(zhí)行結(jié)果。增加的硬件還包括哈夫曼編碼器和解碼器、一個位流處理器和兩個用于處理24位音頻數(shù)據(jù)的專用寄存器文件。其中一個寄存器文件包括8個48位寄存器,每個寄存器可以存放兩個24位數(shù)據(jù)值;另一個寄存器文件包括4個56位寄存器,保存兩個MAC單元產(chǎn)生的擴展精度運算結(jié)果。如圖2所示。


          圖2:HiFi 2結(jié)構(gòu)框圖

          移植到Xtensa HiFi 2音頻引擎結(jié)構(gòu)的數(shù)字音頻編解碼算法的性能結(jié)果表明,設計只需要很小的處理器帶寬就可以支持高質(zhì)量的音頻編解碼。例如,MP3解碼器在播放以48kHz/128kbps立體聲格式存儲的音樂時,只需要13~15MHz的處理器帶寬。而在類似的碼率下,MP3編碼器也只需38~40MHz的處理器帶寬。AAC-LC編碼器/解碼器以及WMA解碼器也可以獲得相似的結(jié)果。

          Xtensa LX處理器采用廣泛的時鐘門控技術,該技術超越了Xtensa V處理器設計中使用的該技術,以用來降低功耗。該特性以及用來在Xtensa HiFi2音頻引擎架構(gòu)上實現(xiàn)數(shù)字音頻編解碼所需的低時鐘速率一起,產(chǎn)生了非常高效的音頻處理器。具有Xtensa HiFi 2音頻引擎擴展的Xtensa LX處理器采用TSMC 的130nm LV制造工藝,功耗只有91μW/MHz;而原來基于Xtensa V處理器的HiFi音頻引擎的功耗則為207μW/MHz。

          當執(zhí)行AAC-LC編碼器算法時,HiFi 2音頻引擎工作頻率為38MHz;而原來的Xtensa HiFi音頻引擎工作頻率則為85MHz。這些改進的結(jié)果是,在執(zhí)行AAC-LC編碼器算法時,Xtensa HiFi 2音頻引擎的功耗為3.5mW;而原來的Xtensa HiFi音頻引擎在執(zhí)行相同任務時功耗則為17.6mW。盡管原來的Xtensa HiFi音頻引擎的功耗已經(jīng)很低了,但是Xtensa HiFi 2音頻引擎的功耗仍然比原來降低了五倍。

          Xtensa HiFi 2音頻引擎架構(gòu)同原來成功的Xtensa HiFi音頻引擎相比,有三個方面的優(yōu)勢。首先,Xtensa HiFi 2音頻引擎降低了實現(xiàn)先進的數(shù)字音頻編解碼的處理器帶寬。其次,在執(zhí)行這些數(shù)字音頻編解碼算法時,降低了功耗,這是由于需要的帶寬降低,以及因為Xtensa HiFi 2所基于的Xtensa LX處理器與以前的Xtensa V處理器相比具有更多的擴展時鐘門控。最后,基于Xtensa LX的Xtensa HiFi 2音頻引擎架構(gòu)與原來基于Xtensa V處理器的Xtensa HiFi引擎相比,實現(xiàn)時需要更少的門數(shù)(在200MHz時鐘速率下,綜合出來的處理器門數(shù)減少了大約20%)。

          通過增加專用音頻指令,Tensilica的Xtensa LX處理器可以提供一個高效的、低功耗、高性能平臺用于構(gòu)建數(shù)字音頻產(chǎn)品。這樣的平臺可以執(zhí)行多種音頻編解碼算法,同時如果需要的話也能執(zhí)行超越傳統(tǒng)DSP的控制類任務。而且,Xtensa HiFi 2音頻引擎可以提供相同性能下低得多的成本和時鐘頻率。因此,與通用CPU相比可以大大降低功耗級別。



          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();