1. 程式人生 > >TN0164_基於DSP的啟動加載原理

TN0164_基於DSP的啟動加載原理

sylixos dsp 啟動加載原理

1.適用範圍

本文檔介紹了SylixOS在DSP上的啟動流程。本文檔介紹的相關內容針對TI官方評估板TMDSEVM6678。

2.DSP的啟動原理簡介

當DSP重啟後,會首先執行RBL(片內一級加載程序),該RBL固化在片內ROM中;RBL的主要工作是判斷啟動模式並從指定的設備加載運行UBL(用戶編寫的二級加載程序);UBL的主要作用是加載SylixOS的BSP程序;當BSP程序運行起來後,就可以通過動態加載開發應用程序了。如圖 2.1所示:

技術分享圖片

2.1 基本啟動流程

3.DSP的啟動模式

DSP支持的啟動模式有11種。在官方的評估板中,SylixOS的開發主要用到了ROM SPI Boot模式和No boot模式。撥碼開關的模式配置如圖 3.1所示:

技術分享圖片

3.1 撥碼配置

DSP的啟動模式依次如下(IBL即燒寫到EEPROM中的UBL):

  • IBL NOR boot :IBL在EEPROM中,BSP在NOR中;

  • IBL NAND boot :IBL在EEPROM中,BSP在NAND中;

  • IBL TFTP boot :IBL在EEPROM中,BSP通過TFTP獲取;

  • I2C POST boot :上電自測模式;

  • ROM SPI Boot :UBL和BSP都在SPI Flash中;

  • ROM SRIO Boot :UBL和BSP通過SRIO加載;

  • ROM Ethernet Boot :UBL和BSP通過網絡加載

  • ROM PCIE Boot :UBL和BSP通過PCIE加載

  • No boot :主要用於固化程序,只有該模式會通過gel文件做初始操作

4.DSP的BSP程序加載

SylixOS的BSP程序為elf格式,所以在UBL加載BSP程序時,會首先解析elf格式,並根據配置將對應的段分配到不同的位置。當BSP程序成功運行後,就可以通過動態加載開發應用程序了。SylixOS對RAM的劃分如圖 4.1所示:

技術分享圖片

4.1 SylixOSRAM的劃分

SylixOS 將BSP程序的不同的段放到上圖中指定的區域,詳細參考圖 4.2。

技術分享圖片

4.2 BSP各段的分配

TN0164_基於DSP的啟動加載原理