文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2016.04.003
中文引用格式: 張榮華,,劉紅紅,王瑤,,等. AFDX網(wǎng)絡(luò)端系統(tǒng)芯片設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,,2016,42(4):11-14.
英文引用格式: Zhang Ronghua,,Liu Honghong,,Wang Yao,et al. Research and design of AFDX network end-system chip[J].Application of Electronic Technique,,2016,,42(4):11-14.
0 引言
AFDX網(wǎng)絡(luò)采用全雙工,、雙余度、虛鏈路,、帶寬固定分配,、完整性檢查和余度管理等措施,使之滿(mǎn)足航空電子系統(tǒng)通信對(duì)高帶寬,、確定性,、實(shí)時(shí)性和高可靠的通信服務(wù)要求[1,2],。
AFDX端系統(tǒng)作為AFDX網(wǎng)絡(luò)的核心組成部分,,廣泛應(yīng)用于引擎、飛行控制,、導(dǎo)航以及其他對(duì)操作平臺(tái)至關(guān)重要的系統(tǒng)中[3],。
本文在深入理解AFDX協(xié)議,掌握關(guān)鍵技術(shù)的基礎(chǔ)上,,針對(duì)AFDX網(wǎng)絡(luò)各節(jié)點(diǎn)之間的通信設(shè)計(jì)并實(shí)現(xiàn)了一款協(xié)議處理SoC芯片,,該芯片是一款完全具有自主知識(shí)產(chǎn)權(quán)的核心AFDX網(wǎng)絡(luò)端系統(tǒng)芯片,實(shí)現(xiàn)了ARINC664協(xié)議所規(guī)定的技術(shù)指標(biāo),,是從標(biāo)準(zhǔn)協(xié)議理解,、系統(tǒng)定義到芯片設(shè)計(jì)與驗(yàn)證、封裝,、測(cè)試等完全自主研制的系統(tǒng)級(jí)芯片,。
1 芯片設(shè)計(jì)與實(shí)現(xiàn)
1.1 芯片功能
AFDX端系統(tǒng)芯片實(shí)現(xiàn)了AFDX網(wǎng)絡(luò)端系統(tǒng)的鏈路層、網(wǎng)絡(luò)層(IP協(xié)議),、傳輸層(UDP協(xié)議)以及三類(lèi)通信端口(采樣、隊(duì)列,、SAP)的全部功能,,采用32位PCI總線與主機(jī)進(jìn)行通信和數(shù)據(jù)傳輸,通過(guò)兩個(gè)獨(dú)立可配置的10 M/100 M MAC與AFDX網(wǎng)絡(luò)互聯(lián),,實(shí)現(xiàn)雙余度網(wǎng)絡(luò)控制,。主要功能:(1)內(nèi)嵌低功耗ARM922T處理器,工作頻率200 MHz,;(2)具有完整的AFDX網(wǎng)絡(luò)協(xié)議棧功能,;(3)發(fā)送支持128個(gè)VL(含4個(gè)Sub-VL),,發(fā)送BAG支持2K(K=-1,0,,1,,…,7),;(4)接收支持4 096個(gè)VL,,技術(shù)延遲不大于150 μs;(5)支持完整性檢查和余度管理,;(6)通過(guò)硬件實(shí)現(xiàn)快速發(fā)送調(diào)度和虛擬鏈路過(guò)濾,;(7)具有64位高分辨率時(shí)間同步;(8)支持采樣,、列隊(duì)和服務(wù)訪問(wèn)端口配置,;(9)支持多種MIB統(tǒng)計(jì)(CRC、非字節(jié)對(duì)齊,、超短幀,、超長(zhǎng)幀、VLID錯(cuò),、常數(shù)域錯(cuò)等),;(10)內(nèi)核電壓1.8 V,I/O電壓3.3 V,。
1.2 芯片架構(gòu)設(shè)計(jì)
AFDX網(wǎng)絡(luò)端系統(tǒng)芯片架構(gòu)設(shè)計(jì)采用SoC片上系統(tǒng)實(shí)現(xiàn),,提出一種專(zhuān)用數(shù)據(jù)通道結(jié)構(gòu)、控制流與數(shù)據(jù)流分開(kāi)的設(shè)計(jì),,在以太網(wǎng)接口與PCI總線接口之間構(gòu)建專(zhuān)用,、快速的協(xié)議處理通道,數(shù)據(jù)收發(fā)不通過(guò)片上總線,,處理器只是通過(guò)片上總線控制數(shù)據(jù)的解析和收發(fā),,專(zhuān)用數(shù)據(jù)通道內(nèi)部設(shè)置多個(gè)控制器和命令鏈表隊(duì)列,在不需要片上處理器和主機(jī)過(guò)多干預(yù)的情況下,,實(shí)現(xiàn)數(shù)據(jù)的自動(dòng)收發(fā)和狀態(tài)更新,。AFDX網(wǎng)絡(luò)端系統(tǒng)芯片架構(gòu)見(jiàn)圖1[4]。
1.2.1 硬件設(shè)計(jì)
AFDX網(wǎng)絡(luò)端系統(tǒng)芯片的硬件設(shè)計(jì)主要包括AFDX協(xié)議處理單元,、處理器,、存儲(chǔ)器、外圍接口控制,、PCI主機(jī)接口等,。
AFDX協(xié)議處理單元是AFDX網(wǎng)絡(luò)端系統(tǒng)芯片設(shè)計(jì)的核心,也被稱(chēng)為中央處理單元(CCU),,負(fù)責(zé)完成PCI接口與兩個(gè)獨(dú)立的MAC接口之間的數(shù)據(jù)接收和發(fā)送,。CCU結(jié)合片上處理器以及AFDX協(xié)議堆棧嵌入式軟件,,對(duì)從MAC端口接收的數(shù)據(jù)進(jìn)行完整性檢查和余度管理,完成數(shù)據(jù)與包頭的分離,、數(shù)據(jù)部分校驗(yàn)和的計(jì)算,,為片上處理器進(jìn)行協(xié)議棧處理提供必要信息。CCU發(fā)送部分能支持128路VL同時(shí)工作,,接收部分支持4 096個(gè)VL,,采用位圖寄存器實(shí)現(xiàn)了各路VL對(duì)片內(nèi)存儲(chǔ)器的共用。CCU內(nèi)部原理框圖如圖2所示,。
芯片采用ARM922T處理器作為其核心處理器,,端系統(tǒng)芯片集成的微處理器及在處理器上運(yùn)行的協(xié)議棧軟件提高了芯片的智能化程度,不再需要主機(jī)干預(yù),,自動(dòng)完成下層協(xié)議的打包或解包,,大大減少主機(jī)處理器的負(fù)擔(dān),提高消息的處理速度[5],。
存儲(chǔ)器采用SDRAM控制器和外部虛線(External Bus Interface,,EBI)接口進(jìn)行控制,EBI提供了一個(gè)靈活的外部存儲(chǔ)器接口,,用來(lái)確保外部設(shè)備和嵌入式存儲(chǔ)器控制器之間的數(shù)據(jù)傳輸[6],。
外圍接口控制包括片上總線、中斷控制器,、DMA控制器,、MAC介質(zhì)訪問(wèn)控制器、PHY配置管理器,、定時(shí)控制器,、看門(mén)狗、通用輸入輸出接口,、UART接口,、調(diào)試接口等。
PCI接口主要實(shí)現(xiàn)了AFDX終端系統(tǒng)與PCI總線的連接,,與PCI總線上的主機(jī)內(nèi)存進(jìn)行數(shù)據(jù)交換,,PCI接口包含3個(gè)不同類(lèi)型的通道:DMA類(lèi)型的主通道、寄存器類(lèi)型的從通道0和FIFO類(lèi)型的從通道1,。
1.2.2 軟件設(shè)計(jì)
為滿(mǎn)足以端系統(tǒng)芯片為核心構(gòu)建的AFDX網(wǎng)絡(luò)端系統(tǒng)應(yīng)用需求,,基于ARINC664通信協(xié)議,對(duì)芯片各模塊的功能與性能設(shè)計(jì)進(jìn)行分析,,配套規(guī)劃的軟件包括驗(yàn)證軟件和功能軟件。
驗(yàn)證軟件依據(jù)驗(yàn)證規(guī)范進(jìn)行設(shè)計(jì),,包括芯片驗(yàn)證過(guò)程中的虛擬原型驗(yàn)證,、FPGA原型驗(yàn)證及樣片驗(yàn)證,,功能覆蓋芯片設(shè)計(jì)的每一個(gè)功能、性能點(diǎn),,有效保障了芯片設(shè)計(jì)的正確性,。功能軟件為芯片系統(tǒng)應(yīng)用時(shí)為用戶(hù)提供的軟件,內(nèi)容涉及底層傳輸軟件,、主機(jī)驅(qū)動(dòng)軟件,,結(jié)構(gòu)圖如圖3所示。
底層傳輸軟件:主要實(shí)現(xiàn)了片上邏輯初始化,、配置表加載與查詢(xún),、中斷處理、調(diào)試與錯(cuò)誤信息處理,、UDP/IP協(xié)議解析功能和采樣,、隊(duì)列和SAP端口的數(shù)據(jù)收發(fā)等功能。
主機(jī)驅(qū)動(dòng)軟件:提供上層應(yīng)用軟件和底層傳輸軟件的數(shù)據(jù)通信通路,,包括寄存器的讀寫(xiě)訪問(wèn),、通信端口的創(chuàng)建與管理、主機(jī)與AFDX網(wǎng)絡(luò)端系統(tǒng)外部存儲(chǔ)器之間的數(shù)據(jù)搬運(yùn)等功能,。
1.3 工作原理
端系統(tǒng)芯片協(xié)議處理由下向上包括:物理鏈路層,、網(wǎng)絡(luò)層(IP協(xié)議)、傳輸層(UDP協(xié)議),。在物理鏈路層,,發(fā)送端通過(guò)虛擬鏈路(Virtual Link)和帶寬分配間隙(Bandwidth Allocation Gap)進(jìn)行交通整形,接收端通過(guò)完整性檢查(IC)和冗余管理對(duì)接收數(shù)據(jù)進(jìn)行過(guò)濾和檢查,;在網(wǎng)絡(luò)層和傳輸層,,采用成熟的UDP/IP協(xié)議對(duì)消息進(jìn)行處理,向上則通過(guò)采樣,、隊(duì)列,、SAP三類(lèi)端口與應(yīng)用層進(jìn)行數(shù)據(jù)傳輸[7]。
AFDX網(wǎng)絡(luò)端系統(tǒng)芯片通過(guò)片上處理器運(yùn)行AFDX協(xié)議堆棧,,從PCI接口獲取消息信息,,驅(qū)動(dòng)PCI橋,直接從主機(jī)內(nèi)存提取數(shù)據(jù)并完成UDP,、IP協(xié)議的封裝,,AFDX端系統(tǒng)芯片上實(shí)現(xiàn)了發(fā)送調(diào)度、錯(cuò)誤注入,、SN號(hào)添加和MAC數(shù)據(jù)發(fā)送,。芯片集成了接收幀錯(cuò)誤檢查、網(wǎng)絡(luò)過(guò)濾,、完整性檢查和余度管理等功能,,當(dāng)接收到一幀有效數(shù)據(jù),,接收控制電路通過(guò)中斷通知片上微處理器進(jìn)行協(xié)議處理,包括幀的解包,、分片的組裝,,最終根據(jù)通信配置表將處理好的消息寫(xiě)到主機(jī)內(nèi)存,通知主機(jī)CPU進(jìn)行處理,。這種方式大大減少了CPU的載荷,,提高主機(jī)系統(tǒng)性能,在高載荷網(wǎng)絡(luò)中尤為重要[8],。
1.4 物理實(shí)現(xiàn)
由于完全層次化設(shè)計(jì)流程在模塊接口處優(yōu)化能力有缺陷,,因此,AFDX網(wǎng)絡(luò)端系統(tǒng)芯片在處理器物理設(shè)計(jì)時(shí)局部采用半層次化設(shè)計(jì)流程,,有利于更好地優(yōu)化模塊邊界邏輯,,半層次化設(shè)計(jì)流程仍然采用自動(dòng)布局布線工具,通過(guò)人工布局,、時(shí)鐘樹(shù)生成和時(shí)序調(diào)整來(lái)主導(dǎo)芯片版圖設(shè)計(jì),。對(duì)于復(fù)雜模塊,首先進(jìn)行模塊級(jí)布局和邏輯綜合,,在完成post-place及post-clock步驟之后集成到頂層,,頂層仍然進(jìn)行flatten時(shí)序優(yōu)化及布線優(yōu)化。端系統(tǒng)芯片版圖如圖4所示,,該版圖設(shè)計(jì)已申請(qǐng)并獲得國(guó)家布圖保護(hù)專(zhuān)利授權(quán),。
AFDX網(wǎng)絡(luò)端系統(tǒng)芯片采用CBGA480封裝形式,設(shè)計(jì)規(guī)模為670萬(wàn)門(mén),,達(dá)到0.18 μm CMOS工藝設(shè)計(jì),,芯片管芯總共有482個(gè)引腳,引線最高工作頻率為100 MHz,。
2 技術(shù)優(yōu)勢(shì)
從國(guó)外公司提供的AFDX網(wǎng)絡(luò)端系統(tǒng)產(chǎn)品來(lái)看,,國(guó)外公司基本采用FPGA芯片加嵌入式處理器芯片的解決方案,這種實(shí)現(xiàn)方式需要占用大量系統(tǒng)資源,,處理效率較低,,設(shè)計(jì)復(fù)雜,功耗較大,。
AFDX端系統(tǒng)芯片采用片上處理器,,通過(guò)PCI總線控制器直接與主機(jī)存儲(chǔ)器進(jìn)行數(shù)據(jù)交換,大大降低了主機(jī)的系統(tǒng)開(kāi)銷(xiāo),,縮短了協(xié)議處理的時(shí)間和數(shù)據(jù)拷貝,。與國(guó)外同類(lèi)產(chǎn)品相比,具有功耗低、面積小,、延遲小,、功能全等特點(diǎn),主要表現(xiàn)在:(1)功耗小于1 W,;(2)尺寸僅為37.5 mm×37.5 mm;(3)發(fā)送技術(shù)延時(shí)參數(shù)平均69 μs,,接收技術(shù)延遲參數(shù)平均4 μs,,遠(yuǎn)遠(yuǎn)小于ARINC664標(biāo)準(zhǔn)150 μs的設(shè)計(jì)要求;(4)支持10/100 M的網(wǎng)絡(luò)傳輸速率,;(5)符合ARINC664協(xié)議規(guī)范,。
基于該芯片研制的PMC卡與國(guó)外同類(lèi)產(chǎn)品相比具有以下優(yōu)勢(shì):(1)器件數(shù)目減少到1/2;(2)可靠性提高1/4,;(3)重量減輕到1/2,;(4)器件功耗為1/3。
3 芯片驗(yàn)證
AFDX網(wǎng)絡(luò)端系統(tǒng)芯片已經(jīng)過(guò)ATE測(cè)試,、功能性能測(cè)試,、協(xié)議符合性測(cè)試、系統(tǒng)應(yīng)用驗(yàn)證和定型評(píng)測(cè),,實(shí)測(cè)流量達(dá)到了100 Mb/s全載荷發(fā)送,,滿(mǎn)足ARINC664 Part7協(xié)議要求。具體測(cè)試內(nèi)容及測(cè)試結(jié)果如表1所示,。
4 總結(jié)
AFDX端系統(tǒng)芯片是一款完全符合ARINC664協(xié)議,、具有自主知識(shí)產(chǎn)權(quán)的協(xié)議處理芯片,該芯片設(shè)計(jì)新穎,,功耗低,,面積小,功能性能穩(wěn)定可靠,,滿(mǎn)足AFDX網(wǎng)絡(luò)系統(tǒng)應(yīng)用要求,。該芯片已進(jìn)行了ATE、功能性能,、協(xié)議符合性,、系統(tǒng)應(yīng)用等充分驗(yàn)證。驗(yàn)證結(jié)果表明,,該芯片符合ARINC664協(xié)議要求,,功能、性能滿(mǎn)足AFDX網(wǎng)絡(luò)實(shí)時(shí)性,、確定性的系統(tǒng)要求,。該芯片協(xié)議處理軟件已經(jīng)過(guò)GJB5000測(cè)試,芯片技術(shù)成熟,已成功定型,,對(duì)后續(xù)基于該芯片的模塊設(shè)計(jì)及應(yīng)用解決方案具有重要的參考價(jià)值,。
參考文獻(xiàn)
[1] ARINC664.Aircraft data network-Part7:deterministic networks[S].ARINC,2003.
[2] 田靖,,田澤.AFDX-ES SoC虛擬仿真平臺(tái)的構(gòu)建與應(yīng)用[J].計(jì)算機(jī)技術(shù)與發(fā)展,,2010,20(8):192-194.
[3] 李大鵬,,王世奎,,李雯.AFDX端系統(tǒng)發(fā)送單元的研究與實(shí)現(xiàn)[J].航空計(jì)算技術(shù),2012,,42(2):128-131.
[4] 張志,,翟正軍,姚方圓.基于FPGA的AFDX端系統(tǒng)協(xié)議芯片的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)測(cè)量與控制,,2010,,18(2):422-425.
[5] 楊海波,田澤,,蔡葉芳,,等.FC IP軟核的仿真與驗(yàn)證[J].計(jì)算機(jī)技術(shù)與發(fā)展,2009,,19(9):168-172.
[6] 張榮華,,田澤,韓煒.AFDX網(wǎng)絡(luò)端系統(tǒng)芯片架構(gòu)的研究與設(shè)計(jì)[J].計(jì)算機(jī)技術(shù)與發(fā)展,,2011,,21(8):166-168.
[7] 劉蕓,王紅春,,王兵.AFDX端系統(tǒng)協(xié)議軟件設(shè)計(jì)與實(shí)現(xiàn)[J].電光與控制,,2012,19(11):71-76.
[8] 許燕婷.AFDX端系統(tǒng)協(xié)議棧虛擬鏈路層分析及仿真研究[D].上海:上海交通大學(xué),,2011.