基于AXI總線的MicroBlaze雙核SoPC系統設計 作者:楊定定,施慧彬 目的是利用嵌入在Xilinx FPGA中的MicroBlaze核實現基于AXI總線的雙核嵌入式系統設計以及共享實現LED燈的時控。對于共享實現LED燈時控的方法是通過在兩個低速總線之間加入一個axi2axi_connector實現axilite總線上的slave共享。對于實現雙核之間的通信主要方法是利用mailbox和mutex完成核間通信。硬件平臺采用的是Xilinx FPGA Spartan -6 Atlys板,軟件平臺是Xilinx EDK,主要使用的是XPS(硬件設計)和SDK(軟件設計),開發出了運行在FPGA上的基于MicroBlaze雙核的嵌入式系統,得出了核間通信的可行性以及共享slave實現LED燈時控的實用性。 前言 當前Xilinx新版本ISE系列產品基于AXI總線的趨勢越來越明顯,AXI總線是ARM高級微控制器總線結構的一部分,擁有高產率、高靈活、廣泛IP可用性等優勢。MicroBlaze多核處理器可以實現彼此之間快速通訊以及并行處理計算等,可以提高處理問題的速度,具有良好的可行性和實用性,而兩者的結合是當前開發的新發展,通過Xilinx ISE系列軟件可以很方便地進行硬件設計(XPS中)以及相應的軟件(SDK中)設計。FPGA設計相比ARM設計也存在優勢,不是固定的芯片實現,也是可以通過用戶自定義IP核,可以嵌入所希望的系統來實現相應的功能[1]。因此,選擇設計基于AXI總線的MicroBlaze雙核嵌入式系統是當前的開發趨勢,同時Xilinx的Atlys板為實驗的可行性提供了硬件平臺。 硬件設計方案 本文將會簡要介紹基于AXI總線的MicroBlaze雙核嵌入式系統設計[2~3],并分別對兩個核進行LED燈時控的操作,即進行軟件設計,檢驗硬件設計的實用性。如圖1 是實現上述功能的系統總體硬件結構設計簡圖。 下面簡要對功能模塊進行解釋和介紹:本系統中,使用的是Xilinx產品Spartan-6系列的Atlys硬件電路板實現硬件設計的嵌入。硬件設計中,通過axi2axi_connector實現axilite總線上的slave共享,可以簡化設計,同時兩個MicroBlaze核可以平等地享有slave,實現相應的軟件設計,兩個MicroBlaze核之間協同處理工作,使用AXI總線互連,可以利用mailbox和mutex實現核間通信,使用共享內存bram_block減少核間通信負擔,本系統可以實現兩個MicroBlaze核共享使用RS232_Uart輸出信息,通過axi_ intc和axi_timer對自定義的led_ip核進行控制,軟件設計完成后,可以使用XPS中的XMD對兩個核進行操作,實現軟件設計結果的驗證。 下載全文: |