基于fpgacpld設(shè)計(jì)與實(shí)現(xiàn)uart(vhdl)

基于fpgacpld設(shè)計(jì)與實(shí)現(xiàn)uart(vhdl)

ID:3144686

大小:388.38 KB

頁(yè)數(shù):15頁(yè)

時(shí)間:2017-11-19

基于fpgacpld設(shè)計(jì)與實(shí)現(xiàn)uart(vhdl)_第1頁(yè)
基于fpgacpld設(shè)計(jì)與實(shí)現(xiàn)uart(vhdl)_第2頁(yè)
基于fpgacpld設(shè)計(jì)與實(shí)現(xiàn)uart(vhdl)_第3頁(yè)
基于fpgacpld設(shè)計(jì)與實(shí)現(xiàn)uart(vhdl)_第4頁(yè)
基于fpgacpld設(shè)計(jì)與實(shí)現(xiàn)uart(vhdl)_第5頁(yè)
資源描述:

《基于fpgacpld設(shè)計(jì)與實(shí)現(xiàn)uart(vhdl)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)

1、基于FPGA/CPLD設(shè)計(jì)與實(shí)現(xiàn)UART(VHDL)1引言??????由于微電子學(xué)和計(jì)算機(jī)科學(xué)的迅速發(fā)展,給EDA(電子設(shè)計(jì)自動(dòng)化)行業(yè)帶來(lái)了巨大的變化。特別是進(jìn)入20世紀(jì)90年代后,電子系統(tǒng)已經(jīng)從電路板級(jí)系統(tǒng)集成發(fā)展成為包括ASIC、FPGA/CPLD和嵌入系統(tǒng)的多種模式。可以說(shuō)EDA產(chǎn)業(yè)已經(jīng)成為電子信息類產(chǎn)品的支柱產(chǎn)業(yè)。EDA之所以能蓬勃發(fā)展的關(guān)鍵因素之一就是采用了硬件描述語(yǔ)言(HDL)描述電路系統(tǒng)。就FPGA和CPLD開發(fā)而言,比較流行的HDL主要有VerilogHDL、VHDL、ABEL-HDL和AHDL等,其中VHDL和VerilogHDL因適合標(biāo)準(zhǔn)化的發(fā)展

2、方向而最終成為IEEE標(biāo)準(zhǔn)。??????下面的設(shè)計(jì)就是用VHDL來(lái)完成實(shí)現(xiàn)的。2UART設(shè)計(jì)實(shí)例??????通常設(shè)計(jì)數(shù)字電路大都采用自頂向下將系統(tǒng)按功能逐層分割的層次化設(shè)計(jì)方法,這比傳統(tǒng)自下向上的EDA設(shè)計(jì)方法有更明顯的優(yōu)勢(shì)(當(dāng)時(shí)的主要設(shè)計(jì)文件是電路圖)。因?yàn)橛勺皂斚蛳碌脑O(shè)計(jì)過(guò)程可以看出,從總體行為設(shè)計(jì)開始到最終邏輯綜合,形成網(wǎng)絡(luò)表為止。每一步都要進(jìn)行仿真檢查,這樣有利于盡早發(fā)現(xiàn)系統(tǒng)設(shè)計(jì)中存在的問(wèn)題,從而可以大大縮短系統(tǒng)硬件的設(shè)計(jì)周期。??????下面以UART的設(shè)計(jì)為例具體說(shuō)明:(本設(shè)計(jì)只對(duì)本設(shè)計(jì)的總模塊做各種基于MAX+PLUSII環(huán)境下的各種分析,對(duì)于各分模塊只

3、是作些必要的說(shuō)明。)??????UART(即UniversalAsynchronousReceiverTransmitter通用異步收發(fā)器)是一種應(yīng)用廣泛的短距離串行傳輸接口。UART允許在串行鏈路上進(jìn)行全雙工的通信。串行外設(shè)用到的RS232-C異步串行接口,一般采用專用的集成電路即UART實(shí)現(xiàn)。如8250、8251、NS16450等芯片都是常見的UART器件,這類芯片已經(jīng)相當(dāng)復(fù)雜,有的含有許多輔助的模塊(如FIFO),有時(shí)我們不需要使用完整的UART的功能和這些輔助功能?;蛘咴O(shè)計(jì)上用到了FPGA/CPLD器件,那么我們就可以將所需要的UART功能集成到FPGA內(nèi)部。

4、使用VHDL將UART的核心功能集成,從而使整個(gè)設(shè)計(jì)更加緊湊、穩(wěn)定且可靠。本文應(yīng)用EDA技術(shù),基于FPGA/CPLD器件設(shè)計(jì)與實(shí)現(xiàn)UART。2.1UART簡(jiǎn)介2.1.1UART結(jié)構(gòu)???UART主要有由數(shù)據(jù)總線接口、控制邏輯、波特率發(fā)生器、發(fā)送部分和接收部分等組成。本設(shè)計(jì)主要設(shè)計(jì)UART中最重要的發(fā)送部分和接收部分,其他部分設(shè)計(jì)不在贅述。???功能包括發(fā)送緩沖器(tbr)、發(fā)送移位寄存器(tsr)、幀產(chǎn)生、奇偶校驗(yàn)、并轉(zhuǎn)串、數(shù)據(jù)接收緩沖器(rbr)、接收移位寄存器(rsr)、幀產(chǎn)生、奇偶校驗(yàn)、串轉(zhuǎn)并。圖1是UART的典型應(yīng)用。圖12.1.2UART的幀格式UART的幀

5、格式如圖2所示。圖2??????包括線路空閑狀態(tài)(idle,高電平)、起始位(startbit,低電平)、5~8位數(shù)據(jù)位(databits)、校驗(yàn)位(paritybit,可選)和停止位(stopbit,位數(shù)可為1、1.5、2位)。?????這種格式是由起始位和停止位來(lái)實(shí)現(xiàn)字符的同步。?????UART內(nèi)部一般有配置寄存器,可以配置數(shù)據(jù)位數(shù)(5~8位)、是否有校驗(yàn)位和校驗(yàn)的類型、停止位的位數(shù)(1,1.5,2)等設(shè)置。?????本設(shè)計(jì)沒(méi)有奇偶校驗(yàn)位,所設(shè)置的奇偶校驗(yàn)只是檢驗(yàn)數(shù)據(jù)中是否有奇數(shù)或偶數(shù)個(gè)1。數(shù)據(jù)位為8位,停止位為1位。2.2UART的設(shè)計(jì)與實(shí)現(xiàn)2.2.1UART

6、發(fā)送器?????發(fā)送器每隔16個(gè)CLK16時(shí)鐘周期輸出1位,次序遵循1位起始位、8位數(shù)據(jù)位、1位停止位。??????CPU何時(shí)可以往發(fā)送緩沖器tbr寫入數(shù)據(jù),也就是說(shuō)CPU要寫數(shù)據(jù)到tbr時(shí)必須判斷當(dāng)前是否可寫,如果不判這個(gè)條件,發(fā)送的數(shù)據(jù)會(huì)出錯(cuò)。本設(shè)計(jì)由wrn控制。?????數(shù)據(jù)的發(fā)送是由微處理器控制,微處理器給出wrn信號(hào),發(fā)送器根據(jù)此信號(hào)將并行數(shù)據(jù)din[7..0]鎖存進(jìn)發(fā)送緩沖器tbr[7..0],并通過(guò)發(fā)送移位寄存器tsr[7..0]發(fā)送串行數(shù)據(jù)至串行數(shù)據(jù)輸出端sdo。在數(shù)據(jù)發(fā)送過(guò)程中用輸出信號(hào)tbre、tsre作為標(biāo)志信號(hào),當(dāng)一幀數(shù)據(jù)由發(fā)送緩沖器tbr[7

7、..0]送到發(fā)送發(fā)送移位寄存器tsr[7..0]時(shí),tbre信號(hào)為1,而數(shù)據(jù)由發(fā)送移位寄存器tsr[7..0]串行發(fā)送完畢時(shí),tsre信號(hào)為1,通知CPU在下個(gè)時(shí)鐘裝入新數(shù)據(jù)。??????發(fā)送器端口信號(hào)如圖3所示。圖3引入發(fā)送字符長(zhǎng)度和發(fā)送次序計(jì)數(shù)器no_bits_sent,實(shí)現(xiàn)設(shè)計(jì)的源程序如下。libraryieee;useieee.std_logic_1164.all;useieee.std_logic_arith.all;entitytxmitisport(rst,clk16x,wrn:instd_logic;din:instd_logic_v

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。