背景介绍
Background/
在工业复杂系统和汽车等产品中,主控芯片上有大量的I/O口,用于接收和控制外部的传感器和执行器信号。主控芯片架构师对于这些I/O口资源的态度是“够用就好”,期望用尽可能少的I/O口覆盖主流应用的需求,在芯片功能和芯片成本上找到一个平衡点。然而基于二八定律,仍有少量但重要的高端产品,由于功能强大、系统复杂,需要更多的I/O端口。为解决这个问题,研发工程师往往会在产品中引入I/O扩展芯片作为外援,帮助主控芯片获取更多的端口资源。
此外,由于各分系统和主系统距离较远,依靠主控芯片的I/O口对遥远的子系统“发号施令”将引入电磁干扰、功耗增大、走线面积增加等问题,就近布置I/O扩展芯片将是一个更优的选择。
最后,设计经验丰富的研发工程师也会采用I/O扩展芯片完成一些精妙的功能(例如芯片在位检测、金手指热拔插检测、端口扩展+电平转换、中断检测)。这些灵活的任务只能由合适的I/O扩展芯片承担。
I/O扩展芯片属于ASIC,工程师使用时仅需要对内部寄存器进行简单的设定或者读取,生产时也不需要对芯片进行固件烧写,相较CPLD或FPGA等需要编程的器件更为简单友好。
产品概述
Product Introduction/
以较为流行的16路I/O扩展芯片申矽凌CA9555为例介绍此类芯片。
CA9555的产品功能实现依靠内部四组寄存器:Input Port、Output Port、Polarity Inversion Port和Configuration Port。每组寄存器由2个byte共16bit数据构成(4路和8路的I/O扩展产品每组寄存器只有1个byte共8bit)。
表1 寄存器说明
Input Port
用于放置输入数据,每位对应相应I/O口输入。只读寄存器;
Output Port
用于用户写入待输出数据,每位对应相应I/O口输出,默认状态全1(0xFF)。读写寄存器;
Polarity Inversion Port
用于对输入数据加入反相器操作,每位对应相应I/O口输入,对应位设置为1时,Input Port寄存器对应位与实际输入的信号极性相反(例如实际接收为低电平,而Input Port显示为1,反之亦然)。默认状态为不做反相操作(0x00)。读写寄存器;
Configuration Port
用于配置端口的方向,每位对应相应的I/O口,置1为输入(输出驱动电路高阻),置0为输出。系统默认初始状态为全输入(0xFF,全1)。读写寄存器。
图1 十六通道I/O 扩展芯片CA9555内部架构图
如图1所示,I/O端口可被配置为输入或者输出状态。
当端口被设定为输出时,内部两个MOS管(Q1和Q2)构成推挽结构,当输出状态寄存器置1时,Q1打开Q2关闭,端口被上拉到VCC,实现高电平输出操作;当输出状态寄存器为0时,Q2打开Q1关闭,端口被导通到GND,实现低电平输出操作;
当端口被设定为输入时,内部两个MOS管(Q1和Q2)均关闭,I/O Pin进入高阻输入状态。由于CA9555在I/O PIN上内置了上拉电阻(100kohm),因此无外部驱动时,I/O Pin被拉高。需注意这个上拉电阻在大多数产品内是没有的(申矽凌产品仅有CA9555,CA9554两个产品带内置上拉电阻,可以省去外部上拉电阻,降低系统BOM成本),在一些特殊场景下(例如I/O口只单纯作为输出口使用),无内部上拉电阻的产品(例如CA9535,CA9536,CA9557等),有更低的功耗!
在图1中,端口状态的设定主要依靠内部四个DQ触发器及一些门电路的组合逻辑完成。从外部管脚来看,I/O扩展芯片还有是否带中断管脚,是否支持复位管脚,是否支持双电平供电等不同组合供产品工程师选择。
针对有大量I/O端口资源需求的系统,单颗CA9555可能无法满足需求。工程师可通过并联多颗CA9555实现I/O口扩容。CA9555有3个地址设置管脚A2、A1和A0,同个系统内,最多可容纳8个(=23)不同I2C地址的CA9555同时工作,即扩展出最多128个(=8X16)I/O端口。
图2 十六通道I/O扩展芯片CA9555典型电路图
图3 八通道I/O扩展芯片CA6408典型电路图(双电源供电)
图4 四通道I/O扩展芯片CA9536典型电路图
I/O扩展芯片主要特性(以十六路扩展芯片CA9555为例):
单一工作电压供电 1.65V到5.5V
低待机电流 3.5uA(无内部上拉电阻产品可低至1uA,例如CA9535)
可支持5.5V I/O端口
支持十六路端口扩展
SMbus/I2C通信接口
高达1兆赫兹通信速率
三根地址选择管脚 A2A1A0,同一系统内支持最多八颗CA9555同时工作
I/O口电平变化时,开漏中断输出,低有效
中断读清或者I/O口电平变回原来状态时中断消除
共四组内部寄存器,输入内容、输出内容、输入内容反相和传输方向配置寄存器
内置上电复位电路
配置为输入端口时,内置100k欧姆上拉电阻,无需外部另加上拉电阻,减少外围组件(也有不含内置上拉电阻的产品,例如CA9534,待机功耗低至1uA)
配置为输出端口时,工作于推挽模式
支持多种常用封装
额定工作温度范围为-40摄氏度到85摄氏度
I/O扩展芯片主要应用场景:
路由器
汽车
工业自动化
申矽凌可提供完备的I/O扩展产品,涵盖了四、八、十六个I/O端口扩展,支持通信端口和I/O端口使用不同的电压域,提供复位、中断、内部上拉电阻等不同组合。申矽凌的I/O扩展芯片提供丰富的封装选择和符合行业标准的引脚排布,可实现通用型号的无感替代。具体产品全家福如下:
表2 申矽凌GPIO扩展产品列表
产品封装
SOP-8
TSSOP24
QFN3x3-16
QFN4X4-24
技术支持
Technical Support/
提供南区(深圳)FAE技术支持
提供北区(北京)FAE技术支持
提供原厂(上海)FAE、AE技术支持
WeChat QR Code