DS4520:9位I²C非易失性I/O扩展器+内存的深度解析

电子说

1.4w人已加入

描述

DS4520:9位I²C非易失性I/O扩展器+内存的深度解析

在电子设计领域,对于I/O扩展和内存存储功能的需求日益增长。DS4520作为一款9位非易失性(NV)I/O扩展器,同时具备64字节的NV用户内存,通过I²C兼容串行接口进行控制,为工程师们提供了强大而灵活的解决方案。本文将对DS4520进行详细的技术剖析,帮助电子工程师更好地了解和应用这款产品。

文件下载:DS4520.pdf

一、产品概述

1. 基本功能

DS4520是一款9位非易失性I/O扩展器,拥有64字节的NV用户内存。它为用户提供了一种数字可编程的替代方案,可取代用于控制数字逻辑节点的硬件跳线和机械开关。每个I/O引脚都能独立配置,输出为开漏形式,并带有可选上拉电阻,每个输出可吸收高达12mA的电流。由于该设备具有非易失性,上电后能立即以期望状态工作,无需等待主机CPU启动控制就能直接控制数字逻辑输入。

2. 应用领域

DS4520的应用十分广泛,涵盖了多个领域:

  • RAM-Based FPGA Bank Switching for Multiple Profiles:用于基于RAM的FPGA多配置文件的银行切换。
  • Selecting Between Boot Flash:在启动闪存之间进行选择。
  • Setting ASIC Configurations/Profiles Servers:设置ASIC配置/配置文件服务器。
  • Network Storage Routers:网络存储路由器。
  • Telecom Equipment:电信设备。
  • PC Peripherals:PC外设。

二、产品特性

1. 功能特性

  • 可编程替代机械跳线和开关:能够以数字编程的方式替代传统的机械跳线和开关,提高了系统的灵活性和可配置性。
  • 九个NV输入/输出引脚:提供了九个非易失性的输入/输出引脚,可独立配置,满足不同的应用需求。
  • 64字节NV用户内存(EEPROM):可用于存储用户数据,方便系统进行数据管理。
  • I²C兼容串行接口:支持I²C通信协议,便于与其他设备进行通信。
  • 最多8个设备可在同一I²C总线上多节点连接:允许在同一I²C总线上连接多个DS4520设备,扩展系统的功能。
  • 带可配置上拉电阻的开漏输出:输出为开漏形式,并且上拉电阻可配置,增加了输出的灵活性。
  • 输出能够吸收12mA电流:具有较强的驱动能力。
  • 低功耗:降低了系统的能耗。
  • 宽工作电压(2.7V至5.5V):适应不同的电源环境。
  • 工作温度范围:-40°C至+85°C:具有较宽的工作温度范围,适用于各种工业和商业环境。

2. 电气特性

绝对最大额定值

  • 电压:VCC、SDA和SCL引脚相对于地的电压范围为 -0.5V至 +6.0V;A0、A1、A2和I/O_n引脚相对于地的电压范围为 -0.5V至 (VCC + 0.5V),但不超过 +6.0V。
  • 温度:工作温度范围为 -40°C至 +85°C,EEPROM编程温度范围为0°C至 +70°C,存储温度范围为 -55°C至 +125°C。

推荐直流工作条件

参数 符号 条件 最小值 典型值 最大值 单位
电源电压 VCC +2.7 +5.5 V
输入逻辑1 VIH 0.7 x VCC VCC + 0.3 V
输入逻辑0 VIL -0.3 0.3 x VCC V

直流电气特性

参数 符号 条件 最小值 典型值 最大值 单位
待机电流 ISTBY 2 10 μA
输入泄漏电流 IL -1.0 +1.0 μA
每个I/O引脚的输入电流 II/O 0.4V < VIO < 0.9VCC -1.0 +1.0 μA
低电平输出电压(SDA) VOL_SDA 3mA灌电流 0 0.4 V
6mA灌电流 0 0.6 V
I/O引脚低电平输出电压 VOL_IO 12mA灌电流 0.4 V
I/O引脚拉电阻 RPU 4.0 5.5 7.5
I/O电容 CIO 10 pF
上电复位电压 VPOR 1.6 V

交流电气特性

参数 符号 条件 最小值 典型值 最大值 单位
SCL时钟频率 fSCL 0 400 kHz
停止和启动条件之间的总线空闲时间 tBUF 1.3 μs
(重复)启动条件保持时间 tHD:STA 0.6 μs
SCL低电平周期 tLOW 1.3 μs
SCL高电平周期 tHIGH 0.6 μs
数据保持时间 tHD:DAT 0 0.9 μs
数据建立时间 tSU:DAT 100 ns
启动建立时间 tSU:STA 0.6 μs
SDA和SCL上升时间 tR 20 + 0.1CB 300 ns
SDA和SCL下降时间 tF 20 + 0.1CB 300 ns
停止建立时间 tSU:STO 0.6 μs
SDA和SCL电容负载 CB 400 pF
EEPROM写入时间 tWR 10 20 ms

3. 非易失性内存特性

EEPROM写入次数在 +70°C时可达50,000次。

三、引脚配置与说明

1. 引脚配置

DS4520采用16引脚TSSOP封装,引脚分布如下: 引脚 名称 功能
1 I/O_0 输入/输出0,双向I/O引脚
2 I/O_1 输入/输出1,双向I/O引脚
3 I/O_2 输入/输出2,双向I/O引脚
4 I/O_3 输入/输出3,双向I/O引脚
5 I/O_4 输入/输出4,双向I/O引脚
6 A0 I²C地址输入,与A1、A2共同确定设备的I²C从地址
7 A1 I²C地址输入,与A0、A2共同确定设备的I²C从地址
8 VCC 电源电压
9 SDA I²C串行数据开漏输入/输出
10 SCL I²C串行时钟输入
11 A2 I²C地址输入,与A0、A1共同确定设备的I²C从地址
12 I/O_5 输入/输出5,双向I/O引脚
13 I/O_6 输入/输出6,双向I/O引脚
14 I/O_7 输入/输出7,双向I/O引脚
15 I/O_8 输入/输出8,双向I/O引脚
16 GND

2. 引脚功能详细说明

  • I/O引脚:共有9个双向I/O引脚(I/O_0 - I/O_8),可独立配置为输入或输出。
  • 地址引脚(A0、A1、A2):用于确定设备的I²C从地址。当引脚连接到GND时,对应从地址位为‘0’;连接到VCC时,对应从地址位为‘1’。
  • SDA和SCL引脚:用于I²C通信,SDA为串行数据引脚,SCL为串行时钟引脚。
  • VCC和GND引脚:分别为电源和地引脚。

四、详细功能解析

1. 可编程NV I/O引脚

每个可编程I/O引脚由一个输入和一个带有可选内部上拉电阻的集电极开路输出组成。通过写入上拉使能寄存器(F0h和F1h)可启用每个I/O引脚的上拉电阻;写入I/O控制寄存器(F2h和F3h)可将输出拉低或将下拉晶体管置于高阻抗状态;读取I/O状态寄存器(F8h和F9h)可获取I/O引脚的电压电平。I/O控制寄存器和上拉使能寄存器都是SRAM影子EEPROM寄存器,可通过配置寄存器中的SEE位禁用EEPROM写入,减少写入寄存器所需的时间,并增加I/O引脚在EEPROM磨损前的调整次数。

2. 内存映射和内存类型

DS4520的内存映射包含三种不同类型的内存:EEPROM、SRAM影子EEPROM和SRAM。

  • EEPROM:非易失性内存,写入这些位置会触发EEPROM写入周期,写入时间由交流电气特性表中的tWR指定。
  • SRAM影子EEPROM:可通过配置寄存器中的SEE位(F4h的最低位)设置为两种模式。当SEE = 0(默认)时,内存位置表现得像EEPROM;当SEE = 1时,写入影子SRAM而不是EEPROM,消除了EEPROM写入时间和EEPROM磨损的问题,适用于需要频繁写入I/O的应用。
  • SRAM:标准SRAM,用于临时存储数据。

3. 从地址和地址引脚

DS4520的从地址由A0、A1和A2地址引脚的状态决定。地址引脚连接到GND时,从地址的相应位为‘0’;连接到VCC时,相应位为‘1’。

五、I²C串行接口

1. I²C定义

  • 主设备:控制总线上的从设备,生成SCL时钟脉冲、启动和停止条件。
  • 从设备:根据主设备的请求发送和接收数据。
  • 总线空闲:停止和启动条件之间的时间,此时SDA和SCL都处于非活动状态且为逻辑高电平,通常会使从设备进入低功耗模式。
  • 启动条件:主设备生成启动条件以启动与从设备的新数据传输,当SCL保持高电平时,SDA从高电平转换为低电平产生启动条件。
  • 停止条件:主设备生成停止条件以结束与从设备的数据传输,当SCL保持高电平时,SDA从低电平转换为高电平产生停止条件。
  • 重复启动条件:主设备在一次数据传输结束时使用重复启动条件,以立即启动下一次数据传输,常用于读操作中指定数据传输的起始内存地址。
  • 位写入:SDA的转换必须在SCL的低电平期间进行,SDA上的数据在SCL的整个高脉冲期间以及建立和保持时间内必须保持有效且不变,数据在SCL的上升沿移入设备。
  • 位读取:在写操作结束时,主设备必须在下次SCL上升沿之前释放SDA总线一段时间,设备在SCL前一个脉冲的下降沿将数据位移出SDA,在当前SCL脉冲的上升沿数据位有效。
  • 确认(ACK和NACK):在字节传输期间,第9位总是确认位。接收数据的设备(读操作时的主设备或写操作时的从设备)通过在第9位发送0进行ACK,发送1进行NACK。ACK表示设备正确接收数据,NACK用于终止读序列或表示设备未接收数据。

2. I²C通信操作

写入单个字节到从设备

主设备必须生成启动条件,写入从地址字节(R/W = 0),写入内存地址,写入数据字节,然后生成停止条件。在所有字节写入操作中,主设备必须读取从设备的确认。

写入多个字节到从设备

主设备生成启动条件,写入从地址字节(R/W = 0),写入内存地址,最多写入8个数据字节,然后生成停止条件。DS4520能够在一次写入事务中写入最多8个字节(一页或一行),内部地址计数器允许在不发送每个数据字节前的内存地址的情况下将数据写入连续地址,但地址计数器限制写入为一个8字节页面。若要防止地址回绕,主设备必须在页面结束时发送停止条件,等待总线空闲或EEPROM写入时间过去,然后生成新的启动条件,写入从地址字节和下一个内存行的第一个内存地址,再继续写入数据。

确认轮询

每次写入EEPROM页面时,DS4520在停止条件后需要EEPROM写入时间(tw)将页面内容写入EEPROM。在EEPROM写入时间内,设备不确认其从地址,因为它处于忙碌状态。可以通过重复寻址DS4520来利用这一现象,以便设备准备好后立即继续通信。另一种方法是在尝试访问设备之前等待最长tw时间。

EEPROM写入周期

当EEPROM写入发生时,DS4520会写入整个EEPROM内存页面,即使只修改了页面上的单个字节。未修改页面上所有8个字节的写入是有效的,不会损坏同一页面上的其他字节。由于整个页面被写入,即使事务中未修改的页面上的字节也仍然会经历一次写入周期。

从从设备读取单个字节

读操作在内存地址计数器的当前值处进行。主设备生成启动条件,写入从地址字节(R/W = 1),读取数据字节并发送NACK表示传输结束,然后生成停止条件。为了从指定内存位置进行读取,可以使用虚拟写周期将地址计数器强制设置为特定值。

从从设备读取多个字节

读操作可以用于一次读取多个字节。主设备在读取数据字节时,如果希望继续读取另一个字节,则发送ACK;读取最后一个字节后,必须发送NACK表示传输结束,然后生成停止条件。

六、应用注意事项

1. 电源去耦

为了获得最佳效果,强烈建议在IC电源引脚使用去耦电容。典型的去耦电容值为0.01µF和0.1µF,应使用高质量的陶瓷表面贴装电容,并尽可能靠近IC的VCC和GND引脚安装,以最小化引线电感。

2. 芯片和封装信息

DS4520的晶体管数量为14,398,基板接地。关于最新的封装外形信息和焊盘图案(封装尺寸),可访问www.maximintegrated.com/packages。

七、总结

DS4520作为一款功能强大的9位I²C非易失性I/O扩展器,具有丰富的特性和灵活的配置选项,适用于多种应用场景。通过对其电气特性、引脚配置、内存映射和I²C通信等方面的详细了解,电子工程师可以更好地将其应用于实际设计中,提高系统的性能和可靠性。在使用过程中,需要注意电源去耦等应用注意事项,以确保设备的正常运行。你在实际应用中是否遇到过类似I/O扩展器的使用问题呢?欢迎在评论区分享你的经验和见解。

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分