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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 一種基于FPGA+ARM架構(gòu)HDLC協(xié)議控制器設(shè)計(jì)

          一種基于FPGA+ARM架構(gòu)HDLC協(xié)議控制器設(shè)計(jì)

          作者: 時(shí)間:2014-07-22 來源:網(wǎng)絡(luò) 收藏

            

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

           

            在發(fā)送端,接收到啟動(dòng)發(fā)送指令后,發(fā)送相應(yīng)個(gè)數(shù)幀頭0x7E,然后將數(shù)據(jù)從發(fā)送FIFO中取出,進(jìn)行并串轉(zhuǎn)換,在根據(jù)設(shè)置的時(shí)鐘TCLK的下降沿,逐位發(fā)送數(shù)據(jù)到Tx線路上,并且在連續(xù)發(fā)送了5個(gè)比特“1”后,自動(dòng)插入比特“0”,發(fā)送結(jié)束后發(fā)送相應(yīng)個(gè)數(shù)幀尾0x7E,結(jié)束該次發(fā)送。發(fā)送幀狀態(tài)轉(zhuǎn)移圖如圖4所示。

            

           

            2.3 數(shù)據(jù)處理單元

            數(shù)據(jù)處理單元主要完成信息的幀的CRC校驗(yàn)和打包解包任務(wù),其處理芯片采用意法半導(dǎo)體的STM32F103系列芯片,該芯片具有開發(fā)簡單靈活,成本較低的優(yōu)勢。數(shù)據(jù)處理單元對(duì)數(shù)據(jù)的處理同樣包括接收和發(fā)送兩部分,以接收為例,具體工作流程圖如圖5所示。

            當(dāng)進(jìn)入接收中斷進(jìn)程時(shí),首先讀空接收FIFO,其中最后兩次讀出的數(shù)據(jù)為該幀信息的CRC校驗(yàn)碼,利用該校驗(yàn)碼進(jìn)行CRC校驗(yàn),校驗(yàn)采用CRC-16-CCITT標(biāo)準(zhǔn),生成r取值為16,其生成多項(xiàng)式為:C(x)=x16+x12+x2+1傳統(tǒng)CRC校驗(yàn)是對(duì)消息逐位處理,對(duì)于來說,這樣效率是很低的。為了提高時(shí)間效率,通常的思想是以空間換時(shí)間。考慮到內(nèi)循環(huán)只與當(dāng)前的消息字節(jié)和crc_reg的低字節(jié)有關(guān),針對(duì)crc_reg低字節(jié)建立數(shù)表進(jìn)行查詢相應(yīng)的CRC校驗(yàn)碼,最終循環(huán)完畢如果沒有差錯(cuò)發(fā)生則結(jié)果應(yīng)為0。

            發(fā)送單元與接收單元類似,為其逆過程,首先將信息按約定幀格式打包,然后進(jìn)行CRC校驗(yàn),將校驗(yàn)碼放入信息幀的最后2個(gè)字節(jié),并將該信息幀通過數(shù)據(jù)總線存入的發(fā)送FIFO中,最后寫入發(fā)送標(biāo)志字,啟動(dòng)發(fā)送傳輸控制邏輯。

            3 驗(yàn)證及結(jié)果

            為完成設(shè)計(jì),首先采用ModelSim進(jìn)行仿真驗(yàn)證,如圖6所示通過激勵(lì)文件生成ARM與FPCA的讀寫時(shí)序,給出符合幀格式的一組數(shù)據(jù)寫入發(fā)送FIFO,并啟動(dòng)發(fā)送,在激勵(lì)文件中將RX/RCLK與TX/TCLK短接,形成回環(huán),F(xiàn)PGA根據(jù)協(xié)議控制器接收到數(shù)據(jù),并將數(shù)據(jù)存入接收FIFO,完成驗(yàn)證。其邏輯時(shí)序滿足HDLC協(xié)議幀格式和通信時(shí)序要求。

            

           

            最后按照設(shè)計(jì)要求將設(shè)計(jì)好的HDLC通信協(xié)議控制器加載至FPGA與ARM上,并與串口通信卡BST23109進(jìn)行回環(huán)測試,該卡能夠?qū)崿F(xiàn)串口同步模式,通信滿足HDLC協(xié)議要求。試驗(yàn)結(jié)果表明在5 m通信距離內(nèi),波特率可達(dá)2 Mb/s,誤碼率為10-8。

            4 結(jié)論

            文中針對(duì)飛行模擬裝置中HDLC協(xié)議的應(yīng)用需求開展了HDLC協(xié)議控制器的設(shè)計(jì),文中首先介紹了HDLC協(xié)議的相關(guān)內(nèi)容,然后重點(diǎn)介紹了HDLC協(xié)議控制器軟硬件實(shí)現(xiàn),詳細(xì)給出于HDLC協(xié)議控制器的沒計(jì)實(shí)現(xiàn)過程。通過仿真和實(shí)測試驗(yàn)表明在5m通信距離內(nèi),波特率可達(dá)2Mb/s,誤碼率為10-8。在該飛行模擬裝置交付使用過程中,該控制器功能完整,能夠很好地滿足各項(xiàng)指標(biāo)的技術(shù)要求。

          fpga相關(guān)文章:fpga是什么


          塵埃粒子計(jì)數(shù)器相關(guān)文章:塵埃粒子計(jì)數(shù)器原理

          上一頁 1 2 下一頁

          關(guān)鍵詞: FPGA ARM HDLC

          評(píng)論


          相關(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); })();