亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于FPGA和PCI的AFDX終端接口卡設計

        2011-06-03 09:14:34郭利鋒李俊鵬
        電子技術應用 2011年8期
        關鍵詞:設計

        郭利鋒,王 勇,尹 路,李俊鵬

        (空軍工程大學 工程學院,陜西 西安 710038)

        航空電子系統(tǒng)的發(fā)展已成為現(xiàn)代飛機性能不斷提高的重要因素。以ARINC429和1553B為代表的現(xiàn)役機載總線已不能滿足現(xiàn)代航空電子系統(tǒng)對通信速度和帶寬的要求。美國航空電子技術委員會(AEEC)提出了航空電子全雙工交換式以太網(wǎng)AFDX(Avionics Full Duplex Switched Ethernet),它是在商用交換式以太網(wǎng)的基礎上,經(jīng)過實時性和可靠性等方面的改進建立起來的,符合IEEE802.3和ARINC664規(guī)范。

        AFDX是一種全雙工、高數(shù)據(jù)率、雙冗余的總線,具有傳輸速度快、易擴展、可維護性好等優(yōu)點,可以有效減少系統(tǒng)布線,減輕飛機重量。不僅能滿足航空電子系統(tǒng)數(shù)據(jù)通信對帶寬的需求,并已成功應用于A380和B787,也是我國新研制大型客機的理想選擇[1]。作為AFDX的重要組成部分,終端接口卡性能的好壞直接影響到AFDX網(wǎng)絡的整體性能。因此,設計可靠性高、實時性好、滿足實際應用需求的AFDX終端接口卡具有廣闊的應用前景和良好的經(jīng)濟、軍事效益。

        1 AFDX終端接口卡總體設計

        依據(jù)ARINC664規(guī)范對終端系統(tǒng)的要求,在參考了參考文獻[2]對終端協(xié)議芯片的設計和相關成熟產品的基礎上,提出一種AFDX終端接口卡的設計方案。該接口卡性能特點為:采用Stratix II系列FPGA芯片實現(xiàn)協(xié)議棧主要功能,可以實現(xiàn)256個傳輸虛鏈路(最多2 048個接收虛鏈路);獨立的MAC核簡化了設計,保證了系統(tǒng)的穩(wěn)定性和100 Mb/s的傳輸速率;PCI總線可實現(xiàn) 132~264 Mb/s的高速數(shù)據(jù)傳輸,最大限度地滿足接口卡對時延的性能要求;2個100/10 Mb/s端口,實現(xiàn)全雙工的雙冗余通道。AFDX終端接口硬件框圖如圖1所示。

        FPGA模塊是系統(tǒng)的核心協(xié)議芯片,實現(xiàn)AFDX協(xié)議棧的主要功能,包括流量整形、虛鏈路調度、完整性檢查、冗余管理等。MAC模塊連接物理層和FPGA,為數(shù)據(jù)的發(fā)送和接收提供數(shù)據(jù)接口和控制接口,控制PHY進行發(fā)送和接收。PHY模塊實現(xiàn)以太網(wǎng)的物理層接口功能。PCI接口電路是主機連接AFDX終端接口卡的橋梁,提供主機和接口卡間高速、雙向交互數(shù)據(jù)的接口。CPU模塊是系統(tǒng)的核心控制模塊,協(xié)調各模塊之間的工作,實現(xiàn)AFDX協(xié)議棧UDP、IP層的功能。

        圖1 AFDX端系統(tǒng)接口卡硬件框圖

        2 AFDX終端接口卡的關鍵模塊設計

        2.1 FPGA芯片設計

        航空電子系統(tǒng)的運行環(huán)境特殊,對AFDX終端接口卡芯片的性能參數(shù)、工作溫度和穩(wěn)定性的要求高,因此,應選用集成度高、邏輯資源和存儲器資源豐富、速度快、可以完成復雜的時序與組合邏輯電路功能的芯片。普通商業(yè)級的FPGA無法勝任,必須要采用工業(yè)級FPGA。綜合考慮各方面因素,本接口卡選用Altera公司Stratix II EP2S180系列FPGA。FPGA芯片的內部功能結構如圖2所示。

        配置數(shù)據(jù)存儲器在片內控制器的作用下完成終端接口卡的初始化,對有關硬件進行配置。初始化完成后,即可進行數(shù)據(jù)的發(fā)送和接收工作。發(fā)送數(shù)據(jù)時,CPU模塊經(jīng)PCI接口通過DMA方式,將航空電子系統(tǒng)中的數(shù)據(jù)幀傳送到發(fā)送數(shù)據(jù)緩存器中;發(fā)送模塊按照調度算法將數(shù)據(jù)幀調度到相應VL中,為數(shù)據(jù)幀添加序列號(SN)后,同時發(fā)往MAC A和MAC B;接收數(shù)據(jù)時,PHY模塊將數(shù)據(jù)幀發(fā)送至 MAC模塊(MAC A和 MAC B),經(jīng) MAC模塊CRC校驗后發(fā)送至接收模塊。接收模塊將MAC模塊傳來的數(shù)據(jù)存入自身緩存中,并進行完整性檢查和冗余管理;CPU檢測到已收到新數(shù)據(jù)幀后啟動DMA,將數(shù)據(jù)幀送至航空電子系統(tǒng)。數(shù)據(jù)緩存器用于存儲發(fā)送和接收過程中的數(shù)據(jù)。

        2.1.1 接收模塊

        數(shù)據(jù)接收模塊負責接收從MAC送來的數(shù)據(jù),實現(xiàn)完整性檢查,消除從冗余通道接收的重復有效幀。該模塊包括完整性檢查模塊、冗余檢查模塊、SN表和包分棟器。

        完整性檢查模塊校驗每個從MAC模塊傳來的接收幀是否具有該VL所期待的SN。冗余檢查模塊接收所有經(jīng)過完整性檢查的合法幀,若接收到兩個具有相同SN號的幀時,將轉發(fā)先接收到的,然后丟棄第二個。SN表存儲接口卡各接收虛鏈路最后收到幀的SN,用于完整性檢查[2]。VL號映射表存儲各接收VL的邏輯VL號與物理VL號的對應關系。查詢該映射表,可得到VL的邏輯VL號所對應的物理VL號。包分揀器根據(jù)VL號判斷到來的幀屬于哪條虛鏈路,并將該幀存入該虛鏈路對應的數(shù)據(jù)接收緩存中[3]。

        2.1.2 發(fā)送模塊

        發(fā)送模塊實現(xiàn)流量整形、多路復用及傳輸端冗余控制(TRC)功能。該模塊包括:寄存器模塊、虛鏈路調度模塊、傳輸端冗余控制。

        寄存器模塊存儲發(fā)送模塊所用到的信息,如VL的BAG值(帶寬分配間隔)、Lmax值(最大幀長度)等。虛鏈路調度模塊由整形模塊和多路復用模塊組成。為消除虛鏈路相互競爭引入的抖動,本設計的虛鏈路調度方案使用周期為125 μs的靜態(tài)調度方法。整形模塊負責確保每一條VL都遵守它所分配的帶寬限制,控制并監(jiān)視BAG和Jitter定時器,使數(shù)據(jù)流以比較均勻的速度向外發(fā)送,限制VL上的突發(fā)流量。通過多路復用技術將整形后的虛鏈路的幀合并到一條物理鏈路上,并確保多路復用后輸出的抖動在可接受的范圍內。傳輸端冗余控制(TRC)模塊的主要作用是根據(jù)調度模塊的輸入決定將要傳送幀的目的地,可以只傳送給MAC A和MAC B中的一個,也可以同時傳送給MAC A和MAC B。

        2.2 MAC模塊

        為簡化設計,本系統(tǒng)采用ACTEL公司的兩個Core10/100 Ethernet IP核建立兩個獨立的通道。該IP核具有100 Mb/s的傳輸速率,已經(jīng)在實驗和實際應用中多次驗證符合IEEE802.3標準和ARINC664規(guī)范,可較好地實現(xiàn)MAC功能,其主要組成模塊及關系如圖3所示[4]。

        控制、狀態(tài)寄存器及控制邏輯(CSR)模塊向外部模塊提供控制接口和MII管理接口,包含控制寄存器、狀態(tài)寄存器及控制邏輯。主機通過CSR模塊實現(xiàn)對Core10/100的中斷控制和電源管理,從而達到控制IP核的目的。數(shù)據(jù)控制模塊將外部模塊需要發(fā)送的數(shù)據(jù)存入內部的發(fā)送FIFO中,等待發(fā)送,并自動使用CPU間隙將接收FIFO中收到的數(shù)據(jù)發(fā)往外部模塊。發(fā)送、接收FIFO分別用于暫存待發(fā)送的數(shù)據(jù)和接收到的數(shù)據(jù),為外部存儲器工作于FIFO模式提供接口。發(fā)送及接收控制模塊作為發(fā)送及接收的MII接口,控制PHY芯片進行數(shù)據(jù)的發(fā)送與接收。發(fā)送控制模塊從發(fā)送FIFO中讀取待發(fā)送數(shù)據(jù),形成幀,并通過MII接口發(fā)送數(shù)據(jù)幀;接收控制模塊通過接收MII把數(shù)據(jù)從外部PHY設備傳送到接收數(shù)據(jù)存儲器中,并完成地址過濾。

        主機與IP核之間的數(shù)據(jù)交換是通過FIFO緩存器進行的。數(shù)據(jù)交換包括發(fā)送和接收兩個獨立的過程,這兩個過程都存在三種狀態(tài):運行、終止和暫停。發(fā)送和接收進程各有一個描述符列表,位置由CSR中的寄存器來定義。Core10/100執(zhí)行載波監(jiān)聽多路訪問/沖突檢測(CSMA/CD)算法來解決沖突[4]。其算法流程如圖4所示。

        2.3 PCI接口模塊

        2.3.1 硬件設計

        圖4 CSMA/CD算法流程圖

        為避免設計所有PCI總線協(xié)議需要的接口邏輯,減輕工作難度,本設計采用PLX公司的64 bit總線控制器PCI9656。PCI9656與FPGA連接如圖5所示。

        PCI9656符合 PCI V2.2協(xié)議,支持32/64 bit、33/66 MHz時鐘,采用流水線架構技術可以支持7個外部主控器,支持多路復用,可直接生成所有的控制、地址和數(shù)據(jù)信號以驅動PCI總線,而不需要額外驅動電路。

        圖5 PCI9656與FPGA連接圖

        根據(jù)需要,將PCI地址空間劃分為用戶配置空間、發(fā)送緩沖空間和接收緩沖空間。EEPROM作為配置信息存儲器,在控制器的作用下完成對PCI設備的初始化配置。本設計采用0類配置空間,需配置的信息包括設備的廠商、類別、設備所申請的存儲器和I/O空間、設備的中斷信息及工作方式等。

        申請局部總線控制權時,PCI9656使LHOLD變高;FPGA檢測到LHOLD變高后,立即回應 LHOLDA,總線申請成功。讀數(shù)據(jù)時,PCI9656先使變低,下一個周期使變低,并根據(jù)地址高兩位進行譯碼,選擇要訪問的SDRAM控制器模塊,使能SDRAM;當FPGA發(fā)出信號有效后,從SDRAM中讀數(shù)據(jù)。寫數(shù)據(jù)時,PCI9656使變高,下一個周期使變低,此時地址有效,并根據(jù)地址高兩位進行譯碼,選擇要訪問的SDRAM控制器模塊,使能SDRAM;當FPGA發(fā)出信號有效后,把數(shù)據(jù)寫到SDRAM中。當數(shù)據(jù)傳輸結束時,PCI9656使信號無效、變高,下一個時鐘周期撤銷LHOLD,再下一個周期FPGA會撤銷LHOLDA信號,至此取消總線成功。

        2.3.2 驅動程序

        本設計設備驅動程序采用微軟的WDM驅動程序模式,實現(xiàn)即插即用。驅動程序的開發(fā)和調試采用Driver-Studio開發(fā)工具包中的DriverWorks和SoftICE作為主要的工具。

        設計驅動程序主要需要考慮四方面因素:PCI設備的硬件訪問;中斷處理;DMA數(shù)據(jù)傳輸和安全性、穩(wěn)定性、可靠性。為實現(xiàn)AFDX對數(shù)據(jù)傳輸實時性的要求,設備驅動程序采用中斷方式。為滿足快速傳送數(shù)據(jù)、I/O響應時間短和CPU額外開銷小的需求,采用DMA的塊傳輸方式進行數(shù)據(jù)傳輸。為保證驅動程序的可靠性和穩(wěn)定性,設計采用Windows 98/2000/XP內核模式的標準驅動程序例程。

        驅動程序可分為兩部分,一部分用于PCI9656各個配置寄存器賦值并初始化;另一部分用于主程序,用來完成PCI9656與主機CPU之間的數(shù)據(jù)交互。使用DriverStudio中的DriverWizard創(chuàng)建PCI驅動程序框架,采用VC++6.0的面向對象設計思想創(chuàng)建了接口芯片抽象類C_PCI9656,將PCI9656芯片的屬性和需實現(xiàn)的操作封裝起來。在頭文件Register_PCI9656.h中定義PCI9656提供的內部寄存器,包括PCI配置寄存器、DMA寄存器、運行時間寄存器和消息隊列寄存器等。資源分配通過IRP(I/O Request Packe)例程實現(xiàn)。DMA傳輸流程如圖6所示[5]。

        圖6 DMA傳輸流程圖

        首先在應用程序中創(chuàng)建一個事件對象,將該事件傳遞給驅動程序并產生中斷,中斷例程判讀中斷來源。若是Local中斷,則應用程序發(fā)送DMA讀寫命令,該操作將IRP傳遞給驅動調用 SerialRead()或SerialWrite()例程,運行回調例程OnDmaReady()判定是否符合DMA傳輸條件并開啟StartDMA()例程實現(xiàn) DMA傳輸,產生DMA中斷;若是DMA中斷,則調用OnDmaReady()例程判定DMA傳輸是否結束,未結束則再一次開啟StartDMA()例程繼續(xù)DMA傳輸并產生中斷。如此循環(huán)一直到完成所有的DMA傳輸,應用程序結束線程。為提高設備驅動程序的安全性和可靠性,在設計中采用自旋鎖來保護共享數(shù)據(jù)和設備寄存器,編寫程序時嚴格遵循編程規(guī)范和C++語言標準語法格式。

        3 仿真與測試

        基于本文的設計方案,借助Altera公司的Quartus II軟件對AFDX接口卡的關鍵模塊進行了功能和時序仿真。發(fā)送模塊時序仿真如圖7所示。當主機需要發(fā)送數(shù)據(jù)時,通過給發(fā)送模塊發(fā)送一個脈沖信號TxStartFrm來指示數(shù)據(jù)幀發(fā)送的開始,發(fā)送模塊檢測到這個脈沖后使發(fā)送使能MTxEn有效,開始數(shù)據(jù)的發(fā)送。由圖7可知,發(fā)送模塊發(fā)送的數(shù)據(jù)與待發(fā)送數(shù)據(jù)一致,較好地完成了發(fā)送模塊的功能。

        圖7 發(fā)送模塊時序仿真

        接收模塊時序仿真如圖8所示。當接收開始信號RxStartFrm有效時,RxValid信號被置為可用狀態(tài),開始數(shù)據(jù)的接收過程。接收MRxD表示從MAC發(fā)送過來的數(shù)據(jù)。由圖8可知,接收模塊工作正常,較好地完成了接收模塊的功能,滿足設計的要求。

        圖8 接收模塊時序仿真

        在對系統(tǒng)的功能和時序進行仿真并保證仿真正確的基礎上,將協(xié)議芯片的設計下載到Altera公司生產的Stratix II系列的 EP2S180F1020C5中,并使用 Sniffer協(xié)議分析軟件進行在線系統(tǒng)驗證。驗證表明,該協(xié)議芯片最高工作頻率可達152.64 MHz,滿足AFDX協(xié)議對時延和抖動的要求,且能正確、完整地完成發(fā)送和接收功能,通信正常。使用SoftICE調試了PCI驅動程序,結果表明,驅動程序能正確加載,能實現(xiàn)對硬件的正確驅動和控制管理,中斷正常,當PCI傳輸大量的數(shù)據(jù)時,數(shù)據(jù)傳輸也正確。

        本文根據(jù)ARINC664規(guī)范和AFDX協(xié)議對接口卡時延和抖動的性能要求,提出了一種基于FPGA和PCI的AFDX終端接口卡設計方案,給出了關鍵模塊的詳細設計,編寫了總線接口驅動程序。使用Quartus II軟件對各功能模塊進行了功能和時序仿真,并搭建測試平臺進行初步測試驗證。結果表明,本文提出的設計方案可行性好,穩(wěn)定性高,傳輸速度快,時延小,抖動始終小于最大抖動,符合要求,為下一步的研究開發(fā)提供了可借鑒經(jīng)驗。

        [1]徐科華.AFDX總線網(wǎng)絡數(shù)據(jù)傳輸分析[J].民用飛機設計與研究,2009(3):35-40.

        [2]張志,翟正軍,姚方圓.基于FPGA的AFDX端系統(tǒng)協(xié)議芯片的設計與實現(xiàn)[J].計算機測量與控制,2010,18(2):422-442.

        [3]任向隆,馬捷中.航空電子全雙工交換式以太網(wǎng)終端系統(tǒng)研究[J].計算機測量與控制,2009,17(5):924-926.

        [4]Actel Corporation.Core 10/100 ethernet media access controller,actel corporation[EB/OL].http://www.actel.com.2005.

        [5]尹朕昊,詹亞鋒.PCI總線中DMA高速數(shù)據(jù)傳輸?shù)脑O計與實現(xiàn)[J].電腦開發(fā)與應用,2009,22(11):31-32.

        猜你喜歡
        設計
        二十四節(jié)氣在平面廣告設計中的應用
        河北畫報(2020年8期)2020-10-27 02:54:06
        何為設計的守護之道?
        《豐收的喜悅展示設計》
        流行色(2020年1期)2020-04-28 11:16:38
        基于PWM的伺服控制系統(tǒng)設計
        電子制作(2019年19期)2019-11-23 08:41:36
        基于89C52的32只三色LED搖搖棒設計
        電子制作(2019年15期)2019-08-27 01:11:50
        基于ICL8038的波形發(fā)生器仿真設計
        電子制作(2019年7期)2019-04-25 13:18:16
        瞞天過?!律O計萌到家
        藝術啟蒙(2018年7期)2018-08-23 09:14:18
        設計秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        有種設計叫而專
        Coco薇(2017年5期)2017-06-05 08:53:16
        從平面設計到“設計健康”
        商周刊(2017年26期)2017-04-25 08:13:04
        91麻豆精品一区二区三区| 亚洲男人的天堂网站| 国产人成精品综合欧美成人| 久久无码中文字幕东京热| 亚洲男同免费视频网站| 人人妻人人澡人人爽欧美一区双| 久久精品亚洲中文字幕无码网站| 国产一区二区丰满熟女人妻| 亚洲五月天中文字幕第一页| 极品少妇xxxx精品少妇偷拍| 内谢少妇xxxxx8老少交| 国产日韩欧美911在线观看| 国产风骚主播视频一区二区| 久久精品99国产精品日本| 色一情一乱一伦一区二区三区日本 | 人妻少妇喷水意淫诱惑| 91九色最新国产在线观看| 韩国三级中文字幕hd| 国产特级全黄一级毛片不卡| 免费黄色电影在线观看| 探花国产精品三级在线播放| 我揉搓少妇好久没做高潮 | 国产成人无码免费视频在线| 精品无码AV无码免费专区| 日韩精品资源在线观看免费| www夜插内射视频网站| 亚洲av成人片色在线观看高潮| 国农村精品国产自线拍| 亚洲综合久久一本久道| 看女人毛茸茸下面视频| 国产精品一区二区无线| 99久久综合九九亚洲| 精品国产女主播一区在线观看| 久久久久人妻精品一区三寸| 欧美做受视频播放| 免费毛片一区二区三区女同| 少妇被猛烈进入到喷白浆| 末发育娇小性色xxxxx视频| A亚洲VA欧美VA国产综合| 国产激情综合五月久久| 末成年女a∨片一区二区|