首页 » 互联网 » 嵌入式开拓人员这些SRAM、SDRAM等存储技能需要理解_暗记_存储器

嵌入式开拓人员这些SRAM、SDRAM等存储技能需要理解_暗记_存储器

雨夜梧桐 2024-11-30 14:24:21 0

扫一扫用手机浏览

文章目录 [+]

当代RAM存储技能是在半导体技能发明,特殊是晶体管与MOS管发明下的产物,而在半导体技能发明前,信息的存储技能经历过多个发展阶段,早期媒介记录(如纸张)、穿孔卡片、电子管技能、磁技能、半导体技能等,见下表:

一、早期媒介记录

嵌入式开拓人员这些SRAM、SDRAM等存储技能需要理解_暗记_存储器 嵌入式开拓人员这些SRAM、SDRAM等存储技能需要理解_暗记_存储器 互联网

人类在通过媒介记录信息前,都是通过大脑记录信息,然后通过回顾来还原所须要的信息(人脑便是内存和硬盘),但是人脑随意马虎遗忘,于是原始社会人类便开始了对信息存储的探索和利用,比如下面便是早期常用的记录办法:

嵌入式开拓人员这些SRAM、SDRAM等存储技能需要理解_暗记_存储器 嵌入式开拓人员这些SRAM、SDRAM等存储技能需要理解_暗记_存储器 互联网
(图片来自网络侵删)

1、结绳记事的方法。

2、雕刻的方法,将信息记录在石头、龟甲等坚硬的物体表面保存信息。
例如:万年前的史前洞穴壁画,公元前1300年前商朝的甲骨文,及春秋战国期间的竹简等。

3、古代帛书 ,西汉初期(公元前202年)造纸术的发明及东汉(105年)蔡伦对造纸术的改进,使得信息记录、传播和传承有了革命性的进步,这也极大促进了人类文明和文化传播。

公元四世纪,造纸术传到了高丽(目前鲜);

公元610年,造纸术传到日本;

公元10世纪,造纸技能传到了阿拉伯地区,如现在叙利亚的大马士革、埃及的开罗和摩洛哥;

欧洲人是通过阿拉伯人理解造纸技能的:

公元1150年,阿拉伯人将造纸术传到了西班牙;

公元1276年,意大利也有了造纸技能;

公元1348年,法国巴黎也建立了造纸厂;

公元14世纪,德国通过法国得到了造纸技能;

公元15世纪,英国由于与欧洲大陆有一海之隔,晚些才有造纸厂;

公元1573年,瑞典建立了最早的造纸厂;

公元1635年,丹麦也开始造纸;

公元1690年,挪威建立奥斯陆造纸厂;

到了17世纪欧洲各紧张国家都有了自己的造纸业。

公元1690年,美国在独立之前,才在费城附近建立了第一家造纸厂。

二、穿孔卡片

纸的发明使得历史信息能够被记录并且被传承,有了纸才有后面的穿孔卡片技能。
随着18世纪工业革命的发起,机器化生产开始代替了人类手工操作,穿孔纸片/卡片便是这时候开始涌现的,其利用在纸张上打上小孔,来掌握“程序化”的织机和其他工业机器。

穿孔纸片的思路来源于织布机的事理,织布机是由两条以上相互垂直的丝线,在织机上按照一定规律相互交织而形成的织物,纵向的纱线叫经纱,横向的纱线叫纬纱。

在织机上,经纱在经轴上逐根排列,根据织物纹样的哀求,部分经纱被抬起,另一部分经纱则保持不动 形成织口,纬纱从织口中引入,经纱抬起的规律不同以及纱线颜色的排列变革,就会给织物带来不同的纹样。

基于此,穿孔纸带技能首先开始运用于纺织行业,后面逐渐运用于电报及电脑行业,如下所示:

1725年,法国人布乔(Basile Bouchon)发明了穿孔卡,用于掌握纺织机绘制图案;

1801年,Joseph Marie Jacquard将这种设计的打孔卡按照一定顺序捆绑,运用于提花织机;

1846年,Alexander Bain发明了传真机和电传电报机,也利用了穿孔纸带来表示指令,纸带上每一行代表一个字符,利用二进制编码:带孔为1,无孔为0,经由光电扫描输入电脑,如下图:

1890年,穿孔卡片由一位毕业于哥伦比亚大学的年轻人 赫尔曼·霍尔瑞斯 (Herman Hollerith)广泛运用于人口普查中的数据存储。

在 人口普查中的穿孔卡片,一张卡片记录一个居民的信息,包括国籍、人种、性别、生日等;比如在卡片上用了两个孔位,表示男性就在个中一处打孔,表示女性就在另一处打孔,表示12个月便是12个孔位,这便是早期穿孔卡片记录信息的方法,该方法虽然现在看起来很傻,但是这些在当时可以被机器识别的卡片是一个巨大的打破。
通过穿孔有无来表示信息,也是当代打算机二进制1、0来表示数据的雏形。

1896 年前,霍尔瑞斯成立制表机公司,专注于穿孔卡片的改进与发展;1911 年,制表机公司与其余 3 家公司合并成立 CTR 公司;1924 年,CTR 更名为 国际商业机器公司(International Business Machines Corporation),便是现在大名鼎鼎的 IBM 公司。

IBM公司在1928年发明的12行80列的穿孔卡片,在当时成为信息记录的主流,特殊是用于记录程序代码,每张卡片记录一行代码,如下图所示(玄色框表示已打孔):

上图所示为1280穿孔卡片,从上往下分别分为第12行,第11行,第10行(或者第0行),第1,2,...,9行;个中赤色方框的数字1-80表示80个列号。

这样一张的穿孔卡片可以表示一行代码,每一列表示一个数字或字母,一张卡片可以表示80个数字或字母,规则如下:

举例解释,还是以上图所示取5列解释每一列所代表的字母,如下图所示:

a.赤色圈1是第2列,由于第12、11、10行没有打孔,只有第1行打玄色孔,代表数字1;

b.赤色圈2是第3列,由于第12、11、10行没有打孔,只有第2行打玄色孔,代表数字2;

b.赤色圈3是第7列,由于第11行打孔,第7也打孔,根据编码规则2,表示字母P;

c.赤色圈4是第9列,由于第12行打孔,第6也打孔,根据编码规则1,表示字母F;

d.赤色圈5是第18列,由于第10行打孔,第3也打孔,根据编码规则3,表示字母T;

再举例一个,如下图所示,第1列至第36列的玄色打孔点,根据如上编码规则,分别表示数字0到9,字母A到Z,共36个数字和字母。

穿孔卡片在当时运用非常广泛,20世纪初的IBM打算机,如IBM701便是利用穿孔卡片来保存程序数据,但那个年代的编程并不是手动在这些卡片上打孔,有个叫键盘打孔器(keypunch)的设备可以专门用来打孔,键盘上输入1, 就在当前列的第1行打一个孔,然后到下一列。
卖力用键盘打孔器打孔的操作员常日是女性,以是编程整体流程上是:

二、磁存储器

利用穿孔卡形式的机器存储,信息的读取和写入,都依赖于纸带上孔的设计。
随着电磁学的发展,从机器自动化逐步发展到电气自动化。
存储核心是利用两个状态二进制来表征数据信息。
磁性材料,利用磁矩的取向,也可以实现两态,从而替代机器打孔。
并且表征每个形态的体积相对付机器孔而言,可以做到更小,从而可以实现更高的存储密度。
后续涌现的磁带存储技能,一定程度上还保留着打孔卡设计的影子。

磁性材料作为存储介质的存储类型有很多,包含有磁带、磁鼓、磁芯、磁阻、以及后面运用于打算机的磁盘等等。

2.1、磁带存储

1928年,德国德雷斯诺工程师Fritz Pfleumer 发明了“会发声的纸”——录音磁带。
其基本事情事理是:将粉碎的磁性颗粒用胶水粘在纸条上,制备成磁带。
磁带在移动过程中,随着音频旗子暗记强弱,磁带被磁化程度也会发生变革,从而记录声音。
利用该纸带可以存储仿照旗子暗记,这是利用磁性作为信息存储的最早记录。

1951年,磁带开始广泛用于打算机。

2.2、磁鼓存储器

1932年,IBM公司的奥地利裔工程师Gustav Tauschek发明了磁鼓存储器;它是利用铝鼓筒表面涂覆的磁性材料来存储数据的,由于鼓筒旋转速率很高,因此加快了存取速率。
直到1953年,磁鼓存储器才开始运用于IBM701打算机,作为内存储器。

2.3、磁芯存储器

1948年,华裔王安发明了磁芯存储器,最初的磁芯存储器只有几百个字节的容量。

1.磁芯存储器的写入事理是:一个铁氧体磁芯中间穿过一根导线,当导线中的电流向下时,根据右手螺旋法则产生了顺时针方向的磁场。
反之,电流向上时则会产生逆时针方向的磁场。
这里,可以把顺时针的磁场记做0。
如果磁芯中已经记录了0,只要反向电流够大,就可以擦除掉这个0重新写入1。

2. 磁芯存储器的读出事理是:假设我们不知道某个磁芯中存储的是什么数据,那就强行向个中写入“0”。
如果磁芯中记载的是1,电流会逼迫写入逆向的磁场,同时引发出一个感应电流。
利用一根感应线路,就可以探测到这个感应电流。
如果磁芯本来就记载着0,就不会产生电流。
要想让磁芯存储数据,须要急速进行重新写入。

磁芯搭建内存须要将磁性排布成阵列,早期的线选法常日和3度4线法(3D4W)合营,它须要利用四根线路。
分别是相互垂直的x、y线(也可以叫行、列),禁止线z线,还有读取线,每颗磁芯都会同时穿过4根导线。
读取线呈45°穿过所有磁芯的读取线,这种排列办法是为了尽可能减少滋扰。
写入数据时,在相应的x和y线上分别加载一半功率脉冲。
这样只有在两条线重合点处的磁芯受叠加脉冲影响记录数据。
读出时则如上文所述,强行写入数据1,如果读出线产生了感应脉冲,解释这颗磁芯原来记载为0,如果没有感应脉冲,解释原来记载的为1。
读取进程结束后,如果原来记载为0时,由于读取时写入了1,须要进行重写进程,强行写回数据0。

下图为由磁芯板组成的磁芯阵列:

在50年代到70年代之间,磁芯存储器基本统治着内存领域。
由于磁性存储器的存储速率上限为10MHz,在高存储容量时体积无法做小,且随意马虎滋扰,终极为磁性存储器的发展画上句号的是1970年发明的集成电路随机存储器件(SDRAM)。

2.4、硬盘(磁盘)存储器

1956年,IBM完成了天下上的第一款硬盘设计。
这款名为IBM350 RAMAC(Random Access Method of Accounting and Control)的硬盘产品体积十分弘大,统共利用了50张24英寸的碟片,但容量仅为5MB。
磁盘两面都可以利用存储,利用率要高于磁鼓。
因此,当磁盘涌现后,磁鼓就被淘汰了。

后面,随着技能的发展,磁盘作为打算机的紧张存储介质,容量越来越大,体积反而越来越小。

三、其他类型存储器

为了数据存储,人们费尽了心血,险些所有能利用的物理征象,电、光、声、磁都被探索过来,除了上面先容的磁性材料外,还有许多其他的存储介质,如基于电子管的威廉姆斯管,基于水银延迟线的易失落性存储器等。

3.1、电子管-威廉姆斯管

1946年,基于威廉姆斯管的内存是由弗雷迪·威廉姆斯(Freddie Williams)与汤姆·基尔伯恩(Tom Kilburn)发明的,它是一种由阴极射线管(CRT)构成的储存装置。
事情事理是一股电子射到CRT表面上,它会自动创建一个正电荷,这代表了一个位的数据,由于电荷流失落有时限性,因此,数据必须定期刷新。
威廉姆斯kilburn管则哀求高精度的光束掌握技能,这使他们温度敏感和更随意马虎失落效。
这些设备的存储能力可达1024位,IBM 701打算机就利用过。

电子管由于功耗大,效率低,稳定性差,不易于集成,后续完备被磁芯存储器给替代。

3.2、水银延迟线存储器

它是利用声音在水银介质上传输的时延来储存信息。
举例,将一块石头掷入水中,形成波浪,波头经由一段韶光才能传播到远方某处,在这一段韶光的波浪用于存储信息,水银延迟线的便是利用这个事情事理。

1951年,打算机UNIVAC-1利用的水银延迟线是一根直径10mm、长150cm的管子,内部充满水银,两端各有一个转换器分别进行电-声转换和声-电转换,这样,脉冲旗子暗记从管子的一端进入,转换成超声波,960ms后超声波到达管子的另一端,然后再转换成电旗子暗记输出。

不过,要实现存储功能,还须要一些额外的电路:经调制的脉冲旗子暗记从管子的一端进入,960ms后从管子的另一端输出,由变换器吸收后,经检测、放大、整形和再生,重新反馈到发送端。
一个延迟线电路称作一个通道(channel),每个通道可存储10个91位的字,UNIVAC系统中共有100个这样的通道,可以存储99Kb的信息。

总之,在半导体技能之前,主存储器(即内存)有磁心存储器、水银延迟线存储器、电子管静电存储器等类型,磁鼓和磁盘用作紧张的赞助存储器(即硬盘)。

在半导体技能涌现后,主存储器开始采取SRAM/SDRAM(即内存),磁盘/ROM/FLASH开始用作紧张的赞助存储器(即硬盘)。

四、半导体存储器

上世纪60年代,随着晶体管与CMOS技能的发明,及集成电路的发展,半导体存储器开始运用发展,除了涌现了ROM存储外,RAM内存技能也同时发展,紧张分为两个方向:SRAM与SDRAM。
它们的差异紧张在于存储单元的事理不同,如下图所示:

个中SRAM利用六个晶体管电路和锁存器存储一个bit,如果系统通电,SRAM会保留存储的数据而无需重复充电,但是掉电SRAM则数据丢失,因此是易失落性存储器;而SDRAM利用一个晶体管另加一个电容器来存储一个bit,由于电容器不可避免地存在泄电征象,因此SDRAM每个单元必须周期性地进行刷新(预充电),同样DRAM也是易失落性的。

由于以上存储单元构造的不同,它们的紧张差异是SRAM访问速率更快,但是本钱更高,而SDRAM存储密度更高,并且本钱低;因此SRAM一样平常是小容量,比如几个KB~几个MB之间大小,紧张用于CPU的缓存cache或MCU的内部RAM;而SDRAM容量比较大,比如几个MB~几百个MB乃至几个GB大小,紧张用于CPU的内存条或ARM等芯片的外置RAM。

4.1、SRAM

SRAM可以随机的读取任意一个地址空间内的数据,因此其采取的地址线与数据线分离的接口办法,比如以IS62WV51216这颗SRAM芯片为例大略先容其接口与事情时序。

该芯片是一颗16位数据宽度,1MB大小的SRAM,芯片的内部框图图下图所示:

各个干系引脚的功能描述如下表所示:

1、地址线为A0~A18,共19根地址线,因此可以访问的地址大小便是,2^19=524288=512KB,由于其数据总线为16bit,因此每个地址可以输出2个字节数据,以是容量为512KB2=1MB。

2、数据线为I/O0~I/O15,共16个数据线,通过UB/LB可以选择高/低字节。

3、CS1/CS2为片选旗子暗记,低电平有效。

4、OE是输出使能旗子暗记(即读旗子暗记),低电平有效。

5、WE是写使能旗子暗记,也是低电平有效。

读数据时序图(详细可参考IS62WV数据手册):

写数据时序图:

4.2、DRAM

DRAM(Dynamic Random Access Memory)每隔一段韶光,要刷新充电一次,否则内部的数据即会消逝。
而SDRAM是Synchronous DRAM,在DRAM的根本上增加同步时钟,这样CPU可以准确的知道数据的读写韶光。

DRAM经由多年的发展,大致经历过几个演进过程,早期利用的普通内存,利用的是FPA DRAM(FAST PAGE MODE DRAM),即快速页面模式随机存取存储器,它是每三个脉冲周期传送一次数据;然后EDO DRAM( EXTENDED DATA OUT DRAM),即扩展数据输出随机存取存储器,它是每二个脉冲周期传送一次数据,比FPA DRAM数据速率提高了30%;随着SDRAM的涌现,它是每一个脉冲周期传送一次数据,又比EDO DRAM提高了50%,后面逐步涌现了DDR SDRAM、DDR2 SDRAM、DDR3 SDRAM、DDR4 SDRAM,目前最新的为DDR5 SDRAM。

每一代的SDRAM内存升级,速率都翻倍提升,而事情电压越来越低,同时随着制造工艺的改进,存储容量也不断提升。
目前动态存储器紧张以SDRAM为主,在嵌入式MCU中,紧张是外置SDRAM芯片来扩展内存,由于MCU内部的SRAM常日比较小;而在嵌入式ARM Cortex A系列处理器,其内部常日没有RAM供用户利用的,因此一样平常利用DDR-DDR3作为外置SDRAM;对付电脑处理器CPU而言,目前紧张利用的是DDR4和DDR5。

在2008年前后,随着智好手机的兴起,面向移动电子产品的SDRAM应运而生,如LPDDR,即(Low Power Double Data Rate SDRAM),是DDR SDRAM的一种,又称为 mDDR(Mobile DDR SDRAM),是美国JEDEC固态技能协会(JEDEC Solid State Technology Association)面向低功耗内存而制订的通信标准,以低功耗和小体积著称。

LPDDR运用与手机和平板电脑中,事情电压1.1V,LPDDR5的I/O速率可达到6400MT/s,目前最新的小米11手机等都运用了LPDDR5内存,最高容量可达16GB。

4.2.1、SDRAM芯片

在嵌入式Cortex-M内核开拓时,如果须要扩展大容量的内存,可以外挂一片SDRAM,以华邦W9825G6KH为例解释接口与时序。

W9825G6KH是一款16位宽,32MB的SDRAM,速率一样平常为133MHz、166MHz、200MHz。
其内部框图如下:

其每个引脚功能描述如下表所示:

个中:

1、CLK便是SDRAM的同步时钟旗子暗记,CLE为时钟旗子暗记的使能线;CS为片选旗子暗记;

2、SDRAM与SRAM不同,其地址线与数据线共用,如上A0~A15,而地址选通有分为行选通信号RAS,及列选通信号CAS,通过行、列地址来指定读写的位置;

3、地址线A0~A12中,W9825G6KH芯片中行地址利用了A0~A12,共13位;列地址利用了A0~A8共8位;因此可寻址范围为:(2^9)(2^13)=4194304=4MB;而数据总线宽度为16位,因此每个BANK的大小为4MB2=8MB;由于该芯片可以通过BS1/BS0来选择4个BANK,每个BANK容量为8MB,因此总容量为8MB4=32MB。

4、LDQM/UDQM也是其用于选择低/高字节使能旗子暗记。

4.2.2、DDR芯片

在嵌入式Cortex-A内核开拓时,一样平常须要外置SDRAM,比如DDRx内存,现在以NT5CC256M16EP为例解释DDR3内存的接口功能。

该芯片是一款容量512MB大小,16位宽,1.35V,传输速率为1866MT/S的DDR3L芯片,功能款图如下所示:

个中:

1、该DDR3L与之前的SDRAM同等,地址与数据共用总线,通过行旗子暗记RAS与列旗子暗记CAS进行选通详细位置。
同时还是有CS片选旗子暗记及CKE时钟使能旗子暗记,但是由于其时钟频率较高,避免滋扰影响,时钟采取的差分旗子暗记线CK/CK#,所有掌握旗子暗记与地址旗子暗记均在CK/CK#上升沿与低落沿交叉处被采集。

2、地址线为A0~A14,共15根地址线,个顶用于行地址的为A0~A14,共15根;用于列地址的为A0~A9,共10根;因此一个BANK的大小为(2^10)(2^15)2=64MB,由于该芯片有BS2、BS1、BS0可选择8个BANK,以是该DDR3L芯片的容量为64×8=512MB。

3、该芯片也有UDQS/LDQS用于选择高/低字节有效旗子暗记。

DDRx在运用前须要配置一些关键的韶光参数,如下表所示:

a>、tRCD参数

b>、CL参数

c>、AL参数

d>、tRC参数

tRC参数是两个ACTIVE命令,或者ACTIVE命令到REFRESH命令之间的周期,可参考DDR3L数据手册。

e>、tRAS参数

tRAS参数是ACTIVE命令到PRECHARGE命令之间的最小韶光,DDR3L数据手册会给出该韶光值。

以上DDR3L的读写时序还是比较繁芜,一样平常MCU或ARM处理器有专门的掌握器实现读写操作,比如ARM Cortex-M系列的FMC/FSMC掌握器,可以连接外置的SRAM或SDRAM;而对付ARM Cortex-A系列的MMDC掌握器,可以连接外置的DDRx,软件上只需配置相应的寄存器即可。

相关文章

RPC2107 PLC控制模块_电流_暗记

高压真空配电装置,移动变电站合闸闭锁分闸采取数字化技能DSP的双CP U处理器,高精度的A/D转换及前辈的保护运算,30A移变头测...

互联网 2025-01-24 阅读4 评论0