• 
    

    
    

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

      ?

      基于FPGA的VME總線監(jiān)視模塊的研制

      2019-09-12 09:07:40
      測(cè)控技術(shù) 2019年8期
      關(guān)鍵詞:總線計(jì)數(shù)控制器

      (1.中國(guó)人民解放軍第五七二〇工廠,安徽 蕪湖 241007; 2.南京航空航天大學(xué) 自動(dòng)化學(xué)院,江蘇 南京 210016)

      VME總線[1]全稱為VERSA Module Eurocard Bus,是在VERSA總線的基礎(chǔ)上擴(kuò)展演變而來(lái)的。經(jīng)歷幾十年的發(fā)展,雖然不如PCI、USB等總線應(yīng)用廣泛,但仍憑借其高性能、支持多處理計(jì)算機(jī)系統(tǒng)等優(yōu)勢(shì)在航空航天領(lǐng)域大范圍應(yīng)用。文獻(xiàn)[2]介紹了早期VME接口芯片VIC068A/VIC64;文獻(xiàn)[3]~文獻(xiàn)[5]介紹了應(yīng)用VME接口芯片的方式。

      為滿足后續(xù)新機(jī)VME總線模塊電路板深修的需要,迫切需要加強(qiáng)對(duì)VME總線數(shù)據(jù)監(jiān)視方面的研究。本文在對(duì)VME總線通信規(guī)范進(jìn)行深入分析的基礎(chǔ)上,基于Altera公司FPGA的Nios II嵌入式處理器[6-8],設(shè)計(jì)并研制一塊VME總線監(jiān)視模塊,測(cè)試結(jié)果表明其有效性。所研制的VME總線監(jiān)視模塊能夠?yàn)楹罄m(xù)新機(jī)型中VME總線模塊的測(cè)試與修理提供技術(shù)支撐。

      1 VME總線規(guī)范分析

      本節(jié)介紹VEM總線系統(tǒng)基本架構(gòu)。VME總線主要由4部分構(gòu)成:數(shù)據(jù)傳輸總線、數(shù)據(jù)傳輸總線仲裁總線、優(yōu)先中斷總線和公用總線。圖1為VME總線架構(gòu)。

      ① 數(shù)據(jù)傳輸總線。VME總線的數(shù)據(jù)傳輸總線執(zhí)行異步并行傳輸。由于為異步傳輸所以在數(shù)據(jù)傳輸總線中存在一些控制信號(hào),表明傳輸發(fā)起、已完成或無(wú)法完成等狀態(tài)。其主要信號(hào)線如表1所示。

      ② 數(shù)據(jù)傳輸總線仲裁總線。由于VME總線支持多個(gè)處理器,也就存在同一時(shí)刻多個(gè)處理器需要占用

      圖1 VME總線架構(gòu)

      信號(hào)線名功能A1~A31高31位地址信號(hào)線D0~D3132位數(shù)據(jù)線AM0~AM5地址修改線,用于傳遞附加信息LWORD長(zhǎng)字信號(hào)線DS0、DS1數(shù)據(jù)選通線AS地址選通線,表明地址有效WRITE讀寫線,表明讀或?qū)懖僮鰾ERR錯(cuò)誤線,表明傳輸未能在規(guī)定時(shí)間完成DTACK傳輸應(yīng)答線,表明傳輸被應(yīng)答RETRY表明傳輸不能在此周期內(nèi)完成

      數(shù)據(jù)總線的情況。數(shù)據(jù)傳輸總線仲裁總線用于在此情況下決定誰(shuí)先占用數(shù)據(jù)總線。

      ④ 公共總線。公用總線為系統(tǒng)提供時(shí)鐘、初始化及故障檢測(cè)等功能。

      2 硬件電路設(shè)計(jì)

      圖2為模塊硬件結(jié)構(gòu),整個(gè)模塊包含5個(gè)部分:FPGA最小系統(tǒng)、Flash電路、SDRAM電路、總線緩沖電路、串行接口電路。

      ① FPGA最小系統(tǒng)設(shè)計(jì)。本設(shè)計(jì)所選FPGA為EP3C25F324C8,以其為基礎(chǔ)介紹其最小系統(tǒng)電路設(shè)計(jì)。具體包括時(shí)鐘電路、復(fù)位電路、JTAG電路、配置電路以及其它電路的設(shè)計(jì)。其中時(shí)鐘電路由一個(gè)50 MHz的有源晶振產(chǎn)生;復(fù)位電路由一個(gè)低電平復(fù)位芯片MAX706SESA產(chǎn)生;配置器件選用EPCS16器件;其他電路具體包括FPGA電壓(包括VCCIO、VCCA以及VCCINT電壓)供給、指示燈等電路。

      圖2 監(jiān)視模塊硬件結(jié)構(gòu)框圖

      ③ SDRAM電路設(shè)計(jì)。本設(shè)計(jì)采用的HY57V641620ELTP-5是一款容量為8兆字的CMOS同步DRAM。該器件采用時(shí)鐘上升沿完全同步操作。所有輸入和輸出都與時(shí)鐘輸入的上升沿同步。

      ④ 總線緩沖電路設(shè)計(jì)。VME總線的數(shù)據(jù)、控制信號(hào)通過(guò)8位總線傳輸器74HC245與FPGA相連接。VME總線中數(shù)據(jù)傳輸總線仲裁總線、優(yōu)先中斷總線的菊花鏈信號(hào)通過(guò)8位總線傳輸器SN74LVC4245與FPGA相連接。

      ⑤ 串行接口電路設(shè)計(jì)。本設(shè)計(jì)串行接口電平轉(zhuǎn)換選用器件SP3232EEN。SP3232EEN是一款RS-232收發(fā)器,適用于便攜式應(yīng)用。

      3 模塊軟件設(shè)計(jì)

      由于模塊軟件以SOPC為核心搭建,主要包含兩個(gè)部分:FPGA片內(nèi)邏輯與SOPC應(yīng)用軟件。

      3.1 FPGA片內(nèi)邏輯

      VME監(jiān)視模塊FPGA片內(nèi)邏輯架構(gòu)如圖3所示,總共有2部分組成:SOPC系統(tǒng)和信號(hào)采集模塊。SOPC系統(tǒng)中的通用Flash控制器和SDRAM控制器實(shí)現(xiàn)與外部存儲(chǔ)連接,PIO控制器實(shí)現(xiàn)從信號(hào)采集模塊獲得數(shù)據(jù),UART控制器則負(fù)責(zé)將采集到的信號(hào)向外傳輸。信號(hào)采集模塊負(fù)責(zé)VME總線地址、數(shù)據(jù)及控制信號(hào)的采集。

      圖3 VME監(jiān)視模塊FPGA片內(nèi)邏輯架構(gòu)

      (1) SOPC系統(tǒng)配置。

      本設(shè)計(jì)采用平衡型(NIOS II/s),并配置JTAG調(diào)試接口等級(jí)為等級(jí)1,JTAG調(diào)試接口功能設(shè)置為JTAG目標(biāo)模塊、下載軟件數(shù)據(jù)和軟件斷點(diǎn)。由于本設(shè)計(jì)將軟件程序存儲(chǔ)于Flash中,程序復(fù)位加載位置設(shè)置為CFI Flash控制器。意外加載位置設(shè)置為SDRAM控制器。

      本設(shè)計(jì)中為SOPC添加的外設(shè)接口主要包括:

      ① SDRAM控制器。根據(jù)所選SDRAM型號(hào)HY57V641620ELTP-5設(shè)置參數(shù)SDRAM控制器結(jié)構(gòu)參數(shù):數(shù)據(jù)位寬為16位;存在1個(gè)片選、4個(gè)塊結(jié)構(gòu);地址線行寬為12位、列寬為8位。時(shí)間參數(shù):列選擇(CAS)延時(shí)為3個(gè)時(shí)鐘周期;上電后初始化所需要的延時(shí)2個(gè)周期;刷新時(shí)間間隔為15.625 μs;上電到開(kāi)始初始化之間的延遲時(shí)間100 μs;刷新時(shí)間為70 ns;預(yù)充電時(shí)間為20 ns;列有效與行有效延遲為20 ns;數(shù)據(jù)端口數(shù)據(jù)保持時(shí)間5.5 ns;寫恢復(fù)時(shí)間14 ns。

      ② CFI Flash控制器。Flash芯片與Avalon接口通過(guò)一個(gè)Avalon三態(tài)橋相連接。本設(shè)計(jì)采用的片外存儲(chǔ)閃存為AM29LV128M,通用閃存接口設(shè)置中對(duì)此器件已有預(yù)設(shè)參數(shù),直接設(shè)置為AM29LV128M123R_BYTE的預(yù)設(shè)參數(shù)。

      ③ PIO控制器。PIO控制器是Avalon從接口與I/O端口間的存儲(chǔ)器映像連接口。PIO控制器能產(chǎn)生基于輸入信號(hào)的中斷請(qǐng)求。每個(gè)PIO控制器可提供32個(gè)I/O端口。本設(shè)計(jì)一共配置了7個(gè)PIO控制器,如表2。

      ④ JTAG UART核。JTAG UART核是PC主機(jī)與SOPC Builder系統(tǒng)間通信的一種方式,常用作系統(tǒng)調(diào)試。

      ⑤ UART核。UART核為具有Avalon接口的通用異步接收/發(fā)送器。其可實(shí)現(xiàn)RS-232協(xié)議,設(shè)置波特率、奇偶校驗(yàn)位、停止位、傳輸?shù)臄?shù)據(jù)位以及其他可選的RTS-CTS流控制信號(hào)等。

      ⑥ EPCS設(shè)備控制器。Nios II通過(guò)EPCS控制器訪問(wèn)Altera的EPCS串行配置芯片。

      表2 PIO控制器列表

      (2) 信號(hào)采集模塊。

      該模塊主要對(duì)VME總線上有效的數(shù)據(jù)、地址信息進(jìn)行采集,緩存至64位FIFO,并最終通過(guò)PIO接口傳輸至SOPC系統(tǒng)。該模塊主要對(duì)VME總線上,有效的數(shù)據(jù)、地址信息進(jìn)行采集,緩存至64位FIFO,并最終通過(guò)PIO接口傳輸至SOPC系統(tǒng)。

      由于VME總線上有效電平寬度均高于40 ns,而FPGA邏輯工作頻率為100 MHz。為了防止電平抖動(dòng)對(duì)數(shù)據(jù)采集造成影響,每一個(gè)信號(hào)的電平都必須保持3個(gè)周期穩(wěn)定,才被認(rèn)定為有效電平。

      圖4 信號(hào)采集模塊解析VME總線信號(hào)流程

      圖5 VME主模塊寫入信號(hào)采集模塊監(jiān)視仿真

      圖6 VME主模塊讀取信號(hào)采集模塊監(jiān)視仿真

      3.2 SOPC應(yīng)用軟件

      當(dāng)pio_control_i輸入信號(hào)出現(xiàn)上升沿觸發(fā)中斷,SOPC軟件進(jìn)入接收信號(hào)采集模塊數(shù)據(jù)流程。SOPC系統(tǒng)首先將PIO控制器pio_control_b、pio_control_f所控制I/O端口輸出高電平,代表SOPC正在接收數(shù)據(jù),且處于忙狀態(tài)。之后將pio_data、pio_addr、pio_dir輸入的數(shù)據(jù)按順序依次存入32位緩存數(shù)組,且緩存數(shù)組中每存入一個(gè)輸入計(jì)數(shù)+1。每次輸入計(jì)數(shù)+1后需要判斷計(jì)數(shù)是否超出范圍,若超出則計(jì)數(shù)清0。當(dāng)將數(shù)據(jù)、地址、方向全部存入緩存數(shù)組后,此次接收周期完成,SOPC系統(tǒng)將PIO控制器pio_control_b、pio_control_f所控制I/O端口輸出低電平,表示SOPC系統(tǒng)不忙,傳輸完成,可進(jìn)行下一次傳輸。

      在無(wú)中斷發(fā)生情況下,SOPC軟件循環(huán)檢查輸入計(jì)數(shù)是否等于輸出計(jì)數(shù),若不相等,表示緩存中有串口未發(fā)出的數(shù)據(jù)。串口發(fā)出緩存數(shù)組中第輸出計(jì)數(shù)個(gè)數(shù)據(jù),在檢查UART核status寄存器狀態(tài)是否完成發(fā)送。發(fā)送完成后,輸出計(jì)數(shù)+1。每次輸出計(jì)數(shù)+1后需要判斷計(jì)數(shù)是否超出范圍,若超出則計(jì)數(shù)清0。圖7為SOPC應(yīng)用軟件運(yùn)行流程。

      4 模塊功能驗(yàn)證

      圖8為VME總線監(jiān)視模塊功能驗(yàn)證總體架構(gòu)。運(yùn)用MVME3100作為VME總線主控模塊,發(fā)起對(duì)自身VME總線從空間的數(shù)據(jù)傳輸。當(dāng)監(jiān)測(cè)模塊到傳輸時(shí),將傳輸數(shù)據(jù)通過(guò)SDRAM保存,并通過(guò)串口將傳輸數(shù)據(jù)發(fā)送至上位機(jī)。圖9為VME總線監(jiān)視模塊實(shí)物。

      MVME3100在初始化中將PCI地址空間0x80000000~0x800fffff映射至VME總線空間0x08000000~0x080fffff。本實(shí)驗(yàn)通過(guò)對(duì)VME總線空間0x08000000~0x080fffff進(jìn)行數(shù)據(jù)讀寫。通過(guò)自定義函數(shù)實(shí)現(xiàn)對(duì)VME總線空間的連續(xù)數(shù)據(jù)寫入,且寫入數(shù)據(jù)依次遞增。

      自定義函數(shù)參數(shù)定義如下:

      STATUS testPCItoVME32(

      INT32 address, //數(shù)據(jù)寫入的初始VME空間地址,從該地址起依次向高地址寫入數(shù)據(jù)

      INT32 data, //寫入VME空間的第一個(gè)數(shù)據(jù),此后每次寫入的數(shù)據(jù),在data值基礎(chǔ)上累加

      int n //寫入數(shù)據(jù)個(gè)數(shù)

      )

      圖7 SOPC應(yīng)用軟件運(yùn)行流程

      圖8 模塊功能驗(yàn)證架構(gòu)

      圖9 VME總線監(jiān)視模塊實(shí)物

      圖10為VME監(jiān)視模塊整體功能驗(yàn)證舉例。該例實(shí)現(xiàn)了對(duì)由VME空間地址0x8000000開(kāi)始的連續(xù)100次傳輸?shù)谋O(jiān)視。傳輸?shù)刂?、?shù)據(jù)依次遞增。

      圖10 VME監(jiān)視模塊整體功能驗(yàn)證舉例

      5 設(shè)計(jì)過(guò)程中應(yīng)注意的方面

      在VME總線監(jiān)視模塊的研制過(guò)程中,應(yīng)注意以下幾個(gè)問(wèn)題:

      ② 在基于NIOS II的SOPC架構(gòu)搭建過(guò)程中,由于FPGA內(nèi)部邏輯的延時(shí)影響,所以NIOS II輸入時(shí)鐘與輸入SDRAM應(yīng)存在-75°相角差。

      6 結(jié)束語(yǔ)

      本文在系統(tǒng)掌握VME總線通信過(guò)程與協(xié)議的基礎(chǔ)上,針對(duì)目前國(guó)內(nèi)外VME總線的研制現(xiàn)狀,研制出一種基于FPGA設(shè)計(jì)了VME總線監(jiān)視模塊,對(duì)該模塊的功能進(jìn)行試驗(yàn)驗(yàn)證,結(jié)果表明其有效性。

      猜你喜歡
      總線計(jì)數(shù)控制器
      古人計(jì)數(shù)
      遞歸計(jì)數(shù)的六種方式
      古代的計(jì)數(shù)方法
      基于PCI Express總線的xHC與FPGA的直接通信
      機(jī)載飛控1553B總線轉(zhuǎn)以太網(wǎng)總線設(shè)計(jì)
      這樣“計(jì)數(shù)”不惱人
      多通道ARINC429總線檢查儀
      模糊PID控制器設(shè)計(jì)及MATLAB仿真
      MOXA RTU控制器ioPAC 5542系列
      倍福 CX8091嵌入式控制器
      政和县| 固始县| 商洛市| 黄浦区| 琼中| 扶绥县| 平罗县| 和林格尔县| 沂南县| 普兰店市| 芮城县| 北票市| 东乌珠穆沁旗| 闽侯县| 栖霞市| 新建县| 奈曼旗| 耿马| 元朗区| 宜川县| 来宾市| 武功县| 宁远县| 安远县| 衡水市| 兴义市| 安阳市| 墨竹工卡县| 柞水县| 分宜县| 阳信县| 马关县| 彰化县| 富平县| 蓝山县| 清丰县| 溧阳市| 大渡口区| 乌鲁木齐市| 香港| 永顺县|