重定位之前,要將 flash 初始化,flash 的初始化分為 norflash 和 nandflash,norflash 不用初始化,所以不用做任何操作
3.1 nandflash 初始化
在 nandflash 初始化之前,需要設置棧:
1 /** 6. 重定位:把 bootloader 本身的代碼從flash 復制到它的鏈接地址中 */
2 /** copy_code_to_sdram 用 C語言寫,需要先設置棧 */
3 ldr sp, =0x34000000 /** 棧指向 SDRAM 的頂端 */
進入初始化:
1 bl nand_init
nandflash 初始化需要注意兩個內容,一個是 s3c2440 手冊的第 6 章 nandflash 控制器,一個是 nandflash 的芯片手冊。
3.1.1 寄存器 NFCONF
要注意兩個寄存器,是初始化需要操作的:
注意圖中標記的三個寄存器參數,這三個參數與 nandflash 控制器的時序有關:
發(fā)出 CLE/ALE 之后,一個寫信號 nWE 需要多久變?yōu)?a href="http://www.weightgang.cn/zhuanti/qXzvTS" style="color:#4595e6;" target="_blank">低電平,nWE 變?yōu)榈碗娖胶?,CLE/ALE 又需要保存多長時間才能變?yōu)榈碗娖健?p>nWE 中的低電平為 /WE 中的 twp 處位置,為寫信號的脈沖寬度,最小為 12 ns,最小值都是通過 nandflash 手冊得到的,如下:
HCLK * (TWRPH0 + 1) >= 12ns
自己設置的時鐘FCLK(CPU主頻是 400MHZ),分頻比是 FCLK: HCLK: PCLK = 1:4:8,那么 HCLK 是100MHZ,即為10ns;則 10 * (TWRPH0 + 1) >= 12,TWRPH0 >= 0.2,那么 TWRPH0 可以設置為 1。
發(fā)出 CLE 和 ALE 之后,過多少時間才能發(fā)出寫信號?time = tcls - twp >= 0,這里說明 CLE 信號和 WE 信號可以同時發(fā)出,那么可以將 TACLS 時間設置為 0,即發(fā)出 CLE 后,立即發(fā)出寫信號。
TWRPH1 表示寫信號變?yōu)?a href="http://www.weightgang.cn/zhuanti/qbnP0C" style="color:#4595e6;" target="_blank">高電平之后,CLE 和 ALE 還需要維持多長時間,從 nandflash 時序圖和手冊,可以知道 tclh >= 5ns,則 10 * (TWRPH1 + 1) >= 5,則 TWRPH1 >= 0。
3.1.2 寄存器 NFCONT
這個寄存器需要設置 MODE(NAND Flash 控制器運行模式),要使能 nandflash;Reg_nCE(NAND Flash 存儲器的 nFCE 信號控制),我們是引導期間,所以要使能片選;InitECC,雖然在引導期間不會使用 ECC,但是也要進行 ECC 初始化。
3.1.3 初始化代碼
1 void nand_init(void)
2 {
3 #define TACLS 0
4 #define TWRPH0 1
5 #define TWRPH1 0
6
7 /** 設置時序 */
8 NFCONF = (TACLS << 12) | (TWRPH0 << 8) | (TWRPH1 << 4);
9 /** 使能 NND Flash 控制器, 初始化 ECC, 禁止片選 */
10 NFCONT = (1 << 4) | (1 << 1) | (1 << 0);
11 }
上一篇:GCC編譯器原理(一)------交叉編譯器制作和GCC組件及命令
下一篇:二、編寫 s3c24x0 的 bootloader——SDRAM 設置
推薦閱讀最新更新時間:2025-07-13 11:20






設計資源 培訓 開發(fā)板 精華推薦
- NCP3064DFBSTGEVB:DFN-8 升壓評估板
- LT4275CHDD LTPoE++ 90W 受電設備接口典型應用電路
- ADL5380-30A-EVALZ,基于 ADL5380 400 MHz 至 6 GHz 正交解調器的評估板
- MAXREFDES1214:便攜式1.5A USB充電器,具有Micro-USB輸入和USB Standard-A輸出
- 具有 5V 輸出的 LT1076CT7 正負轉換器的典型應用
- AM2G-0518SZ 18V 2 瓦 DC-DC 轉換器的典型應用
- A10P3S,基于 Arria 10 GX/SX 3/4-Length PCIe Board with Quad QSFP 和 DDR4 的 PCIe FPGA 板
- S32K142-Q100通用評估板
- PTN5110 USB PD DRP Provider/Consumer、帶升降壓充電器的筆記本電腦的典型應用
- LT1172CSW、5V/1.25A 升壓轉換器的典型應用
- 蜂巢能源2025年試產半固態(tài)電池,2027年大批量供貨
- 激光雷達進化論:RoboSense如何持續(xù)領跑?
- 法雷奧-全景顯示技術 Panovision | 申報2025第七屆金輯獎中國汽車新供應鏈百強
- 公安部:目前我國市售汽車搭載的“智駕”系統,都不具備“自動駕駛”功能
- 德賽西威-旗艦級AI智能座艙域控制器 | 申報2025第七屆金輯獎中國汽車新供應鏈百強
- Mobileye推出駕駛員監(jiān)測系統(DMS)技術 ,實現人與車輛協同駕駛
- 第三屆安富利汽車生態(tài)圈峰會盛大啟幕,雙城聯動激發(fā)智慧出行產業(yè)新動能
- Vicor Corporation 2025年第二季度財報:專利訴訟和解推動強勁增長
- 智能底盤2.0競賽,這家外資巨頭按下加速鍵
- GaN技術如何應用到人形機器人執(zhí)行關節(jié)?
- CEVA收購InterDigital的Hillcrest Labs智能傳感器技術業(yè)務
- 大聯大友尚集團推出全新無線藍牙耳機解決方案
- 百余款定制電腦讓設計師盡情釋放才華萬千
- STM32--Error: L6218E: Undefined symbol
- ChinaJoy2019英特爾再度包館,行業(yè)盛宴不容錯過
- 博達微發(fā)布業(yè)界首創(chuàng)AI驅動的半導體參數一體化測試系統
- 機器人早報:超市機器人失職被解雇 埃斯頓智能工廠投產
- 臺達榮獲“2017中國最具影響力綠色企業(yè)品牌”
- 臺達受邀出席LEED數據中心認證研討會分享成功實踐
- 臺達HPH系列UPS為“四縱四橫”快速鐵路保駕護航