




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、 電子技術(shù)趙延等:基于FP GA 的UAR T 設(shè)計實現(xiàn)及其驗證方法基于FPGA 的UART 設(shè)計實現(xiàn)及其驗證方法趙延, 葛利嘉, 雙濤(重慶通信學(xué)院數(shù)字通信與信號處理實驗室四川重慶400035摘要:UART 作為RS 232協(xié)議的控制接口得到了廣泛的應(yīng)用, 基于FP GA 實現(xiàn)的UAR T 、穩(wěn)定。系統(tǒng)結(jié)構(gòu)進行了模塊化分解, 使之適應(yīng)自頂向下(Top Down (FSM 實現(xiàn), 使控制邏輯直觀簡單, 提高了設(shè)計效率, UAR T 模塊嵌入FP GA 。關(guān)鍵詞:通用異步收發(fā)器; 串口通信; ; 中圖分類號:文章編號:10042373X (2008 172162203and R ealizati
2、on of UART and Its V erif ication B ased on FPG AZHAO Yan , GE Lijia ,SHUAN G Tao(Digital Communication and Signal Processing Lab. ,Chongqing Communication College ,Chongqing ,400035,China Abstract :UART is used widely as the interface of RS 232,and to design it in FP GA can make system more compact
3、 and stable. The structure of the system is divided in modularization to fit the design method Top 2Down. The core of this system is implemented with Finite State Machine (FSM ,it makes the logic of control brief ness. An experiment of communicating be 2tween UAR T and computer is designed to verifi
4、cate the f unction of this system. And a new method of debugging the FP GA de 2sign by implanting UAR T into it to connect with computer is derived f rom this.K eywords :uniersalasynchronous receiver transmitter ;serial port communication ; FP GA ;finite state machine通用異步收發(fā)器(U niversal Asynchronous
5、Receiv 2er Transmitter ,UA R T 是數(shù)字通信領(lǐng)域流行和廣泛使用的一種接口設(shè)備, 主要用來控制符合RS 2322C 協(xié)議的計算機與串行設(shè)備間的通信。普通串行外設(shè)和計算機間的通信, 一般使用通用的串行接口芯片, 但是這種接口芯片存在體積較大、接口復(fù)雜以及成本較高的缺點, 會使得硬件設(shè)計更加復(fù)雜, 并且結(jié)構(gòu)與功能相對固定, 無法根據(jù)設(shè)計的需要對其邏輯控制進行靈活的修改。而目前日趨成熟的SOC 技術(shù)則要求將整個設(shè)計的功能集成在單片或幾塊芯片當(dāng)中, 因此, 將UAR T 的功能集成在FP GA 芯片當(dāng)中, 可以使整個系統(tǒng)更為靈活、緊湊, 性能也更加穩(wěn)定1。本文提出了一種使用V
6、 HDL 語言開發(fā)UA R T 的方法, 實現(xiàn)了FP GA 與計算機之間的數(shù)據(jù)通信, 并將其應(yīng)用于FP GA 芯片開發(fā)的功能驗證當(dāng)中, 從而衍生出了將UA R T 嵌入到FP GA 芯片, 與計算機互聯(lián)的一種直觀的FP GA 設(shè)計的驗證和調(diào)試方法。1UART 通信原理UAR T 采用通用的RS 2322C 串行接口標準, 該協(xié)收稿日期:2008201202議的優(yōu)點是使用廣泛, 幾乎所有計算機和串行外設(shè)當(dāng)中都置有這種接口, 其傳輸距離可達15m , 并且實現(xiàn)較簡單, 用于雙向連接時最少只需要2條導(dǎo)線即可實現(xiàn)基本通信。UAR T 的具體幀格式如圖1所示, 每幀數(shù)據(jù)由開始位、數(shù)據(jù)位、奇偶校驗位和停止
7、位四部分依次組成2。其中, 開始位為低電平; 數(shù)據(jù)位長度為5,6,7,8不等; 奇偶校驗的模式有無校驗、奇校驗、偶校驗、粘附校驗1和粘附校驗0; 停止位為高電平, 具體長度為1位、1. 5位和2位不等, 這些選項都通過UA R T 內(nèi)部的線性控制寄存器來確定。當(dāng)沒有數(shù)據(jù)發(fā)送時, 發(fā)送和接收引腳都保持高電平 。圖1UAR T 幀格式2UART 的FPG A 實現(xiàn)本實現(xiàn)中, UA R T 主要包括接收模塊、發(fā)送模塊、MODEM 控制器和中斷仲裁4個部分。它們的具體功能如下:接收模塊具體作用是接收從串行數(shù)據(jù)輸入端口162 現(xiàn)代電子技術(shù)2008年第17期總第280期SIN 送來的異步數(shù)據(jù), 并進行串/
8、并轉(zhuǎn)換, 此外, 接收模 電子技術(shù)應(yīng)用統(tǒng)復(fù)位時, 狀態(tài)機進入idle 狀態(tài), 等待開始位,SIN 由高電平變?yōu)榈碗娖讲⒈淮_認為有效的開始位后, 狀態(tài)機進入shift 狀態(tài); shift 狀態(tài)中, 接收模塊為每一個數(shù)據(jù)比特移入等待16個內(nèi)部時鐘周期, 接收完一幀數(shù)據(jù)后, 若奇偶校驗使能有效, 跳轉(zhuǎn)到parity 狀態(tài), 否則, 進入stop 狀態(tài); 在parity 狀態(tài)中對奇偶校驗比特進行采樣, 狀態(tài)機將跳轉(zhuǎn)到stop 狀態(tài); 狀態(tài)機進入stop 狀態(tài)后, 等待16, 而塊還包含模塊控制和模塊狀態(tài)配置功能, 用來設(shè)置接收數(shù)據(jù)幀的屬性以及向中斷仲裁模塊輸出狀態(tài)信號;發(fā)送模塊其作用是對從CPU 送來
9、的并行數(shù)據(jù)進行并/串轉(zhuǎn)換, 將串行數(shù)據(jù)從SOU T 輸出到串口, 同接收模塊相同, 該模塊也包含模塊控制和模塊狀態(tài)配置功能;中斷仲裁模塊其作用是用來實現(xiàn)外部接口對內(nèi)部寄存器的操作以及中斷信號的仲裁操作, 在UAR T 的工作過程中, 發(fā)送和接收模塊的狀態(tài)信號都送入該模塊的線性狀態(tài)寄存器中, 的中斷信號, 指示與UAR T 的讀寫操作;MOD EM 模塊器或者其他的UA R T 設(shè)備進行通信3。2. 1接收模塊在接收的過程中, 由于串行數(shù)據(jù)幀異步于接收時鐘, 因此, 當(dāng)檢測到SIN 由高電平到低電平的變化將被認為是一幀數(shù)據(jù)的開始位。為避免由于噪聲引起的錯誤數(shù)據(jù), 本設(shè)計中實現(xiàn)了錯誤開始位檢測功能
10、, 即要求開始位必須在收發(fā)波特率時鐘的50%以上為低電平。由于我們采用的內(nèi)部時鐘其頻率是波特率時鐘的16倍, 因此開始位至少在8個內(nèi)部時鐘周期內(nèi)為低電2. , 當(dāng)發(fā)送數(shù)據(jù)裝載到發(fā)送保持寄存器, 串行數(shù)據(jù)將自動使能從而進行數(shù)據(jù)傳輸。首先一個開始位被發(fā)送出去, 同時發(fā)送數(shù)據(jù)由發(fā)送保持寄存器裝載到發(fā)送移位寄存器中, 而將數(shù)據(jù)以波特率時鐘逐位發(fā)送出去, 并按照線性控制寄存器的要求加上奇偶校驗位和停止位。其時鐘、幀結(jié)構(gòu)配置和工作過程與接收模塊類似, 因此, 發(fā)送模塊也可以通過相似的狀態(tài)機實現(xiàn)。2. 3中斷仲裁模塊UA R T 的中斷分為4個等級, 其對應(yīng)的中斷事件為:接收模塊線性狀態(tài)、接收數(shù)據(jù)準備就緒、
11、發(fā)送保持寄存器空和MOD EM 狀態(tài), 它們記錄在中斷識別寄存器中。UA R T 通過讀取中斷識別寄存器檢測所有的中斷信號, 然后指明優(yōu)先級最高的中斷給外部接口。該模塊使用狀態(tài)機實現(xiàn)時, 共分為5個狀態(tài), 其中4個等級的中斷各為一個狀態(tài), 外加一個空閑狀態(tài), 根據(jù)每次讀取中段識別寄存器的結(jié)果確定應(yīng)進入哪一狀態(tài), 從而保證了各級中斷依次被響應(yīng)。2. 4MODEM 控制器模塊平才被認為有效。一旦開始位被確認, 后面的數(shù)據(jù)比特和校驗比特將會每16個內(nèi)部時鐘周期采樣一次。接收模塊包括一個數(shù)據(jù)緩沖寄存器和一個接收移位寄存器。當(dāng)檢測到開始位有效時, 其后的數(shù)據(jù)比特將會依次存入數(shù)據(jù)移位寄存器, 根據(jù)數(shù)據(jù)幀的
12、配置, 當(dāng)接收完所有數(shù)據(jù)比特后會根據(jù)奇偶校驗是否被使能來判斷下一步進行校驗或停止接收, 等待外部設(shè)備讀取接收到的數(shù)據(jù)。整個過程可通過狀態(tài)機方便的實現(xiàn), 狀態(tài)轉(zhuǎn)移圖如圖2所示 。在UA R T 中,MOD EM 控制器模塊的作用是用來和外部的調(diào)制解調(diào)器或者其他的UAR T 設(shè)備進行通信, 它主要通過MOD EM 控制器和MODEM 狀態(tài)寄存器來進行具體操作。MODEM 控制器用來控制D TRn (Data Terminal Ready 和R TSn (Request To Send 的輸出狀態(tài)。DCDn (Data Carrier Detect 、C TSn (Clear To Send 、DS
13、Rn (Data Set Ready 和RIn (Ring Indica 2tor 的線性狀態(tài)由MOD EM 控制模塊來監(jiān)控, 同時存儲于MODEM 狀態(tài)寄存器中。3基于UART 的FPG A 設(shè)計驗證方法圖2接收模塊狀態(tài)機狀態(tài)轉(zhuǎn)移圖對于大多數(shù)FP GA 設(shè)計來講,UAR T 也可以作為設(shè)計模塊與PC 的接口嵌入到FP GA 芯片當(dāng)中, 通過RS 232接口連接到計算機, 使用相關(guān)的串口調(diào)試軟件即可在計算機上對FP GA 進行數(shù)據(jù)的輸入, 并且在顯示器上直接觀察到其輸出的結(jié)果, 這樣就衍生出一種針對FP GA 設(shè)計功能驗證的直觀有效的方法, 即基于163由圖2不難看出, 接收模塊的狀態(tài)機包含4
14、個狀態(tài):空閑狀態(tài)(idle 、移位狀態(tài)(shift 、奇偶校驗狀態(tài)(parity 和停止位狀態(tài)(stop 。其工作過程如下:當(dāng)系 電子技術(shù)趙延等:基于FP GA 的UAR T 設(shè)計實現(xiàn)及其驗證方法UA R T 與串口調(diào)試軟件的功能驗證方法。該方法的關(guān)鍵在于如何將UA R T 嵌入待驗證的模塊, 本文以卷積編碼加交織模塊為例, 詳細介紹其與UAR T 的連接方法, 連接示意圖如圖3所示 。圖3UAR T (。同時該實驗也驗UA R T 在實際應(yīng)用中的效果 。在本方案中, 26b 數(shù)據(jù), 通過串口調(diào)試軟件和UAR T 發(fā)送到FP GA 芯片, 經(jīng)碼率為1/2的卷積編碼后得到52b 數(shù)據(jù)進行交織,
15、交織后的數(shù)據(jù)分為4b 一組送到UAR T 發(fā)送模塊, 經(jīng)UAR T 通過串口發(fā)送到計算機上, 最終在屏幕上看到編碼和交織的結(jié)果。卷積編碼模塊采用Xilinx 的IP 核實現(xiàn), 該模塊要求串行輸入, 而UAR T 接收模塊的輸出為8位并行數(shù)據(jù), 故在他們之間加上并串轉(zhuǎn)換模塊。隨著每一次并行數(shù)據(jù)的寫入, 并串轉(zhuǎn)換模塊會接收到一個寫入的指示信號, 同時開始順序輸出8位串行數(shù)據(jù)到卷積編碼模塊。卷積編碼器的輸出是2位并行數(shù)據(jù), 由于先前的接收模塊及串并轉(zhuǎn)換模塊每次處理8b 數(shù)據(jù)的關(guān)系, 故可以認為卷積編碼器每次連續(xù)輸出8個2位并行數(shù)據(jù), 而我們的系統(tǒng)要求每26個輸入比特進行一次卷積編碼和交織, 所以在編
16、碼和交織之間連接一個FIFO 作為數(shù)據(jù)緩沖, 累計到26b 數(shù)據(jù)后輸出一次, 同時設(shè)置其輸入為2b 并行, 輸出為串行, 即實現(xiàn)了并串轉(zhuǎn)換的功能, 滿足4結(jié)語圖4實驗結(jié)果使用FPG A 實現(xiàn)UART 模塊的功能, 可以減小系統(tǒng)面積, 降低功耗, 同時使得設(shè)計更加緊湊和穩(wěn)定。本文使用V HDL 語言在X ilinx 公司FPGA 芯片Vertax II Pro 上實現(xiàn)了標準UART 模塊并加以驗證4, 在某些具體應(yīng)用中, 也可以將本實現(xiàn)中的發(fā)送和接收模塊單獨使用, 進一步體現(xiàn)了FPG A 設(shè)計的靈活性。此外, 本設(shè)計的驗證方案也能夠用來驗證FPG A 設(shè)計的功能, 只要將UART 集成在需要驗證
17、的模塊上, 就可以通過連接開發(fā)系統(tǒng)與計算機, 在PC 終端方便地觀察系統(tǒng)的輸入和輸出, 為FPG A 設(shè)計的功能驗證提出了新的方法。參考文獻1姜寧, 范多旺. 基于FP GA/CPLD 的通用異步通信接口UAR T 的設(shè)計J.信息技術(shù)與信息化,2006(1 :86287. 2黃智偉. FP GA 系統(tǒng)設(shè)計與實踐M .北京:電子工業(yè)出版了交織器串行數(shù)據(jù)輸入的要求。最后發(fā)送回計算機的數(shù)據(jù)為52b , 所以對UA R T 發(fā)送模塊作了簡單的修改, 使其每次發(fā)送4b 數(shù)據(jù), 這樣就可以將52b 分13次發(fā)完, 同時為了實現(xiàn)交織器輸出的連續(xù)數(shù)據(jù)與UAR T 的銜接, 我們在此處再加一個FIFO 作為緩沖以及串并轉(zhuǎn)換, 將輸入的串行數(shù)據(jù)變?yōu)?b 并行數(shù)據(jù)逐次發(fā)送。這些模塊的工作都由一些控制信號來指示, 所以本例中采用了一個自己編寫的控制信號模塊來生成這些指示信號, 比如每次UAR T 接收到數(shù)據(jù)后即產(chǎn)生一個寫入信號指示串并轉(zhuǎn)換模塊開始工作, 同
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 童車類產(chǎn)品安全性能提升技術(shù)考核試卷
- 生活初三語文作文600字
- 硅冶煉廠的工藝流程設(shè)計考核試卷
- 橡膠制品的品牌形象與品牌推廣策略研究考核試卷
- 玻璃纖維增強塑料的機械性能優(yōu)化設(shè)計考核試卷
- 家電配件的精密加工與測量技術(shù)考核試卷
- 小學(xué)一年級數(shù)學(xué)20以內(nèi)進位、退位加減法口算
- 造口并發(fā)癥及處理 2
- 四川成都實驗外國語2023-2024學(xué)年高一下學(xué)期期中考試數(shù)學(xué)試題【含答案】
- 血液透析及并發(fā)癥護理 2
- 銀行承兌匯票培訓(xùn)-課件
- AB 753變頻器簡單操作培訓(xùn)(參數(shù)拷貝)
- JGJ59-2011建筑施工安全檢查評分表-(完整版)
- 梁思成《千篇一律與千變?nèi)f化》(課件)
- 《分子生物學(xué)》復(fù)習(xí)考試題庫(帶答案)
- 阿育吠陀體質(zhì)測試
- 智能汽車傳感器技術(shù)-激光雷達
- 2023年四年級奧林匹克英語競賽試題
- 專利挖掘與技術(shù)交底書撰寫
- 輸液泵、微量泵的使用
- 35kv電纜敷設(shè)施工方案正式版
評論
0/150
提交評論