0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

嵌入式中数据存储的方式介绍

嵌入式应用开发 来源:嵌入式应用开发 作者:嵌入式应用开发 2022-06-18 20:52 次阅读

pYYBAGKtyiyAKVHWAADrcP0N71I191.png

地址映像是指某一数据在主存中的地址与在缓存中的地址两者之间的对应关系。下面介绍三种地址映像方式:
1.全相联方式
全相联方式的地址映像规则是:主存储器中的任意一块可以映像到Cache中的任意一块。其基本实现思路是:1)主存与缓存分成相同大小的数据块;2)主存的某一数据块可以装入缓存的任意一块空间中。
目录表存放在联想存储器中,包括三个部分:数据块在主存的块地址、存入缓存后的块地址及有效位(也称装入位)。由于是全相联方式,因此目录表的容量应当与缓存的块数相同。
全相联方式的优点是命中率比较高,Cache存储空间利用空间率高;缺点是访问相关存储器时,每次都要与全部内容比较,速度低且成本高,因而应用少。
2.直接相联方式
直接相联方式的地址映像规则是主存储器中某一块只能映像到Cache的一个特定的块中。其基本实现思路是:
1)主存与缓存分成相同大小的数据块;
2)主存容量应是缓存容量的整数倍,将主存空间按缓存的容量分成区,主存中每一区的块数与缓存的总块数相等;
3)主存中某区的一块存入缓存时只能存入缓存中块号相同的位置。
主存中各区内相同块号的数据块都可以分别调入缓存中块号相同的地址中,但同时只能有一个区的块存入缓存。由于主、缓存的块号及块内地址两个字段完全相同,因此,目录登记时,只记录调入块的区号即可。目录表存放在高速小容量存储器中,包括两个字段:数据块在主存的区号和有效位。目录表的容量与缓存的块数相同。
直接相联方式的优点是地址映像方式简单,数据访问时,只需检查区号是否相等即可,因而可以得到比较快的访问速度,且硬件设备简单;缺点是置换操作频繁,命中率比较低。
3.组相联映像方式
组相联映像方式的地址映像规则是主存储器中某一块只能存入缓存的同组号的任一块中。其基本实现思路是:
1)主存和缓存按同样大小划分成块;
2)主存和缓存按同样大小划分成组:
3)主存容量是缓存容量的整数倍,将主存空间按缓存区的大小分成区,主存中每一区的组数与缓存的组数相同;
4)当主存的数据调入缓存时,主存与缓存的组号应相等,也就是各区中的某一块只能存入缓存的同组号的空间内,但组内各块之间可任意存放,即从主存的组到缓存的组之间采用直接映像方式:在两个对应的组内部采用全相联映像方式。
主存地址与缓存地址的转换由两部分构成:组地址采用的是直接映像方式,按地址进行访问;而块地址采用的是全相联方式,按内容访问。
组相联映像方式的优点是块的冲突概率比较低,块的利用率大幅度提高,块的失效率明显降低:而缺点是实现难度和造价要比直接映像方式高。


内存


内存(Memory))又被称为内存储器或主存储器,由半导体器件制成,是计算机的重要部件之一,是CPU能直接寻址的存储空间, 其特点是存取速率快。计算机中所有程序的运行都是在内存中进行的, 因此内存的性能对计算机的影响非常大。内存的作用是暂时存放CPU中的运算数据以及与硬盘等外部存储器交换的数据。只要计算机在运行中, CPU就会把需要运算的数据调到内存中进行运算, 当运算完成后CPU再将结果传送出来。
我们平常使用的程序, 如Windows操作系统、打字软件、游戏软件等, 一般都是安装在硬盘等外存上的,但仅此是不能使用其功能的,必须把它们调入内存中运行,才能真正使用其功能,我们平时输入一段文字,或玩一个游戏,其实都是在内存中进行的。就好比在一个书房里,存放书籍的书架和书柜相当于电脑的外存,而我们工作的办公桌就是内存。通常我们把要永久保存的、大量的数据存储在外存上,而把一些临时的或少量的数据和程序放在内存中,当然,内存的性能会直接影响电脑的运行速度。
内存包括只读存储器(ROM)和随机存储器(RAM)两类。
只读存储器(ROM)
只读存储器即ROM(ReadOnly Memory))。在制造ROM的时候,信息(数据或程序)就被存入并永久保存。这些信息只能读出,不能写入,即使机器停电,数据也不会丢失。ROM一般用于存放计算机的基本程序和数据, 如BIOS ROM。其物理外形一般是双列直插式(DIP)的集成块。
随机存储器(RAM)
随机存储器即RAM(Random Access Memory) , 表示既可以从中读取数据, 也可以写入数据。当机器电源关闭时, 存于其中的数据就会丢失。我们通常购买或升级的内存条(SIMM)就是用作电脑的内存, 它是将RAM集成块集中在一起的一小块电路板, 插在计算机中的内存插槽上, 以减少RAM集成块占用的空间。
最后介绍物理存储器和存储地址空间这两个概念。它们是两个不同的概念,但因为两者间有十分密切的关系,且都使用B、KB、MB及GB来度量其容量大小,因此容易产生认识上的混淆。物理存储器是指实际存在的具体存储器芯片。如主板上装插的内存条和装载有系统的BIOS的ROM芯片, 显示卡上的显示RAM芯片和装载显示BIOS的ROM芯片, 以及各种适配卡上的RAM芯片和ROM芯片都是物理存储器。存储地址空间是指对存储器编码(编码地址)的范围。所谓编码,就是对每一个物理存储单元(一个字节)分配一个号码,通常叫作“编址”。分配一个号码给一个存储单元的目的是为了便于找到它,完成数据的读写,这就是所谓的“寻址”,因此有人也把存储地址空间称为寻址空间。
存储地址空间的大小和物理存储器的大小并不一定相等。举个例子来说明这个问题:某层楼共有17个房间,其编号为801~817。这17个房间是物理的,而其地址空间采用了三位编码,其范围是800~899共100个地址,可见地址空间是大于实际房间数量的。对于386以上档次的微机,其地址总线为32位,因此地址空间可达2B,即4GB。


非易失性存储(NVM)


近年来出现的非易失性存储(Non-Volatile memory,NVM)以其高集成度、低能耗、非易失性、字节寻址等特性得到了广泛关注。学术界和工业界已经开发了一些新型非易失存储介质和技术, 例如磁存储器(Magnetic RAM,MRAM) 、自旋磁存储器(Spin Transfer TorqueRAM,STT-RAM)、相变存储器(Phase Change Memory, PCM) 、阻变存储器(Resistive RAM,RRAM)、铁电存储器(Ferroelectric RAM, FeRAM)等。表中列举了几种主流新型存储器件的主要参数,从表中可以看出,非易失性存储在集成度、读速度方面具有较好的表现,是构建潜在新型存储器件的候选对象。但是非易失性存储也有几个明显的缺点:1)具有较大的写延时,其写延时比相应的存储介质大1个数量级,并且写延时大于读延时,即读写不一致;2)虽然非易失性存储的读操作比写操作快,但是仍然比传统存储介质的读操作慢;3)非易失性存储的写寿命有限,在连续写的情况下,存储单元很快会失效。

审核编辑:符乾江

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 存储
    +关注

    关注

    12

    文章

    3854

    浏览量

    84651
  • 内存
    +关注

    关注

    8

    文章

    2763

    浏览量

    72751
  • 数据存储
    +关注

    关注

    5

    文章

    893

    浏览量

    50584
收藏 人收藏

    评论

    相关推荐

    嵌入式热门发展方向有哪些?

    热门发展方向,包括但不限于: 1.物联网: 随着物联网的快速发展,嵌入式系统在物联网领域的应用也越来越广泛。嵌入式系统可以用于物联网设备的控制、监测和数据处理等方面。例如,在服务领域,如远程点菜器等
    发表于 04-11 14:17

    如何成为一名嵌入式C语言高手?

    如何成为一名嵌入式C语言高手? 嵌入式系统是当今科技领域的核心,而C语言则是嵌入式系统开发中最常用的编程语言之一。成为一名嵌入式C语言高手需要长时间的学习和实践。下面将
    发表于 04-07 16:03

    如何成为一名嵌入式C语言高手?

    如何成为一名嵌入式C语言高手? 嵌入式系统是当今科技领域的核心,而C语言则是嵌入式系统开发中最常用的编程语言之一。成为一名嵌入式C语言高手需要长时间的学习和实践。下面将
    发表于 03-25 14:12

    嵌入式会越来越卷吗?

    、技术创新和与其他技术的融合使其不断进化和扩展应用。我们将见证嵌入式系统在未来继续演进,并在技术发展的浪潮扮演着更为重要的角色。这种变革不仅会改变我们的日常生活方式,还将影响整个社会和未来的科技发展方向
    发表于 03-18 16:41

    嵌入式系统发展前景?

    设备、健康监测等领域有着广泛的应用前景。随着人们对健康的重视程度不断提高,嵌入式系统将更为深入地应用于医疗设备和健康护理,实现个人健康管理的智能化和实时化。 汽车电子和自动驾驶是嵌入式系统的另一个重要
    发表于 02-22 14:09

    嵌入式学习步骤

    硬件组件。 (4).开发固件:编写嵌入式系统的固件,这是嵌入式系统的软件部分。固件负责控制硬件并执行特定任务。 (5).调试和测试:在将嵌入式系统部署到实际环境之前,您需要对其进行调
    发表于 02-02 15:24

    嵌入式自学好书推荐

    嵌入式自学好书推荐 在数字时代的浪潮嵌入式系统一直是数字电子产品的重要组成部分。无论是家用电器、工业控制、汽车电子、医疗保健、军事应用还是物联网,
    发表于 01-11 15:13

    分区存储助力QLC应用到嵌入式存储设备

    分区存储助力QLC应用到嵌入式存储设备
    的头像 发表于 11-27 17:44 230次阅读
    分区<b class='flag-5'>存储</b>助力QLC应用到<b class='flag-5'>嵌入式</b><b class='flag-5'>存储</b>设备

    为什么嵌入式没有35岁危机?

    为什么嵌入式没有35岁危机? 在当今数字化时代,IT行业变化迅速,技术的更新迭代速度惊人。然而,有一个技术领域却能够在这个竞争激烈的行业稳步前行,而且不受35岁危机所困扰,那就是嵌入式技术
    发表于 11-17 10:33

    嵌入式系统时间片的任务调度方式的优点是什么?

    嵌入式系统时间片的任务调度方式的优点是什么
    发表于 10-20 06:48

    什么是嵌入式Linux?

    什么是嵌入式Linux? 对于很多电气、电信、通信专业的同学来说,对口专业就业方向主要有软、硬件两个方向。无论是对于学生还是就业而言,软硬件的开发学习,嵌入式物联网在近年来无疑是一个摆在面前
    发表于 10-11 13:47

    从事嵌入式工作有哪些优势?

    日常生活应用很多,比如电子产品,尤其是我们生活拥有的智能手机、智能电视、智能机器人等等都是利用了嵌入式技术研发出来的,单从这方面来看,前景就相当不错。 嵌入式可以说是当下非常有前
    发表于 10-08 15:05

    STM32嵌入式操作系统介绍

    嵌入式操作系统的特点• 嵌入式操作系统是一种用途广泛的系统软件,通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器等。• 负责嵌入式系统的全部软、硬件资源
    发表于 09-28 06:59

    嵌入式编程和微控制器应用

    对AtmelAVRRISC处理器的介绍,读者会立即进入嵌入式C语言教程之中。在本书中,读者将学习C语言的变量和常量、运算符和表达式、控制语句、指针和数组、存储器类型、预处理指令、实时方法等等。u3000u3000本书第4
    发表于 09-20 07:52

    STM32嵌入式操作系统介绍

    嵌入式操作系统的特点• 嵌入式操作系统是一种用途广泛的系统软件,通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器等。• 负责嵌入式系统的全部软、硬件资源
    发表于 09-11 07:24