新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應用 > PXA272啟動引導程序的實現(xiàn)和功能擴展

PXA272啟動引導程序的實現(xiàn)和功能擴展

作者: 時間:2012-04-16 來源:網(wǎng)絡(luò) 收藏

系統(tǒng)存儲器初始化:通過配置寄存器來;在Pxa272上電后,SDRAM處于睡眠無時鐘狀態(tài),初始化必須完成SDRAM狀態(tài)機轉(zhuǎn)化過程,相關(guān)的寄存器:MDREFR、MDCNFG等。SDRAM的狀態(tài)轉(zhuǎn)換通過配置存儲器的相應位,產(chǎn)生對應的命令狀態(tài)機轉(zhuǎn)換[1]。

31.jpg

4.2內(nèi)核加載(Loader)

為加載內(nèi)核,需初始化必要設(shè)備:網(wǎng)絡(luò)接口、串行接口、Flash等;支持BTUART(藍牙)、FFUART(全串口)、 STUART(標準串口)??梢酝ㄟ^串口與終端用戶的交互,終端打印信息是非常重要的調(diào)試手段。片載的Flash遵循CFI規(guī)范(Common Flash Interface)。

內(nèi)核加載前規(guī)劃好內(nèi)存空間:設(shè)置內(nèi)存大小和起始地址,BootLoader、內(nèi)核、ramdisk、root鏡像在flash和SDRAM中的存放區(qū)域、大小。在這里確定好下載各個鏡像文件存放的地址以及鏡像加載后釋放的位置。內(nèi)存地址的安排關(guān)系到操作系統(tǒng)能否正常的、運行。
Parts[i].name = XXXX; //鏡像名(Boot/Kernal/Ramdisk)
Parts[i].sramb = XXXX_SRAM_BASE;//在flash中的基地址
Parts[i].srams = XXXX_MAX_SIZE; //在flash中鏡像大小
Parts[i].dramb = XXXX_DRAM_BASE; //在DRAM中的基地址
Parts[i].drams = 0;
Parts[i].maxs = XXXX_MAX_SIZE; //鏡像大小

這里基本確定flash和DRAM的地址映射。

32.jpg



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉