基本概念:
內存:
SRAM 靜態內存 特點:容量小、價格高,優點:不需要軟件初始化,上電就能用。
DRAM 動態內存 特點:容量大、價格低,缺點:上電不能用,需要軟件初始化。
單片機中:內存需求量小,而且希望開發盡量簡單,適合全部用SRAM。
嵌入式系統:內存需求量大,而且沒有NorFlash等可啟動介質。(介于單片機和PC機中間)。
PC機:內存需求量大,而且軟件復雜,不在乎DRAM的初始化開銷,適合全部用DRAM。
外存:
NorFlash 容量小,價格高,可以和cpu總線式相連,上電cpu直接能讀取。所以一般用來作啟動。
NandFlash(跟硬盤一樣,容量大,價格低,缺點:不能總線式訪問,不能上電cpu直接讀取,需要cpu先運行一些軟件,然后通過時序接口讀寫)。
所以
一般的PC機都是:很小容量的BIOS(NorFlash)+很大容量的硬盤(類似于NorFlash)。
一般的單片機:很小容量的NorFlash + 很少容量的SRAM。
嵌入式系統:因為NorFlash很貴,所以現在的嵌入式系統不傾向于用NorFlash,直接用:外接的大容量的NandFlash+外接大容量的DRAM+Soc內置SRAM。
S5PV210啟動過程:
S5PV210的啟動方式:外接的大容量的NandFlash+外接大容量的DRAM+Soc內置SRAM。
實際上啟動還要更復雜一些,210內置了一塊96kb大小的SRAM(叫iRAM),還有一塊內置的64kb的NorFlash(iROM)。
第一步:CPU上電后先從內部的IROM中讀取預先設置的代碼(BL0),并執行。這一段IROM代碼做了一些基本的初始化(cpu始終,看門狗。。。)(這一段IROM代碼是三星出廠前設置的,三星也不知道我們板子上將來要接什么樣的DRAM,因此這一段代碼不負責初始化外接的DRAM的,因此這一段代碼只能初始化SoC內部的東西);然后這一段代碼會判斷我們選擇的啟動模式(我們可以設置硬件開關可以改變板子的啟動模式)然后從外部存儲器讀取相應的第一部分(BL1,16kb)啟動代碼(uboot)到內置的SRAM(iRAM)。
第二步:從iRAM去運行上一步讀取來的代碼(BL1 16kb),BL1負責初始化NandFlash,然后將BL2讀取到iRAM(剩余的80kb)
第三步:從iRAM運行BL2,BL2初始化DRAM(SDRAM),然后將OS讀取到DRAM(SDRAM)中,然后啟動OS,啟動過程結束。
下面是詳細的啟動過程流程圖:
cup加電后,從三星內置的IROM開始啟動,判斷選擇的啟動模式:
1、如果選擇的是SD啟動,則先嘗試從SD通道0(內置4GiNAMD卡)啟動,如果通道0啟動失敗,則嘗試從通道2啟動,如果通道2啟動失敗,則整個啟動徹底失敗。
2、如果選擇的是USB啟動,則去讀USB接口的代碼。
上一篇:嵌入式開發學習(4)
下一篇:嵌入式開發學習(5)
- 熱門資源推薦
- 熱門放大器推薦
設計資源 培訓 開發板 精華推薦
- LT8705AIFE 用于超級電容器備用電源的降壓-升壓型 DC/DC 控制器的典型應用
- #第五屆立創電子設計大賽#MetooKey硬件密碼管理器
- USB電壓電流表
- 汽車中的真空管熒光顯示器(VFD)參考設計
- OP297GSZ-REEL精密正峰值檢波器的典型應用
- 2相雙極步進電機驅動IC —— TB62214AFNG
- LT3055 系列的典型應用 - 具有精密電流限制和診斷功能的 500mA、線性穩壓器
- AD9265-105EBZ,是 16 位 105 Msps 評估板(與 HSC-ADC-EVALCZ 兼容)
- Arduino based AD8307 PowerMeter
- EVAL-ADF7021-NDBEZ,基于 ADF7021-N 421 - 440 MHz ISM 頻段收發器的子板,帶有外部電感 VCO
- 納祥科技2W 24位數字功放NX4920,可用于AI語音播報、WIFI播放器
- 常用解調器的定義和工作原理
- 從性能與網絡傳輸出發,講講鐵威馬MAX系列為什么一騎絕塵
- 惠普選中Hailo下一代人工智能加速器,革新零售業與酒店業運營模式
- 跨國商務溝通困局破解之道:時空壺 W4Pro 全場景應用解析
- 從矢量降噪到雙向同傳,時空壺 W4Pro 如何重構 AI 同傳技術標準?
- LoRa+NB-IoT雙模融合,地下車庫信號盲區電梯場景等的冗余通信
- LoRa與UWB的“定位之戰”,成本敏感場景高精度需求的場景切割
- 時空壺X1再升級:引領AI同傳新時代,革新演講翻譯體驗
- ARXML 規則下 ECU 總線通訊與 ADTF 測試方案