S5PC100 啓動過程簡單分析

     

S5PC100處理器採用64位內部總線構架,包括強大的硬件加速器,具有更高的主頻和更豐富外設,能適用於對性能和處理能力有更高要求的嵌入式系統應用場合。S5PC100的支持多種啓動方式:NAND、SD/MMC、OneNAND、NAND與USB等。流程圖大致如下: 

 

      從上圖可以看出,整個其他過程分爲兩個階段:BL0,BL1。

第一階段:CPU上電後從內部ROM開始執行,在內部ROM有第一個引導程序BL0,BL0從系統指定的外部啓動器件(NAND、SD/MMC、OneNAND、NAND與USB)中加載第二個引導程序BL1到內部RAM,同時對BL1進行安全校驗。

第二階段:BL1初始化DRAM控制器,即初始化內存,然後從外部啓動器件(NAND、SD/MMC、OneNAND、NAND與USB)中加載OS IMAGE 文件到DRAM中,同時對OS IMAGE進行安全校驗,如果正確就引導系統啓動。

       在S5PC100的文檔上大致是這麼說的,我用的是S5PC100評估板。它的其他方式大概和上述相同:CPU上電,BL0從NAND(NAND 啓動方式)的BLOCK0中加載STEPLDR.BIN到RAM,STEPLDR初始化CPU後再從NAND 中加載EBOOT.BIN到DRAM即內存中;EBOOT.BIN會進一步其他的初始化操作,比如串口等;最後EBOOT.BIN加載OS image 文件到DRAM中,進而引導系統啓動。

        在整個啓動過程中用到了三個引導文件:

        ROM中的引導文件(但是不知道具體是什麼,應該是CPU自帶的啓動文件,那位知道介紹一下);

        STEPLDR.BIN:引導EBOOT的,該文件被ROM內部的引導文件加載到CPU內部RAM中,這個文件比較小,只有3,4K左右,而已S5PC100的內部RAM爲96K,完全沒問題。

        EBOOT.BIN:這個就不用多說了,做過wince的都知道。

        由於能力有限,上述分析也許有誤,還望高手指點。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章