MicroBlaze是Xilinx專為FPGA設計的軟核處理器,其本質是通過FPGA的可編程邏輯資源(如查找表LUT、觸發器Flip-Flop)動態構建的處理器架構,其本質為搭建處理器電路。MicroBlaze上運行嵌入式C代碼程序,通過CoreConnect總線與FPGA內的硬件模塊通信,共同完成可編程系統芯片SOPC的設計。
對有軟核處理器的FPGA代碼進行仿真主要有以下兩種方式,C代碼與FPGA聯合仿真、verilog測試激勵編寫。
一、C代碼與FPGA聯合仿真
當FPGA中存在MicroBlaze要進行仿真時,其核心問題是將嵌入式C代碼程序和FPGA設計聯系在一起,在仿真運行的過程中,嵌入式C代碼程序運行在軟核處理器上,通過總線與FPGA內的硬件模塊進行通信。
Vivado工具提供的將嵌入式C代碼程序和FPGA設計聯系在一起的方法為在Tools下面Associate ELE_Files下選擇已經編譯的C代碼程序。
當然上述方法,存在以下難點:
1、如果直接用研制方提供編譯的C代碼程序,測試激勵的產生完成依賴于編譯好的程序,其程序產生測試激勵是否依賴其他的條件不餓可知,何時產生測試激勵不可知,導致測試激勵的產生不可控,同時也會造成時間的浪費。
2、如果針對不同的測試場景編寫不同.C的測試激勵,對測試人員的能力提出了較大挑戰,反而額外增加了仿真測試激勵編寫的復雜度。
二、verilog測試激勵編寫
更為直接的一種方式則是通過編寫verilog代碼測試激勵模擬軟核程序的行為。測試人員只需將重點放在軟核處理器與FPGA通信的總線時序上,極大提高了仿真效率。
最新在搜索資料的時候,使用的是迷塔AI搜索,搜索出來的內容質量很高。同時我也搜索到關于軟核仿真不錯的資料,在這里也共享一下
【免費】FPGA設計基于Kintex-7的MicroBlaze處理器系統仿真與硬件實現:使用IPIntegrator構建和驗證嵌入式系統資源-CSDN文庫