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)非易失性存储的写寿命有限,在连续写的情况下,存储单元很快会失效。

审核编辑:符乾江

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

    关注

    13

    文章

    4296

    浏览量

    85798
  • 内存
    +关注

    关注

    8

    文章

    3019

    浏览量

    74003
  • 数据存储
    +关注

    关注

    5

    文章

    970

    浏览量

    50894
收藏 人收藏

    评论

    相关推荐

    EEPROM在嵌入式系统的应用 EEPROM数据保护技术解析

    数据进行擦除和重写。在嵌入式系统,EEPROM因其独特的特性而被广泛应用于存储关键数据,如配置参数、校准
    的头像 发表于 12-16 16:37 350次阅读

    新手怎么学嵌入式?

    基本的概念。嵌入式系统是一种将计算机技术嵌入到特定设备的系统,它通常具有特定的功能和有限的资源。你需要学习一些计算机基础知识,如数据结构、操作系统、计算机组成原理等。这些知识将帮助你
    发表于 12-12 10:51

    mmc卡在嵌入式系统的使用

    随着科技的发展,嵌入式系统在我们的日常生活扮演着越来越重要的角色。从智能手机到家用电器,再到工业控制系统,嵌入式系统无处不在。存储设备作为嵌入式
    的头像 发表于 11-25 09:58 223次阅读

    PROM器件在嵌入式系统的应用

    可编程性 :用户可以使用特定设备对PROM进行一次性编程,将所需的数据或程序代码写入其中。 只读性 :一旦编程完成,PROM的内容变为只读,无法再被修改,这保证了存储数据的稳定性和可靠性。 非易失性 :即使断电,PROM
    的头像 发表于 11-23 11:22 380次阅读

    什么是嵌入式?一文读懂嵌入式主板

    在现代科技浪潮嵌入式技术已成为支撑各种智能设备和系统运行的核心力量。那么,究竟什么是嵌入式嵌入式系统,顾名思义,是将计算机的硬件和软件嵌入
    的头像 发表于 10-16 10:14 923次阅读

    嵌入式主板是什么意思?嵌入式主板全面解析

    嵌入式主板,通常被称为嵌入式系统的核心组件,是一种用于控制和数据处理的计算机硬件,其设计旨在嵌入特定设备执行专门任务。
    的头像 发表于 09-30 10:05 447次阅读

    嵌入式常用数据结构有哪些

    嵌入式编程数据结构的选择和使用对于程序的性能、内存管理以及开发效率都具有重要影响。嵌入式系统由于资源受限(如处理器速度、内存大小等),因此对
    的头像 发表于 09-02 15:25 461次阅读

    嵌入式linux开发的基本步骤有哪些?

    之前,首先需要选择合适的硬件平台。硬件选择需要考虑以下几个方面: 1.1 处理器 嵌入式Linux开发需要一个处理器,常见的处理器有ARM、MIPS、PowerPC等。选择处理器时,需要考虑处理器的性能、功耗、成本等因素。 1.2 存储
    的头像 发表于 09-02 09:11 478次阅读

    嵌入式系统的实时操作系统

    嵌入式RTOS是嵌入式应用程序运行、相互交互和与外界通信的底层软件机制。在本节,您将了解嵌入式软件开发人员使用哪些流行RTOS以及它们运行的嵌入式
    的头像 发表于 08-20 11:28 480次阅读

    嵌入式QT常见开发方式有哪些?

    Unit): 对于资源极其有限的微控制器应用场景,Qt提供了专门针对MCU的解决方案,允许在低功耗、小内存的嵌入式系统上开发图形化界面。 总之,嵌入式工程师可以根据项目的具体需求、性能要求、硬件限制以及团队技术背景等因素,灵活选择上述Qt开发
    发表于 08-12 10:05

    嵌入式系统软硬件基础知识大全

    的重要方面。不同的处理器架构,如CISC、RISC和ARM,具有不同的指令集和执行效率。了解这些架构和指令集的特点,可以帮助我们更好地选择和使用处理器。存储器是嵌入式系统中用于存储数据
    发表于 05-09 14:12

    嵌入式系统的外设器件选择

    ,都可视系统的实际需求来进行选择。本文将为您介绍上述外设器件的类型与选择的考虑要素。 存储器的种类众多且特性不同 存储器 在嵌入式系统,[
    的头像 发表于 05-05 09:38 896次阅读
    <b class='flag-5'>嵌入式</b>系统的外设器件选择

    嵌入式fpga是什么意思

    嵌入式FPGA是指将FPGA技术集成到嵌入式系统的一种解决方案。嵌入式系统是一种为特定应用而设计的计算机系统,它通常包括处理器、内存、外设接口等组件,并且被
    的头像 发表于 03-15 14:29 1242次阅读

    嵌入式Linux开发的三种方式

    嵌入式Linux开发主要有三种方式:裸机开发、SDK开发和驱动开发。
    的头像 发表于 01-22 14:22 960次阅读

    嵌入式系统堆栈监控的作用

    在微控制器或微处理器,堆栈是内存的一个保留区域,用于存储临时数据和函数调用信息,管理函数的执行,跟踪返回地址、局部变量和函数参数。堆栈监控是嵌入式系统运行
    的头像 发表于 01-05 11:13 490次阅读