EEPROM与Flash的区别

EEPROM与Flash的区别

  • EEPROM
    • EEPROM内部功能框图
    • 实现写入数据
      • 内部结构
      • 存储管在充电或放电状态下有着不同的阈值电压
  • 问题点
    • EEPROM是如何失效的呢?
    • 为何EEPROM不能做大呢?
  • -----------------------------------------------------------------------------------------------------------------------------------
  • Flash
    • Flash内部功能框图
    • 实现写入数据
      • 存储数据在擦除和编程状态下有着不同的阈值电压
  • 问题点
    • 为何Flash存储容量能做到那么大的呢?
  • -----------------------------------------------------------------------------------------------------------------------------------
  • Flash和EEPROM的异同总结

EEPROM

EEPROM(Electrically Erasable Programmable Read-Only Memory,电可擦除可编程只读存储器)是一种非易失性存储器,可以通过电子擦除和编程操作来存储和修改数据,数据可以单独地、位于任何位置地进行读取、修改和写入。在电源关闭后保留其存储的数据。EEPROM的缺点是读写速度慢,每次以单位字节进行擦除进行读写操作。因此,EEPROM常用于存储小量的重要数据,如配置信息和加密密钥。

实现EEPROM中存储单元的擦除和编程操作,需要以下这些电路如下图所示:

EEPROM内部功能框图

在这里插入图片描述

实现写入数据

EEPROM有一个自举电压(高压泵),可以抬升到特定电压将数据位擦除,所以最常规的操作是先擦再写
擦除操作:0→1 写操作:1→0

内部结构

浮栅隧道氧化物结构的EEPROM
它与普通MOS管的区别,就是增加了一个浮置栅极和一个超薄的隧道氧化层。我们就是利用F-N隧道效应的原理来实现数据擦写的
在这里插入图片描述

写入时给控制栅极加高于芯片工作的编程电压,原极和漏极接地,这时漏极的电子穿过隧道氧化层进入浮栅并保存,完成数据写入。
在这里插入图片描述

相反,控制栅极接地 漏极接编程电压,源极悬空。这时形成了反向电场,浮栅上的电子穿过隧道氧化层,完成数据擦除。
在这里插入图片描述

存储管在充电或放电状态下有着不同的阈值电压

写阈值和擦阈值

问题点

EEPROM是如何失效的呢?

在这里插入图片描述

是因为擦除和写入过程中 电子被注入或抽出浮栅,则写阈值和擦阈值的差值会越来越小,当小到一定值的时候,电路将无法识别存储管的状态。也就是说隧道氧化层经过多次操作,电子会永久停留在隧道氧化层,最终电子堆满在隧道氧化层,从而存储的信息将会失效。所以隧道氧化层的质量决定了存储的使用寿命

为何EEPROM不能做大呢?

为防止存储单元擦写时对其它的单元产生影响,每个存储管会配置一个选通管,用于选择相应的存储单元, 这种结构就降低了EEPROM的存储密度
在这里插入图片描述

-----------------------------------------------------------------------------------------------------------------------------------

Flash

Flash是一种基于NOR门的存储技术,也是一种非易失性存储器。Flash内部电路采用了一种叫做Floating Gate的结构,这种结构可以存储电荷,电荷的存在与否决定了存储单元的状态(0或1)。擦除时,通过在闪存芯片的门控极上施加高电压,将该存储单元的电荷清零,即擦除了该存储单元存储的数据。这个过程被称为Flash擦除。Flash中的数据则以扇区为单位擦除和编程方法来修改,这意味着它的擦除和编程速度比EEPROM快得多。Flash常用于存储大量的程序和数据。

实现Flash中存储单元的擦除和编程操作,需要以下这些电路如下图所示:

Flash内部功能框图

在这里插入图片描述

实现写入数据

Flash也有一个自举电压(高压发生器),可以调节到特定电压将数据位变更。当需要将一个Flash单元的位值从“1”改为“0”时,需要通过向浮动栅注入电荷来实现;当需要将其从“0”改为“1”时,需要释放浮动栅内的电荷。下面解释内部结构如何实现“0”或“1”的跳变。

具体的存储原理就是当在栅极施加正向偏压时,沟道层中的电子在电场的作用下从第一个栅极隧穿进浮栅存储起来,第二个栅极阻挡了浮栅中的电子跑到栅极电极。
在这里插入图片描述

此时,阈值电压增大,器件切换到高阈值电压状态,对应的逻辑为“0”。即使撤掉电压后隧穿层和阻挡层也可以保证浮栅中的电子不会丢失,这个过程完成了电荷的存储及信息的编程写入过程。
在这里插入图片描述

那么怎么完成信息的擦除过程了,只需要施加负向的栅压使得浮栅中的电子,回到沟道中,阈值电压减小,回到低阈值状态,对应的逻辑为“1”。

在这里插入图片描述

存储数据在擦除和编程状态下有着不同的阈值电压

在这里插入图片描述
向浮栅中注入和移除电子的过程对应的就是编程和擦除,存储单元在编程和擦除状态下对应的阙值电压差值即为存储窗口
在这里插入图片描述

问题点

为何Flash存储容量能做到那么大的呢?

对比EEPROM结构Flash内部少了每个单元的选通管,此外,Flash类似于表格形式连结如下图。并且Flash存储器使用了普通的晶体管。使得Flash存储器可以更轻松地集成到芯片中,从而实现更大的存储容量。
在这里插入图片描述

-----------------------------------------------------------------------------------------------------------------------------------

Flash和EEPROM的异同总结

(1)两者都是属于ROM,并且都是电学原理进行存储
(2)FLASH比EEPROM的电路简单,同样面积flash可以存储更多数据,数据密度更高;
(3)FLASH 只能一大片一大片的擦,而EEPROM 可以按“位”擦写;
(4)FLASH是按块或(扇区)进行访问,EEPROM按字节进行访问;
(5)EEPROM的可擦写次数比FLASH多;
(6)EEPROM的单位容量价格比FLASH更高,EEPROM一般容量都很小;
(7)EEPROM一般都是用作存储程序运行时要掉电不丢失的数据,FLASH一般是用来存储程序的;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/148276.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java多线程(3)

Java多线程(3) 深入剖析Java线程的生命周期,探秘JVM的线程状态! 线程的生命周期 Java 线程的生命周期主要包括五个阶段:新建、就绪、运行、阻塞和销毁。 **新建(New):**线程对象通过 new 关键字创建&…

tamarin运行

首先我们找到安装tamarin的文件位置,找到以后进入该文件夹下 ubuntuubuntu:~$ sudo find / -name tamarin-prover /home/linuxbrew/.linuxbrew/var/homebrew/linked/tamarin-prover /home/linuxbrew/.linuxbrew/Cellar/tamarin-prover /home/linuxbrew/.linuxbrew/…

mac下vue-cli从2.9.6升级到最新版本

由于mac之前安装了 vue 2.9.6 的版本,现在想升级到最新版本,用官方给的命令: npm uninstall vue-cli -g 发现不行。 1、究其原因:从vue-cli 3.0版本开始原来的npm install -g vue-cli 安装的都是旧版,最高到2.9.6。安…

基于Netty实现的简单聊天服务组件

目录 基于Netty实现的简单聊天服务组件效果展示技术选型:功能分析聊天服务基础设施配置(基于Netty)定义组件基础的配置(ChatProperties)定义聊天服务类(ChatServer)定义聊天服务配置初始化类&am…

后端接口错误总结

今天后端错误总结: 1.ConditionalOnExpression(“${spring.kafka.exclusive-group.enable:false}”) 这个标签负责加载Bean,因此这个位置必须打开,如果这个标签不打开就会报错 问题解决:这里的配置在application.yml文件中 kaf…

Linux Docker图形化工具Portainer如何进行远程访问?

文章目录 前言1. 部署Portainer2. 本地访问Portainer3. Linux 安装cpolar4. 配置Portainer 公网访问地址5. 公网远程访问Portainer6. 固定Portainer公网地址 前言 Portainer 是一个轻量级的容器管理工具,可以通过 Web 界面对 Docker 容器进行管理和监控。它提供了可…

Flutter最新稳定版3.16 新特性介绍

Flutter 3.16 默认采用 Material 3 主题,Android 平台预览 Impeller,DevTools 扩展等等 欢迎回到每季度一次的 Flutter 稳定版本发布,这次是 Flutter 3.16。这个版本将 Material 3 设为新的默认主题,为 Android 带来 Impeller 预览…

SpringBoot使用DevTools实现后端热部署

📑前言 本文主要SpringBoot通过DevTools实现热部署的文章,如果有什么需要改进的地方还请大佬指出⛺️ 🎬作者简介:大家好,我是青衿🥇 ☁️博客首页:CSDN主页放风讲故事 🌄每日一句&…

Windows使用ssh远程连接(虚拟机)Linux(Ubuntu)的方法

步骤 1.Windows下载一个SSH客户端软件 要使用SSH连接,当然得先有一个好用的客户端软件才方便。 我这里使用的是WindTerm,一个开源免费的SSH连接工具,用什么软件不是重点。 这里默认你已经生成过SSH的密钥了,如果没有&#xff0c…

C语言 字符函数汇总,模拟实现各字符函数(炒鸡详细)

目录 求字符串长度 strlen 示例 模拟实现strlen 长度不受限制的字符串函数 strcpy 示例 模拟实现strcpy strcat 模拟实现strcat strcmp 示例 模拟实现strcmp 长度受限制的字符串函数介绍 strncpy 示例 模拟实现strncpy strncat 示例 模拟实现strncat s…

Spring Boot 中使用 ResourceLoader 加载资源的完整示例

ResourceLoader 是 Spring 框架中用于加载资源的接口。它定义了一系列用于获取资源的方法,可以处理各种资源,包括类路径资源、文件系统资源、URL 资源等。 以下是 ResourceLoader 接口的主要方法: Resource getResource(String location)&am…

【Hello Go】Go语言异常处理

Go语言异常处理 异常处理error接口panicrecover延时调用错误问题 异常处理 error接口 Go语言引入了一个关于错误处理的标准模式 它是Go语言内建的接口类型 它的定义如下 type error interface {Error() string }Go语言的标准库代码包errors为用户提供了以下方法 package e…

人工智能轨道交通行业周刊-第65期(2023.10.30-11.19)

本期关键词:高铁自主创新、智慧城轨、调车司机、大模型垂直应用、大模型幻觉 1 整理涉及公众号名单 1.1 行业类 RT轨道交通人民铁道世界轨道交通资讯网铁路信号技术交流北京铁路轨道交通网上榜铁路视点ITS World轨道交通联盟VSTR铁路与城市轨道交通RailMetro轨道…

Kafka快速入门

文章目录 Kafka快速入门1、相关概念介绍前言1.1 基本介绍1.2 常见消息队列的比较1.3 Kafka常见相关概念介绍 2、安装Kafka3、初体验前期准备编码测试配置介绍 bug记录 Kafka快速入门 1、相关概念介绍 前言 在当今信息爆炸的时代,实时数据处理已经成为许多应用程序和…

汽车虚拟仿真视频数据理解--CLIP模型原理

CLIP模型原理 CLIP的全称是Contrastive Language-Image Pre-Training,中文是对比语言-图像预训练,是一个预训练模型,简称为CLIP。该模型是 OpenAI 在 2021 年发布的,最初用于匹配图像和文本的预训练神经网络模型,这个任…

【Ubuntu】设置永不息屏与安装 dconf-editor

方式一、GUI界面进行设置 No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.6 LTS Release: 20.04 Codename: focal打开 Ubuntu 桌面环境的设置菜单。你可以通过点击屏幕右上角的系统菜单,然后选择设置。在设置菜单中,…

警惕.360勒索病毒,您需要知道的预防和恢复方法。

引言: 网络威胁的演变无常,.360勒索病毒作为一种新兴的勒索软件,以其狡猾性备受关注。本文将深入介绍.360勒索病毒的特点,提供解决方案以恢复被其加密的数据,并分享一系列强化网络安全的预防措施。如果您在面对被勒索…

Vue中实现div的任意移动

前言 在系统应用中,像图片,流程预览及打印预览等情况,当前视窗无法全部显示要预览的全部内容,设置左右和上下滚动条后,如果用鼠标拖动滚动条,又不太便利,如何用鼠标随意的移动呢? …

wpf devexpress自定义编辑器

打开前一个例子 步骤1-自定义FirstName和LastName编辑器字段 如果运行程序,会通知编辑器是空。对于例子,这两个未命名编辑器在第一个LayoutItem(Name)。和最终用户有一个访客左右编辑器查阅到First Name和Last Name字段,分别。如果你看到Go…

Windows安装nvm【node.js版本管理工具】

目录 下载安装包 安装 配置 配置node的国内镜像源 配置npm的国内镜像源 常用命令 查看可安装的node版本 安装指定的版本 查看已有的node版本列表 切换版本 下载安装包 https://github.com/coreybutler/nvm-windows/releases/tag/1.1.11 安装 安装过程就不贴了&#xff0…