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