基于FPGA的面向Linux核的基本硬件系統(tǒng)構建和測試
前言
本文引用地址:http://butianyuan.cn/article/128992.htm隨著信息的高速發(fā)展,片上可編程系統(tǒng)SoPC(System on Programmable Chip)成為人們討論的熱門話題。具有高邏輯密度和高性能硬件模塊的FPGA(Field Programmable Gate Array)使得高效率的片上處理器的設計成為現(xiàn)實。目前,片上系統(tǒng)的設計已有一定發(fā)展, Xilinx公司開發(fā)的嵌入式開發(fā)包EDK(Embedded Development Kit)被眾多嵌入式研究者們所使用。
技術介紹
EDK
嵌入式開發(fā)套件(EDK)是用于設計嵌入式可編程系統(tǒng)的全面解決方案。EDK自帶了許多工具和IP,可以用來設計完整的嵌入式處理器系統(tǒng),主要包括Xilinx 平臺工作室XPS(Xilinx Platform Studio)和軟件開發(fā)套件SDK(Software Development Kit)。本文既用到了Xilinx平臺工作室XPS也用到了軟件開發(fā)套件SDK。Xilinx公司的EDK不僅可以用FPGA做邏輯設計,并且可以使用PowerPC和MicroBlaze處理器,實現(xiàn)從硬件到軟件的整個嵌入式系統(tǒng)設計。
MicroBlaze
本文用到的MicroBlaze是一個被優(yōu)化過的可以在Xilinx公司FPGA中運行的軟核處理器,并且可以和其它外設IP核一起完成可編程系統(tǒng)芯片的設計。它具有運行速度快、占用資源少、可配置性強等優(yōu)點,廣泛應用于通信、軍事、高端消費市場等領域。MicroBlaze處理器采用RISC(Reduced Instruction Set Computer)指令集結構和哈佛存儲結構,指令、數(shù)據(jù)總線位寬均為32位。MicroBlaze指令的執(zhí)行有三級和五級流水線之分。當采用面積優(yōu)化時,流水線分為三級,即取指,譯碼和執(zhí)行,這樣可以減少硬件開銷。當不使用面積優(yōu)化時,流水線分為五級:取指、譯碼、執(zhí)行、訪問存儲器和回寫,這樣可以提高性能。本文用到的MicroBlaze版本是v6.00.b,其指令的執(zhí)行為3級流水線模式。
基本的硬件系統(tǒng)的搭建
本文的硬件開發(fā)和調(diào)試環(huán)境是在Windows系統(tǒng)下,使用的是ISE_DS13.2開發(fā)工具。而內(nèi)核編譯等軟件開發(fā)則是Linux操作系統(tǒng)下完成。
評論