利用XPS工具快速生成Virtex FPGA的板級支持包
該過程與VxWorks sysLib.c針對風(fēng)河系統(tǒng)(Wind River)提供的驅(qū)動程序納入源文件的過程相似。賽靈思驅(qū)動程序文件不像其余驅(qū)動程序一樣單純納入sysLib.c的原因,在于命名空間的沖突和可維護(hù)性問題。如果所有的賽靈思驅(qū)動程序文件都是單個編譯單元的一部分,那么靜態(tài)功能和數(shù)據(jù)就不再處于保密狀態(tài)了。這會對器件驅(qū)動程序產(chǎn)生限制,也會抵消其操作系統(tǒng)獨(dú)立性。
與Tornado IDE集成
自動生成的BSP被集成到Tornado IDE。BSP可從命令行使用“Tornado make”工具編譯,或從“Tornado Project”編譯。生成BSP后,只需在命令行鍵入“make VxWorks”來編譯可啟動的RAM映像。這是假定此前已設(shè)置了Tornado環(huán)境(此設(shè)置可以在Windows操作平臺上在命令行使用host/x86-win32/bin/torVars.bat來完成)。如果你使用的是“Tornado Project”器件,可以在新生成的BSP的基礎(chǔ)上創(chuàng)建一個項(xiàng)目,然后使用通過IDE提供的構(gòu)件環(huán)境編譯此BSP。
Tornado 2.2.x不僅支持Gnu編譯器,還支持Diab編譯器。XPS創(chuàng)建的Tornado BSP有一個“Makefile”,如果你想使用Diab編譯器而不是Gnu編譯器,則可以在命令行修改此“Makefile”。尋找稱為“工具”的生成變量,將值設(shè)置到Diab而不是Gnu。如果使用“Tornado Project”工具,項(xiàng)目最初創(chuàng)建時可選擇所需的編譯器。
文件“50ppc405_0.cdf”位于BSP目錄下,并在創(chuàng)建BSP的過程中加以更改。此文件將器件驅(qū)動程序融入了Tornado IDE菜單系統(tǒng)。驅(qū)動程序在“硬件>外圍器件”子文件夾處與BSP結(jié)合在一起。在其下面是單獨(dú)的器件驅(qū)動程序文件夾。
“Tornado Project Facility”的“文件”標(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)Lite MAC;1Gb以太網(wǎng)MAC;16550/16450 UART;UART Lite;中斷控制器;System ACE技術(shù);PCIe。
所有其它器件及相關(guān)的器件驅(qū)動程序并未緊密集成到VxWorks接口,而只是與其松散集成。對這些器件的訪問可通過從用戶應(yīng)用程序直接訪問相關(guān)器件驅(qū)動程序來進(jìn)行。
本文小結(jié)
隨著基于嵌入式處理器的FPGA日益受人喜愛并得到廣泛應(yīng)用,能將硬件和軟件流程有效組織在一起的工具解決方案應(yīng)運(yùn)而生,對幫助設(shè)計者工作效率跟上芯片的進(jìn)展起到了關(guān)鍵作用。
賽靈思用戶一直非常認(rèn)可XPS及其與VxWorks 5.4和5.5的集成。賽靈思將對Wind River流程的開發(fā)予以不懈支持,此流程不久就會包括對VxWorks 6.0和Workbench IDE的支持。
評論