TMS320C6701 DSP自動加載研究
在ROM加載模式下,復位后C6701將通過DMA方式將FLASH中的前64 KB數據搬運到DSP的片內程序RAM執行,因此,必須將前面編譯好的工作程序的代碼段燒寫到FLASH地址空間中的前64 KB,而數據段則應該燒寫在FLASH首地址64 KB以后。這就需要在DSP芯片的內存段管理中,將數據段的加載地址(Load Address)配置為CE1空間FLASH上的指定地址,以保證DSP在復位后能正確地從FLASH上的不同地址讀取代碼和數據(見圖1)。本文引用地址:http://www.104case.com/article/152290.htm
利用CCS自帶的DSP/BIOS配置工具,可以在類似Windows Explorer的窗口界面下直觀方便地初始化DSP芯片的數據結構并設置不同的參數,而不需要再單獨編寫連接命令文件(link command file,后綴為.cmd)。保存該配置文件時,配置工具自動生成匹配當前配置的匯編源文件和頭文件以及一個鏈接命令文件。當構建(Build)應用程序時,這些文件都會自動被鏈接進應用程序。在CCS中打開DSP/BIOS中的.cdb文件,操作System下的MEM(Memory Section Manag-er)模塊就可以對DSP存儲器映射空間進行配置,并可以設置程序編譯后生成的代碼段、數據段是如何分配到這些存儲器空間的。這對ROM加載能否成功至關重要,要實現ROM加載必須把一些關鍵的代碼和數據段裝在系統的ROM中,但上電后仍在較快的DSP片內RAM中運行。這需要在DSP的內存映射空間上先劃分出外部FLASH的起始地址和長度(如圖2中的ED-FLASH段),并將CCS編譯產生的各個段的運行地址(Run Address)和加載地址(Load Address)分配到合適的存儲空間。需要特別注意的是,數據及代碼初始化段的加載地址必需放在FLASH空間上(如圖3),只讀的段都可以放在FLASH上,非初始化段只需要分配運行地址。
評論