S3C2416 NAND啟動模式配置
阿新 • • 發佈:2019-01-23
S3C2416的啟動方式分為IROM、NAND、ONENAND/ROM三種模式,有的datasheet上只有IROM、ONENAND/ROM兩種模式,如下圖所示:
圖1
圖2
圖2應該是早期三星的2416手冊,圖1為之後再次更新的,所以這裡以圖1為準;
其實我們經常用得到的啟動模式大多分為兩類,SD和NAND,SD啟動屬於IROM或者inand,所以OM[4]-OM[0]依次選擇01000,OM[0]為時鐘選擇項,0為系統內部時鐘,1為外部時鐘。
如果是nand啟動則需要根據nand的頁大小、地址迴圈傳送次數等去選擇。
除了選擇OM[4]-OM[0]之外,還需要配置GPC[7]-GPC[5]三個暫存器來選擇系統啟動引導模式,如下圖所示:
此處如果為SD卡啟動則配置GPC[7]-GPC[5]為000,如果為NAND啟動模式則需要根據NAND的頁大小、迴圈地址大小取相應的值,例如採用K1F9G08U0E晶片為NAND,其對頁和地址迴圈描述如下表:
則一頁的大小為2K,即2048,AddressCycle為4,所以GPC[7]-GPC[5]為100。
需要強調的是,不管是SD卡啟動還是NAND啟動,OM[4]-OM[0]和GPC[7]-GPC[5]都必須同時滿足要求,一般只需要動這兩方面的配置,軟體程式碼部分不需要調整,然後CPU會自動根據配置要求選擇讀取SD裡的資料還是NAND裡的。