2025年arom和prom(arom和prom什么意思)

arom和prom(arom和prom什么意思)笔者使用的是朱老师的嵌入式及 教程 S5PV210 一 内存映射 专业术语 ROM 只读存储器 例如硬盘 RAM 随机访问存储器 例如内存 IROM 内部 ROM 集成到 SoC 内部的 ROM IRAM 同理 DRAM 动态 RAM 内存 SRAM 静态 RAM 内存 SROM sram 和 rom DRAM 是采用总线型连接 内存映射上有多少空间是 DRAM 的

大家好,我是讯享网,很高兴认识大家。



笔者使用的是朱老师的嵌入式及 教程 S5PV210

一.内存映射

专业术语:

ROM:只读存储器,例如硬盘

RAM:随机访问存储器,例如内存

IROM:内部ROM,集成到SoC内部的ROM

IRAM:同理

DRAM:动态RAM 内存

SRAM:静态RAM 内存

SROM:sram 和 rom

DRAM是采用总线型连接,内存映射上有多少空间是DRAM的,那么实际上就只能外接这么多大小的内存芯片,而flash(NandFlash)的连接方式和DRAM不同,其地址总线和数据总线是复用的,读写数据需要先发送命令,不能随机访问。内存映射上的大小并不是实际flash的大小。

所谓总线型连接就是指按照地址总线和数据总线分开的方式来进行cpu和存储器芯片的直接连接。除了DRAM可以进行总线型连接外,NorFlash也可以总线型连接,和DRAM一样直接占用cpu的地址空间。通常NorFlash连接在SROM(图中红**域)区域中。

二.CPU和外部存储器的接口 2017/10/24 14:51

内存: 内部存储器 用来运行程序的,RAM (DRAM SRAM DDR)

外存: 外部存储器 用来存储东西的,ROM (硬盘 flash SSD)

内存采用直接地址访问,所以是通过地址总线&数据总线的总线式访问的

好处:直接访问,随机访问

坏处: 占用了CPU的地址空间,大小受限

外存采用CPU的外存接口来访问的

好处:不占用CPU的地址空间,

坏处:访问速度没有总线式快,访问时序复杂

SoC常用外部存储器类型

•Nor Flash:最早的FLASH存储器,支持总线式访问,CPU可以像访问内存一样访问,如s3c2440

•Nand Flash: 集成密度高,存储空间较大,分为SCL颗粒和MLC颗粒

•eMMC/iNand/moviNand

eMMC::针对手机和平板电脑等产品的内嵌式存储器标准规格,提供标准接口并管理闪存

iNAND:是SanDisk公司研发的存储芯片,可以简单的看成SD卡或MMC卡芯片化

moviNand是三星公司研发的存储芯片,功能类似于iNand。

•oneNAND: 三星公司研发的结合Nor优点和Nand Flash 高容量存储特点的Flash 

•SD卡/TF卡/MMC卡

•eSSD: Embeded SSD 采用 MLC Nand Flash技术 

•SATA硬盘

Nand Flash的SLC 和MLC对比


讯享网

SLC(Single-Level Cell )单层单元闪存,每个单元存储一位数据,一般而言,SLC虽然生产成本较高,但在效能上大幅胜于MLC。

MLC(Multi-Level Cell) 多层单元闪存,通过使用大量的电压等级,每一个单元储存两位数据,数据密度比较大。

A.读写速度较慢。相对主流SLC芯片,MLC芯片目前技术条件下,理论速度只能达到2MB左右,因此对于速度要求较高的应用会有一些问题。 

B.MLC能耗比SLC高,在相同使用条件下比SLC要多15%左右的电流消耗。 

C.MLC理论写入次数上限相对较少,因此在相同使用情况下,使用寿命比较SLC短。 

D.MLC的价格比SLC低30%~40%,有些甚至更低。

三.S5PV210的启动过程详解

内存 : 

SRAM 静态内存 特点就是容量小、价格高,优点是不需要软件初始化直接上电就能用 

DRAM 动态内存 特点就是容量大、价格低,缺点就是上电后不能直接使用,需要软件初始化后才可以使用。

单片机中:内存需求量小,而且希望开发尽量简单,适合全部用SRAM 

嵌入式系统:内存需求量大,而且没有NorFlash等可启动介质 

PC机: 内存需求量大,而且软件复杂,不在乎DRAM的初始化开销,适合全部用DRAM

外存:  

NorFlash:特点是容量小,价格高,优点是可以和CPU直接总线式相连,CPU上电后可以直接读取,所以一般用作启动介质。 

NandFlash(跟硬盘一样):特点是容量大,价格低,缺点是不能总线式访问,也就是说不能上电CPU直接读取,需要CPU先运行一些初始化软件,然后通过时序接口读写。

所以一般PC机都是:很小容量的BIOS(NorFlash)+ 很大容量的硬盘(类似于NandFlash)+ 大容量的DRAM 

一般的单片机: 很小容量的NorFlash + 很小容量的SRAM 

嵌入式系统:因为NorFlash很贵,所以现在很多嵌入式系统倾向于不用NorFlash, 

直接用:外接的大容量Nand + 外接大容量DRAM + SoC内置SRAM

S5PV210使用的启动方式是:外接的大容量Nand + 外接大容量DRAM + SoC内置SRAM

S5PV210启动方式理解,图

三星sm平板 bios_ARM

S5PV210的启动可大致分为五个步骤

1、iROM阶段(BL0) 

2、BL1阶段 

3、BL2阶段 

4、拷贝OS到SDRAM 

5、启动OS

(1)BL0:是指S5PV210的iROM中固化的启动代码

        作用:初始化系统时钟,设置看门狗,初始化堆和栈,加载BL1

(2)BL1:是批在iRAM自动从外扩存储器(nand/sd/usb)中拷贝的uboot.bin二进制文件的头最大16K代码

        作用:初始化RAM,关闭Cache,设置栈,加载BL2

(3)BL2:是指在代码重定向后在内存中执行的uboot的完整代码

        作用:初始化其它外设,加载OS内核

(4)三者之间的关系:(Interal ROM固化代码)BL0将BL1(bootloader的前16KB–BL1)加载到iRAM;BL1然后在iRAM中运行将BL2(剩下的bootloader)加载到SDRAM;BL2加载内核,把OS在SDRAM中运行起来,最终OS是运行在SDRAM(内存)中的。(理解引用网上的一些大佬分析的,如有侵权,提醒删)

iROM都做了些什么?

1、关闭看门狗; 

2、初始化icache; 

3、初始化栈; 

4、初始化堆; 

5、初始化 块设备拷贝函数 ; 

6、初始化PLL,设置系统时钟; 

7、拷贝BL1到内部的SRAM区域; 

8、检查BL1的校验和; 

9、检查是否是安全启动模式; 

10、跳转到BL1的起始代码处。

三星sm平板 bios_ARM_02

从图可以看出210在启动的时候首先会判断,系统是从休眠中唤醒还是刚上电,从而决定是重新引导系统还是直接跳转到OS继续执行休眠前的代码;然后还有一个”Checksum OK?”的判断,如果BL1的代码检验出错会自动跳转尝试用 “2nd”方式启动

S5PV210还提供了一个”Secure Boot” 安全启动的模式。

S5PV210提供多种启动方式如下

”1st启动”可以通过引脚选择,

当”1st启动”失败后,会尝试从”2nd启动”,也就是从SD卡通道2,通过SD卡启动方式启动。

如果”2nd启动”仍然失败,会尝试从“Uart boot”启动

如果仍然失败将会尝试从 “USB boot”启动。()

这节的学习,有点迷迷糊糊的,因为都是一些原理性的东西,不能更直接的理解,还没上手源码分析,后面上手u-boot分析,再补上。

小讯
上一篇 2025-06-10 07:20
下一篇 2025-04-26 10:46

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/184258.html