基于嵌入式處理器的Virtex FPGA板級支持包設(shè)計_第1頁
基于嵌入式處理器的Virtex FPGA板級支持包設(shè)計_第2頁
基于嵌入式處理器的Virtex FPGA板級支持包設(shè)計_第3頁
基于嵌入式處理器的Virtex FPGA板級支持包設(shè)計_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

基于嵌入式處理器的VirtexFPGA板級支持包設(shè)計具有嵌入式處理器的平臺FPGA提供很大的靈活性、集成度和高性能。目前,在單個可編程邏輯器件中開發(fā)極其復(fù)雜且高度定制化的嵌入式系統(tǒng)已成為可能。隨著芯片性能的不斷增加,如何使設(shè)計方法始終高效、多產(chǎn),成為人們面臨的主要挑戰(zhàn)。嵌入式系統(tǒng)開發(fā)的關(guān)鍵活動之一是板級支持包(BSP)。利用BSP,可以使嵌入式軟件應(yīng)用程序成功地初始化,并與連接到處理器的硬件資源進(jìn)行通信。典型的BSP組件包括引導(dǎo)代碼、器件驅(qū)動程序代碼和初始化代碼。創(chuàng)建BSP是一個冗長而繁復(fù)的過程,并且每當(dāng)微處理器與處理器和相關(guān)的外設(shè)的組合有所變更時都得再次創(chuàng)建。對FPGA而言,短的設(shè)計周期加上平臺的靈活性,會使得管理BSP的任務(wù)更為艱巨(圖1)。這就迫使人們尋找更有效地管理BSP的方法。設(shè)計流程和軟件BSP生成賽靈思處理器的設(shè)計包含硬件平臺集結(jié)流程和嵌入式軟件開發(fā)流程。這些流程都通過XPS(XilinxPlatformStudio)工具加以管理,該工具屬于賽靈思嵌入式開發(fā)套件(EDK)的一部分。設(shè)計通常始于在XPS中集結(jié)與配置處理器及與其相連接的器件。定義好硬件平臺后,就可以配置系統(tǒng)的軟件參數(shù)了。XPS的一個主要特點是,它可以根據(jù)你對處理器、外設(shè)和嵌入式操作系統(tǒng)的選擇和配置來定制BSP。系統(tǒng)通過硬件設(shè)計的迭代改變而發(fā)展,同時BSP隨著平臺而發(fā)展。自動生成的BSP可賦予嵌入式系統(tǒng)設(shè)計者以下能力:自動創(chuàng)建與硬件設(shè)計完全匹配的BSP;使用預(yù)認(rèn)證的組件消除BSP設(shè)計錯誤;立即啟動應(yīng)用軟件開發(fā),提高設(shè)計者的效率。創(chuàng)建用于VxWorks的BSPXPS可生成用于賽靈思Virtex-IIPro和Virtex-4FPGA中的PowerPC405處理器及其外設(shè)的定制Tornado2.0.x(VxWorks5.4)或Tornado2.2.x(VxWorks5.5)BSP。生成的BSP包含系統(tǒng)必需的所有支持軟件,包括引導(dǎo)代碼、器件驅(qū)動程序和VxWorks初始化。圖1:平臺FPGA靈活性要求軟件BSP產(chǎn)生過程更高效在XPS定義完具有PowerPC405處理器的硬件系統(tǒng)后,只需遵循以下三個步驟即可生成用于VxWorks的BSP:1.使用軟件設(shè)置對話框選擇要為系統(tǒng)使用的操作系統(tǒng)。XPS用戶可選擇VxWorks5.4或VxWorks5.5作為其目標(biāo)操作系統(tǒng)。2.選擇了操作系統(tǒng)后,可轉(zhuǎn)到資料庫/操作系統(tǒng)參數(shù)標(biāo)簽,根據(jù)定制硬件調(diào)整TornadoBSP。你可以選擇系統(tǒng)中的任意UART器件作為標(biāo)準(zhǔn)I/O器件(標(biāo)準(zhǔn)輸入和標(biāo)準(zhǔn)輸出)。這將使該器件被用作VxWorks控制器件。你還可以選擇將哪些外設(shè)作為連接外設(shè),將哪些器件緊密集成到VxWorks操作系統(tǒng)。例如,賽靈思10/100以太網(wǎng)MAC可以集成到VxWorks增強型網(wǎng)絡(luò)驅(qū)動程序(END)接口?;蛘卟槐貙⒁蕴W(wǎng)器件連接到END接口,而從VxWorks應(yīng)用程序直接訪問它。3.選擇“工具》生成庫”和BSP菜單選項,生成TornadoBSP。生成的BSP與傳統(tǒng)的TornadoBSP相似,位于ppc405_0/bsp_ppc405_0下的“PlatformStudio”目錄中(見圖2)。注意ppc405_0為硬件設(shè)計中PowerPC405處理器的實例名。XPS用戶可指定其它實例名,此時BSP的子目錄名稱會匹配處理器實例名。圖2:生成的BSP目錄結(jié)構(gòu)通過XPS生成的TornadoBSP具有一個“Makefile”文件,如果希望使用Diab編譯器而不是Gnu編譯器,可在命令行修改此文件。TornadoBSP是完全獨立的,并可以轉(zhuǎn)移到其它目錄位置,如BSP的標(biāo)準(zhǔn)Tornado安裝目錄:target/config。定制BSP由XPS生成的用于VxWorks的BSP與大多數(shù)其它TornadoBSP相似,只是賽靈思器件驅(qū)動程序代碼的位置有所不同。與Tornado相關(guān)的現(xiàn)成器件驅(qū)動程序代碼通常位于Tornado分布目錄的target/src/drv目錄中,而由XPS自動生成的BSP的器件驅(qū)動程序代碼位于BSP目錄本身中?;贔PGA的嵌入系統(tǒng)之動態(tài)特性是造成此微小差別的原因。因為基于FPGA的嵌入系統(tǒng)可以用新的或更改后的IP重新編程,器件驅(qū)動程序可以改變,因此就需要對器件驅(qū)動程序源文件進(jìn)行更為動態(tài)的放置。圖2為自動生成的BSP目錄樹,賽靈思器件驅(qū)動程序放置在BSP子目錄ppc405_0_drv_csp/xsrc中。賽靈思器件驅(qū)動程序在C盤中執(zhí)行并分布在數(shù)個源文件中,這點不同于傳統(tǒng)的、通常由單個C頭文件和執(zhí)行文件組成的VxWorks驅(qū)動程序。此外,對于器件驅(qū)動程序,既有獨立于操作系統(tǒng)的執(zhí)行,又有可選的依賴于操作系統(tǒng)的執(zhí)行。驅(qū)動程序的操作系??立部分應(yīng)同任何操作系統(tǒng)或處理器一起使用。它提供了一種應(yīng)用程序接口(API),能提取基礎(chǔ)硬件的功能。驅(qū)動程序的操作系統(tǒng)附屬部分對驅(qū)動程序進(jìn)行調(diào)整,使其得以在VxWorks之類的操作系統(tǒng)下使用,例如串行端口使用的SerialIO驅(qū)動程序和以太網(wǎng)控制器使用的END驅(qū)動程序。只有能被緊密集成到標(biāo)準(zhǔn)操作系統(tǒng)接口的驅(qū)動程序才要求操作系統(tǒng)附屬驅(qū)動程序。賽靈思驅(qū)動程序源文件加入VxWorks映像構(gòu)件的方式同其它BSP文件加入的方式相同。針對每個驅(qū)動程序,在BSP目錄中都有一個名為ppc405_0_drv_.c的文件。此文件包括針對給定器件的驅(qū)動程序源文件(*.c),并自動由BSPmakefile編譯。該過程與VxWorkssysLib.c針對風(fēng)河系統(tǒng)(WindRiver)提供的驅(qū)動程序納入源文件的過程相似。賽靈思驅(qū)動程序文件不像其余驅(qū)動程序一樣單純納入sysLib.c的原因,在于命名空間的沖突和可維護(hù)性問題。如果所有的賽靈思驅(qū)動程序文件都是單個編譯單元的一部分,那么靜態(tài)功能和數(shù)據(jù)就不再處于保密狀態(tài)了。這會對器件驅(qū)動程序產(chǎn)生限制,也會抵消其操作系??立性。與TornadoIDE集成自動生成的BSP被集成到TornadoIDE。BSP可從命令行使用“Tornadomake”工具編譯,或從“TornadoProject”編譯。生成BSP后,只需在命令行鍵入“makeVxWorks”來編譯可啟動的RAM映像。這是假定此前已設(shè)置了Tornado環(huán)境(此設(shè)置可以在Windows操作平臺上在命令行使用host/x86-win32/bin/torVars.bat來完成)。如果你使用的是“TornadoProject”器件,可以在新生成的BSP的基礎(chǔ)上創(chuàng)建一個項目,然后使用通過IDE提供的構(gòu)件環(huán)境編譯此BSP。Tornado2.2.x不僅支持Gnu編譯器,還支持Diab編譯器。XPS創(chuàng)建的TornadoBSP有一個“Makefile”,如果你想使用Diab編譯器而不是Gnu編譯器,則可以在命令行修改此“Makefile”。尋找稱為“工具”的生成變量,將值設(shè)置到Diab而不是Gnu。如果使用“TornadoProject”工具,項目最初創(chuàng)建時可選擇所需的編譯器。文件“50ppc405_0.cdf”位于BSP目錄下,并在創(chuàng)建BSP的過程中加以更改。此文件將器件驅(qū)動程序融入了TornadoIDE菜單系統(tǒng)。驅(qū)動程序在“硬件》外圍器件”子文件夾處與BSP結(jié)合在一起。在其下面是單獨的器件驅(qū)動程序文件夾?!癟ornadoProjectFacility”的“文件”標(biāo)簽也會顯示用來將賽靈思器件驅(qū)動程序與Tornado構(gòu)建過程結(jié)合在一起的文件數(shù)量。這些文件由XPS自動創(chuàng)建,你只需要知道其存在就行。一些常用器件與操作系統(tǒng)緊密結(jié)合,而其它器件可通過直接使用器件驅(qū)動程序從應(yīng)用程序??問。與VxWorks緊密結(jié)合的器件驅(qū)動程序包括:10/100以太網(wǎng)MAC;10/100以太網(wǎng)LiteMAC;1Gb以太網(wǎng)MAC;16550/16?50UART;UARTLite;中斷控制器;SystemACE技術(shù);PCIe。所有其它器件及相關(guān)的器件驅(qū)動程序并未緊密集成到VxWorks接口,而只是與其松散集成。對這些器件的訪問可通過從用戶應(yīng)用程序直接訪問相關(guān)器件驅(qū)動程序來進(jìn)行。本文小結(jié)隨著基

溫馨提示

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

最新文檔

評論

0/150

提交評論