<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

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

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

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

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

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

            ① 創(chuàng)建存儲在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)建存儲在中的鏡像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通過Program Memory對話框下載到J3D中。這樣系統(tǒng)上電并完成配置后,J3D中的代碼無需引導(dǎo)便可以直接執(zhí)行。

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


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

          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();