基于Wishbone總線(xiàn)的UART IP核設計
2 UART IP核的設計實(shí)現
UART IP核的研發(fā)是遵照RS232協(xié)議和Wishbone總線(xiàn)標準進(jìn)行的,集成了UART的基本功能。
UART IP核的主要技術(shù)特征包括:
(1)支持標準RSR232接口標準和Wishbone總線(xiàn)規范。
(2)全雙工獨立收發(fā)功能。
(3)接收通道進(jìn)行奇偶校驗,溢出,產(chǎn)生可選中斷。
(4)內置支持接收和發(fā)送的16 Byte FIFO。
(5)發(fā)送“空”產(chǎn)生可選中斷,接收“滿(mǎn)”產(chǎn)生可選中斷。
UART IP核體系結構如圖2所示。本文引用地址:http://dyxdggzs.com/article/156564.htm
UART IP核內部主要包括數據發(fā)送模塊、數據接收模塊以及Wishbone總線(xiàn)接口模塊。各模塊的設計如下。
2.1 Wishbone總線(xiàn)接口模塊設計
Wishbone總線(xiàn)接口模塊將UART IP核與微機系統相連。該模塊提供Wishbone Master和Wishbone Slave接口。
Wishbone總線(xiàn)接口模塊的主要功能如下:
(1)提供UART IP核與其他設備的接口,如存儲器或者主機的接口。
(2)包含緩沖描述符(儲存于內部RAM)。
(3)包含信號在主機時(shí)鐘、發(fā)送時(shí)鐘和接收時(shí)鐘之間的同步邏輯。
(4)發(fā)送功能。讀取發(fā)送緩沖描述符,讀取數據到發(fā)送FIFO并開(kāi)始發(fā)送,其后將發(fā)送狀態(tài)寫(xiě)到發(fā)送緩沖描述符。
(5)接收功能。讀取接收緩沖描述符,將獲得的字節寫(xiě)入接收FIFO,其后通過(guò)Wishbone Muter接口與微機系統進(jìn)行通信。最后,將接收狀態(tài)寫(xiě)到接收緩沖描述符。
當處理器需要串行發(fā)送數據時(shí),先將數據以包的形式存儲于主存儲器中,然后將存儲的所有包的起始地址、目的地址、長(cháng)度以及發(fā)送控制信息寫(xiě)入發(fā)送描述符中。
Wishbone接口模塊讀取到一個(gè)非空的發(fā)送描述符后即發(fā)送數據,發(fā)送的數據要通過(guò)Wishbone接口邏輯訪(fǎng)問(wèn)位于總線(xiàn)上的主存儲器,讀取到的數據首先放到發(fā)送FIFO中,其后再通過(guò)發(fā)送控制和同步邏輯與數據發(fā)送模塊進(jìn)行握手,將數據從TX_O端口串行發(fā)送出去。
當接收數據時(shí),數據由RX_I端口串行地移入接收FIFO中,每收滿(mǎn)8位數據就移入接收保持寄存器,然后通過(guò)Wishbone總線(xiàn)并行傳輸給處理器核。
2.2 數據接收模塊設計
由于外部信號是通過(guò)異步串行的形式傳輸,因此當接收端口檢測到一個(gè)由高到低的數據就被視為一個(gè)幀的起始位。為了避免接收信號的噪聲而產(chǎn)生的不正確的數據,檢測到的起始位時(shí)鐘至少要低于50%的波特率時(shí)鐘。接收模塊一旦接收到有效的起始位,就將通過(guò)RS232標準的波特率對數據位和校驗位進(jìn)行采樣。
評論