新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 大容量無線傳輸技術中DSP的啟動方法

        大容量無線傳輸技術中DSP的啟動方法

        作者: 時間:2012-08-27 來源:網絡 收藏

        1 引言

        在極低譜密度,高頻譜利用率的C6416 啟動模式管腳配置 www.elecfans.com

        本文引用地址:http://www.104case.com/article/148522.htm



        如果 的程序小于1K 字節,那么上述ROM 機制已經可以完成程序的加載。然而事實上大部分 的程序會大于1K 字節,這時就需要創建一個特定程序來完成更多代 碼的加載。該特定程序又被稱作二級bootloader。

        在需要二級bootloader 的程序中,這段特定啟動代碼通常駐留在ROM 存儲器的起始位 置以便在 復位后能自動被加載到內存地址0 處。當1K 字節代碼被加載完畢后,CPU 開始從地址0 處執行,也就是執行二級bootloader 的內容。二級bootloader 的功能就是將程序的剩余部分拷貝到內存中。

        2 啟動的設計與實現

        采用二級bootloader 的DSP 啟動的實現大體分為四步:配置存儲器;編寫 secondary bootloader 代碼;編譯程序,轉換目標文件的格式;將程序燒寫進Flash。圖1 為實施該啟動的硬件平臺示意圖,其中DSP 的型號選擇C6416,Flash 的型號選擇 AM29LV800B。

        為實施該啟動方法的硬件平臺示意圖 www.elecfans.com




        2.1 配置存儲器

        2.1.1 定義存儲器分區

        為了實現使用二級bootloader 的ROM 啟動,需要將Flash 劃分為FLASH_BOOT, FLASH_REST 兩個區。這兩個區分別存儲由on-chip bootloader 拷貝的程序段和由secondary bootloader 拷貝的程序段。對于BIOS 程序,Memory 段的定義在MEM(Memory Section Manager)對象里。對于非BIOS 程序,Memory 段定義在linker command file 中。一個C6416 的Memory 段定義的例子如下所示:




        2.1.2 COFF 段的定位

        DSP 程序是以COFF 段的形式在內存中存放的。一個COFF 段就是一個代碼或數據塊, 它在內存中占據連續空間。COFF 段分為自定義段,初始化段和未初始化段三種。COFF 段可 以有各種屬性,其中load 屬性和run 屬性跟DSP 啟動有密切關系。Load 屬性指明段的存儲 地址,run 屬性指明段的執行地址。二級bootloader 負責將所有的段從load 地址拷貝到run 地址。例如:

        .text: LOAD= FLASH, RUN= IRAM

        表示代碼段.text 被存儲在flash 中,DSP 啟動時二級bootloader 將該段拷貝到IRAM 中。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 五指山市| 长治市| 招远市| 琼中| 海口市| 桐城市| 同仁县| 齐齐哈尔市| 嘉荫县| 建阳市| 南澳县| 罗田县| 罗山县| 略阳县| 岗巴县| 南郑县| 夏邑县| 胶州市| 五大连池市| 郧西县| 常山县| 太保市| 金塔县| 内江市| 开封县| 逊克县| 大港区| 长垣县| 保亭| 明光市| 顺义区| 闽侯县| 临夏市| 大石桥市| 黄平县| 柏乡县| 广饶县| 京山县| 石渠县| 富蕴县| 定州市|