您现在的位置是:首页 > 家电

MAX9217/MAX9218视频链路中的音频数据传输

2020-03-22 10:42:07

摘要:MAX9217/MAX9218串行器和解串器芯片组通过一对儿双绞线LVDS链路实现视频数据传输,广泛用于汽车和工业应用领域。视频信号的每一帧总是存在消隐周期,可以利用这些周期“承载”音频数据。在本应用笔记中,我们讨论音频数据的传输格式,视频链路发送数据的方法以及系统实现的具体实例。

引言

MAX9217/MAX9218芯片组[1]是一个收发器对儿,发送器(MAX9217)将并行数据转换成串行数据,发送给接收器(MAX9218);接收器再将串行数据转换成并行数据。该芯片组设计用于通过一对儿低成本双绞线电缆(如,以太网中常用的UTP-CAT5电缆),将视频和控制信号从图形控制器(处理器)传输到LCD或等离子平面显示器。传输距离可超过10米。该芯片组链路结构简单,所使用的传输线为低成本电缆,是汽车、仪表、医疗设备等视频显示的理想方案。

该芯片组不仅可以在两点之间传送视频信号,有时,人们还希望其同时传送音频信号。在本应用笔记中,我们将讨论如何利用视频信号的消隐期,通过控制信号通道将音频数据传送到显示器。我们还将解释怎样把数字音频数据转换成模拟音频信号,并给出了显示面板端扬声器驱动的系统结构。

MAX9217/MAX9218链路功能和视频数据格式

MAX9217串行器具有27位并行输入,总线速率高达35Mbps。在这27位中,18位是视频RGB数据:3基色各占用6位,其余9位是控制信号。9位控制信号中的前3位指定为垂直、水平和RGB数据同步:VSYNC (C0)、HSYNC (C1)和ENAB (C2)。剩下的6个控制位(C3至C8)用于其他控制信号。本例中,我们使用6个控制位中的一部分传输音频数据。MAX9217可以将18位RGB数据或9位控制数据转换为串行数据,然后通过LVDS链路对其进行传输。在视频显示的消隐期内发送控制数据,由RGB数据使能信号(ENAB)指示。

MAX9218接收到串行数据后,将其转换成与MAX9217输入格式相同的并行数据。同样,当MAX9218输出并行数据时,根据串行LVDS链路的时序重新生成总线时钟。图1所示为MAX9217和MAX9218之间视频、控制数据链路设置和连接的结构图。图2所示为视频数据和控制数据的时序。根据视频格式、显示器分辩率和链路速率,RGB数据的控制占空比在1%至5%之间。

图1. MAX9217/MAX9218的视频链路设置
图1. MAX9217/MAX9218的视频链路设置

图2. 串行链路的视频数据和控制数据格式
图2. 串行链路的视频数据和控制数据格式

数字音频数据类型和传输格式

数字音频数据有多种不同格式。我们讨论3种最常用的格式:采样数字音频(PCM)、MPEG层3音频(MP3) [2]和ATSC数字音频压缩标准(AC3) [3]。

PCM数字音频是CD ROM或DVD采用的数据格式。对左右声道的音频信号采样得到PCM数字信号,采样率为44.1kHz,精度为16位或32位。因此,精度为16位时,PCM音频数据速率为1.41Mbps;32位时为2.42Mbps。一张700MB CD可保存大约60分钟的16位PCM数据格式的音乐。

MP3是MP3播放器采用的音频格式,对PCM音频数据进行压缩编码。立体声MP3数据速率为112kbps至128kbps。对于这种数据速率,解码后的MP3声音效果与CD数字音频的质量相同。AC3是数字TV、HDTV和电影数字音频编码标准。立体声AC3编码后的数据速率为192kbps。

为了恢复音频信号,可将编码后的音频数据送入音频解码器芯片,该芯片生成PCM数字数据,传送至音频DAC,最终恢复成模拟音频信号。相反,没有编码的数字音频数据可以直接送入音频DAC。(下面详细说明这种类型的系统实现。)

编码或解码音频数据的常用串行音频数字接口是Inter-IC音频总线(I²S) [4]。图3所示为I²S接口配置和时序图。每个音频字的边界由信号WS标识。在我们的应用中采用配置模式1。在SCK信号的上升沿,数据被锁存至接收器,但是当SCK保持低电平时,不接收数据。

图3. I2S接口配置和时序
图3. I²S接口配置和时序

使用MAX9217和MAX9218之间的串行链路仿真I²S接口,可以将音频数据从图形控制器一端传送至远端。我们将控制位C3和C4分别分配给SD和WS信号。对于SCK时钟,如果要发送PCM数字音频,可以直接使用MAX9218恢复的像素时钟PCLK_OUT。对于传送MP3或AC3音频,可采用控制位C5为SCK时钟生成一半或较低速率的像素时钟。图4显示了这两种情况的时序波形。为防止接收器溢出,大部分I²S接口需要进行节流控制,连续发送数据时,可以将SCK置低,直接实现节流控制。图4中Case 1,工作期间SCK信号无法置低,可以使用片选引脚/CS关闭接收器。在这种情况下,图4中的Case 1将C6分配给/CS信号。

图4. I²S接口的控制数据位波形
图4. I²S接口的控制数据位波形

消隐比和音频数据吞吐率

由于音频数据是通过视频信号的消隐周期传输的,我们需要确定给定像素频率fP下行消隐比和场消隐比。图5所示为显示面板上的行消隐和场消隐周期。

图5. 行消隐和场消隐
图5. 行消隐和场消隐

以RL表示行消隐比,RF表示场消隐比,由图5所示,我们可以按以下各式计算这些比值:

RL = (I1 + I2) / L



RF = (f1 + f2) / F

由此得到音频数据吞吐率RA,即:

RA = (RFδF + (1 - RF) RLδL) fP

其中δF和δL是消隐周期中的音频数据传输利用率。利用率是指整个消隐周期中,音频数据传输所占的比例,是节流控制的结果。作为一个实例,表1所示参数为3种类型的音频数据设置数据速率。

表1. 不同类型音频数据的消隐参数设置 Audio Data Type fP RA RB F L Data Rate 16-Bit PCM Audio Data 35 0.02 0.03 81% 82% 1.41Mbps MP3 17.5 0.01 0.01 35% 38.5% 128Kbps* AC3 17.5 0.01 0.01 50.3% 60% 192Kbps*
*注:MP3和AC3音频数据都含有头文件。考虑到这些信息后,实际的编码数据速率会稍高一些[2, 3]。

系统实现

要在面板端播放音频信号,我们需要将PCM数据送至音频DAC或解码MP3和AC3数据,然后将其送至音频DAC。由于没有反向通道将握手信号回送给控制器,解码器主机时钟必须与像素时钟同步,以防止数据上溢或下溢。图6所示为编码和未编码数据音频重放的系统结构图。

图6. 面板端音频重放实现
图6. 面板端音频重放实现

在上述结构图中,采用了3次I²S接口。从左边开始,第一和第二个I²S接口的数据速率相同,能够达到35MHz。第三个接口—MAX9850 DirectDrive耳机放大器[5]接口,速率固定为音频采样率的倍数。时钟SCK2送入MAX9491多路时钟发生器[6],它产生解码器、FIFO和MAX9850的同步时钟。MAX9491提供包含OTP的两个可编程PLL,是本应用的理想频率合成器。Case 1适用于提供解码PCM音频数据的图形控制器,Case 2用于面板端压缩数据的解码。Case 1的节流控制由/CS引脚实现,Case 2中通过空闲SCK时钟实现。对比这两种实现方式,我们看到PCM音频数据的Case 1不需要占用太多的消隐时间(表1),不需要使用音频解码器芯片,成本低于Case 2。因此,如果图形控制器能够从MP3或AC3等编码音频数据流中生成PCM数据,建议直接在链路上传送这些数据。