技术中心
 
 

基于GMSL SerDes的双汽车电子控制单元的应用

   日期:2012-10-30     来源:互联网    

Maxim的吉比特(千兆)多媒体串行链路(GMSL)方案可以对数字视频和音频数据进行串行转换,然后通过一对双绞线串行传输。另外,集成双向控制通道可以使能单个微处理器(µC)对串行器、解串器和所有连接外设编程。

在典型应用中可以省去远端微处理器及相关器件,如:时钟源/晶体和低压电源。此方案不但简化了远端设计,而且降低了系统成本、尺寸和功耗。

但是,有些情况下,考虑到GMSL之外的特殊需求,系统中仍然在链路的两端驻留了µC。这篇应用笔记描述了如何连接两个µC,控制GMSL。

双µC应用基础

使用单µC时,如果µC位于串行器侧,通常将串行器/解串器两端控制方向选择引脚(CDS)置为低电平;如果µC位于解串器侧,则将方向控制选择置为高电平。然而,如果将串行器的CDS置低、解串器的CDS置高,则每个GMSL芯片都可以同时连接到各自对应的µC (图1)。

 

简单的双µC应用原理图,CDS设置

 

图 1. 简单的双µC应用原理图,CDS设置如图所示

内部操作

使用两个µC时,串行器和解串器的I²C主机都被禁用,而且RX/SDA和TX/SDL由其对应的µC配置为UART接口。由于每个器件都作为本地器件运行,所以不能进入休眠状态。

 

串行器状态图(CDS = 低电平

 

图2. 串行器状态图(CDS = 低电平)

 

解串器状态图(CDS = 高电平)

 

图3. 解串器状态图(CDS = 高电平)

利用对应的低电平有效PWDN引脚控制每个器件进入低功耗状态。切记,当从电源关断状态唤醒时,所有器件设定都复位到它们的上电初始值。

双µC应用中的冲突问题

图1所示配置中,每个µC都可以按照GMSL UART协议与MAX9259串行器、MAX9260解串器或其它µC通信。GMSL不提供防冲突措施,用户需要自行提供冲突处理措施。

独立组网

防冲突最简单的方法是让每个µC将其附属的串行器/解串器的FWDCCEN和REVCCEN位置0 (0x04 D[1:0])。这种方案禁用正向和反向控制通道的接收器、发送器,而且有效地将控制网络分成两个独立网络(图4)。

 

独立控制网络避免了冲突的可能性

 

图4. 独立控制网络避免了冲突的可能性

任何通过串行链路的通信首先需要每一侧的µC重新使能相应链路端的通信。这种设置在“常通”应用中非常有效,其关键链路特定寄存器的设置不会从初始状态改变。

软件冲突处理

在那些两端串行链路间必须通信的应用中,用户可以通过更高层的协议避免冲突(图5)。以下例子中,每个µC都会等待ACK帧来判定其指令是否成功。

 

软件处理冲突的示例

 

图5. 软件处理冲突的示例

发生冲突时,串行器/解串器不会发出ACK帧。接收ACK帧失败后,在重新发送指令前,µC会根据它们的器件地址等待一段时间。由于此设计中,微处理器有不同的器件地址,在重试通信时不会出现冲突。

单/双µC应用

某些应用不要求两个µC始终保持工作。工作时,如果任一端的CDS输入改变了状态,相应器件将按照MAX9259数据手册中介绍的链路启动步骤恢复工作。

根据需要,在单µC和双µC工作中切换,轮流使能GMSL会占用更少资源。可以关断不用的µC以降低功耗,有助于延长电池寿命。

远端显示示例(解串器)

在下面应用中,链路的解串器侧是一个配置用于遥控电源开/关的显示面板。板子关断输入和单/双µC控制都连接到MAX9260 GPIO0的输出端(图6)。

 

单/双µC远端显示举例

 

图6. 单/双µC远端显示举例

一旦上电,GPIO输出高电平,以保持远端器件关闭,解串器由于附加的反相器配置为远端器件。由于MS连接到GPIO,MAX9260在休眠模式下上电,其余所有器件处于低功耗状态。

为了开启遥控面板,串行器唤醒MAX9260并建立串行链路。然后,串行器端的µC设置GPIO0为低电平,使MS置低、反相器输出高电平。反相器设置MAX9260为本地器件,并唤醒远程显示面板的其它电路。MS必须置为低电平,以保持MAX9260 UART接口的基本模式。

如需关断远端面板,则串行器设置GPIO0为高电平来关断远端器件并将MAX9260置为远端器件。然后,在MAX9260内设置SLEEP = 1,使器件进入睡眠模式。

远程摄像机举例(串行器)

类似于上述例子,链路的串行器侧为配置成远端电源开/关的摄像模组。MAX9259的INT输出控制板子的关断输入和单/双µC切换(图7)。

 

单/双µC远端摄像机举例

 

图7. 单/双µC远端摄像机举例

在此应用中,INT作为GPO使用,通过设置SETINT(MAX9259的0x0D D7)或解串器的INT输入对输出进行控制。一旦上电,INT输出为低电平,保持远端器件关断。反相器输出连接到CDS,将串行器配置为远端器件。由于低电平有效AUTOS置为高电平,MAX9259在休眠模式下上电。

如要开启远端面板,解串器通过GMSL UART指令唤醒MAX9259。然后,解串器设置MAX9259的INT输出为高电平,使所有远端器件上电。反相器输出将MAX9259置为本地器件,可通过本地µC接收UART指令。

如要关断远端面板,解串器设置MAX9259的INT输出为低电平,关断远端器件且将MAX9259设置为远端器件。然后,解串器在MAX9259内设置SLEEP = 1,使器件进入睡眠状态。

其它应用

双µC应用并不仅仅限于上述示例。对称、双向控制面板,随着实时的CDS和旁路设置(通过MS)可以启动众多串行器/解串器和µC配置。设计人员需要更高的控制手段提高系统能力并使系统功耗降至最低,最大限度地利用现有资源。

 
  
  
  
  
 
更多>同类技术
 
全年征稿 / 资讯合作
 
推荐图文
推荐技术
可能喜欢