治疗白癜风最好的办法 http://m.39.net/baidianfeng/a_4250101.html
MCU的存储器?对于MCU开发工程师来说,这个还用问吗?当然是flash啦……的确,今天的MCU片内存储器多以flash为主流。常用的还有哪些存储器种类?外置存储器的MPU、DSP、高速MCU用哪些存储器?不太清楚了?那我们就聊聊这个话题。
RAM与ROM
存储器(Memory)分两类:RAM和ROM。
RAM的存取速度非常快,但是掉电后数据不能保存,常用来保存一些中间运行结果。
ROM在掉电情况下能保证数据不丢失,但是速度稍慢,常用来保存程序代码和原始配置信息。
TI发布的MSPFRxx系列MCU采用FRAM技术,是对传统flash型MCU的一次升级。
而最新的MRAM技术将RAM和ROM的优点结合起来,既能实现高速的数据存储,又能实现掉电后数据不丢失。
RAM中的SRAM与DRAM
简单说,DRAM用作内存比较多,SRAM用作cache比较多。
从名字上看,SRAM与DRAM的区别只在于一个是静态,一个是动态。由于SRAM不需要刷新电路就能够保存数据,所以具有静止存取数据的作用。而DRAM则需要不停地刷新电路,否则内部的数据将会消失。而且不停刷新电路的功耗是很高的,在我们的PC待机时消耗的电量有很大一部分都来自于对内存的刷新。那么为什么我们不用SRAM来作为内存呢?
首先来看一张SRAM的基本单元结构,再来看看DRAM的基本单元结构:
SRAM存储一位需要花6个晶体管,而DRAM只需要花一个电容和一个晶体管。cache追求的是速度所以选择SRAM,而内存则追求容量所以选择能够在相同空间中存放更多内容并且造价相对低廉的DRAM。
为什么DRAM需要不断刷新呢?
DRAM的数据实际上是存在电容里的。而电容放久了,内部的电荷就会越来越少,对外就形成不了电位的变化。而且当对DRAM进行读操作的时候需要将电容与外界形成回路,通过检查是否有电荷流进或流出来判断该bit是1还是0。
所以无论怎样,在读操作中我们都破坏了原来的数据。所以在读操作结束后需要将数据写回DRAM中。在整个读或者写操作的周期中,计算机都会进行DRAM的刷新,通常是刷新的周期是4ms-64ms。
关于SRAM和DRAM的寻址方式也有所不同。虽然通常我们都认为内存像一个长长的数组呈一维排列,但实际上内存是以一个二维数组的形式排列的,每个单元都有其行地址和列地址,当然cache也一样。
而这两者的不同在于对于容量较小的SRAM,我们可以将行地址和列地址一次性传入到SRAM中,而如果我们对DRAM也这样做的话,则需要很多很多根地址线(容量越大,地址越长,地址位数越多)。
所以我们选择分别传送行地址和列地址到DRAM中。先选中一整行,然后将整行数据存到一个锁存器中,等待列地址的传送然后选中所需要的数据。这也是为什么SRAM比DRAM快的原因之一。
计算机的DDR内存条
我们生活中离不了电脑,对电脑中的RAM做一个简介:
SSRAM:SynchronousStaticRAM同步静态随机访问存储器。
同步是指Memory工作需要时钟,内部的命令的发送与数据的传输都以它为基准,随机是指数据不是线性依次存储,而是由指定地址进行数据读写。对于SSRAM的所有访问都在时钟的上升/下降沿启动。地址、数据输入和其它控制信号均于时钟信号相关。这一点与异步SRAM不同,异步SRAM的访问独立于时钟,数据输入和输出都由地址的变化控制。
SDRAM:SynchronousDynamicRAM同步动态随机访问存储器。
如图,刷新周期64ms、速度MHz、结构16Mb*16的SDRAM。
DDR:DoubleDateRate双倍速,常见的DDRSDRAM指的是双倍速率同步动态随机访问存储器。
DDRSDRAM和SDRAM的差别:SDRAM在一个时钟周期内只传输一次数据,它是在时钟的上升期进行数据传输;而DDR内存则是一个时钟周期内传输两次次数据,它能够在时钟的上升期和下降期各传输一次数据,因此称为双倍速率同步动态随机存储器。DDR内存可以在与SDRAM相同的总线频率下达到更高的数据传输率
DDR其实是DDR1,后续的升级版还有DDR2和DDR3,此处不在赘述。
ROM技术
在MCU领域常见的ROM主要包括:MASK、OTP、PROM、EPROM、EEPROM、FLASH等。
MASKROM:掩模只读存储器,是制造商为了要大量生产,事先制作一颗有原始数据的ROM或EPROM当作样本,然后再大量生产与样本一样的ROM,这一种做为大量生产的ROM样本就是MASKROM,而烧录在MASKROM中的资料永远无法做修改。
OTPROM:one-timeprogrammableROM:一次性可编程只读存储器。
PROM:ProgrammableROM可编程只读存储器,内容一经写入以后,就不可能修改了,所以只可以写入一次。
EPROM:ErasableProgrammableROM可擦除可编程只读存储器,用紫外线照射进行擦除,高压编程写入(+21V或+12V)。
EEPROM:ElectricallyErasableProgrammableROM电可擦除可编程只读存储器,用电擦除。
FLASHMemory:即闪存,电可擦除。
对于早期的MCU工程师来说:MASK的MCU价格便宜,但程序在出厂时已经固化,适合程序固定不变的应用场合。FALSH的MCU程序可以反复擦写,灵活性很强,但价格较高,适合对价格不敏感的应用场合或做开发用途。
OTP的MCU价格介于前两者之间,同时又拥有一次性可编程能力,适合既要求一定灵活性,又要求低成本的应用场合,尤其是功能不断翻新、需要迅速量产的电子产品。
Flash又分两类:NORFlash和NADNFlash。
NORFlash块擦出写入,随机读取。NORFlash的读取和我们常见的SDRAM的读取是一样,用户可以直接运行装载在NORFLASH里面的代码,这样可以减少SRAM的容量从而节约了成本。
NANDFlash块擦出写入,块读取。NANDFlash没有采取内存的随机读取技术,它的读取是以一次读取一块的形式来进行的,通常是一次读取个字节,采用这种技术的Flash比较廉价。用户不能直接运行NANDFlash上的代码,因此好多使用NANDFlash的开发板除了使用NANDFlah以外,还作上了一块小的NORFlash来运行启动代码。
K9F1G08U0,Mx8Bit的NANDFlash,块擦除2ms,写入速度us。
小容量存储一般采用NORFlash,因为其读取速度快,多用来存储操作系统等重要信息。而大容量存储采用NANDFLASH,最常见的NANDFLASH应用是嵌入式系统采用的DOC(DiskOnChip)和我们通常用的闪盘,可以在线擦除。
FRAM铁电存储
铁电随机存取存储器(FRAM)(也称为FeRAM或F-RAM)是一种集闪存和SRAM的最佳特性于一体的存储器技术。FRAM具有非易失性(如同闪存),但支持快速和低功耗写入,写入寿命可达个周期,具有比闪存/EEPROM更不易受到攻击者攻击的代码和数据安全性,可抵抗辐射和电磁场,并且具有无可比拟的灵活性。这种存储器技术已经非常成熟。
FRAM是随机存取存储器,这意味着每个位都是单独进行读写的。这种非易失性存储器的结构与DRAM相似,采用一个晶体管和一个电容器(1T-1C),但FRAM以铁电材料(锆钛酸铅)偏振的方式存储数据。在施加电场后,晶体结构中的偶极发生偏移,从而存储信息。
与典型的MSP微控制器应用中使用的闪存、EEPROM和SRAM技术相比,使用晶体偏振而非电荷存储可以保持状态、降低电压要求(最低达1.5V)并实现高写入速度。除了与传统存储器技术有关的优点外,FRAM还具有系统级安全优势。
由于取消了电荷泵,消除了容易受到物理攻击的一个关键软肋。FRAM还能够抵御电场/磁场及辐射的影响。由于FRAM状态不以电荷形式存储,阿尔法粒子不太可能使位改变,并且FRAM软错误率(SER)低于可检测到的极限。
除了这种抗外部干扰能力,FRAM还具有防分裂能力,即写入/擦除周期中的功率损失不会造成数据损坏。最后,常常可以使用加密对数据进行保护。FRAM的高写入速度和高寿命使开发人员能够更频繁地生成密钥,从而更好地保护数据传输。
炙手可热的MRAM
MRAM全称磁阻随机访问内存,已经存在一段时间了(年motorola已经制造出kb的测试芯片)。MRAM技术的读写速度可以媲美SRAM、DRAM,当同时又是非易失性的,也就是可以断电保存数据,等于综合了RAM、Flash的优点。
早在年,飞思卡尔半导体公司开售世界第一个市场化的MRAM芯片----MR2A16A。该芯片容量4Mbit,售价$25。写入/读取速度35ns,制程纳米。如下图所示。
但是年TDK将其带到了一个新的高度,它以磁荷为数据存储介质,而它的名字来自自旋传输矩,也即是写入数据的时候利用电子角动量来改变磁场。
TDK多年来一直在研究STT-MRAM,但此前从未公开展示。年拿出的原型芯片和一个NORFlash闪存进行了肩并肩对比,读写数据的速度是后者的7倍多——MB/sVS.48MB/s。小伙伴,你被这个速度震惊到了吗?
由于MRAM性能非常优秀,因此也被认为是下一代存储之王。据悉已有四家主要的代工厂计划在今年或明年以嵌入式内存解决方案的形式提供MRAM,为这项下一代内存技术设置了最终将变革市场格局的舞台。
本文由创易栈编写,转载请联系创易栈
创易栈,半导体圈的知识共享平台!电子工程师的移动分享社区!快来
转载请注明地址:http://www.1xbbk.net/jwbzn/4151.html