edk

edk

嵌入式系統的工具
EDK=Embedded Development Kit,嵌入式開發套件。 EDK是xilinx公司開發嵌入式系統的工具。比起xilinx的ISE,二者不同在于,如果僅僅是使用xilinx的fpga做邏輯設計,隻需要ISE開發環境。但是如果要使用powerpc或者microblaze處理器,從硬件到軟件設計的整個嵌入式系統設計,就需要EDK。[1]
  • 中文名:edk
  • 外文名:Embedded Development Kit
  • 别名:
  • 屬于:嵌入式開發套件
  • 公司:xilinx公司

EDK基本介紹

嵌入式系統經曆了從 單片計算機、 工業控制計算機、集中 分布式控制系統,發展到嵌入式的平台的幾個階段:從獨立單機使用發展到聯網設備;從以模拟電路為主發展到以數字電路為主、數/模混合型,進而進入全數字時代。總的來說, 嵌入式系統向着更高性能、更小體積、更低功耗、更廉價、無處不在的方向發展。 嵌入式系統的設計和實現朝着基于芯片,特别是片上可編程系統(SOPC)的方向發展。

嵌入式開發套件(EDK)是用于設計嵌入式可編程系統的全面解決方案。該套件包括嵌入式 軟件工具(Platform Studio)以及嵌入式IBM PowerPC硬件處理器核和/或Xilinx MicroBlaze軟處理器核進行Xilinx平台FPGA設計時所需的技術文檔和IP。注意,這裡的嵌入式 軟件工具指用來産生、編輯、編譯、鍊接、加載和調試高級 編程語言(通常是C或C++)代碼的工具,以便在處理器引擎上執行。

由于 嵌入式系統涉及了軟件和硬件的開發以及兩者的綜合設計,因此其開發是較為複雜的。Xilinx為了簡化基于FPGA的 嵌入式開發流程,提供了功能強大、操作簡單的工具集:集成 軟件環境——ISE;嵌入式開發套件——EDK。(注釋:ISE 是Xilinx 公司FPGA 邏輯設計的基礎。在這個環境中,設計者可以進行約束文件的編寫,時序分析,邏輯布局布線以及器件 編程等。)

EDK自帶了許多工具和IP,可以用來設計完整的 嵌入式處理器系統,主要包括Xilinx 平台工作室XPS和 軟件開發套件SDK。需要注意的是:隻有安裝了ISE軟件,才能正常運行EDK,且二者的版本要一緻。

EDK的組成模塊有:

1.Xilinx 平台工作室(Xilinx Platform Studio,XPS)

XPS 是用來設計 嵌入式處理器系統硬件部分的開發環境或GUI,是系統設計者構建 Xilinx 嵌入式系統時必用的工具套件。在XPS中,可以完成 嵌入式系統架構的創建、 軟件代碼的編寫、設計的編譯以及FPGA芯片的 硬件配置。

2.軟件開發套件(Software Development Kit,SDK)

SDK是集成的 開發環境,基于Eclipse。它支持C/C++,用于 嵌入式軟件應用的開發和驗證。

3.其它EDK部分

EDK還包括其它的一些部分,如:用于Xilinx 嵌入式處理器的硬IP;用于嵌入式軟件開發的驅動和庫;在MicroBlaze和PowerPC處理器上用于C/C++軟件開發的GNU編譯器和調試器;有關文檔以及一些工程樣例等。

Xilinx的 嵌入式開發套件EDK帶有許多的工具和IP,可以用來設計完整的 嵌入式處理器系統,并在Xilinx FPGA芯片上運行。EDK中包含了開發硬件和軟件所必須的全部工具,可以很方便的添加系統自帶的IP核和用戶自定義的IP核,可以通過調用ISE等其他工具實現布局布線,時序優化等等。可以調用GDB對應用程序進行闆上調試及虛拟平台調試。

EDK設計的實現流程

基于EDK的開發流程

一個完整的嵌入式設計流程包括硬件設計和調試、軟件設計與調試,各個步驟相對獨立但又相輔相成。由于嵌入式應用場合多樣,且軟、硬件都可裁剪,因此并不是每個設

計都要完成所有的步驟。圖中為基于EDK 的嵌入式設計的簡化流程圖。

通常,ISE FPGA 開發軟件在後台運行,XPS 工具調用ISE 軟件提供的功能。XPS 主要用來嵌入式處理器硬件系統的開發。微處理器、外圍設備以及這些組件之間的連接問題,另外還有它們各自的屬性設置都在XPS 裡進行。簡單的軟件開發可以在XPS 裡完成,而對于更複雜的應用開發和調試,Xilinx 則推薦使用SDK 工具。硬件平台的功能驗證可以通過硬件描述語言HDL 仿真器完成。XPS 提供了行為級、結構級以及定時精确級等三種類型的仿真。驗證過程結構由XPS 自動産生,其中包括了仿真的HDL 文件。設計者隻需要輸入時鐘時序、重配置信息以及一些應用代碼即可。仿真細節将在下面的内容中進行相關講述。完成設計後,在XPS 中将FPGA 比特流和可執行可鍊接格式文件下載,就可以進行目标器件的配置。

完整的EDK 開發流程如右圖 所示,其主要步驟有:

1. 創建硬件平台:利用XPS 的闆級開發包向導(BSB Wizard)快速構建設計的硬件平台,是EDK 設計的第一步。

2. 添加IP Core 以及用戶定制外設:在XPS 中添加所需的IP Core,對于XPS 庫中缺少的模塊,需要用戶自行設計。同樣,XPS 提供了建立用戶自定義外設的向導,可簡化該過程。

3. 生成仿真文件并測試硬件系統:生成硬件系統的仿真文件,可選擇行為級、結構級以及時序級仿真,利用ModelSim等工具測試系統,特别是用戶自定義的外設;如果測試失敗,需要返回上一步修改。

4. 生成硬件比特流:生成硬件網表和比特流文件,這個步驟類似于傳統FPGA 設計的綜合、布局布線、生成編程文件這3 個操作。

5. 開發軟件系統:針對軟件需求編寫硬件代碼,确定軟件的操作系統、庫、外設驅動等屬性,針對每個應用軟件工程,設置編譯器、優化級别、使用的連接文件等信息。等設置完成後,編譯生成.elf 格式的可執行代碼。

6. 合并軟、硬件比特流:編譯軟件後,需要将軟、硬件可執行文件合并在一起,生成最終的二進制比特文件。

7. 下載:使用JTAG編程電纜或編程器将更新後的最終比特流燒寫到 FPGA、PROM、FLASH以及CF 卡。

8. 在線調試:可利用XMD工具或ChipScope 工具調試,通過JTAG編程電纜在線調試,下載可執行軟件代碼、控制執行,并監控相關信息。

EDK設計比特文件的組成

如前所述,最終下載到FPGA 的嵌入式比特流文件是軟、硬件比特流合并在一起的,詳細的組成部分如右圖

所示。硬件部分比特流包括MHS 文件、用戶自定義HDL 代碼,二者經過綜合實現後,産生.ngc 網表,生成硬件系統的比特流文件;軟件系統包括 MSS 文件、用戶.c/cpp/asm文件,通過GCC 編譯器,生成目标文件.obj,再經過連接合成軟件系統的比特流文件;最後通過Data2MEM過程,将軟、硬件比特流合成完整系統比特流文件,通過JTAG鍊路下載到FPGA 芯片中。

實驗——添加自定義IP

安裝時候需要版本搭配,如ISE8.1搭配EDK8.1。首先,說說使用EDK加入用戶設計的IP。

1、啟動XPS(xilinx platform studio),生成一個processor system,其中可以選擇處理器,硬IP(powerpc)或軟IP( microblaze),以及可選的IP(BRAM、UART)等。如果這個階段拿不定不要什麼IP,以後添加删除都可以。

2、啟動Create and Import Peripheral Wizard,創建IPIF,選擇需要的屬性,如是否包括FIFO、DMA等,系統會自動創建HDL文檔模闆,用戶隻需要添加 用戶程序部分。同coreconnect總線連接部分不用用戶操心。

3、使用ISE的Project Navigator,打開第二步生成的.npl文件,添加入自己的代碼,在ISE裡進行編譯。

4、如果需要,進行BFM(總線 功能模型)仿真

5、若在第三步裡,用戶對接口有修改,需要重新啟用Create and Import Peripheral Wizard,來生成EDK接口(.pao/.mpd文件)

6、使用XPS - Add/Edit Core Dialog,添加用戶IP到第一步的工程中

7、使用XPS生成IP driver。

8、編譯、下載bit文件到 開發闆。

上一篇:内部評級法

下一篇:公路設計軟件

相關詞條

相關搜索

其它詞條