打印

存储器的种类

[复制链接]
1209|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
qiangg|  楼主 | 2016-2-25 14:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
微控制器按其存储器内的程序运行。存储器有多种类型,大部份曾用于微控制器。多数现代微控制器以互补型金属氧化半导体技术制造。芯片上的存储器可能是CMOS型的(SRAM 和一些 EEPROM)或MOS型的。后者有比较好的性能和小的尺寸
沙发
ah9b87| | 2016-2-25 14:39 | 只看该作者
早期的微控制器使用掩模ROM和紫外线擦除的编程储存器来储存程序,使用SRAM来储存 数据。在大批量且低成本需求的场合,掩模ROM仍然被大量使用。通常这些微控制器的封装 上没有具体型号的印字,仅有厂商的商标。内部工厂预编程的ROM里有软件版本号

使用特权

评论回复
板凳
qiangg|  楼主 | 2016-2-25 14:39 | 只看该作者
掩模ROM有极好的性能,但它不能被再编程,也就是说不能升级程序。带UV EPROM的MCU 通常有两种方式:一种是带石英窗的陶瓷封装,可重新擦除后再编程。另一种是大量生产的标准塑料封装,也称为OTP(One-Time Programmable只能编程一次)UV EPROM 不方便的地 方是:编程的时候需要高压;一次只能写入一个字或一个字节,导致整个芯片的编程需要很 长时间。即使是可擦除的版本也只能被编程百来次,进行擦除操作时,需要在非常强的紫外 线下放置20-30分钟

使用特权

评论回复
地板
ah9b87| | 2016-2-25 14:39 | 只看该作者
SRAM也在一些需要快速读写或频繁升级的微控制器中作程序存储器。如赛普拉斯的USB 2.0微控制器C7Y68013。SRAM也被达拉斯半导体的加密型微控制器所用,因为在防**场合 需要更短的擦除时间。

使用特权

评论回复
5
qiangg|  楼主 | 2016-2-25 14:40 | 只看该作者
更先进的EEPROM比UV EPROM有一些进步:可在数百或数千个周期内再次编程;通常用芯  片上的充电泵电路产生高压;很快可以编程完毕。对EEPROM的更进一步的发展是闪存(flash  EEPROM),它在现代的微控制器和智能卡中是主流的存储器。它提供了更快的编程时间,且 可以按块来擦除,节省了很多时间;并且可以被擦写数万次。大部分的现代微控制器将闪存 作为程序存储器,这就可以现场升级代码而无须昂贵的烧录器

使用特权

评论回复
6
ah9b87| | 2016-2-25 14:40 | 只看该作者
有种方法是把SRAM和EPROM整合在一起,那就可以达到快速的读写时间,且非易失。但 它太贵,只在小部分的智能卡和ASIC中有应用

使用特权

评论回复
7
qiangg|  楼主 | 2016-2-25 14:40 | 只看该作者
每种存储器都有优势和不足,硬件设计师根据需求来取舍。普通的微控制器在同一晶粒 上有不同的存储器,如SRAM和EPROM用在OTP PIC微控制器中。SRAM,掩模ROM和EEPROM用在  飞思卡尔MC68H05微控制器中。      CPLD中,主要用EPROM,EEPROM和闪存。FPGA大多是基于SRAM的,也有公司提供反熔丝(寄存器)  和闪存的非易失FPGA。反熔丝(寄存器)是一种特殊的OTP存储器,用于将芯片内金属线之间的互联进  行编程。这些互联很小,约100纳米宽,很难确定它们的状态。基于反熔丝(寄存器)的技术,提供了  很高的安全性

使用特权

评论回复
8
qiangg|  楼主 | 2016-2-25 14:41 | 只看该作者
通过编程接口对片上存储器进行写,校验,读和擦除操作,这可以用硬件(JTAG)或软 件(bootloader)来实现。在硬件接口方面,安全保护通常是使用安全熔丝(寄存器)来控制接口的操  作,如,阻止存储器中的数据发送到输出缓冲器里。至于软件接口,一般使用密码保护,但 通常软件会检测某个硬件安全熔丝(寄存器)的状态。一些微控制器使用了这两种方法,软件启动载入  模块控制系统的编程,另一个快速的硬件接口用来大批量生产的编程。每一种都有它的优势 和劣势。通过软件,有更好的灵活性和更好的编程控制能力,但会在时间延迟和功耗方面泄 漏一些信息。硬件的执行速度更快,对噪声攻击不敏感,不会通过功耗泄漏信息。在硅芯片 的资源上,两者都占用类似大小的空间,对于现代的微控制器,与其它较大的部分如程序存 储器,处理器和模拟接口相比,这部分几乎可以忽略不计。制造商就可以在同一个芯片上放 置两种或更多的编程接口。如通过异步接口进行在线串行编程,标准的并行编程,软件启动 模块通过异步接口编程

使用特权

评论回复
9
ah9b87| | 2016-2-25 14:41 | 只看该作者
一些制造商故意不提供它们的微控制器的编程规格。这对它本身并没有提供很好的保护,只是给**稍稍增加成本而已。这些信息可以通过在开发板上或通用编程器对芯片进行编程而获得

使用特权

评论回复
10
qiangg|  楼主 | 2016-2-25 14:42 | 只看该作者
很明显,对于最高等级的安全,系统没有任何编程接口,并且不能读写所存储的数据。 这通常用于掩模ROM微控制器和智能卡。对这种保护,实用**方法是用微探针接触数据总线来恢复信息或使用功耗分析和噪声攻击来利用软件的缺陷。当微控制器进行编程但不提供任何返回信息,只有校验和写检查,这可以提供相对高的安全等级。当然,这需要完全执行以避免**者强制系统一次只校验一个字节。

使用特权

评论回复
11
ah9b87| | 2016-2-25 14:42 | 只看该作者
大部分现代的微控制器有一个或多个安全熔丝(寄存器)来控制片上存储器的读写。这些熔丝(寄存器)可以用软件或硬件来实现。软件的方法就是密码存储在存储器中或一个特定的存储器位置当作一个安全熔丝。例如,在MC68HC908系列,使用了密码保护。 MC68HC705B系列的熔丝(寄存器)位于数据EEPROM存储器的第一个字节。两种方法的安全性都较高,因为很难从物理上找到熔丝(寄存器)和密码的位置并复位它们。同时,**者会尝试使用噪声攻击来跳过安全检查,或使用功耗分析来观察猜测的密码正确与否

使用特权

评论回复
12
qiangg|  楼主 | 2016-2-25 14:43 | 只看该作者
硬件执行方面,安全熔丝(寄存器)物理上位于芯片上。这可以是主存储器阵列边上的分离的单个单元,甚至更远。所有的PIC和AVR微控制器都这样。这两者的安全性能并不高,熔丝(寄存器)很容易被找到并被屏蔽

使用特权

评论回复
13
ah9b87| | 2016-2-25 14:43 | 只看该作者
安全熔丝(寄存器)在主存储器中可以提供提供更好的保护,这很难找到并屏蔽它们。主存储器和熔丝(寄存器)可以通过位线(Bit line)接在一起。如zilog的Z86E33微控制器,或通过字线(Word line)接在一起,如意法的ST62T60。有趣的是MC68HC705C9A使用了多种安全措施。熔丝(寄存器)单元放在主存储器单元之间,合用位线。如果熔丝(寄存器)被紫外线擦除了,主存储器也会被擦掉。对存储器进行反向工程,发现很难分辨哪部分属于存储器,哪部分属于熔丝(寄存器)。但同时,半侵入式攻击可以很好工作,因为熔丝(寄存器)有分开的控制电路,这很容易被**而不影响主存储器

使用特权

评论回复
14
qiangg|  楼主 | 2016-2-25 14:43 | 只看该作者
将某一部分存储器作为安全熔丝可以达到更高的安全性能。这种情况下,不扰乱其它部 分存储器的内容,找到位置并复位是异常困难的。这并不意味着别的**方法不能凑效。但 可以减少成功的机会

使用特权

评论回复
15
ah9b87| | 2016-2-25 14:44 | 只看该作者
下一个硬件安全保护方面的进展是将熔丝区域嵌入到主存储器阵列中,共享控制或数据 线,这样的安全性能更好,熔丝已经成为存储器的一部分,很难进行定位

使用特权

评论回复
16
qiangg|  楼主 | 2016-2-25 14:44 | 只看该作者
安全熔丝(寄存器)可通过多种方法来监控。最简单方法就是在上电时、复位时、进入编程模式时检查熔丝的状态。使用电源噪声或激光脉冲,可以用很短的时间就改变熔丝状态。熔丝状态保存在触发器或寄存器中并不好,因为触发器状态可以通过缺陷注入攻击来改变

使用特权

评论回复
17
chuntian2016| | 2016-2-25 21:13 | 只看该作者
在单片机上一般都会带有一定容量的存储空间的额,但是毕竟有限。

使用特权

评论回复
18
给力芯片| | 2016-2-26 12:55 | 只看该作者
存储器有很多啊

使用特权

评论回复
19
firstblood| | 2016-2-27 12:58 | 只看该作者
按读写功能
只读存储器(ROM):存储的内容是固定不变的,只能读出而不能写入的半导体存储器。
随机读写存储器(RAM):既能读出又能写入的各存储器之间的关系各存储器之间的关系半导体存储器。

使用特权

评论回复
20
chuntian2016| | 2016-2-27 13:03 | 只看该作者
根据存储器在计算机系统中所起的作用,可分为主存储器、辅助存储器、高速缓冲存储器、控制存储器等。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

19

主题

260

帖子

0

粉丝