在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

自定義RISC V的bootloader-v3

XL FPGA技術交流 ? 2025-03-10 09:05 ? 次閱讀

在生成SoC時,會生成一個預定義bootloader .bin文件,用于指定soc的工程運行的地址,這包括在flash的存儲地址 ,加載到外存中的運行地址及在外存中分配的存儲空間的大小 。下面我們來講解下怎樣定義自己的bootloader

指向外部存儲的Bootloader

1、導入軟件自帶的bootloader工程,在工程中選擇bootloaderConfig.h文件。

wKgZPGfOO-qAPvMrAAHrH1C7FoQ040.png

2、修改參數。

USER_SOFTWARE_MEMORY:對應的是APP在外部存儲器中的運行起始地址;USER_SOFTWARE_FLASH:對應APP在flash中的存儲地址;USER_SOFTWARE_SIZE:APP對應片外存儲的大小;

如下是一個設置案例,也可以根據自己的需要進行相應的修改:

把下面參數

#defineUSER_SOFTWARE_MEMORY 0x00001000#defineUSER_SOFTWARE_FLASH  0x380000#defineUSER_SOFTWARE_SIZE   0x01F000

修改成:

#defineUSER_SOFTWARE_MEMORY 0x00008000#defineUSER_SOFTWARE_FLASH  0x500000#defineUSER_SOFTWARE_SIZE   0x01F000

3、編譯修改后的工程。接下來會有兩種方法處理。

方法一:

4、重新生成存儲器初始化文件。

(1)路徑轉到efinty安裝路徑的bin文件夾下,運行setup.bat,然后重新生成OCR初始文件。

${EFINITY_HOME}/bin/setup.bat

(2)再轉到embedded_sw//tool路徑下,并把bootloader.bin文件拷貝到該文件夾下,運行指令,打開浮點生成8個bin,f設置為1

python3 binGen.py -b bootloader.bin -s<RAMsize>-f<FPU>
wKgZPGfOO-qAY8zHAABIjFggjCI760.png

(3)生成的初始化bin文件在tool/rom文件夾下;

wKgZPGfOO-qAWUtvAABQ-Ucxqvg896.png

5、將步驟4中的rom文件夾里的bin替換工程中的bin文件

wKgZPGfOO-qAKEssAADdrdkuRlI559.png

----------------------------------------------------------------------

方法二:

4、勾選Cache/Memory下sapphire IP中Overwrite the default SPI flash bootloader with the user application前面的對勾。并添加上第3步生成的bootloader.hex文件.

wKgZPGfOO-qAYbjXAAP-NpIniG8582.png

5、重新生成IP并編譯 。

--------------------------------------------------------------------

6、重新編譯工程。合成工程時注意指定的Flash地址.

wKgZPGfOO-uAEGsVAABM47nPWLY859.png

這里有一個問題,修改flash的地址是多少合適呢?以Ti60F100為例 ,內部合封了一個16Mb的flash,0x38000這個地址是超出范圍的,那RISCV的地址應該放上哪些呢,從上面的合并操作中可以看到soc.hex文件的Flash Length為0x00362c95,那memTest.bin的地址只要保證不重合,也就是大于0x00362c95即可。

另外值的強調的是邏輯工程生成的hex文件放在flash地址必須要從0x0開始。

指向內部存儲的Bootloader

今天有客戶在問如果打開了外部存儲,但是希望程序從片上RAM啟動應該怎么修改bootloader。只需要將bootloader工程的makefile里面的LDSCRIPT ?= ${BSP_PATH}/linker/bootloader.ld指向linker文件夾下的default_i.ld(對應鈦金系列,default.ld對應trion系列)

wKgZPGfOO-uAGYrtAAGg-313tAE937.pngwKgZPGfOO-uAeNj1AABrpAcph_U317.png


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FlaSh
    +關注

    關注

    10

    文章

    1649

    瀏覽量

    149435
  • soc
    soc
    +關注

    關注

    38

    文章

    4241

    瀏覽量

    219867
  • bootloader
    +關注

    關注

    2

    文章

    237

    瀏覽量

    46001
  • RISC-V
    +關注

    關注

    46

    文章

    2387

    瀏覽量

    47171
收藏 人收藏

    評論

    相關推薦

    自定義RISC Vbootloader-v2

    在生成SoC時,會生成一個預定義bootloader .bin文件,用于指定soc的工程運行的地址,這包括在flash的存儲地址 ,加載到外存中的運行地址及在外存中分配的存儲空間的大小 。下面我們
    的頭像 發表于 10-31 12:37 ?820次閱讀
    <b class='flag-5'>自定義</b><b class='flag-5'>RISC</b> <b class='flag-5'>V</b>的<b class='flag-5'>bootloader-v</b>2

    如何使用RISC-V創建自定義處理器

    采用RISC-V來替代其自定義體系結構。該體系結構吸引人的一個關鍵特征是,CPU開發人員可以在不犧牲為基本標準創建的工具和庫的適用性的情況下,使RISC-V功能適應其需求。適應的關鍵在于了解R
    的頭像 發表于 04-14 15:55 ?4262次閱讀
    如何使用<b class='flag-5'>RISC-V</b>創建<b class='flag-5'>自定義</b>處理器

    請問RISC-V自定義指令如何保持軟件的兼容性?

    請問RISC-V自定義指令如何保持軟件的兼容性?
    發表于 06-17 07:51

    魅族MP3自定義開機畫面教程

    魅族MP3自定義開機畫面教程
    發表于 12-14 14:59 ?21次下載

    1602自定義字符

    1602液晶能夠顯示自定義字符,能夠根據讀者的具體情況顯示自定義字符。
    發表于 01-20 15:43 ?1次下載

    自定義視圖組件教程案例

    自定義組件 1.自定義組件-particles(粒子效果) 2.自定義組件- pulse(脈沖button效果) 3.自定義組件-progr
    發表于 04-08 10:48 ?14次下載

    如何看待RISC-V SoC設計中自定義擴展的指令集架構

    談論配置基本處理器或添加自定義擴展以解決片上系統 (SoC) 中的硬件-軟件設計權衡并不是什么新鮮事。這一直是 RISC-V 社區所支持的價值主張的關鍵部分,發布了許多信息并從中受益,例如
    發表于 07-18 15:38 ?2210次閱讀
    如何看待<b class='flag-5'>RISC-V</b> SoC設計中<b class='flag-5'>自定義</b>擴展的指令集架構

    ArkUI如何自定義彈窗(eTS)

    自定義彈窗其實也是比較簡單的,通過CustomDialogController類就可以顯示自定義彈窗。
    的頭像 發表于 08-31 08:24 ?2356次閱讀

    教程 3:構建自定義配置文件

    教程 3:構建自定義配置文件
    發表于 03-15 19:39 ?0次下載
    教程 <b class='flag-5'>3</b>:構建<b class='flag-5'>自定義</b>配置文件

    教程 3自定義配置文件 gatt cmd 示例

    教程 3自定義配置文件 gatt cmd 示例
    發表于 03-15 19:40 ?0次下載
    教程 <b class='flag-5'>3</b>:<b class='flag-5'>自定義</b>配置文件 gatt cmd 示例

    教程 3:構建自定義配置文件

    教程 3:構建自定義配置文件
    發表于 07-06 18:49 ?1次下載
    教程 <b class='flag-5'>3</b>:構建<b class='flag-5'>自定義</b>配置文件

    教程 3自定義配置文件 gatt cmd 示例

    教程 3自定義配置文件 gatt cmd 示例
    發表于 07-06 18:50 ?1次下載
    教程 <b class='flag-5'>3</b>:<b class='flag-5'>自定義</b>配置文件 gatt cmd 示例

    Out項目之增強RISC-V處理器性能的自定義硬件模塊

    電子發燒友網站提供《Out項目之增強RISC-V處理器性能的自定義硬件模塊.zip》資料免費下載
    發表于 07-11 10:48 ?0次下載
    Out項目之增強<b class='flag-5'>RISC-V</b>處理器性能的<b class='flag-5'>自定義</b>硬件模塊

    RISC-V自定義計算 – 構建您的抱負

    RISC-V自定義計算 – 構建您的抱負演講ppt分享
    發表于 07-14 17:15 ?0次下載

    labview超快自定義控件制作和普通自定義控件制作

    labview超快自定義控件制作和普通自定義控件制作
    發表于 08-21 10:32 ?13次下載
    主站蜘蛛池模板: se94se最新网站 | 老汉影视永久免费视频 | 一级特黄女人生活片 | 久久国产乱子伦精品免费午夜 | 一道精品视频一区二区三区男同 | 天天射夜夜爽 | 性 色 黄 一级 | 91精品国产免费久久久久久青草 | 狠狠色狠狠色 | 午夜资源网 | 日日操夜夜 | 欧美激情 自拍 | 加勒比一本一道在线 | 伊人久久大香线蕉综合高清 | 日本黄色免费网址 | 麦克斯奥特曼在线观看 | 中国一级做a爰片久久毛片 中韩日欧美电影免费看 | 夜夜超b天天 | 天天视频国产精品 | 奇米色影院 | 男人视频在线 | 色老太视频| 午夜国产精品福利在线观看 | 成年女人免费看一级人体片 | 日本三级最新中文字幕电影 | 77se77亚洲欧美在线大屁股 | 亚洲国产人久久久成人精品网站 | 欧美xxxxx性视频 | 大尺度视频网站久久久久久久久 | 国产美女作爱 | 国产高清视频免费最新在线 | 亚洲国产人成在线观看 | 成年人一级片 | 网站在线播放 | 欧美伊人 | 欧美一级特黄aaaaaa在线看片 | 99久久综合狠狠综合久久男同 | 人人干人人上 | 国产精品毛片一区二区三区 | 看毛片网站 | 天天干天天拍天天射 |