中圖分類號:U463.6 文獻標識碼:A 文章編號:1003-8639(2025)06-0100-03
AMethod for Softwareand HardwareDesignofBoard-level HeterogeneousMulti-modeCommunication
LiRui,DuBin,WangYuanbo
(Shaanxi Tianxingjian IoV Information Technology Co.,Ltd.,Xi'an 7102Oo,China)
【Abstract】With therapid development of vehiclenetworking technologyand the increase of complexityof vehicle electroniccontrolunit,traditional single processorcannotmeet the increasinglycomplexanddiversified needsof data interactionand processing.This paper proposesamulti-mode communication mechanism between heterogeneous coresat board level,designs ahardware platform integrating high-real-time MCUand high-performance SOC,and describes the hardwarestructureof heterogeneous multi-modecommunication.Onthis basis,a lightweightcomponentizedsoftware designschemeof layering,lowcouplingand highcohesion is proposed,and thecommunication mechanismof driver layer,interface layer,networklayer,protocollayer,transport layerandapplicationlayerisexpounded.This mechanismnot onlyimproves the computing eficiencyof heterogeneous multi-coreenvironment,but alsorealizes the optimization of processor performance and improves the quality of communication data.
【Key words】vehicle networking;internuclear communication;MCU;SOC;heterogeneous processor
0 引言
隨著網聯汽車的飛速發(fā)展,數據交互與處理的需求日益復雜和多樣化。傳統單處理器難以滿足控制器所承載的應用場景需求,控制器需要多個處理器協同,才能實現其功能。在這一背景下,板級異構核間多模通信技術應運而生,成為推動網聯汽車域控化變革的關鍵技術。該技術旨在提高數據處理效率,提升數據傳輸品質和保障信息傳輸安全,有望給網聯汽車行業(yè)帶來革命性變化。
板級異構核間多模通信指在一個控制單元上部署多個處理器,如實時性強的MCU、高性能CPU、圖形處理單元GPU和神經網絡處理器NPU等。這些處理器內核可能采用不同指令集架構,特性和功耗要求各異,難以集成在同一顆SOC芯片中。因此,為解決單芯片資源限制、業(yè)務功能劃分等難題,需設計一套板級異構核間通信機制,確保不同處理器間實現高效、可靠的數據交換與協同工作。實現這一目標的難點,主要集中在同步互斥處理、通信協議設計、軟硬件框架支持以及性能優(yōu)化等方面。通過軟硬件的緊密配合,可攻克這些難題,實現多核異構系統的高效通信。
1方案設計
本方案以集成式車聯網終端為例,詳細闡述多核異構核間通信的軟硬件設計。集成式車聯網終端的核心功能,包括整車數據交換、音視頻處理、邊緣計算,以及與管理平臺的數據交互。這些功能特性決定了無法采用現有“多功能芯片”實現,因此需采用強實時性的MCU和高性能SOC,共同完成控制器的核心功能。
本方案的核心目標,是讓每個處理器在完成自身工作的同時,通過多種通信接口,實現數據交互的可靠性與實時性協同。
1.1 硬件設計
本方案的硬件由強實時性MCU和高性能SOC組成,后者集成了CPU、GPU和NPU。2個處理器通過UART、SPI和以太網3種接口連接,實現數據交互的可靠性與實時性協同,具體架構如圖1所示。
UART串口通信方式簡單,但速率較低,適用于交互不太頻繁的數據,如控制類數據。串口通信波特率一般不超過 115200b/s ,數據按字節(jié)順序發(fā)送,接收方需在收到數據后延時判斷是否接收完整,這大大降低了數據交互速度,不適用于大型數據交互。不過,串口每個字節(jié)都有奇偶校驗位,可進行錯誤檢查,數據可靠性較高,其通信原理如圖2所示。
SPI具有速度快、簡單、同步、全雙工的特點,占用IO資源少,波特率通常可達20M以上,適用于部分整車信號傳輸。在兩顆處理器間設計SPI通信時,需考慮主機和從機均可隨時主動發(fā)起數據交互。根據圖1所示,SPI主節(jié)點MCU發(fā)送數據時,先拉低Tx_master,發(fā)送完一幀數據后再拉高;SPI從節(jié)點SOC發(fā)送數據時,先將數據長度放入發(fā)送寄存器,再拉高Tx_slave。此時,MCU的終端檢測到Tx_slave上升沿,SPI主節(jié)點產生Clock,讀取從節(jié)點發(fā)送的數據長度,然后按長度發(fā)送Clock,讀取完整數據,其通信原理如圖3所示。
以太網具備高速傳輸特性,在兩顆處理器間主要用于大數據和文件傳輸,如整車多路CAN同時接收的數據從MCU透傳至SOC,以及OTA過程中數據包的傳輸等場景。為減少接口使用,本方案選用RMII接口,該接口主要包括MAC層到物理層的發(fā)送接口、接收接口、時鐘接口和數據管理,其通信原理如圖4所示。
1.2 軟件設計
異構多核系統集成了多種不同類型處理器,為確保系統整體性能和穩(wěn)定性,需實現處理器間的高效數據通信與協同工作。因此,軟件設計的目標是構建高效合理的通信機制,以及分層、低耦合、高內聚的輕量級組件化軟件架構,簡化軟件開發(fā)流程,適配不同通信需求和硬件特性,提供低時延、高可靠性和高傳輸速率的通信方法。
通信組件軟件架構按應用層、傳輸層、網絡層、接口層和驅動層進行設計,具體架構如圖5所示。
1)驅動層。負責配置各通信接口硬件,如實現 以太網、串口和SPI驅動。
2)接口層。將驅動提供的接口進行抽象統一,屏蔽不同處理器的驅動差異,為上層提供統一接口,實現組件通用化。
3)網絡層。負責配置各通信接口網絡,如以太網的TCP/IP協議棧,以及串口和SPI的初始化、通道監(jiān)測與收發(fā)。通道監(jiān)測通過兩個處理器間同步心跳包,判斷通道是否正常建立。
4)傳輸層。主要進行數據編碼、解碼和CRC校驗。數據格式包括包頭Header、通道Channel(硬件通信接口ETH、UART、SPI)、數據類型Type(控制類、信號類、文件類)、有效負載長度Len和有效負載Payload(實際傳輸數據)。編碼后對整個數據包進行CRC校驗,對網絡層傳來的數據包也進行CRC校驗和解碼。同時,實時監(jiān)控各通信接口的繁忙程度,根據數據包類型(協議中的Type)和數據大小,選擇合適的通信接口。此外,傳輸層的消息服務品質QualityofService根據應用層的QosLevel,確保不同網絡環(huán)境下消息傳遞的可靠性。
Qoslevel設計了2個等級。
Qos0表示消息最多傳遞一次。若接收方未收到,消息將丟失。發(fā)送方發(fā)送消息后,不再關注是否送達,不設置重發(fā)機制。
Qos1表示消息至少傳遞一次。設計了重發(fā)機制,包括消息發(fā)送后的計時單元。若一定時間內未收到接收者的ACK,將重新發(fā)送消息,確保消息送達。接收方若收到Qos1消息,須在當前服務中回復ACK。
5)應用層。只需按業(yè)務要求填充數據,并將其傳送至傳輸層。填充數據包括當前數據類型Type、數據長度Len、有效負載數據Payload和當前數據包的消息品質等級。應用層無需關注消息通過哪個通信接口傳送,也無需關心是否超時或重發(fā),簡化了應用開發(fā)者的工作流程。
2方案特點
板級異構核間多模通信方法的特點主要體現在以下幾個方面。
1)性能提升:結合異步串口通信、同步SPI和以太網等不同類型通信接口,根據數據類型和大小,通過監(jiān)聽通信接口,將數據分發(fā)到最合適的接口傳輸,提升信息傳輸性能。
2)靈活性:板級異構核間多模通信系統能適應多種硬件平臺,通過接口層屏蔽硬件平臺差異,實現低耦合、高內聚,具備較強的可移植性。
3)并行處理:不同類型的消息可并行傳輸,實現任務級別的并行處理,這種并行可以進一步提高系統板級異構核間的通信性能,從而提升整個系統的性能。
3性能比較
與單串口、單SPI、以太網、雙口RAM等傳統雙CPU通信方式相比,本方案的板級異構核間多模通信在通信速度、成本和性能等方面具有明顯優(yōu)勢,具體優(yōu)劣對比見表1。
4 應用價值
該方法廣泛應用于網聯信息域、座艙域和自動駕駛域控制器設計。隨著整車控制器的域化發(fā)展,單一處理器無法滿足復雜多樣的需求,需要不同類型處理器相互配合完成業(yè)務處理,這對板上處理器間的通信提出了更高要求。因此,設計高效、高性能、穩(wěn)定的板級異構核間多模通信軟硬件方法至關重要。
5結束語
綜上所述,本方法通過多種硬件通信接口,滿足不同類型的數據傳輸需求,提高數據傳輸效率。軟件通過分層解耦和組件化方式,實現數據分發(fā)、通信接口連接監(jiān)聽、消息重發(fā)和通信接口繁忙監(jiān)聽。本方法實現的組件移植性強,只需根據平臺差異適配驅動層,即可完成組件移植應用。板級異構核間多模通信不僅提高了數據處理效率,還提升了數據品質,為網聯汽車的域控化變革提供了有力的技術支撐。
參考文獻
[1]麥秀青,王千,陸平,等.多模通信終端操作系統關鍵技術的設計與實現[J].計算機時代,2023(11):141-145.
[2]張豫,劉賢堅,鄧志東,等.無線多模通信終端關鍵技術的設計與實現[J].技術與市場,2022,29(1):82-83.
[3]谷豐.無線多模通信終端關鍵技術的設計與實現[D].北京:北京郵電大學,2015.
[4]李一喆.異構網絡智能化控制與優(yōu)化的關鍵技術研究[D].北京:北京郵電大學,2013.
(編輯凌波)