虛擬平臺的汽車驅動模擬
2004年6月A版
汽車的復雜電子系統安裝大量通過時間敏感網絡的多功能ECU(電子控制單元)作內部通信的控制軟件,許多汽車控制系統用ECU實現通過網絡層通信的單項功能。時尚的高級轎車有多達90個ECU,全部連網需要的電線束重量會超過50公斤,為了減少電線重量,ECU應該置放在靠近它的控制地點。
新特性需要更多靈活的帶有大型嵌入式軟部件的ECU。遙測和車內娛樂需要無線連接、全球定位、數字無線電的互聯網接入的綜合,隨時可以進行免提的語音控制。
定量評估
在定義軟硬件系統和準備深入開發前,需要對網絡和ECU內部的可能結構進行定量分析和評估。
傳統的開發汽車嵌入式軟件方法是構建重現全部或部分ECU以及它的外部電路的硬件板,通常稱為工廠模型。往往不太可能由一種設置執行所有測量,故需要很多工作臺設置。
對功能最強的ECU的性能要求是不必再使用昂貴的試驗板進行測量,對ECU內部作有限的測試即可避免硬件排錯。因為硬件不會產生錯誤消息,簡單的錯誤,例如沒有起始化的寄存器都要在花很長時間后才能被發現。在一個硬件原型機上對軟件排錯,即使有在線仿真器也是困難和很費時的。
嵌入式系統必須足夠快速去運行大容量的軟件,包括實時操作系統(RTOS)和網絡協議棧在內。
測量方法的綜合
工作臺測試還有其它方法,基于主機的方法是“寫入一次/移動兩次”,亦即軟件先在帶有模擬器的測試架構的主機PC內開發,然后移到ECU。這種方法在汽車環境內可能失敗,因為出現硬實時性對軟件的限制,而不能從PC的執行去預測實際的性能。
ISS方法使用處理器的函數模型,模型通常由處理器供應商提供。問題出在有時候模型與處理器的周期—周期特性不匹配。速度又是另一問題,因為ISS太慢,典型值是100~500kIPS(0.1~0.5MIPS),不能運行實際應用的大型軟件,而成為每日編輯—編譯—排錯循環的一部分。
新的方法使軟件開發人員構建系統級的ECU模型,或者ECU的虛擬平臺(或者網絡化的ECU子系統),在最后綜合階段之前全部軟件在模型上開發,然后移植到真正的ECU硬件。
虛擬平臺
VaS Systems公司的VaST虛擬平臺技術可在市售PC上模擬200MIPS的嵌入式處理器。因為處理器模型的周期—周期是精確的,工程師能夠測量與硬件全部的交互動作,并對軟件和軟硬件接口進行詳細的性能測量。
虛擬平臺對ECU內部完全透明,比硬件基的排錯環境好得多。以下是客戶的設計實例:
一個ECU平臺構成汽車越野檢測器的核心,平臺采用旋轉加速度計的模擬信號作為輸入。如果車輛開始滾動,則對信號作數學運算求得車輛的角速度和位置。當車輛滾動太快時,氣囊立即啟動,而車輛滾動較慢時,氣囊的啟動就推遲。
外設的作用
平臺由于有許多外設而變得復雜,外設包括時鐘發生器、存儲器、定時器和中斷控制器,還有上述的加速度計和氣囊釋放器接口。
處理器由“計算機正確運行”看門狗定時器監視,如果定時器暫停工作,表示處理器進入不希望的循環時,它會斷然啟動復位線。“低壓禁止”外設監視電源電壓,防止在電池損壞或引擎啟動階段釋放氣囊。實時操作保證看門狗定時器永不停頓,使啟動時動作順序執行。
使用虛擬平臺方法,工程師將RTOS和全部外設驅動器綜合起來,然后測試氣囊釋放算法,與過去使用的工廠模型法相比,估計可節省六個月時間。
虛擬系統模擬
系統結構同樣能夠實現許多高級模擬,采用MATLAB、UML、SystemsC、高級C或C++模型的語言的數學或格式來表示抽象規范。只要基本特性正確,分析軟件可將功能分配到多個ECU內,考察劃分到各ECU和互連網絡的性能需求。每個ECU可用處理器級、總線和外設來聯網,函數在硬件與軟件之間移動。
定量分析允許系統結構進行不同數目和種類ECU之間的不同分區性能的考察,評估折衷和決定最佳的執行方案。
虛擬平臺具有硬件和軟件兩者的再用性,以便綜合已有的各種功能。■(李儀)
評論