《DSP在現(xiàn)代測控技術中的應用》課件第1章_第1頁
《DSP在現(xiàn)代測控技術中的應用》課件第1章_第2頁
《DSP在現(xiàn)代測控技術中的應用》課件第1章_第3頁
《DSP在現(xiàn)代測控技術中的應用》課件第1章_第4頁
《DSP在現(xiàn)代測控技術中的應用》課件第1章_第5頁
已閱讀5頁,還剩115頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

第1章數(shù)字信號處理器技術概述1.1引言

1.2數(shù)字信號處理器概述

1.3TMS320系列DSP產(chǎn)品概述

1.4其他公司的DSP產(chǎn)品概述

1.1引言1.1.1數(shù)字信號處理技術的發(fā)展數(shù)字信號處理(DigitalSignalProcessing,DSP)是一門涉及多種學科而又廣泛應用于許多領域的新興學科。20世紀60年代以來,隨著計算機和信息技術的飛速發(fā)展,數(shù)字信號處理技術應運而生并得到迅速發(fā)展。在過去幾十年的時間里,數(shù)字信號處理已經(jīng)在通信、信號處理等領域得到極為廣泛的應用。

數(shù)字信號處理是利用計算機或專用處理設備,以數(shù)字形式對信號進行采集、變換、濾波、估值、增強、壓縮、識別等處理,得到符合人們需要的信號形式的過程。相對于模擬方式來講,數(shù)字方式可以采用更先進的算法,易于實現(xiàn)更高的性能、更多的功能,同時也使系統(tǒng)具有更好的靈活性。

數(shù)字信號處理是圍繞著數(shù)字信號處理的理論、實現(xiàn)和應用等幾個方面發(fā)展起來的。數(shù)字信號處理在理論上的發(fā)展推動了數(shù)字信號處理應用的發(fā)展;反過來,數(shù)字信號處理的應用又促進了數(shù)字信號處理理論水平的提高。而數(shù)字信號處理的實現(xiàn)則是理論和應用之間的橋梁。

一般來講,與模擬處理方式相比,數(shù)字處理方式在穩(wěn)定性、可靠性和靈活性等方面具有明顯的優(yōu)勢,數(shù)字化也是當前測控技術和儀器的一個重要發(fā)展方向,但由于模擬處理方式在實時性和射頻、微波等方面具有優(yōu)勢,因此在當前技術下,數(shù)字處理方式?jīng)Q不可能全面替代模擬方式。

表1-1比較了模擬處理方式和數(shù)字處理方式的優(yōu)缺點。

表1-1信號處理方式的比較

1.1.2數(shù)字信號處理系統(tǒng)的一般實現(xiàn)方法

數(shù)字信號處理是以眾多學科為理論基礎的,它所涉及的范圍極其廣泛。例如,在數(shù)學領域,微積分、概率統(tǒng)計、隨機過程、數(shù)值分析等都是數(shù)字信號處理的基本工具,數(shù)字信號處理與網(wǎng)絡理論、信號與系統(tǒng)、控制論、通信理論、故障診斷等也密切相關。近年來新興的一些學科,如人工智能、模式識別、神經(jīng)網(wǎng)絡等,都與數(shù)字信號處理密不可分??梢哉f,數(shù)字信號處理把許多經(jīng)典的理論體系作為自己的理論基礎,同時又使自己成為一系列新興學科的理論基礎。

數(shù)字信號處理的實現(xiàn)方法一般有以下幾種:

(1)用通用的可編程DSP芯片實現(xiàn)。與通用單片機相比,DSP芯片具有更加適合于數(shù)字信號處理的軟件和硬件資源,可用于復雜的數(shù)字信號處理算法。

(2)在通用的計算機或工控機上用高級語言編寫程序來實現(xiàn)。

(3)在通用計算機系統(tǒng)中加上專用的加速處理機來實現(xiàn)。

(4)用通用的單片機實現(xiàn)。由于單片機計算能力和計算速度的限制,這種方法可用于一些不太復雜的數(shù)字信號處理,如數(shù)字控制等。

(5)利用大規(guī)??删幊痰倪壿嬈骷?如FPGA)來實現(xiàn)。

(6)用專用的DSP芯片實現(xiàn)。在一些特殊的場合,要求的信號處理速度極高,用通用DSP芯片很難實現(xiàn),例如專用于FFT、數(shù)字濾波、卷積、相關等算法的DSP芯片,這種芯片將相應的信號處理算法在芯片內(nèi)部用硬件實現(xiàn),無需進行編程。

上述常用的實現(xiàn)平臺特點不同,各有優(yōu)缺點,在實際工程中設計者應根據(jù)實際應用需求和應用條件來選擇合適的實現(xiàn)平臺,不存在哪種平臺最優(yōu)的問題。一般來講,在上述幾種方法中,第2種方法的缺點是速度較慢,一般可用于DSP算法的模擬;第3種和第6種方法專用性強,其應用受到很大的限制;第3種方法也不便于系統(tǒng)的獨立運行;第4種方法只適用于實現(xiàn)簡單的DSP算法;而第1種方法在數(shù)字信號處理的應用領域中具有明顯的計算優(yōu)勢。

1.1.3數(shù)字信號處理器系統(tǒng)的一般構成

圖1-1所示為DSP系統(tǒng)的一般構成。圖1-1中的輸入信號一般為各種形式的模擬信號,而且信號在采樣之前也需要進行必要的調理。如果輸入信號是數(shù)字信號,則可以省略采樣環(huán)節(jié),在調整到合適的電平后直接輸入DSP。

圖1-1DSP系統(tǒng)的一般構成

在許多情況下輸入信號為模擬信號形式,因此,在應用DSP對信號進行處理之前必須對信號進行采樣。按照采樣定理的要求,采樣頻率應選擇在信號最高頻率的兩倍以上,這樣才能保證信號在采樣過程中不會在頻域發(fā)生混疊而破壞信號的有用信息。但是在實際工程中,輸入信號往往包含著一定的噪聲,這些噪聲的頻率又往往高于信號的最高頻率,如果按照采樣定理的要求直接對信號進行采樣,則噪聲往往會在采樣時發(fā)生混疊,破壞信號的有用信息。因此,DSP系統(tǒng)一般在采樣之前加一個低通濾波器,以濾除高于采樣頻率一半的頻率分量,從而保證在采樣過程中盡可能不發(fā)生混疊現(xiàn)象,該低通濾波器稱為抗混疊濾波器。

DSP芯片的輸入是A/D變換后得到的數(shù)字信號,通常DSP芯片對輸入的數(shù)字信號進行某種形式的處理,如濾波或頻譜分析。數(shù)字處理是DSP的關鍵,這與其他系統(tǒng)有很大的不同。例如,在電話交換系統(tǒng)中,處理器的作用主要是進行路由選擇,它并不對輸入數(shù)據(jù)進行修改。因此,雖然兩者都是實時系統(tǒng),但兩者的實時約束條件卻有很大的不同。最后,經(jīng)過處理后的數(shù)字樣值再經(jīng)D/A變換轉換為模擬樣值,之后再進行內(nèi)插和平滑濾波就可得到連續(xù)的模擬波形。

必須指出的是,上面給出的DSP系統(tǒng)模型是一個典型模型,并不是所有的DSP系統(tǒng)都必須具有模型中的所有部件。如有些系統(tǒng)輸出仍需要數(shù)字信號,就不需要進行數(shù)/模變換;而一些系統(tǒng)輸入信號本身就是數(shù)字信號,因此不必進行模/數(shù)變換。

1.1.4數(shù)字信號處理器系統(tǒng)的特點

在工程實踐中可以以多種處理器為核心建立數(shù)字處理平臺。相對于其他處理器來講,以數(shù)字信號處理器為核心建立的數(shù)字信號處理器系統(tǒng)具有顯著的特點,特別是在完成數(shù)字信號處理算法上具有明顯的優(yōu)勢。

(1)可高速地完成數(shù)字信號處理算法。DSP最大的特點就是計算速度快,特別是在進行包含大量乘法的濾波、譜分析等數(shù)字信號處理算法時,其計算速度的優(yōu)勢就更為明顯。

(2)體積小,功耗低。這一特點使用戶可以方便地利用DSP組建各種實用的嵌入式硬件平臺。

(3)接口方便。DSP系統(tǒng)與其他以現(xiàn)代數(shù)字技術為基礎的系統(tǒng)或設備都是相互兼容的,與這樣的系統(tǒng)接口以實現(xiàn)某種功能要比模擬系統(tǒng)與這些系統(tǒng)接口容易得多。DSP的主機接口(HPI)也方便與其他處理器組成多處理器系統(tǒng)。

當然,DSP也存在一些缺點。例如,對系統(tǒng)各種資源的管理和控制能力較弱,控制輸入/輸出設備的能力較差,不便于嵌入操作系統(tǒng)等等。在實際工程應用中,需要根據(jù)系統(tǒng)功能和性能要求選擇合適的處理器建立系統(tǒng)的硬件平臺,甚至需要將多種處理器結合起來建立多處理器系統(tǒng)。

1.1.5數(shù)字信號處理器系統(tǒng)的一般開發(fā)過程

一個DSP系統(tǒng)由硬件和軟件兩部分構成,因此DSP系統(tǒng)的設計包括硬件設計和軟件設計。圖1-2所示是DSP系統(tǒng)的一般開發(fā)過程。

圖1-2DSP系統(tǒng)的一般開發(fā)過程

(1)根據(jù)應用系統(tǒng)的目標確定系統(tǒng)的性能指標和信號處理的要求,通??捎脭?shù)據(jù)流程圖、數(shù)學運算序列、正式的符號或自然語言來描述。

(2)根據(jù)系統(tǒng)的要求進行算法的模擬。一般來說,為了實現(xiàn)系統(tǒng)的最終目標,需要對輸入的信號進行適當?shù)奶幚?,而處理方法不同會導致系統(tǒng)性能不同,要得到最佳的系統(tǒng)性能,就必須在這一步確定最佳的處理方法,即數(shù)字信號處理的算法,因此這一步也稱算法模擬階段。這一步的主要目的是通過通用或專用的軟件對算法進行仿真,從而驗證算法的正確性、計算精度、計算量等方面的性能。

(3)進行DSP系統(tǒng)設計,包括硬件設計和軟件設計兩個方面。硬件設計首先要根據(jù)系統(tǒng)運算量的大小、對運算精度的要求、系統(tǒng)成本限制以及體積、功耗等要求選擇合適的DSP芯片。然后設計DSP芯片的外圍電路及其他電路。軟件設計和編程主要根據(jù)系統(tǒng)要求和所選的DSP芯片編寫相應的DSP匯編程序,若系統(tǒng)運算量不大且有高級語言編譯器支持,也可用高級語言(如C語言)編程。由于現(xiàn)有高級語言編譯器的效率還比不上手工編寫匯編程序的效率,因此在實際應用系統(tǒng)中常常采用高級語言和匯編語言的混合編程方法,即在算法運算量大的地方,用手工編寫的方法編寫匯編程序,在運算量不大的地方,則采用高級語言。采用這種方法既可縮短軟件開發(fā)的周期,提高程序的可讀性和可移植性,又能滿足系統(tǒng)實時運算的要求。在這兩個過程中,還需要考慮軟/硬件之間的關系,在設計硬件時需要考慮軟件的運行要求,在設計軟件時也要考慮硬件平臺的體系結構,以使設計的軟件獲得更高的執(zhí)行效率。

(4)進行DSP系統(tǒng)調試,包括硬件調試和軟件調試。軟件的調試一般借助于DSP開發(fā)工具,如軟件模擬器、DSP開發(fā)系統(tǒng)或仿真器等。調試DSP算法時一般采用比較實時結果與模擬結果的方法,如果實時程序和模擬程序的輸入相同,則兩者的輸出應該一致。應用系統(tǒng)的其他軟件可以根據(jù)實際情況進行調試。硬件調試一般采用硬件仿真器進行,如果沒有相應的硬件仿真器,且硬件系統(tǒng)不是十分復雜,則也可以借助于一般的工具進行調試。

(5)進行系統(tǒng)的軟/硬件聯(lián)合調試。系統(tǒng)的軟件和硬件分別調試完成后,就可以將軟件脫離開發(fā)系統(tǒng)而直接在應用系統(tǒng)上運行。當然,DSP系統(tǒng)的開發(fā),特別是軟件開發(fā),是一個需要反復進行的過程,雖然通過算法模擬基本上可以知道實時系統(tǒng)的性能,但實際上模擬環(huán)境不可能做到與實時系統(tǒng)環(huán)境完全一致,而且將模擬算法移植到實時系統(tǒng)時必須考慮算法是否能夠實時運行的問題。如果算法運算量太大不能在硬件上實時運行,則必須重新修改或簡化算法。

1.2數(shù)字信號處理器概述

1.2.1數(shù)字信號處理器的特點數(shù)字信號處理器是一種將處理器的計算核心和一定的外部設備集成在一個單片芯片上而構成的類似于單片機的一種處理器芯片。不同于一般單片機的是,由于DSP采用了特殊的總線結構和體系,因此它在執(zhí)行數(shù)字信號處理計算方面具有更高的性能。DSP芯片具有如下主要特點:

(1)總線采用改進的哈佛結構,程序空間和數(shù)據(jù)空間具有單獨的訪問通道,使系統(tǒng)具有更高的運行效率;

(2)核心內(nèi)配置專門的硬件乘法器,可高效率地完成乘法運算;

(3)采用多級流水線技術,可提高程序的執(zhí)行效率;

(4)片內(nèi)具有快速RAM,通??赏ㄟ^獨立的數(shù)據(jù)總線在兩塊中同時訪問;

(5)具有低開銷或無開銷循環(huán)及跳轉的硬件支持;

(6)快速的中斷處理和硬件I/O支持;

(7)具有在單周期內(nèi)操作的多個硬件地址產(chǎn)生器;

(8)可以并行執(zhí)行多個操作。

1.哈佛結構

哈佛結構是不同于傳統(tǒng)的馮·諾依曼(VonNeuman)結構的并行體系結構,其主要特點是將程序和數(shù)據(jù)存儲在不同的存儲空間中,即程序存儲器和數(shù)據(jù)存儲器是兩個相互獨立的存儲器,每個存儲器獨立編址,獨立訪問。與兩個存儲器相對應的是,系統(tǒng)中設置了程序總線和數(shù)據(jù)總線兩條總線,從而使數(shù)據(jù)的吞吐率提高了一倍。而馮·諾依曼結構則是將指令、數(shù)據(jù)存儲在同一存儲器中,統(tǒng)一編址,依靠指令計數(shù)器提供的地址來區(qū)分是指令,還是數(shù)據(jù),取指令和取數(shù)據(jù)都訪問同一存儲器,數(shù)據(jù)吞吐率低。在哈佛結構中,由于程序存儲器和數(shù)據(jù)存儲器在兩個分開的空間中,因此取指和執(zhí)行能完全重疊運行。為了進一步提高運行速度和靈活性,TMS320系列DSP芯片在基本哈佛結構的基礎上作了一些改進:一是允許數(shù)據(jù)存放在程序存儲器中,并被算術運算指令直接使用,增強了芯片的靈活性;二是指令存儲在高速緩沖器(Cache)中,當執(zhí)行此指令時,不需要再從存儲器中讀取指令,節(jié)約了一個指令周期的時間。例如TMS320C30就具有64個字的Cache。

2.流水線操作

與哈佛結構相關,DSP芯片廣泛采用流水線以減少指令執(zhí)行時間,從而增強了處理器的處理能力。TMS320系列處理器的流水線深度為2~6級不等。第一代TMS320處理器采用二級流水線,第二代采用三級流水線,而第三代則采用四級流水線。也就是說,處理器可以并行處理2~6條指令,每條指令處于流水線上的不同階段。圖1-3所示為一個三級流水線示意圖。

圖1-3三級流水示意圖

3.專用的硬件乘法器

在數(shù)字信號處理的常用算法中,一般都需要進行大量的乘法運算,如數(shù)字濾波算法、FFT算法等。因此對于執(zhí)行數(shù)字信號處理算法的處理器來講,進行乘法運算的速度直接決定著處理器運行數(shù)字信號處理的速度,乘法速度越快,DSP處理器的性能也就越高。在通用的微處理器中,乘法指令是由一系列加法來實現(xiàn)的,故需多個指令周期來完成。相比而言,DSP芯片的特征就是有一個專用的硬件乘法器。在TMS320系列中,由于具有專用的硬件乘法器,乘法可在一個指令周期內(nèi)完成,因此在進行包含大量乘法運算的數(shù)字信號處理算法時,DSP可表現(xiàn)出更為優(yōu)秀的性能。

4.特殊的DSP指令

DSP芯片的另一個特征是采用特殊的指令。例如DMOV就是一個特殊的DSP指令,它用來完成數(shù)據(jù)移位功能。在數(shù)字信號處理中,延遲操作非常重要,這個延遲就是由DMOV來實現(xiàn)的。TMS32010中的另一個特殊指令是LTD,它在一個指令周期內(nèi)完成LT、DMOV和APAC三條指令。LTD和MPY指令可以將FIR濾波器抽頭的運算指令數(shù)從4條降為2條。在第二代處理器(如TMS320C25)中增加了2條更特殊的指令,即RPT和MACD指令,采用這2條特殊指令可以進一步將每個抽頭的運算指令數(shù)從2條降為1條。另外,DSP指令集中的許多指令在重復執(zhí)行時可以充分利用DSP的硬件資源,從而實現(xiàn)更高的執(zhí)行效率。類似地,DSP的指令集進行了許多針對數(shù)字信號處理算法的優(yōu)化,這也保證了DSP在進行數(shù)字信號處理時可以實現(xiàn)更高的速度和效率。

5.快速的指令周期

哈佛結構、流水線操作、專用的硬件乘法器、特殊的DSP指令再加上集成電路的優(yōu)化設計,可實現(xiàn)DSP芯片快速的指令周期。TMS320系列處理器的指令周期已經(jīng)從第一代的200ns降低至現(xiàn)在的1ns以下??焖俚闹噶钪芷谑沟肈SP芯片能夠實時實現(xiàn)許多應用。

1.2.2DSP產(chǎn)品的發(fā)展

DSP發(fā)展歷程大致分為20世紀70年代的理論先行、20世紀80年代的產(chǎn)品普及和20世紀90年代的突飛猛進三個階段。在DSP出現(xiàn)之前,數(shù)字信號處理只能依靠MPU(微處理器)來完成。由于MPU處理速度較低,根本無法滿足越來越大的信息量的高速實時要求,因此應用更快更高效的信號處理方式就成為日益迫切的社會需求。到了20世紀70年代,有人提出了DSP的理論和算法基礎。但那時的DSP僅僅停留在教科書上,即使是研制出來的DSP系統(tǒng)也是由分立元件組成的,其應用領域僅局限于軍事和航空航天部門。

數(shù)字信號處理技術的迅速發(fā)展在技術上對能夠高速完成數(shù)字信號處理算法的處理器具有十分強烈的需求。第一個單片DSP芯片是1978年AMI公司發(fā)布的S2811,1979年美國Intel公司發(fā)布的商用可編程器件2920是DSP芯片的一個重要里程碑。

這兩種芯片內(nèi)部都沒有現(xiàn)代DSP芯片所必須有的單周期乘法器。1980年,日本NEC公司推出的μPD7720是第一個具有乘法器的商用DSP芯片。

20世紀80年代后期,第三代DSP芯片問世,運算速度得到了進一步提高,其應用范圍逐步擴大到通信、計算機領域。20世紀90年代DSP發(fā)展最快,相繼出現(xiàn)了第四代和第五代DSP器件。現(xiàn)在的DSP屬于第五代產(chǎn)品,它與第四代相比,系統(tǒng)集成度更高,將DSP芯核及外圍元件綜合集成在單一芯片上。這種集成度極高的DSP芯片不僅在通信、計算機領域大顯身手,而且逐漸滲透到人們的日常消費領域。經(jīng)過20多年的發(fā)展,DSP產(chǎn)品的應用已擴大到人們的學習、工作和生活的各個方面,并逐漸成為電子產(chǎn)品更新?lián)Q代的決定因素。目前,對DSP爆炸性需求的時代已經(jīng)來臨,其應用前景十分可觀。

20世紀80年代,美國德州儀器公司(TexasInstruments,TI)推出了自己的DSP產(chǎn)品,此后由于擁有豐富的產(chǎn)品系列,因此TI公司的DSP占有了較大的市場份額。TI公司在1982年成功推出了第一代DSP芯片TMS32010及其系列產(chǎn)品TMS32011、TMS320C10/C14/C15/C16/C17等,之后相繼推出了第二代DSP芯片TMS32020、TMS320C25/C26/C28,第三代DSP芯片TMS320C30/C31/C32,第四代DSP芯片TMS320C40/C44,第五代DSP芯片TMS320C5x/C54x,第二代DSP芯片的改進型TMS320C2xx,集多片DSP芯片于一體的高性能DSP芯片TMS320C8x以及目前速度最快的第六代DSP芯片TMS320C62x/C67x等。TI公司將常用的DSP芯片歸納為三大系列:TMS320C2000系列(包括TMS320C2x/C2xx)、TMS320C5000系列(包括TMS320C5x/C54x/C55x)和TMS320C6000系列(TMS320C62x/C67x)。如今,TI公司的系列DSP產(chǎn)品已經(jīng)成為當今世界上最具影響的DSP芯片。TI公司也成為世界上最大的

DSP芯片供應商,其DSP市場份額占全世界份額近50%。

第一個采用CMOS工藝生產(chǎn)浮點DSP芯片的是日本的Hitachi公司,該公司于1982年推出了浮點DSP芯片。1983年日本Fujitsu公司推出了MB8764,其指令周期為120ns,且具有雙內(nèi)部總線,從而使處理吞吐量發(fā)生了一個大的飛躍。而第一個高性能浮點DSP芯片則是AT&T公司于1984年推出的DSP32。

與其他公司相比,Motorola公司在推出DSP芯片方面相對較晚。1986年,該公司推出了定點處理器MC56001。1990年,推出了與IEEE浮點格式兼容的浮點DSP芯片MC96002。

美國模擬器件(AnalogDevices,AD)公司在DSP芯片市場上也占有一定的份額,相繼推出了一系列具有自己特點的DSP芯片,其定點DSP芯片有ADSP2101/2103/2105、ASDP2111/2115、ADSP2161/2162/2164以及ADSP2171/2181,浮點DSP芯片有ADSP21000/21020、ADSP21060/21062等。

自1980年以來,DSP芯片得到了突飛猛進的發(fā)展,DSP芯片的應用越來越廣泛。從運算速度來看,MAC(一次乘法和一次加法)時間已經(jīng)從20世紀80年代初的400ns(如TMS32010)降低到10ns以下(如TMS320C54x、TMS320C62x/67x等),處理能力提高了幾十倍。DSP芯片內(nèi)部關鍵的乘法器部件從1980年的占模片區(qū)(DieArea)的40%左右下降到5%以下,片內(nèi)RAM數(shù)量增加一個數(shù)量級以上。從制造工藝來看,1980年采用4μm的

N溝道MOS(NMOS)工藝,而現(xiàn)在則普遍采用亞微米(Micron)CMOS工藝。DSP芯片的引腳數(shù)量從1980年的最多64個增加到現(xiàn)在的200個以上。引腳數(shù)量的增加意味著結構靈活性的增加,如外部存儲器的擴展和處理器間的通信等。此外,DSP芯片的發(fā)展使DSP系統(tǒng)的成本、體積、重量和功耗都有很大程度的下降。

1.2.3DSP產(chǎn)品的種類

1.按數(shù)據(jù)格式分類

這是根據(jù)DSP芯片工作的數(shù)據(jù)格式來進行的分類。數(shù)據(jù)以定點格式工作的DSP芯片稱為定點DSP芯片,如TI公司的TMS320C1x/C2x、TMS320C2xx/C5x、TMS320C54x/C62xx系列,AD公司的ADSP21xx系列,AT&T公司的DSP16/16A,Motolora公司的MC56000等。以浮點格式工作的稱為浮點DSP芯片,如TI公司的TMS320C3x/C4x/C8x/C67x,AD公司的ADSP21xxx系列,AT&T公司的DSP32/32C,Motolora公司的MC96002等。

2.按用途分類

按照用途的不同,DSP可分為通用型DSP芯片和專用型DSP芯片。通用型DSP芯片適合普通的DSP應用,如TI公司的系列DSP芯片均屬于通用型DSP芯片。專用型DSP芯片是為特定的DSP運算而設計的,更適合特殊的運算,如數(shù)字濾波、卷積和FFT等,如Motorola公司的DSP56200、Zoran公司的ZR34881、Inmos公司的IMSA100等就屬于專用型DSP芯片。

3.按物理特性分類

這是根據(jù)DSP芯片的工作時鐘和指令類型來進行的分類。如果在某時鐘頻率范圍內(nèi)的任何時鐘頻率上,DSP芯片都能正常工作,除計算速度有變化外,沒有性能的下降,則這類DSP芯片一般稱為靜態(tài)DSP芯片,例如日本OKI電氣公司的DSP芯片、TI公司的TMS320C2xx系列芯片都屬于這一類。

如果有兩種或兩種以上的DSP芯片,它們的指令集和相應的機器代碼及管腳結構相互兼容,則稱這類DSP芯片為一致性DSP芯片。例如,美國TI公司的TMS320C54x就屬于這一類。

4.不同類型的DSP的選擇

DSP按不同的標準分為不同的類型,因此設計DSP應用系統(tǒng)時,如何選擇DSP芯片就成為非常重要的一個環(huán)節(jié)。只有選定了DSP芯片,才能進一步設計其外圍電路及系統(tǒng)的其他電路。總的來說,DSP芯片的選擇應根據(jù)實際的應用系統(tǒng)需要來確定。不同的DSP應用系統(tǒng)由于應用場合、應用目的等不盡相同,因此對DSP芯片的選擇也是不同的。一般來說,選擇DSP芯片時應考慮到如下因素。

(1)DSP芯片的運算速度。運算速度是DSP芯片一個最重要的性能指標,也是選擇DSP芯片時所需要考慮的一個主要因素。DSP芯片的運算速度可以用以下幾種性能指標來衡量。

①指令周期:執(zhí)行一條指令所需的時間,通常以ns(納秒)為單位。如TMS320LC549-80在主頻為80MHz時的指令周期為12.5ns。

MAC時間:一次乘法加上一次加法的時間。大部分DSP芯片可在一個指令周期內(nèi)完成一次乘法和加法操作,如TMS320LC549-80的MAC時間就是12.5ns。

③FFT執(zhí)行時間:運行一個N點FFT程序所需的時間。由于FFT運算涉及的運算在數(shù)字信號處理中很有代表性,因此FFT運算時間常作為衡量DSP芯片運算能力的一個指標。

④MIPS:每秒執(zhí)行百萬條指令。如TMS320LC549-80的處理能力為80MIPS,即每秒可執(zhí)行八千萬條指令。

⑤MOPS:每秒執(zhí)行百萬次操作。如TMS320C40的運算能力為275MOPS。

MFLOPS:每秒執(zhí)行百萬次浮點操作。如TMS320C31在主頻為40MHz時的處理能力為40MFLOPS。

(2)DSP芯片的價格。DSP芯片的價格也是選擇DSP芯片時需考慮的一個重要因素。如果采用價格昂貴的DSP芯片,即使性能再高,其應用范圍也肯定會受到一定的限制,尤其是民用產(chǎn)品。因此應根據(jù)實際系統(tǒng)的應用情況,確定一個價格適中的DSP芯片。當然,由于DSP芯片發(fā)展迅速,DSP芯片的價格往往下降較快,因此在開發(fā)階段選用的某種價格稍貴的DSP芯片,等到系統(tǒng)開發(fā)完畢,其價格可能已經(jīng)下降一半甚至更多。

(3)DSP芯片的硬件資源。不同的DSP芯片所提供的硬件資源是不相同的,如片內(nèi)RAM、ROM的數(shù)量,外部可擴展的程序和數(shù)據(jù)空間,總線接口,I/O接口等。即使是同一系列(如TI公司的TMS320C54x系列),不同的DSP芯片也具有不同的內(nèi)部硬件資源,可以適應不同的需要。

(4)DSP芯片的運算精度。一般的定點DSP芯片的字長為16位,如TMS320系列。但有的公司的定點芯片為24位,如Motorola公司的MC56001等。浮點芯片的字長一般為32位,累加器為40位。

(5)DSP芯片的開發(fā)工具。在DSP系統(tǒng)的開發(fā)過程中,開發(fā)工具是必不可少的。如果沒有開發(fā)工具的支持,要想開發(fā)一個復雜的DSP系統(tǒng)幾乎是不可能的。如果有功能強大的開發(fā)工具的支持,如C語言的支持,則開發(fā)的時間就會大大縮短。所以,在選擇DSP芯片的同時必須注意其開發(fā)工具的支持情況,包括軟件和硬件的開發(fā)工具。

(6)DSP芯片的功耗。在某些DSP應用場合,功耗也是一個需要特別注意的問題。如便攜式DSP設備、手持設備、野外應用的DSP設備等都對功耗有特殊的要求。目前,

3.3V和1.8V供電的低功耗高速DSP芯片已大量投入使用。

(7)除了上述因素外,選擇DSP芯片還應考慮到封裝的形式、質量標準、供貨情況、生命周期等。有的DSP芯片可能有DIP、PGA、PLCC、PQFP等多種封裝形式。有些DSP系統(tǒng)可能最終要求的是工業(yè)級或軍用級標準,在選擇時就需要注意到所選的芯片是否有工業(yè)級或軍用級的同類產(chǎn)品。如果所設計的DSP系統(tǒng)不僅僅是一個實驗系統(tǒng),而是需要批量生產(chǎn)并可能有幾年甚至十幾年的生命周期,那么就需要考慮所選的DSP芯片供貨情況如何,是否也有同樣甚至更長的生命周期等。

DSP應用系統(tǒng)的運算量是確定選用處理能力為多大的DSP芯片的基礎。運算量小,則可以選用處理能力不是很強的DSP芯片,從而可以降低系統(tǒng)成本。相反,運算量大的DSP系統(tǒng)則必須選用處理能力強的DSP芯片,如果DSP芯片的處理能力達不到系統(tǒng)要求,則必須用多個DSP芯片并行處理。根據(jù)系統(tǒng)要求的不同,在DSP算法中數(shù)據(jù)的處理方式一般有兩種:按點處理和按幀處理。在這兩種數(shù)據(jù)處理方式下,評估算法運算量的方法也不相同。

(1)按點處理。所謂按點處理,就是DSP算法對每一個輸入樣點進行一次處理計算,數(shù)字濾波就是這種情況。在數(shù)字濾波器中,通常需要對每一個輸入樣點計算一次。例如,一個采用LMS算法的256抽頭的自適應FIR濾波器,假定每個抽頭的計算需要3個MAC周期,則256抽頭的計算需要256×3=768個MAC周期。如果采樣頻率為8kHz,即樣點之間的間隔為125(s,DSP芯片的MAC周期為200ns,則768個MAC周期需要153.6(s的時間,顯然無法實時處理,需要選用速度更高的DSP芯片。

(2)按幀處理。在許多應用系統(tǒng)中,對數(shù)據(jù)信號的處理是按幀來進行的,如在無線通信等應用領域中的應用,在這些系統(tǒng)中,數(shù)據(jù)并不是對每一樣點分別進行計算處理,而是將數(shù)據(jù)按一定的序列長度組織成段來進行處理,這些劃分的段稱為幀。例如,在無線通信中通常以20ms為一幀,每隔20ms對數(shù)據(jù)進行一次處理計算。因此,對這種系統(tǒng)來講,在考慮數(shù)字信號處理器的處理能力時應比較每個數(shù)據(jù)幀的長度和DSP處理一幀數(shù)據(jù)需要的計算時間。DSP要滿足系統(tǒng)的處理要求,其處理一幀數(shù)據(jù)的時間應小于數(shù)據(jù)幀的時間長度。

當處理器的性能不能滿足系統(tǒng)處理要求時,可從以下幾個方面來調整方案:

●選擇性能更高的處理器;

●采用多處理器系統(tǒng)對數(shù)據(jù)進行并行處理;

●采用性能更高和運算量更小的算法;

對系統(tǒng)程序進行優(yōu)化,特別是對計算量較大的核心部分。

1.2.4DSP的主要應用

自從20世紀70年代末80年代初DSP芯片誕生以來,DSP芯片得到了飛速發(fā)展。DSP芯片的高速發(fā)展,一方面得益于集成電路技術的發(fā)展,另一方面也得益于巨大的市場。在20多年時間里,DSP芯片已經(jīng)在信號處理、通信、雷達等許多領域得到了廣泛的應用。目前,DSP芯片的價格越來越低,性能價格比日益提高,具有巨大的應用潛力。DSP芯片的應用主要有以下幾個方面:

(1)信號處理。如數(shù)字濾波、自適應濾波、快速傅里葉變換、相關運算、譜分析、卷積、模式匹配、加窗、波形產(chǎn)生等。

(2)通信。如調制解調器、自適應均衡、數(shù)據(jù)加密、數(shù)據(jù)壓縮、回波抵消、多路復用、傳真、擴頻通信、糾錯編碼、可視電話等。

(3)語音。如語音編碼、語音合成、語音識別、語音增強、語音郵件、語音存儲等。

(4)圖形/圖像。如二維和三維圖形處理、圖像壓縮與傳輸、圖像增強、動畫、機器人視覺等。

(5)軍事。如保密通信、雷達處理、聲納處理、導航、導彈制導等。

(6)儀器儀表。如頻譜分析、函數(shù)發(fā)生、鎖相環(huán)、地震處理等。

(7)自動控制。如引擎控制、聲控、自動駕駛、機器人控制、磁盤控制等。

(8)醫(yī)療。如助聽、超聲設備、診斷工具、病人監(jiān)護等。

(9)家用電器。如高保真音響、音樂合成、音調控制、玩具與游戲、數(shù)字電話/電視等。

由以上應用領域可以看出,DSP的應用已經(jīng)深入到現(xiàn)代工業(yè)技術的各個領域,只要用到數(shù)字信號處理方法,就可以應用DSP作為實現(xiàn)的硬件平臺??梢灶A見,隨著DSP芯片性能價格比的不斷提高,DSP芯片將會在更多領域中得到更為廣泛的應用。

1.3TMS320系列DSP產(chǎn)品概述

1.3.1TI公司的定點DSP產(chǎn)品

TI公司的定點DSP芯片已經(jīng)經(jīng)歷了TMS320C1x、TMS320C2x/C2xx、TMS320C5x、TMS320C54x、TMS320C55x、TMS320C62x、TMS320C64x等幾代產(chǎn)品,其中TMS320C2xx、

TMS320C54x、TMS320C55x、TMS320C62x、TMS320C64x等產(chǎn)品是TI公司的主力產(chǎn)品。

1.TMS320C1x

1)基本特點

TMS320C1x屬于第一代TMS320系列DSP芯片,包括TMS32010、TMS32011、TMS320C10、TMS320C15/E15和TMS320C17/E17。其中,TMS32010和TMS32011采用2.4(m的NMOS工藝,而其他幾種則采用1.8(m的CMOS工藝。這些芯片的典型工作頻率為20MHz。該系列芯片的主要特點如下所述。

(1)指令周期:160ns/200ns/280ns。

(2)片內(nèi)RAM:144字/256字(TMS320C15/E15/C17/E17)。

(3)片內(nèi)ROM:1.5K字/4K字(TMS320C15/C17)。

(4)4K字片內(nèi)程序EPROM(TMS320E15/E17)。

(5)4K字外部全速存儲器擴展。

(6)

并行乘法器:乘積為32位。

(7)桶形移位器:將數(shù)據(jù)從存儲器移到ALU。

(8)并行移位器。

(9)允許文本交換的4×12位堆棧。

(10)兩個間接尋址的輔助寄存器。

(11)雙通道串行口(TMS32011、TMS320C17/E17)。

(12)片內(nèi)壓擴硬件(TMS32011、TMS320C17/E17)。

(13)協(xié)處理器接口(TMS320C17/E17)。

(14)器件封裝:40腳雙列直插(DIP)/44腳塑封(PLCC)。

2)TMS320C10

TMS320DSP芯片的第一代產(chǎn)品是基于TMS32010及其CMOS版本TMS320C10的結構。TMS32010于1982年推出,是第一個能夠達到5MIPS的微處理器。

TMS32010采用改進的哈佛結構,即程序和數(shù)據(jù)空間相互獨立;程序存儲器可在片內(nèi)(1.5K字)或片外(4K字);片內(nèi)數(shù)據(jù)RAM為144字;有四個基本的算術單元,即算術邏輯單元(ALU)、累加器(ACC)、乘法器和移位器。

(1)ALU:32位數(shù)據(jù)操作的通用算術邏輯單元。ALU可進行加、減和邏輯運算。

(2)ACC:累加器。主要用于存儲ALU的輸出,也可作為ALU的一個輸入。它采用32位字長操作,分高16位和低16位兩部分。處理器提供高16位和低16位的專門指令:SACH(高16位)和SACL(低16位)。

(3)乘法器:16×16位并行乘法器由T寄存器、P寄存器和乘法器陣列三個單元組成。T寄存器存儲被乘數(shù),P寄存器存儲32位乘積。為了使用乘法器,被乘數(shù)首先必須從數(shù)據(jù)RAM中裝入T寄存器,可用LT、LTA和LTD指令。然后執(zhí)行MPY(乘)或MPYK(乘立即數(shù))指令。乘和累加器操作可用LTA、LTD和MPY、MPYK指令在兩個指令周期內(nèi)完成。

(4)移位器:有兩個移位器可用于數(shù)據(jù)移位,一個是桶形移位器,另一個是并行移位器。桶形移位器又稱定標移位器。當數(shù)據(jù)存儲器的數(shù)據(jù)送入累加器或與累加器中的數(shù)據(jù)進行運算時,先通過這個移位器進行0~16位左移,然后再進行運算。并行移位器即輸出移位器,其作用是將累加器中的數(shù)據(jù)左移0、1或4位后再送入數(shù)據(jù)存儲器,以實現(xiàn)小數(shù)運算或小數(shù)乘積的調整。

在TMS32010/C10基礎上又派生了多個處理器,它們可提供不同的處理器速度、存儲器擴展和各種I/O集成。

3)TMS320C1x的其他芯片

(1)TMS320C15/E15。TMS320C15/E15與TMS32010的代碼和管腳全兼容,提供256字的片內(nèi)RAM和4K字的片內(nèi)ROM(C15)或EPROM(E15)。TMS320C15的指令周期有200ns和160ns(TMS320C15-25)兩種。

(2)TMS320C17/E17。TMS320C17/E17是一個專用的微處理器。它有4K字的片內(nèi)程序ROM(C17)或EPROM(E17),一個全雙工串行通信的雙通道串行口,片內(nèi)硬件壓擴器((律/A律),一個用于串行通信的串行口定時器及一個協(xié)處理器接口。協(xié)處理器接口可以在處理器和4/8/16位微處理器之間提供直接接口。TMS320C17/E17與TMS32010目標代碼兼容,且可用相同的開發(fā)工具。該處理器是基于TMS320C10的CPU內(nèi)核,外加片內(nèi)的外設存儲器和I/O模塊。TMS320C17/E17可認為是半定制的DSP芯片。

2.TMS320C2x

TMS320C2x屬于第二代TMS320DSP芯片,包括TMS32020、TMS320C25/E25、TMS320C26及TMS320C28。在這些芯片中,TMS32020是一個過渡產(chǎn)品,其指令周期為200ns,與TMS32010相當,其硬件結構與TMS320C25一致。在第二代DSP芯片中,TMS320C25是一個典型的代表,其他芯片都是由TMS320C25派生出來的。其中,TMS320E25將內(nèi)部4K字的ROM改為EPROM;TMS320C26去掉了內(nèi)部的4K字ROM,而將片內(nèi)RAM增加到1.5K字;TMS320C28則將內(nèi)部ROM增加到8K字。

1)TMS320C25的基本特征

(1)指令周期:TMS320C25為100ns,TMS320C25-33為120ns,TMS320C25-50為80ns。

(2)片內(nèi)掩膜ROM:4K字。

(3)片內(nèi)RAM:544字,分B0、B1和B2三塊。

(4)程序和數(shù)據(jù)空間均為64K字。

(5)具有8級硬件堆棧、8個輔助寄存器。

(6)具有全靜態(tài)雙緩沖串行口,可與許多串行器件直接接口。

(7)與低速片外存儲器通信的等待狀態(tài)插入。

(8)采用HOLD操作的DMA。

(9)FFT變換用的比特反轉尋址。

(10)擴展精度算術和自適應濾波支持。

(11)從外部存儲器全速執(zhí)行的MAC/MACD指令。

(12)具有在多處理器之間進行同步的能力,支持多處理器共享存儲器。

(13)1.8μmCMOS工藝,68腳PGA或PLCC封裝。

2)TMS320C25的結構

TMS320C25是第二代TMS320中與TMS32020管腳全兼容的CMOS版本,但指令執(zhí)行速度是TMS32020的2倍,且增加了硬件和軟件資源。指令集是TMS32010和TMS32020的超集,在源代碼級與它們兼容。此外,在代碼級與TMS32020兼容,因此,TMS32020的程序不用修改,可直接在TMS320C25上運行。

由于TMS320C25具有專用算術單元的8個輔助寄存器,適合于自適應濾波和擴展精度運算的指令集支持,靈活高效的尋址方式,專用的乘累加指令(MAC)和帶數(shù)據(jù)移位的乘累加指令(MACD),快速的I/O支持等特點,因此該DSP芯片具有更高的處理性能。

指令集中提供在兩個存儲空間中進行數(shù)據(jù)移動的指令。在外部,程序和數(shù)據(jù)存儲空間在同一總線上復用,從而使得在盡量減少芯片引腳的情況下最大程度地擴大了兩個空間的地址范圍。在內(nèi)部,TMS320C25結構通過保持程序和數(shù)據(jù)總線結構分離以使指令全速執(zhí)行,這樣可獲得最大的處理能力。

芯片內(nèi)部的程序執(zhí)行采用三級流水線形式。流水線對用戶來說是透明的。但是,在某些情況下流水線可能被打斷(如跳轉指令),在這種情況下,指令執(zhí)行時間要考慮流水線必須清空和重新填充。兩塊大的片內(nèi)RAM在系統(tǒng)設計時提供了很大的靈活性,其中一塊既可配置為程序存儲器,也可配置為數(shù)據(jù)存儲器。片外64K字的數(shù)據(jù)空間可直接尋址,從而使DSP算法的實現(xiàn)更為方便。片內(nèi)4K字的掩膜ROM可用來降低系統(tǒng)成本,若程序不超過

4K字,則TMS320C25不用擴展片外程序存儲器。剩下的64K字程序空間在片外,大量的程序可在片外存儲器中全速運行。程序也可從片外慢速EPROM中裝入到片內(nèi)高速RAM中全速運行。此外,還有硬件定時器、串行口和數(shù)據(jù)塊搬移功能。

下面從存儲器分配、中央算術邏輯單元(CALU)、硬件乘法器、控制操作、串行口和I/O接口幾個方面簡單介紹TMS320C25的結構特征。

(1)存儲器分配。

TMS320C25具有4K字的片內(nèi)程序ROM和544字的片內(nèi)RAM。

RAM分為三塊:B0、B1和B2。其中,B0塊(256字)既可配置為數(shù)據(jù)存儲器(用CNFD指令),也可配置為程序存儲器(用CNFP指令);其余288字(B1和B2塊)只能是數(shù)據(jù)存儲器。544字的片內(nèi)RAM可使C25能處理512字的數(shù)據(jù)陣列,如可進行256點復數(shù)FFT運算,且尚有32字用做中間結果的暫存。TMS320C25提供片外可直接尋址的程序和數(shù)據(jù)空間各64K字。

(2)中央算術邏輯單元。CALU包含一個16位的定標移位器(Scaling),一個16×16位的并行乘法器,一個32位的累加器和一個32位的算術邏輯單元(ALU)。移位器根據(jù)指令要求提供0~16位的數(shù)據(jù)左移。累加器和乘法器輸出端的移位器適合于數(shù)值的歸一化、比特提取、擴展精度算術和溢出保護。

(3)硬件乘法器。硬件乘法器是影響DSP性能的重要結構。TMS320C25有一個16×16位的硬件乘法器,它能在一個指令周期內(nèi)計算一個32位乘積。硬件乘法器中集成了兩個專用的寄存器:臨時寄存器TREG和乘積寄存器PREG。TREG用于保存參與乘法運算的兩個操作數(shù)之一,PREG用于保存乘法計算的結果。為了在硬件乘法器中進行小數(shù)運算并保證乘法累加結果不溢出,乘積寄存器支持對輸出結果進行左移1位、4位或右移6位。無符號乘法指令MPYU可方便地擴展乘法的精度。

(4)I/O接口。I/O空間由16個輸入口和16個輸出口組成。這些接口可提供全16位并行I/O接口。輸入(IN)和輸出(OUT)操作典型的是2個周期,但若用重復指令,可變成單周期指令。I/O器件映射到I/O地址空間,其方式與存儲器映射方式相同。與不同速度的存儲器或I/O器件接口采用READY線完成。

TMS320C25也支持外部程序/數(shù)據(jù)存儲器的DMA,其他處理器通過置HOLD為低可完全控制TMS320C25的外部存儲器,使C25將其地址、數(shù)據(jù)和控制線呈高阻狀態(tài)。外部處理器和C25的通信可通過中斷來完成。TMS320C25芯片提供兩種DMA方式:一種是加上HOLD后停止執(zhí)行;另一種是C25繼續(xù)執(zhí)行,但執(zhí)行是在片內(nèi)ROM和RAM中進行的,這可大大提高性能。

3)TMS320C25的軟件

TMS320C25的指令總共有133條,其中97條是單周期指令。在另外36條指令中,其中21條指令(包括跳轉、調用和返回等)需重新裝入程序計數(shù)器,使執(zhí)行流水線中斷;另外7條指令是雙字和長立即數(shù)指令;剩下的8條指令(IN、OUT、BLKD、BLKP、TBLR、TBLW、MAC、MACD)支持I/O操作、存儲器之間的數(shù)據(jù)交換或提供處理器內(nèi)部額外的并行操作,而且這8條指令與重復計數(shù)器配合使用時可成為單周期指令。這主要利用了處理器的并行機制,使得復雜的計算可用很少的幾條指令來完成。由于大多數(shù)指令用單16位字編碼,因此可在一個周期內(nèi)完成。存儲器尋址方式有三種:直接尋址、間接尋址和立即數(shù)尋址。直接尋址和間接尋址都用來訪問數(shù)據(jù)存儲器,立即數(shù)尋址用來訪問由程序計數(shù)器確定的存儲器內(nèi)容。

3.TMS320C5x

TMS320C5x是TI公司的第五代產(chǎn)品,是繼TMS320C1x和TMS320C2x之后的第三代定點DSP處理器。它的核心中央處理器(CPU)以TMS320C25的核心CPU為基礎,增強型結構大幅度地提高了整體性能。TMS320C5x的工作速度是TMS320C25的2倍以上。TMS320C1x和TMS320C2x具有源代碼向上兼容特性。這種兼容性保留了過去開發(fā)的軟件,便于系統(tǒng)升級到更高性能的DSP系統(tǒng)。

TMS320C5x系列有TMS320C50/C51/C52/C53等多種產(chǎn)品,它們的處理器核心基本相同,主要區(qū)別是片內(nèi)RAM、ROM等存儲器和片上外設資源不同。例如,TMS320C50內(nèi)部具有10K字RAM和2K字ROM,其中2K字ROM已經(jīng)固化了引導程序;TMS320C51內(nèi)部具有2K字RAM和8K字ROM;TMS320C52內(nèi)部具有1K字RAM和4K字ROM,減少了一個串行口;TMS320C53內(nèi)部則有4K字RAM和16K字ROM。下面以TMS320C50為例介紹TMS320C5xDSP芯片。

1)TMS320C50的基本特征

TMS320C50的主要技術指標如下:

(1)25/35/50ns的指令周期(20~40MIPS)。

(2)224K×16位最大可尋址外部存儲空間(64K程序、64K數(shù)據(jù)、64KI/O、32K全局)。

(3)算術邏輯單元(ALU)、32位累加器(ACC)以及32位加法器的緩沖器(ACCB)。

(4)并行邏輯單元(PLU)。

(5)結果具有32位的16×16位并行乘法器。

(6)單周期乘累加指令。

(7)具有一個專用算術單元的8個輔助寄存器,可用于間接尋址。

(8)8級硬件堆棧。

(9)0~16位數(shù)據(jù)左移和右移。

(10)兩個間接尋址的循環(huán)緩沖器,用于循環(huán)尋址。

(11)程序代碼的單指令重復和程序塊重復。

(12)全雙工同步串行口,用于完成TMS320C5x與其他串行器件之間的直接通信。

(13)時分多址訪問(TDM)串行口。

(14)內(nèi)部定時器,可用軟件控制。

(15)64K并行I/O口,其中16個有存儲器映像。

(16)可軟件編程的等待狀態(tài)發(fā)生器。

(17)擴展保持操作,用于并發(fā)外部DMA。

(18)四級流水線操作,用于延遲跳轉、調用和返回指令。

(19)位倒序尋址方式,用于FFT運算。

(20)JTAG掃描仿真接口(IEEE標準,P1149.1)。

2)TMS320C50的結構

(1)TMS320C50的總線結構是哈佛型總線結構,它的數(shù)據(jù)總線和程序總線是相互獨立的,這樣在系統(tǒng)中就可以獨立地進行取指和取操作數(shù),在很大程度上提高了系統(tǒng)的執(zhí)行效率。該總線結構和指令集也支持在兩個存儲空間之間進行數(shù)據(jù)傳輸。

(2)TMS320C50使用32位的ALU和累加器以實現(xiàn)2的補碼運算。ALU是一個通用的算術單元,它所使用的運算數(shù)據(jù)(16位)來自數(shù)據(jù)RAM或立即數(shù)指令,也可以是乘積寄存器中32位的乘積結果。除此之外,ALU還支持位操作。

(3)TMS320C50具有32位的累計器。累加器主要用于保存ALU的輸出,也為ALU提供輸入。累加器分為高字節(jié)和低字節(jié),指令集支持對累計器的低字節(jié)和高字節(jié)進行獨立的操作。32位累加器的緩沖器用于臨時、快速地存儲累加器的內(nèi)容。

(4)并行邏輯單元(PLU)是TMS320C50的一個重要的特征部件,它可以在不影響累加器內(nèi)容的情況下對數(shù)據(jù)進行邏輯操作。PLU提供了高速控制器需要的位處理能力,并簡化了控制和狀態(tài)寄存器需要的置位、清零和測試操作。

(5)TMS320C50具有16×16位的硬件乘法器,它可以以單指令周期完成16×16位的乘法,結果為32位。乘法器由三部分組成,分別是乘法器陣列、PREG(乘積寄存器)和TREG0(臨時寄存器)。16位的TREG0存儲乘數(shù),PREG保存32位的乘積結果。乘法器中的數(shù)值來自數(shù)據(jù)存儲器,當使用MAC/MACD/MADS/MADD指令時來自程序存儲器,或者來自指令中的立即數(shù)(MPY#)。片內(nèi)快速乘法器對執(zhí)行諸如卷積、相關和濾波等基本的DSP操作十分有效。

(6)TMS320C50的定標移位器有一個16位的輸入來自數(shù)據(jù)總線,32位的輸出連接到ALU。定標移位器依照指令的編程使輸入數(shù)據(jù)產(chǎn)生0~16位的左移。移位量取決于指令或移位計數(shù)寄存器(TREG1)中的定義值。輸出的最低有效位(LSB)補零,最高有效位補0或進行符號擴展(取決于狀態(tài)寄存器ST1的符號擴展模式位SXM)。附加的移位能力使處理器能執(zhí)行數(shù)值定標、二進制位提取、符號擴展運算和溢出防止等功能。

(7)8級硬件堆棧用于在中斷及子程序調用時保存程序計數(shù)器的內(nèi)容。中斷發(fā)生時,重要寄存器(ACC、ACCB、ARCR、INDX、PMST、PREG、ST0、ST1和TREG)壓入堆棧,中斷返回時彈出,實現(xiàn)了無開銷的中斷切換。

4.TMS320C2xx

TMS320C2xx是繼TMS320C2x和TMS320C5x之后出現(xiàn)的一種低價格、高性能的定點DSP芯片,它具有較強的數(shù)據(jù)處理能力和豐富的片上外設接口,適用于工業(yè)控制和測控系統(tǒng)領域。該系列DSP主要包括TMS320C20x、TMS320C24x兩個子系列,TMS320C24x系列芯片為數(shù)字控制和測控系統(tǒng)的應用做了優(yōu)化設計。TMS320C2xx系列DSP芯片具有如下特點:

(1)處理能力強。指令周期最短為25ns,運算能力達40MIPS。

(2)片內(nèi)具有較大的Flash存儲器。TMS320C2xx是最早使用Flash存儲器的DSP芯片。Flash存儲器具有比ROM靈活、比RAM便宜的特點。TMS320F206和TMS320F207片內(nèi)具有32K字的Flash存儲器和4.5K字的RAM。利用Flash存儲器存儲程序,不僅可降低成本,減小體積,同時系統(tǒng)升級也比較方便。

(3)功耗低。TMS320C2xx系列DSP芯片在5V工作時每個MIPS消耗1.9mA,在

3.3V工作時每個MIPS消耗1.1mA。使用DSP核的省電模式可進一步降低功耗。

(4)資源配置靈活?,F(xiàn)有10多種具有不同資源配置的芯片。表1-2列出了TMS320C2xx系列DSP芯片的資源配置。

表1-2TMS320C2xx系列DSP芯片的資源配置

5.TMS320C54x

TMS320C54x是為實現(xiàn)低功耗、高性能而專門設計的定點DSP芯片,該系列DSP的最大特點是功耗低,因此它在消費類電子產(chǎn)品和便攜式儀器儀表方面具有廣泛的應用。該系列芯片的內(nèi)部結構與TMS320C5x不同,因而指令系統(tǒng)與TMS320C5x和TMS320C2x等互不兼容。

TMS320C54x的主要特點如下:

(1)運算速度快。指令周期為25/20/15/12.5/10ns,運算能力為40/50/66/80/100MIPS。

(2)優(yōu)化的CPU結構。內(nèi)部有1個40位的算術邏輯單元、2個40位的累加器、2個40位的加法器、1個17×17的乘法器和1個40位的桶形移位器,有4條內(nèi)部總線和2個地址產(chǎn)生器。此外,內(nèi)部還集成了比較、選擇和存儲單元,可在很大程度上提高維格編、譯碼的速度。先進的DSP結構可高效地實現(xiàn)無線通信系統(tǒng)的各種功能。

(3)低功耗方式。TMS320C54x可以在3.3V或2.7V電壓下工作,三個低功耗方式(IDLE1、IDLE2和IDLE3)可以節(jié)省DSP的功耗,延長系統(tǒng)的待機時間,TMS320C54x特別適合于對功耗敏感的設備。用TMS320C54x實現(xiàn)GSM語音編碼器僅需5.6mW。

(4)高性能的片上外設。除了標準的串行口和時分復用(TDM)串行口外,TMS320C54x還提供了自動緩沖串行口BSP(auto-BufferedSerialPort)和與外部處理器通信的HPI(HostPortInterface)接口。BSP可提供2K字數(shù)據(jù)緩沖的讀/寫能力,從而降低處理器的額外開銷。指令周期為20ns時,BSP的最大數(shù)據(jù)吞吐量為50Mb/s,即使在IDLE方式下,BSP也可以全速工作。該系列DSP上提供的主機接口HPI可以方便地與外部標準的微處理器直接接口。

表1-3TMS320C54x系列DSP芯片的資源配置

6.TMS320C62x

TMS320C62x系列DSP是TI公司于1997年開發(fā)的一種新型32位的定點DSP芯片。該芯片的內(nèi)部結構與以前的DSP芯片有很大的不同,它采用了與此前DSP結構截然不同的體系結構,其內(nèi)部集成了8路并行的處理通道,在理想情況下可以同時執(zhí)行8條指令,運算能力達1600MIPS。其主要特點如下:

(1)運行速度快。指令周期為5ns,運算能力為1600MIPS。

(2)內(nèi)部結構不同于TI公司此前的DSP產(chǎn)品。內(nèi)部同時集成了2個乘法器和6個算術運算單元,且它們之間是高度正交的,使得在一個指令周期內(nèi)最大能支持8條32bit的指令。

(3)指令集不同。為充分發(fā)揮其內(nèi)部集成的各執(zhí)行單元的獨立運行能力,TI公司使用了VelociTT超長指令字(VLIW)結構。該結構在一條指令中組合了幾個執(zhí)行單元,結合其獨特的內(nèi)部結構,可在一個時鐘周期內(nèi)并行執(zhí)行幾條指令。

(4)大容量的片內(nèi)存儲器和大范圍的尋址能力。片內(nèi)集成了512K字程序存儲器和512K字數(shù)據(jù)存儲器,并擁有32位的外部存儲器界面。

(5)高性能的片上外設。內(nèi)部集成了4個DMA接口、2個多通道緩存串口和2個32位定時器。

(6)低廉的使用成本。由于TMS320C62x系列DSP具有很高的處理能力和并行運算能力,它能處理的數(shù)據(jù)通道數(shù)目比一般的處理器要多,因此盡管其價格稍高一些,但單位成本具有很大程度的降低。1.3.2TI公司的浮點DSP產(chǎn)品

1.TMS320C3x

TMS320C3x是TI公司的第三代產(chǎn)品,也是第一代浮點DSP芯片。TMS320C3x系列主要有TMS320C30、TMS320C31和TMS320C32三種。TMS320C31是TMS320C30的簡化和改進型,它在TMS320C30的基礎上簡化了一般用戶不常用的一些資源,降低了成本,是一個性能價格比較高的浮點處理器,在國內(nèi)已得到了較廣泛的應用。TMS320C32是TMS320C31的進一步簡化和改進型。表1-4列出了三種芯片的比較。

表1-4三種TMS320C3x芯片的比較

1)TMS320C3x的硬件資源

TMS320C30的硬件資源相當豐富。其內(nèi)部包含了2K×32位的快速RAM塊。哈佛總線結構下相互獨立的程序總線、數(shù)據(jù)總線和DMA總線可并行地進行取指、讀/寫數(shù)據(jù)和DMA操作。片上集成了64×32位的指令Cache,將經(jīng)常使用的代碼塊存儲于該Cache中,可大大減少片外訪問的次數(shù),從而提高整個程序的運行效率。由于TMS320C30的地址總線有24位,因此TMS320C30可以訪問多達16M的32位字的存儲器空間,程序、數(shù)據(jù)和I/O空間都包含在TMS320C30這個16M字的空間中。

TMS320C30有一個40/32位的浮點/整數(shù)乘法器,這個乘法器可以在單周期內(nèi)完成24位整數(shù)和32位浮點值的乘法,為了達到更高的性能,可以采用并行指令在單周期內(nèi)完成一次乘法和ALU操作。當乘法器進行浮點乘法時,輸入是32位單精度浮點值,而輸出則是40位的擴展精度浮點數(shù)。進行整數(shù)乘法時,輸入是24位整數(shù),而輸出則是32位整數(shù)。

TMS320C30的整數(shù)/浮點算術邏輯運算單元ALU可以進行單周期的32位整數(shù)、32位邏輯數(shù)和40位浮點數(shù)操作,ALU的運算結果是32位整數(shù)或40位浮點數(shù)。內(nèi)部的桶形移位器可以在單周期內(nèi)進行高達32位的左移或右移。內(nèi)部總線CPU1/CPU2和REG1/REG2可從存儲器中取兩個操作數(shù)并從寄存器取兩個操作數(shù),這就使得對四個操作數(shù)進行乘和加/減可在單周期內(nèi)完成。

TMS320C30內(nèi)為輔助寄存器AR配置了兩個輔助寄存器算術單元(ARAU0和ARAU1),它們可以在單周期內(nèi)產(chǎn)生兩個地址。ARAU的操作是和乘法器及ALU的操作并行進行的。ARAU為多種尋址方式提供了更高的效率和更大的靈活性。

TMS320C30提供了28個寄存器,這些寄存器可以由乘法器和ALU操作,可以用做通用的寄存器。另一方面,這些寄存器也具有相應的特殊功能,如8個擴展精度的寄存器(R0~R7)可當累加器使用,特別適用于存放擴展精度的浮點結果;8個輔助寄存器(AR0~AR7)支持一系列間接尋址方式,并且可以用做通用的32位整數(shù)和邏輯寄存器;其他寄存器也具有一些特殊的系統(tǒng)功能,如尋址、堆棧管理、處理器狀態(tài)、中斷和塊重復等。

TMS320C30可通過由32位數(shù)據(jù)總線和24位地址總線組成的外設總線與外設直接進行通信。DSP通過對外設寄存器的訪問來讀取和控制片上外設的狀態(tài)和工作方式。TMS320C30的外設包括兩個可支持8/16/24/32位數(shù)據(jù)交換的串行口和兩個32位定時器。串行口的時鐘可以由內(nèi)部產(chǎn)生,也可由外部提供,在用戶需要時可通過外設寄存器將串行口的引腳配置為通用的數(shù)字I/O引腳。TMS320C30片上集成了32位通用定時器,可通過對內(nèi)部時鐘信號或外部時鐘信號進行計數(shù)來實現(xiàn)計數(shù)或定時操作,在用戶需要時也可以將定時器的引腳配置為通用的數(shù)字I/O引腳。片內(nèi)的DMA功能使得CPU與I/O操作可同時進行。DMA控制器可以在存儲器的任何地址進行讀/寫操作而不干擾CPU的操作,因此TMS320C30可與外部的慢速存儲器或外設接口而不降低CPU的吞吐量。

TMS320C30具有兩個通用的外部引腳(XF0、XF1),可通過軟件將其設置為輸入或輸出,這兩個引腳也用于多處理器之間的通信。

除了主總線之外,TMS320C30還有一條擴展總線。擴展總線的數(shù)據(jù)線為24位,地址線為13位,其操作可與主總線操作同時進行,也可獨立于主總線。與主總線相比,擴展總線上的I/O口的讀/寫周期為2個H1周期,即為主總線的2倍,因此擴展總線通常用于系統(tǒng)的I/O操作。

TMS320C31是TMS320C30的簡化和改進型,它去掉了擴展總線、一個串行口和內(nèi)部的4K字ROM,增加了程序的引導功能。TMS320C32是TMS320C31的簡化和改進型。簡化主要是將內(nèi)部的RAM由2K字減少為512字,以降低成本。改進之處包括:外部存儲器寬度可變,中斷矢量表可重定位,外部中斷可由軟件選擇是電平觸發(fā)還是邊沿觸發(fā),增加了一個DMA控制器通道,此外,還增加了兩種節(jié)電運行方式。

2)TMS320C3x的軟件資源

TMS320C3x的匯編語言指令集特別適合于數(shù)字信號處理。所有指令占一個機器字長,大部分指令是單周期的。指令集共有113條指令,可以分為六類:數(shù)據(jù)傳送類、兩個操作數(shù)算術/邏輯類、三個操作數(shù)算術/邏輯類、程序控制類、互鎖操作類及并行操作類。12條數(shù)據(jù)傳送指令可從存儲器中讀一個字裝入寄存器,將一個字從寄存器中存入存儲器中并進行堆棧操作。兩個操作數(shù)指令有35條,提供整數(shù)、浮點、邏輯運算及多精度算術操作。17條三個操作數(shù)指令可以在一個指令周期內(nèi)完成具有三個操作數(shù)的運算,其中兩個是源操作數(shù),另一個是目的操作數(shù)。程序控制指令共16條,它們影響程序的流向,其中有塊重復指令RPTB和單指令重復指令RPTS。除了有標準跳轉指令外,還有延遲跳轉指令,有些指令具有條件運算功能。5條互鎖操作指令主要用來進行多處理器之間的通信。剩下的28條指令都是并行操作指令,每條并行指令由兩條指令用符號“||”連接,并行操作指令可使“||”前后的兩條指令并行完成。需要注意的是,并不是任意兩條指令都可構成并行指令。

TMS320C3x可提供相當靈活的程序流控制。軟件的程序控制包括重復、跳轉、調用、陷阱及返回等。

為提高DSP系統(tǒng)程序在非順序執(zhí)行時的流水線效率,TMS320C3x提供了兩種類型的跳轉:標準跳轉和延遲跳轉。標準跳轉首先將流水線清空,然后執(zhí)行跳轉,這可保證程序計數(shù)器的正確管理,但卻使跳轉指令需4個周期才能執(zhí)行完畢。延遲跳轉則相反,它并不將流水線清空,而是保證在程序跳轉之前執(zhí)行它下面的3條指令,這樣使得跳轉指令本身僅需1個指令周期。當然有些指令(如CALL、RPTB等)不能出現(xiàn)延遲跳轉指令下面的3條指令。延遲跳轉指令在它下面3條指令完成前禁止中斷。

流水線沖突可以分為以下三大類:跳轉沖突、寄存器沖突和存儲器沖突。這三類沖突都可以采取相應的一些手段予以解決,如由于標準跳轉引起的跳轉沖突可以采用延遲跳轉的方法來克服。

TMS320C3x支持5類尋址方式,有些DSP型號可采用6種尋址類型。5類尋址方式分別是:通用尋址方式、三操作數(shù)尋址方式、并行尋址方式、長立即數(shù)尋址方式和條件跳轉尋址方式。6種尋址類型分別是:寄存器尋址、直接尋址、間接尋址、短立即數(shù)尋址、長立即數(shù)尋址和相對尋址。此外,TMS320C30還有兩種數(shù)字信號處理中非常有用的尋址方式:一種是循環(huán)尋址方式,主要用于任何需要建立緩沖區(qū)的系統(tǒng)對緩沖區(qū)進行循環(huán)尋址;另一種尋址方式是

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論