新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 并行NOR Flash在SOPC開(kāi)發(fā)中的應(yīng)用設(shè)計(jì)

并行NOR Flash在SOPC開(kāi)發(fā)中的應(yīng)用設(shè)計(jì)

作者: 時(shí)間:2010-07-28 來(lái)源:網(wǎng)絡(luò) 收藏

  3 存儲(chǔ)可直接執(zhí)行的軟處理器代碼

  這里仍然使用上面創(chuàng)建的EDK工程,由于J3D具有類似SRAM的接口,上電后可以直接像SRAM一樣進(jìn)行讀操作,但卻不能直接進(jìn)行寫(xiě)操作。因此,應(yīng)將只讀段.code、.rodata、.sdata2、.sbss2指定到J3D中,其余段指定到BRAM中,這可以在Generate Linker Script對(duì)話框中完成。重新編譯后生成新的Bootable.elf文件。此時(shí),Bootable.elf仍是一個(gè)整體,需要將其在物理上分為2個(gè)文件: 一個(gè)存放只讀段,另一個(gè)存放其余段。具體可以通過(guò)下面的操作實(shí)現(xiàn)。

 ?、?創(chuàng)建存儲(chǔ)在BRAM中的鏡像volatile.elf。在XPS中,選擇Project → Launch EDK Shell,并執(zhí)行下列命令:

  $ mbobjcopy

  --set-section-flags .text=alloc,readonly,code

  --set-section-flags .init=alloc,readonly,code

  --set-section-flags .fini=alloc,readonly,code

  --set-section-flags .rodata=alloc

  --set-section-flags .sdata2=contents

  --set-section-flags .sbss2=contents

  ./TestApp_Memory/Bootable.elf

  ./TestApp_Memory/volatile.elf

 ?、?創(chuàng)建存儲(chǔ)在中的鏡像J3D.bin。在XPS中,選擇Project → Launch EDK Shell,并執(zhí)行下列命令:

  $ mbobjcopy O binary

  -j .text

  -j .init

  -j .fini

  -j .rodata

  -j .sdata2

  -j .sbss2

  ./TestApp_Memory/Bootable.elf

  ./TestApp_Memory/J3D.bin

  將volatile.elf合并到系統(tǒng)配置比特流system.bit,生成dowload.bit,再經(jīng)iMPCT轉(zhuǎn)為MCS格式后下載到配置PROM中。再將J3D.bin通過(guò)Program Memory對(duì)話框下載到J3D中。這樣系統(tǒng)上電并完成配置后,J3D中的代碼無(wú)需引導(dǎo)便可以直接執(zhí)行。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


關(guān)鍵詞: FPGA SOPC NOR Flash 嵌入式

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉