• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于FPGA 的多通道ARINC429 總線測(cè)試系統(tǒng)

      2023-02-14 13:29:22秦旭軍
      電子技術(shù)應(yīng)用 2023年1期
      關(guān)鍵詞:低電平板卡時(shí)序

      孫 驁,秦旭軍

      (中國電子科技集團(tuán)公司第四十七研究所,遼寧 沈陽 110000)

      0 引言

      目前,有大量的機(jī)載設(shè)備在使用ARINC429 總線進(jìn)行數(shù)據(jù)交互,為提高具有ARINC429 接口設(shè)備的測(cè)試效率,降低開發(fā)成本,本文基于FPGA 強(qiáng)大的并行處理能力、豐富的I/O 接口資源以及半定制化的設(shè)計(jì)理念,利用NIOS II 軟核處理器,結(jié)合FPGA 的可編程邏輯端,設(shè)計(jì)了一款多通道ARINC429 總線測(cè)試系統(tǒng)。系統(tǒng)通過PCI接口與計(jì)算機(jī)通信,完成被測(cè)設(shè)備與計(jì)算機(jī)的數(shù)據(jù)交互,實(shí)現(xiàn)ARINC429 總線接口的自動(dòng)化測(cè)試。

      由于PCI 總線以及ARINC429 總線協(xié)議相對(duì)復(fù)雜,本設(shè)計(jì)采用了成熟的總線接口芯片[1?2],降低了系統(tǒng)的開發(fā)難度,其中PCI 接口選用了PCI9054 芯片,ARINC429 接口選用了HI-3584、HI-3182 芯片。即使PCI 總線的設(shè)計(jì)采用了接口芯片,但PCI9054 芯片的功能還是非常繁多,對(duì)此本文介紹了設(shè)計(jì)中PCI9054 芯片選用的模式、數(shù)據(jù)位寬等基本參數(shù)信息,此外重點(diǎn)對(duì)EEPROM 的使用方法、讀/寫操作的時(shí)序分析以及調(diào)試過程中的注意事項(xiàng)進(jìn)行了詳細(xì)闡述,希望能夠達(dá)到抽絲剝繭的目的。

      1 硬件架構(gòu)設(shè)計(jì)

      本設(shè)計(jì)中系統(tǒng)有4 路ARINC429 發(fā)送通道以及8 路接收通道,計(jì)算機(jī)可對(duì)板卡的各個(gè)數(shù)據(jù)通道進(jìn)行參數(shù)配置、狀態(tài)讀取、使能收/發(fā)數(shù)據(jù)等操作。采用可編程邏輯端(以下簡稱邏輯端)與NIOS Ⅱ處理器相結(jié)合的開發(fā)方式[3],邏輯端主要負(fù)責(zé)PCI、ARINC429 等外設(shè)芯片的驅(qū)動(dòng)層邏輯,NIOS Ⅱ軟核處理器主要負(fù)責(zé)完成系統(tǒng)業(yè)務(wù)層功能,硬件功能框圖如圖1 所示。

      圖1 硬件功能框圖

      上位機(jī)收發(fā)ARINC429 數(shù)據(jù)時(shí),SRAM 作為上位機(jī)和板卡之間的數(shù)據(jù)緩沖區(qū),通過PCI 總線實(shí)現(xiàn)上、下位機(jī)的數(shù)據(jù)交換[4],F(xiàn)PGA 將數(shù)據(jù)存儲(chǔ)在SDRAM 中,F(xiàn)PGA中的軟核處理器按照上位機(jī)的指令完成ARINC429 數(shù)據(jù)收發(fā)、狀態(tài)維護(hù)、參數(shù)配置等功能[5]。

      板卡硬件資源主要由FPGA、PCI 接口芯片、電源、SRAM、SDRAM、ARINC429 控制器及其驅(qū)動(dòng)器組成[6?7]。為適應(yīng)不同的應(yīng)用場(chǎng)景,本設(shè)計(jì)采用SDRAM 作為板卡的ARINC429 數(shù)據(jù)存儲(chǔ)區(qū)并分成12 塊,分別對(duì)應(yīng)4 路發(fā)送及8 路接收通道。

      2 FPGA 設(shè)計(jì)

      由于系統(tǒng)功能復(fù)雜并且互連所需的I/O 數(shù)量多,因此選用的FPGA 型號(hào)是Altera 公司的EP4CE30F23C7N,其內(nèi)部有28 848 個(gè)邏輯單元,可用的GPIO 最多可達(dá)328個(gè),滿足設(shè)計(jì)要求。

      設(shè)計(jì)時(shí)在Quartus Ⅱ軟件中創(chuàng)建工程,并用硬件描述語言實(shí)現(xiàn)外設(shè)芯片的邏輯功能,使其滿足芯片的時(shí)序要求。然后使用集成工具Qsys 搭建基于NIOS Ⅱ處理器以及相關(guān)功能IP 核的SOPC 系統(tǒng),本設(shè)計(jì)所用的IP 核有PIO、中斷、定時(shí)器、SRAM 及SDRAM 控制器等。在Quar‐tus Ⅱ軟件中創(chuàng)建頂層文件,將邏輯端的模塊與NIOS Ⅱ處理器的端口在頂層文件進(jìn)行例化實(shí)現(xiàn)互連[8]。FPGA 內(nèi)部邏輯主要由PCI9054 邏輯塊、SRAM 邏輯塊、HI-3584 邏輯塊以及NIOS Ⅱ處理器組成,框圖如圖2 所示。

      圖2 FPGA 邏輯框圖

      PCI 接口的傳輸速度較快,并且本設(shè)計(jì)采用32 位數(shù)據(jù)位寬,而板卡上的SDRAM 讀寫速度較慢,數(shù)據(jù)位寬是16 位,兩者傳輸速度相差很大,系統(tǒng)無法實(shí)時(shí)地將PCI總線上的數(shù)據(jù)寫入SDRAM 中,因此選用一片SRAM 解決讀寫速度相差過大的問題[9]。SRAM 讀寫速度快,當(dāng)上位機(jī)向板卡寫入數(shù)據(jù)時(shí),F(xiàn)PGA 先將PCI 總線上的數(shù)據(jù)暫存在SRAM 中,在上位機(jī)發(fā)送數(shù)據(jù)完成后,F(xiàn)PGA 再將數(shù)據(jù)存入SDRAM,讀取數(shù)據(jù)反之亦然。

      考慮到上位機(jī)收發(fā)數(shù)據(jù)與ARINC429 收發(fā)數(shù)據(jù)都需要使用SDRAM,涉及的仲裁、決策、狀態(tài)判斷比較復(fù)雜,用硬件描述語言來實(shí)現(xiàn)相對(duì)困難,因此設(shè)計(jì)中使用NIOS Ⅱ處理器來完成SDRAM 相關(guān)業(yè)務(wù)。此外,考慮到PCI 總線讀寫速度較快,設(shè)計(jì)中采用邏輯端控制PCI接口芯片與SRAM 的數(shù)據(jù)交互。NIOS Ⅱ處理器與ARINC429 的各個(gè)收發(fā)通道之間用邏輯端分別設(shè)計(jì)了FIFO,它將自動(dòng)控制接口芯片收/發(fā)數(shù)據(jù)。對(duì)NIOS Ⅱ處理器而言收/發(fā)ARINC429 數(shù)據(jù)只需要訪問相應(yīng)FIFO 即可,減小了處理器的使用率。

      3 PCI 接口設(shè)計(jì)

      PCI 接口開發(fā)常見的有兩種:一種是采用CPLD 或FPGA 來實(shí)現(xiàn),采用這種方法時(shí)需要購買相應(yīng)的IP 核,用戶可采用比較簡單的邏輯實(shí)現(xiàn)PCI 總線的通信,但成本較高。另一種是采用PCI 接口芯片,例如PLX 公司的PCI9054、PCI9052[10],這種方法可大幅度降低設(shè)計(jì)難度,開發(fā)者無需投入大量時(shí)間研究總線協(xié)議的詳細(xì)內(nèi)容,接口芯片在系統(tǒng)中充當(dāng)“橋”芯片的作用,可縮短系統(tǒng)的開發(fā)周期,同時(shí)成本相對(duì)也低很多。

      本設(shè)計(jì)采用了第二種方法,采用了PLX 公司的PCI9054 作為PCI 接口芯片[11],該芯片具有成熟度高、成本低的特點(diǎn)。PCI9054 芯片按功能可分為3 類接口:PCI總線接口、本地總線接口以及EEPROM 接口。PCI 總線接口用于完成PCI 協(xié)議相關(guān)的功能,與計(jì)算機(jī)的PCI 總線互連,當(dāng)PCI9054 配置好后PCI 總線上的操作由該芯片來完成。本地總線接口負(fù)責(zé)PCI9054 與FPGA 之間的數(shù)據(jù)交互。EEPROM 接口負(fù)責(zé)讀取外部EEPROM 的配置信息,這些配置信息是PCI9054 的寄存器參數(shù),系統(tǒng)上電后PCI9054 通過EEPROM 進(jìn)行參數(shù)配置,設(shè)計(jì)中選用的型號(hào)是93LC56B。

      當(dāng)EEPROM 為空時(shí)需要特別注意,否則可能會(huì)出現(xiàn)操作系統(tǒng)無法啟動(dòng)或者啟動(dòng)后無法找到板卡的問題。EEPROM 的燒錄有多種方式,本設(shè)計(jì)使用PLX 公司提供PLXMon 軟件進(jìn)行燒錄。首次燒寫時(shí),需要將93LC56B的DI、DO 引腳下拉,同時(shí)PCI9054 的TEST 引腳也下拉,這樣操作系統(tǒng)上電后會(huì)按照PCI9054 內(nèi)部的默認(rèn)參數(shù)進(jìn)行配置。操作系統(tǒng)正常啟動(dòng)后DI、DO 引腳上拉,然后通過PLXMon 軟件進(jìn)行燒錄即可。EEPROM 正確燒錄后,DI、DO 引腳保持上拉即可。

      本設(shè)計(jì)中PCI9054 采用C 模式,本地總線采用32 位數(shù)據(jù)總線,單次讀/寫、DMA 或突發(fā)傳輸模式。在PCI 總線側(cè),PCI9054 會(huì)根據(jù)寄存器的配置自動(dòng)響應(yīng)總線信號(hào),而本地總線的控制需要在FPGA 上實(shí)現(xiàn)。本地總線主要涉及的信號(hào)有:LHOLD、LHOLDA、ADS#、BLAST#、LW/R#、LA[31:2]、LD[31:0]、READY#,其中對(duì)于FPGA 來說關(guān)鍵的輸出信號(hào)是LHOLDA 以及READY#。

      單次寫操作時(shí)序圖如圖3 所示,首先由PCI9054 使能LHOLD 信號(hào)來申請(qǐng)使用本地總線,F(xiàn)PGA 拉高LHOLDA 信號(hào)來做應(yīng)答。然后PCI9054 驅(qū)動(dòng)LW/R#信號(hào),指示本次操作是讀還是寫。在ADS#信號(hào)出現(xiàn)下降沿時(shí),表示地址總線LA[31:2]已經(jīng)有效可用。在ADS#信號(hào)出現(xiàn)上升沿時(shí),由PCI9054 驅(qū)動(dòng)的數(shù)據(jù)總線LD[31:0]上出現(xiàn)有效數(shù)據(jù),此時(shí)READY#需要開始輸出低電平脈沖作為響應(yīng)信號(hào)。在數(shù)據(jù)總線輸出最后一個(gè)數(shù)據(jù)時(shí),PCI9054 驅(qū)動(dòng)BLAST#輸出低電平脈沖。FPGA 檢測(cè)到BLAST#有上升沿時(shí),驅(qū)動(dòng)READY#由低電平變成高電平,以此表示本次的寫操作完成。

      圖3 單次寫操作時(shí)序圖

      單次讀操作時(shí)序圖如圖4 所示,與寫操作類似,但需要注意的是LW/R#信號(hào)是低電平,并且數(shù)據(jù)總線需要由FPGA 來驅(qū)動(dòng)。

      圖4 單次讀操作時(shí)序圖

      不論寫操作還是讀操作,地址總線都是由PCI9054驅(qū)動(dòng),這是因?yàn)楸驹O(shè)計(jì)中PCI 總線通信的發(fā)起者是計(jì)算機(jī),在讀、寫數(shù)據(jù)時(shí)計(jì)算機(jī)作為主機(jī)給出地址。

      此外,突發(fā)模式以及DMA 模式的時(shí)序與此類似,重點(diǎn)是LHOLDA、READY#信號(hào)以及對(duì)數(shù)據(jù)總線的控制。經(jīng)過多次調(diào)試發(fā)現(xiàn)如果LHOLDA、READY#信號(hào)響應(yīng)不及時(shí)會(huì)導(dǎo)致計(jì)算機(jī)死機(jī)。

      4 ARINC429 接口設(shè)計(jì)

      ARINC429 總線協(xié)議是由美國航空電子工程委員會(huì)制定的一種機(jī)載總線規(guī)范,該總線具有性能穩(wěn)定、架構(gòu)簡單以及可靠性高等優(yōu)點(diǎn),已廣泛應(yīng)用于民用、軍用飛機(jī)的航電系統(tǒng)中。

      本設(shè)計(jì)中ARINC429 接口的控制器采用HOLT 公司的HI-3584 芯片,驅(qū)動(dòng)器采用HI-3182 芯片。HI-3584 具有兩路接收和一路發(fā)送通道,發(fā)送端需要驅(qū)動(dòng)器才能連接在ARINC429 總線上,每個(gè)通道各自有獨(dú)立的FIFO。FPGA 與HI-3584 的數(shù)據(jù)總線是16 位的,通過2 次數(shù)據(jù)交互將16 位 數(shù)據(jù)變?yōu)?2 位ARINC429 數(shù)據(jù)[12]。在FPGA 側(cè)來看,收/發(fā)ARINC429 數(shù)據(jù)相當(dāng)于操作常規(guī)FIFO,使用起來非常方便。

      HI-3182 芯片的供電需要+5 V、±15 V,它將HI-3584發(fā)送端的邏輯電平轉(zhuǎn)換為ARINC 429 電平。在使用時(shí)注意它的調(diào)速電容,總線工作在100 KB/s 時(shí),推薦選用75 pF;工作在12.5~14 KB/s 時(shí),推薦選用500 pF。

      發(fā)送數(shù)據(jù)時(shí),F(xiàn)PGA 驅(qū)動(dòng)PL1n 輸出低電平脈沖,HI-3584 接收第一個(gè)16 位數(shù)據(jù),再驅(qū)動(dòng)PL2n 輸出低電平脈沖,HI-3584 接收到第二個(gè)16 位數(shù)據(jù)后TX/R 會(huì)變?yōu)榈碗娖?,表示FIFO 已經(jīng)不為空。FPGA 檢測(cè)到TX/R 為低電平后拉高ENTX,HI-3584 會(huì)將FIFO 中的數(shù)據(jù)逐個(gè)發(fā)出。FPGA 拉低ENTX 后發(fā)送數(shù)據(jù)結(jié)束,寫入FIFO 以及發(fā)送數(shù)據(jù)的時(shí)序圖分別如圖5 及圖6 所示。

      圖5 寫入FIFO 時(shí)序圖

      圖6 發(fā)送數(shù)據(jù)時(shí)序圖

      接收數(shù)據(jù)時(shí),F(xiàn)PGA 檢測(cè)到D/Rn 為低電平,先拉低SEL 驅(qū)動(dòng)ENn 輸出低電平脈沖,接收第一個(gè)16 位數(shù)據(jù)。然后拉高SEL 再次驅(qū)動(dòng)ENn 輸出低電平脈沖,接收第二個(gè)16 位數(shù)據(jù),時(shí)序圖如圖7 所示。

      圖7 接收數(shù)據(jù)時(shí)序圖

      5 驗(yàn)證與測(cè)試

      5.1 時(shí)序驗(yàn)證

      在SignalTapⅡ邏輯分析儀下觀測(cè)到的PCI9054 以及HI-3584 的時(shí)序分別如圖8~圖11 所示,可見設(shè)計(jì)的時(shí)序與芯片手冊(cè)相符。

      圖8 PCI9054 寫操作實(shí)測(cè)時(shí)序圖

      圖9 PCI9054 讀操作實(shí)測(cè)時(shí)序圖

      圖10 HI-3584 寫入FIFO 實(shí)測(cè)時(shí)序圖

      圖11 HI-3584 接收數(shù)據(jù)實(shí)測(cè)時(shí)序圖

      5.2 ARINC429 總線波形測(cè)試

      ARINC429 總線在12.5 KB/s、100 KB/s 下的實(shí)測(cè)波形如圖12、圖13 所示。由圖中可見信號(hào)的上升沿、下降沿具備單調(diào)性,無明顯過沖、振鈴等嚴(yán)重失真現(xiàn)象,信號(hào)的保持時(shí)間較長,滿足信號(hào)完整性方面的要求。

      圖12 12.5 KB/s 下的實(shí)測(cè)波形圖

      圖13 100 KB/s 下的實(shí)測(cè)波形圖

      5.3 系統(tǒng)整體測(cè)試

      為驗(yàn)證系統(tǒng)的功能及實(shí)用性,本設(shè)計(jì)對(duì)系統(tǒng)進(jìn)行了整體測(cè)試,上位機(jī)界面如圖14 所示。測(cè)試前需要在界面中加載配置文件以及數(shù)據(jù)文件。配置文件包括系統(tǒng)的主要參數(shù)配置,包括中斷方式、緩沖區(qū)大小、發(fā)送/接收時(shí)間間隔、總線速率等。數(shù)據(jù)文件包含了ARINC429總線的測(cè)試數(shù)據(jù)。

      測(cè)試時(shí),板卡的ARINC429 總線接口與被測(cè)設(shè)備的發(fā)送、接收接口互聯(lián)。上位機(jī)通過PCI 總線將測(cè)試數(shù)據(jù)傳送給板卡,板卡再將數(shù)據(jù)傳送給被測(cè)設(shè)備。被測(cè)設(shè)備接收數(shù)據(jù)后,將數(shù)據(jù)通過板卡傳回上位機(jī),以此實(shí)現(xiàn)回環(huán)測(cè)試。上位機(jī)將發(fā)送數(shù)據(jù)與接收數(shù)據(jù)進(jìn)行對(duì)比,全部相同則判定相應(yīng)的通道為合格。

      本設(shè)計(jì)對(duì)ARINC429 總線的4 路發(fā)送、8 路接收通道分別在12.5 KB/s、100 KB/s 下做了1 000 次的通信測(cè)試,均合格。

      6 結(jié)論

      本設(shè)計(jì)研究了PCI 總線以及ARINC429 總線的軟硬件設(shè)計(jì),通過FPGA 作為主控芯片,PCI9054、HI-3584 作為接口芯片,從工程應(yīng)用角度出發(fā),實(shí)現(xiàn)了計(jì)算機(jī)和ARINC429 總線設(shè)備的高效、多通道通信,并可配置成多種模式,適用于大多數(shù)ARINC429 接口設(shè)備的測(cè)試。本設(shè)計(jì)對(duì)PCI 總線及ARINC429 總線的互聯(lián)、測(cè)試具有指導(dǎo)性意義,提高了ARINC429 接口設(shè)備的測(cè)試效率,降低了系統(tǒng)開發(fā)難度。

      經(jīng)驗(yàn)證測(cè)試,系統(tǒng)在不同的ARINC429 總線速率下都可以穩(wěn)定、可靠工作,并具有成本低、高可靠性、開發(fā)周期短等特點(diǎn),具備實(shí)際應(yīng)用意義。

      猜你喜歡
      低電平板卡時(shí)序
      時(shí)序坐標(biāo)
      數(shù)字電路中“邏輯非”的用法辨析
      基于Sentinel-2時(shí)序NDVI的麥冬識(shí)別研究
      鐵道車輛高/低電平信號(hào)智能發(fā)生器設(shè)計(jì)
      2017款凱迪拉克2.8L/3.0L/3.2L/3.6L車型低電平參考電壓總線電路圖
      基于PCI9054的多總線通信板卡的研制
      基于FPGA的多通道模擬量采集/輸出PCI板卡的研制
      一種毫米波放大器時(shí)序直流電源的設(shè)計(jì)
      電子制作(2016年15期)2017-01-15 13:39:08
      一種基于光纖數(shù)據(jù)傳輸?shù)亩喟蹇ㄜ浖绦驘龑懠夹g(shù)
      一種通用模擬量及開關(guān)量信號(hào)采集板卡的設(shè)計(jì)
      五华县| 会理县| 兴和县| 蒲江县| 汾西县| 武隆县| 鸡泽县| 颍上县| 普兰店市| 延寿县| 汝南县| 玛纳斯县| 定日县| 桃园县| 恩平市| 五指山市| 秦安县| 伊宁市| 余江县| 乌恰县| 克什克腾旗| 平遥县| 吴川市| 凤阳县| 黄陵县| 砀山县| 舞钢市| 通城县| 霍山县| 手游| 冕宁县| 独山县| 仙桃市| 双牌县| 孟村| 北宁市| 双鸭山市| 贞丰县| 建湖县| 榆中县| 浙江省|