當(dāng)前位置:首頁(yè) > 模擬 > 模擬
[導(dǎo)讀]鑒于傳統(tǒng)有限狀態(tài)機(jī)建立行為模型的局限性和FlexRay總線(xiàn)工作的復(fù)雜性,本文介紹基于量子框架的FlexRay時(shí)鐘同步功能建模。在論述總線(xiàn)時(shí)鐘同步的運(yùn)行機(jī)制之后,建立基于量子框架(QF)的狀態(tài)機(jī)模型,將系統(tǒng)分成相互獨(dú)立的活動(dòng)對(duì)象。量子框架技術(shù)的應(yīng)用使得對(duì)FlexRay時(shí)鐘同步機(jī)制的設(shè)計(jì)更加靈活高效,增強(qiáng)了系統(tǒng)的可理解性和可維護(hù)性。

隨著車(chē)內(nèi)網(wǎng)絡(luò)的復(fù)雜化對(duì)速度,尤其是對(duì)故障容錯(cuò)與實(shí)時(shí)性的需求不斷增加,F(xiàn)lexRay總線(xiàn)的高速度、確定性、容錯(cuò)性等特點(diǎn)引起廣大學(xué)者和廠(chǎng)商的關(guān)注。FlexRay支持分布式控制系統(tǒng),具有全面協(xié)同工作的能力,其信息傳輸?shù)拇_定性離不開(kāi)其內(nèi)部的時(shí)鐘同步機(jī)制的支持。時(shí)鐘同步機(jī)制可根據(jù)該節(jié)點(diǎn)啟動(dòng)的不同工作階段,定義成不同的工作狀態(tài),如初始化、等待接收同步幀等??紤]到傳統(tǒng)的FSM方法建立模型存在代碼難以復(fù)用、維護(hù)困難等問(wèn)題,本文基于量子框架的角度,采用有限狀態(tài)機(jī)的方法對(duì)FlexRay時(shí)鐘同步機(jī)制進(jìn)行研究。

1 量子框架
    量子框架是基于事件驅(qū)動(dòng)并發(fā)狀態(tài)機(jī)的一種應(yīng)用框架,適用于嵌入式的可重用的基礎(chǔ)結(jié)構(gòu),它為外圍的應(yīng)用系統(tǒng)提供了硬件框架。量子框架在應(yīng)用系統(tǒng)中的地位如圖l所示。

    量子框架理論將應(yīng)用系統(tǒng)按照功能模塊分解成相互獨(dú)立的活動(dòng)對(duì)象,它們之間通過(guò)量子框架提供的軟總線(xiàn)和可識(shí)別的事件實(shí)例來(lái)實(shí)現(xiàn)彼此間的通信,活動(dòng)對(duì)象彼此間沒(méi)有任何的通信。事件隊(duì)列是為活動(dòng)對(duì)象提供的一個(gè)外部通信接口,能夠使活動(dòng)對(duì)象接收事件實(shí)例;還提供了保護(hù)內(nèi)部狀態(tài)圖的緩沖空間,以防止事件的生產(chǎn)爆發(fā)帶來(lái)的破壞,保證了活動(dòng)對(duì)象在運(yùn)行過(guò)程中的完整性。

2 FlexRay時(shí)鐘同步機(jī)制
2.1 FlexRay內(nèi)部結(jié)構(gòu)

    FlexRay按照其功能可以分成3個(gè)層次:通信接口及控制層、內(nèi)部時(shí)鐘控制層和外部接口控制層,如圖2所示。

    通信接口及控制層主要包括控制主機(jī)接口(CHI)和協(xié)議運(yùn)行控制器(POC)。CHI主要負(fù)責(zé)內(nèi)核和主機(jī)通信接口,POC是內(nèi)核的控制單元。
    內(nèi)部時(shí)鐘控制層包括時(shí)鐘同步啟動(dòng)模塊(CSS)、時(shí)鐘同步處理模塊(CSP)和時(shí)鐘發(fā)生器(MTG)。系統(tǒng)中各個(gè)節(jié)點(diǎn)的時(shí)鐘同步就是主要依靠這個(gè)層來(lái)實(shí)現(xiàn)的。
    外部接口控制層包括多路訪(fǎng)問(wèn)控制模塊(MAC)、數(shù)據(jù)幀與符號(hào)處理模塊(FSP)和編碼解碼處理模塊(CO—DEC)三個(gè)部分,可實(shí)現(xiàn)對(duì)接收發(fā)送數(shù)據(jù)信息的處理和對(duì)總線(xiàn)讀/寫(xiě)操作的編碼解碼功能。
2.2 時(shí)鐘周期結(jié)構(gòu)
   
每一個(gè)通信周期內(nèi)包括最小時(shí)間節(jié)拍層(Microtick)、最大時(shí)間節(jié)拍層(Macrotick)、仲裁網(wǎng)格層(Arbitration—grid)和通信周期層4個(gè)時(shí)間等級(jí)。每個(gè)通信周期分成4個(gè)部分:靜態(tài)段、動(dòng)態(tài)段、符號(hào)窗口和空閑網(wǎng)絡(luò)段。在靜態(tài)段中,基于時(shí)分復(fù)用(TDMA)技術(shù)將固定時(shí)槽分配給與各個(gè)節(jié)點(diǎn)匹配的ID,并允許節(jié)點(diǎn)傳輸數(shù)據(jù)。時(shí)槽大小相同,并且是從1開(kāi)始向上編號(hào)。將一個(gè)或一個(gè)以上的時(shí)槽固定分配給每個(gè)節(jié)點(diǎn)。在運(yùn)行期間,該時(shí)槽的分配不能修改,如圖3所示。

2.3 內(nèi)部時(shí)鐘同步機(jī)制
    節(jié)點(diǎn)的時(shí)鐘同步功能主要是由內(nèi)部時(shí)鐘控制層實(shí)現(xiàn)的。其內(nèi)部的MTG模塊控制周期計(jì)數(shù)器和最大時(shí)鐘節(jié)拍的計(jì)數(shù)器,并對(duì)其進(jìn)行修正;CSP模塊主要完成一個(gè)通信周期開(kāi)始的初始化,測(cè)量并存儲(chǔ)時(shí)間偏差值,計(jì)算頻率與相位的修正值;CSS模塊負(fù)責(zé)在集群?jiǎn)?dòng),或者在作為冷啟動(dòng)節(jié)點(diǎn)時(shí)發(fā)出時(shí)鐘啟動(dòng)信號(hào)。
    當(dāng)節(jié)點(diǎn)被喚醒并完成初始化后,就能在發(fā)出相應(yīng)的主機(jī)命令后進(jìn)入啟動(dòng)流程。節(jié)點(diǎn)開(kāi)始監(jiān)控總線(xiàn),如果沒(méi)有其他節(jié)點(diǎn)在發(fā)送數(shù)據(jù),則自身發(fā)送數(shù)據(jù),從而成為啟動(dòng)集群的主冷啟動(dòng)節(jié)點(diǎn)。在傳輸符號(hào)通知其他節(jié)點(diǎn)后,啟動(dòng)自身時(shí)鐘,開(kāi)始第一個(gè)通信循環(huán),并根據(jù)預(yù)定義機(jī)制,主啟動(dòng)節(jié)點(diǎn)將在其分配的時(shí)槽中傳輸。與其他所有節(jié)點(diǎn)一樣,它將只在一個(gè)時(shí)槽的啟動(dòng)階段傳輸。
    當(dāng)節(jié)點(diǎn)在接收到消息識(shí)別碼(ID)和時(shí)槽編號(hào)相同時(shí),
節(jié)點(diǎn)接收屬于自己的第1條消息。當(dāng)接收到第2條消息時(shí),后續(xù)的冷啟動(dòng)節(jié)點(diǎn)啟動(dòng)自身時(shí)鐘,并通過(guò)當(dāng)前獲得通信循環(huán)周期號(hào)和消息的時(shí)槽編號(hào)進(jìn)行初始化。兩條消息的時(shí)間差理論上應(yīng)該與主冷啟動(dòng)的通信周期相對(duì)應(yīng),接收節(jié)點(diǎn)要比較它們的可能的偏差,并通過(guò)糾正機(jī)制計(jì)算出修正值,從而通過(guò)修改內(nèi)部時(shí)鐘發(fā)生器的時(shí)基頻率,使其盡可能地與主冷啟動(dòng)周期值相對(duì)應(yīng)。
    FlexRay內(nèi)部的時(shí)鐘同步機(jī)制同時(shí)采用頻率修正與相位修正兩種方法對(duì)時(shí)鐘進(jìn)行修正。
2.3.1 頻率修正
    在CSP模塊中,頻率偏差的測(cè)量在每個(gè)通信周期的靜態(tài)段中進(jìn)行,通過(guò)內(nèi)部算法在奇數(shù)周期的靜態(tài)段之后計(jì)算偏差修正值。如圖4所示,偏差的結(jié)果在Cycle(2n+1)中計(jì)算得到,在Cycle(2n+2)和Cycle(2n+3)兩個(gè)周期內(nèi)MTG模塊利用此偏差值進(jìn)行頻率修正,而在Cycle(2n+3)中得到的新的偏差值在接下來(lái)的2個(gè)周期中得到應(yīng)用。
2.3.2 相位修正
   
在CSP模塊中,相位修正值的計(jì)算是在每個(gè)通信周期中都進(jìn)行采集(靜態(tài)段)和計(jì)算(在開(kāi)始進(jìn)行相位修正之前完成)的;應(yīng)用于MTG模塊的奇數(shù)周期內(nèi)的NIT段,從gOffsetCorrectionStart時(shí)刻開(kāi)始到下一個(gè)周期開(kāi)始之前,完成相位的修正過(guò)程。
    值得注意的是,MTG模塊每個(gè)周期都要進(jìn)行頻率修正。為了保證兩種修正方式的正確性,頻率偏差值的更新周期和相位修正周期是分開(kāi)的。圖4中,在Cycle(2n+1)周期中MTG同時(shí)進(jìn)行頻率和相位的修正,但沒(méi)有進(jìn)行頻率修正值的更新;而在Cycle(2n+2)周期,接收到CSP模塊發(fā)送的新頻率偏差值vRateCorrection,更新頻率偏差值,進(jìn)行頻率修正,但沒(méi)有進(jìn)行相位修正。也就是說(shuō),在沒(méi)有更新頻率偏差值的周期內(nèi),兩種修正同時(shí)進(jìn)行;在頻率更新的周期內(nèi),不進(jìn)行相位修正。另外,每個(gè)奇數(shù)周期內(nèi),CSP在靜態(tài)段之后進(jìn)行相位和頻率修正值的計(jì)算。理論上這兩個(gè)計(jì)算過(guò)程沒(méi)有時(shí)間上的先后,只要確保相位修正值在應(yīng)用前(gOffsetCorrectionStart)得到,而頻率偏差值在下一個(gè)周期到來(lái)之前得到。


3 基于量子框架的行為建模
3.1 有限狀態(tài)機(jī)的設(shè)計(jì)
   
有限狀態(tài)機(jī)是對(duì)描述對(duì)象的抽象描述,它把對(duì)象模型分解成一些能夠進(jìn)行讀/寫(xiě)操作或者等待外部事件的狀態(tài),并且能夠由外部事件引起對(duì)象狀態(tài)的轉(zhuǎn)換,即在當(dāng)前狀態(tài)下,由外部事件的發(fā)生并在滿(mǎn)足某些條件的情況下,進(jìn)入第2個(gè)狀態(tài)。
3.2 對(duì)象分析
    根據(jù)節(jié)點(diǎn)配置的不同功能,F(xiàn)lexRay內(nèi)部的各個(gè)模塊表現(xiàn)為不同的狀態(tài)變化。在一個(gè)系統(tǒng)的眾多節(jié)點(diǎn)中,包括數(shù)量有限的冷啟動(dòng)節(jié)點(diǎn)(cold start node)和普通節(jié)點(diǎn)。冷啟動(dòng)的節(jié)點(diǎn)分成2種:一種是啟動(dòng)整個(gè)集群的主冷啟動(dòng)節(jié)點(diǎn)(1eading cold start node);另一種是根據(jù)其他冷啟動(dòng)節(jié)點(diǎn)的參數(shù)來(lái)完成啟動(dòng)的從冷啟動(dòng)節(jié)點(diǎn)(following coldstart node)。這里只討論節(jié)點(diǎn)作為從冷啟動(dòng)節(jié)點(diǎn)的情況。
3.3 活動(dòng)對(duì)象建模
   
如上所述,每個(gè)活動(dòng)對(duì)象都是作為一個(gè)相對(duì)獨(dú)立的任務(wù)來(lái)處理的。量子框架起到了軟件總線(xiàn)的作用,系統(tǒng)的功能擴(kuò)展、分解、集成比較容易,可以方便地進(jìn)行升級(jí)、裁剪。將FlexRay系統(tǒng)按功能模塊分解成3個(gè)活動(dòng)對(duì)象,如圖5所示。

3.3.1 通信接口及控制活動(dòng)對(duì)象
    這個(gè)活動(dòng)對(duì)象包括CHI和POC兩個(gè)模塊。CHI是主機(jī)和FlexRay內(nèi)核通信接口。在實(shí)現(xiàn)時(shí)鐘同步過(guò)程中,該模塊主要是接收MTG的內(nèi)部時(shí)鐘和CSP發(fā)送的當(dāng)前接收同步幀的溢出信號(hào),以及向CSP發(fā)送外部頻率/相位修正值。POC是FlexRay內(nèi)核非常重要的控制模塊,負(fù)責(zé)協(xié)調(diào)節(jié)點(diǎn)內(nèi)各個(gè)功能模塊有效地運(yùn)行。根據(jù)節(jié)點(diǎn)時(shí)鐘同步流程,建立有限狀態(tài)模型,如圖6所示。

    如圖6所示,節(jié)點(diǎn)首先對(duì)兩個(gè)模塊進(jìn)行初始化;當(dāng)接收到主機(jī)配置指令后,進(jìn)行內(nèi)部功能配置;完成后進(jìn)入節(jié)點(diǎn)啟動(dòng)狀態(tài),最后轉(zhuǎn)換到運(yùn)行狀態(tài)。如果在運(yùn)行狀態(tài)接收到主機(jī)的外部修正值時(shí),則活動(dòng)對(duì)象發(fā)送vExternRate—control和vExternOffsetControl兩個(gè)變量到CSP模塊,用于節(jié)點(diǎn)內(nèi)部時(shí)鐘修正。
3.3.2 內(nèi)部時(shí)鐘控制活動(dòng)對(duì)象
    此活動(dòng)對(duì)象包含CSS、CSP和MTG三個(gè)功能模塊,是時(shí)鐘同步機(jī)制的主要組成部分。這里考慮作為從冷啟動(dòng)節(jié)點(diǎn)的時(shí)鐘同步過(guò)程,所以采取使用其他主冷啟動(dòng)節(jié)點(diǎn)的同步化參數(shù)參來(lái)啟動(dòng),調(diào)整內(nèi)部時(shí)鐘,從而實(shí)現(xiàn)系統(tǒng)中各個(gè)節(jié)點(diǎn)間的時(shí)鐘同步,如圖7所示。

    上電后,活動(dòng)對(duì)象處于默認(rèn)狀態(tài)。當(dāng)接收到主機(jī)集群?jiǎn)?dòng)指令后,進(jìn)入等待啟動(dòng)狀態(tài)并建立CSS實(shí)例和對(duì)測(cè)量偏差的變量初始化;在接收兩個(gè)啟動(dòng)幀后,節(jié)點(diǎn)啟動(dòng)內(nèi)部時(shí)鐘。當(dāng)接收到其他冷啟動(dòng)節(jié)點(diǎn)的時(shí)鐘信息同步幀后,采集節(jié)點(diǎn)間時(shí)間偏差,采用容錯(cuò)算法計(jì)算出頻率和相位的修正值并發(fā)送給MTG模塊,從而完成與主冷啟動(dòng)節(jié)點(diǎn)的時(shí)鐘同步。
3.3.3 總線(xiàn)接口控制活動(dòng)對(duì)象
    此活動(dòng)對(duì)象是FlexRay內(nèi)核與外部總線(xiàn)的接口,完成對(duì)發(fā)送數(shù)據(jù)信息的編碼發(fā)送和對(duì)接收數(shù)據(jù)的解碼及識(shí)別??紤]到靜態(tài)段采用TMDA方式進(jìn)行傳輸,且時(shí)鐘同步采用接收數(shù)據(jù)幀的方式,這里只根據(jù)數(shù)據(jù)幀的接收及解碼過(guò)程建立有限狀態(tài)模型,如圖8所示。

    圖8中,活動(dòng)對(duì)象在接收到相應(yīng)信號(hào)的空閑標(biāo)志信號(hào)cE Start后,開(kāi)始對(duì)數(shù)據(jù)幀進(jìn)行解碼,依次對(duì)數(shù)據(jù)幀的起始標(biāo)志和幀頭段進(jìn)行解碼;然后是靜態(tài)段以及周期內(nèi)其他部分的解碼。通過(guò)檢查數(shù)據(jù)幀、符號(hào)時(shí)序和語(yǔ)法來(lái)判斷當(dāng)前接收數(shù)據(jù)的有效性。
3.4 活動(dòng)對(duì)象交互
   
在節(jié)點(diǎn)集群?jiǎn)?dòng)過(guò)程中,分解的活動(dòng)對(duì)象彼此之間要發(fā)生信息交互,如圖9所示。

    節(jié)點(diǎn)通過(guò)通信接口控制對(duì)象啟動(dòng)內(nèi)部模塊,并發(fā)出集群?jiǎn)?dòng)的指令(attempt integration),等待接收主冷啟動(dòng)節(jié)點(diǎn)發(fā)出的啟動(dòng)幀。首先,總線(xiàn)接口控制對(duì)象接收到第一個(gè)有效偶數(shù)啟動(dòng)幀(valid even startup frame)后,通知內(nèi)部時(shí)鐘控制對(duì)象集群?jiǎn)?dòng);當(dāng)接收下一個(gè)有效奇數(shù)啟動(dòng)幀(valid odd startup frame),并把當(dāng)前啟動(dòng)的狀態(tài)信息發(fā)送給其他的兩個(gè)對(duì)象,在兩通道完成同步幀的接收后,內(nèi)部時(shí)鐘模塊調(diào)用內(nèi)部宏單元計(jì)算頻率和相位偏差,修正內(nèi)部時(shí)鐘使之和主冷啟動(dòng)節(jié)點(diǎn)同步,從而實(shí)現(xiàn)時(shí)鐘同步,并把結(jié)果SyncCalcResult發(fā)送到協(xié)議控制器,后者根據(jù)結(jié)果來(lái)決定當(dāng)前節(jié)點(diǎn)的工作狀態(tài)。

4 軟件結(jié)構(gòu)
   
應(yīng)用量子框架編寫(xiě)應(yīng)用程序主要有3步:聲明觸發(fā)信號(hào)和事件;定義活動(dòng)對(duì)象(任務(wù));初始化量子框架并開(kāi)始運(yùn)行活動(dòng)對(duì)象?;窘Y(jié)構(gòu)如下:


5 結(jié) 論
    FlexRay是一種支持多種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),高速可靠,尤其適用于汽車(chē)環(huán)境下的總線(xiàn)。其協(xié)議旨在應(yīng)用于需要高通信帶寬和決定性容錯(cuò)數(shù)據(jù)傳輸能力的底盤(pán)控制、車(chē)身和動(dòng)力總成等場(chǎng)合,有很好的發(fā)展前景;而量子框架則提供了基于有限狀態(tài)機(jī)的實(shí)現(xiàn)技術(shù),能方便地將狀態(tài)圖轉(zhuǎn)化成系統(tǒng)的程序代碼。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀(guān)點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話(huà)語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉