汪揚(yáng)埔
摘 要 數(shù)字信號(hào)處理器(Digital Signal Processor, 簡(jiǎn)稱(chēng)DSP)它是為獨(dú)立快速地實(shí)現(xiàn)各種數(shù)字信號(hào)處理、運(yùn)算而專(zhuān)門(mén)設(shè)計(jì)的一種處理器件,它擁有極其強(qiáng)大的數(shù)值運(yùn)算能力,其內(nèi)部采用指令和數(shù)據(jù)分開(kāi)的哈佛結(jié)構(gòu),具有專(zhuān)門(mén)的硬件乘法器。廣泛采用流水線(xiàn)操作,提供了特殊的專(zhuān)用DSP指令以加速快速傅立葉變換和卷積等常用DSP算法。
關(guān)鍵詞 數(shù)字信號(hào)處理器 DSP 電子技術(shù)
中圖分類(lèi)號(hào):TP3 文獻(xiàn)標(biāo)識(shí)碼:A
經(jīng)過(guò)幾十年的發(fā)展,DSP已被廣泛應(yīng)用于電器控制、通信、信號(hào)處理、儀器儀表、航天航空、生物醫(yī)藥和消費(fèi)電子等領(lǐng)域。21世紀(jì)后,數(shù)字化浪潮席卷全球,超大規(guī)模集成電路技術(shù)和計(jì)算機(jī)技術(shù)的高速發(fā)展,特別是網(wǎng)絡(luò)化和數(shù)字化信息市場(chǎng)的巨大需求,促使數(shù)字信號(hào)處理器成為這場(chǎng)數(shù)字化革命的核心,在未來(lái)數(shù)字化技術(shù)發(fā)展過(guò)程中,數(shù)字信號(hào)處理器將以其獨(dú)特的數(shù)字信號(hào)處理優(yōu)勢(shì)得到更加廣泛的應(yīng)用和普及。數(shù)字信號(hào)處理系統(tǒng)中,DSP芯片的主要功能是實(shí)時(shí)快速地實(shí)現(xiàn)各種數(shù)字信號(hào)處理的算法,為了實(shí)現(xiàn)各種不同數(shù)字信號(hào)的處理要求以及實(shí)時(shí)地進(jìn)行系統(tǒng)控制,DSP芯片一般都采取了一些特殊的軟硬件設(shè)計(jì)。下面本文將詳細(xì)的介紹數(shù)字信號(hào)處理器(簡(jiǎn)稱(chēng)DSP)的結(jié)構(gòu)和特點(diǎn)。
1 哈佛結(jié)構(gòu)
傳統(tǒng)的微處理器內(nèi)部大多采用馮?諾依曼結(jié)構(gòu),即片內(nèi)程序空間和數(shù)據(jù)空間共用一個(gè)公共的存儲(chǔ)空間并使用單一的程序和數(shù)據(jù)總線(xiàn)。將指令、數(shù)據(jù)存儲(chǔ)在同一存儲(chǔ)器中統(tǒng)一編址,依靠指令計(jì)數(shù)器提供的地址對(duì)指令、數(shù)據(jù)信息進(jìn)行區(qū)分。這種總線(xiàn)結(jié)構(gòu)使得CPU在執(zhí)行指令時(shí),取值和存取數(shù)據(jù)必須共享內(nèi)部總線(xiàn),因此程序指令只能串行執(zhí)行。
DSP芯片普遍采用數(shù)據(jù)總線(xiàn)和程序總線(xiàn)分離的哈佛結(jié)構(gòu)或改進(jìn)的哈佛結(jié)構(gòu)。其特點(diǎn)是把程序代碼和數(shù)據(jù)存儲(chǔ)在不同的存儲(chǔ)空間,即程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器是兩個(gè)相互獨(dú)立的存儲(chǔ)器,每個(gè)存儲(chǔ)器獨(dú)立編址、獨(dú)立訪問(wèn)。與兩個(gè)存儲(chǔ)器相對(duì)應(yīng)的是系統(tǒng)中設(shè)置了程序和數(shù)據(jù)兩條總線(xiàn),從而使數(shù)據(jù)的吞吐率提高了一倍。
改進(jìn)的哈佛結(jié)構(gòu)除了哈佛結(jié)構(gòu)的特征外,程序的存儲(chǔ)空間和數(shù)據(jù)的存儲(chǔ)空間之間還可以進(jìn)行數(shù)據(jù)交換,這種結(jié)構(gòu)可以并行數(shù)據(jù)交換。改進(jìn)的哈佛結(jié)構(gòu)還可以從程序存儲(chǔ)空間來(lái)初始化數(shù)據(jù)存儲(chǔ)空間,或把數(shù)據(jù)存儲(chǔ)空間的內(nèi)容轉(zhuǎn)移到程序存儲(chǔ)空間,這樣可以復(fù)用存儲(chǔ)器、降低成本、提高存儲(chǔ)器使用效率。
2 流水線(xiàn)技術(shù)
流水技術(shù)是以哈佛結(jié)構(gòu)和內(nèi)部多總線(xiàn)結(jié)構(gòu)為基礎(chǔ)的。DSP執(zhí)行每條指令時(shí),都需要?jiǎng)澐殖扇≈浮⒆g碼、取數(shù)、執(zhí)行等若干階段,每個(gè)階段稱(chēng)為一級(jí)流水,各階段可由片內(nèi)多個(gè)功能單元分別完成,從而大大提高了運(yùn)算速度。流水線(xiàn)操作就是將一條指令的執(zhí)行分解成多個(gè)階段,在多條指令同時(shí)執(zhí)行過(guò)程中,每個(gè)指令的執(zhí)行階段可以相互重疊進(jìn)行。通常指令重疊數(shù)也稱(chēng)為流水線(xiàn)深度。在執(zhí)行第N條指令取指令時(shí),前一條指令即第N-1個(gè)指令正在譯碼,第N-2個(gè)指令正在取數(shù),而第N-3個(gè)指令正在執(zhí)行。
3 專(zhuān)用的硬件乘法器
在數(shù)字信號(hào)處理算法中,大量的運(yùn)算是累加和乘。在DSP中具有硬件連線(xiàn)邏輯的高速“與或”運(yùn)算器(乘法器和累加器),取兩個(gè)操作數(shù)到乘法器中進(jìn)行乘法運(yùn)算,并將乘積加到累加器中,這些操作都可以在單個(gè)周期內(nèi)完成。乘法速度越快,DSP性能就越高。在通用的微處理器中,乘法指令是由一系列加法來(lái)實(shí)現(xiàn),故需要多個(gè)指令周期來(lái)完成。相比而言,DSP芯片的特征就是有一個(gè)專(zhuān)用的硬件乘法器。
4 特殊的DSP指令
在DSP中通常設(shè)有無(wú)開(kāi)銷(xiāo)或低開(kāi)銷(xiāo)循環(huán)及跳轉(zhuǎn)的硬件支持、快速的中斷處理和硬件I/O支持,并具有在單周期內(nèi)操作的多個(gè)硬件地址發(fā)生器。為更好地滿(mǎn)足數(shù)字信號(hào)處理的需要,在DSP指令系統(tǒng)中設(shè)計(jì)了一些特殊的DSP指令,以充分發(fā)揮DSP算法及各系列芯片的特殊設(shè)計(jì)功能。在DSP的指令系統(tǒng)中,大多是多功能指令,即一條指令可以完成多種不同的操作,或者說(shuō)一條指令具有幾條指令的功能。
5 豐富的片內(nèi)外存
DSP處理器為了自身工作的需要和與外部環(huán)境的協(xié)調(diào)工作,往往都設(shè)置了豐富的片內(nèi)外設(shè)(on-chip peripherals)。一般來(lái)說(shuō),DSP處理器的外設(shè)主要包括:
(1)時(shí)鐘發(fā)生器(振蕩器與鎖相環(huán)PLL);
(2)定時(shí)器(timer);
(3)軟件可編程等待狀態(tài)發(fā)生器,以便使較快的片內(nèi)功能模塊與較慢的片外電路及存儲(chǔ)器協(xié)調(diào);
(4)可配置的多種外部存儲(chǔ)控制器(EMIF);
(5)通用I/O;
(6)同步串口(SSP)與異步串口(ASP);
(7)主機(jī)接口(可配置主機(jī)并行接口);
(8)JTAG邊界掃描邏輯電路(IEEE1149.1標(biāo)準(zhǔn)),便于對(duì)DSP處理器作片上的在線(xiàn)仿真,以及多DSP處理器條件下的調(diào)試。
6 快速的指令周期
哈佛結(jié)構(gòu)、流水線(xiàn)操作、專(zhuān)用的硬件乘法器、特殊的DSP指令、豐富的片內(nèi)外存再加上集成電路的優(yōu)化設(shè)計(jì),大大縮短了DSP芯片的指令周期??焖俚闹噶钪芷谑沟肈SP芯片滿(mǎn)足了高實(shí)時(shí)性場(chǎng)合的需要。
在近20多年時(shí)間里,由于電子技術(shù)和計(jì)算機(jī)技術(shù)的不斷發(fā)展,目前DSP芯片的價(jià)格越來(lái)越低,性能價(jià)格比不斷提高。無(wú)論是高端電子產(chǎn)品,還是普通的家用電器,都與DPS芯片的應(yīng)用息息相關(guān)。概括起來(lái)DSP芯片的典型應(yīng)用主要集中在信號(hào)處理、通信、語(yǔ)音、圖形/圖像、軍事、儀器儀表、自動(dòng)控制、醫(yī)療、家用電器等領(lǐng)域。
參考文獻(xiàn)
[1] 冬雷.DSP原理及開(kāi)發(fā)技術(shù).北京:清華大學(xué)出版社,北京交通大學(xué)出版社,2007.
[2] 王忠勇,陳恩慶. DSP原理與應(yīng)用技術(shù).北京:電子工業(yè)出版社,2010.
[3] 鄧琛.DSP芯片技術(shù)及工程實(shí)例.北京:清華大學(xué)出版社,2010.