定點DSP芯片TMS320F2812實現(xiàn)快速算法應(yīng)用
來源:國外電子元器件; 作者:李佳武 張景森 滕 峰;
摘要:論述了以DSP芯片TMS320F2812為核心的一種測量儀器的組成原理、設(shè)計思想以及快速定點算法的實現(xiàn)方法,同時對定點和浮點算法結(jié)果進行了比較。
關(guān)鍵詞:定點芯片;浮點運算;快速算法;系統(tǒng)配置;TMS320F2812
1 TMS320F2812簡介
TMS320F2812是TI公司的一款用于控制的高性能、多功能、高性價比的32位定點DSP芯片。該芯片兼容TMS320LF2407指令系統(tǒng)?最高可在150MHz主頻下工作,并帶有18k×16位0等待周期片上SRAM和128k×16位片上FLASH(存取時間36ns)。其片上外設(shè)主要包括2×8路12位ADC(最快80ns轉(zhuǎn)換時間)、2路SCI、1路SPI、1路McBSP、1路eCAN等,并帶有兩個事件管理模塊(EVA、EVB),分別包括6路PWM/CMP、2路QEP、3路CAP、2路16位定時器(或TxPWM/TxCMP)。另外,該器件還有3個獨立的32位CPU定時器,以及多達56個獨立編程的GPIO引腳,可外擴大于1M×16位程序和數(shù)據(jù)存儲器。TMS320F2812采用哈佛總線結(jié)構(gòu),具有密碼保護機制,可進行雙16×16乘加和32×32乘加操作,因而可兼顧控制和快速運算的雙重功能。
通過對TMS320F2812定點DSP芯片合理的系統(tǒng)配置和編程可實現(xiàn)快速運算,本文著重對此加以說明。
2 TMS320F2812基本系統(tǒng)配置
2.1 TMS320F2812時鐘
TMS320F2812的片上外設(shè)按輸入時鐘可分為如下4個組:
(1)SYSOUTCLK組:包括CPU定時器和eCAN總線,可由PLLCR寄存器動態(tài)地修改;
(2)OSCCLK組:主要是看門狗電路,由WDCR寄存器設(shè)置分頻系數(shù);
(3)低速組:有SCI、SPI、McBSP,可由LOSPCP寄存器設(shè)置分頻系數(shù);
(4)高速組:包括EVA/B、ADC,可由HISPCP寄存器設(shè)置分頻系數(shù)。
為了使系統(tǒng)具有較快的工作速度,除了定時器和SCI等少數(shù)需要低速時鐘的地方,其它外設(shè)均可以150MHz時鐘工作。
2.2 存儲空間
圖1所示是TMS320F2812的內(nèi)部存儲空間映射圖。TMS320F2812為哈佛(Harvard)結(jié)構(gòu)的DSP,即在同一個時鐘周期內(nèi)可同時進行一次取指令、讀數(shù)據(jù)和寫數(shù)據(jù)的操作。在邏輯上有4M×16位程序空間和4M×16位數(shù)據(jù)空間,但物理上已將程序空間和數(shù)據(jù)空間統(tǒng)一為一個4M×16位的存儲空間,各總線按優(yōu)先級由高到低的順序為:數(shù)據(jù)寫、程序?qū)憽?shù)據(jù)讀、程序讀。其中由CY7C1041擴展的256k×16位SARAM位于Zone 6(0x100000~0x13FFFF),存取時間不小于12ns;128k×16位FLASH空間(0x3D8000~ 0x3F7FFF)取指時間不小于36ns。為了盡可能提高器件的工作速度,在對FLASH寄存器編程使其在較高速度下工作的同時,可將時間要求比較嚴格的程序(如時延計算子程序、FIR濾波子程序等)、變量(如FIR濾波器系數(shù)、自適應(yīng)算法的權(quán)向量等)各堆棧空間搬移到H0、L0、L1、M0、M1空間來運行。
2.3 中斷
TMS320F28x系列DSP片上都有非常豐富的外設(shè),每個片上外設(shè)均可產(chǎn)生1個或多個中斷請求。中斷由兩級組成,其中一級是PIE中斷,另一級是CPU中斷。CPU中斷有32個中斷源,包括RESET、NMI、EMUINT、ILLEGAL、12個用戶定義的軟件中斷USER1~USER12和16個可屏蔽中斷(INT1~INT14、RTOSINT和DLOGINT)。所有軟件中斷均屬于非屏蔽中斷。由于CPU沒有足夠的中斷源來管理所有的片上外設(shè)中斷請求,所以在TMS320F28x系列DSP中設(shè)置了一個外設(shè)中斷擴展控制器(PIE)來管理片上外設(shè)和外部引腳引起的中斷請求。
PIE中斷共有96個,被分為12個組,每組內(nèi)有8個片上外設(shè)中斷請求,96個片上外設(shè)中斷請求信號可記為INTx.y(x=1,2,…,12;y=1,2,…,8)。每個組輸出一個中斷請求信號給CPU,即PIE的輸出INTx(x=1,2,…,…12)對應(yīng)CPU中斷輸入的INT1~INT12。TMS320F28x系列DSP的96個可能的PIE中斷源中有45個被TMS320F2812使用,其余的被保留作以后的DSP器件使用。
ADC、定時器、SCI編程等均以中斷方式進行,可提高CPU的利用率。
2.4 復(fù)位引導(dǎo)
圖2所示是TMS320F2812的片上引導(dǎo)ROM空間映射。其此導(dǎo)程序配置在圖2中的0x3FFC00~0x3FFFBF