新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于FPGA的UART接口模塊設(shè)計

基于FPGA的UART接口模塊設(shè)計

作者: 時間:2011-09-21 來源:網(wǎng)絡(luò) 收藏

(UniversalAnynchronousReceiverTransmitter,通用異步接收發(fā)送器)是廣泛應(yīng)用的串行數(shù)據(jù)傳輸協(xié)議之一,其應(yīng)用范圍遍及計算機外設(shè)、工控自動化等場合。雖然USB傳輸協(xié)議比協(xié)議有更高的性能,但電路復(fù)雜開發(fā)難度大,并且大多數(shù)的微處理器只集成了,因此UART仍然是目前數(shù)字系統(tǒng)之間進行串行通信的主要協(xié)議。

本文引用地址:http://m.butianyuan.cn/article/150190.htm

  隨著的廣泛應(yīng)用,經(jīng)常需要與其他數(shù)字系統(tǒng)進行串行通信,專用的UART集成電路如8250,8251等是比較復(fù)雜的,因為專用的UART集成電路既要考慮異步的收發(fā)功能,又要兼容RS232,在實際應(yīng)用中,往往只需要用到UART的基本功能,使用專用芯片會造成資源浪費和成本提高。可以將所需要的UART功能集成到內(nèi)部,實現(xiàn)FPGA與其他數(shù)字系統(tǒng)的直接通信,從而簡化了整個系統(tǒng)電路,提高了可靠性、穩(wěn)定性和靈活性。

  1 UART簡介

  基本的UART通信只需要兩條信號線(RXD,TXD)就可以完成數(shù)據(jù)的相互通信,接收與發(fā)送是全雙工形式,其中TXD是UART發(fā)送端,RXD是UART接收端。UART基本特點是:在信號線上有兩種狀態(tài),可分別用邏輯1(高電平)和邏輯0(低電平)來區(qū)分。在發(fā)送器空閑時,數(shù)據(jù)線應(yīng)保持在邏輯高電平狀態(tài)。發(fā)送器是通過發(fā)送起始比特而開始一個字符傳送,起始比特使數(shù)據(jù)線處于邏輯0狀態(tài),提示接收器數(shù)據(jù)傳輸即將開始。數(shù)據(jù)位一般為8位一個字節(jié)的數(shù)(也有6位7位的情況),低位(LSB)在前,高位(MSB)在后。校驗位一般用來判斷接收的數(shù)據(jù)位有無錯誤,一般是奇偶校驗。停止位在最后,用以標(biāo)志UART一個字符傳送的結(jié)束,它對應(yīng)于邏輯1狀態(tài),UART數(shù)據(jù)幀格式如圖1所示。

圖1 UART數(shù)據(jù)幀格式

  2 UART功能實現(xiàn)

  UART可以分解為3個子:波特率發(fā)生器;發(fā)送;接收模塊。UART的功能主要由VHDL硬件描述語言編程,圖2是編譯后生成的圖元SCI,它包括了UART的最主要的部分,即發(fā)送模塊和接收模塊。SCI的外部口線可分為3類:

  一是與數(shù)字系統(tǒng)的,包括數(shù)據(jù)DATA[7.0],片選CS,讀寫RD、WR,狀態(tài)RDFULL、TDEMPTY.這部分完成的功能是將待發(fā)送的數(shù)據(jù)寫入SCI或從SCI讀出已接收到的數(shù)據(jù)。

  二是串行通信接口2條線RXD、TXD,其中RXD是接收數(shù)據(jù)線、TXD是發(fā)送數(shù)據(jù)線,因此,SCI實現(xiàn)的是全雙工通信的。

  三是系統(tǒng)控制線RESET、CLK,RESET為模塊復(fù)位輸入,CLK為模塊時鐘輸入,通信的波特率由CLK來決定(實際的波特率是CLK/4)。

圖2 UART的圖元模塊結(jié)構(gòu)

  RDFULL、TDEMPTY為兩個狀態(tài)標(biāo)志位,RDFULL為輸入寄存器滿標(biāo)志,高電平表示已經(jīng)接收到一個有效數(shù)據(jù)并存儲到輸入數(shù)據(jù)寄存器中,當(dāng)CS、RD有效將數(shù)據(jù)讀出后變?yōu)榈碗娖綗o效。

  TDEMPTY為輸出寄存器空標(biāo)志,高電平表示由CS、WR有效寫入到輸出寄存器的數(shù)據(jù)已經(jīng)發(fā)送完畢,可以向輸出寄存器寫入另外待發(fā)送的數(shù)據(jù),低電平時表示數(shù)據(jù)目前正在發(fā)送中。


上一頁 1 2 3 下一頁

關(guān)鍵詞: 模塊 設(shè)計 接口 UART FPGA 基于

評論


相關(guān)推薦

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

關(guān)閉