新聞中心

EEPW首頁 > 電源與新能源 > 設計應用 > 高速的DSC讓控制系統(tǒng)游刃有余

高速的DSC讓控制系統(tǒng)游刃有余

作者: 時間:2012-06-24 來源:網(wǎng)絡 收藏

(Digital signal controller,數(shù)字信號控制器)是一種面向高端嵌入式系統(tǒng)的最先進的單片控制處理器?;诟↑c架構(gòu)的具有更快的處理速度,所需的程序儲存容量更少,支持更高級的有助于節(jié)省功耗的計算算法,同時進一步擴展了系統(tǒng)的性能。浮點編程比定點編程的速度更快,SoC(system-on-a-chip,片上系統(tǒng))的集成方式能夠有效控制板級空間、元件數(shù)量和整體系統(tǒng)開銷。

隨著嵌入式系統(tǒng)承擔的任務越來越復雜,不論是降低功耗還是實現(xiàn)諸如汽車導航之類的新功能,它們都需要具有更高性能的控制處理器。降低能耗的迫切需求影響到了我們使用的各種設備,包括一些用戶不常見的設備。例如,根據(jù)著名的能源與自動化技術供應商ABB集團的分析,工業(yè)電機消耗的電能已經(jīng)達到了整個行業(yè)所用電力的三分之二。雖然可以采用變速控制技術進一步提高電機的運行效率,但是目前只有二十分之一的電機真正采用了支持這一功能的數(shù)控電子技術。盡管如此,變速電機相比同類的定速電機每年節(jié)省的電能相當于10座電廠的產(chǎn)量,而這10座電廠會排放約6800萬噸二氧化碳氣體。顯然,高級電機控制技術在降低能耗和保護環(huán)境方面具有更大的優(yōu)勢。

引入高級控制技術降低能耗

可再生能源,例如太陽能電池和風力渦輪機,也是需要采用高級控制技術的“綠色”能源。與電機一樣,這些能量收集裝置也需要采用高級數(shù)控技術以提高效率。為了將電池板或渦輪機產(chǎn)生的原始電能實時轉(zhuǎn)換成用于電池儲存或設備運行所需的合適電能,我們必須采用一定的控制技術。由于太陽光和風力強度會不斷變化,因此需要采用復雜的算法確保它們始終能夠輸出最大的能量;由于很多可再生能源系統(tǒng)都會同時接入電網(wǎng),所以采用實時控制技術對于保護設備也是必需的。

高速的DSC讓控制系統(tǒng)游刃有余
圖1 F28335浮點內(nèi)含一個用于處理數(shù)據(jù)傳輸?shù)?通道DMA控制器


例如,TI公司推出的F283x浮點DSC(如圖1所示)具有性能高、軟件開發(fā)方便等特性,適用于電機與運轉(zhuǎn)控制、車載雷達系統(tǒng)和以太陽能電池陣列和風力渦輪為來源的可再生能源生成系統(tǒng)。這款32位的DSC系列處理器最高工作頻率可達150MHz,峰值運算速度可達每秒3億次浮點操作(MFLOPS)。

相比定點DSC TMS320F28x而言,采用浮點架構(gòu)之后DSC性能提升了50%。這一系列DSC內(nèi)含一個6通道DMA控制器,能夠大大減輕處理器核的數(shù)據(jù)傳輸管理工作,其軟件更新功能有助于用戶更方便地開發(fā)同一來源的浮點和定點代碼。

浮點運算

F283x系列DSC的主要性能優(yōu)勢歸因于它的數(shù)值計算格式,這種格式大大簡化了編程,減少了代碼執(zhí)行時間,縮短了代碼長度。在其他一些DSC和DSP芯片中普遍的采用定點格式只能夠表示整數(shù)(沒有小數(shù)點的正數(shù)和負數(shù)),因此涉及小數(shù)計算時必須采用其他表示方法。相反,浮點格式能夠表示更大范圍內(nèi)的實數(shù)(帶小數(shù)點的數(shù))。內(nèi)部表示小數(shù)以及較寬的數(shù)值范圍意味著處理器能夠更高效地執(zhí)行定標運算(例如控制算法中常見的乘法、除法和三角函數(shù)運算)。

高速的DSC讓控制系統(tǒng)游刃有余
圖2 F283x的32位字長的前8位用于表示指數(shù)。F283x數(shù)字信號控制器的32位浮點字 對于32位的定點架構(gòu),其表示整數(shù)的范圍為-231~231,帶一個符號位。盡管這個范圍很大,但是當系統(tǒng)執(zhí)行大量定標運算時,這一數(shù)值范圍會很快用光,造成數(shù)值超過32位,從而發(fā)生寄存器溢出。程序通過對這種數(shù)值進行舍入或截取,能夠處理這種稱為飽和的問題,但是犧牲了計算的精度。另外,程序可以將較長的數(shù)劃分成多個較短的能夠逐段計算的數(shù),每次處理32位。后面這種實現(xiàn)方法能夠保持全精度,但是由于處理器忙于移動和存儲數(shù)值段,計算性能降低了。同時,程序規(guī)模也會由于所需的額外指令而增大了。

在這種情況下,浮點架構(gòu)就顯示出了其性能價值。如圖2所示,在F283x中,32位字長的前8位用于表示指數(shù),其余23位用于表示尾數(shù),1位用作符號位。盡管指數(shù)沒有符號位,但是在操作上對保存的指數(shù)進行規(guī)格化偏移處理,使得指數(shù)最終能夠覆蓋負數(shù)和正數(shù)的范圍。

這樣,存儲在32位浮點字中的數(shù)的規(guī)格化范圍為±1.738~±3.438,大大超過32位定點數(shù)的范圍。由于負指數(shù)表示分數(shù),所以這一范圍涵蓋了極小的數(shù)到極大的數(shù)。這樣大的范圍很難再出現(xiàn)飽和的問題,因此,程序就避免了要么通過舍入或截取犧牲精度,要么通過使用附加周期和指令對大數(shù)值進行分段處理而犧牲性能和存儲的兩難問題。

處理器性能增強

表1中列出的運算說明了浮點架構(gòu)為DSC性能帶來的好處。第一列是常用的四種算術運算、三角函數(shù)運算和兩種算法(快速傅里葉變換和無限沖擊響應)。

表1 定點及浮點架構(gòu)性能基準測試比較

高速的DSC讓控制系統(tǒng)游刃有余


第二列是在定點DSC上執(zhí)行相應運算所需的周期數(shù),第三列是在浮點DSC上執(zhí)行所需的周期數(shù)。最后一列是第二列與第三列結(jié)果的比值,表示二者的相對性能。浮點處理器執(zhí)行所列數(shù)學運算的速度比定點處理器快2~3倍,執(zhí)行FFT算法的加速性能也在該范圍內(nèi),IIR的加速性能稍低,但仍比定點處理器快。

一般來說,控制算法比信號處理算法能夠獲得更高的性能提升,因為控制代碼執(zhí)行的基本數(shù)學運算較多,需要進行定點換算和飽和處理。即便如此,浮點架構(gòu)得到的周期數(shù)也低得多,對所有信號處理測試程序平均獲得了50%的性能提升。

在各種應用中,這些基準測試程序變換成很多具體的應用程序。精細、多維控制技術可應用于機器人的和CNC(計算機數(shù)控)類的設備。伺服電機驅(qū)動器的效率將會得到進一步提高,能夠?qū)崿F(xiàn)PLC(電力線控制)和其他一些高級算法。太陽能風能逆變器和不間斷電源能夠獲得更高的能量轉(zhuǎn)換效率,進一步降低每千瓦電能的生產(chǎn)成本,并且能夠控制不同配置的太陽能板陣或風力渦輪機。

軟件開發(fā)的優(yōu)勢

浮點格式也有利于簡化代碼的編寫和調(diào)試。浮點數(shù)字表示法對于數(shù)學運算相比定點表示法更加自然,因此對高級語言的支持更加直接。當代碼經(jīng)過編寫和驗證調(diào)試之后,可以直接導入浮點DSC進行進一步的測試和最終的生產(chǎn)。

相比之下,在針對定點控制器開發(fā)代碼的時候,必須在PC上編寫和調(diào)試程序進行驗證,然后還要根據(jù)更嚴格的硬件定點表示方法重新編寫代碼。這大大增加了代碼的開發(fā)周期,而且一旦對代碼進行轉(zhuǎn)換之后無法進行回退。

一般地,開發(fā)人員不得不同時編寫定點的代碼和浮點的代碼,這就存在可能相互混淆的危險。F283x控制器只需要開發(fā)浮點代碼,從而大大簡化了代碼開發(fā)過程,節(jié)省了開發(fā)時間,提高了軟件可靠性。

在存在成本約束的情況下,可以先以浮點控制器為開發(fā)平臺進行原型和早期版本的設計,然后改用定點控制器進行量產(chǎn)制造,采用這一開發(fā)策略具有明顯的優(yōu)勢。采用C編譯器和IQ Math工具能夠很方便地編譯浮點和定點兩種方式下同樣的源碼,從而支持這一策略。F283x DSC是一種經(jīng)濟的控制器解決方案,它是業(yè)界第一款采用SoC集成的浮點控制器。隨著浮點架構(gòu)與定點架構(gòu)的成本交叉點上升到越來越高的水平,很多高級系統(tǒng)為了節(jié)省


上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉