• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于DSP的時間觸發(fā)總線設(shè)計與實現(xiàn)

      2017-01-13 07:23:37毛亞鵬
      計算機測量與控制 2016年8期
      關(guān)鍵詞:全局時鐘總線

      毛亞鵬

      (清華大學(xué)計算機系,北京 100084)

      基于DSP的時間觸發(fā)總線設(shè)計與實現(xiàn)

      毛亞鵬

      (清華大學(xué)計算機系,北京 100084)

      網(wǎng)絡(luò)通信系統(tǒng)是現(xiàn)代航空電子系統(tǒng)以及其他分布式實時容錯系統(tǒng)的中樞,基于時間觸發(fā)架構(gòu)的網(wǎng)絡(luò)通信系統(tǒng)是一個重要的發(fā)展方向;首先對于TTP/C協(xié)議的基本架構(gòu)以及上電群啟動過程,全局時鐘同步,容錯策略等關(guān)鍵技術(shù)進行介紹,然后提出一種基于TTP的時間觸發(fā)總線協(xié)議,并基于DSP實現(xiàn)協(xié)議控制器進行時間觸發(fā)通訊;結(jié)果表明時間觸發(fā)總線具有良好的時間確定性,容錯特性以及較高的總線利用率,適用于航空,鐵路,汽車等安全關(guān)鍵系統(tǒng)的底層網(wǎng)絡(luò)通信。

      時間觸發(fā);時鐘同步;容錯策略;時間確定性

      0 引言

      隨著航空電子系統(tǒng)等分布式實時容錯系統(tǒng)的逐步發(fā)展,其對于網(wǎng)絡(luò)通信系統(tǒng)的實時性和可靠性需求也在不斷提高,相較于原有的事件觸發(fā)總線如ARINC429,1553B,CAN,以太網(wǎng)等,時間觸發(fā)架構(gòu)的總線如TTP,TTCAN,F(xiàn)lex Ray,TTEthernet等具有更高的實時性和可靠性,同時也大大提高了總線的利用率,減少了通信沖突所帶來的資源消耗。

      在上述基于時間觸發(fā)架構(gòu)的總線中,TTP總線是首個被SAE(美國汽車工程師協(xié)會)標(biāo)準(zhǔn)化的通信協(xié)議。TTP總線主要有兩種標(biāo)準(zhǔn):TTP/A和TTP/C[1],其中TTP/A面向SAE的A類標(biāo)準(zhǔn),適用于汽車電子等成本較低的非關(guān)鍵應(yīng)用,而TTP/C面向SAE的C類標(biāo)準(zhǔn),主要面向高速、實時閉環(huán)控制的多路傳輸網(wǎng)。

      TTP/C協(xié)議是基于時間觸發(fā)架構(gòu)的高速,雙余度,多點串行的硬實時容錯現(xiàn)場總線協(xié)議,可支持5Mbps,25Mbps。目前已經(jīng)在航空航天領(lǐng)域得到了較多實際應(yīng)用[2],如洛馬公司F16及意大利馬基公司M346上的全權(quán)數(shù)字發(fā)送機控制系統(tǒng)FADEC、空客公司A380的客艙壓力控制系統(tǒng)、波音公司B787“夢想”客機的電源及環(huán)境控制系統(tǒng)等,同時,NASA的新一代載人飛船“獵戶座”也使用了基于時間觸發(fā)架構(gòu)的TTE網(wǎng)絡(luò)。

      本文將首先介紹TTP/C協(xié)議的基本架構(gòu),以及上電群啟動,全局時鐘同步,容錯策略,調(diào)度表配置等關(guān)鍵技術(shù)。然后依據(jù)其協(xié)議與實際需求,提出基于DSP的協(xié)議控制器實現(xiàn)方案,定義合理的數(shù)據(jù)幀格式,并給出實際通訊波形。結(jié)果表明時間觸發(fā)總線協(xié)議具有良好的時間確定性和容錯特性。最后,總結(jié)了開發(fā)過程中的重點和難點,并對于后續(xù)工作進行展望。

      1 TTP基本架構(gòu)和通信原理

      TTP總線的基本架構(gòu)[3]如圖1所示,一般配置為總線型或星型拓?fù)浣Y(jié)構(gòu)。每個節(jié)點通過通信接口訪問總線,總線具有雙通道以避免單個信道或者節(jié)點故障導(dǎo)致的問題。節(jié)點之間通過廣播的方式進行數(shù)據(jù)傳輸,發(fā)送數(shù)據(jù)時,數(shù)據(jù)通過兩條通信鏈路進行冗余傳輸。

      圖1 TTP基礎(chǔ)架構(gòu)

      每個節(jié)點分成應(yīng)用層和TTP通訊層,應(yīng)用層包括主機層以及與之相連的傳感器,作動器等,主機層通過CNI(通信網(wǎng)絡(luò)接口)與下層TTP控制器進行數(shù)據(jù)交換,TTP控制器主要包括TTP協(xié)議處理器,TTP信息描述表(MEDL),并通過總線開關(guān)與TTP總線通道相連。TTP信息描述表存儲著控制器的調(diào)度控制數(shù)據(jù),包括基本的通信行為和必要的啟動、集成參數(shù),調(diào)度方案ID以及時間觸發(fā)相關(guān)的TDMA參數(shù),而TTP協(xié)議處理器則負(fù)責(zé)按照信息描述表來控制節(jié)點的發(fā)送和接收等通訊行為,總線開關(guān)負(fù)責(zé)在節(jié)點失效時關(guān)斷以防失效節(jié)點干擾總線上正常數(shù)據(jù)通訊。

      TTP總線的通訊過程如圖2所示,以時間觸發(fā)的方式,基于時分復(fù)用的思想,所有節(jié)點在全局統(tǒng)一的時鐘下,在規(guī)定的時間序列規(guī)定的時刻進行數(shù)據(jù)的發(fā)送接收任務(wù)。整個傳輸時間軸由重復(fù)的集群周期組成,每個集群周期內(nèi)分成多個TDMA周期,每個TDMA周期被分成多個不等長的時間槽,每個節(jié)點都在各自分配到的時間槽內(nèi)發(fā)送數(shù)據(jù),以避免通信沖突。

      圖2 TDMA調(diào)度

      2 TTP關(guān)鍵技術(shù)

      基于時間觸發(fā)通信的一個首要條件是建立一個全局同一的時鐘,這個過程需要在啟動過程中就開始建立,同時,容錯冗余策略對于分布式安全關(guān)鍵系統(tǒng)也是必需的,此外調(diào)度表的合理規(guī)劃對于整體效率也有顯著提高。

      2.1 全局時鐘同步

      TTP時鐘同步原理[4]為:總線上的節(jié)點將會在各自規(guī)定的時間槽內(nèi)進行數(shù)據(jù)收發(fā),并且都知道具體的收發(fā)時刻,通過實際幀的接收時刻和MEDL表中預(yù)置的接收時刻的差值,來計算本地時鐘與全局時鐘的偏移值,并以此來校正本地時鐘,實現(xiàn)全局時鐘同步。其中參與偏移值計算的幀發(fā)送節(jié)點被稱為同步主節(jié)點,主節(jié)點時鐘精度較高,通常需要保持主節(jié)點個數(shù)不少于4個以避免拜占庭錯誤。其余節(jié)點則稱為從節(jié)點,從節(jié)點發(fā)送的數(shù)據(jù)幀不參與接收時刻差值的計算。

      TTP具體時鐘同步算法流程如下:

      1)每個節(jié)點需要N個寄存器用于存放時間偏移值,其中N為主節(jié)點個數(shù),不少于4個。

      2)每個節(jié)點收到主節(jié)點發(fā)送的數(shù)據(jù)幀,計算與MEDL表中預(yù)置接收時刻的偏差,寄存器中始終保存最近的N個偏移值。

      3)去除N個偏移值的最大值和最小值,對其余值求平均,得到平均時間偏移值。

      4)根據(jù)全局調(diào)度表配置,每個節(jié)點都在每個TDMA周期末尾的固定時間槽進行時間偏移計算及校正。

      2.2 群啟動過程

      群啟動過程[5]是在系統(tǒng)上電或復(fù)位重啟時用以建立集群時間同步和狀態(tài)一致的過程,圖3為群啟動過程狀態(tài)圖。啟動過程中,所有節(jié)點均正常上電并初始化,其中啟動節(jié)點進入啟動狀態(tài),其余備用啟動節(jié)點和從節(jié)點進入監(jiān)聽狀態(tài)。啟動節(jié)點進入啟動狀態(tài)后周期性發(fā)送包含全局時間及狀態(tài)信息的啟動幀直到到達(dá)預(yù)設(shè)發(fā)送次數(shù),其他節(jié)點監(jiān)聽并接收到啟動幀后轉(zhuǎn)入被動狀態(tài),并通過分析啟動幀中的時間及狀態(tài)信息調(diào)整到統(tǒng)一的系統(tǒng)時鐘,進入主動狀態(tài)正常進行時間觸發(fā)通信。

      圖3 群啟動狀態(tài)

      假如啟動節(jié)點未正常運作發(fā)送啟動幀,備用啟動節(jié)點在監(jiān)聽預(yù)置的時間超時后,轉(zhuǎn)變到啟動狀態(tài),替代未正常工作的啟動節(jié)點發(fā)送啟動幀以使集群正常啟動。不同備用啟動節(jié)點預(yù)置的超時時間不同,以避免啟動幀沖突或產(chǎn)生不同的啟動狀態(tài)。

      2.3 容錯策略

      TTP協(xié)議的容錯策略主要為成員關(guān)系確認(rèn)算法。TTP協(xié)議通過擴展的CRC維護節(jié)點間成員關(guān)系列表,即數(shù)據(jù)幀中不包含成員關(guān)系列表,但是CRC校驗和是結(jié)合關(guān)系列表來計算得到,因此接收節(jié)點在接收到數(shù)據(jù)幀后結(jié)合本地的成員關(guān)系表進行CRC校驗,若結(jié)果一致,則表明接收正確,同時成員關(guān)系也正確,則在后續(xù)數(shù)據(jù)幀的附加部分給出確認(rèn)狀態(tài)。發(fā)送端節(jié)點會在發(fā)送數(shù)據(jù)幀后監(jiān)聽兩個后續(xù)幀狀態(tài),若至少有一幀給出確認(rèn)狀態(tài)則認(rèn)為數(shù)據(jù)發(fā)送成功,若兩幀均無確認(rèn),則認(rèn)為發(fā)送失?。?]。

      2.4 調(diào)度表配置

      時間觸發(fā)架構(gòu)節(jié)點按照預(yù)先配置的調(diào)度表來確定各自的發(fā)送和接收時間,每個節(jié)點均有各自的時間槽。調(diào)度表需要確定集群周期以及TDMA周期的長度,TDMA周期內(nèi)各個時間槽的長度和起止時間。這些數(shù)據(jù)的確定需要考慮實際節(jié)點傳輸數(shù)據(jù)的周期以及長度,當(dāng)節(jié)點數(shù)較少或者總線負(fù)載較低時,可以簡化調(diào)度表模型以方便配置。當(dāng)節(jié)點數(shù)量較多且數(shù)據(jù)信息種類也較多,如有多個發(fā)送周期,長度不同等,則需要在滿足數(shù)據(jù)發(fā)送要求的情況下盡量減少時間片總長度,提高效率的同時提供更多的時間用于突發(fā)消息的傳輸。由于調(diào)度表為預(yù)先配置,因此可以使用較耗時的優(yōu)化算法[6 7]提前規(guī)劃,以使總線運行狀態(tài)達(dá)到最優(yōu)。

      3 基于DSP的時間觸發(fā)總線設(shè)計與實現(xiàn)

      3.1 系統(tǒng)框圖

      節(jié)點協(xié)議控制器以TMS320F28069來實現(xiàn),通過兩路SCI經(jīng)過MAX3535E轉(zhuǎn)換芯片連接到RS485總線進行時間觸發(fā)通訊。TMS320F28069作為協(xié)議控制器,向上通過主機接口與主機交互,包括數(shù)據(jù)傳輸以及MEDL表的配置部署;運行時負(fù)責(zé)整個協(xié)議框架的調(diào)度運行,包括精確定時和時鐘同步,接收和發(fā)送數(shù)據(jù)等;數(shù)據(jù)通過SCI串行通信接口經(jīng)過MAX3535E轉(zhuǎn)換芯片連接到RS485總線,由于TTP需要兩個物理層通道,因此使用兩個接口分別連接到兩個通道,其中MAX3535E提供發(fā)送使能控制,使每個節(jié)點只有在自己的發(fā)送時間槽才占用總線。

      3.2 幀格式

      根據(jù)TTP協(xié)議以及部分實際需求,定義如圖5所示幀格式。

      幀長度為128字節(jié),由幀頭、有效數(shù)據(jù)段和校驗位組成。幀頭包含8個字節(jié),分為幀起始位,啟動指示位,同步指示位,兩個確認(rèn)位,保留位,周期ID,幀ID,目的地址,有效數(shù)據(jù)長度,幀頭CRC校驗。幀起始位用于指示幀的開始,啟動指示位用于指示當(dāng)前幀是否為啟動幀,同步指示位則指示當(dāng)前幀為同步幀,兩個確認(rèn)位用于實現(xiàn)后續(xù)幀對于前面幀的接收確認(rèn),保留位用于后續(xù)功能擴展。周期ID和幀ID用于指示當(dāng)前幀在集群周期中的位置,目的地址用于指示接收節(jié)點,數(shù)據(jù)長度用于指示有效數(shù)據(jù)段長度,最后是幀頭的CRC校驗以驗證幀頭段的正確性。

      圖4 系統(tǒng)框圖

      圖5 幀結(jié)構(gòu)

      有效數(shù)據(jù)段長度可變,范圍為0~116字節(jié),用于傳輸實際應(yīng)用數(shù)據(jù),如果啟動幀或同步幀無數(shù)據(jù)需要發(fā)送,則有效數(shù)據(jù)段為0。由于幀頭數(shù)據(jù)長度段表示范圍限制,有效數(shù)據(jù)段長度以字節(jié)為單位。

      CRC校驗用于校驗幀頭和有效數(shù)據(jù)段,長度為4字節(jié),選取CRC-32標(biāo)準(zhǔn)多項式0x104C11DB7.

      3.3 通訊流程

      各個節(jié)點控制器運行通信軟件流程如圖6所示。

      圖6 軟件通信流程

      預(yù)先選取時鐘精度高且穩(wěn)定的節(jié)點作為主節(jié)點,負(fù)責(zé)系統(tǒng)啟動與全局時鐘同步,主節(jié)點在上電復(fù)位初始化后按照群啟動流程發(fā)送啟動幀,從節(jié)點中的備用主節(jié)點負(fù)責(zé)在監(jiān)聽超時后發(fā)送啟動幀,以確保系統(tǒng)正常啟動。正常啟動后各個節(jié)點按照MEDL表中預(yù)置時序邏輯執(zhí)行任務(wù),在各自時間槽到達(dá)時發(fā)送相應(yīng)數(shù)據(jù)幀或同步幀,并在相應(yīng)時間接收總線上數(shù)據(jù),其余時間處理節(jié)點的非通訊任務(wù)。接收模塊在接受到數(shù)據(jù)幀后首先進行校驗位判斷,如果校驗位出錯,則將對應(yīng)確認(rèn)位置位以供發(fā)送節(jié)點判斷,若校驗位正確,則解析有效數(shù)據(jù)段數(shù)據(jù)以供主任務(wù)使用,同時解析幀頭段狀態(tài)以獲取確認(rèn)位信息,并記錄錯誤或進行對應(yīng)處理。各流程結(jié)束后均回到時序判斷狀態(tài),等待下一個任務(wù)。

      3.4 測試與實驗

      按照前述系統(tǒng)框圖及幀定義,流程設(shè)計實現(xiàn)實驗用平臺,包含3個節(jié)點,其中1號節(jié)點為主節(jié)點,負(fù)責(zé)啟動及同步幀的發(fā)送,2,3號節(jié)點為從節(jié)點,主要發(fā)送數(shù)據(jù)幀。整個集群周期時序設(shè)計由于節(jié)點數(shù)有限,實驗時設(shè)計為主節(jié)點在每個周期發(fā)送同步幀,之后1,2,3號節(jié)點依次發(fā)送數(shù)據(jù)幀,每個時間槽時長為1 ms,波特率設(shè)置為2.5 Mbps,以10 ms為周期。節(jié)點信息描述表(MEDL)需預(yù)先配置,包括集群周期的時序,以及相關(guān)節(jié)點間數(shù)據(jù)幀的傳輸處理時延,定時器的最小時間單位等。

      圖7 從節(jié)點時間偏移值

      圖7所示為主從節(jié)點間通過每個周期全局時鐘同步后從節(jié)點的時間偏移值,在200個采樣周期中,從節(jié)點偏移值基本保持在10μs以內(nèi),極少數(shù)周期出現(xiàn)偏移值達(dá)到40μs。因此在實際通信實驗的時間槽分配中預(yù)留偏移時間為100μs以避免多個節(jié)點間時間重疊而產(chǎn)生的通信沖突。

      4 結(jié)論

      時間觸發(fā)協(xié)議總線基于時間觸發(fā)架構(gòu),由于沒有通信沖突,既減小了數(shù)據(jù)緩沖區(qū)的需求,同時也極大提高總線利用率;同時通過提供精確全局時鐘同步并按照時序進行數(shù)據(jù)傳輸,提供了較好的時間確定性和實時性;采用成員關(guān)系表及雙通道等容錯策略,提供了錯誤的精確隔離便于診斷和應(yīng)對;同時由于底層通訊與主機應(yīng)用層的分離架構(gòu),利于實現(xiàn)設(shè)備的并行開發(fā)和維護,并降低了系統(tǒng)的壽命周期成本[8]。這些特性很好的滿足了航空電子系統(tǒng)的需求,同時也會逐漸被應(yīng)用到鐵路,汽車等安全關(guān)鍵系統(tǒng)中。

      通過對于時間觸發(fā)協(xié)議總線的通信原理及關(guān)鍵技術(shù)的分析,搭建了基于DSP的協(xié)議控制器以及總線通信實驗平臺,設(shè)計合理的幀結(jié)構(gòu)以及軟件流程,實現(xiàn)基本的時間觸發(fā)架構(gòu)并進行通信實驗。對于TTP協(xié)議中的容錯策略,目前還未完全實現(xiàn),因此在之后的工作中需要實現(xiàn)協(xié)議中的容錯服務(wù),并嘗試應(yīng)用到具體的工程項目中。

      [1]Time-Triggered Protocol TTP/C High-Level Specification Document Protocol Version 1.1[S].Specification edition 1.5.2 of 5-Jan-2004 Document number D-032-S-10-028.

      [2]金德琨,敬忠良,王國慶,等.民用飛機航空電子系統(tǒng)[M].上海:上海交通大學(xué)出版社,2011.

      [3]Kopetz H,Grünsteidl G.TTP-A time-triggered protocol for fault-tolerant real-time systems[A].The Twenty-Third International Symposium on Fault-Tolerant Computing,1993[C].FTCS-23.Digest of Papers,IEEE,1993:524-533.

      [4]Leen G,Heffernan D.TTCAN:a new time-triggered controller area network[J].Microprocessors and Microsystems,2002,26 (2):77-94.

      [5]張興隆,蘇羅輝,楊 敏.基于FPGA的時間觸發(fā)協(xié)議控制器實現(xiàn)[J].系統(tǒng)仿真學(xué)報,2010(A01):114-118.

      [6]Zeng H,Natale MD,Ghosal A,et al.Schedule optimization of time-triggered systems communicating over the FlexRay static segment[J].Industrial Informatics,IEEE Transactions on,2011,7 (1):1-17.

      [7]Lukasiewycz M,Glab M,Teich J,et al.Flex Ray schedule optimization of the static segment[A].Proceedings of the 7th IEEE/ACM international Conference on Hardware/Software Codesign and System Synthesis[C].ACM,2009:363-372.

      [8]Kopetz H,Ochsenreiter W.Clock synchronization in distributed real-time systems[J].IEEE Transactions on Computers,1987,100(8):933-940.

      Design and Implementation of Time-Triggered Protocol on DSP

      Mao Yapeng

      (Department of Computer Science and Technology,Tsinghua University,Beijing 100084,China)

      The communication network system is the key technology to the avionics system and other distributed real-time fault-tolerant systems,and the communication network systems based on Time-Triggered Architecture indicate an important upgrade direction.It firstly introduces the basic structure of TTP/C,and the key technologies like start-up process,global time synchronization,fault-tolerant strategy.Then introduces a simplified time-triggered protocol based on TTP/C,and implements the protocol controller on DSP to realize the time-triggered communication.The results show that time-triggered protocol is quite a suitable communication network system for the avionics system,railway system,automotive system and other safety-critical system with its time determinability,fault-tolerant strategy and higher bus utilization rate.

      time-triggered;time synchronization;fault-tolerant strategy;time determinability

      1671-4598(2016)08-0209-03

      10.16526/j.cnki.11-4762/tp.2016.08.057

      :TP393

      :A

      2016-01-28;

      :2016-03-10。

      毛亞鵬(1990-),男,浙江紹興人,碩士研究生,主要從事總線通信技術(shù)方向的研究

      猜你喜歡
      全局時鐘總線
      Cahn-Hilliard-Brinkman系統(tǒng)的全局吸引子
      量子Navier-Stokes方程弱解的全局存在性
      別樣的“時鐘”
      古代的時鐘
      基于PCI Express總線的xHC與FPGA的直接通信
      機載飛控1553B總線轉(zhuǎn)以太網(wǎng)總線設(shè)計
      落子山東,意在全局
      金橋(2018年4期)2018-09-26 02:24:54
      有趣的時鐘
      時鐘會開“花”
      多通道ARINC429總線檢查儀
      昭苏县| 玉环县| 正安县| 甘孜县| 奉新县| 大洼县| 黄大仙区| 罗田县| 大化| 明光市| 平阳县| 五指山市| 专栏| 临潭县| 资溪县| 澎湖县| 吉安市| 宜兴市| 兴山县| 葫芦岛市| 新竹市| 康定县| 白水县| 蒲城县| 武冈市| 渑池县| 友谊县| 德阳市| 贵溪市| 定南县| 永城市| 子长县| 辽宁省| 栾川县| 云南省| 柏乡县| 黄浦区| 华宁县| 兰州市| 博乐市| 凉山|