當(dāng)前位置:首頁 > 嵌入式 > 嵌入式硬件
[導(dǎo)讀]由于FPGA的功能日益強大,開發(fā)周期短、可重復(fù)編程等優(yōu)點也越來越明顯,可以在FPGA芯片上集成UART功能模塊,從而簡化電路,縮小PCB面積,提高系統(tǒng)可靠性。此外,F(xiàn)PGA的設(shè)計具

由于FPGA的功能日益強大,開發(fā)周期短、可重復(fù)編程等優(yōu)點也越來越明顯,可以在FPGA芯片上集成UART功能模塊,從而簡化電路,縮小PCB面積,提高系統(tǒng)可靠性。此外,F(xiàn)PGA的設(shè)計具有很高的靈活性,可以方便地進行升級和移植。

設(shè)計背景

通用異步收發(fā)器(Universal Asynchronous Receiver/Transmitter,UART)可以和各種標(biāo)準(zhǔn)串行接口,如RS 232和RS 485等進行全雙工異步通信,具有傳輸距離遠、成本低、可靠性高等優(yōu)點。一般UART由專用芯片如8250,16450來實現(xiàn),但專用芯片引腳都較多,內(nèi)含許多輔助功能,在實際使用時往往只需要用到UART的基本功能,使用專用芯片會造成資源浪費和成本提高。

一般而言UART和外界通信只需要兩條信號線RXD和TXD,其中RXD是UART的接收端,TXD是UART的發(fā)送端,接收與發(fā)送是全雙工形式。由于可編程邏輯器件技術(shù)的快速發(fā)展,F(xiàn)PGA的功能日益強大,其開發(fā)周期短、可重復(fù)編程的優(yōu)點也越來越明顯,在FPGA芯片上集成UART功能模塊并和其他模塊組合可以很方便地實現(xiàn)一個能與其他設(shè)備進行串行通信的片上系統(tǒng)。

設(shè)計要求

本接口作為一個關(guān)于內(nèi)容保護系統(tǒng)的電路板的一部分,主要用于和計算機進行通信,也可與其他帶UART接口的電路板進行通信。對數(shù)據(jù)傳輸速率要求不高,傳輸距離也不要求很長,但傳輸數(shù)據(jù)要求準(zhǔn)確可靠。該接口可用來監(jiān)控電路內(nèi)部狀態(tài),將FPGA內(nèi)部信息通過串口輸出至計算機,以達到輔助調(diào)試電路的目的。另外,電路板上的FPGA外掛有串行Flash,可通過串口對Flash進行調(diào)試,將Flash中的數(shù)據(jù)輸出至計算機,并可將數(shù)據(jù)通過串口寫入Flash中。簡而言之,該接口是作為計算機與電路板的一個可靠的雙向數(shù)據(jù)傳輸通道。

UART的實現(xiàn)原理

UART是異步通信方式,通信的發(fā)送方和接收方各自有獨立的時鐘,傳輸?shù)乃俾视呻p方約定。本設(shè)計采用最常用的每秒9600波特的傳輸速度。

UART的通信協(xié)議十分簡單,以低電平作為起始位,高電平作為停止位,中間可傳輸5~8比特數(shù)據(jù)和1比特奇偶校驗位,奇偶校驗位的有無和數(shù)據(jù)比特的長度由通信雙方約定。一幀數(shù)據(jù)傳輸完畢后可以繼續(xù)傳輸下一幀數(shù)據(jù),也可以繼續(xù)保持為高電平,兩幀之間保持高電平,持續(xù)時間可以任意長。本方案采用不添加校驗位的方法,以提高數(shù)據(jù)傳輸效率。發(fā)送端發(fā)送數(shù)據(jù)時先發(fā)一低電平,然后發(fā)送8比特數(shù)據(jù),之后馬上把信號拉高,從而完成一幀數(shù)據(jù)傳送。接收端接收到低電平時開始計數(shù),然后接收8比特信息位后如果檢測到高電平即認為已接收完一幀數(shù)據(jù),繼續(xù)等待下一幀起始信號低電平的到來,若接收完8比特數(shù)據(jù)后沒有檢測到高電平則認為這不是一幀有效數(shù)據(jù),將其丟棄,繼續(xù)等待起始信號。時序關(guān)系如圖1所示,收發(fā)可同時進行,互不干擾。

 


圖1 RS-232接口的工作時序

硬件電路原理圖及說明

一個完整的RS-232接口是一個25針的D型插頭座,25針的連接器實際上只有9根連接線,所以就產(chǎn)生了一個簡化的9針D型RS-232插頭座,常用的就是一個9針的D型插頭座。通常只用到一根發(fā)送信號線、一根接收信號線和一條地線,其余的振鈴指示、請求傳送、清除傳送、準(zhǔn)備就緒及數(shù)據(jù)載波檢測等線可以做懸空處理。

RS-232標(biāo)準(zhǔn)規(guī)定邏輯1的電平為 -15~-3V,邏輯0的電平為+3~+15V。CMOS電路的電平范圍一般是從0V到電源電壓,F(xiàn)PGA的I/O輸入輸出電壓通常為0~3.3V,為了與FPGA 供電電壓保持一致,必須加電平轉(zhuǎn)換芯片。選用Maxim公司的MAX3232電平轉(zhuǎn)換芯片,電路原理圖如圖2所示。

 


圖2 RS-232接口電路

連線采用最簡單的3 線制連接模式,即只需要兩根信號線和一根地線來完成數(shù)據(jù)收發(fā)。而FPGA 只需要選擇兩個普通I/O引腳分別與接口芯片MAX3232 對應(yīng)引腳T2IN、R2OUT相連即可完成將串口電平轉(zhuǎn)換為設(shè)備電路板的工作電平,即實現(xiàn)RS-232電平和TTL/ CMOS 電平的轉(zhuǎn)換。一個MAX3232芯片可以支持兩個串口的電平變換,我們選擇其中的一組接口,圖中的4個電阻可以省去。在電路中加入了0Ω的跳線電阻,是為了在這組接口出故障時可以方便地跳線,使用另一組接口。

軟件設(shè)計

異步收發(fā)器由波特率發(fā)生器、UART接收器和UART發(fā)送器三個模塊構(gòu)成。采用的是每秒9600波特的傳輸速度,而系統(tǒng)提供的時鐘是 10MHz,這就要求進行速率變換。在實際中由于電路中存在干擾等因素,在數(shù)據(jù)邊緣進行采樣容易發(fā)生誤判,只有在數(shù)據(jù)的中央進行采樣出錯的概率才能降到最低,所以使用16倍于波特率的時鐘,即9600×16Hz=15600Hz。因此波特率發(fā)生器輸出的時鐘頻率應(yīng)為15600Hz,UART 收發(fā)的每一個數(shù)據(jù)寬度都是波特率發(fā)生器輸出的時鐘周期的16倍,采用Altera公司芯片內(nèi)部自帶的鎖相環(huán)可以方便地實現(xiàn)。UART接收器和UART發(fā)送器均采用Verilog語言編程實現(xiàn)。

通常使用的數(shù)據(jù)多為并行數(shù)據(jù),為了方便與系統(tǒng)中其他電路互連,UART接收器的輸出數(shù)據(jù)和UART發(fā)送器的輸入數(shù)據(jù)均為8比特并行數(shù)據(jù)。 UART接收器將串行數(shù)據(jù)接收下來并將其轉(zhuǎn)化為并行數(shù)據(jù)送出,UART發(fā)送器將輸入的并行數(shù)據(jù)轉(zhuǎn)換為串行數(shù)據(jù)并按照UART的幀格式輸出。

 


圖3 UART接收器符號圖

圖3為UART接收器的符號圖,其中rst為全局復(fù)位信號,rxd為串行數(shù)據(jù)輸入端,baudClk16x為輸入時鐘,dataOut[70] 為并行數(shù)據(jù)輸出口,irq為輸出數(shù)據(jù)的指示信號。首先接收器等待起始位的到來,在每個時鐘上升沿檢測輸入數(shù)據(jù)是否為低電平,若檢測到低電平,則開始計數(shù),如果連續(xù)8個時鐘內(nèi)輸入數(shù)據(jù)均為低電平,則認為起始信號有效,其中若有一次采樣得到的為高電平則認為起始信號無效,返回初始狀態(tài)重新等待起始信號的到來。認定起始信號有效后,每隔16個時鐘采樣一次,這樣就可以保證每次都在數(shù)據(jù)的中點出采樣,將采樣結(jié)果送入8比特的移位寄存器,8比特數(shù)據(jù)采樣結(jié)束后,間隔 16個時鐘采樣停止位。如果采得的是高電平,則認為這幀數(shù)據(jù)有效,將移位寄存器中的數(shù)據(jù)并行送出同時將輸出數(shù)據(jù)的指示信號置高,然后接收器復(fù)位,重新等待下一幀的到來;若采得的為低電平,則認為這不是一幀有效數(shù)據(jù),不將移位寄存器中的數(shù)據(jù)輸出,直接返回初始狀態(tài)。[!--empirenews.page--]

 


圖4 UART發(fā)送器符號圖

圖4 為UART發(fā)送器的符號圖,其中flag為輸入數(shù)據(jù)指示信號,rst為全局復(fù)位信號,clkin為輸入時鐘,din[70]為并行數(shù)據(jù)輸入端,tdo為串行數(shù)據(jù)輸出端。接收器在每個時鐘的上升沿檢測輸入數(shù)據(jù)指示信號,若檢測到其為高電平,則將并行輸入數(shù)據(jù)鎖存入內(nèi)部的8比特移位寄存器,接下來先送出一個低電平并保持16個時鐘,然后每隔16個時鐘將移位寄存器中的數(shù)據(jù)移出一位,最后送出高電平,返回初始狀態(tài)。

系統(tǒng)調(diào)試

UART接收器和發(fā)送器可根據(jù)實際需要單獨使用,但在調(diào)試時為了方便,將兩者對接起來,如圖5所示。UART接收器的輸出與UART發(fā)送器的輸入相連,復(fù)位信號和時鐘信號共用,時鐘信號由片外晶振提供,輸入FPGA后通過鎖相環(huán)轉(zhuǎn)換為需要的頻率。

 

圖5 調(diào)試系統(tǒng)模塊圖

串口的調(diào)試需要借助于串口調(diào)試工具,可以用VC編程實現(xiàn),也可以直接使用網(wǎng)上已有的調(diào)試工具。直接選用網(wǎng)上的串口調(diào)試助手進行了測試,將數(shù)據(jù)從計算機送出,經(jīng)過UART接口接收后再送回計算機。經(jīng)過長達數(shù)十分鐘的不間斷接收和發(fā)送后,將送回計算機的數(shù)據(jù)與原始數(shù)據(jù)進行比較,多次測試均沒有發(fā)生任何錯誤,這充分說明了這一UART接口程序具有高度的可靠性和穩(wěn)定性,可以滿足設(shè)計要求。

結(jié)束語

基于FPGA設(shè)計和實現(xiàn)UART,可以用片上很少的邏輯單元實現(xiàn)UART的基本功能。與傳統(tǒng)設(shè)計相比,能有效減少系統(tǒng)的PCB面積,降低系統(tǒng)的功耗,提高設(shè)計的穩(wěn)定性和可靠性,并可方便地進行系統(tǒng)升級和移植。

本設(shè)計具有較大的靈活性,通過調(diào)整波特率發(fā)生器的分頻參數(shù),就可以使其工作在不同的頻率。采用16倍波特率的采樣時鐘,可以實時有效探測數(shù)據(jù)的起始位,并可對數(shù)據(jù)位進行“對準(zhǔn)”中央采樣,保證了所采樣數(shù)據(jù)的正確性。該模塊可以作為一個完整的IP核移植進各種FPGA中,在實際應(yīng)用時可嵌入到其他系統(tǒng)中,很容易實現(xiàn)和遠端上位機的異步通信。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉