創建BSP是一個冗長而繁復的過程,并且每當
設計流程和軟件BSP生成
賽靈思處理器的設計包含硬件平臺集結流程和嵌入式軟件開發流程。這些流程都通過XPS(Xilinx Platform Studio)工具加以管理,該工具屬于賽靈思嵌入式開發套件(EDK)的一部分。
設計通常始于在XPS中集結與配置處理器及與其相連接的器件。定義好硬件平臺后,就可以配置系統的軟件參數了。XPS的一個主要特點是,它可以根據你對處理器、外設和嵌入式操作系統的選擇和配置來定制BSP。系統通過硬件設計的迭代改變而發展,同時BSP隨著平臺而發展。
自動生成的BSP可賦予嵌入式系統設計者以下能力:自動創建與硬件設計完全匹配的BSP;使用預認證的組件消除BSP設計錯誤;立即啟動應用軟件開發,提高設計者的效率。
創建用于VxWorks的BSP
XPS可生成用于賽靈思Virtex-II Pro和Virtex-4 FPGA中的
圖1:平臺FPGA靈活性要求軟件BSP產生過程更高效
在XPS定義完具有PowerPC 405處理器的硬件系統后,只需遵循以下三個步驟即可生成用于VxWorks的BSP:
1. 使用軟件設置對話框選擇要為系統使用的操作系統。XPS用戶可選擇VxWorks5.4或VxWorks5.5作為其目標操作系統。
2. 選擇了操作系統后,可轉到資料庫/操作系統參數標簽,根據定制硬件調整Tornado BSP。你可以選擇系統中的任意UART器件作為標準I/O器件(標準輸入和標準輸出)。這將使該器件被用作VxWorks控制器件。
你還可以選擇將哪些外設作為連接外設,將哪些器件緊密集成到VxWorks操作系統。例如,賽靈思10/100以太網MAC可以集成到VxWorks增強型網絡驅動程序(END)接口。或者不必將以太網器件連接到END接口,而從VxWorks應用程序直接訪問它。
3. 選擇“工具>生成庫”和BSP菜單選項,生成Tornado BSP。生成的BSP與傳統的Tornado BSP相似,位于ppc405_0/bsp_ppc405_0下的“Platform Studio”目錄中(見圖2)。注意ppc405_0為硬件設計中PowerPC 405處理器的實例名。XPS用戶可指定其它實例名,此時BSP的子目錄名稱會匹配處理器實例名。
圖2:生成的BSP目錄結構
通過XPS生成的Tornado BSP具有一個“Makefile”文件,如果希望使用Diab編譯器而不是Gnu編譯器,可在命令行修改此文件。
Tornado BSP是完全獨立的,并可以轉移到其它目錄位置,如BSP的標準Tornado安裝目錄:target/config。
定制BSP
由XPS生成的用于VxWorks的BSP與大多數其它Tornado BSP相似,只是賽靈思器件驅動程序代碼的位置有所不同。與Tornado相關的現成器件驅動程序代碼通常位于Tornado分布目錄的 target/src/drv目錄中,而由XPS自動生成的BSP的器件驅動程序代碼位于BSP目錄本身中。
基于FPGA的嵌入系統之動態特性是造成此微小差別的原因。因為基于FPGA的嵌入系統可以用新的或更改后的IP重新編程,器件驅動程序可以改變,因此就需要對器件驅動程序源文件進行更為動態的放置。圖2為自動生成的BSP目錄樹,賽靈思器件驅動程序放置在BSP子目錄 ppc405_0_drv_csp/xsrc中。