官术网_书友最值得收藏!

2.2 數字信號處理系統架構分析

信號處理這一領域總是得益于它的理論、應用與實現信號處理系統的技術之間的緊密結合。日漸增長的應用范圍和對日益增加的高級算法的需求總是與實現信號處理系統器件技術的快速發展齊頭并進的。相對于模擬信號處理系統而言,數字信號處理系統具有體積小、功耗小、精度高、可靠性高、靈活性大、易于大規模集成及可進行二維與多維處理等優勢。一個典型的數字信號處理系統如圖2.1所示。在這種情況下,連續時間的模擬信號經過抗混迭濾波器輸出帶限信號,以保證A/D轉換器采樣頻率滿足采樣定理的要求。A/D轉換器輸出的數字信號傳送給DSP芯片處理并將處理結果傳送給D/A轉換器,以模擬形式輸出。對于這一類系統,往往希望它們能夠實時工作,這就意味著數字信號處理系統要以對模擬信號采樣的同一速率來完成處理。顯然,在這個數字系統中,DSP芯片是核心器件。隨著A/D轉換器工藝和技術的發展,所能提供的采樣頻率越來越高,這也使得數字信號處理越來越靠近前端,由常規的基帶處理跨越到直接中頻處理。這樣就對DSP芯片的實時處理能力提出了越來越高的要求。

圖2.1 一個典型的數字信號處理系統

數字信號處理系統的性能取決于3個因素:采樣頻率(Frequency)、架構(Architec-ture)和字長(Wordlength)。這3個因素對系統性能(如系統速度、系統帶寬、系統功耗及系統資源等)起著決定性的作用。

處理單元是數字信號處理系統的核心部件。目前,主流的處理單元可分為3類:指令集處理單元、硬連線結構處理單元和可重構處理單元。

指令集處理單元的典型代表是微處理器單元(Mirco-Processor Unit,MPU)和通用或專用DSP處理器。以通用DSP處理器為例,它基于CPU架構,采用順序的工作模式,通過軟件指令的方式完成數字信號處理算法。由于它具有適用于各種數字信號處理算法實現的通用硬件架構,所以在通用性和靈活性上有很大的優勢。但是,DSP處理器也有自身的不足之處:算術邏輯單元(Arith Logic Unit,ALU)數量上的缺陷導致其并行處理能力大打折扣。顯然,隨著采樣頻率的提高,每個采樣周期所能完成的指令數目是遞減的。另外,ALU并非獨立的乘法器,而是根據算法的需要扮演著不同的角色,執行不同的功能,如乘法運算、除法運算及開方運算等。

硬連線結構處理單元的典型代表是ASIC。它是針對完成某種特定數字信號處理算法的集成電路器件,所以在性能指標、工作速度、可靠性和應用成本上優于DSP處理器。由于它的硬連線模式,導致它在功能重構及應用修正方面缺乏靈活性,且開發周期長,風險大,成本高。

可重構處理單元的典型代表是FPGA。它具有規則的可編程結構,可實現各種邏輯功能,屬于硬件可編程,所以也被稱為“液體硬件”。用FPGA實現數字信號處理具有如下優勢。

第一,FPGA具有很強的運算能力。這是因為FPGA內部有大量的硬線MAC,同時,這些MAC在全流水模式下可高速運行。如圖2.2所示,Xilinx的Virtex-4、Virtex-5和Vir-tex-6內部MAC的最高運行速度可分別達到500MHz[3]、550MHz[4]和600MHz[5]。結合FP-GA內部MAC的個數,相應的運算能力如圖2.3所示。

圖2.2 Virtex-4、Virtex-5 和Virtex-6內部MAC的最高運行速度

圖2.3 Virtex-4、Virtex-5 和Virtex-6內部MAC的運算能力比較

第二,FPGA具有極大的靈活性。例如,可實現一個式(2.1)所確定的乘累加運算。

在FPGA內部可采用全并行、半并行和串行3種方式。這3種方式各有優勢:全并行方式可提供最高的處理速度,適用于高的采樣頻率的場合;串行方式占用資源最少,適用于低的采樣頻率的場合;半并行方式實現了資源與速度的折中,如圖2.4所示。

圖2.4 在FPGA中實現乘累加運算的3種方式

第三,通過集成可降低系統成本。這是因為FPGA的容量越來越大。如圖2.5所示,在Virtex-II時代需要一些ASIC器件作為補充,到了Virtex-4時代,這些ASIC器件所執行的功能可由FPGA完成。FPGA容量進一步增大,使得原來需要多片FPGA和多片DSP處理器完成的功能可能只需要單片FPGA和DSP處理器完成,從而減小了PCB尺寸,如圖2.6所示。同時,這也有利于陣列信號處理的實現。

圖2.5 從Virtex-II時代跨越到Virtex-4時代

對通用DSP處理器、ASIC和FPGA進行比較,如圖2.7所示。通用DSP處理器靈活,但實時性欠佳;ASIC具有很高的性能,但靈活性欠佳;FPGA則在靈活性和高性能上取得了兼顧。

數字信號處理系統經歷了單片DSP處理器、多片DSP處理器并行工作的架構模式。而目前,主流的數字信號處理系統架構采用的是FPGA+DSP處理器的模式或FPGA+DSP+ARM處理器的模式。FPGA+DSP處理器的數字信號處理系統架構如圖2.8所示。FPGA在系統中扮演著預處理器或協處理器的角色。作為預處理器,FPGA對高速數據流進行處理,將處理后的低速數據流交給DSP處理器完成后續處理;作為協處理器,FPGA受DSP處理器的控制,實現不同工作模式的切換。FPGA+DSP處理器+ARM核的數字信號處理系統架構如圖2.9所示。有些廠商將ARM核與DSP處理器集成于同一芯片內,從而形成如圖2.10所示的架構。此外,Xilinx即將推出的EPP Zynq -7000系列FPGA內部嵌入了兩個ARM核,同時其內部還有大量的MAC(最多可達760個)和BRAM(最多可達465塊,每塊36Kb),可提供最高可達912GMACs/s的運算能力,這對ARM核的DSP處理能力是一個強有力的補充。這樣,在某些應用場合可采用FPGA+EPP的架構模式,如圖2.1 1所示。

圖2.6 從Virtex-4時代跨越到Virtex-5、Virtex-6時代

圖2.7 通用DSP處理器、ASIC和FPGA的比較

圖2.8 FPGA+DSP處理器的數字信號處理系統架構

圖2.9 FPGA+DSP處理器+ARM核的數字信號處理系統架構

圖2.10 ARM核與DSP處理器集成于同一芯片內的模式

圖2.11 FPGA+EPP的數字信號處理系統架構

對于性能要求極高的應用,可將復雜算法劃分為底層部分和頂層部分,結合DSP處理器和FPGA各自的結構和功能特點,將算法的各部分映射到不同的硬件模塊上,在系統功能上實現互補。底層部分用于數據處理量大、速度要求高、但是算法結構相對比較簡單的算法,適合用FPGA硬件的高度并行性實現,可同時兼顧速度及靈活性,如一定長度的FFT/IFFT、FIR濾波等算法。頂層部分處理的特點是所處理的數據量較底層部分小,但算法的控制結構復雜,適合用運算速度高、尋址方式靈活、通信機制強大的DSP處理器實現。FPGA+DSP處理器的架構是目前高性能處理系統的主流模式。這種結構非常靈活,有較強的通用性,適合模塊化設計,有利于提高算法效率,縮短開發周期,并易于維護和擴展。

主站蜘蛛池模板: 平原县| 海门市| 昌邑市| 罗山县| 会昌县| 榆社县| 昆明市| 峡江县| 蓬溪县| 池州市| 平定县| 沙洋县| 鹤壁市| 秦皇岛市| 阳泉市| 哈密市| 大埔区| 纳雍县| 永泰县| 东光县| 德保县| 邵阳市| 呼和浩特市| 东丰县| 阳西县| 武山县| 宿州市| 济阳县| 长顺县| 甘南县| 靖边县| 维西| 怀安县| 北海市| 古浪县| 郓城县| 穆棱市| 简阳市| 云霄县| 大田县| 河东区|