矿石收音机论坛

 找回密码
 加入会员

QQ登录

只需一步,快速开始

搜索
查看: 361|回复: 11

I2S串行总线协议

[复制链接]
     
发表于 2025-4-16 10:02:06 | 显示全部楼层 |阅读模式
P001:I2S串行总线协议(By高老庄子,2025年4月16日,主要参考:UM11732 I2S bus specification User manual,Rev. 3.0)
(一)I2S总线协议的基本概念
I2S = Inter-IC Sound = Integrated Interchip Sound = IIS,它主要用于数字音频设备之间的通信,特别是在音频信号需要在芯片之间传输时,I2S 提供了一种简洁而高效的解决方案。I2S协议由飞利浦公司在1986年首次提出,并迅速成为数字音频领域的行业标准。其简单的硬件连接和高效的数据传输能力,使其广泛应用于编解码器CODEC、DSP、数字输入/输出接口、ADC、DAC和数字滤波器等。
I2S协议是一种专门用于数字音频数据传输的接口协议,支持多种音频数据格式,如线性PCM(Pulse Code Modulation);I2S的主要目的是在数字音频系统中传输未经压缩的音频数据,保证数据的完整性和高保真度。
I2S总线协议_01.png
     
 楼主| 发表于 2025-4-16 10:03:26 | 显示全部楼层
(二)I2S串行总线基本结构
I2S总线只用于传输音频信号而不包括控制信号,为简化设计只使用了三条信号线组成串行总线:一条分时复用的数据线Serial Data (SD),一条字选择线Word Select (WS),一条时钟线Continuous Serial Clock (SCK)。数据发送端和接收端使用相同的时钟信号(即同步传输),由发送时钟信号(SCK和WS)的一端作为总线控制器。
时钟线(Continues Serial Clock,SCK):SCK线提供了同步音频数据传输的时钟信号。确定了数据传输的速度和时序。该时钟也称为Bit Clock(BCLK)。SCK的频率=2x采样频率x位宽。
字选择线Word Select (WS)或左/右声道线(Left-Right Clock,LRCK):LRCK线指示了当前传输的是左声道的音频数据还是右声道的音频数据。它被称为帧同步信号。LRCK的频率=采样频率。
数据线(Serial Data,SD):SD线用于传输实际的音频数据。数据的位宽可以根据具体应用而变化,通常为16位或32位。
I2S总线协议_02.png
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2025-4-16 10:04:39 | 显示全部楼层
(三)I2S串行总线基本时序(以I2S标准格式为例)
     串行数据Serial Data (SD)以二进制补码形式传输,MSB在前。MSB在先是因为发送端和接收端的字长(bits-per-word)可能不同,发送端和接收端不需要知道对方规定的字长。当系统字长比数据发送端字长长的时候,数据会被截断(truncated),即如果数据接收端接收的数据位比它规定的字长长的话,那么规定字长最低位LSB之后的数据会被忽略,如果接收的字长比它规定的字长短,不足的位会被补0。这种处理使最高位MSB在数据帧中有一个固定的位置,而最低位LSB的位置取决于字长,发送端总是在WS变化后的第一个时钟周期内送出下一个字的最高位MSB。
串行数据SD可以在时钟的下降沿或是上升沿更新,但总是在串行时钟的上升沿被锁存进接收端,因此时钟上升沿前后数据需要保持稳定。
I2S总线协议_03.png
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2025-4-16 10:06:06 | 显示全部楼层
(四)I2S传输模式之一Philips 标准模式(I2S 标准模式)
这是 I2S 接口最常用的传输模式,通常也被称为 I2S 模式,由 Philips 公司(现 NXP)定义,主要特点:
(1)LRCK(左右声道选择信号):I2S格式中,当LRCK为低时为左声道数据,当LRCK为高时为右声道数据。
(2)SCK(位时钟):数据传输的时钟信号。在SCK下降沿发送数据,在SCK上升沿采样数据。
(3)Data Delay:发送的有效数据相对于LRCK的跳变沿(从0到1或从1到0)延迟一个时钟周期。
(4)数据发送从MSB开始;数据MSB与LRCK delay 1个SCK的边沿对齐。
(5)对于这种标准I2S格式的信号无论有多少位有效数据,数据的最高位总是出现在WCLK/LRCK变化(也就是一帧开始)后的第2个BCLK/SCLK脉冲处。这就使得接收端与发送端的有效位数可以不同。如果接收端能处理的有效位数少于发送端,可以放弃数据帧中多余的低位数据;如果接收端能处理的有效位数多于发送端,可以自行补足剩余的位。这种同步机制使得数字音频设备的互连更加方便,而且不会造成数据错位。
I2S总线协议_04.png
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2025-4-16 10:07:16 | 显示全部楼层
(五)I2S传输模式之二Left Justified 模式(左对齐模式,LJ 模式)
其主要特点如下:
(1)在左对齐格式中,LRCK为高时,表示当前传输的数据为左声道数据;当LRCK为低时,表示当前传输的数据为右声道数据。
(2)在SCK下降沿发送数据,在SCK上升沿接收数据。
(3)无data delay:发送的有效数据相当于LRCK跳变沿(从0到1或从1到0)不延迟。
(4)数据发送从MSB开始;数据MSB与LRCK跳变沿对齐。
(5)左对齐格式的数据的MSB没有相对于BCLK延迟一个时钟。左对齐格式的左右声道数据的MSB在WS边沿变化后SCK/BCLK的第一个上升沿有效。左对齐格式的优点在于,由于在WS变化后的第一个SCK上升沿就开始采样,它不需要关心左右声道数据的字长。
I2S总线协议_05.png
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2025-4-16 10:08:15 | 显示全部楼层
(六)I2S传输模式之三Right Justified 模式(右对齐模式,RJ 模式)
其主要特点如下:
(1)右对齐格式中,LRCK为高电平时,表示当前传输的数据为左声道数据;当LRCK为低电平时,表示当前传输的数据为右声道数据。
(2)在SCK下降沿发送数据,在SCK上升沿接收数据。
(3)无Data delay:发送的有效数据相当于LRCK跳变沿(从0到1或从1到0)不延迟。
(4)数据发送从MSB开始;数据LSB与LRCK跳变沿对齐。
(5)右对齐格式也叫日本格式,sony格式。相比于标准左对齐格式,标准右对齐的不足在于接收设备必须事先知道待传数据的字长。
I2S总线协议_06.png
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2025-4-16 10:08:40 | 显示全部楼层
(七)三种 I2S 模式对比
I2S总线协议_07.png
回复 支持 反对

使用道具 举报

     
发表于 2025-4-16 11:18:56 | 显示全部楼层
请教坛友,CD机CXD2508AQ的I2S串行总线如何引出?
回复 支持 反对

使用道具 举报

     
发表于 2025-4-16 11:31:47 | 显示全部楼层
刚好看到一个左右声道分离的电路。
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2025-4-16 11:48:18 | 显示全部楼层
本帖最后由 gkb986 于 2025-4-16 11:52 编辑
天门冬 发表于 2025-4-16 11:18
请教坛友,CD机CXD2508AQ的I2S串行总线如何引出?



1、测量42脚LRCK频率应为44.1K
2、测量46脚BCK频率应为2.12M
3、示波器观察44脚PCMD为数据输出
4、输出I2S模式为24bit,右对齐
希望能帮到你。
f158f017-e6a9-4063-acc0-ac4e15a5d192.png
3e5abe1c-086f-4eee-ae28-e213a99b61f4.png

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

     
发表于 2025-4-16 14:00:01 | 显示全部楼层
gkb986 发表于 2025-4-16 11:48
1、测量42脚LRCK频率应为44.1K
2、测量46脚BCK频率应为2.12M
3、示波器观察44脚PCMD为数据输出

谢谢,DATA应该是9脚?还是46脚?另外DAC板上标出的MCK没有找到。
回复 支持 反对

使用道具 举报

     
发表于 2025-4-16 14:08:27 | 显示全部楼层
天门冬 发表于 2025-4-16 14:00
谢谢,DATA应该是9脚?还是46脚?另外DAC板上标出的MCK没有找到。

普通状态是不需要MCK的。只有使用滤波器的时候才需要。因为对于移位2.8224M的信号必须使用更高的频率做时钟。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入会员

本版积分规则

小黑屋|手机版|矿石收音机 ( 蒙ICP备05000029号-1 )

蒙公网安备 15040402000005号

GMT+8, 2025-4-25 11:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表