<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > FPGA在彈上信息處理機(jī)中的應(yīng)用

          FPGA在彈上信息處理機(jī)中的應(yīng)用

          作者:方超 龔龍慶 田衛(wèi) 西安驪山微山電子公司 時間:2009-04-14 來源:電子產(chǎn)品世界 收藏


            圖2 地面單元測試儀框圖

          本文引用地址:http://www.ex-cimer.com/article/93424.htm

            系統(tǒng)實(shí)現(xiàn)

            信息處理機(jī)的系統(tǒng)工作流程見圖3,具體包括:

            (1)上電復(fù)位及初始化

            上電后,和ARM同時復(fù)位,進(jìn)行初始化過程,其中初始化中, 內(nèi)部寄存器和邏輯狀態(tài)的初始值、內(nèi)部緩沖區(qū)數(shù)據(jù)清零依靠復(fù)位信號來完成,其中的“FPGA參數(shù)設(shè)定”由監(jiān)控程序負(fù)責(zé)執(zhí)行或由FPGA使用缺省參數(shù)完成。

            如果上電或復(fù)位時出現(xiàn)問題,F(xiàn)PGA使用缺省參數(shù)自動初始化所有參數(shù)并自動進(jìn)行后續(xù)工作。

            (2)20ms緩沖區(qū)切換信號同步

            完成初始化后,F(xiàn)PGA內(nèi)部的“20ms緩沖區(qū)切換信號”生成邏輯,自動執(zhí)行和“1.28M同步輸入串口”的同步過程,同步過程中不向外發(fā)送任何數(shù)據(jù),一旦同步后,會給出同步鎖定信號Sync Locked=“1”,所有通道的數(shù)據(jù)采集工作均開始,進(jìn)入遙測信息接收過程。

            (3)遙測信息接收

            通道的數(shù)據(jù)采集都以FPGA內(nèi)部產(chǎn)生的“20ms緩沖區(qū)切換信號SwitchBuf”為20ms周期標(biāo)志進(jìn)行緩沖區(qū)的切換(雙端口),分別為A,B兩個緩沖區(qū)。

            1.28M通道在20ms內(nèi)應(yīng)完成32x100=3200 Bytes的數(shù)據(jù)接收。并根據(jù)字計(jì)數(shù)器反轉(zhuǎn)當(dāng)前的SwitchBuf信號。

            4M 1553B通道應(yīng)由ARM完成4M 1553B總線遙測數(shù)據(jù)的接收、過濾、打包,形成20ms內(nèi)約1500 Bytes的遙測數(shù)據(jù)包填入分配給它的包緩沖區(qū),由FPGA自動生成對應(yīng)的包長度信息放入一個包長度FIFO中。此后,ARM重新開始下一20ms數(shù)據(jù)接收工作,,如此反復(fù)循環(huán)下去。狀態(tài)機(jī)(MFSTM)在過程中,一旦發(fā)現(xiàn)包長度FIFO不空,就從包緩沖區(qū)FIFO中讀取對應(yīng)長度的數(shù)據(jù)包,按照規(guī)定格式和位置填入數(shù)據(jù)表。



          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();