基于FSL總線的UART外設(shè)IP核設(shè)計(jì)_第1頁(yè)
基于FSL總線的UART外設(shè)IP核設(shè)計(jì)_第2頁(yè)
基于FSL總線的UART外設(shè)IP核設(shè)計(jì)_第3頁(yè)
基于FSL總線的UART外設(shè)IP核設(shè)計(jì)_第4頁(yè)
基于FSL總線的UART外設(shè)IP核設(shè)計(jì)_第5頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、基于FSL總線的UART外設(shè)IP核設(shè)計(jì)東北電力大學(xué) 王玉峰聊城工業(yè)學(xué)校 胥保華引 言在基于MicroBlaze的SOPC系統(tǒng)中,將用戶IP核整合到基于MicroBlaze的嵌入式軟核處理器系統(tǒng)中,通常有兩種方法:一種是將IP核連接到OPB總線;另一種是將用戶IP連接到MicroBlaze專用的FSL總線上。盡管OPB和FSL總線都是MicroBlaze軟核與FPGA其他片上邏輯資源連接的主要途徑,但它們的分工足不同的。OPB總線適用于將要求低速和低性能的設(shè)備連接到MicroBlaze系統(tǒng)中;而FSL總線則適用于將對(duì)時(shí)間要求高的用戶自定義IP核,整合到基于MicroBlaze的軟核系統(tǒng)中,以實(shí)現(xiàn)

2、硬件加速。在Xilinx公司提供的IP核中,有基于OPB總線的UART外設(shè)IP核,但是沒(méi)有基于FSL總線的IP核,使得該UART外設(shè)在對(duì)時(shí)間要求高的系統(tǒng)中性能受到制約。在這種情況下,有必要設(shè)計(jì)基于FSL總線的UART外設(shè),以使得UART能夠在高速系統(tǒng)中發(fā)揮最佳性能。Xilinx公司的MicroBlaze軟核是支持CoreConnect總線的標(biāo)準(zhǔn)外設(shè)集合。MicroBlaze處理器可以運(yùn)行在150MHz時(shí)鐘下,提供125 DMIPS的性能,非常適合于設(shè)計(jì)針對(duì)網(wǎng)絡(luò)、電信、數(shù)據(jù)通信和消費(fèi)市場(chǎng)的復(fù)雜嵌入式系統(tǒng)。1 MicroBlaze體系結(jié)構(gòu)1.1 MicroBlaze內(nèi)核結(jié)構(gòu)MicroBlaze是基

3、于Xilinx公司FPGA的微處理器IP核,與其他外設(shè)IP核一起,可以完成可編程系統(tǒng)芯片(SOPC)的設(shè)計(jì)。MicroBlaze處理器采用RISC架構(gòu)和哈佛結(jié)構(gòu)的32位指令和數(shù)據(jù)總線,可以全速執(zhí)行存儲(chǔ)在片上存儲(chǔ)器和外部存儲(chǔ)器中的程序,并訪問(wèn)其中的數(shù)據(jù)。內(nèi)核結(jié)構(gòu)如圖1所示。1.2 MicroBlaze的總線接口MicroBlaze處理器軟核具有豐富的接口資源。最新版本的MicroBlaze軟核支持的總線接口有:帶字節(jié)允許的OPB(On_chip Peripheral Bus,片上外設(shè)總線)V2.0接口;高速的LMB(Local Memory Bus,本地存儲(chǔ)器總線)接口;FSL主從設(shè)備接口;XC

4、L(Xilinx Cache Link,Xilinx緩存鏈路)接口;MDM(Microprocessor Debug Module,微處理器調(diào)試模塊)連接的凋試接口。OPB是對(duì)IBM CoreConnect片上總線標(biāo)準(zhǔn)的部分實(shí)現(xiàn),適用于IP核作為外設(shè)連接到MicroBlaze系統(tǒng)中;LMB用于實(shí)現(xiàn)對(duì)片上的BlockRAM的高速訪問(wèn);FSL是MicroBlaze軟核特有的一個(gè)基于FIFO的單向鏈路,可以實(shí)現(xiàn)用戶自定義IP核與MicroBlaze內(nèi)部通用寄存器的直接相連;而XCL則是MicroBlaze軟核新增加的,用于實(shí)現(xiàn)對(duì)片外存儲(chǔ)器的高速訪問(wèn)。MicroBlaze軟核還有專門的調(diào)試接口,通過(guò)參

5、數(shù)設(shè)置,開(kāi)發(fā)人員可以只使用特定應(yīng)用所需要的處理器特性。2 基于FSL總線的UART IP核設(shè)計(jì)UART(Universal Asynchronous Receiver Transmit-ter,通用異步收發(fā)器)是廣泛使用的串行數(shù)據(jù)傳輸協(xié)議,允許在串行鏈路上進(jìn)行全雙工的通信。串行外設(shè)用到的RS232-C異步串行接口,一般采用專用的集成電路(即UART)實(shí)現(xiàn)。8250、8251、NS16450 等芯片都是常見(jiàn)的UART器件,這類芯片已經(jīng)相當(dāng)復(fù)雜,有的含有許多輔助的模塊(如FIFO),有時(shí)并不需要使用完整的UART功能和這些輔助功能。如果設(shè)計(jì)上用到了FPGA器件,那么可以將所需要的UART功能集成到

6、FPGA內(nèi)部。使用VHDL將UART的核心功能集成,從而使整個(gè)設(shè)計(jì)更加緊湊、穩(wěn)定且可靠。2.1 UART的典型應(yīng)用UART主要由數(shù)據(jù)總線接口、控制邏輯、波特率發(fā)生器、發(fā)送部分和接收部分等組成。UART內(nèi)部所實(shí)現(xiàn)的功能包括微處理器接口、發(fā)送緩沖器、發(fā)送移位寄存器、幀產(chǎn)生、奇偶校驗(yàn)、數(shù)據(jù)接收緩沖器、接收移位寄存器等。UART的典型應(yīng)用如圖2所示。2.2 FSL總線接口FSL總線是一個(gè)基于FIFO的單向點(diǎn)對(duì)點(diǎn)通信總線,主要用于FPGA的兩個(gè)模塊間進(jìn)行快速的通信。FSL接口的IO信號(hào)如圖3所示。該接口的主要特點(diǎn):?jiǎn)蜗虻狞c(diǎn)對(duì)點(diǎn)通信;非共享的無(wú)仲裁通信機(jī)制;支持控制位與數(shù)據(jù)分離的通信;基于FIFO的通信模

7、式;可配置的數(shù)據(jù)寬度;高速的通信性能(獨(dú)立運(yùn)行達(dá)到600 MHz)。2.3 FSL總線UART硬件設(shè)計(jì)設(shè)計(jì)中的主要內(nèi)容是UART IP模塊和MicroBlaze之間的FSL總線接口,該接口提供了UART模塊與MicroBlaze之間通信的橋梁。Xilinx公司提供的IP核中包括基于OPB總線的UART模塊,但是沒(méi)有提供基于FSL總線的UART模塊。如果設(shè)計(jì)中需要在UART模塊和MicroBlaze之間進(jìn)行高速交互,設(shè)計(jì)一個(gè)基于FSL總線的UART無(wú)疑是最佳的選擇。UART經(jīng)過(guò)FSL總線與MicroBlaze的連接如圖4所示。從圖4中可以看出:對(duì)于FSL1,MicroBlaze是主設(shè)備,UART

8、模塊是從設(shè)備,MicroBlaze可以發(fā)送數(shù)據(jù)或者命令給UART模塊;而對(duì)FSL0來(lái)說(shuō),UART模塊是主設(shè)備,而MicroBlaze是從設(shè)備,UART模塊可以發(fā)送數(shù)據(jù)給MicroBlaze來(lái)處理。FSL0和FSL1構(gòu)成了一個(gè)FSL總線對(duì),使得MicroBlaze和UART模塊可以進(jìn)行全雙工通信。其設(shè)計(jì)的頂層實(shí)現(xiàn)部分代碼如下:2.4 FSL總線UART驅(qū)動(dòng)設(shè)計(jì)對(duì)用戶自己設(shè)計(jì)的IP核來(lái)說(shuō),如果要集成到SOPC系統(tǒng)中,就必須為該IP核開(kāi)發(fā)相應(yīng)的驅(qū)動(dòng)程序。驅(qū)動(dòng)程序提供一組操作自定義IP核的操作宏,通過(guò)這些操作宏,軟件程序開(kāi)發(fā)者可以在高層對(duì)IP核進(jìn)行操作。本設(shè)計(jì)中的驅(qū)動(dòng)程序,提供了串口對(duì)字符或者字符串的

9、發(fā)送和接收,用C語(yǔ)言來(lái)設(shè)計(jì)。部分驅(qū)動(dòng)代碼如下:3 FSL總線UART外設(shè)IP核的驗(yàn)證3.1 硬件平臺(tái)無(wú)論基于何種總線,用戶開(kāi)發(fā)的IP核開(kāi)發(fā)完畢之后,都要組建一個(gè)基本系統(tǒng)對(duì)IP核進(jìn)行驗(yàn)證。這個(gè)基本系統(tǒng)要包含必要的外設(shè),重點(diǎn)對(duì)IP核的性能進(jìn)行測(cè)試。如果在測(cè)試中發(fā)現(xiàn)錯(cuò)誤,則需修改錯(cuò)誤然后導(dǎo)入到系統(tǒng)中,再進(jìn)行測(cè)試,直到滿足基本功能、達(dá)到設(shè)計(jì)預(yù)期目標(biāo)為止。如圖5所示,本驗(yàn)證平臺(tái)包括以下處理器和外設(shè):MicroBlaze,數(shù)據(jù)指令BRAM,調(diào)試模塊,DCM模塊和用戶IP模塊。特別注意,增加了2條FSL總線組成一個(gè)FSL總線對(duì),用于用戶IP與處理器進(jìn)行通信。3.2 軟件開(kāi)發(fā)在上述硬件平臺(tái)基礎(chǔ)上,開(kāi)發(fā)一個(gè)基本的C程序,對(duì)FSL總線UART進(jìn)行測(cè)試。代碼如下:打開(kāi)串口調(diào)試工具,觀察到的結(jié)果如圖6所

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論