韓一鵬,田 澤,牛少平
(1.中國航空計算技術研究所,陜西 西安 710068;2.集成電路與微系統設計航空科技重點試驗室,陜西 西安 710068)
一種SAE AS5643三節點仿真設備設計與實現
韓一鵬1,2,田 澤1,2,牛少平1,2
(1.中國航空計算技術研究所,陜西 西安 710068;2.集成電路與微系統設計航空科技重點試驗室,陜西 西安 710068)
為滿足新一代航空系統對數據傳輸的實時性、穩定性的要求,對標準的IEEE-1394B總線協議加以限定,形成了SAE AS5643。三節點仿真卡是用于地面上模擬1394總線功能的設備,包含3個可配置的節點,可配置成根節點或者遠程節點連入系統總線,完成SAE AS5643通信協議的處理并且可以數據監控。文中闡述了基于FPGA的三節點仿真卡設計實現,所有模塊用Verilog代碼實現,并結合Xilinx ISE開發環境和QustaSim仿真工具對其進行了時序仿真,并通過FPGA驗證了正確性。文中所闡述的設計均已實現,FPGA綜合報告已經滿足,虛擬仿真與FPGA測試已經開展,基本功能已經達到設計目的。該設計實現了三節點仿真卡,具有多通道同步,節點可配置,數據收發、數據監控、故障注入、心跳字初始值步長值設置,VPC與CRC自檢測等功能。
AS5643;FPGA;機載總線;仿真卡
IEEE1394最初由蘋果公司提出,其目的是簡化計算機連接,并為數字數據實時傳輸提供高速接口。1995年,IEEE給出了IEEE1394的規范定義,后來對其進一步完善,形成了IEEE-1394B。其目的是傳輸多媒體實時數據時,提高帶寬、傳輸速度并且大幅度增加傳輸距離。IEEE-1394B不能滿足應用中對網絡確定性的需求,同期SAE為解決1394總線在航空電子系統中對數據帶寬、確定性的要求,形成了新的SAE AS5643。
國外最成功的應用是1394總線已經在F-35戰斗機中成功代替了1553B軍事標準總線。1394總線減少了戰斗機上的線束質量,這不僅增加了戰斗機上各節點間數據傳輸的距離,還在降低了費用的同時增加了可靠性。國內也有部分廠家生產開發1394b總線的接口卡。為了仿真航空系統中1394總線系統的可靠性,需要設計一款地面虛擬仿真設備。
文中主要根據SAE AS5643協議內容,從系統結構、功能描述等方面詳細介紹了三節點仿真卡的設計與實現,對將來的1394總線開發有一定參考價值。
該設計是在PC機環境下,配置3條各自獨立的系統總線接口,各總線擁有獨立軟硬件接口資源,每條總線還包含3個獨立的端口,支持100 Mbps、200 Mbps、400 Mbps三種傳輸速率[1-2],端口間采取變壓器耦合方式隔離。其系統架構框圖如圖1所示。

圖1 三節點仿真卡邏輯系統架構框圖
其中驅動軟件層主要是完成主機應用軟件對下層操作的調度功能。
鏈路層和物理層在三節點仿真卡上主要使用TI公司芯片實現,主要完成標準1394鏈路層[3]和物理層功能[4]。
該設計的主要部分為事務層邏輯功能,主要利用Xilinx的FPGA實現。
三節點仿真卡FPGA邏輯可實現《SAE AS5643-002》[5-6]中規定的數據傳輸、網絡同步、總線狀態轉換及控制、錯誤注入和電源管理等功能[7]。
具體描述如下:
(1)需要支持S100B、S200B、S400B傳輸速率模式的配置能力;
(2)支持上電自動加載總線配置表、自檢測(BIT),及LLC和PHY芯片初始化;
(3)支持異步流數據包傳輸方式;
(4)支持幀周期開始包STOF實現網絡同步,幀周期可配置;
(5)支持節點數據帶寬預分配功能,發送、接收和預測與健康管理包偏移可配置,單位1 μs;
(6)支持根節點、遠程節點的切換;
(7)支持異步流數據包的VPC校驗字自動插入和校驗;
(8)支持基于消息接收時間、消息長度、VPC和CRC的消息完整性檢查;
(9)支持每條消息VPC和CRC錯誤注入功能;
(10)支持物理層芯片電源管理功能。
三節點仿真卡FPGA邏輯包含了PCIE主機接口及DMA、配置表、AS5643協議處理等模塊[8]。
PC主機可通過PCIE總線橋接口邏輯,填寫配置表內容,DMA把將要發送的數據包存入數據DPRAM中,并從數據DPRAM中把保存的接收數據包讀出。AS5643邏輯塊實現數據包的收發操作功能,并控制LLC芯片和PHY芯片。配置DPRAM用于存儲配置表。
3.1 數據緩沖區DPRAM
該模塊主要實現發送接收消息的數據的存儲。對于發送,PCI將數據通過DMA寫入該模塊,數據在該模塊中緩沖,再由AS5643協議模塊取出打包發送;對于接收,接收到的數據存入該模塊,再由DMA取出。
該模塊分為0區和1區兩部分,每個發送或接收緩沖區大小為128 kByte,其中低64 kByte用作緩沖區0,高64 kByte用作緩沖區1。每條發送或接收消息占用固定的2 kByte大小。
發送時,由上層軟件決定消息存儲在緩沖區0或者緩沖區1;接收時,上層軟件按照DMA接收消息緩沖區0區更新標志寄存器,DMA接收消息緩沖區1區更新標志寄存器的內容來確定消息存儲在0區還是1區。
3.2 全局控制模塊
該模塊主要實現了三個節點發送STOF消息、發送接收異步流消息以及中斷信號的整體控制。AS5643協議處理模塊對其只讀,主機對其可進行讀寫操作。該模塊主要由全局寄存器組成,包括中斷狀態、使能、清零寄存器,STOF消息發送控制寄存器,軟復位寄存器。
3.3 主機接口模塊
PCIe模塊[9]的功能是完成從PCIe串行鏈路到用戶端邏輯之間的PCIe協議轉換和數據高速傳輸。該模塊是由PCIe協議處理部分(以下簡稱PCIe核)和專用DMA部分(以下簡稱DMA核)組成。
PCIe PHY和PCIe核符合PCI Express v2.0協議[10],并兼容PCI Express v1.1協議,實現了協議規定的事務層、鏈路層、物理層的功能,支持端點操作。PCIe PHY和PCIe核為用戶提供底層PCIe的綜合狀態信息[11]。
DMA[12]核支持最多2個主機到本地(S2C)及2個本地到主機(C2S)DMA通道,支持用戶端直接控制。
PCIe模塊對外接口是由管理接口、消息接口、配置寄存器接口、Target接口、寄存器接口、DMA數據接口、DMA直接控制接口和主接口等組成。PCIe核事務層上的VC0_TX、VC0_RX接口分別與DMA核發送接收仲裁上的PCIe_TX、PCIe_RX接口相連,用于兩部分之間數據的傳輸。
3.4 AS5643協議處理模塊
該模塊主要實現AS5643協議處理功能[13-14],主要功能模塊包括:寄存器調度模塊、鏈路層芯片接口控制模塊及數據搬運模塊。
AS5643接口實現了主機和鏈路層接口芯片之間的通信,滿足基于IEEE-1394B的用法和需求建立的航空領域網絡傳輸數據總線標準SAE AS5643。FPGA邏輯并配合軟件實現了AS5643總線網絡協議定義的異步流包,固定幀速率,STOF包同步,帶寬預分配,縱向奇偶校驗VPC,匿名簽署消息,通道號的靜態分配等功能。邏輯的基本框圖如圖2所示。

圖2 AS5643邏輯框圖
寄存器主要實現用戶需求所要求的寄存器的功能及主機控制寄存器。
該模塊完成數據包發送控制(以DM接口為控制接口),數據包接收控制(以FIFO接口為控制接口),對鏈路層和物理層芯片的初始化控制,網絡拓撲信息的讀取(總線復位后的自標識包),主機命令的執行和控制,以及接收VPC的檢查等功能。
3.5 數據搬運模塊
數據搬運模塊主要根據寄存器控制模塊發來的啟動信號和寄存器完成STOF包和異步流包數據發送的自動搬運,打包及DPRAM和發送數據包VPC的計算,并將打包計算好的數據填入FIFO中,以供DM模塊發送;同時將發送數據回環寫入DPRAM,以供對發送數據的實時監控,實現BM功能。
文中根據1394協議與AS5643協議要求,首先給出了三節點仿真卡的整體設計,對三節點仿真卡的各模塊詳細設計進行了闡述。該仿真卡能夠實現協議要求,實現數據收發、故障注入、消息完整性檢測等功能,從而通過地面設備虛擬仿真機載總線的可靠性。將來可以在協議基礎上進一步提升數據傳輸帶寬、確定性、實時性等性能,下一方案可逐步支持S800的速率要求。
[1] IEEE1394B-2002,IEEE standard for a high performance serial bus[S].[s.l.]:IEEE,2002.
[2] IEEE Std1394B,IEEE standard for a high-performance serial bus-amendment 2[S].[s.l.]:IEEE,2002.
[3] Li Shiping,Dai Fan,Wang Xudong.The principle and application technology of IEEE-1394 (Fire wire) system[M].Xi’an:Xidian University Press,2004.
[4] Anderson D.Fire Wire系統體系[M].第2版.北京:中國電力出版社,2001.
[5] Wolfram K D,Bloom H J.New radiation-hard high-speed serial data bus for satellite onboard communication[C]//Proceedings of IEEE international conference on geoscience and remote sensing symposium.[s.l.]:IEEE,2004.
[6] SAE AS5643/1 S400 copper mediainterface characteristics over extended distances[S].[s.l.]:IEEE,2004.
[7] SAE-AS5643,IEEE-1394 Binterface requirements for military and aerospace vehicle applications SAE aerospace standard 5643[S].[s.l.]:IEEE,2006.
[8] 常曉明.VerilogHDL實踐與應用系統設計[M].北京:北京航空航天大學出版社,2003:11-21.
[9] 李 攀,田 澤,蔡葉芳,等.基于SOPC的PCI通信接口設計與實現[J].計算機技術與發展,2009,19(9):211-214.
[10] 廖寅龍,田 澤.FC網絡通信中PCIe的接口的設計與實現[J].航空計算技術,2010,40(4):127-130.
[11] 馬鳴錦,朱劍冰,何紅旗,等.PCI,PCI-X和PCI Express的原理及體系結構[M].北京:清華大學出版社,2007.
[12] 單天昌,陸 達.基于FPGA的PCI接口DMA傳輸的設計與實現[J].計算機技術與發展,2010,20(4):215-219.
[13] 詹 鵬.航空高速總線協議AS5643的FPGA實現[J].電訊技術,2013(8):1052-1057.
[14] 趙 彬,田 澤,楊 峰,等.基于AS5643協議的接口模塊設計與實現[J].計算機技術與發展,2013,23(8):100-102.
Design and Implementation of a SAE AS5643 3 Ports Simulation Equipment
HAN Yi-peng1,2,TIAN Ze1,2,NIU Shao-ping1,2
(1.Aeronautics Computing Technique Research Institute,Xi’an 710068,China;2.Aeronautics Science and Technology Key Laboratory of Integrate Circuit and Micro-system Design,Xi’an 710068,China)
With the rapid development of aviation system,accuracy and instantaneity of data transmission are increasingly significant.To address the requirement of new generation aviation system,standard IEEE-1394B bus protocol should be restricted.Thus SAE AS5643 is developed.To simulate the reliability of 1394 bus system in aviation system,a series of ground virtual simulation devices including 3 ports simulation_card are designed.The 3 ports card is a visual simulator to simulate the node function of 1394 buses on the ground.It contains three nodes.In the system 3 ports simulation_card can be linked to system bus through the root node or the remote node,thus achieving AS5643 communication protocol processing and information interaction between peripheral and host system.To test the accuracy of FPGA,the timing simulation of CC simulation card is performed through Xilinx ISE development environment and QustaSim simulator.The design of FPGA is achieved.Designs contains three nodes with the function of data sending or receiving,faults injection,self-setting of heart,self-test of VPC and CRC and so on.
AS5643;FPGA;airborne data bus;simulation_card
2015-06-12
2015-09-18
時間:2016-03-04
中國航空工業集團公司創新基金(2010BD63111)
韓一鵬(1989-),男,助理工程師,研究方向為集成電路設計與驗證;田 澤,博士,研究員,中航首席技術專家,研究方向為SoC設計方法學、嵌入式系統設計、航空專用集成電路設計等。
http://www.cnki.net/kcms/detail/61.1450.TP.20160304.1508.004.html
TP39
A
1673-629X(2016)03-0202-03
10.3969/j.issn.1673-629X.2016.03.047