基于DM642的FLASH分頁(yè)二級引導程序設計
3 二級引導程序
3.1 引導過(guò)程
二級引導裝載程序被放置在FLASH的起始地址處,一旦DSP上電復位,二級引導程序就會(huì )通過(guò)DM642的自動(dòng)加載機制加載到RAM的地址0處,且此時(shí)CPU復位,開(kāi)始執行二級引導程序。二級引導程序的引導過(guò)程為:首先對EMIF寄存器進(jìn)行配置,包括全局控制寄存器、CEx空間控制寄存器、SDRAM控制寄存器、時(shí)序控制寄存器以及擴展控制寄存器等。然后,獲取程序入口地址,接著(zhù)按照數據塊的格式獲取每個(gè)塊的字節數和目標地址,開(kāi)始拷貝代碼。當獲取的字節數為0時(shí),引導結束,CPU跳轉到C_int00處,建立C語(yǔ)言運行環(huán)境,從main()處開(kāi)始執行。引導過(guò)程如圖2所示。本文引用地址:http://dyxdggzs.com/article/202586.htm
3.2 二級引導程序設計
根據二級引導程序的引導過(guò)程編寫(xiě)二級引導程序的實(shí)現代碼,二級引導程序用匯編語(yǔ)言編寫(xiě)。下面是各部分的具體實(shí)現。
(1)配置EMIF寄存器。定義EMIF寄存器基地址EMIF BASE=0x01800000,定義各個(gè)寄存器的配置值為:
(2)拷貝應用程序代碼。定義引導表的地址為COPY_TABLE=0x90000400,實(shí)現代碼如下:
評論