FPDLINK中I2C通信的巧妙设计以及I2C Stretch
FPDLINK是TI设计的高速差分传输总线,主要用于传输图像数据,比如camera和显示数据。而且该标准还在不断的演进,从最初的一对线传输720P@60fps图像,到目前可以传输1080P@60fps,后续的芯片还可以支持更高的图像分辨率。传输距离也很远,能达到20米左右,非常适合汽车应用。 FPDLINK在传输的过程中有高速的前向通道,用于传输高速的图像数据和小部分的控制数据。也有速度相对较低的后向通道,用于传输反向的控制信息。前后向通信构成双向的控制通道,从而有了本文中将要讨论的FPDLINK中I2C的巧妙设计问题。 FPDLINK,全称为Flexible Photodiode Link,是由德州仪器(TI)开发的一种高速差分传输总线,专为图像数据传输设计,如相机和显示数据。随着技术的发展,FPDLINK已经能够支持从最初的720P@60fps到1080P@60fps的图像传输,甚至更高分辨率,且传输距离可达到20米,非常适用于汽车等领域的远程图像传输。 FPDLINK系统包括高速的前向通道和低速的后向通道。前向通道负责传输高速图像数据和少量控制信息,而后向通道则处理反向控制信息,形成双向控制链路。这种设计使得系统能够在维持高效图像传输的同时,也能灵活处理控制命令。 在FPDLINK中,通常会有一个串行器(serializer)与一个解串器(Deserializer)配对工作。例如,在相机应用中,相机传感器连接到串行器,将数据发送到解串器,而CPU则从解串器接收数据。在显示应用中,CPU将数据发送给串行器,由解串器接收并传送给LCD屏幕。 在这样的架构下,I2C通信起着关键作用。I2C是一种多主设备总线协议,用于低速控制信号的传输。在FPDLINK中,CPU的I2C接口可以连接到串行器或解串器的I2C,以便进行控制命令的交互。 然而,FPDLINK的高速传输特性引入了一个挑战:I2C的同步问题。I2C协议依赖SCL时钟线同步SDA数据线。在一般情况下,数据应在SCL上升沿被锁存。但在FPDLINK中,由于传输延迟,当从设备(slave)响应主设备(master)的ACK时,可能会错过SCL的上升沿。 为解决这个问题,I2C协议引入了"I2C Stretch"机制。从设备可以在未准备好数据时拉低SCL,阻止SCL上升,迫使主设备等待,直到从设备释放SCL,主设备才能继续操作。在FPDLINK芯片中,这一特性被巧妙利用,收到的I2C信号会被重新调整为FPDLINK芯片设定的波特率再进行发送,而不是简单地转发原始信号。这意味着,尽管CPU的I2C波特率可能是400K,但FPDLINK从设备端的I2C波特率可能不同,具体取决于芯片内部SCL高低电平的配置。 此外,在读取寄存器操作中,从设备会预先把数据读取出来。例如,当主设备发送读取0x00寄存器的指令后,从设备会立即响应,发出自己的地址并开始读取操作,尽管这8个SCL时钟在主设备侧并未对应。这种设计巧妙地避开了I2C协议的规定,因为在第九位ACK之后才能进行I2C Stretch,而预读操作确保了数据的正确传输,避免了潜在的问题。 FPDLINK中的I2C通信设计充分考虑了高速传输和低速控制的协调,利用I2C Stretch特性解决了延迟问题,并通过自适应波特率重发机制优化了信号传输。同时,预读寄存器数据的策略巧妙地适应了I2C协议的限制,保证了系统的稳定性和效率。这些设计体现了TI在FPDLINK技术上的深思熟虑和工程创新。


























- 粉丝: 0
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 电厂设备检修标准.doc
- 鹤山市某房地产项目委托监理合同.doc
- 陕西某高层住宅项目应急预案(2010年).docx
- 监理月报第五期.doc
- 福州市医院垃圾现状调查研究.doc
- 汽轮发电机基座工法.doc
- 2015版ISO9001质量手册-参考.doc
- 批腻子安全技术交底.doc
- 工程造价审计质量影响因素及对策.doc
- 活动地板面层施工工艺标准.docx
- 幼儿园改扩建项目现场技术管理制度.doc
- 岩溶裂隙区高路堤基底强夯施工.doc
- chromedriver-mac-x64-141.0.7383.0(Canary).zip
- chromedriver-win32-141.0.7383.0(Canary).zip
- chromedriver-win64-141.0.7383.0(Canary).zip
- 英语活动-milk.doc


