數(shù)字信號(hào)處理器論文
時(shí)間:2022-09-11 04:38:00
導(dǎo)語(yǔ):數(shù)字信號(hào)處理器論文一文來(lái)源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢(xún)客服老師,歡迎參考。
DSP器件按設(shè)計(jì)要求可以分為兩類(lèi)。第一類(lèi),應(yīng)用領(lǐng)域?yàn)榱畠r(jià)的、大規(guī)模嵌入式應(yīng)用系統(tǒng),如手機(jī)、磁盤(pán)驅(qū)動(dòng)(DSP用作伺服電機(jī)控制)以及便攜式數(shù)字音頻播放器等。在這些應(yīng)用中價(jià)格和集成度是最重要的考慮因素。對(duì)于便攜式電池供電的設(shè)備,功耗也是一個(gè)關(guān)鍵的因素。盡管這些應(yīng)用常常需要開(kāi)發(fā)運(yùn)行于DSP的客戶(hù)應(yīng)用軟件和外圍支持硬件,但易于開(kāi)發(fā)的要求仍然是次要的因素,因?yàn)榕可a(chǎn)可以分?jǐn)傞_(kāi)發(fā)成本,從而降低單位產(chǎn)品的開(kāi)發(fā)成本。
另外一類(lèi)是需要用復(fù)雜算法對(duì)大量數(shù)據(jù)進(jìn)行處理的應(yīng)用,例如聲納探測(cè)和地震探測(cè)等,也需要用DSP器件。該類(lèi)設(shè)備的批量一般較小、算法要求苛刻、產(chǎn)品很大而且很復(fù)雜。所以設(shè)計(jì)工程師在選擇處理器時(shí)會(huì)盡量選擇性能最佳、易于開(kāi)發(fā)并支持多處理器的DSP器件。有時(shí),設(shè)計(jì)工程師更喜歡選用現(xiàn)成的開(kāi)發(fā)板來(lái)開(kāi)發(fā)系統(tǒng)而不是從零開(kāi)始硬件和軟件設(shè)計(jì),同時(shí)可以采用現(xiàn)成的功能庫(kù)文件開(kāi)發(fā)應(yīng)用軟件。
在實(shí)際設(shè)計(jì)時(shí)應(yīng)根據(jù)具體的應(yīng)用選擇合適的DSP。不同的DSP有不同的特點(diǎn),適用于不同的應(yīng)用,在選擇時(shí)可以遵循以下要點(diǎn)。
算法格式
DSP的算法有多種。絕大多數(shù)的DSP處理器使用定點(diǎn)算法,數(shù)字表示為整數(shù)或-1.0到+1.0之間的小數(shù)形式。有些處理器采用浮點(diǎn)算法,數(shù)據(jù)表示成尾數(shù)加指數(shù)的形式:尾數(shù)×2指數(shù)。
浮點(diǎn)算法是一種較復(fù)雜的常規(guī)算法,利用浮點(diǎn)數(shù)據(jù)可以實(shí)現(xiàn)大的數(shù)據(jù)動(dòng)態(tài)范圍(這個(gè)動(dòng)態(tài)范圍可以用最大和最小數(shù)的比值來(lái)表示)。浮點(diǎn)DSP在應(yīng)用中,設(shè)計(jì)工程師不用關(guān)心動(dòng)態(tài)范圍和精度一類(lèi)的問(wèn)題。浮點(diǎn)DSP比定點(diǎn)DSP更容易編程,但是成本和功耗高。
由于成本和功耗的原因,一般批量產(chǎn)品選用定點(diǎn)DSP。編程和算法設(shè)計(jì)人員通過(guò)分析或仿真來(lái)確定所需要的動(dòng)態(tài)范圍和精度。如果要求易于開(kāi)發(fā),而且動(dòng)態(tài)范圍很寬、精度很高,可以考慮采用浮點(diǎn)DSP。
也可以在采用定點(diǎn)DSP的條件下由軟件實(shí)現(xiàn)浮點(diǎn)計(jì)算,但是這樣的軟件程序會(huì)占用大量處理器時(shí)間,因而很少使用。有效的辦法是“塊浮點(diǎn)”,利用該方法將具有相同指數(shù),而尾數(shù)不同的一組數(shù)據(jù)作為數(shù)據(jù)塊進(jìn)行處理?!皦K浮點(diǎn)”處理通常用軟件來(lái)實(shí)現(xiàn)。
數(shù)據(jù)寬度
所有浮點(diǎn)DSP的字寬為32位,而定點(diǎn)DSP的字寬一般為16位,也有24位和20位的DSP,如摩托羅拉的DSP563XX系列和Zoran公司的ZR3800X系列。由于字寬與DSP的外部尺寸、管腳數(shù)量以及需要的存儲(chǔ)器的大小等有很大的關(guān)系,所以字寬的長(zhǎng)短直接影響到器件的成本。字寬越寬則尺寸越大,管腳越多,存儲(chǔ)器要求也越大,成本相應(yīng)地增大。在滿(mǎn)足設(shè)計(jì)要求的條件下,要盡量選用小字寬的DSP以減小成本。
在關(guān)于定點(diǎn)和浮點(diǎn)的選擇時(shí),可以權(quán)衡字寬和開(kāi)發(fā)復(fù)雜度之間的關(guān)系。例如,通過(guò)將指令組合連用,一個(gè)16位字寬的DSP器件也可以實(shí)現(xiàn)32位字寬雙精度算法(當(dāng)然雙精度算法比單精度算法慢得多)。如果單精度能滿(mǎn)足絕大多數(shù)的計(jì)算要求,而僅少量代碼需要雙精度,這種方法也可行,但如果大多數(shù)的計(jì)算要求精度很高,則需要選用較大字寬的處理器。
請(qǐng)注意,絕大多數(shù)DSP器件的指令字和數(shù)據(jù)字的寬度一樣,也有一些不一樣,如ADI(模擬器件公司)的ADSP-21XX系列的數(shù)據(jù)字為16位而指令字為24位。
DSP的速度
處理器是否符合設(shè)計(jì)要求,關(guān)鍵在于是否滿(mǎn)足速度要求。測(cè)試處理器的速度有很多方法,最基本的是測(cè)量處理器的指令周期,即處理器執(zhí)行最快指令所需要的時(shí)間。指令周期的倒數(shù)除以一百萬(wàn),再乘以每個(gè)周期執(zhí)行的指令數(shù),結(jié)果即為處理器的最高速率,單位為每秒百萬(wàn)條指令MIPS。
但是指令執(zhí)行時(shí)間并不能表明處理器的真正性能,不同的處理器在單個(gè)指令完成的任務(wù)量不一樣,單純地比較指令執(zhí)行時(shí)間并不能公正地區(qū)別性能的差異。現(xiàn)在一些新的DSP采用超長(zhǎng)指令字(VLIW)架構(gòu),在這種架構(gòu)中,單個(gè)周期時(shí)間內(nèi)可以實(shí)現(xiàn)多條指令,而每個(gè)指令所實(shí)現(xiàn)的任務(wù)比傳統(tǒng)DSP少,因此相對(duì)VLIW和通用DSP器件而言,比較MIPS的大小時(shí)會(huì)產(chǎn)生誤導(dǎo)作用。
即使在傳統(tǒng)DSP之間比較MIPS大小也具有一定的片面性。例如,某些處理器允許在單個(gè)指令中同時(shí)對(duì)幾位一起進(jìn)行移位,而有些DSP的一個(gè)指令只能對(duì)單個(gè)數(shù)據(jù)位移位;有些DSP可以進(jìn)行與正在執(zhí)行的ALU指令無(wú)關(guān)的數(shù)據(jù)的并行處理(在執(zhí)行指令的同時(shí)加載操作數(shù)),而另外有些DSP只能支持與正在執(zhí)行的ALU指令有關(guān)的數(shù)據(jù)并行處理;有些新的DSP允許在單個(gè)指令內(nèi)定義兩個(gè)MAC。因此僅僅進(jìn)行MIPS比較并不能準(zhǔn)確得出處理器的性能。
解決上述問(wèn)題的方法之一是采用一個(gè)基本的操作(而不是指令)作為標(biāo)準(zhǔn)來(lái)比較處理器的性能。常用到的是MAC操作,但是MAC操作時(shí)間不能提供比較DSP性能差異的足夠信息,在絕大多數(shù)DSP中,MAC操作僅在單個(gè)指令周期內(nèi)實(shí)現(xiàn),其MAC時(shí)間等于指令周期時(shí)間,如上所述,某些DSP在單個(gè)MAC周期內(nèi)處理的任務(wù)比其它DSP多。MAC時(shí)間并不能反映諸如循環(huán)操作等的性能,而這種操作在所有的應(yīng)用中都會(huì)用到。
最通用的辦法是定義一套標(biāo)準(zhǔn)例程,比較在不同DSP上的執(zhí)行速度。這種例程可能是一個(gè)算法的“核心”功能,如FIR或IIR濾波器等,也可以是整個(gè)或部分應(yīng)用程序(如語(yǔ)音編碼器)。圖1為使用BDTI公司的工具測(cè)試的幾款DSP器件性能。
在比較DSP處理器的速度時(shí)要注意其所標(biāo)榜的MOPS(百萬(wàn)次操作每秒)和MFLOPS(百萬(wàn)次浮點(diǎn)操作每秒)參數(shù),因?yàn)椴煌膹S(chǎng)商對(duì)“操作”的理解不一樣,指標(biāo)的意義也不一樣。例如,某些處理器能同時(shí)進(jìn)行浮點(diǎn)乘法操作和浮點(diǎn)加法操作,因而標(biāo)榜其產(chǎn)品的MFLOPS為MIPS的兩倍。
其次,在比較處理器時(shí)鐘速率時(shí),DSP的輸入時(shí)鐘可能與其指令速率一樣,也可能是指令速率的兩倍到四倍,不同的處理器可能不一樣。另外,許多DSP具有時(shí)鐘倍頻器或鎖相環(huán),可以使用外部低頻時(shí)鐘產(chǎn)生片上所需的高頻時(shí)鐘信號(hào)。
存儲(chǔ)器管理
DSP的性能受其對(duì)存儲(chǔ)器子系統(tǒng)的管理能力的影響。如前所述,MAC和其它一些信號(hào)處理功能是DSP器件信號(hào)處理的基本能力,快速M(fèi)AC執(zhí)行能力要求在每個(gè)指令周期從存儲(chǔ)器讀取一個(gè)指令字和兩個(gè)數(shù)據(jù)字。有多種方法實(shí)現(xiàn)這種讀取,包括多接口存儲(chǔ)器(允許在每個(gè)指令周期內(nèi)對(duì)存儲(chǔ)器多次訪(fǎng)問(wèn))、分離指令和數(shù)據(jù)存儲(chǔ)器(“哈佛”結(jié)構(gòu)及其派生類(lèi))以及指令緩存(允許從緩存讀取指令而不是存儲(chǔ)器,從而將存儲(chǔ)器空閑出來(lái)用作數(shù)據(jù)讀取)。圖2和圖3顯示了哈佛存儲(chǔ)器結(jié)構(gòu)與很多微控制器采用的“馮·諾曼”結(jié)構(gòu)的差別。
另外要注意所支持的存儲(chǔ)器空間的大小。許多定點(diǎn)DSP的主要目標(biāo)市場(chǎng)是嵌入式應(yīng)用系統(tǒng),在這種應(yīng)用中存儲(chǔ)器一般較小,所以這種DSP器件具有小到中等片上存儲(chǔ)器(4K到64K字左右),備有窄的外部數(shù)據(jù)總線(xiàn)。另外,絕大多數(shù)定點(diǎn)DSP的地址總線(xiàn)小于或等于16位,因而可外接的存儲(chǔ)器空間受到限制。一些浮點(diǎn)DSP的片上存儲(chǔ)器很小,甚至沒(méi)有,但外部數(shù)據(jù)總線(xiàn)寬。例如TI公司的TMS320C30只有6K片上存儲(chǔ)器,外部總線(xiàn)為24位,13位外部地址總線(xiàn)。而ADI的ADSP2-21060具有4Mb的片上存儲(chǔ)器,可以多種方式劃分為程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器。
選擇DSP時(shí),需要根據(jù)具體應(yīng)用對(duì)存儲(chǔ)空間大小以及對(duì)外部總線(xiàn)的要求來(lái)選擇。
開(kāi)發(fā)的簡(jiǎn)便性
對(duì)不同的應(yīng)用來(lái)說(shuō),對(duì)開(kāi)發(fā)簡(jiǎn)便性的要求不一樣。對(duì)于研究和樣機(jī)的開(kāi)發(fā),一般要求系統(tǒng)工具能便于開(kāi)發(fā)。而如果公司在開(kāi)發(fā)下一代手機(jī)產(chǎn)品,成本是最重要的因素,只要能降低最終產(chǎn)品的成本,一般他們?cè)敢獬惺芎軣┈嵉拈_(kāi)發(fā),采用復(fù)雜的開(kāi)發(fā)工具(當(dāng)然如果大大延遲了產(chǎn)品上市的時(shí)間則是另一回事)。
因此選擇DSP時(shí)需要考慮的因素有軟件開(kāi)發(fā)工具(包括匯編、鏈接、仿真、調(diào)試、編譯、代碼庫(kù)以及實(shí)時(shí)操作系統(tǒng)等部分)、硬件工具(開(kāi)發(fā)板和仿真機(jī))和高級(jí)工具(例如基于框圖的代碼生成環(huán)境)。利用這些工具的設(shè)計(jì)過(guò)程如圖4所示。
選擇DSP器件時(shí)常有如何實(shí)現(xiàn)編程的問(wèn)題。一般設(shè)計(jì)工程師選擇匯編語(yǔ)言或高級(jí)語(yǔ)言(如C或Ada),或兩者相結(jié)合的辦法?,F(xiàn)在大部分的DSP程序采用匯編語(yǔ)言,由于編譯器產(chǎn)生的匯編代碼一般未經(jīng)最優(yōu)化,需要手動(dòng)進(jìn)行程序優(yōu)化,降低程序代碼大小和使流程更合理,進(jìn)一步加快程序的執(zhí)行速度。這樣的工作對(duì)于消費(fèi)類(lèi)電子產(chǎn)品很有意義,因?yàn)橥ㄟ^(guò)代碼的優(yōu)化能彌補(bǔ)DSP性能的不足。
使用高級(jí)語(yǔ)言編譯器的設(shè)計(jì)工程師會(huì)發(fā)現(xiàn),浮點(diǎn)DSP編譯器的執(zhí)行效果比定點(diǎn)DSP好,這有幾個(gè)原因:首先,多數(shù)的高級(jí)語(yǔ)言本身并不支持小數(shù)算法;其次,浮點(diǎn)處理器一般比定點(diǎn)處理器具有更規(guī)則的指令,指令限制少,更適合編譯器處理;第三,由于浮點(diǎn)處理器支持更大的存儲(chǔ)器,能提供足夠的空間。編譯器產(chǎn)生的代碼一般比手動(dòng)生成的代碼更大。
不管是用高級(jí)語(yǔ)言還是匯編語(yǔ)言實(shí)現(xiàn)編程,都必須注意調(diào)試和硬件仿真工具的使用,因?yàn)楹艽笠徊糠值拈_(kāi)發(fā)時(shí)間會(huì)花在這里。幾乎所有的生產(chǎn)商都提供指令集仿真器,在硬件完成之前,采用指令集仿真器對(duì)軟件調(diào)試很有幫助。如果所用的是高級(jí)語(yǔ)言,對(duì)高級(jí)語(yǔ)言調(diào)試器功能進(jìn)行評(píng)估很重要,包括能否與模擬機(jī)和/或硬件仿真器一起運(yùn)行等性能。
大多數(shù)DSP銷(xiāo)售商提供硬件仿真工具,現(xiàn)在許多處理器具有片上調(diào)試/仿真功能,通過(guò)采用IEEE1149.1JTAG標(biāo)準(zhǔn)的串行接口訪(fǎng)問(wèn)。該串行接口允許基于掃描的仿真,即程序員通過(guò)該接口加載斷點(diǎn),然后通過(guò)掃描處理器內(nèi)部寄存器來(lái)查看處理器到達(dá)斷點(diǎn)后寄存器的內(nèi)容并進(jìn)行修改。
很多的生產(chǎn)商都可以提供現(xiàn)成的DSP開(kāi)發(fā)系統(tǒng)板。在硬件沒(méi)有開(kāi)發(fā)完成之前可用開(kāi)發(fā)板實(shí)現(xiàn)軟件實(shí)時(shí)運(yùn)行調(diào)試,這樣可以提高最終產(chǎn)品的可制造性。對(duì)于一些小批量系統(tǒng)甚至可以用開(kāi)發(fā)板作為最終產(chǎn)品電路板。
支持多處理器
在某些數(shù)據(jù)計(jì)算量很大的應(yīng)用中,經(jīng)常要求使用多個(gè)DSP處理器。在這種情況下,多處理器互連和互連性能(關(guān)于相互間通信流量、開(kāi)銷(xiāo)和時(shí)間延遲)成為重要的考慮因素。如ADI的ADSP-2106X系列提供了簡(jiǎn)化多處理器系統(tǒng)設(shè)計(jì)的專(zhuān)用硬件。
電源管理和功耗
DSP器件越來(lái)越多地應(yīng)用在便攜式產(chǎn)品中,在這些應(yīng)用中功耗是一個(gè)重要的考慮因素,因而DSP生產(chǎn)商盡量在產(chǎn)品內(nèi)部加入電源管理并降低工作電壓以減小系統(tǒng)的功耗。在某些DSP器件中的電源管理功能包括:a.降低工作電壓:許多生產(chǎn)商提供低電壓DSP版本(3.3V,2.5V,或1.8V),這種處理器在相同的時(shí)鐘下功耗遠(yuǎn)遠(yuǎn)低于5V供電的同類(lèi)產(chǎn)品。
b.“休眠”或“空閑”模式:絕大多數(shù)處理器具有關(guān)斷處理器部分時(shí)鐘的功能,降低功耗。在某些情況下,非屏蔽的中斷信號(hào)可以將處理器從“休眠”模式下恢復(fù),而在另外一些情況下,只有設(shè)定的幾個(gè)外部中斷才能喚醒處理器。有些處理器可以提供不同省電功能和時(shí)延的多個(gè)“休眠”模式。
c.可編程時(shí)鐘分頻器:某些DSP允許在軟件控制下改變處理器時(shí)鐘,以便在某個(gè)特定任務(wù)時(shí)使用最低時(shí)鐘頻率來(lái)降低功耗。
d.外圍控制:一些DSP器件允許程序停止系統(tǒng)未用到的外圍電路的工作。
不管電源管理特性怎么樣,設(shè)計(jì)工程師要獲得優(yōu)秀的省電設(shè)計(jì)很困難,因?yàn)镈SP的功耗隨所執(zhí)行的指令不同而不同。多數(shù)生產(chǎn)商所提供的功耗指標(biāo)為典型值或最大值,而TI公司給出的指標(biāo)是一個(gè)例外,該公司的應(yīng)用實(shí)例中詳細(xì)地說(shuō)明了在執(zhí)行不同指令和不同配置下的功耗。
成本因素
在滿(mǎn)足設(shè)計(jì)要求條件下要盡量使用低成本DSP,即使這種DSP編程難度很大而且靈活性差。在處理器系列中,越便宜的處理器功能越少,片上存儲(chǔ)器也越小,性能也比價(jià)格高的處理器差。
封裝不同的DSP器件價(jià)格也存在差別。例如,PQFP和TQFP封裝比PGA封裝便宜得多。
在考慮到成本時(shí)要切記兩點(diǎn)。首先,處理器的價(jià)格在持續(xù)下跌;第二點(diǎn),價(jià)格還依賴(lài)于批量,如10,000片的單價(jià)可能會(huì)比1,000片的單價(jià)便宜很多。
本文小結(jié)
DSP處理器存在兩種發(fā)展趨勢(shì):一是DSP應(yīng)用越來(lái)越多,如手機(jī)和便攜式音頻播放器等。DSP將集成更多功能,如A/D轉(zhuǎn)換、LCD控制器等,系統(tǒng)成本和器件數(shù)將會(huì)大為降低。另一個(gè)趨勢(shì)是將DSP作為IP出售,如億恒科技公司的Camel和TriCore內(nèi)核。隨著EDA工具的不斷成熟,系統(tǒng)設(shè)計(jì)工程師將更容易地修改DSP內(nèi)核,加入用戶(hù)專(zhuān)用外圍電路以實(shí)現(xiàn)更專(zhuān)業(yè)化、更低成本的DSP解決方案。
- 上一篇:匯編語(yǔ)言論文
- 下一篇:通信電源研究論文