基于FPGA的串口通信系統(tǒng)

基于FPGA的串口通信系統(tǒng)

ID:38133372

大?。?51.67 KB

頁數(shù):4頁

時間:2019-05-31

基于FPGA的串口通信系統(tǒng)_第1頁
基于FPGA的串口通信系統(tǒng)_第2頁
基于FPGA的串口通信系統(tǒng)_第3頁
基于FPGA的串口通信系統(tǒng)_第4頁
資源描述:

《基于FPGA的串口通信系統(tǒng)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、基于FPGA的串口通信系統(tǒng)設計郭鳳(西南科技大學信息工程學院,四川綿陽621000)摘要:該設計是基于FPGA的串口通信系統(tǒng)模擬仿真,通過對RS-232串行總線接口的設計,掌握發(fā)送與接收電路的基本思路,并進行串口通信。采用VerilogHDL語言對UART波特率產(chǎn)生模塊、數(shù)據(jù)發(fā)送模塊、接收模塊進行硬件描述,再將其整合為一個RS-232收發(fā)模塊,最終在頂層模塊中將兩個RS-232模塊例化,實現(xiàn)兩塊FPGA芯片全雙工通信的設計。關(guān)鍵詞:串口通信;VerilogHDL;FPGA;模擬仿真AserialportcommunicationsystemdesignbasedonFPGAGuoF

2、eng(SchoolofInformationEngineering,SouthwestUniversityofScienceandTechnology,Mianyang621000,China)Abstract:ThedesignisbasedontheFPGAserialportcommunicationsystemsimulation,throughthedesignoftheRS-232serialbusinterface,tomasterthebasicwayofsendingandreceivingcircuitandcompleteserialcommunicatio

3、n.UsingVerilogHDLlanguagetoUARTbaudrategenerationmodule,datasendingmodule,receivingmodulehardwaredescription,makeitintoRS-232transceivermodule,finallyinthetop-levelmodulewillinstantiatetwoRS-232module,realizethedesignoftwopiecesoftheFPGAchipfull-duplexcommunication.Keywords:serialportcommunica

4、tion;VerilogHDL;FPGA;simulation0引言通用異步收發(fā)器(UniversalAsynchronousReceiverTransmitter,UART)是一種廣泛應用于短距離、低速、低成本、可靠性高、實現(xiàn)簡單等優(yōu)點,廣泛應用于微機和外設的數(shù)據(jù)交換,如和鼠標、鍵盤、調(diào)制解調(diào)器、打印機之間以及微機與微機之間的串行數(shù)據(jù)傳輸。同時在當今的嵌入式微處理器芯片設計中,UART接口已成為標準配置。目前大部分處理器芯片中都集成了UART功能,但是在FPGA芯片中一般沒有集成UART,這增加了FPGA芯片與其他處理器間數(shù)據(jù)交換的復雜性。為提高FPGA設計的靈活性,我們可以用硬

5、件描述語言編寫一個具有UART功能的模塊,然后把這個模塊配置到FPGA芯片中。利用FPGA自身的優(yōu)點來設計設備間串行通信接口,具有較高的實用價值和重大意義。1UART通信原理在異步通信中,是以字符為單位傳送數(shù)據(jù),是從低位到高位逐位傳送,一個字符表示一幀信息。串行異步通信協(xié)議中字符代碼傳輸格式如圖2.3所示,通常UART的一幀數(shù)據(jù)由四部分組成:一個起始位S(一般邏輯為“0”),后面是數(shù)據(jù)長度可變的數(shù)據(jù)位D0~D7(一般為6位到8位之間可變,數(shù)據(jù)的低位在前),一個可選的校驗位PB(可選奇校驗、偶檢驗或不需要檢驗),隨后是一定長度的停止位P(可選1位、1.5位、或2位),停止位必須為邏輯

6、“1”。在沒有數(shù)據(jù)被傳輸時,數(shù)據(jù)線會一直處于邏輯“1”狀態(tài)。其字符幀格式如下圖1所示:圖1字符幀格式2軟件設計該設計的最頂層TOP層由兩個相同RS-232模塊(my_uart_top)構(gòu)成,用于模擬兩個FPGA芯片通信,例化名分別為uart1_init和uart2_init。在my_uart_top層中又由波特率發(fā)生器(speed_select)、UART接收器(my_uart_rx)和UART發(fā)送器(my_uart_tx)構(gòu)成。波特率發(fā)生器分別由兩個相同模塊(speed_rx,speed_tx)構(gòu)成,產(chǎn)生一個遠高于波特率的本地時鐘信號對數(shù)據(jù)不斷采樣,使接收器與發(fā)送器保持同步;發(fā)送

7、器的用途是將準備輸出的并行數(shù)據(jù)按照UART幀格式轉(zhuǎn)化為TXD信號串行輸出;接收器接收RXD串行信號,并將其轉(zhuǎn)化為并行數(shù)據(jù)存到內(nèi)部寄存器中。頂層模塊RTL級圖如下圖2所示:圖2頂層模塊RLT級圖3設計結(jié)果及仿真分析3.1波特率模塊仿真為方便波特率發(fā)生器模塊仿真,便于觀察波形,把分頻系數(shù)設為了10。下圖3為仿真波形圖:圖3分頻模塊仿真波形圖當rst_n復位,接到數(shù)據(jù)后波特率時鐘啟動置位信號bps_start,開始計數(shù)。波特率發(fā)生器每經(jīng)過10個時鐘周期輸出一個完整的波特率時

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。