1. 程式人生 > >S3C2416 NAND啟動模式配置

S3C2416 NAND啟動模式配置

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裡的。