新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于FPGA的通用異步收發(fā)器設(shè)計(jì)

基于FPGA的通用異步收發(fā)器設(shè)計(jì)

作者: 時(shí)間:2011-08-24 來源:網(wǎng)絡(luò) 收藏

摘要:采用Verilog HDL語言作為硬件功能的描述,運(yùn)用模塊化設(shè)計(jì)方法分別設(shè)計(jì)了通用(UART)的發(fā)送模塊、接收模塊和波特率發(fā)生器,并結(jié)合現(xiàn)場可編程門陣列()的特點(diǎn),實(shí)現(xiàn)了一個(gè)可移植的UART模塊。該設(shè)計(jì)不僅實(shí)現(xiàn)了串行異步通信的主要功能,而且電路簡單,工作穩(wěn)定、可靠,可以將其靈活地嵌入到各個(gè)通信系統(tǒng)中。
關(guān)鍵詞:通用;現(xiàn)場可編程門陣列;Verilog HDL;串行通信

串行通信要求的傳輸線少,可靠性高,傳輸距離遠(yuǎn),被廣泛應(yīng)用于計(jì)算機(jī)和外設(shè)的數(shù)據(jù)交換。通常都由通用(UART)來實(shí)現(xiàn)串口通信的功能。在實(shí)際應(yīng)用中,往往只需要UART的幾個(gè)主要功能,專用的接口芯片會造成資源浪費(fèi)和成本提高。隨著/CPLD的飛速發(fā)展與其在現(xiàn)代電子設(shè)計(jì)中的廣泛應(yīng)用,/CPLD功能強(qiáng)大、開發(fā)過程投資小、周期短、可反復(fù)編程、保密性好等特點(diǎn)也越來越明顯。因此可以充分利用其資源,在芯片上集成UART功能模塊,從而簡化了電路、縮小了體積、提高了可靠性,而且設(shè)計(jì)時(shí)的靈活性更大,周期更短。鑒于此本文提出了一種采用FPGA實(shí)現(xiàn)UART功能的方法,可以有效地解決上述問題。

1 UART的工作原理
UART(Universal Asynchronous Receiver Transmitter,通用異步收發(fā)器)是廣泛使用的異步串行數(shù)據(jù)傳輸協(xié)議。在串行通信中,數(shù)據(jù)以字節(jié)為單位的字節(jié)幀進(jìn)行傳送。發(fā)送端和接收端必須按照相同的字節(jié)幀格式和波特率進(jìn)行通信。UART控制器所傳輸?shù)囊粠袛?shù)據(jù)包括1位起始位(低電平)、5~8位數(shù)據(jù)位、1位校驗(yàn)位(可選)和停止位(可為1,1.5,2位)。起始位是字節(jié)幀的開始,使數(shù)據(jù)線處于邏輯0狀態(tài),用于向接收端表明開始發(fā)送數(shù)據(jù)幀,起到使發(fā)送和接收設(shè)備實(shí)現(xiàn)同步的功能。停止位是字節(jié)幀的終止,使數(shù)據(jù)線處于邏輯1狀態(tài)。用于向接收端表明數(shù)據(jù)幀發(fā)送完畢。波特率采用標(biāo)準(zhǔn)速率9 600 b/s。數(shù)據(jù)在傳輸時(shí),低位在前,高位在后。接收端檢測并確認(rèn)起始位后,接收數(shù)據(jù)位。停止
位接收完畢后,向CPU發(fā)出中斷信號,同時(shí)將數(shù)據(jù)發(fā)送到計(jì)算機(jī)的8位數(shù)據(jù)總線上;發(fā)送數(shù)據(jù)時(shí),先由CPU設(shè)置波特率,然后將8位并行數(shù)據(jù)加上起始位和停止位發(fā)送給外設(shè)。停止位發(fā)送完畢后,向CPU發(fā)出中斷信號。在數(shù)據(jù)發(fā)送和接收過程中,CPU可以通過控制信號來讀取UART的工作狀態(tài),以便進(jìn)行實(shí)時(shí)處理。

2 UART的模塊化設(shè)計(jì)
2.1 系統(tǒng)總體結(jié)構(gòu)
在大規(guī)模電路的設(shè)計(jì)中,廣泛采用層次化、結(jié)構(gòu)化的設(shè)計(jì)方法。它將一個(gè)完整的硬件設(shè)計(jì)任務(wù)從系統(tǒng)級開始,劃分為若干個(gè)可操作的模塊,編制出相應(yīng)的模型并進(jìn)行仿真驗(yàn)證,最后在系統(tǒng)級上進(jìn)行組合。這樣在提高設(shè)計(jì)效率的同時(shí)又提高了設(shè)計(jì)質(zhì)量,是目前復(fù)雜數(shù)字系統(tǒng)實(shí)現(xiàn)的主要手段,也是本文設(shè)計(jì)思想的基礎(chǔ)。按照系統(tǒng)功能進(jìn)行劃分,UART主要由波特率發(fā)生器、接收模塊和發(fā)送模塊三大部分組成。在Maxp-lusⅡ仿真環(huán)境下,由各個(gè)子模塊進(jìn)行綜合的系統(tǒng)總模塊如圖1所示。下面分別討論發(fā)送模塊、接收模塊和波特率發(fā)生器模塊的具體實(shí)現(xiàn)過程。

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

d.jpg


上一頁 1 2 3 4 下一頁

關(guān)鍵詞: FPGA 異步收發(fā)器

評論


相關(guān)推薦

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

關(guān)閉