并行NOR Flash在SOPC開(kāi)發(fā)中的應(yīng)用設(shè)計(jì)
2 存儲(chǔ)可引導(dǎo)的軟處理器代碼
首先利用Xilinx嵌入式開(kāi)發(fā)工具箱EDK創(chuàng)建一個(gè)嵌入式工程,包括MicroBlaze硬件平臺(tái)和相應(yīng)的軟件工程。在EDK界面下,用鼠標(biāo)選中創(chuàng)建的軟件工程,右擊并在彈出的菜單中選擇Generate Linker Script...項(xiàng),進(jìn)入Generate Linker Script對(duì)話框。將Sections、Heap和Stack指定到BRAM或外部RAM(一般將Heap和Stack指定到BRAM,代碼和數(shù)據(jù)段指定到外部RAM),并指定輸出腳本文件名及路徑,如圖2所示。
雙擊相應(yīng)軟件工程下的Compiler Options選項(xiàng),進(jìn)入Set Compiler Options對(duì)話框,設(shè)定Link Script項(xiàng)為剛才產(chǎn)生的腳本文件,并指定Output ELF File項(xiàng)的路徑與名稱?,F(xiàn)在可以編譯相應(yīng)的軟件工程,產(chǎn)生相應(yīng)的可執(zhí)行ELF文件,設(shè)為Bootable.elf。
圖2 Generate Linker Script對(duì)話框
在EDK主界面下,用鼠標(biāo)選擇Device Configuration → Program Flash Memory,進(jìn)入Program Flash Memory對(duì)話框,并按圖3進(jìn)行設(shè)置。單擊OK按鈕,會(huì)把Bootable.elf文件自動(dòng)轉(zhuǎn)為SREC格式,并下載到J3D的指定地址處,同時(shí)產(chǎn)生名為bootloadr_0的軟件工程。bootloadr_0工程編譯后產(chǎn)生的可執(zhí)行文件executable.elf用來(lái)執(zhí)行引導(dǎo)裝載功能,應(yīng)將其合并到系統(tǒng)比特流system.bit,從而生成dowload.bit。dowload.bit經(jīng)iMPCT轉(zhuǎn)為MCS文件后下載到配置PROM中(若使用同一片J3D,注意不能與Bootable.elf發(fā)生地址空間沖突)。這樣,系統(tǒng)上電后,首先對(duì)FPGA進(jìn)行配置,然后引導(dǎo)加載J3D中的代碼至相應(yīng)的BRAM或SDRAM中(具體映射位置已在Generate Linker Script對(duì)話框中設(shè)定)。
圖3 Program Flash Memory對(duì)話框
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論