關于數字信號控制器在汽車設計中的應用
車廂噪聲消除、引擎爆震檢測及防翻滾和穩定性控制等舒適、診斷和安全功能都需要更強的信號處理能力,這就要求使用自適應濾波等數學密集型算法。
進行這樣的計算要求所使用的處理器具有非常高速的數學運算功能。8位的MCU或一般的16位MCU架構完全不具備這樣的功能,而對成本的考慮又常常會使昂貴的32位MCU無法在這樣的場合得到使用。一個專門針對重復性數學處理進行優化的特殊處理器架構——16位數字信號處理器(
但就DSP本身(沒有處理控制任務的相關MCU)來說,它并不是非常適合在汽車系統等動態環境中使用。主要有以下幾個原因:
a)DSP不具有靈活的中斷結構。
b)DSP無法對位(如各個I/O引腳的狀態)進行十分高效的操作。
c)DSP在很大程度上需要依賴片外存儲器和外設。
d)很少有低引腳數的DSP器件,因而不適合在空間受限的模塊中使用。
因此,可執行大量汽車功能的理想單芯片架構平臺將是16位數字信號控制器(DSC),比如Microchip的dsPIC30F系列器件。DSC是一款創新的混合型“片上系統”(SoC)架構,它無縫地組合了16位MCU的控制特性和大量的DSP功能。
一方面,DSC架構尤其適合類似于下述的典型控制操作:
a)定期提供中斷服務,例如,獲取對汽車速度和轉向角度的定期采樣以計算防抱死制動系統(ABS)所需的制動壓力。
b)從多個傳感器和控制輸入捕捉數據,例如,同時測量汽車速度、加速度、車身和車輪的相對運動,以及轉向角度,從而確定主動懸架控制系統的制動水平。
c)向執行機構發送數據和控制脈沖,例如,發送占空比可變的PWM信號以合適的周期開關燃油噴射器或點火電路。
d)與分布式系統中的其他控制器模塊共享數據,例如,各種子系統周期性地發送狀態數據到診斷模塊或用戶顯示面板。
另一方面,DSC的CPU支持功能強大的一套DSP指令和靈活的尋址模式,因此能快速完成一系列精確的算術與邏輯運算。
DSC的主要特性
典型的DSC架構具備一些CPU和外設的特性,因而適用于眾多汽車應用。在這一部分,我們將探討這些 特性中最具優勢的特性,它們是考慮使用DSC架構時,最令人關注的特性。
增強的CPU功能
16位DSC最強有力的功能可能就要屬其強大的數學處理能力。一個真正的DSC包含兩個40位累加器,可用來存儲兩個獨立的16位×16位乘法運算的結果。
大多數信號處理算法以及許多一般數學計算,都包含有動態乘積和的計算。諸如MAC(乘-累加)等特殊指令能夠在一個指令周期內,求得兩個16位數的乘積,將結果添加到累加器,然后從RAM預取一對數據值。因為有兩個累加器,這種架構還能在回寫數據到一個累加器的同時在另一個累加器中執行計算。
40位寬的累加器允許數據暫時溢出(當在累加器中累加大量數值時,這種情況時有發生!)。此外,DSC的CPU還可選擇將值保持在一個允許的范圍內,這個范圍由一種稱為飽和的機制確定,在回寫數據到RAM時,這種機制還將對數據進行舍入和調整。DSC還擁有MCU通常不具備的特性,那就是DSC有能力解析小數形式的數據而不總是將數據看作整數,這一特性有助于小數的算術運算。
除了上述特性以外,DSC架構還具有多種數據尋址模式,能夠有效地傳送數據、支持循環緩沖區和位反轉尋址,以及零開銷循環。很明顯,DSC提供了一款非常有效且用戶友好的CPU架構。DSC是處理和分析
pid控制器相關文章:pid控制器原理
評論