999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于FPGA的波特率連續(xù)可調的UART接口設計*

2018-01-19 05:31:24吳志勇郭元興劉雨沁
通信技術 2018年1期
關鍵詞:設計

吳志勇,郭元興,劉雨沁

(中國電子科技集團公司第三十研究所,四川 成都 610041)

0 引 言

UART(Universal Asynchronous Receiver Transmitter,通用異步收發(fā)器)是一種廣泛使用的低速串行接口,遵循的協議是RS-232C標準。該標準規(guī)定的典型數據傳輸速率為300 b/s﹑1 200 b/s﹑2 400 b/s﹑9 600 b/s﹑38 400 b/s﹑115 200 b/s等。盡管市場上有專用的UART接口芯片和IP核,但部分接口芯片和IP核僅能支持幾種固定的傳輸速率,無法覆蓋RS-232C標準規(guī)定的所有傳輸速率。同時,隨著外接設備的日益豐富,部分設備可能具有非標準速率的UART接口,而專用的UART接口芯片及IP核無法與這些設備通信。因此,設計一種波特率連續(xù)可調的UART接口具有較高的實用價值。

1 UART原理

UART的具體幀格式如圖1所示。每幀數據由起始位﹑數據位﹑校驗位和停止位四部分組成。其中,起始位為低電平,持續(xù)一個比特時間,數據位長度可為5 bit﹑6 bit﹑7 bit﹑8bit;校驗位的模式有無校驗﹑奇校驗和偶校驗;停止位為高電平,持續(xù)時間可為1 bit或2 bit。當沒有數據發(fā)送時,發(fā)送和接收引腳都保持高電平[1]。

圖1 UART幀格式

發(fā)送端有數據發(fā)送時,先發(fā)送一個比特的起始位,以表示通信的開始,然后發(fā)送有效數據。有效數據的低位在前,高位在后,之后再傳送校驗位,最后發(fā)送停止位。

接收端處于監(jiān)聽狀態(tài),當監(jiān)聽到低電平的起始位后,就按照約定的波特率接收數據。

2 UART接口的FPGA實現

FPGA具有設計靈活﹑可自行定制各種電路的特點,其內部豐富的邏輯資源可讓設計者充分發(fā)揮設計理念,并在設計過程中可使用VHDL語言靈活修改[2]。本設計采用Verilog HDL語言,并在Xilinx的XC6SLX150T-3FGG676I FPGA上進行驗證。本設計主要包含發(fā)送模塊﹑接收模塊和中斷模塊,系統(tǒng)框圖如圖2所示。

圖2 系統(tǒng)示例

部分UART接口的實現方式是由給定波特率來計算工作時鐘頻率[3-5],利用時鐘頻率的改變來實現波特率的切換。這種方式僅能實現有限種波特率的切換,無法實現波特率的連續(xù)可調。本設計在固定工作時鐘頻率下,由用戶以參數的形式改變比特持續(xù)時間來實現波特率的連續(xù)可調。

比特持續(xù)時間是指在指定波特率下,傳輸線上單個比特持續(xù)的時鐘周期數。根據波特率的定義:每秒傳輸字符的個數,即可計算比特持續(xù)時間N。假設UART接口的工作時鐘頻率為F,指定波特率為B,則可計算出比特持續(xù)時間:通過改變比特持續(xù)時間來調節(jié)波特率具有以下優(yōu)點:

(1)FPGA的工作時鐘頻率單一,時序收斂性更好;

(2)UART接口的工作時鐘頻率F越高,數據傳輸速率的精度就越高;

(3)在UART工作頻率保持不變的條件下,通過改變參數N的值就能得到連續(xù)可調的波特率;

(4)接收模塊在接收每個比特時可以計數當前接收到的0和1的個數,并進行大數判決,以過濾接收線上的毛刺,提高UART接口的抗干擾能力。

2.1 發(fā)送模塊

發(fā)送模塊主要包含TX FIFO和發(fā)送單元。TX FIFO采用Xilinx的IP Core Generator生成,用戶將待發(fā)送的數據寫入TX FIFO。發(fā)送單元采用有限狀態(tài)機來設計,其狀態(tài)轉換如圖3所示。

當檢測到TX FIFO非空時,發(fā)送模塊從IDLE狀態(tài)進入transmit狀態(tài),并讀取TX FIFO中的待發(fā)送數據,在transmit狀態(tài)發(fā)送一個比特數據。當處于transmit狀態(tài)時,計數器count計數當前比特的持續(xù)時鐘周期數。當count的值大于等于比特持續(xù)時間N時,表示當前比特發(fā)送完畢,進而判斷當前數據幀是否發(fā)送完畢。如未發(fā)送完畢,則進入shift狀態(tài),將待發(fā)送數據移位,進行下一個比特發(fā)送,直到當前數據幀的停止位發(fā)送完畢,回到IDLE狀態(tài)。

2.2 接收模塊

接收模塊主要由RX FIFO和接收單元組成。RX FIFO用于存放接收到的串口數據,采用Xilinx的IP Core Generator生成。接收單元采用有限狀態(tài)機來設計,其狀態(tài)轉換如圖4所示。

接收單元處于監(jiān)聽狀態(tài),當檢測到接收線上的下降沿后,由IDLE狀態(tài)進入start狀態(tài)。在start狀態(tài)中,計數器count計數時鐘周期數,并統(tǒng)計信號線上0和1的個數。當時鐘周期數大于等于比特持續(xù)時間N時,表示當前比特接收完畢,進而通過大數判決確定接收到的比特值是否為數據幀的起始位。如果是,則進入receive狀態(tài),以接收數據幀的剩余比特值;如果不是,則表示接收單元監(jiān)聽到的下降沿是由干擾信號引起的,將重新回到IDLE狀態(tài)監(jiān)聽。

在receive狀態(tài)接收一個比特數據,在接收每個比特值時都統(tǒng)計0和1的個數,并進行大數判決,以提高抗干擾能力。每接收完一個比特值就轉移到shift狀態(tài),對接收到的比特值進行移位,并判斷當前數據幀是否接收完畢。如接收完畢,則回到IDLE狀態(tài);否則,重新進入receive狀態(tài)繼續(xù)接收。

圖4 接收模塊狀態(tài)轉換

2.3 中斷模塊

為了避免CPU以查詢方式讀取RX FIFO﹑減小CPU的消耗,同時為了減少中斷次數﹑提高CPU的中斷效率,本設計向用戶開放了中斷間隔參數C。中斷間隔C表示從接收完畢當前字符開始到下一個字符起始位到來之間的最小時間間隔。中斷模塊的流程圖如圖5所示。

圖5 中斷模塊流程

假設當前字符接收完畢為t1時刻,下一個字符的起始位到來為t2時刻,計數器在t1時刻開始計數。如果t2-t1≥C,則中斷模塊給出中斷信號,否則清零計數器。CPU接收到UART接口的中斷信號后,便可連續(xù)讀取RX FIFO中的數據,直到將RX FIFO讀空。

3 設計驗證

本文在Xilinx的XC6SLX150T-3FGG676I FPGA上進行驗證,將UART接口的數據幀格式設置為8 bit數據位﹑無校驗位﹑1 bit停止位,波特率為38 400 Baud,利用FPGA的時鐘管理單元產生200 MHz時鐘提供給UART接口工作。根據式(1)可計算得到比特持續(xù)時間N的值為5 208,即數據幀中的每個比特將持續(xù)5 208個時鐘周期。設置中斷間隔C的值為68 000,即從當前字符幀接收完畢開始,如果在68 000個時鐘周期內仍無新的字符幀到來,則UART接口給出中斷信號。采用將PC機的串口與FPGA的UART接口對接的方式來驗證。

3.1 發(fā)送模塊的驗證

往TX FIFO寫入指定數據0xAA,利用示波器抓取發(fā)送管腳上的時序,得到如圖6所示的波形。

圖6 發(fā)送波形

可以看出,發(fā)出數據的波特率為38 400 Baud,數據值為0010101011,即發(fā)送線上的數據為0xAA,與寫入TX FIFO中的數據相符。

3.2 接收模塊的驗證

利用PC機上的串口工具發(fā)送數據0xAA給FPGA,同時在FPGA中利用ChipScope抓取寫入RX FIFO中的數據,得到如圖7所示的波形圖。

圖7 接收波形

從圖7可以看出,寫入RX FIFO中的數據為0xAA,即FPGA的UART接口接收到的數據與PC機發(fā)送的數據相同。

3.3 中斷模塊的驗證

利用示波器同時抓取FPGA的接收和中斷管腳的信號,得到如圖8所示的波形圖。

圖8 中斷信號波形

從圖8可以測量出,中斷信號在接收完畢當前字符幀的340 μs后即68 000個時鐘后給出,與設定的參數值相符。

4 結 語

本文設計了一種波特率連續(xù)可調的UART接口,特點如下:

(1)固定UART接口的工作頻率,通過改變字符幀的比特持續(xù)時間實現波特率的改變,并將比特持續(xù)時間作為接口參數開放給用戶,設計的UART接口具有連續(xù)可調的波特率,既能產生RS-232C標準中指定的波特率,又能與具有非標準速率的UART接口通信;

(2)通過高頻計數每個比特持續(xù)期間0和1的個數,采用大數判決的方式確定當前比特值,能夠有效過濾信號線上的毛刺,提高UART接口的抗干擾能力;

(3)將中斷間隔參數開放給用戶,使用戶得以自行設定UART接口中斷CPU的頻率,降低CPU的中斷響應次數,提高了CPU的運行效率。

此外,該模塊可移植到多個FPGA平臺上,具有良好的推廣應用價值。

[1] 趙延,葛利嘉,雙濤.基于FPGA的UART設計實現及其驗證方法[J].現代電子技術,2008,280(17):162-164.

ZHAO Yan,GE Li-jia,SHUANG Tao.Design and Realization of UART and Its Verification Based on FPGA[J].Modern Electronics Technique,2008,280(17):162-164.

[2] 郭曉明,張德.基于FPGA的UART設計與實現[J].電聲技術,2010,34(06):31-37.

GUO Xiao-ming,ZHANG De.UART Design and Realization Based on FPGA[J].Audio Engineering,2010,34(06):31-37.

[3] 牛濤,吳斌,焦風川等.基于FPGA的UART電路的設計[J].電子測量技術,2006,29(03):73-75.

NIU Tao,WU Bin,JIAO Feng-chuan,et al.Design of a Kind of UART Circuit based on FPGA[J].Electronic Measurement Technology,2006,29(03):73-75.

[4] 何慧珠,秦麗,張會新.基于FPGA的UART IP核設計與實現[J].微計算機信息,2008,24(01-02):223-224.

HE Hu-zhu,QIN Li,ZHANG Hui-xin.Design of a UART IP Core Based on FPGA[J].Microcomputer Information,2008,24(01-02):223-224.

[5] 蔣艷紅.基于FPGA的UART設計與應用[J].計算機工程,2008,34(21):225-229.

JIANG Yan-hong.Design and Application of UART Based on FPGA[J].Computer Engineering,2008,34(21):225-229.

猜你喜歡
設計
二十四節(jié)氣在平面廣告設計中的應用
河北畫報(2020年8期)2020-10-27 02:54:06
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
基于PWM的伺服控制系統(tǒng)設計
電子制作(2019年19期)2019-11-23 08:41:36
基于89C52的32只三色LED搖搖棒設計
電子制作(2019年15期)2019-08-27 01:11:50
基于ICL8038的波形發(fā)生器仿真設計
電子制作(2019年7期)2019-04-25 13:18:16
瞞天過?!律O計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
從平面設計到“設計健康”
商周刊(2017年26期)2017-04-25 08:13:04
主站蜘蛛池模板: 区国产精品搜索视频| 欧美一区二区人人喊爽| 国产噜噜噜视频在线观看 | 亚洲成人一区在线| 国产麻豆福利av在线播放| 日本一本正道综合久久dvd | 日日碰狠狠添天天爽| 久草青青在线视频| 国产在线视频福利资源站| 欧美精品亚洲精品日韩专区va| 高清久久精品亚洲日韩Av| 91色综合综合热五月激情| 精品国产中文一级毛片在线看| 欧美一级专区免费大片| 亚洲Av综合日韩精品久久久| 麻豆精品久久久久久久99蜜桃| 国产呦精品一区二区三区网站| 一区二区日韩国产精久久| 日本高清有码人妻| 国产精品区视频中文字幕| 亚洲国产清纯| 99视频精品在线观看| 亚洲中文制服丝袜欧美精品| 久久夜色撩人精品国产| 中文字幕日韩丝袜一区| 全部毛片免费看| 亚洲成人精品在线| 欧美中文字幕在线播放| 欧美成人二区| 国产福利一区在线| 日韩无码黄色网站| 无码在线激情片| 波多野结衣中文字幕一区二区| 国产成在线观看免费视频| 五月天香蕉视频国产亚| 黄色网在线| 色欲国产一区二区日韩欧美| 日本三级欧美三级| 国产精品太粉嫩高中在线观看| 国产精品免费电影| 久久久精品久久久久三级| 色综合激情网| 色欲色欲久久综合网| 午夜福利网址| 国模粉嫩小泬视频在线观看| 波多野结衣在线一区二区| 欧美日韩va| 国产激爽大片高清在线观看| 91成人在线观看| 视频国产精品丝袜第一页| 成年人国产视频| 国产香蕉在线| 久久99蜜桃精品久久久久小说| 91蜜芽尤物福利在线观看| 99热国产这里只有精品无卡顿" | 亚洲午夜天堂| 亚洲男人天堂久久| 无码综合天天久久综合网| 免费一极毛片| 欧美一级夜夜爽| 91偷拍一区| 在线欧美国产| 欧美日韩理论| 精品国产美女福到在线不卡f| 亚洲欧美综合另类图片小说区| 国产永久在线视频| 99久久成人国产精品免费| 国产午夜一级淫片| 狠狠色丁婷婷综合久久| 欧美在线中文字幕| 精品人妻系列无码专区久久| 亚洲欧美在线看片AI| 国产三级视频网站| www精品久久| 亚洲欧美在线看片AI| 99久久这里只精品麻豆| 国产免费一级精品视频| 国产电话自拍伊人| 久久黄色毛片| 国产免费好大好硬视频| 91精品综合| 国产精品开放后亚洲|