Spartan-6系列FPGA UART數(shù)據(jù)接收模塊總結(jié).pdf

Spartan-6系列FPGA UART數(shù)據(jù)接收模塊總結(jié).pdf

ID:47995151

大?。?.02 MB

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

時(shí)間:2020-01-11

Spartan-6系列FPGA UART數(shù)據(jù)接收模塊總結(jié).pdf_第1頁(yè)
Spartan-6系列FPGA UART數(shù)據(jù)接收模塊總結(jié).pdf_第2頁(yè)
Spartan-6系列FPGA UART數(shù)據(jù)接收模塊總結(jié).pdf_第3頁(yè)
Spartan-6系列FPGA UART數(shù)據(jù)接收模塊總結(jié).pdf_第4頁(yè)
Spartan-6系列FPGA UART數(shù)據(jù)接收模塊總結(jié).pdf_第5頁(yè)
資源描述:

《Spartan-6系列FPGA UART數(shù)據(jù)接收模塊總結(jié).pdf》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)

1、Spartan-6系列FPGA的UART數(shù)據(jù)接收模塊總結(jié)一、準(zhǔn)備工作:1.UART通信協(xié)議(關(guān)鍵);2.開始的第一步,檢測(cè)到RX數(shù)據(jù)線上下降沿(起始位);3.調(diào)試助手發(fā)送數(shù)據(jù)的波特率設(shè)置,進(jìn)而設(shè)計(jì)采樣頻率;4.對(duì)接收的數(shù)據(jù)進(jìn)行處理,去頭去尾只留中間數(shù)據(jù)位(8位);5.對(duì)接收到的數(shù)據(jù)通過LED燈進(jìn)行驗(yàn)證。UART通信協(xié)議(一幀11位):圖1-1UART通信協(xié)議原理示意圖二、功能框圖:RXDetect_moduleH2L_Sig檢測(cè)RX下降沿RX_En_Sigrx_controlcontrol_moduleRX_D

2、one_Sig_moduleCount_Sig數(shù)據(jù)接收總控制模控制模塊RX_Data塊BPS_moduleBPS_CLK數(shù)據(jù)采集脈沖模塊LED燈rx_module圖1-2各模塊信息傳輸示意圖1.詳細(xì)過程說(shuō)明:?瞭望員(detect_module):正在安逸的曬太陽(yáng),突然警報(bào)拉響(detect_module檢測(cè)到下降沿),瞭望員馬上升旗放狼煙(輸出H2L_Sig(HightoLow下降沿)為高),告訴后方人員有數(shù)據(jù)來(lái)襲(數(shù)據(jù)采取單個(gè)有序的進(jìn)攻戰(zhàn)法),準(zhǔn)備好作戰(zhàn)(數(shù)據(jù)接受工作)。?戰(zhàn)地指揮中心(rx_control

3、_module):一旦看到升旗放狼煙,指揮中心馬上給第一團(tuán)發(fā)指令(Count_Sig),?情報(bào)中心(數(shù)據(jù)采集脈沖模塊BPS_module):接收到指令后立即偵查敵情(數(shù)據(jù)傳輸波特率),并開始固定周期的不間斷掃描,以匹配對(duì)方來(lái)襲速度(波特率),一旦發(fā)現(xiàn)目標(biāo),就給戰(zhàn)地指揮中心發(fā)信號(hào)(BPS_CLK),然后戰(zhàn)地指揮中心指揮狙擊手逐個(gè)殲滅,并把殲滅和捕獲的數(shù)據(jù)記錄下來(lái)(存入RX_Data中)。?總指揮(control_module):戰(zhàn)爭(zhēng)結(jié)束后,戰(zhàn)地指揮中心向總指揮匯報(bào)指令(RX_Done_Sig),把殲滅和捕獲的數(shù)據(jù)

4、(RX_Data)上報(bào)給總指揮,然后總指揮根據(jù)數(shù)據(jù)(RX_Data)控制LED燈,以表嘉獎(jiǎng)。戰(zhàn)地指揮中心服從總指揮,只有總指揮下達(dá)作戰(zhàn)命令(RX_En_Sig)后,戰(zhàn)地指揮中心才可以指揮狙擊手殲滅來(lái)襲數(shù)據(jù)。2.各模塊層級(jí)結(jié)構(gòu)圖如下:detect_module子模塊u0rx_moudelbps_module子模塊u1子模塊u1rx_moudel_demo頂層模塊rx_control_module子模塊u2control_module子模塊u2圖1-3各模塊層級(jí)結(jié)構(gòu)圖3.開發(fā)環(huán)境為ISE14.4,各模塊程序代碼如下

5、:?rx_moudel模塊程序代碼?etect_module模塊程序代碼(u0)?bps_module模塊程序代碼(u1)?rx_control_module模塊程序代碼(u2)?control_module模塊程序代碼?UCF配置文件(Spartan-6XC6SLX16-2CSG324,黑金AX516開發(fā)板)4.程序理解:程序代碼不再一一解釋,根據(jù)功能框圖,如果有Verilog基礎(chǔ),看懂代碼應(yīng)該不會(huì)有什么問題,下面主要討論一下,在學(xué)習(xí)的時(shí)候,一直困擾我的一個(gè)問題。兩個(gè)核心問題:一是assign和always并

6、行的理解;二是assign語(yǔ)句中的信號(hào)發(fā)生變化后,always語(yǔ)句中相應(yīng)信號(hào)的語(yǔ)句是在同一周期內(nèi)執(zhí)行,還是在下一個(gè)周期內(nèi)執(zhí)行?關(guān)于“并行”的理解,和我們平時(shí)用的C語(yǔ)言順序執(zhí)行的過程正好是相對(duì)的,在同一個(gè)時(shí)鐘周期內(nèi),一旦敏感信號(hào)有效,所有由同一個(gè)敏感信號(hào)控制的的always語(yǔ)句塊都是同時(shí)執(zhí)行的。例如:以下兩個(gè)always語(yǔ)句塊,當(dāng)檢測(cè)到CLK的上升沿和RSTn的下降沿時(shí),兩個(gè)always語(yǔ)句塊同時(shí)觸發(fā),里面的begin-end語(yǔ)句塊將同時(shí)執(zhí)行。二是assign語(yǔ)句中的信號(hào)發(fā)生變化后,always語(yǔ)句中相應(yīng)信號(hào)的語(yǔ)

7、句是在同一周期內(nèi)執(zhí)行,還是在下一個(gè)周期內(nèi)執(zhí)行?例如:U1和U2兩個(gè)模塊程序,一旦檢測(cè)到CLK的上升沿,U1和U2模塊中的兩個(gè)always語(yǔ)句塊同時(shí)執(zhí)行,U1模塊中“Count_BPS<=Count_BPS+1”就會(huì)加1,當(dāng)Count_BPS=2604時(shí),BPS_CLK=1,Count_BPS=2604和BPS_CLK=1是在同一個(gè)周期內(nèi)進(jìn)行的。而U2模塊中“1:if(BPS_CLK)”語(yǔ)句也是在同一周期內(nèi)并行執(zhí)行判斷條件的,但是判斷條件BPS_CLK=0,并不是等于1??梢赃@樣理解,并行語(yǔ)句的賦值,先計(jì)算右側(cè)表

8、達(dá)式的值,是在這個(gè)時(shí)鐘周期結(jié)束的時(shí)候才賦給左側(cè)的變量,對(duì)右側(cè)變量值的引用相當(dāng)于“延遲”一個(gè)時(shí)鐘周期。以上為自己學(xué)習(xí)過程中的理解,程序等參考《黑金Verilog那些事兒系列教程》資料,如有錯(cuò)誤,歡迎指正或留言,筆者將不勝感激!

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

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

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問題,請(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)系客服處理。