當前位置:首頁 > 工業(yè)控制 > 工業(yè)控制
[導讀]隨著安全性要求的提高, CAN總線的帶寬就嫌不足,消息送達的確定性不夠。為此,一些汽車大廠和汽車電子的大廠成立了研發(fā)新型通信協(xié)議的聯(lián)盟[1],目標是開發(fā)出稱為FlexRay的協(xié)議,使它成為下一代車用通信協(xié)議的事實上

隨著安全性要求的提高, CAN總線的帶寬就嫌不足,消息送達的確定性不夠。為此,一些汽車大廠和汽車電子的大廠成立了研發(fā)新型通信協(xié)議的聯(lián)盟[1],目標是開發(fā)出稱為FlexRay的協(xié)議,使它成為下一代車用通信協(xié)議的事實上的標準。2005年聯(lián)盟推出了2.1版的規(guī)范,2009年完成3.0版規(guī)范,然后就結(jié)束了?,F(xiàn)在公眾還無法見到3.0版規(guī)范,但是據(jù)介紹,關(guān)鍵部分并無大的變化。

  BMW車上在2006年已開始應用FlexRay,各大電子器件生產(chǎn)廠開始了批量生產(chǎn)FlexRay控制器?,F(xiàn)在業(yè)界正處于爭取FlexRay技術(shù)早日成熟的階段,在系統(tǒng)設計、測試、標定等方面開始了大量投入。因此,任何涉及FlexRay協(xié)議的基礎性問題的研究就格外重要,一旦有新的未發(fā)現(xiàn)的隱患披露,無疑會引起大的波動。

  FlexRay是基于時間觸發(fā)的協(xié)議,節(jié)點間的時間同步是它的關(guān)鍵,參考文獻[5]是2.1版規(guī)范直接引用的主要原始資料的2009年修訂版,其主要內(nèi)容是有相位與頻率校正時誤差的靜態(tài)傳遞分析,求出可以達到的最壞或最好狀態(tài)下的簇內(nèi)時鐘差的精度。參考文獻[5]指出了5種計算時的誤差來源:采樣的量化誤差、微拍非均勻分布誤差、傳遞延遲誤差、整除誤差和簇漂阻尼誤差。由于時鐘校正實際上是一個反饋控制問題,但以前的研究沒有采用反饋控制的分析方法,沒有考慮同步幀發(fā)送節(jié)點間的交互影響,以及傳遞延遲誤差作為系統(tǒng)性誤差的長期存在,得到的結(jié)論并不全面,這是本文要重點討論的問題:由于系統(tǒng)性誤差的持續(xù)存在,節(jié)點的相位差會單向漂移,與hoST的時鐘越離越遠,造成新的失誤。參考文獻[6]用軟件仿真FlexRay時鐘頻率跳變或緩變時校正算法的有效性,它證實算法是收斂的,簇內(nèi)時鐘差校正后的精度與頻率漂移率無關(guān),跳變時有一個過渡過程,瞬態(tài)差可能超過精度范圍。參考文獻[7]分析了有拜占庭錯時FlexRay容錯中值相位校正算法的收斂性,非常有趣的是在推導過程中也得到了校正后cycle開始時間真值Us隨延遲補償不足而推遲的公式,它表明每校正一次存在的差,但是這種漂移并未受到FlexRay重視。參考文獻[8]是對容錯中值算法正確性的形式化證明,該算法就是FlexRay采用的算法,在分析每輪修正后的虛擬時鐘與真實時鐘差時,存在±ε的漂移,其中ε是傳送延遲。這也證實了本文分析的問題早已存在,而FlexRay未對該問題的后果有所警覺。

  1  FlexRay時鐘的概念

  FlexRay的時間單位是從大到小分級的:通信Cycle、通信宏拍(Macrotick,MT)和微拍(Microtick)。每一個節(jié)點中的振蕩器,經(jīng)過分頻之后,產(chǎn)生一個本地的微拍時鐘單位,它與位采樣數(shù)及位采樣時鐘周期有關(guān),所以節(jié)點中最小的時間單位是位采樣時鐘周期。各個節(jié)點可以有不同的微拍,簇內(nèi)共同的時間單位是MT,每個節(jié)點組態(tài)時定義正常時每MT內(nèi)本地微拍的個數(shù)。本地MT的生成有專門的邏輯,在每一本地微拍時執(zhí)行一次,以實現(xiàn)本地MT的修正,以保證MT盡量全局一致,并且可以保證頻率的校正均勻分布在整個cycle中。

  2  FlexRay收發(fā)的同步

  在收發(fā)過程中還有字節(jié)的位同步和幀開始同步來解決可能的抖動與延遲,它們極大地緩解了時鐘同步的精度要求。

  在以字節(jié)為單位的幀數(shù)據(jù)傳送時,每個字節(jié)的開頭有由“10”構(gòu)成的字節(jié)開始序列(BSS),這個1/0跳變沿是位時間同步用的:發(fā)現(xiàn)跳變沿后位采樣計數(shù)器就設為2,當位采樣計數(shù)器=5時,zVotedVal的值就作為當時的位值。位采樣計數(shù)器為9后溢出復位為1。顯然,若因收發(fā)有時鐘差,而要在下一個BSS的1處采錯,需要差4個位采樣時鐘周期時才會發(fā)生。也就是說,時鐘差5%才會發(fā)生。

  FlexRay的同步幀是在靜態(tài)段中傳送的,一個時隙(slot)內(nèi)實際上有很多空閑時間。首先,每個幀是在稱為actiON point offset處(gdActionPointOffset)開始發(fā)送,這是一個全局參數(shù)。幀開始是“0”表示的傳送開始序列TSS,經(jīng)過1位“1”的幀開始序列FSS,再是第一個字節(jié)開始序列BSS,它由“10”二位組成。接收節(jié)點要正確檢測到第一個字節(jié)開始序列BSS的1/0跳變沿才作幀接收的同步。幀的最后是“01”構(gòu)成的幀結(jié)束序列FES,然后發(fā)送器被禁止了。發(fā)送器禁止后30 ns總線處于高阻狀態(tài)。在幀傳送結(jié)束后發(fā)送節(jié)點要有長度為11位的通道空閑分界符(cChannelIdleDelimiter,實際上總線高阻時,經(jīng)50~250 ns接收節(jié)點會發(fā)現(xiàn)總線空閑,然后輸出RxD=“1”。然后總線一直在空閑狀態(tài)。由于FlexRay的物理連接有可能通過有源星型耦合器,在總線空閑到總線上傳送0有一個啟動過程,再加總線上位置不同的傳送延遲差別、收發(fā)器的延遲,發(fā)送節(jié)點的TSS長度會與接收節(jié)點的長度不同,接收節(jié)點看到的TSS會比發(fā)送節(jié)點的TSS短,稱為TSS截短。只要接收節(jié)點看到的TSS在1~(gdTSSTransmitter + 1)之間,TSS就是有效的。所以gdActionPointOffset之前,總線也是空閑的。因此,若節(jié)點時鐘差不使總線上的傳送提前使gdActionPointOffset前的空閑消失,或落后使cChannelIdleDelimiter后的空閑消失,就不會產(chǎn)生2個發(fā)送幀的重疊而影響正常收發(fā)。

圖1  求取相位差的時間關(guān)系

  3  FlexRay時鐘校正方法

  幀的gdActionPointOffset是全局參數(shù),但是由于TSS截短的影響,同步幀接收節(jié)點見到的TSS的1/0跳變沿的時間與接收節(jié)點ActionPointOffset時間之差并不是節(jié)點的時鐘差,所以它用第一個BSS中的1/0跳變沿來倒推發(fā)送節(jié)點ActionPointOffset,如圖1所示。倒推是該時刻減去常數(shù)pDecodingCorrection和pDelayCompensation得到發(fā)送節(jié)點TSS的開始時刻。PDecodingCorrection內(nèi)含有TSS、FSS、BSS、總線濾波延遲和位采樣延遲各項。pDelayCompensation內(nèi)含有收發(fā)器延遲、星型耦合器延遲和電纜長度的傳輸延遲。pDelayCompensation的數(shù)值取簇中的最小者。由此倒推出的發(fā)送節(jié)點的動作點稱為primaryTRP,發(fā)送和接收的節(jié)的動作點的時間偏差就被記錄下來。

  接收節(jié)點對每一個同步幀都加記錄,該同步幀接收是否正確也記錄在案。只有接收正確的偏差才能用于校正計算之中。

  FlexRay有相位與頻率的校正,為了頻率校正,需要連續(xù)2個cycle的同一同步節(jié)點所發(fā)的幀的偏差,所以校正是以2個cycle為周期進行的。頻率校正的計算結(jié)果在每個奇數(shù)cycle內(nèi)完成,下一個cycle開始生效,在MT形成過程中實行,因此是均勻分布的。相位校正在奇數(shù)cycle的末尾完成,在該cycle的網(wǎng)絡空閑段實行。

  4  FlexRay算法的問題

 

圖2  同步節(jié)點位置分布舉例

  時鐘偏差推算是造成飄移的原因。圖2中有4個同步幀發(fā)送節(jié)點1~4,各相距8 m,節(jié)點5是普通非同步幀發(fā)送節(jié)點。按規(guī)定,pDelayCompensation是一個預定的常數(shù),該按最小值選取,對圖2的情況,就是節(jié)點5和節(jié)點2間的延遲,即接近為0。這樣,對實際發(fā)生的延遲是補償不足的。不足部分可寫為:

  節(jié)點間的延遲,按每米10 ns計,最大距離為24 m,那么此補償不足量有0.24 μs。

  在圖1中,假定同步幀在cycle的第一個static slot,對static slot的開始時間有一個標準的參考點,發(fā)送節(jié)點和接收節(jié)點各有相位差TT(0)和TR(0),此時接收節(jié)點得到的偏差將含有延遲補償不足的部分:

  由于距離不同,接收節(jié)點得到的URT也是不同的。

  FlexRay規(guī)定,發(fā)同步幀的節(jié)點在屬于自己的slot上的相位誤差登記為0。假定節(jié)點間原來已處于接近同步的情況,對節(jié)點1而言,e11=0最小,e14最大,按算法它們將被丟棄,于是校正量將按(e12+ e13)/2計算:

  當節(jié)點初始相位比參考節(jié)點2、3的平均相位早時,應該推遲本節(jié)點下一cycle的開始,實現(xiàn)負反饋。就應有T1(1)= T1(0)-Corr1。為了分析問題的需要,假定只作一部分校正,即:

  其中系數(shù)c≤1,對FlexRay而言c=1。于是有:

  推而廣之,將各節(jié)點的相位差寫為向量,可以得到狀態(tài)方程:

  對T1而言,系數(shù)a11=1-c,a12= c/2,a13= c/2,a14=0,B=-c,U1=120 ns。對節(jié)點2而言,它丟棄最大的e24和最小的e22,U2=80 ns。類似可確定其他節(jié)點的系數(shù)。所以矩陣A有:

  同時有B=-c和U=[120ns 80ns 80ns 120ns]T(6)

  對A求取特征根得到:λ1=1,λ2= 1-c,λ3=λ4=1-1.5c。

  然而在FlexRay中URT是一個系統(tǒng)性偏差,并不因一次校正而消失,因此按(4)式工作時時鐘差會不斷移動。當U不變時有:

  令(7)式中的第二項為S,則有:

 ?。?)式右邊各項均為有限值,而因為A的特征根有λ1=1,(I-A)是不可求逆的,所以S將含有不定值,所以隨著n的增加, T(n+1)是不斷漂移的。

  5  漂移對系統(tǒng)的影響

  漂移使通信時鐘離標準時鐘越來越遠,通信時鐘初始相位的負值代表它比標準時間延遲(如圖1所示)。在延遲超過1個cycle時就會使上次寫入的幀還未發(fā)出就被覆蓋。以cycle=5 ms、100次校正漂9.3 μs計,53763次校正會漂1個cycle,這就是說,8.96 min會產(chǎn)生一次丟幀。由于節(jié)點都是同步的,每個slot都會發(fā)生丟幀,如果每個cycle有91個靜態(tài)slot,那么意味著每8.96 min丟失91個幀--平均每6 s丟一幀。而且,如果host時鐘是偏快方向漂移,那么丟幀的頻度還要增大。

  補償過頭時URT為負值,通信時鐘將比標準時間提前。這種情況一般不會發(fā)生,因為規(guī)定選延遲的最小值作pDelayCompensation。但是這里又出現(xiàn)了host時鐘的漂移問題:所有同步幀的內(nèi)容是由host寫入的,host必須在相應slot的開始前使同步幀的內(nèi)容就緒。最壞情況是原來host在slot開始前寫入,漂移超過了gdActionPointOffset就會產(chǎn)生同步幀未寫入的情況。FlexRay的幀頭部有一位標志null frame. indicator,當幀內(nèi)容未更新時,這一位自動設為0,同步幀還是發(fā)出去,所以并不影響同步幀的個數(shù)。

  6  頻率校正中的問題

  頻率校正時采用了連續(xù)2個cycle的同一同步節(jié)點的相位差,將這兩個相位差的差作原始數(shù)據(jù),用類似算法計算校正量,然后按死區(qū)與限幅的方法實施校正。在同一同步節(jié)點的相位差的減法中,系統(tǒng)性偏差URT互相抵消,因此不引起頻率的漂移。但是,在接收節(jié)點測取BSS的跳變沿時存在誤差的可能性(如圖1所示),BSS的跳變沿的誤差直接影響到倒推ActionPointOffset的位置,從而進入eRT:

  式中Uglitch為毛刺造成的誤差,奇數(shù)cycle和偶數(shù)cycle的Uglitch可能是不同幅值和符號的。BSS的跳變沿是在經(jīng)濾波后的zVotedVal上采取的,毛刺長度小于3個位采樣周期時被濾掉,大于3個位采樣周期時就可以見到。毛刺的存在位置有如下幾種可能:

 ?、?“0“毛刺在TSS之前,真正TSS的跳變沿被解讀為BSS中的跳變沿。此時讀到的相位差較大,但是后續(xù)BSS以及其它的幀檢查會發(fā)現(xiàn)此幀有接收錯。

 ?、?“1“毛刺在TSS之中,毛刺的1/0跳變沿被解讀為BSS中的跳變沿。此時讀到的相位差比上述情況小,同樣可檢查出有錯。

 ?、?“0“毛刺使BSS內(nèi)的跳變沿提前,或“1“毛刺使BSS內(nèi)的跳變沿推后,當提前或推后的量較大時,后續(xù)BSS以及其它的幀檢查會發(fā)現(xiàn)此幀有接收錯。

 ?、?毛刺使BSS跳變沿變化量小于0.5位時,后續(xù)BSS以及其他的幀檢查不會發(fā)現(xiàn)此幀有接收錯,所以此幀會被用于時鐘同步。

  一個接收節(jié)點在同一cycle里受到毛刺干擾而造成有幾個同步幀受影響是可能的。此時盡管有最大最小頻率差的丟棄,毛刺造成的誤差仍可能要進入校正量的計算。

  易于導出頻率校正的狀態(tài)方程,它與(4)式的形式類似。因此FlexRay的頻率校正可使簇內(nèi)的頻率趨于一致,但是仍有頻率相對于標準值漂移的可能性,此漂移的方向是不定的,受毛刺出現(xiàn)的情況而變。

  參考文獻[6]進行了FlexRay的頻率校正的軟件仿真試驗,對節(jié)點頻率作階躍變化、斜坡變化的試驗結(jié)果是令人滿意的。但是它并未考慮過毛刺影響。

  7  時變傳遞矩陣的漂移

  如(5)式所示的傳遞矩陣還有非常多的形式,由于FlexRay在選取作校正計算時要用丟棄排序后的最大最小二個誤差,實際采用的同步節(jié)點的可能性組合很多。例如對4個同步節(jié)點的簇,對每個同步節(jié)點(矩陣A的一行)將有6種可能的系數(shù),整個簇的傳遞矩陣A將有64=1296種可能。對矩陣A求特征根時可以發(fā)現(xiàn)它們都有λ=1的臨界穩(wěn)定的特征根:實際上每行系數(shù)的和都等于1,在用行列式求特征根時就可以將λ-1提出來。而由于FlexRay在每次排序后選中的同步節(jié)點可能不同,傳遞矩陣是時變的,那么是否還有漂移呢?為此按照算法作了含有排序的程序,這是相位校正的算法(不含頻率校正的非線性部分)。

  8.結(jié)語

  FlexRay采用分布式時鐘的本意是強化對抗失效的能力:有F個同步幀發(fā)送節(jié)點失效時,只要同步幀發(fā)送節(jié)點為3F+1個,簇內(nèi)的時鐘仍是正確同步的,因此可以保證簇內(nèi)的正常通信服務。但是根據(jù)本文的動態(tài)分析,時鐘相位會由于延遲補償誤差而漂移,與真實時鐘有頻差。這種延遲補償誤差是無法消除的,而已有頻率校正方法無法發(fā)現(xiàn)通信時鐘對真實時間的頻差,因此通信時鐘會與host的時鐘越離越遠,導致發(fā)送幀被新幀覆蓋,或者時隙到達時消息尚未就緒。這些漂移引起的出錯發(fā)生頻率是相當高的。

  由于毛刺引起的頻率漂移可以用死區(qū)算法克制,但是其他各種毛刺的情況會使有效的同步幀數(shù)目減少,使容錯中值算法的魯棒性下降。按容許F個錯需要3F+1個同步幀計算,同時有2個錯對4個同步節(jié)點的簇就不能保證同步精度了。

  對應用而言,丟幀或時序的錯誤會引起很壞的后果,如工作的邏輯連鎖條件破壞。例如速度下降應在前,換檔工作應在后,由于速度下降信號丟失,降速后換檔的要求未滿足會形成自動變速器的沖擊,造成噪聲和壽命下降,又如停止加油后再剎車的要求未滿足,會延長剎車距離,危及安全。對于傳送的消息是模擬量時,丟幀或延遲的后果只是暫時的,對傳送的是邏輯變量,丟幀或延遲會造成邏輯的錯誤。這種時鐘上的錯誤會同時影響FlexRay的2個通道,因此也影響了FlexRay對抗故障的能力。


 

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

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

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

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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