時間敏感網絡TSN的車載設計實踐: 802.1Qbv協議

▎概述

IEEE 802.1Qbv[1]是TSN系列協議中備受關注的技術之一,如圖1所示,它定義了一種時間感知整形器(Time Aware Shaper,TAS),支持Qbv協議的交換機可以按照配置好的門控列表來打開/關閉交換機出口隊列,可從而為周期型的重要數據提供確定性延遲保障。

圖1 時間感知整形器示意圖
為了更有效地為業務流量提供網絡傳輸服務,更好地發揮Qbv協議的能力,需要進行Qbv協議的應用設計。完整的Qbv設計開發流程包含以下步驟:

  • 流量優先級分類:從車輛功能需求出發,基于通訊矩陣和整車拓撲,梳理整車的流量優先級
  • 門控列表設計:基于已經分類好的整車流量,設計門控列表,仿真分析門控列表是否滿足流量的傳輸需求
  • 設計迭代:如果關鍵數據的需求不能被滿足或者門控列表數量超出硬件門控列表長度上限等情況,迭代分析前兩步流量分類結果、設計的門控列表中的不合理處,調整流量分類或門控列表設計結果

▎流量優先級分類

目前車載環境下,車內的網絡流量固定可知,可根據車輛功能需求,明確各個流量的最大時延、周期、負載大小等需求,將流量分為多個優先級類別。
圖2 示例拓撲
梳理流量優先級是Qbv設計的關鍵步驟,除了需要滿足以上提到基本的需求之外,在實際情況下,更需要對功能準確理解,比如:一般情況下會把控制類指令統一設計為高優先級,而實際轉向、制動類控制指令推薦優先級高于車窗相關的控制指令。

這需要TSN網絡設計工程師有大量的設計經驗,針對不同的功能需求,來綜合設計流量的優先級。

基于通訊矩陣,并結合圖2示例的拓撲,梳理得到表1所示的示例流量優先級分類結果。

表1 示例流量優先級分類

在這里插入圖片描述

▎門控列表設計

基于以上流量優先級分類,并且各個節點已基于IEEE 802.1AS[2]完成了時間同步,即所有節點都有一個相同的時間基準,4條數據流在Switch2-D的出口隊列匯聚,在時間同步的基礎上,需要設計合理的門控列表,來保障該瓶頸出口隊列的高優先級數據流的時延可控。有如下假設:

  • 數據流①的初始發包時間相位為0us,即在0ms,1ms,2ms,…的時刻發包,傳輸到Switch2-D的出口隊列的傳輸延時+Switch1和Switch2的硬轉發延時為3us
  • 數據流②的初始發包時間相位為10us,即在0.010ms,2.020ms,4.040ms,…的時刻發包,傳輸到Switch2-D的傳輸延時+Switch1和Switch2的硬轉發延時5us
  • 數據流③的初始發包時間相位為5us,即在0.005ms,2.005ms,4.005ms,…的時刻發包,傳輸到Switch2-D的出口隊列的傳輸延時+
    Switch2的硬轉發延時1us

三者周期的最小公倍數為2ms,所以Switch2-D的出口隊列循環門控列表的最小周期為2ms,一個完整的循環周期內,該門控列表可設計成:

表2 witch2-D的門控列表設計

在這里插入圖片描述
需要注意的是,表2只展示了Switch2-D的門控列表設計,實際在Swicth1-Switch2的端口上,如果還有其他數據流,數據流①和數據流②也會和這些數據流產生競爭,也需要設計門控列表,為了讓關鍵數據流能達到端到端的延遲和抖動控制,這兩個門控列表需要同時工作,讓關鍵數據在端到端的完整路徑上“一路開門,暢行無阻”。

此外,還可以通過增加關鍵數據的開門時間或者設置“Guard band”的方式,進一步來保障關鍵數據的低延遲和減少傳輸抖動。

▎設計迭代

有了初步的設計結果后,需要分析目前的設計是否完全滿足業務需求,如效果不佳,需要完善設計結果。以下舉例說明,可能的優化過程。

觀察表2可以發現,簡單的4個數據流,設計好的門控列表已經比較復雜,而如果仿真發現已經能較好滿足關鍵數據的時延要求,或者在實際部署時,太頻繁的門開關狀態切換,會由于ECU端的發送端發送周期抖動,而導致關鍵數據錯過開門時機,那沒有必要為各個數據流劃分過多的優先級和特別細致的門控列表。

可以考慮合并優先級6和7,并且為數據流①②③統一開門,得到的門控列表如表3所示,能夠很大程度上簡化門控列表的復雜度,并且保證關鍵數據的傳輸質量。

表3 時間感知整形器示意圖

在這里插入圖片描述

▎RTaW-Pegase助力Qbv設計

面對日益復雜化的汽車電子電氣架構及網絡系統,實際上人工計算與迭代的設計方式已很難適用。在實際的量產車型上,需要傳輸的數據流遠大于以上舉例的4條,而門控列表編排可以抽象成任務調度問題,是典型的NP-Hard問題,即在多項式時間的運算次數內不可求解的問題,除非NP=P,否則無法在多項式時間內求得最優解,其工作量非常巨大,一般會需要軟件輔助幫忙解決。我們可以借助RTaW-Pegase來輔助完成TSN設計工作。

如圖3所示, RTaW可以選擇一鍵配置整形器,如TAS、CBS、Preemption、ATS等整形器,快速驗證TSN整形器的選擇效果。

圖3 TSN整形器配置示例

在Qbv設計中,可借助RTaW內置的TAS門控列表編排算法,幫助我們生成滿足圖4所示的滿足時延需求的門控列表,避免了人工設計復雜的門控列表。后續可以將設計結果和交換機的配置接口適配后,導入到車載TSN交換機的配置中。

圖4 RTaW門控列表示例
RTaW還能進一步幫助分析設計結果,為了將有TAS的配置與沒有TAS的配置進行比較,可執行這些ComConfig的最壞情況下的時延等指標分析,能夠直觀地看到時延滿足情況,輔助TSN網絡設計師分析結果。

圖5 RTaw最壞情況時延分析
除此之外,如果關鍵數據較多,延遲要求又比較高,現有硬件條件不能完全滿足所有數據的確定性延遲需求。此時,需要TSN網絡設計工程師,對服務部署、路由選擇等上層通信設計提出修改建議,并從多種可能的Qbv設計方案中合理選擇延遲超時相對可容忍的方案進行實際部署,這需要設計師有大量的實車部署經驗,綜合選擇最合適的落地設計方案。

▎總結

隨著車載TSN軟硬件產業鏈更加成熟,汽車電子電氣架構設計向跨域融合、集中式計算的架構升級,以太網為主干網的鏈路上,各種類型數據的通信需求都需要兼顧, IEEE 802.1 Qbv是一種時間敏感數據低抖動性的保障。

RTaW-Pegase[3]能夠大力輔助Qbv的設計工作,它是法國國家信息與自動化研究所(INRIA)下屬公司RTaW的產品。該公司主要為汽車等領域的企業提供時間仿真和配置工具。RTaW-Pegase(V4.2.7)全面支持CAN(FD)、車載以太網以及TSN協議的設計仿真及性能評估。

RTaW五年前由經緯恒潤引入國內,是該公司在中國的重要合作伙伴。經緯恒潤憑借多年在車載以太網領域的經驗以及RTaW工具的強大支持,已經成功完成了多款車型的TSN設計。更多資訊請點擊鏈接,了解更多RTaW工具信息。

▎參考資料

[1] IEEE, 802.1, “IEEE 802.1Qbv—Enhancements for Scheduled Traffic”, [online] Available: https://www.ieee802.org/1/pages/802.1bv.html.

[2] IEEE, 802.1AS-2020, “Time and Synchronization for Time-Sensitive Applications in Bridged Local Area Networks”, 2020.

[3] https://www.realtimeatwork.com/chin

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/165967.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/165967.shtml
英文地址,請注明出處:http://en.pswp.cn/news/165967.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Spring Validation實踐及其實現原理

Bean Validation 2.0 注解 校驗空值 Null:驗證對象是否為 null NotNull:驗證對象是否不為 null NotEmpty:驗證對象不為 null,且長度(數組、集合、字符串等)大于 0 NotBlank:驗證字符串不為 nul…

2023軟件應用類下載系統平臺源碼/手機軟件應用、新聞資訊下載站/軟件庫網站源碼

源碼簡介: 這個是最新軟件應用類平臺源碼、手機應用下載系統源碼、軟件應用市場下載站源碼、新聞資訊軟件下載。2023軟件應用類平臺源碼/手機軟件應用、新聞資訊下載站,它是軟件庫網站源碼。 最新軟件應用類平臺源碼 手機應用下載系統源碼 軟件應用市場…

NX二次開發UF_CURVE_add_faces_ocf_data 函數介紹

文章作者:里海 來源網站:https://blog.csdn.net/WangPaiFeiXingYuan UF_CURVE_add_faces_ocf_data Defined in: uf_curve.h int UF_CURVE_add_faces_ocf_data(tag_t face_tag, UF_CURVE_ocf_data_p_t uf_offset_data ) overview 概述 Add a face col…

JVMj之console Java監視與管理控制臺

jconsole Java監視與管理控制臺 1、jconsole介紹 jconsole (java monitoring and management console)是一款基于JMX (Java Management Extensions) 的可視化監視和管理工具。 2、啟動jconsole 1、在linux和windwos下通過jconsole啟動即可。 2、然后會自動搜索本機運行的…

【開源】基于Vue和SpringBoot的獨居老人物資配送系統

項目編號: S 045 ,文末獲取源碼。 \color{red}{項目編號:S045,文末獲取源碼。} 項目編號:S045,文末獲取源碼。 目錄 一、摘要1.1 項目介紹1.2 項目錄屏 二、功能模塊三、系統展示四、核心代碼4.1 查詢社區4…

Linux(6):文件與文件系統的壓縮,打包與備份

壓縮文件的用途與技術 由于 1 byte 8 bits ,所以每個byte當中會有8個空格,而每個空格可以是0,1。 其實文件里面有相當多的『空間』存在,并不是完全填滿的,而『壓縮』的技術就是將這些『空間』填滿,以讓整個文件占用…

微信小程序商城實例mpvue-xbyjShop-master(附精選源碼32套,涵蓋商城團購等)

mpvue-xbyjShop 基于mpvue的微信小程序商城(小程序端,服務端) 小程序端 技術棧 mpvue mpvue-router-patch mpvue-entry vuex webpack ES6/7 flyio mpvue-wxparse 項目運行 微信開發中工具選中mpvue-xbyjShop/buyer作為項目目錄即可功…

JavaScript的學習

HTML的學習-CSDN博客 從html的學習中 其實我已經用到了 JavaScript的腳本 &#xff08;GPT&#xff09; 例如 echo <script>alert("賬號密碼錯誤"); window.location"index.html";</script>; 彈窗 然后定位到 index.html 這里能夠讓我們更…

品牌線上竄貨查的出來嗎

如果竄貨不治理會出現什么局面&#xff0c;顯見的當然是渠道混亂&#xff0c;低價叢生&#xff0c;嚴重的還會導致真假混賣&#xff0c;最后所有的后果都會由品牌承擔&#xff0c;口碑的影響是必然的&#xff0c;那品牌的衰敗也會是一種趨勢&#xff0c;所以治理竄貨是品牌發展…

C現代方法(第22章)筆記——輸入/輸出

文章目錄 第22章 輸入/輸出22.1 流22.1.1 文件指針22.1.2 標準流和重定向22.1.3 文本文件與二進制文件 22.2 文件操作22.2.1 打開文件22.2.2 模式22.2.3 關閉文件22.2.4 為打開的流附加文件22.2.5 從命令行獲取文件名22.2.6 臨時文件22.2.7 文件緩沖22.2.8 其他文件操作 22.3 格…

Windows | 模仿網易云任務欄實現自定義按鈕及縮略圖

前言 最近更新網易云發現任務欄按鈕中除了播放相關的按鈕&#xff0c;多了一個喜歡的按鈕&#xff1a; 之前我一直以為網易云任務欄的按鈕只是 Windows 為音樂軟件專門提供的&#xff0c;于是我又看了一眼系統自帶的播放器&#xff0c;發現并沒有愛心按鈕&#xff1a; 這時我就…

計算給定字符串中各個數字的和的平均值…… ← Python 列表

【題目描述】 給定字符串 s"9876543210"。 請編程計算給定字符串中各個數字的和的平均值&#xff0c;并統計大于平均值的數字個數。【算法分析】 ◆ alist("abcd") # Create a list with characters a, b, c, d◆ eval(a[i]) # Converts characters to i…

C在國內就業已經拉胯,ChatGPT告訴我的

文章目錄 一、前言二、ChatGPT查到的數據三、數據亮點 1.C語言近3年數據大跌2.招聘數量每年都在劇增的是全棧工程師3.薪資漲幅最高的是全棧和網安 四、結語 一、前言 不僅前在微信群里搭建了一個ChatGPT 5.0做智能助手&#xff0c;讓他來幫我回答群問題&#xff0c; 搭建好…

數十億美元商機!英國數字基礎設施公司Equinix與法國量子計算公司Alice Bob 合作

?&#xff08;圖片來源&#xff1a;網絡&#xff09; 近日&#xff0c;全球數字基礎設施公司Equinix宣布與全球領先的法國量子計算公司Alice & Bob合作&#xff0c;旨在共同開發市場上最為可靠的量子處理器之一。此次合作將使Equinix公司的客戶通過使用Equinix Metal和Eq…

好的程序員有什么特質呢?

程序員想要提升自己&#xff0c;一定要關注到工作中的方方面面。而一個好的程序員&#xff0c;一般都有這些特質&#xff1a; 弱者抱怨環境&#xff0c;強者改變環境 不要試圖通過抱怨環境來獲得工作環境上的改變&#xff0c;這不僅不會給你帶來任何實質性的改變&#xff0c;…

自定義字符-攝氏度漢字一

本文為博主 日月同輝&#xff0c;與我共生&#xff0c;csdn原創首發。希望看完后能對你有所幫助&#xff0c;不足之處請指正&#xff01;一起交流學習&#xff0c;共同進步&#xff01; > 發布人&#xff1a;日月同輝,與我共生_單片機-CSDN博客 > 歡迎你為獨創博主日月同…

springboot+vue項目如何集成onlyoffice開源文檔組件

一、onlyoffice是什么 ONLYOFFICE 是一個開源的辦公套件&#xff0c;適合多人在線協作。由總部位于總部在拉脫維亞的 IT 公司Acensio System SIA 開發。它提供在線協作文檔編輯器&#xff08;包括文檔、電子表格、演示文稿和表單&#xff09;&#xff0c;適用于 Windows、Linu…

python tkinter使用(五)

python tkinter使用(五) 本篇文章講述tkinter 中treeview的使用 Treeview是一個多列列表框&#xff0c;可以顯示層次數據。 #!/usr/bin/python3 # -*- coding: UTF-8 -*- """Author: zhTime 2023/11/23 下午8:28 .Email:Describe: treeview 使用 "&quo…

項目經理面試題持續更新

1.項目中常用的文檔有哪些&#xff1f; 1、可行性報告 可行性報告的目的是調查和展示任務要求&#xff0c;并確定項目是否值得和可行。可行性由五個主要因素驗證——技術和系統、成本、法律、運營和進度。次要可行性因素包括市場、資源和文化因素。 2、項目章程 項目章程是證明…

Linux上自動掛載windows下的網絡共享文件夾

比如我們想在ubuntu上掛載一個windows的共享文件夾&#xff0c;我們可以用如下方式實現。 首先我們將windows下的文件夾右鍵選擇【屬性】&#xff0c;然后選擇【共享】。 選擇需要共享的用戶&#xff0c;然后設置權限級別。 點擊共享&#xff0c;然后點擊完成。 這樣我們在wi…