新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于FPGA的嵌入式系統(tǒng)XBD文件設計

基于FPGA的嵌入式系統(tǒng)XBD文件設計

作者: 時間:2010-11-12 來源:網絡 收藏

  2 板級描述

  (Xilinx Board Description)定義了電路板的功能模塊以及各個模塊與芯片的接口情況,利用BSB可以將中包含的功能模塊加入到要建立的中。

  在EDK的安裝目錄下,Xilinx公司為者提供了一些開發(fā)板的XBD文件。但是,一個新的硬件平臺建立后,想要在EDK軟件中利用BSB向導讀取硬件電路的信息,從而高效無誤地產生,需要針對電路板上的各個單元電路新的XBD文件來描述硬件平臺的信息。通常,一個XBD文件包括如下信息:

  ◆電路板所支持的功能模塊的接口;

  ◆每個模塊的屬性、參數(shù)、端口定義;

  ◆不同端口或模塊間的連接信息;

  ◆每個FPGA引腳的UCF約束信息。

  由于XBD文件是對硬件各功能模塊的描述,因此在XBD過程中也是以模塊的形式來表示電路板信息的,而且各個功能塊的描述具備相似的結構,使用相同的賦值命令進行具體參數(shù)定義。

  2.1,模塊的定義

  一個完整的模塊定義如下:

  BEGIN

  :

  END

  關鍵字BEGIN表示一個新的模塊開始,后面是要定義模塊的類型,中間部分是與描述IP核行為的MPD文件相對應的各種參數(shù)。當前,XBD文件能夠識別3種類型的模塊定義:

 ?、買O_INTERFACE。IO_INTERFACE指定了一個電路板上的物理模塊(不包括FPGA本身),每一個IO—INTERFACE在板上應該有一個在FPGA中使用的軟IP核與之相對應。

  ②IO_ADAPTER。IO_ADAPTER指定了連接IO_INTERFACE引腳與相應軟IP端口的軟膠合邏輯。

 ?、跢PGA。FPGA模塊代表FPGA本身。

  2.2 賦值命令

  每個BEGIN—END模塊包括多個賦值命令。賦值命令至少包括一個name—value對,還可以加入多個name—value子對。

  賦值命令包括:

 ?、貯TTRIBIJTE。ATTRIBUTE命令是對屬性命名的關鍵字。對于經過ATTRIBUTE賦值的對象,EDK工具會執(zhí)行某種操作或以特定的方式使用該對象。ATTRIBUTE賦值命令可以在BEGIN—END模塊內部或者外部使用。

 ?、赑ARAMETER。PARAMETER命令將IP核中的PARAMETER參數(shù)同XBD文件中的IO_INTERE、ACE聯(lián)系在一起,且PARAMETER命令只能在IO_INTERFACE模塊內部使用。

 ?、跴ORT。PORT命令用來指定電路板上各個模塊(包括FPGA)的連通性,只能在IO_INTERFACE和IO_ADAPTER模塊內使用。

  PARAMETER和PORT命令后能夠跟隨子屬性,每一個子屬性也是name—value對。子屬性必須同PA—RAMETER和PORT命令在同一行,并且用逗號隔開。

  3 XBD文件的設計實現(xiàn)

  在FPGA的嵌入式中,無論是硬核Power—PC還是軟核Microblaze處理器,都是通過IP核的方式與周圍設備進行操作的,因此,在XBD中定義電路模塊時要選擇與實際電路相對應的IP核。在描述IP核行為的MPD文件中,定義了IP核的各種參數(shù),I0_INTERFACE的子屬性IOTYPE決定了該IP核是否能夠與電路板上的特定模塊進行連接,通過查看MPD文件的信息就可以知道該IP的功能及其各種參數(shù)。例如,對于電路板上的4個LED顯示單元,為了能夠利用BSB將其加入到嵌入式系統(tǒng)中,需要在XBD文件中定義一個能夠對4個LED進行操作的模塊。在FPGA的嵌入式系統(tǒng)中,處理器通過通用I/O接口GPIO對LED進行操作,故LED在XBD中要定義一個IOTYPE為GPIO的I0_INTER—FACE模塊,表示可以通過這個模塊與實際電路板上的I/O進行通信。在GPIO的MPD文件描述中,對于I0_IN—TERFACE進行了如下定義:

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


評論


相關推薦

技術專區(qū)

關閉