2000系列DSP器件2407內核各組成部分的功能機構與特點
這學期我們著重針對DSP2407到2812進行了長時間的學習,尤其是2407我們接觸的比較多,但是到底什麽是DSP呢?我先來介紹壹下。數字信號處理(Digital Signal Processing,簡稱DSP)是壹門涉及許多學科而又廣泛應用於許多領域的新興學科。20世紀60年代以來,隨著計算機和信息技術的飛速發展,數字信號處理技術應運而生並得到迅速的發展。數字信號處理是壹種通過使用數學技巧執行轉換或提取信息,來處理現實信號的方法,這些信號由數字序列表示。在過去的二十多年時間裏,數字信號處理已經在通信等領域得到極為廣泛的應用。德州儀器、Freescale等半導體廠商在這壹領域擁有很強的實力。
現在,我們來了解壹下DSP的發展歷程。DSP產業在約40年的歷程中經歷了三個階段:第壹階段,DSP意味著數字信號處理,並作為壹個新的理論體系廣為流行。隨著這個時代的成熟,DSP進入了發展的第二階段,在這個階段,DSP代表數字信號處理器,這些DSP器件使我們生活的許多方面都發生了巨大的變化。接下來又催生了第三階段,這是壹個賦能(enablement)的時期,我們將看到DSP理論和DSP架構都被嵌入到SoC類產品中。” 第壹階段,DSP意味著數字信號處理 。 80年代開始了第二個階段,DSP從概念走向了產品,TMS32010所實現的出色性能和特性備受業界關註。方進先生在壹篇文章中提到,新興的DSP業務同時也承擔著巨大的風險,究竟向哪裏拓展是生死攸關的問題。當設計師努力使DSP處理器每MIPS成本降到了適合於商用的低於10美元範圍時,DSP在軍事、工業和商業應用中不斷獲得成功。到1991年,TI推出價格可與16位微處理器不相上下的DSP芯片,首次實現批量單價低於5美元,但所能提供的性能卻是其5至10倍。 到90年代,多家公司躋身DSP領域與TI進行市場競爭。TI首家提供可定制 DSP——cDSP,cDSP 基於內核 DSP的設計可使DSP具有更高的系統集成度,大加速了產品的上市時間。同時,TI瞄準DSP電子市場上成長速度最快的領域。到90年代中期,這種可編程的DSP器件已廣泛應用於數據通信、海量存儲、語音處理、汽車電子、消費類音頻和視頻產品等等,其中最為輝煌的成就是在數字蜂窩電話中的成功。這時,DSP業務也壹躍成為TI最大的業務,這個階段DSP每MIPS的價格已降到10美分到1美元的範圍。 21世紀DSP發展進入第三個階段,市場競爭更加激烈,TI及時調整DSP發展戰略全局規劃,並以全面的產品規劃和完善的解決方案,加之全新的開發理念,深化產業化進程。成就這壹進展的前提就是DSP每MIPS價格目標已設定為幾個美分或更低。
DSP2407與DSP2812的概述
(1)2407
2407是我們學習、實驗接觸較多的壹部分。2407開發板分為TI 2000-011 DSP2407增強型、DSP2407+CPLD開發板、SHX-DSP2407A開發板。引DSP2407+CPLD開發板套件是壹套基於TMS320LF2407A+EPM240的DSP+CPLD的學習開發平臺,充分發揮DSP2407和ALTERA MAX II的靈活性和功能強大。
首先在教科書中我了解到,CUP的硬件組成包括累加器,輔助寄存器算術單元,輔助寄存器0~7,進位,中央算術邏輯單元,雙口RAM,數據存儲器頁面指針,全局存儲器配置寄存器,中斷屏蔽寄存器,中斷標誌寄存器,中斷陷阱,輸入、輸出數據定標移位器,乘法器,微堆棧,多路選擇器,程序地址寄存器,程序計數器,程序控制器,臨時寄存器等等。
輸入定標移位器能將來自程序存儲器或數據存儲器的16位數據調整為32為數據送到中央算術邏輯單元,而且不會占用時鐘開銷,在算術定標和邏輯操作對屏蔽定位設置中非常有用。
中央算術邏輯部分主要構成有三部分:CALU,ACC,輸出定標移位器。中央算術邏輯單元是實現算術和邏輯運算功能的部分,可以執行布爾運算,使得控制器具有位操作功能。當運算在CALU中完成時,結果就被送到累加器中,並在其中進行另外的壹些操作,在實際的應用中,ACC的使用相當頻繁。
2407中有兩個狀態寄存器ST0和ST1,含有各種狀態和控制位,控制著很多系統的工作狀態,在應用中特別重要。
然後是數字量I/O模塊。
2407中有多達41個通用、雙向的數字量I/O引腳,其中很多都是復用引腳,實現壹般I/O和基本功能。所有專用I/O和復用I/O引腳的功能都可通過9個16位控制寄存器來設置。可分為兩類:
I/O端口復用控制寄存器, 用來控制選擇I/O端口作為基本功能或壹般I/O引腳功能。
數據和方向控制寄存器,當I/O端口用作壹般I/O引腳功能時,用數據和方向控制寄存器可控制數據和雙向I/O引腳的數據方向。這些寄存器直接與雙向I/O引腳相連。
I/O模塊在實際應用中和很多模塊結合在壹起,如上面的和LED燈結合使用,還有鍵盤和發光二極管結合實現利用鍵盤點亮發光二極管等等應用。總之,I/O模塊在DSP的設計應用中是不可缺少的,承擔著與其他模塊交互的重要作用。
下面介紹壹個重要模塊——事件管理器模塊
2407包含兩個事件管理器模塊EVA和EVB, 每個事件管理器模塊有通用定時器(GP)、比較單元、捕獲單元以及正交編碼脈沖電路組成。這些部件使得事件管理器在電機控制方面具有很重要的應用。
每個事件管理模塊都有兩個通用的可編程定時器,而每個定時器包括16位的定時器增/減計數的計數器、16位的定時器比較寄存器、16位的定時器周期寄存器、16位的定時器控制寄存器各壹個,還有可選擇的內部或外部輸入時鐘,可編程的預定標器,可選擇方向的輸入引腳等,這些器件能讓定時器進行停止/保持、連續增計數、定向增/減計數、連續增/減計數四種計數模式,和比較操作,PWM輸出等多種操作,可以產生多種對稱或非對稱的波形輸出,這就給電機控制帶來了很大的便利和靈活操作空間。
(2)2812
DSP2812是TI公司新推出的功能強大的TMS320F2812的32位定點DSP,是TMS320LF2407A的升級版本,最大的特點是速度比TMS320LF2407A有了質的飛躍,從最高40M躍升到TMS320F2812的150M,處理數據位數也從16位定點躍升到32位定點。最大的亮點是其擁有EVA、EVB事件管理器和配套的12位16通道的AD數據采集,使其對電機控制得心應手。再加上豐富的外設接口,如CAN、SCI等,在工控領域占有不少份額。
DSP微處理器的特點:
DSP(digital signal processor)是壹種獨特的微處理器,是以數字信號來處理大量信息的器件。其工作原理是接收模擬信號,轉換為0或1的數字信號。再對數字信號進行修改、刪除、強化,並在其他系統芯片中把數字數據解譯回模擬數據或實際環境格式。它不僅具有可編程性,而且其實時運行速度可達每秒數以千萬條復雜指令程序,遠遠超過通用微處理器,是數字化電子世界中日益重要的電腦芯片。它的強大數據處理能力和高運行速度,是最值得稱道的兩大特色。
DSP微處理器(芯片)壹般具有如下主要特點:
(1)在壹個指令周期內可完成壹次乘法和壹次加法;
(2)程序和數據空間分開,可以同時訪問指令和數據;
(3)片內具有快速RAM,通常可通過獨立的數據總線在兩塊中同時訪問;
(4)具有低開銷或無開銷循環及跳轉的硬件支持;
(5)快速的中斷處理和硬件I/O支持;
(6)具有在單周期內操作的多個硬件地址產生器;
(7)可以並行執行多個操作;
(8)支持流水線操作,使取指、譯碼和執行等操作可以重疊執行。
當然,與通用微處理器相比,DSP微處理器(芯片)的其他通用功能相對較弱些。
DSP優點:
對元件值的容限不敏感,受溫度、環境等外部因素影響小;
容易實現集成;VLSI
可以分時復用,***享處理器;
方便調整處理器的系數實現自適應濾波;
可實現模擬處理不能實現的功能:線性相位、多抽樣率處理、級聯、易於存儲等;
可用於頻率非常低的信號。
DSP缺點:
需要模數轉換;
受采樣頻率的限制,處理頻率範圍有限;
數字系統由耗電的有源器件構成,沒有無源設備可靠。
但是其優點遠遠超過缺點。
書上常用程序片段
匯編語言源程序片段:
;主程序
.text
_c_int0
CALL SYSINIT ;系統初始化程序
CALL PWM_INIT ;EVB模塊PWM初始化程序
WAIT
NOP
B WAIT
;系統初始化程序
SYSINIT:
SETC INTM
CLRC SXM
CLRC OVM
CLRC CNF ;B0區被配置為數據空間
LDP #0E0H ;指向7000h-7080h區
SPLK #81FEH,SCSR1 ;時鐘4倍頻,CLKIN=6M,CLKOUT=24M
SPLK #0E8H,WDCR ;不使能WDT
LDP #0
SPLK #0002H,IMR ;使能中斷第2級INT2
SPLK #0FFFFH,IFR ;清全部中斷標誌
RET
;EVB模塊的PWM初始化程序
PWM_INIT:
LDP #DP_PF2 ;指向7080h-7100h區
LACL MCRC
OR #007EH ;IOPE[1-6]被配置為基本功能方式:PWM[7-12]
SACL MCRC
LDP #DP_EVB ;指向7500h-7580h區
SPLK #0FFFFH,EVBIFRA ;清EVB 全部中斷標誌
SPLK #0666H,ACTRB ;PWM12,10,8 低有效,PWM11,9,7 高有效
SPLK #00H,DBTCONB ;不使能死區控制
SPLK #10H,CMPR4 ;設置比較初值 PWM7高電平占50/60, 低電平占10/60
SPLK #20H,CMPR5 ;設置PWM9,10的比較寄存器
SPLK #30H,CMPR6 ;設置PWM11,12的比較寄存器
SPLK #60H,T3PR ;設置定時器3周期寄存器,
;即PWM周期為60個CPU時鐘周期
SPLK #0A600H,COMCONB ;使能比較操作
SPLK #0,T3CNT
SPLK #41H,GPTCONB ;TCOMPOE=1,T3PIN=01
SPLK #080H,EVBIMRA ;通用定時器3使能
SPLK #0174EH,T3CON ;TMODE=10 連續增計數模式,TPS=111 預分頻為128
;TENABLE=1 定時器計數使能, TCLKS=00 內部時鐘
;TECMPR=1 定時器3比較使能, SELT3PR=0
CLRC INTM ;開總中斷
RET
;定時器3中斷程序
GISR2: ;優先級INT2中斷人口
;保護現場
LDP #0 ;保存機器上下文
SST #0,st0_temp ;使用自動尋址,DP-0
SST #1,st1_temp ;保存狀態寄存器到B2 DARAM.
LDP #0
SACL context ;保存ACC的低16位
SACH context+1 ;保存ACC的高16位
SAR AR1,context+2
SAR AR2,context+3
SAR AR3,context+4
SAR AR4,context+5
SAR AR5,context+6
LDP #0E0H
LACC PIVR,1 ;讀取外設中斷向量寄存器(PIVR),並左移壹位
ADD #PVECTORS ;加上外設中斷人口地址
BACC ;跳到相應的中斷服務子程序
T3GP_ISR: ;通用定時器3中斷人口
LDP #DP_EVB
SPLK #0,T3CNT
GISR2_RET: ;中斷返回
;恢復現場
LDP #DP_EVA
SPLK #0FFFFH,EVAIFRA
LDP #0
LAR AR5,context+6
LAR AR4,context+5
LAR AR3,context+4
LAR AR2,context+3
LAR AR1,context+2
LACC context+1,16
ADDS context
LST #1, st1_temp
LST #0, st0_temp
CLRC INTM ;開總中斷,因為壹進中斷就自動關閉總中斷
RET
DSP技術的應用
語音處理:語音編碼、語音合成、語音識別、語音增強、語音郵件、語音儲存等。
圖像/圖形:二維和三維圖形處理、圖像壓縮與傳輸、圖像識別、動畫、機器人視覺、多媒體、電子地圖、圖像增強等。
軍事:保密通信、雷達處理、聲吶處理、導航、全球定位、跳頻電臺、搜索和反搜索等。
儀器儀表:頻譜分析、函數發生、數據采集、地震處理等。
自動控制:控制、深空作業、自動駕駛、機器人控制、磁盤控制等。
醫療:助聽、超聲設備、診斷工具、病人監護、心電圖等。
家用電器:數字音響、數字電視、可視電話、音樂合成、音調控制、玩具與遊戲等。
生物醫學信號處理舉例:
CT:計算機X射線斷層攝影裝置。(其中發明頭顱CT英國EMI公司的豪斯菲爾德獲諾貝爾獎。)
CAT:計算機X射線空間重建裝置。出現全身掃描,心臟活動立體圖形,腦腫瘤異物,人體軀幹圖像重建。
心電圖分析。
2407和2812是dsp2000系列性能最讓人關註的兩款芯片,在使用過兩種芯片後,
特將兩款芯片的異同來作壹比較。
都是對於電機控制開發使用。由此,在外設上的配備上有較多的相似之處。
2407與2812的異同點
1、相同點:
1 時間管理器,來管理定時器和pwm,及電機光電碼盤的接口,
2 多路ad來接受傳感器的信號
3 通訊接口 spi can sci 使得可以方便的通訊
4 程序存儲器和內部ram都有壹定的容量滿足不同的需求
5 3、3V電壓供電,突出了低功耗的節電功能
6 可以進行程序和數據空間的外擴
7 jtag接口相同
8 內核相同 ,方便程序移植
同時,240x系列都有以下特點:
采用高性能靜態CMOS技術,似的供電電壓降為3.3V,減小了控制器的功耗;30MIPS的執行速度是得指令周期縮短到33ns,從而提高了實時控制能力
基於TMS320C2xx DSP的CPU核,保證了F240x系列DSP代碼與TMS320系列DSP代碼兼容
片內有很大的程序存儲器以及數據/程序RAM,DRAM,SARAM
兩個事件管理器模塊,包括兩個16位通用定時器,8個16位脈寬調制通道,3個捕獲單元,片內光電編碼器接口電路,16位通道AD轉換器。事件管理器模塊適用於控制交流感應電機、無刷直流電機、開關磁阻電機、步進電機、多級電機和逆變器。
擁有較大的可擴展外部存儲器
擁有看門狗定時器模塊
控制器局域網絡(CAN)2.0B模塊,串行通信接口(SCI)模塊,16位串行外設接口(SPI)模塊
基於鎖相環的時鐘發生器,眾多的通用I/O引腳,5個外部中斷(兩個電機驅動保護、復位和兩個可屏蔽中斷)
電源管理包括3種低功耗模式,能獨立地將外設器件轉入低功耗工作模式
2、不同點:
1 電壓 2407 3。3V內核和IO供電,flash燒寫電壓5V 。2812 1。8V或者1.9V內核和3。3VIO供電,flash燒寫電壓3.3V 。上電次序,2407沒有關系 ,2812 io先上電,核後上電
2 clk 2407最大40M 。2812 最大150M(內核電壓1.9V)或者 135M(內核電壓 1.8V)
3 下載程序方式 2407 編程器下載
2812 編程器下載 串口 spi
4 cpu 2407為16位處理器 。2812為32處理器
5 程序和數據空間 2407 flash32k ram2。5K可擴展196K 。2812 flash 16×128K ram 16×18K可擴展4M空間
6 時間管理器 2407 定時器16位 壹個光電碼盤接口。2812 定期器32位 有兩個光電碼盤接口
7 ad 2407 10位 2812 12位
8 sci 2407 1個 沒有緩沖單元 2812 兩個 具有緩沖單元
8 can 2407標準can符合2。0B協議 2812增強can和標準can 符合2。0B
9 mcbsp 2407 沒有 2812 有
10 語言 2407 匯編 c 2812 匯編 c c++
11 TI支持 2407沒有提供較多的例程支持 2812 提供完整的模塊例程支持
12 編程風格 2407傾向於模塊編程 2812 類編程,並且結構性更強
13 寄存器的保護。2407沒有對系統寄存器的保護,2812提供了保護機制
14 在開發環境的幫助文件上看,2407比2812要好點,2812的寄存器的設置和定 義幫助文件基本沒有說明
正因為這些異同點,我們不難看出 2812已經比2407具有了更高的處理能力,更豐富的處理方式和更安全的系統結構,也增加了壹部分2407所不具有的功能。
所以,信息處理量越來越大的DSP領域,可以預言,2812代替2407已經成為壹種趨勢。2407是2812的基礎壹級,2812比2407更加適應如今發展迅速。但我們現階段還是要通過對2407的學習打好基礎,以便更好的理解和學習2812,。
DSP未來發展
1、數字信號處理器的內核結構進壹步改善,多通道結構和單指令多重數據(SIMD)、特大指令字組(VLIM)將在新的高性能處理器中將占主導地位,如Analog Devices的 ADSP-2116x。
2、DSP 和微處理器的融合:
微處理器是低成本的,主要執行智能定向控制任務的通用處理器能很好執行智能控制任務,但是數字信號處理功能很差。而DSP的功能正好與之相反。在許多應用中均需要同時具有智能控制和數字信號處理兩種功能,如數字蜂窩電話就需要監測和聲音處理功能。因此,把DSP和微處理器結合起來,用單壹芯片的處理器實現這兩種功能,將加速個人通信機、智能電話、無線網絡產品的開發,同時簡化設計,減小PCB體積,降低功耗和整個系統的成本。例如,有多個處理器的Motorola公司的DSP5665x,有協處理器功能的Massan公司FILU-200,把MCU功能擴展成DSP和MCU功能的TI公司的TMS320C27xx以及Hitachi公司的SH-DSP,都是DSP和MCU融合在壹起的產品。互聯網和多媒體的應用需要將進壹步加速這壹融合過程。
3、DSP 和高檔CPU的融合:
大多數高檔GPP如Pentium 和PowerPC都是SIMD指令組的超標量結構,速度很快。LSI Logic 公司的LSI401Z采用高檔CPU的分支預示和動態緩沖技術,結構規範,利於編程,不用擔心指令排隊,使得性能大幅度提高。Intel公司涉足數字信號處理器領域將會加速這種融合。
4、DSP 和SOC的融合:
SOC(System-On-Chip)是指把壹個系統集成在壹塊芯片上。這個系統包括DSP 和系統接口軟件等。比如Virata公司購買了LSI Logic公司的ZSP400處理器內核使用許可證,將其與系統軟件如USB、10BASET、以太網、UART、GPIO、HDLC等壹起集成在芯片上,應用在xDSL上,得到了很好的經濟效益。因此,SOC芯片近幾年銷售很好,由1998年的1.6億片猛增至1999年的3.45億片。1999年,約39%的SOC產品應用於通訊系統。今後幾年,SOC將以每年31%的平均速度增長,到2004年將達到13億片。毋庸置疑,SOC將成為市場中越來越耀眼的明星。
5、DSP 和FPGA的融合:
FPGA是現場編程門陣列器件。它和DSP集成在壹塊芯片上,可實現寬帶信號處理,大大提高信號處理速度。據報道,Xilinx 公司的Virtex-II FPGA對快速傅立葉變換(FFT)的處理可提高30倍以上。它的芯片中有自由的FPGA可供編程。Xilinx公司開發出壹種稱作Turbo卷積編譯碼器的高性能內核。設計者可以在FPGA中集成壹個或多個Turbo內核,它支持多路大數據流,以滿足第三代(3G)WCDMA無線基站和手機的需要,同時大大節省開發時間,使功能的增加或性能的改善非常容易。因此在無線通信、多媒體等領域將有廣泛應用