ARM裸机:地址映射

S5PV210的地址映射详解

  • 什么是地址映射?
    S5PV210属于ARM Cortex-A8架构,32位CPU,CPU设计时就有32根地址线&32根数据线。
    32根地址线决定了CPU的地址空间为4G,那么这4G空间如何分配使用?这个问题就是内存映射问题。

目录:210开发板光盘资料\X210V3S_A\DataSheet\DataSheet\S5PV210_UM_REV1.1.pdf

在这里插入图片描述

  • 一些专业术语

ROM:read only memory 只读存储器 硬盘、flash、不能通过地址总线读写
RAM:ramdom access memory 随机访问存储器
IROM:internal rom 内部ROM,指的是集成到SoC内部的ROM
IRAM:internal ram 内部RAM,指的是集成到SoC内部的RAM
DRAM:dynamic ram 动态RAM
SRAM:static ram 静态RAM
SROM:static rom? sram and rom?
ONENAND/NAND:
SFR:special function register

CPU和外部存储器的接口

内存 内部存储器 用来运行程序的 RAM
举例:DRAM SRAM DDR
外存 外部存储器 用来存储东西的 ROM
举例: 硬盘 Flash(Nand iNand…U盘、SSD) 光盘

CPU连接内存和外存的连接方式不同:
内存需要直接地址访问,所以是通过地址总线6数据总线的总线式访问方式连接的(如好处是直接访问,随机访问;坏处是占用CPU的地址空间,大小受限):外存是通过CPU的外存接口来连接的(好处是不占用CPU的地址空间,坏处是访问速度没有总线式快,访问时序较复杂)

  • SoC常用外部存储器

这些本质都是flash,电子存储原理
NorFlash 总线式访问,接到SROM bank ,优点是可以直接访问,一般用来启动

NandFlash 通过接口访问,分SLC和MLC
eMMC/iNand/moviNand EMMC(Embedded MultiMediaCard)
oneNAND
SD卡/TF卡/MMC卡
eSSD 容量大

SATA硬盘(磁存储、机械式访问,SATA是接口)

  • 总结
    1、现代SoC支持多种外部存储器
    2、外部存储器主要用来存储程序(可执行代码),相当于电脑的硬盘。
    3、各种不同外部存储器原理不同,大小、性价比不同,一般产品厂家根据需要选择适合自己产品的外存使用。
    4、外部存储器和CPU连接一般不是通过地址&数据总线直接相连,因为地址空间不够用。一般都是通过专门的接口来连接的。

  • 补充:

SLC (Single-Level Cell) 和 MLC (Multi-Level Cell) 是两种常见的闪存存储技术,用于现代固态硬盘(SSD)中数据的存储。

SLC (Single-Level Cell):

SLC 单位通常包含一个电容器,能存储一个比特的信息,这意味着它可以表示0或1两个状态。由于每个单元只有一个存储级别,SLC 提供了较高的数据可靠性,但存储密度相对较低,成本也较高。
MLC (Multi-Level Cell):

MLC 扩展了每个单元的存储能力,可以存储两个、三个甚至更多的比特信息。例如,TLC (Triple-Level Cell) 代表3位数据(00, 01, 10, 11),QLC (Quad-Level Cell) 则为4位数据。这样可以显著提高存储密度,降低生产成本,但因为多了中间状态,误读率和耐用性可能会降低,需要更复杂的纠错技术和管理算法。

EMMC(Embedded MultiMediaCard)是一种嵌入式闪存存储技术,专为移动设备设计,如智能手机、平板电脑和一些早期的电子阅读器。它结合了MMC (MultiMedia Card) 标准的灵活性和闪存的快速数据访问,提供了一种低成本、易集成的存储解决方案。

EMMC通常作为内置存储用于不需要太大容量但需要频繁读写的场景,比如操作系统、用户数据和应用程序。它的优势在于体积小、功耗低,而且支持连续的数据传输,适合移动设备的实时性能需求。

总结

理解一些专业术语,理解地址映射是什么
理解CPU访问内存和外存的不同方式
了解外部存储器分类

学习记录,侵权联系删除。
来源:朱老师物联网大课堂

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/36560.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

NAND闪存巨头铠侠(Kioxia)计划最迟于10月下旬通过首次公开募股IPO

据路透社于6月26日引用消息来源的报道,在半导体市场条件反弹及财务业绩迅速改善的背景下,NAND闪存巨头铠侠(Kioxia)正准备尽快提交初步申请,并计划最迟于10月下旬通过首次公开募股(IPO)在东京证…

9.二维数组的遍历和存储

二维数组的遍历和存储 二维数组的遍历 二维数组a[3][4],可分解为三个一维数组,其数组名分别为: 这三个一维数组都有4个元素,例如:一维数组a[0]的 元素为a[0][0],a[0][1],a[0][2],a[0][3]。所以遍历二维数组无非就是先取出二维数组中得一维数组, 然后再从一维数组中取出每个元…

Eclipse代码编辑器自主配色

1. 打开 Eclipse 的设置 - Java - Editor - Syntax Coloring 2. 自定义各种类型的颜色,例如: 1. Interface 勾选,设置为紫色 2. Class 勾选,设置为淡蓝色 3. Abstract classes 勾选,有自己默认的颜色 …

俯视LLM的灵魂:一文搞懂稀疏自动编码器

实时了解业内动态,论文是最好的桥梁,专栏精选论文重点解读热点论文,围绕着行业实践和工程量产。若在某个环节出现卡点,可以回到大模型必备腔调或者LLM背后的基础模型重新阅读。而最新科技(Mamba,xLSTM,KAN)…

使用jupyter打开本地ipynb文件的方法

常用方法: 先启动jupyter,然后在打开的页面点击upload,选择想要打开的文件上传然后打开,但是这样其实是先复制了一份到jupyter中,然后打开运行。而我不想复制。 方法二 先打开项目文件所在文件夹,文件夹…

【Dison夏令营 Day 01】如何用Python写一个游戏“石头剪刀布”

欢迎你们踏入这个充满无限可能性的编程世界!作为一名热爱Python的开发者,我深感编程的魅力,并希望与你们一同分享这份乐趣和激情。编程,不仅仅是一种技能,更是一种思维方式和解决问题的工具。在Python的世界里&#xf…

118. 杨辉三角

118. 杨辉三角 题目链接&#xff1a;118. 杨辉三角 代码如下&#xff1a; class Solution { public:vector<vector<int>> generate(int numRows) {vector<vector<int>> res(numRows);for(int i0;i<numRows;i){res[i].resize(i1,1);for(int j1;j&…

RuntimeError: “exp_vml_cpu“ not implemented for ‘Half‘

遇到 "exp_vml_cpu" not implemented for Half 这个运行时错误&#xff0c;意味着你尝试在一个操作中使用了半精度&#xff08;Half 或 float16&#xff09;数据类型&#xff0c;但是该操作在当前环境下并没有针对半精度数据类型的实现。 半精度&#xff08;float16&…

如何寻找强势货币和弱势货币?

外汇交易的独特之处在于&#xff0c;它融合了两种货币的价值&#xff0c;其中一种货币的价值通过另一种货币来体现。举例来说&#xff0c;USDJPY外汇反映了美元与日元之间的价值关系&#xff0c;而EURUSD则代表了欧元与美元的价值对比。 通过开仓操作&#xff0c;我们预测一种…

Linux学习第54天:Linux WIFI 驱动:蓝星互联

Linux版本号4.1.15 芯片I.MX6ULL 大叔学Linux 品人间百味 思文短情长 数字化、现代化的今天&#xff0c;随处的WIFI给与了大众极大的方便&#xff0c;也感受到了科技的力量。万物互联、无线互联越来越成为一个不可逆转的趋势。现在比较火…

四川赤橙宏海商务信息咨询有限公司抖音电商领航者

在数字化浪潮席卷全球的今天&#xff0c;电商行业无疑是其中最为活跃、最具潜力的领域之一。而在中国这片广袤的土地上&#xff0c;四川赤橙宏海商务信息咨询有限公司以其独特的视角和前瞻性的战略布局&#xff0c;成为了抖音电商服务领域的佼佼者。今天&#xff0c;就让我们一…

stm32学习笔记---TIM输入捕获(代码部分)输入捕获模式测频率/PWMI模式测频率占空比

目录 第一个代码&#xff1a;输入捕获模式测频率 调整频率 PWM.c PWM.h 输入捕获 IC.c 输入捕获初始化步骤 TIM.h库函数 TIM_ICInit TIM_PWMIConfig TIM_ICStructInit TIM_SelectInputTrigger TIM_SelectOutputTrigger TIM_SelectSlaveMode 单独配置四个通道的分…

三、如何使得插件可以跨平台和独立测试和运行,从而支持完美解耦

要使插件能够跨平台运行、独立测试和运行&#xff0c;从而实现完美解耦&#xff0c;可以遵循以下步骤和最佳实践&#xff1a; 1. 设计良好的接口和API 抽象接口&#xff1a;定义清晰、稳定的接口&#xff0c;这些接口应该封装插件的核心功能&#xff0c;而不暴露实现细节。依…

聊一聊UDF/UDTF/UDAF是什么,开发要点及如何使用?

背景介绍 UDF来源于Hive&#xff0c;Hive可以允许用户编写自己定义的函数UDF&#xff0c;然后在查询中进行使用。星环Inceptor中的UDF开发规范与Hive相同&#xff0c;目前有3种UDF&#xff1a; A. UDF--以单个数据行为参数&#xff0c;输出单个数据行&#xff1b; UDF&#…

深度强化学习之SAC(Soft Actor-Critic)

SAC(Soft Actor-Critic)是一种深度强化学习算法,结合了最大熵强化学习和基于策略梯度的方法。SAC通过最大化期望回报和策略熵,使得策略既能探索环境又能利用已知信息,从而提高了策略的稳定性和性能。 SAC的基本概念 强化学习(RL): 强化学习旨在通过与环境交互,学习能…

打破生态「孤岛」,Catizen将开启Telegram小游戏2.0时代?

Catizen&#xff1a;引领Telegram x TON生态的顶级猫咪链游 在区块链游戏领域&#xff0c;吸引玩家的首要因素往往是游戏的趣味性。然而&#xff0c;仅靠趣味性无法评估一个项目的长期价值和发展潜力。真正能在区块链游戏市场中取得长久成功的项目&#xff0c;无一例外都依靠扎…

Spring Boot中的表单处理

Spring Boot中的表单处理 大家好&#xff0c;我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01; 在现代的Web应用程序开发中&#xff0c;表单处理是不可或缺的一部分。Spring Boot作…

【消息队列】RabbitMQ集群原理与搭建

目录 前言1、集群搭建1.1、安装RabbitMQ1.1.1、前置要求1.1.2、安装Erlang环境①创建yum库配置文件②加入配置内容③更新yum库④正式安装Erlang 1.1.3、安装RabbitMQ1.1.4、RabbitMQ基础配置1.1.5、收尾工作 1.2、克隆VMWare虚拟机1.2.1、目标1.2.2、克隆虚拟机1.2.3、给新机设…

智能充电桩网关,构建高效充电网络

近年来我国新能源汽车的增长速度出现明显的上升趋势&#xff0c;但是其充电桩的发展还比较缓慢。目前在充电桩系统设计期间仍存在一些问题&#xff0c;主要表现在充电设施短缺、充电难等问题&#xff0c;这些问题的发生均会在一定程度上限制新能源汽车的发展&#xff0c;这就需…

navicat Premium发布lite免费版本了

Navicat Premium发布lite免费版本了&#xff0c;下面是完整功能对比链接 Navicat Premium 功能列表 | Navicat 免费版本下载链接如下&#xff1a; Navicat | 免费下载 Navicat Premium Lite 开发功能完全够用&#xff0c;点赞。 dbeaver该如何应对。