-
stepping stone
(三星MCU的一種啓動方式)
鎖定
stepping stone是三星MCU的一種啓動方式,s3c2440的MMU有一種“steppingstone”.技術,是協助MCU從無法執行程序的NAND FLASH執行啓動程序的一種方法。
- 外文名
- stepping stone
- 類 別
- 啓動方式
- 品 牌
- 三星
- 對 象
- MCU
stepping stone簡介
這是三星MCU的一種啓動方式,s3c2440的MMU有一種“steppingstone”.技術,它是協助MCU從無法執行程序的NAND FLASH執行啓動程序的一種方法。
stepping stone啓動流程
1、系統上電後,首先自動判斷是否是autoboot模式,如果使用 s3c2410是帶有nandflash的,並且被設置成autoboot,從nandflash開始啓動.
2、在判斷是autoboot模式後,mcu內置的nandflash控制器自動將nandflash的最前面的4k區域(這4k區域存放着 bootloader的最前面4k代碼)拷貝到samsung所謂的"steppingstone"裏面(steppingstone是在S3C2440 中,實際上是一塊4k大小的SRAM,).
3、在拷貝完前4k代碼後,nandflash控制器自動將"steppingstone"映射到arm地址空間0x00000000開始的前4k區域.
4、在映射過程完成後.nandflash控制器將pc指針直接指向arm地址空間的0x00000000位置,準備開始執行"steppingstone"上的代碼.
5、而"steppingstone"上從nandflash拷貝過來的4k代碼,是程序員寫的bootloader的前4k代碼.這個 bootloader在之前寫好,並已經被燒寫到nandflash的0x00000000開始的最前面區域..而這"steppingstone"上的 4k代碼就是bootloader的前4k代碼.
6、在pc指向arm地址空間的0x00000000後,系統就開始執行指令代碼.這4k代碼的任務是:初始化硬件,設置中斷向量表,設置堆棧,然後一個很重要的任務是,將nandflash的最前面區域的bootloader(包含4k啓動代碼)拷貝到SDRAM中去,bootloader代碼的大小是寫好bootloader就確定的.然後只需要確定bootloader想映射到SDRAM的起始位置就ok.
7、在完成對nandflash上的bootloader搬移後,找到4k代碼的搬移代碼最後一個指令的下一個指令在SDRAM的bootloader的地址,然後跳轉到該位置,繼續執行bootloader的剩餘代碼(引導系統).
- 詞條統計
-
- 瀏覽次數:次
- 編輯次數:11次歷史版本
- 最近更新: 默言桑蒲93