D-019 EEROM硬件电路设计

news2024/11/27 13:32:36

EEROM硬件电路设计

  • 1 简介
    • 1.1 存储器的分类
    • 1.2EEPROM的特性
  • 2 接口介绍
    • 2.1 IIC接口
    • 2.2 SPI接口
    • 2.3 MicroWire 接口
  • 3 EEPROM 和 FLASH
  • 4 电路设计实战
  • 5 电路设计要点

1 简介

1.1 存储器的分类

按照掉电数据是否丢失的特性,存储器可划分为:

易失性存储器:RAM 通常都是在掉电之后就丢失数据。

非易失性存储器:ROM 在系统停止供电的时候仍然可以保持数据。

易失性存储器-RAM

RAM((Random Access Memory)随机读取存储器):通常 RAM 就是意识形态存取器的代表,它包含 DRAM(动态随机存储器)和 SRAM(静态随机存储器)。

存储器中文名称描述
SRAM静态随机 存储器SRAM 是 Static Random Access Memory 的缩写,中文含义为静态随机访问存储器,它是一种类型的半导体存储器。"静态"是指只要不掉电,存储在 SRAM 中的数据就不会丢失。SRAM 保存数据是靠晶体管锁存的;SRAM 的工艺复杂,内部采用的是双稳态电路的形式来存储数据。所以生产成本高,所以价格更贵,但是 SRAM 速度快。同时 SRAM 集成度比较低,不适合做大容量的内存,一般是用在处理器的缓存里面。SRAM 是一种易失性存储器,它只有在电源保持连续供应的情况下才能够保持数据。"随机访问"是指存储器的内容可以以任何顺序访问,而不管前一次访问的是哪一个位置。
DRAM动态随机存储器保存数据靠电容充电来维持。容量比较大的 RAM 我们都选用的是 DRAM。像 SDRAM,DDR SDRAM 都属于 DRAM 的一种。
SDRAM同步动态随机存储器RAM 既然是存储器,那么就要传输数据,传输数据就是通信。通信又分同步通信和异步通信。DRAM 和 SRAM 都是异步通信的,速
**DDR SDRAM **双倍速率同步动态随机存储器)率没有 SDRAM 和 SSRAM 快。所以现在大容量 RAM 存储器是选用SDRAM 的。S(Synchronous 同步)DDR SDRAM 和 SDRAM 的区别在于 DDR(double data rate)双倍速率。SDRAM 只在时钟的上升沿表示一个数据,而 DDR SDRAM 能在上升沿和下降沿都表示一个数据。DDR 也一步步经过改良出现了一代、二代、三代、四代,现在也有五代。

非易失性存储器ROM

ROM: (Read Only Memory)只读存储器, 具有断电后数据不丢失的特点。非易失性存储器常见的有 ROM,FLASH,光盘,软盘,机械

硬盘。他们作用相同,只是实现工艺不一样。

存储器中文名称描述
MASK ROM掩膜 ROM是制造商为了要大量生产,事先制作一颗有原始数据的 ROM 或EPROM 当作样本,然后再大量生产与样本一样的 ROM,这一种做为大量生产的 ROM 样本就是 MASK ROM,而烧录在 MASK ROM 中的资料永远无法做修改。
OTPROM一次可编程存储器OTPROM 提供了介于 MASK ROM 和 FLASH 存储器之间的产品特性,出厂后用户只能写一次数据,然后再也不能修改了,一般做存储密钥。
EPROM可擦除可编程只读存储器这种存储器就可以多次擦除然后多次写入了。但是要在特定环境紫外线下擦除,所以这种存储器也不方便写入。EPROM: Erasable Programmable Read Only Memory 可擦除可编程只读存储器。是一种断电后仍能保留数据的计算机储存芯片–即非易失性的(非挥发性)。它是一组浮栅晶体管,被一个提供比电子电路中常用电压更高电压的电子器件分别编程。一旦编程完成后,EPROM 只能用强紫外线照射来擦除。
EEPROM带电可擦可编程只读存储器EEPROM (Electrically Erasable Programmable Read-Only Memory),带电可擦可编程只读存储器–一种掉电后数据不丢失的存储芯片。EEPROM 可以在电脑上或专用设备上擦除已有信息,重新编程。正是因为只要有电就可擦除数据,就可以写入数据,所以 EEPROM用的最多。
FLASH闪存Flash:是一种可以写入和读取的存储器,叫闪存,FLASH 也叫FLASH ROM,有人把 FLASH 当做 ROM。FLASH 和 EEPROM 相比,FLASH的存储容量大。FLASH 的速度比现在的机械硬盘速度快,现在的 U盘和 SSD 固态硬盘都是 Nand flash。FLASH 又分为 Norflash 和Nandflash。

1.2EEPROM的特性

EEPROM 特点就是掉电后存储的数据不丢失。一般情况下,EEPROM 拥有 30 万到 100 万次的寿命,也就是它可以反复写入 30-100 万次,而读取次数是无限的。

  • 支持标准和快速 I2C 协议、兼容 SPI 总线

  • 1~256K 的高密度存储

  • 1.8V~6V 的款电压操作范围

  • 对全部存储器进行硬件写保护

  • 采用低功耗 CMOS 工艺

  • 可编程/擦除 100 万次

  • 数据保存期 100 年(存储时间是理论值并非实际值)

  • 工业温度范围:-40℃至 85℃。

2 接口介绍

2.1 IIC接口

IIC 接口的 EEPROM 很常见,因为 IIC 接口十分通用也很简单,只需要两个 IO 口以及上拉电阻就行了。(历史原因是 IIC 总线发展比较早,很早就普遍使用了,所以 IIC 的接口普及率高)IIC 速率:100KHz、400KHz 和 1MHz,最高可以达到 3.2MHz
在这里插入图片描述

2.2 SPI接口

SPI 接口的 EEPROM 是为了应对 IIC 速率不高而解决的,因为IIC 速率最高到 1MHz(3.2MHz)速率,为了提高读取速度故发展出来了 SPI 接口的 EEPROM。EEPROM 最高可以达到 20MHz。
在这里插入图片描述

2.3 MicroWire 接口

MicroWire 串行接口是 SPI 的精简接口,就是除去 CS 引脚,只有余下的三个引脚。但是时钟改为既可以是自己发出也可以自己接收,比起标准的 SPI 更为简单与便捷。

总结
在这里插入图片描述

3 EEPROM 和 FLASH

项目EEPROMFLASH
接口IIC、SPI、MicrowireSPI(多模式)、并行接口
读写速率0-20Mbps最高达2.4Gbps
数据存储时间100years10years Max
读写次数100万次10万次
操作单元比特位bit操作Block操作
功耗极低
容量≤1Mb

总的来说,对于用户来说,EEPROM 和 FLASH 没有大的区别,只是 EEPROM 是低端产品,容量低,价格便宜,但是稳定性较 FLASH 要好一些。但对于 EEPROM 和 FLASH 的设计来说,FLASH 则要难的多,不论是从工艺上的还是从外围电路设计上来说。

4 电路设计实战

硬件设计电路如下所示:
在这里插入图片描述

引脚说明

引脚号引脚名称功能描述
1NCN.A
2A1地址输入引脚。
3NCN.A
4GND地。
5SDA串行地址和数据输入/输出。
6SCL串行时钟输入。
7WP写保护。
8VCC正电源。

实战电路1:
在这里插入图片描述

实战电路2:
在这里插入图片描述

5 电路设计要点

  • 电源引脚增加电阻是为了储能和滤波;

  • IIC 的数据和时钟线是 OD 门结构,所以需要上拉;

  • 写保护引脚 WP(write protect)。(写保护一般接低电平(接地),处于正常读写状态;当接入高电平时,芯片数据均处于禁止写入状态)

  • 注意电平匹配。

  • 如果板子上有多个 IIC 的接口设备,注意 EEPROM 的地址变一下,防止冲突。

  • IIC 总线是串行主从结构,读和写都由主机操作,从机只能接受。

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

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

相关文章

快排图文详解:快速排序算法的实现 - 【双边循环法与单边循环法 递归与非递归(栈的方式)的实现】

1.基本介绍 同冒泡排序一样,快速排序(Quicksort)也属于交换排序,通过元素之间的比较和交换位置来达到排序的目的。但快速排序是对冒泡排序的一种改进。 2.基本思想 关于基本思想,我们在这里先不考虑是如何具体实现的…

nuxtjs生命周期、项目创建、声明式导航与编程式导航、动态路由、嵌套路由、配置式路由、定制默认应用模板、扩展默认布局

文章目录1. 介绍2. 生命周期3. 项目创建4. 声明式导航和编程式导航5. 动态路由参数和验证6. 嵌套路由7. 404页面8. 配置式路由9. 定制默认应用模板10. 扩展默认布局10.1 默认布局10.2 自定义布局10.3 显示错误的布局1. 介绍 Nuxt.js 是一个基于 Vue.js 的通用应用框架。通过对…

离线解锁 CodeCombat 全关卡教程 使用docker安装实现

背景 暂时还没收入,想玩顺便,但官方的有点贵(是真的贵,扛不住) 前期准备 下载安装docker desktop https://www.123pan.com/s/fmvUVv-HqApH, 这个安装不会的随便搜一个教程,挺多的。我随便找了一…

创建实例化新表格及新行

这期讲一下如何创建创建实例化新表格及行进行添加数据, 在上图可以看到先实例化DataTable表格,用于接收数据, Columns 获取此表的列的集合, Add 创建并添加DataColumn对象, Typeof 数据类型 创建并添加表头。 接下来…

Java定时器选择

java计时器和死循环哪个好?哪个建议使用? 计时器性能更好,但是写起来稍微复杂一点。如果是非常短暂的延迟,用死循环也未尝不可。一般来说能不用死循环的尽量不用死循环!如果你使用的是JDK1.5以上的,可以使…

PyQt5可视化编程-控件

控件就像是应用这座房子的一块块砖。PyQt5有很多的控件,比如按钮,单选框,滑动条,复选框等等。我们将介绍一些很有用的控件: QCheckBox,ToggleButton,QSlider,QProgressBar, QCalendarWidget,QPixmap,QLineEdit,QSplitt…

实验四+ R型指令设计实验【计算机组成原理】

实验四+ R型指令设计实验【计算机组成原理】 前言推荐实验四+ R型指令设计实验结果附录defineInstMemIDEX最后前言 编写于 2022/11/22 VIP发布于 2022/11/22 实验于 2022/11/24 发布于 2022/11/24 以下内容源自计算机组成原理实验 仅供学习交流使用 推荐 实验四+ R型指令…

论文指标评价体系及权重计算

一 、评价指标体系 评价指标体系构建在实际研究中使用较为广泛,比如企业绩效评价指标体系构建、政府财政支出绩效评价、医院绩效评价研究等等。 ‍1、相关背景 在中国知网搜索 “ 评价指标 ”、“ 指标体系权重 ” 等相关关键词,可以发现,…

学习ASP.NET Core Blazor编程系列十三——路由(完)

九、NavigationManager 有的时候我们可能需要在代码里进行导航,如果是JavaScript我们会用window.location来切换页面,Blazor为我们提供了相应的封装:NavigationManager。使用NavigationManager可以通过代码直接进行页面间的跳转。我们在BookI…

算法训练Day34 贪心算法专题 | LeetCode1005.K次取反后最大化的数组和 ;134.加油站;135.分发糖果(不要两头兼顾,一边一边处理)

前言: 算法训练系列是做《代码随想录》一刷,个人的学习笔记和详细的解题思路,总共会有60篇博客来记录,计划用60天的时间刷完。 内容包括了面试常见的10类题目,分别是:数组,链表,哈…

基于人工势场法的移动机器人路径规划研究(Matlab代码实现)

目录 💥1 概述 📚2 运行结果 🎉3 参考文献 👨‍💻4 Matlab代码 💥1 概述 路径规划是移动机器人领域的热点研究方向,人工势场法已在工业机器人路径规划中得到广泛应用,近年来正逐…

RKMEDIA--VI的使用

在上一篇文章RKMEDIA使用简介中简单的介绍了rkmedia的组成部分,本章主要聊聊VI模块。 rkmedia中的VI模块主要可以从两个方式获取流:直接打开video节点的方式、使用rk平台的rkaiq。 1、直接打开video节点的方式 顾名思义只需要在vi初始化中配置VI_CHN_AT…

Redeis缓存查询基于元注解与AOP结合使用——不过时的优雅

Redeis缓存查询基于元注解与AOP结合使用 根据优化需要,数据查询的时候无法避免的使用Redis基于缓存查询,进而减少对于数据库的查询压力,对于过多的方法基于缓存存储,为提高代码的复用性,采用一种不过时的写法。 整体的…

spring JPA整合hibernate,IDEA社区版,Java

spring JPA整合hibernate,IDEA社区版,Java 本文基于IDEA社区版,不是IDEA企业版。 (1)首先用IDEA新建一个spring web项目。参考文章: IDEA社区版(Community Edition)创建Springboot-Web项目,J…

第十二章 使用 Monorepo 方式管理组件生态

组件库一般都会配有周边产品,比如 Admin 、Template、CLI 工具等等。周边产品相当于有关联的多个项目,更准确的说法是多个软件包。这个时候就应该使用 Monorepo 方式组织代码,方便频繁在多个项目间同时交替开发,同时发布&#xff…

图解LeetCode——895. 最大频率栈(难度:困难)

一、题目 设计一个类似堆栈的数据结构,将元素推入堆栈,并从堆栈中弹出 出现频率 最高的元素。 实现 FreqStack 类: FreqStack() 构造一个空的堆栈。void push(int val) 将一个整数 val 压入栈顶。int pop() 删除并返回堆栈中出现频率最高的元素。如果出…

圣杯与双飞翼布局,clip-path,列表与生成元素,计数器

❤️ Author: 老九 ☕️ 个人博客:老九的CSDN博客 🙏 个人名言:不可控之事 乐观面对 😍 系列专栏: 文章目录圣杯与双飞翼布局clip属性clip-path属性例子(不同区域使用不同颜色的导航&#xff09…

【MySQL 18】Docker 安装 MySQL8 .0.30

1、查看可用的 MySQL 版本 访问 MySQL 镜像库地址: https://hub.docker.com/_/mysql?tabtags 。2、拉取 MySQL 8.0.30 镜像 拉取官方的指定版本的镜像: docker pull mysql:8.0.30[rootlocalhost deploy]# docker pull mysql:8.0.30 8.0.30: Pulling…

Gly-Gly-Arg, 54944-27-3/55033-48-2

贻贝信息素的模拟物,诱导各种贻贝物种的聚集,如绒螯虾。GGR还能刺激浮游生物幼虫定居。 编号: 401458中文名称: Gly-Gly-Arg英文名: Gly-Gly-ArgCAS号: 54944-27-3/55033-48-2单字母: H2N-GGR-OH三字母: H2N-Gly-Gly-Arg-COOH氨基酸个数: 3分子式: C10H2…

【C语言初阶(NEW)】五、操作符详解(二)|隐式类型转换|算术转换|操作符的属性

目录 一、表达式求值 1.1 隐式类型转换 1.1.1 什么是整型提升(整型提升) 1.1.2 整型提升的意义 1.1.3 有符号(signed)与无符号(unsigned)的区别 1.1.4 有符号(signed)类型的整…