SHARC引領(lǐng)第四代通用DSP高端應(yīng)用潮流
回顧數(shù)字信號(hào)處理(DSP)技術(shù)的發(fā)展史,我們可以看到,DSP的發(fā)展大致經(jīng)歷了五個(gè)階段:
1)雛形階段。世界上第一個(gè)單片DSP芯片應(yīng)當(dāng)是1978年AMI公司發(fā)布的S2811,1980年,日本 NEC公司推出的μPD7720是第一個(gè)具有乘法器的商用DSP 芯片。
(2)第一代真正意義的DSP。1982年TI公司推出的TMS320ClO是第一代DSP的代表,它是16位定點(diǎn)DSP,首次采用哈佛結(jié)構(gòu),完成乘累加運(yùn)算時(shí)間為390ns,處理速度較慢。
(3)第二代DSP。1987年Motorola公司(后分離出Freescale半導(dǎo)體公司)推出了24位定點(diǎn)DSP芯片——DSP56001。ADI公司的ADSP-2100、TI公司的TMS320C50、AT&T公司的DSPl6A等也都是第二代DSP產(chǎn)品的典型代表。
(3)第三代DSP。包括第三代定點(diǎn)(ADSP-2180、TMS320C541、DSP56301等),這些產(chǎn)品改進(jìn)了內(nèi)部結(jié)構(gòu),增加了并行處理單元,擴(kuò)展了內(nèi)部存儲(chǔ)器容量,提高了處理速度。同時(shí)期還出現(xiàn)了功能更強(qiáng)的32位浮點(diǎn),如ADI公司的ADSP-21020,TI公司的TMS320C3X等。
(4)第四代DSP。過去幾年業(yè)界推出了性能更高的第四代處理器并不斷衍生更多產(chǎn)品,如ADI公司的32位浮點(diǎn)處理器SHRAC系列一代(ADSP2106X)、二代(ADSP2116X)、三代(ADSP2126X、ADSP2136X)以及最新的第四代SHARC系列ADSP2146X等,成為通用DSP技術(shù)發(fā)展路線上的又一座分水嶺。
從ADI SHARC產(chǎn)品組合可以看到:在速度、性能、集成度和I/O吞吐率等方面,第四代DSP比前一代DSP又有跨越式的增強(qiáng)。SHARC支持高性能32位和40位擴(kuò)展浮點(diǎn)運(yùn)算以及32位定點(diǎn)運(yùn)算,速度最快的SHARC處理器的內(nèi)核時(shí)鐘頻率最高可達(dá)450 MHz,處理能力達(dá)到2700 MFLOP(SHARC 2146x系列),而且片上外設(shè)也越來越豐富。它們正在為諸如工業(yè)控制、專業(yè)音響、汽車音頻、醫(yī)療電子等對(duì)信號(hào)處理品質(zhì)要求非常嚴(yán)苛的高端應(yīng)用提供核心動(dòng)力,為人類生活創(chuàng)造更多精彩。
第四代通用DSP的典型先進(jìn)特性
強(qiáng)大的運(yùn)算處理能力。SHARC處理器的高運(yùn)算性能來自SHARC內(nèi)核采用的一種單指令多數(shù)據(jù)(SIMD)架構(gòu)。此架構(gòu)包含兩個(gè)能夠并行執(zhí)行代碼的運(yùn)算單元,這意味著用戶可以在這兩個(gè)運(yùn)算單元中于同一周期內(nèi)執(zhí)行相同的指令。單周期執(zhí)行雙乘法和ALU運(yùn)算是SHARC處理器的特點(diǎn)之一,而且在單周期內(nèi)還能完成雙讀或雙寫數(shù)據(jù)以及取指令操作。為了保持這種單周期操作性能,內(nèi)核和存儲(chǔ)器之間存在很寬的帶寬。SHARC的一些浮點(diǎn)優(yōu)勢(shì),如浮點(diǎn)運(yùn)算可以減少量化誤差,還能實(shí)現(xiàn)更高的精度和更大的動(dòng)態(tài)范圍,這對(duì)濾波器等應(yīng)用來說是很有幫助的。
SHARC上集成了最多達(dá)67個(gè)零開銷DMA通道的直接存儲(chǔ)器訪問引擎。這個(gè)引擎在移動(dòng)數(shù)據(jù)時(shí)無需內(nèi)核干預(yù),因?yàn)镈MA傳送期間可以同時(shí)傳送代碼和數(shù)據(jù),而且在傳送過程中還能自動(dòng)打包8、16、32、40或48位數(shù)據(jù)。這也為提高系統(tǒng)處理性能立下了汗馬功勞。
大容量片上存儲(chǔ)器。在片上存儲(chǔ)器結(jié)構(gòu)方面,SHARC處理器具有很大容量的內(nèi)部RAM和ROM(例如,ADSP 2146x擁有5Mb的最大容量片上SRAM和4Mb的金屬掩膜編程ROM,如圖1所示)。片上RAM和內(nèi)核的運(yùn)行速度是一樣的,因此在代碼和數(shù)據(jù)訪問期間可實(shí)現(xiàn)零等待狀態(tài)。
無縫連接外部存儲(chǔ)器。SHARC上的外部存儲(chǔ)器接口允許連接SDRAM、SRAM和并行閃存甚至最高達(dá)2Gb DDR2 DRAM,而且是無膠合連接,此外還可以從閃存器件啟動(dòng)SHARC器件本身。在連接SDRAM時(shí),SHARC處理器支持64Mb至512Mb、配置為4、8和16位寬的器件。目前SHARC通過16位或32位寬總線對(duì)此進(jìn)行連接。
豐富的外設(shè)。SHARC上內(nèi)置了大量的外設(shè),其I/O處理器中包含數(shù)字音頻接口(DAI)和數(shù)字外設(shè)接口(DPI)。數(shù)字音頻接口包括了眾多的外設(shè),如精確時(shí)鐘發(fā)生器、采樣率轉(zhuǎn)換器、S/PDIF接口、串口等。數(shù)字外設(shè)接口同樣包含整套外設(shè),如SPI端口、兩線接口、UART和定時(shí)器。
強(qiáng)大、易用的開發(fā)工具。CROSSCORE是ADI公司的軟硬件開發(fā)工具產(chǎn)品線,其中包括了VisualDSP++集成開發(fā)和調(diào)試平臺(tái)、模擬器、評(píng)估板或EZ-KIT Lites、一些子卡或EZ-Extender卡。VisualDSP++中集成的SHARC專用編譯器能夠充分發(fā)揮SHARC的SIMD架構(gòu)優(yōu)勢(shì),而且支持單周期執(zhí)行的浮點(diǎn)運(yùn)算。VisualDSP++中的仿真器
無需硬件就能支持應(yīng)用軟件的開發(fā)。VisualDSP++中還包含了VDK或?qū)崟r(shí)操作系統(tǒng)內(nèi)核及調(diào)度器。硬件工具EZ-KIT Lites是一種很好的評(píng)估平臺(tái),價(jià)格不貴,可以用它來編程和開發(fā)SHARC上運(yùn)行的軟件。這些評(píng)估板通過USB模擬器連接VisualDSP++環(huán)境。
家庭影院、專業(yè)音頻模塊供應(yīng)商Lab X 技術(shù)公司總裁兼設(shè)計(jì)工程師Lee Minich曾評(píng)論到,“SHARC架構(gòu)非常簡(jiǎn)單易用,VisualDSP++開發(fā)工具功能強(qiáng)大,C/C++編譯器性能非凡。代碼非常容易理解和優(yōu)化。必要時(shí)我們可以在匯編器處理代碼,并使用高級(jí)語言(C語言)編寫非性能關(guān)鍵的代碼。我們希望在C編譯器等高級(jí)語言以及基本的匯編代碼之間進(jìn)行轉(zhuǎn)換。我們選擇SHARC處理器,因?yàn)樗鼮槲覀兲峁└呒?jí)且用戶友好的開發(fā)工具,而且可以利用C 語言和匯編語言進(jìn)行開發(fā)。”
兼容、靈活、高集成度實(shí)現(xiàn)高成本效益。SHARC一直以來保持的一大優(yōu)勢(shì)特性,即兼容性。許多SHARC器件都被設(shè)計(jì)為引腳兼容,因而使用戶在需要更高性能時(shí)可方便地更新?lián)Q代,或者將目標(biāo)產(chǎn)品轉(zhuǎn)向較低的性能以擴(kuò)充產(chǎn)品體系。另外,SHARC使用信號(hào)布線單元(SRU)單元來減少引腳數(shù)量,從而降低器件成本。所有外設(shè)集成在SHARC上,由用戶決定他們的應(yīng)用中要使用哪些外設(shè),再通過SRU把引腳引出來。另外,如前所述,SHARC還集成了大容量存儲(chǔ)器和豐富外設(shè),可簡(jiǎn)化硬件設(shè)計(jì)、最小化設(shè)計(jì)風(fēng)險(xiǎn),這也能幫助設(shè)計(jì)者降低總系統(tǒng)成本,縮短設(shè)計(jì)周期。
高可靠性。針對(duì)汽車應(yīng)用和其它高溫應(yīng)用場(chǎng)合,用戶可以選用SHARC系列中能工作于最高達(dá)105℃環(huán)境溫度下的產(chǎn)品,最低工作溫度可達(dá)到-40℃。
特別值得一提的是,最新一代SHARC 2146X還是SHARC系列中第一款采用65nm工藝制造的處理器,除了擁有迄今為止所有SHARC處理器中最高的內(nèi)核時(shí)鐘頻率,還還具備一些新的特性和更多不同的集成式外設(shè),如支持可變指令長(zhǎng)度執(zhí)行,可使代碼規(guī)??s小20%~30%;提供到16位 DDR2 SDRAM的無縫接口,能夠連接到更快的外部存儲(chǔ)器;還提供3個(gè)專用硬件加速器,每一個(gè)都是專用于執(zhí)行FFT、FIR和IIR算法,每個(gè)加速器都有自己專用的計(jì)算單元和自己專用的局部存儲(chǔ)器獨(dú)立于(處理器內(nèi)存);同時(shí)集成了熱敏二極管以及專門為汽車應(yīng)用開發(fā)的媒體局域總線(簡(jiǎn)稱MLB)等。2146X在資源方面保持了與以往SHARC處理器系列(包括2136x和2137x)的后向兼容,并且增強(qiáng)了許多新的指令,主要目的是幫助編譯器和代碼生成工具優(yōu)化和生成更好的代碼。
SHARC成就最廣泛的高性能浮點(diǎn)運(yùn)算應(yīng)用
上述非凡特性使得SHARC非常適合用于以下甚至更多的高性能應(yīng)用:從數(shù)字家庭、家庭影院系統(tǒng)和高清DVD到專業(yè)音響系統(tǒng)中的混頻器、放大器和合成器;醫(yī)療、測(cè)試測(cè)量及控制等工業(yè)與儀器儀表,在全球贏得了這些領(lǐng)域領(lǐng)先設(shè)備制造商的信賴。另外,在汽車應(yīng)用中,很多音頻放大器也采用了SHARC。在中國(guó),SHARC也正在贏得更多Design-win,包括電力線保護(hù)、風(fēng)能應(yīng)用中的風(fēng)電設(shè)備、頻譜分析儀等儀器儀表、醫(yī)療應(yīng)用中的各種病人監(jiān)護(hù)和生命維持、化學(xué)分析設(shè)備以及專業(yè)音頻設(shè)備等。下文就以SHARC在全球最新的部分客戶案例對(duì)其典型應(yīng)用做個(gè)梳理和分析,為您的設(shè)計(jì)選型提供參考。
圖2:采用SHARC處理器的Ingecon CleanPower風(fēng)輪機(jī)控制單元可精確控制提供給電網(wǎng)的風(fēng)能。
圖2所示為風(fēng)能大國(guó)——西班牙的Ingeteam公司Ingecon®CleanPower系列風(fēng)電產(chǎn)品控制單元系統(tǒng)框圖。Ingecon CleanPower是一個(gè)新的電氣拓?fù)?,它通過解決諧波失真、顫動(dòng)和紋波等變速風(fēng)力機(jī)常見問題來精確地控制提供給電網(wǎng)的電能。所有控制算法都由ADI公司最先進(jìn)的32位浮點(diǎn)SHARC處理器(包括ADSP 21363和ADSP 21469)執(zhí)行。在此系統(tǒng)中,整流器和逆變器必須同步運(yùn)行,逆變器側(cè)的SHARC處理器讀取和執(zhí)行整流器側(cè)SHARC的數(shù)據(jù)采集模塊,兩邊的SHARC處理器和FPGA共享多處理SHARC總線。對(duì)于電力等工業(yè)控制市場(chǎng),如前所述,最新一代SHARC ADSP 2146X系列最新引入了DDR2 DRAM控制器、接口和熱敏二極管,而且還引入了精確時(shí)鐘發(fā)生器(PCG),使之在這一市場(chǎng)領(lǐng)域占據(jù)更大的優(yōu)勢(shì)。
Ingecon CleanPower控制單元中的數(shù)字信號(hào)處理器用來實(shí)時(shí)執(zhí)行控制算法,因此所選的DSP需要滿足一系列要求:復(fù)雜的控制算法使得浮點(diǎn)處理器必不可少,速度對(duì)于必須在100微秒以內(nèi)執(zhí)行的實(shí)時(shí)處理運(yùn)算而言是至關(guān)重要的。另一個(gè)必備條件是充足的處理器內(nèi)部存儲(chǔ)器,原因包括以下幾點(diǎn):必須避免控制單元處于等待狀態(tài),因?yàn)榈却隣顟B(tài)會(huì)延遲處理。此外,內(nèi)部存儲(chǔ)器可以減少外部器件數(shù),從而最大程度地減少電路板設(shè)計(jì)中的EMI問題。SHARC處理器允許開發(fā)工程師以極其靈活的方式將內(nèi)存分隔成數(shù)據(jù)內(nèi)存和程序內(nèi)存,這樣今后可以在不改變硬件的情況下改變應(yīng)用。
Ingeteam公司的一位高級(jí)工程師表示:“SHARC的快速執(zhí)行能力還使我們的應(yīng)用能同時(shí)控制更多的設(shè)備,這樣我們就可以將省下的資金投入到新增的功能中”。因此,Ingeteam公司還將SHARC處理器用于其Ingedrive轉(zhuǎn)換器產(chǎn)品線的下一代控制單元中,該轉(zhuǎn)換器系列是多種用于工業(yè)、航海和基礎(chǔ)設(shè)施應(yīng)用的中等功率和大功率交流和直流整流器。
近幾年來中國(guó)風(fēng)電事業(yè)發(fā)展速度迅猛。截至2008年底,中國(guó)風(fēng)電機(jī)組累計(jì)裝機(jī)超過1200萬千瓦,成為僅次于美國(guó)、法國(guó)、西班牙的風(fēng)電裝機(jī)超千萬千瓦的風(fēng)電大國(guó)。據(jù)估計(jì),到2020年,中國(guó)風(fēng)能裝機(jī)容量將超過1億千瓦,屆時(shí)將成為全球風(fēng)能開發(fā)第一大國(guó)。ADI的SHARC DSP正在為本地的龍頭風(fēng)電制造企業(yè)實(shí)現(xiàn)產(chǎn)品自主創(chuàng)新提供核“芯”動(dòng)力,幫助他們?cè)谶@個(gè)潛力巨大的市場(chǎng)搶占更多商機(jī)。
而在音頻處理應(yīng)用方面,SHARC處理器一直被公認(rèn)為高品質(zhì)音頻處理的黃金標(biāo)準(zhǔn),傾倒了世界諸多頂尖專業(yè)音頻設(shè)備制造商,其中包括致力于為吉他彈奏者提供在高音質(zhì)和范圍、風(fēng)格及品牌聲望等方面占據(jù)“統(tǒng)治地位”產(chǎn)品的Damage Control工程公司。當(dāng)Damage Control公司開發(fā)其TimeLine與Glass Nexus混合模擬/DSP產(chǎn)品線時(shí),公司對(duì)音頻處理器的DSP市場(chǎng)進(jìn)行了一次徹底調(diào)查。他們希望處理器在音頻保真和動(dòng)態(tài)范圍方面具有優(yōu)異性能,以靈活地實(shí)現(xiàn)他們利用高級(jí)語言編程的音頻效果算法。Damage Control公司選擇了ADI公司的SHARC ADSP 21369處理器。21369是專門針對(duì)高性能音頻應(yīng)用而優(yōu)化的32/40位浮點(diǎn)處理器優(yōu)化,內(nèi)核指令速率為400MHz(2.5ns),內(nèi)置2MB的片上SRAM,6Mb掩膜可編程ROM,多重內(nèi)部總線可消除I/O瓶頸,并可獲得完整的CROSSCORE ®軟件和硬件開發(fā)工具支持. Damage Control公司技術(shù)副總裁Dave Fruehling指出:“SHARC處理器的性價(jià)比、設(shè)計(jì)靈活性、開發(fā)工具,以及ADI公司享有盛譽(yù)的技術(shù)支持,都給我們留下了深刻的印象。”
圖3:采用SHARC的專業(yè)音頻設(shè)備:立體聲參數(shù)延遲產(chǎn)品(左)和高級(jí)調(diào)制效果踏板(右)。
Damage Control公司的TimeLine(圖3左)是一款立體聲參數(shù)延遲產(chǎn)品,它提供連續(xù)控制,以產(chǎn)生移相、合聲、鑲邊、顫音、回聲、長(zhǎng)延遲和反相延遲等效果。它利用音樂聲音濾波器、直接及拖尾控制來提供無限可能性。TimeLine還提供經(jīng)典12AX7電子管的豐富熱情以及模擬干聲路徑。吉他演奏者可以存儲(chǔ)并調(diào)用8個(gè)設(shè)置,或在下一級(jí)控制中使用MIDI功能。Glass Nexus高級(jí)調(diào)制效果踏板(圖3右)實(shí)現(xiàn)了定制調(diào)制與動(dòng)態(tài)處理和混響的完美結(jié)合。SHARC浮點(diǎn)處理與雙12AX7電子管的結(jié)合,能夠確保最高水平的保真度和音感。Glass Nexus還具有預(yù)置存儲(chǔ)及MIDI功能。
另外,SHARC也在家庭影院、汽車音響等音頻應(yīng)用領(lǐng)域創(chuàng)造了一個(gè)又一個(gè)輝煌。例如,以高品質(zhì)音響設(shè)備著稱的 Fujitsu Ten公司為在汽車駕駛室環(huán)境中提供高性能輸出、先進(jìn)的聲音均衡效果和出眾的音質(zhì),選擇了SHARC ADSP 21364作為數(shù)字信號(hào)處理引擎來增強(qiáng)其音頻放大器的性能。SHARC處理器出眾的內(nèi)核性能、靈活的連接選項(xiàng)及集成的音頻專用外設(shè)使Fujitsu Ten公司可以克服汽車駕駛室頗具挑戰(zhàn)性的聲音方面的限制條件,提供傳統(tǒng)的原廠汽車放大器無法匹敵的汽車音響體驗(yàn)。利用高性能SHARC DSP架構(gòu)來實(shí)現(xiàn)其領(lǐng)先的“聲音空間控制技術(shù)”,F(xiàn)ujitsu Ten公司的功率音頻放大器以先進(jìn)的聲音均衡能力和生成完美音質(zhì)的音效處理能力超越競(jìng)爭(zhēng)對(duì)手,傲居行業(yè)領(lǐng)先地位。
圖4:中國(guó)某醫(yī)療電子設(shè)備制造商在多款設(shè)備中采用SHARC和/或TigerSHARC作為數(shù)字信號(hào)處理器平臺(tái)。
SHARC處理器支持40位擴(kuò)展精度浮點(diǎn)運(yùn)算,具有獨(dú)特的、帶有大型片上SRAM的超級(jí)哈佛架構(gòu),以及帶有多條內(nèi)部總線的獨(dú)立DMA引擎,消除了I/O瓶頸。處理器包含兩個(gè)計(jì)算處理部件,可以作為單指令多數(shù)據(jù)(SIMD)引擎,可以高效地執(zhí)行運(yùn)算密集的信號(hào)處理算法。而醫(yī)療電子設(shè)備正是運(yùn)算密集型典型應(yīng)用之一,借助SHARC,應(yīng)對(duì)醫(yī)療應(yīng)用中的復(fù)雜算法就變得游刃有余。目前SHARC已被用于脈搏測(cè)氧、聽力測(cè)試、病人監(jiān)護(hù)、化學(xué)(實(shí)驗(yàn)室)分析等多種醫(yī)療保健設(shè)備中。圖4中,中國(guó)本土成長(zhǎng)迅速的一家知名醫(yī)療電子設(shè)備制造商在其多款產(chǎn)品中采用SHARC作為核心數(shù)字信號(hào)處理平臺(tái)。
美國(guó)醫(yī)療技術(shù)公司Masimo專門從事先進(jìn)的醫(yī)療信號(hào)處理技術(shù)和產(chǎn)品的開發(fā)、授權(quán)和銷售,用于實(shí)現(xiàn)病人生命跡象的無創(chuàng)式監(jiān)測(cè)。Masimo SET脈搏測(cè)氧法是脈搏測(cè)氧法行業(yè)的“標(biāo)桿”,因?yàn)樗哂袆e人無法超越的精確執(zhí)行能力。該公司推出的Rainbow SET Rad-57脈搏CO-血氧計(jì)™,是一種可以精確測(cè)量血液中CO含量的儀器,基于該公司的信號(hào)抽取技術(shù)(SET),這種方法結(jié)合了專用信號(hào)處理算法和創(chuàng)新的傳感器技術(shù)用于捕獲、處理和報(bào)告動(dòng)脈氧含量和脈搏速率。驅(qū)動(dòng)器件的信號(hào)處理引擎正是來自ADI公司的具有代碼保護(hù)ROM的SHARC處理器,其浮點(diǎn)運(yùn)算能力可以提供Masimo算法所需的精度和準(zhǔn)確度。
圖5:Masimo為其便攜式CO-血氧計(jì)選擇了SHARC浮點(diǎn)運(yùn)算來應(yīng)對(duì)復(fù)雜的算法并降低功耗。
SHARC的SIMD架構(gòu)使Masimo可以在非常短的時(shí)間內(nèi)執(zhí)行大量的數(shù)學(xué)密集的算法。這意味著處理器能夠更長(zhǎng)時(shí)間內(nèi)工作在低功耗模式下,這樣就降低了功耗,并且可以用四節(jié)“AA”電池即可將工作時(shí)間提高到8小時(shí)。
Masimo還利用了SHARC處理器的大量片上特性,如片上掩??删幊谭且资訰OM(4Mb),兩個(gè)數(shù)據(jù)地址發(fā)生器(DAG1、DAG2),一個(gè)帶有指令緩存的程序序列器,一個(gè)能夠支持在內(nèi)核處理器周期內(nèi)在存儲(chǔ)器和內(nèi)核之間進(jìn)行4個(gè)32位數(shù)據(jù)傳輸?shù)腜M和DM總線,三個(gè)帶有PWM發(fā)生、PWM捕獲/脈沖寬度測(cè)量的可編程間隔定時(shí)器,片上SRAM(3M位),以及外部時(shí)間計(jì)數(shù)器能力,一個(gè)支持到片外存儲(chǔ)器外設(shè)的接口的8或16位的并行端口和一個(gè)JTAG測(cè)試訪問端口(TAP)。
SHARC的眾多集成外設(shè)/接口均成為CO-血氧計(jì)單元的信號(hào)鏈的組成部分,如同步串行接口(簡(jiǎn)稱為SPORTS)、DMA控制器、串行外設(shè)接口(SPI)串行端口和數(shù)字音頻接口等等。
此外,SHARC處理器與其它同系列的SHARC處理器源代碼兼容,因此Masimo無需重寫為以前的應(yīng)用所編寫代碼,即可在新處理器上運(yùn)行,這樣就節(jié)省了成本,加快了上市速度。