量子框架的FlexRay時(shí)鐘同步功能建模
如圖6所示,節(jié)點(diǎn)首先對兩個(gè)模塊進(jìn)行初始化;當(dāng)接收到主機(jī)配置指令后,進(jìn)行內(nèi)部功能配置;完成后進(jìn)入節(jié)點(diǎn)啟動狀態(tài),最后轉(zhuǎn)換到運(yùn)行狀態(tài)。如果在運(yùn)行狀態(tài)接收到主機(jī)的外部修正值時(shí),則活動對象發(fā)送vExternRate―control和vExternOffsetControl兩個(gè)變量到CSP模塊,用于節(jié)點(diǎn)內(nèi)部時(shí)鐘修正。
3.3.2 內(nèi)部時(shí)鐘控制活動對象
此活動對象包含CSS、CSP和MTG三個(gè)功能模塊,是時(shí)鐘同步機(jī)制的主要組成部分。這里考慮作為從冷啟動節(jié)點(diǎn)的時(shí)鐘同步過程,所以采取使用其他主冷啟動節(jié)點(diǎn)的同步化參數(shù)參來啟動,調(diào)整內(nèi)部時(shí)鐘,從而實(shí)現(xiàn)系統(tǒng)中各個(gè)節(jié)點(diǎn)間的時(shí)鐘同步,如圖7所示。
上電后,活動對象處于默認(rèn)狀態(tài)。當(dāng)接收到主機(jī)集群啟動指令后,進(jìn)入等待啟動狀態(tài)并建立CSS實(shí)例和對測量偏差的變量初始化;在接收兩個(gè)啟動幀后,節(jié)點(diǎn)啟動內(nèi)部時(shí)鐘。當(dāng)接收到其他冷啟動節(jié)點(diǎn)的時(shí)鐘信息同步幀后,采集節(jié)點(diǎn)間時(shí)間偏差,采用容錯(cuò)算法計(jì)算出頻率和相位的修正值并發(fā)送給MTG模塊,從而完成與主冷啟動節(jié)點(diǎn)的時(shí)鐘同步。
3.3.3 總線接口控制活動對象
此活動對象是FlexRay內(nèi)核與外部總線的接口,完成對發(fā)送數(shù)據(jù)信息的編碼發(fā)送和對接收數(shù)據(jù)的解碼及識別??紤]到靜態(tài)段采用TMDA方式進(jìn)行傳輸,且時(shí)鐘同步采用接收數(shù)據(jù)幀的方式,這里只根據(jù)數(shù)據(jù)幀的接收及解碼過程建立有限狀態(tài)模型,如圖8所示。
圖8中,活動對象在接收到相應(yīng)信號的空閑標(biāo)志信號cE Start后,開始對數(shù)據(jù)幀進(jìn)行解碼,依次對數(shù)據(jù)幀的起始標(biāo)志和幀頭段進(jìn)行解碼;然后是靜態(tài)段以及周期內(nèi)其他部分的解碼。通過檢查數(shù)據(jù)幀、符號時(shí)序和語法來判斷當(dāng)前接收數(shù)據(jù)的有效性。
3.4 活動對象交互
在節(jié)點(diǎn)集群啟動過程中,分解的活動對象彼此之間要發(fā)生信息交互,如圖9所示。
節(jié)點(diǎn)通過通信接口控制對象啟動內(nèi)部模塊,并發(fā)出集群啟動的指令(attempt integration),等待接收主冷啟動節(jié)點(diǎn)發(fā)出的啟動幀。首先,總線接口控制對象接收到第一個(gè)有效偶數(shù)啟動幀(valid even startup frame)后,通知內(nèi)部時(shí)鐘控制對象集群啟動;當(dāng)接收下一個(gè)有效奇數(shù)啟動幀(valid odd startup frame),并把當(dāng)前啟動的狀態(tài)信息發(fā)送給其他的兩個(gè)對象,在兩通道完成同步幀的接收后,內(nèi)部時(shí)鐘模塊調(diào)用內(nèi)部宏單元計(jì)算頻率和相位偏差,修正內(nèi)部時(shí)鐘使之和主冷啟動節(jié)點(diǎn)同步,從而實(shí)現(xiàn)時(shí)鐘同步,并把結(jié)果SyncCalcResult發(fā)送到協(xié)議控制器,后者根據(jù)結(jié)果來決定當(dāng)前節(jié)點(diǎn)的工作狀態(tài)。
4 軟件結(jié)構(gòu)
應(yīng)用量子框架編寫應(yīng)用程序主要有3步:聲明觸發(fā)信號和事件;定義活動對象(任務(wù));初始化量子框架并開始運(yùn)行活動對象?;窘Y(jié)構(gòu)如下:
5 結(jié) 論
FlexRay是一種支持多種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),高速可靠,尤其適用于汽車環(huán)境下的總線。其協(xié)議旨在應(yīng)用于需要高通信帶寬和決定性容錯(cuò)數(shù)據(jù)傳輸能力的底盤控制、車身和動力總成等場合,有很好的發(fā)展前景;而量子框架則提供了基于有限狀態(tài)機(jī)的實(shí)現(xiàn)技術(shù),能方便地將狀態(tài)圖轉(zhuǎn)化成系統(tǒng)的程序代碼。
評論