亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        汽車FlexRay網(wǎng)絡(luò)的單節(jié)點(diǎn)容錯(cuò)同步算法

        2012-09-10 03:18:34
        汽車科技 2012年6期
        關(guān)鍵詞:解碼延時(shí)時(shí)鐘

        季 霆

        (合肥工業(yè)大學(xué) 機(jī)械與汽車工程學(xué)院,合肥 230009)

        FlexRay總線作為下一代汽車內(nèi)部的主干網(wǎng)絡(luò),其良好的性能尤其是高速、精確和容錯(cuò)的特點(diǎn),能夠滿足未來汽車高速控制應(yīng)用的需要[1-3]。FlexRay總線精確的時(shí)鐘基準(zhǔn)是其可靠運(yùn)行的關(guān)鍵因素之一,而網(wǎng)絡(luò)中的時(shí)鐘同步是總線時(shí)基精確的重要保證,因此研究FlexRay時(shí)鐘同步問題具有重要的現(xiàn)實(shí)意義。

        文獻(xiàn)[4]提出了一種基于分析模式的FlexRay時(shí)鐘同步算法,可以不通過測(cè)量而直接通過計(jì)算得出任意兩個(gè)節(jié)點(diǎn)之間的時(shí)鐘偏差。文獻(xiàn)[5]對(duì)FlexRay總線時(shí)鐘同步進(jìn)行了分析,建立了同步算法數(shù)學(xué)模型,理論上說明了FlexRay時(shí)鐘同步具有較強(qiáng)的容錯(cuò)性和適用性。文獻(xiàn)[6]指出FlexRay時(shí)鐘同步所用容錯(cuò)中值(Fault-tolerant midpoint,F(xiàn)TM)算法每輪對(duì)網(wǎng)絡(luò)修正后存在±ε(ε為傳送延時(shí))漂移。

        FlexRay協(xié)議要求網(wǎng)絡(luò)中至少包含3個(gè)同步節(jié)點(diǎn)進(jìn)行時(shí)鐘同步,上述文獻(xiàn)都是建立在這個(gè)基礎(chǔ)上進(jìn)行討論的。當(dāng)節(jié)點(diǎn)數(shù)目較少時(shí),這種限制將對(duì)網(wǎng)絡(luò)的性能產(chǎn)生影響。針對(duì)這種情況,文獻(xiàn) [7]結(jié)合IEEE 1588提出了一種同步節(jié)點(diǎn)數(shù)目少于3個(gè)的同步方法,但是沒有解決同步過程中的同步節(jié)點(diǎn)容錯(cuò)問題。一旦同步節(jié)點(diǎn)出現(xiàn)故障,整個(gè)網(wǎng)絡(luò)將無法正常工作,造成消息的延誤[8]。

        本文在上述研究的基礎(chǔ)上,提出了一種FlexRay的單節(jié)點(diǎn)容錯(cuò)同步算法。該方法只需要一個(gè)同步節(jié)點(diǎn)并且無需額外的硬件支持,即可在保證FlexRay安全性和可靠性的前提下完成時(shí)鐘同步。

        1 FlexRay時(shí)鐘同步

        1.1 同步周期的基本概念

        FlexRay總線協(xié)議中,簇內(nèi)所有的節(jié)點(diǎn)都應(yīng)有相同的“時(shí)間觀”,遵守一個(gè)標(biāo)準(zhǔn)的全局時(shí)間。但是這并不意味著節(jié)點(diǎn)間具有完全嚴(yán)格的同步時(shí)間,只要節(jié)點(diǎn)間的時(shí)間差保持在允許的誤差范圍內(nèi)即可。在一個(gè)通訊周期內(nèi)分為4個(gè)時(shí)間層次,從最低層到最高層分別依次為:最小時(shí)間節(jié)拍層、最大時(shí)間節(jié)拍層、仲裁網(wǎng)格層和通訊周期層。

        時(shí)鐘同步過程設(shè)置三種模式:(1)備用模式(STANDBY),(2)非同步模式(NOSYNC),(3)同步模式(SYNC)。在STANDBY模式中時(shí)鐘同步過程被停止,在NOSYNC模式中節(jié)點(diǎn)執(zhí)行時(shí)鐘同步但不發(fā)送同步消息,在SYNC模式中節(jié)點(diǎn)發(fā)送同步消息并執(zhí)行時(shí)鐘同步[9]。

        FlexRay協(xié)議中節(jié)點(diǎn)在靜態(tài)段完成同步測(cè)量,以獲得各節(jié)點(diǎn)的時(shí)間偏差值,運(yùn)用FTM算法[9]對(duì)每一組時(shí)間偏差值進(jìn)行處理,所獲得的值即為時(shí)鐘同步算法的校正值。FlexRay同步機(jī)制運(yùn)用兩種類型的校正:相位校正和速率校正。相位校正值是各非同步節(jié)點(diǎn)與同步節(jié)點(diǎn)的時(shí)間偏差值,每周期進(jìn)行計(jì)算并在奇數(shù)周期末尾完成校正。速率校正值是兩個(gè)連續(xù)周期同一節(jié)點(diǎn)同一時(shí)刻的時(shí)間偏差值,偏差的計(jì)算結(jié)果在每個(gè)奇數(shù)周期完成計(jì)算,在下一個(gè)周期開始時(shí)生效,在最大時(shí)間節(jié)拍形成過程中實(shí)行。

        1.2 同步時(shí)間測(cè)量

        為了計(jì)算同步幀發(fā)送節(jié)點(diǎn)與同步幀接收節(jié)點(diǎn)之間的時(shí)間偏差,就必須分別測(cè)量同步幀發(fā)送端和同步幀接收端的觸發(fā)點(diǎn)時(shí)刻。但是由于傳輸起始序列截?cái)嘤绊?,同步幀接收?jié)點(diǎn)接收到傳輸起始序列1/0跳變沿的時(shí)間并不是同步幀接收節(jié)點(diǎn)的觸發(fā)點(diǎn)時(shí)刻。因此在FlexRay總線協(xié)議中需要測(cè)量首個(gè)字節(jié)起始序列中的1/0跳變沿,用該時(shí)刻減去解碼修正量和延時(shí)補(bǔ)償量倒推得到接收端傳輸起始序列的開始時(shí)刻。解碼修正量中包含傳輸起始序列、幀起始序列和字節(jié)起始序列,延時(shí)補(bǔ)償量中包含有收發(fā)器延遲、星型耦合器延遲和電纜長度的傳輸延遲[10]。

        圖1為時(shí)間偏差值測(cè)量過程,其中點(diǎn) a表示發(fā)送端靜態(tài)時(shí)間槽行動(dòng)點(diǎn),即發(fā)送端開始發(fā)送幀的時(shí)刻;點(diǎn)b表示第二時(shí)間參考點(diǎn),位于首個(gè)字節(jié)起始序列的第二位頻閃點(diǎn);點(diǎn)c表示主時(shí)間參考點(diǎn),由第二時(shí)間參考點(diǎn)減去解碼修正量和延時(shí)補(bǔ)償量得來;pDecodingCorrection為解碼修正量,pDelayCompensation為延時(shí)補(bǔ)償量,TSS為傳輸起始序列,F(xiàn)SS為幀起始序列,BSS為字節(jié)起始序列。由圖1可知,點(diǎn)c與點(diǎn)a之間的差值為同步幀發(fā)送節(jié)點(diǎn)與同步幀接收節(jié)點(diǎn)之間的時(shí)間差(時(shí)鐘偏差值)。

        2 單節(jié)點(diǎn)容錯(cuò)同步算法研究

        2.1 基本思想

        針對(duì)FlexRay協(xié)議中同步節(jié)點(diǎn)數(shù)目不能小于三個(gè)的情況,本文采用單節(jié)點(diǎn)容錯(cuò)算法來實(shí)現(xiàn)時(shí)鐘同步,為了解決單節(jié)點(diǎn)失效的問題,在時(shí)鐘同步過程中增加一個(gè)同步節(jié)點(diǎn)優(yōu)先級(jí)表。表的結(jié)構(gòu)見表1,其中NODE_ID為節(jié)點(diǎn)的ID號(hào),值越小優(yōu)先級(jí)越高;NODE_NM為節(jié)點(diǎn)的名稱;MES_ID為該節(jié)點(diǎn)發(fā)送同步消息所在的靜態(tài)時(shí)間槽的ID;NODE_STA為節(jié)點(diǎn)狀態(tài)標(biāo)志,表示該節(jié)點(diǎn)是否失效。

        表1 同步節(jié)點(diǎn)優(yōu)先級(jí)表

        在網(wǎng)絡(luò)啟動(dòng)或者有新節(jié)點(diǎn)加入網(wǎng)絡(luò)時(shí),網(wǎng)絡(luò)中各節(jié)點(diǎn)根據(jù)其他節(jié)點(diǎn)提供的信息建立或者更新自身的同步節(jié)點(diǎn)優(yōu)先級(jí)表。當(dāng)前同步節(jié)點(diǎn)失效時(shí),根據(jù)此表優(yōu)先級(jí)與其他節(jié)點(diǎn)協(xié)商決定同步節(jié)點(diǎn)。

        在FlexRay協(xié)議中,各非同步節(jié)點(diǎn)在觸發(fā)點(diǎn)接收同步消息,在超過觸發(fā)點(diǎn)偏移量之后仍然沒有收到同步報(bào)文,就認(rèn)為該同步節(jié)點(diǎn)發(fā)生了故障,本文亦采用該方法判斷節(jié)點(diǎn)是否發(fā)生故障。如果故障發(fā)生次數(shù)達(dá)到設(shè)定值,則認(rèn)為該同步節(jié)點(diǎn)失效,在同步節(jié)點(diǎn)優(yōu)先級(jí)表中選擇優(yōu)先級(jí)最高的節(jié)點(diǎn)替代同步節(jié)點(diǎn),在周期動(dòng)態(tài)段部分發(fā)出選擇消息(Vote)。各節(jié)點(diǎn)收到 Vote消息后,掃描信息表,若與己選同步節(jié)點(diǎn)相同,發(fā)送確認(rèn)消息,啟動(dòng)候選同步節(jié)點(diǎn)。

        2.2 時(shí)間偏差值計(jì)算

        FlexRay協(xié)議中為了測(cè)量同步節(jié)點(diǎn)和非同步節(jié)點(diǎn)之間的偏差,需要測(cè)量第二時(shí)間參考點(diǎn)并計(jì)算解碼修正量和延時(shí)補(bǔ)償量的值,這樣不僅增加了計(jì)算開銷,還增大了誤差。為了減小開銷和誤差,本文基于文獻(xiàn)[11]的方法來計(jì)算時(shí)間偏差值,圖2為相應(yīng)的通信過程。同步節(jié)點(diǎn)在T1時(shí)刻發(fā)送Sync消息,同步節(jié)點(diǎn)和非同步節(jié)點(diǎn)接收端分別測(cè)量接收到該報(bào)文的第二時(shí)間參考點(diǎn)時(shí)刻,分別記為T2和T3,同步節(jié)點(diǎn)在T4時(shí)刻發(fā)送一個(gè)包含時(shí)間戳T2的Follow_up消息。

        本文時(shí)間偏差值計(jì)算過程中采用如下假設(shè)[7,11]:

        (1)幀到達(dá)各節(jié)點(diǎn)的延時(shí)是定值,即網(wǎng)絡(luò)必須是廣播型網(wǎng)絡(luò),延遲時(shí)間可以接近于0,或是一個(gè)常值。

        (2)節(jié)點(diǎn)接收器能夠接收到該節(jié)點(diǎn)發(fā)送器發(fā)送的幀。

        設(shè)Toffset為時(shí)間偏差,單位為最小時(shí)間片個(gè)數(shù),該值可以為正也可以為負(fù);Lmaxoffset為時(shí)間偏差允許上限,根據(jù)情況預(yù)先設(shè)置;u為解碼修正量,ν為延時(shí)補(bǔ)償量。那么,可以得到同步節(jié)點(diǎn)和非同步節(jié)點(diǎn)之間的等式:

        由于同步節(jié)點(diǎn)的發(fā)送端和接收端在同一節(jié)點(diǎn)上,認(rèn)為它們之間的偏差為0,那么可以得到同步節(jié)點(diǎn)發(fā)送端和接收端的等式:

        由假設(shè)(1)可知式,(1)(2)中解碼修正量和延時(shí)補(bǔ)償量的值相等,即 u1=u2,ν1=ν2,因而由(2)和(1)可得:

        式(3)中的Toffset就是同步節(jié)點(diǎn)與非同步節(jié)點(diǎn)的時(shí)間偏差值,因此由T3和T2即可得到Toffset,而T3和T2可以從Sync消息和Follow_up消息中獲取。

        2.3 單節(jié)點(diǎn)容錯(cuò)算法

        基于上述機(jī)制的單節(jié)點(diǎn)容錯(cuò)算法,算法流程圖如圖3所示,具體步驟如下:

        步驟1:初始化FlexRay網(wǎng)絡(luò)中各節(jié)點(diǎn)控制器和寄存器,錯(cuò)誤計(jì)數(shù)器M清零。根據(jù)在同步節(jié)點(diǎn)優(yōu)先級(jí)表中預(yù)先的設(shè)置,將表中優(yōu)先級(jí)最高的節(jié)點(diǎn)設(shè)為同步模式,其他節(jié)點(diǎn)設(shè)為非同步模式。

        步驟 2:在第 i(i≤63)個(gè)通信,同步節(jié)點(diǎn)向總線上各節(jié)點(diǎn)發(fā)送Sync消息。

        步驟3:各節(jié)點(diǎn)(包括同步節(jié)點(diǎn))接收到Sync消息,并記錄各自的接收時(shí)刻。

        步驟4:同步節(jié)點(diǎn)向各節(jié)點(diǎn)發(fā)送一個(gè)Follow_up消息,非同步節(jié)點(diǎn)通過公式(3)可以計(jì)算各節(jié)點(diǎn)本地時(shí)鐘的偏差 Toffset,當(dāng)∣Toffset∣>Lmaxoffset時(shí),啟動(dòng)錯(cuò)誤計(jì)數(shù)器令 M=M+1,令 Toffset=Lmaxoffset。

        步驟5:因?yàn)榫W(wǎng)絡(luò)可能出現(xiàn)錯(cuò)誤,造成部分Sync消息不能被所有節(jié)點(diǎn)成功接收。如果節(jié)點(diǎn)超過觸發(fā)點(diǎn)偏移量仍然沒有收到Sync消息,啟動(dòng)錯(cuò)誤計(jì)數(shù)器令 M=M+1,同時(shí)令 Toffset=Lmaxoffset。

        步驟6:若某節(jié)點(diǎn)錯(cuò)誤計(jì)數(shù) M≥3則判定同步節(jié)點(diǎn)失效,掃描數(shù)據(jù)表選擇下一順序節(jié)點(diǎn)為候選同步節(jié)點(diǎn),并在動(dòng)態(tài)段中發(fā)送廣播選擇消息(Vote)。

        步驟7:各節(jié)點(diǎn)收到 Vote消息后掃描信息表,若與已選同步節(jié)點(diǎn)相同,則在動(dòng)態(tài)段中發(fā)送確認(rèn)消息。Vote消息的發(fā)送節(jié)點(diǎn)收到確認(rèn)后,將原同步節(jié)點(diǎn)的模式改為備用模式,所選同步節(jié)點(diǎn)的模式改為同步模式,各節(jié)點(diǎn)錯(cuò)誤計(jì)數(shù)器清零。若規(guī)定時(shí)間內(nèi)未收到確認(rèn)消息,判定該非同步節(jié)點(diǎn)故障,原同步節(jié)點(diǎn)繼續(xù)運(yùn)行,錯(cuò)誤計(jì)數(shù)器清零。

        步驟8:若該周期結(jié)束,則i=i+1。如果i≤63,則返回步驟2,否則返回步驟1。

        圖4a中表示了一個(gè)周期內(nèi)上述時(shí)鐘同步的過程。在一個(gè)周期靜態(tài)段內(nèi),同步節(jié)點(diǎn)在發(fā)送Sync消息和Follow_up消息后預(yù)留了兩個(gè)靜態(tài)時(shí)間片,在第五個(gè)靜態(tài)時(shí)間片開始發(fā)送普通數(shù)據(jù)幀。圖4b中表示了FlexRay協(xié)議時(shí)鐘同步過程,四個(gè)同步節(jié)點(diǎn)分別發(fā)送四個(gè)Sync消息之后,在第五個(gè)靜態(tài)時(shí)間片開始發(fā)送普通數(shù)據(jù)幀。從圖4可以看出,在保證相同可靠性的前提下,本文所提同步算法不影響靜態(tài)段的長度以及周期長度。而且本文同步算法不需計(jì)算解碼修正量和延時(shí)補(bǔ)償量就可以直接計(jì)算時(shí)間偏差值,精簡了測(cè)量步驟同時(shí)也減少了由于計(jì)算解碼修正量和延時(shí)補(bǔ)償量值而造成的誤差。

        3 仿真驗(yàn)證

        本文利用CANoe和DaVinci Network Designer軟件對(duì)本文所提單節(jié)點(diǎn)容錯(cuò)同步算法進(jìn)行仿真實(shí)驗(yàn)。

        實(shí)驗(yàn)中選取4個(gè)節(jié)點(diǎn),記為ECU_1、ECU_2、E CU_3和ECU_4,每個(gè)節(jié)點(diǎn)均有兩組工作消息需要發(fā)送。在單節(jié)點(diǎn)容錯(cuò)同步算法中,考慮容錯(cuò)需要,令ECU_1為初始同步節(jié)點(diǎn),ECU_2為候選同步節(jié)點(diǎn);在FlexRay協(xié)議原有同步算法中,ECU_1、ECU_2和ECU_3為同步節(jié)點(diǎn)。在DaVinci Network Designer軟件中完成FlexRay數(shù)據(jù)庫建立,并在CANoe軟件中建立仿真系統(tǒng),如圖5所示。

        在正常通信過程中,當(dāng)初始同步節(jié)點(diǎn)ECU_1斷開,候選同步節(jié)點(diǎn)ECU_2能夠代替ECU_1成為下一同步節(jié)點(diǎn),圖6為上述過程的trace圖。

        4 結(jié)束語

        本文在對(duì)FlexRay協(xié)議時(shí)鐘同步算法研究的基礎(chǔ)上,提出了FlexRay總線的單節(jié)點(diǎn)容錯(cuò)同步算法,只需要1個(gè)同步節(jié)點(diǎn)即可完成時(shí)鐘同步,減少了時(shí)鐘同步的測(cè)量步驟和計(jì)算量。該算法引入同步節(jié)點(diǎn)優(yōu)先級(jí)表,在同步節(jié)點(diǎn)出現(xiàn)故障的情況下,可以根據(jù)同步節(jié)點(diǎn)優(yōu)先級(jí)表選擇新的同步節(jié)點(diǎn)。最后在CANoe中進(jìn)行仿真,結(jié)果表明該算法可以在保證安全可靠的前提完成通信,并提高同步精度。

        [1]羅峰,陳智琦,劉矗,等.基于FlexRay的車載網(wǎng)絡(luò)系統(tǒng)開發(fā)[J].電子測(cè)量與儀器學(xué) 2009(增刊 1):289-295.

        [2]顧嫣,張鳳登.FlexRay動(dòng)態(tài)段優(yōu)化調(diào)度算法研究[J].自動(dòng)化儀表,2009,30(12):25-29.

        [3]周躍鋼.基于LabVIEW和J1939協(xié)議的CAN總線通訊平臺(tái)構(gòu)建[J].汽車科技,2011,06:18-22.

        [4]Jan Sobotka,Jiri Novak,Jan Malinsky.Analytic Model of FlexRay Synchronization Mechanism [J].The 6th IEEE In ternational Conference on Intelligent Data Acquisition and Advanced Computing Systems,2011:969-974.

        [5]陳濤,秦貴和.FlexRay時(shí)鐘同步分析[J].計(jì)算機(jī)工程,2010,14(36):235-237.

        [6]Bruno Dutertr.the Welch Lynch Clock Synchronization Algorithm[R].1998,5.

        [7]Jin Ho Kim,Suk Hyung Seo,Jung Hoon Chun,Jae Wook Jeon.Distributed Clock Synchronization Algorithm for Industrial Networks[J].The 8th IEEE International Workshop on Factory Communication Systems.2003.

        [8]J.H.Kim,S.H.Seo,T.Y.Moon,K.H.Kwon,J.W.Jeon,S.H.Hwang.A method of Task Synchronization in a distributed system using FlexRay[J].The IEEE Interational Conference on In-dustrial Informatics,2008:1149-1153.

        [9]FlexRay Consortium.FlexRay Communications System Protocol Specfication [S].2005(12).

        [10]楊福宇.FlexRay時(shí)鐘同步的同向漂移[J].單片機(jī)與嵌入式應(yīng)用,2011,4:3-6.

        [11]張利,李縣軍,王躍飛.汽車CAN網(wǎng)絡(luò)時(shí)鐘同步方法研究[J].電子測(cè)量與儀器學(xué)報(bào),2011,25(2):147-152.

        猜你喜歡
        解碼延時(shí)時(shí)鐘
        《解碼萬噸站》
        別樣的“時(shí)鐘”
        基于級(jí)聯(lián)步進(jìn)延時(shí)的順序等效采樣方法及實(shí)現(xiàn)
        古代的時(shí)鐘
        解碼eUCP2.0
        中國外匯(2019年19期)2019-11-26 00:57:32
        NAD C368解碼/放大器一體機(jī)
        Quad(國都)Vena解碼/放大器一體機(jī)
        有趣的時(shí)鐘
        時(shí)鐘會(huì)開“花”
        Two-dimensional Eulerian-Lagrangian Modeling of Shocks on an Electronic Package Embedded in a Projectile with Ultra-high Acceleration
        丝袜美腿在线播放一区二区| 两个人看的www中文在线观看| 国产丝袜在线精品丝袜不卡| 日韩久久免费精品视频| 国产不卡视频在线观看| 国产诱惑人的视频在线观看| 77777亚洲午夜久久多喷| 国产国拍亚洲精品mv在线观看| 天天看片视频免费观看| 久久国产综合精品欧美| 亚洲精品一区二区三区日韩 | 中文字幕在线亚洲三区| 国产人妻久久精品二区三区老狼| 久久免费视频国产| 精品日本韩国一区二区三区| 久久久精品毛片免费观看| 亚洲人成77777在线播放网站| 亚洲欧美日韩在线观看一区二区三区| 久久精品中文字幕极品| 国产成版人性视频免费版| 国产让女高潮的av毛片| 亚洲 自拍 另类小说综合图区| 久久久久成人亚洲综合精品| 日韩高清av一区二区| 免费人成视频网站在线不卡| 无码吃奶揉捏奶头高潮视频| 亚州精品无码人妻久久| 国产一区二区在线观看av| 插鸡网站在线播放免费观看| 丰满老熟妇好大bbbbb| 欧美日本视频一区| 亚洲精品中文字幕一二三四 | 精品国产一区二区三区AV小说 | 亚洲av一二三四区四色婷婷| 国产免费久久精品国产传媒| 日韩在线手机专区av| 国产在线一区二区三区乱码| 狠狠噜天天噜日日噜视频麻豆| 天天插视频| 97成人精品在线视频| 无码人妻丰满熟妇区五十路|