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