内存模块 --- 基础扫盲

news2025/2/22 22:06:02

SDRAM

synchronous dynamic random-access memory
同步动态随机存储器
同步:需要同步时钟支持工作,内部命令的发送与数据的传输都是以这个时钟为基准
动态:内部的存储阵列需要不断地刷新来保证数据不丢失
随机:可以自由地在指定地址上进行数据读写

一般开发板上常见多块SDRAM芯片来组成一大块可用存储空间的情况。mini2440开发板就是由两块32MB的SDRAM芯片来组成一块64MB的存储空间。SDRAM是实际的存储实体,而存储控制单元位于S2C2440A芯片内部,CPU通过它来控制SDRAM的存储器的访问与控制
在这里插入图片描述
存储控制单元支持的功能:
1) 可通过软件选择大端、 小端。2) 总共8个存储器Bank, 每个Bank有128MB, 总共1GB地址空间。
3) 除了Bank0( 16/32位) , 其他全部Bank都可编程访问宽度
( 8/16/32位) 。
4) 6个存储器Bank为ROM、 SRAM等。 其余2个存储器Bank为
ROM、 SRAM、 SDRAM等。
5) 7个固定的存储器Bank起始地址, 1个可变的存储器Bank起始地
址, 并且Bank大小可编程。
6) 所有存储器Bank的访问周期可编程。
7) 支持外部等待扩展总线周期。
8) 支持SDRAM自刷新和掉电模式

实际连接图片:
mini2440开发板使用了两片外接的32MB的SDRAM芯片, 型号为HY57V561620或者MT48LC16M16A2, 它们并接在一起形成32位的总线数据宽度, 这样可以增加访问的速度, 并且它们的物理起始地址为0x30000000。
在这里插入图片描述
SDRAM内部是一个存储阵列,类似一个表格,有行有列,要访问这个阵列需要指定哪行哪列才能准确访问到表格中具体的一个单元。

HY57V561620是32M的SDRAM芯片,4banks4MB16bit的SDRAM(4个逻辑块 Logic Bank)

SDRAM一般包含4个bank,每个bank4MB大小

操作系统内核、 应用软件、 数据, 都是放在这个里面的, CPU就能通过内存地址运行其中的程序和操作其中的数据

Flash

Flash存储器称为闪存
ROM和RAM的优点它都有,不仅支持电子可擦除,可编程。而且还可以快速读写数据,而且数据不会因为断电而丢失。
主要分为两种

Norflash

1) 有22根地址信号线和16根数据信号线。
2) 掉电不会丢失数据。
3) 支持“片上运行”。

PC上的BIOS系统, CPU运行的第一个程序就是BIOS程序, 那个时候连内存都还没初始化呢。 再就是mini2440嵌入式开发板的上引导程序, 也可以说是BIOS, 它也完成了BIOS绝大部分工作, 只是叫法不同而已。 mini2440开发板在上电时,S3C2440芯片时钟和SDRAM芯片控制器都还没有初始化呢。 所以要借助Norflash存储技术。

Norflash芯片内部的实现细节我们不需要知道, 我们只要知道mini2440开发板上有2MB的Norflash芯片, 它就相当于掉电不丢失数据的内存, 当然它的速度赶不上内存, 它里面存放的是一个引导程序。 我们还可以通过拨动mini2440开发板上一个开关从Norflash芯片开始启动, 并且将它连接在S3C2440A的Bank0上, 开始的物理地址是0,S3C2440A中的ARM920TCPU, 一上电就是从地址0开始执行第1条指令, 这样刚好就运行了Norflash芯片中的引导程序。

Nandflash

Nandflash也是Flash闪存的一种, 其内部采用非线性单元设计模式, 为固态大容量闪存的实现提供了廉价有效的解决方案。 Nandflash存储器具有容量较大、 改写速度快等优点, 适用于大量数据的存储, 广泛应用于嵌入式产品中。

由于内部结构相对简单, Nandflash芯片使用复杂的I/O口来串行地存取数据, 各个产品或厂商的方法可能各不相同。 8个引脚用来传送控制、 地址和数据信息。 所以不能像Norflash、 SDRAM等芯片, 可以直接和CPU等设备相连并且寻址到每个存储字节。 因此Nandflash芯片需要为它设计专门的控制器才能和其他设备进行通信。

对S3C2440A芯片上的Nandflash控制器的编程步骤如下:
写命令寄存器, 向Nandflash控制器写入相关命令, 对应于
Nandflash芯片的命令周期。
写地址寄存器, 向Nandflash控制器写入相关地址, 比如上面输入的读写命令是需要读写地址的, 对应于Nandflash芯片的地址周期。
读/写数据寄存器, 读/写入数据到Nandflash存储器, 根据上面相应的命令做相应的动作, 可能是读也可能是写数据, 对应于Nandflash芯片的读/写周期。
读Nandflash控制器的主ECC寄存器和备份ECC寄存器。 对数据进行校验。

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

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

相关文章

MyBatis进阶版

本文有点难 目录 1.一些区分 1.1参数占位符#{}和${} 1.1.1SQL注入 1.1.2like查询 1.2resultType和resultMap 2.映射查询 2.1一对一表映射 2.2一对多表映射 3.动态SQL 3.1标签 3.2标签 3.3标签 3.4标签 3.5标签 1.一些区分 1.1参数占位符#{}和${} ①什么是#{}&a…

【CSS】表布局,浮动布局

❤️ Author: 老九 ☕️ 个人博客:老九的CSDN博客 🙏 个人名言:不可控之事 乐观面对 😍 系列专栏: 文章目录表布局表层表标题(caption)border-collapse边框隐藏表大小table-layout(表宽度)vertical-align例…

你安全吗?丨虎云系统“后门”

作者:黑蛋 在电视剧《你安全吗?》中,马平川这个人物已经慢慢浮出水面,算是此部电视剧幕后的最大反派,他明面上是虎迫集团的技术总监,是虎云系统的负责人,开发者。背后却在泰曼达有着诈骗基地&a…

2022年11月21日13:32:00——T5——JS对象与Date日期函数

1、JavaScrip对象的使用: /** * 1、对象的声明赋值使用的是{}花括号,大括号 * 2、对象中的值以key:value的格式进行赋值,多个值中间使用【,】区分 * 3、获取对象中的值的方法需要通过[]并给与key名的方式获取&…

电脑怎么设置开机密码?简单几步给你的电脑“上锁”

在我们日常生活中,最常见的就是开机密码了,而电脑作为我们使用频率最高也是最复杂的设备,其安全性也是非常重要的,那么电脑怎么设置开机密码?那么今天我们就来说一说开机密码的设置方法!为了更安全&#xf…

Essay写作字数怎么正确进行删减?

对于留学生来说,Essay写作伴随着整个留学生活。正因为留学生大量的Essay作业,不少留学生为了规定的Essay字数而发愁,毕竟既不能写得太少,又不能写得太多,所以很纠结。那么如何根据老师规定的字数进行删减呢&#xff1f…

Talk | 微软亚洲研究院宋恺涛南大余博涛:面向文本/音乐序列任务的Transformer注意力机制设计

本期为TechBeat人工智能社区第456期线上Talk! 北京时间11月22日(周二)20:00,微软亚洲研究院研究员——宋恺涛与南京大学硕士研究生——余博涛的Talk将准时在TechBeat人工智能社区开播! 他们与大家分享的主题是: “面向文本/音乐序列任务的Tra…

String类_Java(一)

作者:爱塔居的博客_CSDN博客-JavaSE领域博主 专栏:JavaSE 🌼作者简介:大三学生,希望跟大家一起进步! 文章目录 目录 文章目录 前言 一、构造字符串 二、Sring对象的比较 2.1 比较是否引用同一对象 2.2 比较…

跨平台编译工具--CMake上手教程

文章目录一、引入二、基本关键字1.PROJECT2.SET3.MESSAGE4.ADD_EXECUTABLE5.ADD_SUBDIRECTORY(1)使用(2)CMakeLists执行顺序(3)输出文件的位置6.INSTALL(1)安装文件(2)安装非目标文件可执行文件(3)安装目录(4)安装指令7.ADD_LIBRARY8.SET_TARGET_PROPERTIES三、语法的基本规则四…

知识引擎藏经阁天花板——高性能Java架构核心原理手册

开场 本书是按照程序设计与架构的顺序编写的,共13章。 第1章介绍学习高性能Java应了解的核心知识,为前置内容。 第2章和第3章讲解在编写代码之前,如何高效地为My SQL填充亿级数据,并对My SQL进行基准测试,以便在之后…

Linux-awk和printf

printf printf ‘输出类型输出格式’ 输内容 输出类型: %ns 输出字符串,n是数字指代输出几个字符 %ni 输出整数,n是数字,指代输出几个数字 %m.nf 输出浮点数,m和n是数字,指代输出总位数和小数位数&#xf…

YOLO V1学习总结

图片大小:448 * 448 —> 7 * 7 *(5 * B C) 5:每个框的x,y,w,h,confidence; B2:在7*7的feature上,每个cell会生成2个预测框; C:类别数。 损失函数 坐标中心误差和位置宽高的误差…

卷积神经网络基本概念

卷积神经网络基本概念1. 感受野2. 卷积核3. 特征图【feature map】4. 通道【channel】5. 填充【padding】6. 步长【stride】7. 池化【pooling】8. dropout数字1处:一个圈表示一个神经元数字2处:一个圈表示一个神经元,圈的大小表示感受野的大小…

基于matlab的最小支配集CDS仿真

目录 1.算法描述 2.仿真效果预览 3.MATLAB部分代码预览 4.完整MATLAB程序 1.算法描述 支配集的定义如下:给定无向图G (V , E),其中V是点集, E是边集, 称V的一个子集S称为支配集当且仅当对于V-S中任何一个点v, 都有…

一、FFmpeg 的初尝试《FFmpeg 音视频开发基础入门到实战》

学习目标 了解 FFmpeg学习 FFmpeg 工具的下载及环境配置了解 FFmpeg 工具的使用方式了解 FFmpeg play 的使用方法了解 FFmpeg paly 的音量设置、窗口设置、音量设置等设置方法 一、了解 FFmpeg FFmpeg 是一个音视频处理的工具,通过 FFmpeg 可以对视频进行旋转、缩…

新零售SaaS架构:多租户系统架构设计

什么是多租户? 多租户是SaaS领域的特有产物,在SaaS服务中,租户是指使用SaaS系统的客户,租户不同于用户,例如,B端SaaS产品,用户可能是某个组织下的员工,但整个企业组织是SaaS系统的租…

得数据者得天下!作为后端开发必备技能之一的MySQL,这份十多年经验总结的应用实战与性能调优我想你肯定是需要的!

MySQL对于很多Linux从业者而言,是一个非常棘手的问题,多数情况都是因为对数据库出现问题的情况和处理思路不清晰。在进行MySQL的优化之前必须要了解的就是MySQL的查询过程,很多的查询优化工作实际上就是遵循一些原则让MySQL的优化器能够按照预…

跑步戴什么耳机比较好、精挑五款最佳跑步耳机推荐

运动蓝牙耳机近几年受到市场的欢迎,种类越来越多,各类功能也日益五花八门,消费者很难准确的进行分辨,一不小心可能买到华而不实的产品。现在了解一下值得入手的运动蓝牙耳机,从多个角度对蓝牙耳机进行评估后&#xff0…

大数据项目之电商数仓、实时数仓同步数据、离线数仓同步数据、用户行为数据同步、日志消费Flume配置实操、日志消费Flume测试、日志消费Flume启停脚本

文章目录8. 实时数仓同步数据9. 离线数仓同步数据9.1 用户行为数据同步9.1.1 数据通道9.1.1.1 用户行为数据通道9.1.2 日志消费Flume配置概述9.1.2.1 日志消费Flume关键配置9.1.3 日志消费Flume配置实操9.1.3.1 创建Flume配置文件9.1.3.2 配置文件内容如下9.1.3.2.1 配置优化9.…

Arcpy新增随机高程点、空间插值及批量制图

(1)在“地质调查点基础数据表.xls”中图幅范围内增加200个随机位置的高程点。构建一个shape文件,采用自定义工具的模式,参数有两个:一个是让用户选择excel文件,一个让用户指定新生成的文件名。 &#xff08…