0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

RK3588+XS9922B:I2S-TDM多通道音频采集实例

眺望电子 2026-05-29 11:53 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

前言:

在工业音视频采集、智能安防、车载DVR等场景中,多路音视频同步采集是核心需求。眺望电子RK3588 核心板,搭配 XS9922B 多路 AHD 音视频采集芯片,可轻松实现 8声道高清音频的稳定采集与传输。今天就从原理、硬件配置、设备树开发到实测验证,完整分享这套高性能音频采集方案实现全流程。

一、I2S 与 I2S-TDM的关键差异

很多人分不清 I2S 和 I2S-TDM,简单说:I2S 是双通道专用,I2S-TDM 是多通道(最高 8 声道)专用:

• I2S 控制器:仅支持标准 I2S、PCM 协议,主打左右双声道,满足普通立体声需求;如果要接入4路AHD摄像头,每路都带独立音频时,就需要8路音频通道。如果沿用标准I2S,需要4组独立的I2S总线,不仅浪费引脚,而且时钟同步困难。

• I2S-TDM 控制器:兼容 I2S、PCM、TDM 三大协议,核心优势是时分复用(TDM)技术,单条数据线就能传输 8 声道音频,完美适配多路采集场景。

传统 I2S 的 LRCLK 仅切换左右声道,而 TDM 模式下:

1.LRCLK 升级为帧同步信号,一个周期内按顺序传输 8 个声道的完整数据;

2.BCLK(位时钟)频率翻倍,计算公式:BCLK频率=采样率×声道数×采样位深;

3.仅用 1 根 SDIN/SDOUT 数据线,串行传输所有声道数据,大幅简化硬件布线。

RK3588核心板 关键引脚信号

• I2S_LRCLK:帧时钟,频率 = 采样率(如 44.1kHz/48kHz);

• I2S_BCLK:位时钟,每个数据位对应 1 个脉冲;

• I2S_SDATA:音频数据,二进制补码格式传输;

• I2S_MCLK:系统时钟,供 Codec 芯片工作,常用采样率×256(如 48kHz×256=12.288MHz)。


二、RK3588核心板+XS9922B方案优势

2.1RK3588 TDM模式

e3e8421e-5b11-11f1-ab55-92fbcf53809c.png

• 内置专用 I2S-TDM 控制器,原生支持 8 声道采集,无需额外扩展芯片;

e3f84fce-5b11-11f1-ab55-92fbcf53809c.png

• 工业级高集成度核心板,时钟精度高、稳定性强,适配工业级 7×24 小时连续工作;

• 算力充足,可同步处理多路视频 + 音频数据,适配 AHD 音视频一体化采集场景。

2.2XS9922B多路 AHD 音视频采集

XS9922B 是专为高清音视频采集设计的芯片,支持两种核心配置:

• 配置 1:slot-num为16,slot-width为32(适合 16 声道,RK3588 不支持);

e40a2a3c-5b11-11f1-ab55-92fbcf53809c.png

• 配置 2:slot-num为8,slot-width为32(与 RK3588 匹配)。

e411b7e8-5b11-11f1-ab55-92fbcf53809c.png

核心优势:AHD 视频 + TDM 音频同步采集,单芯片搞定多路音视频输入,大幅降低硬件成本和开发难度。

三、实现步骤

3.1设备树配置(RK3588 侧)

重点开启 I2S0 的 8 通道 TDM 模式,配置时钟、引脚复用及 Codec 关联:

// I2S08通道TDM配置&i2s0_8ch { status ="okay"; pinctrl-names ="default","idle","clk"; pinctrl-0= <&i2s0_sdi0 &i2s0_sdo0>; pinctrl-1= <&i2s0_idle>; pinctrl-2= <&i2s0_lrck &i2s0_sclk>; rockchip,always-on; //保持时钟常亮 rockchip,tdm-fsync-half-frame;//TDM帧同步模式 rockchip,capture-channels = <8>;//配置8个采集声道};//I2C3挂载XS9922B Codec&i2c3{ status ="okay"; xs9922: xs9922@30{ status ="okay"; #sound-dai-cells = <0>; compatible ="xs9922"; reg = <0x30>; clocks = <&mclkout_i2s0>; clock-names ="mclk"; assigned-clocks = <&cru I2S0_8CH_MCLKOUT>; reset-gpios = <&extio EXTIO_GPIO_P00 GPIO_ACTIVE_HIGH>; power-gpios = <&extio EXTIO_GPIO_P01 GPIO_ACTIVE_HIGH>; assigned-clock-rates = <11289597>;//匹配44.1kHz采样率时钟 pinctrl-names ="default"; pinctrl-0= <&i2s0_mclk>; };};//声卡配置:关联CPU与Codec,TDM参数匹配xs9922_sound: xs9922-sound { compatible ="simple-audio-card"; simple-audio-card,name ="rockchip,tdm-8ch"; simple-audio-card,format="dsp_a";//匹配XS9922B的DSP-A格式 simple-audio-card,mclk-fs = <256>; simple-audio-card,bitclock-master = <&codec_master>; simple-audio-card,frame-master = <&codec_master>; status ="okay"; simple-audio-card,cpu { sound-dai = <&i2s0_8ch>; dai-tdm-slot-num = <8>; //8个时隙 dai-tdm-slot-width = <32>;//32bit位宽 }; codec_master: simple-audio-card,codec { sound-dai = <&xs9922>; };};

3.2内核驱动配置

RK3588 内核中 I2S 驱动(kernel/sound/soc/rockchip/rockchip_i2s.c),其中 rockchip_i2s_set_fmt 负责配置协议格式,默认已原生支持 DSP-A/B 格式,与 XS9922B 完全兼容,无需修改驱动代码:

e41eeeb8-5b11-11f1-ab55-92fbcf53809c.png

•DSP-A:PCM 延迟 1bit 模式(本次采用);

•DSP-B:PCM 无延迟模式。

staticintrockchip_i2s_set_fmt(structsnd_soc_dai *cpu_dai,unsignedintfmt){ mask = I2S_TXCR_IBM_MASK | I2S_TXCR_TFS_MASK | I2S_TXCR_PBM_MASK;switch(fmt & SND_SOC_DAIFMT_FORMAT_MASK) {caseSND_SOC_DAIFMT_RIGHT_J:val = I2S_TXCR_IBM_RSJM;break;caseSND_SOC_DAIFMT_LEFT_J:val = I2S_TXCR_IBM_LSJM;break;caseSND_SOC_DAIFMT_I2S:val = I2S_TXCR_IBM_NORMAL;break;caseSND_SOC_DAIFMT_DSP_A:/* PCM delay 1 bit mode */val = I2S_TXCR_TFS_PCM |I2S_TXCR_PBM_MODE(1);break;caseSND_SOC_DAIFMT_DSP_B:/* PCM no delay mode */val = I2S_TXCR_TFS_PCM;break;default:ret = -EINVAL;gotoerr_pm_put;}}


四、功能测试验证

4.1查看声卡

# 查看系统声卡列表cat/proc/asound/cards# 查看录音设备arecord -l# 查看播放设备aplay -l

正常输出会显示rockchip,tdm-8ch声卡,且识别到 8 个采集声道。

e42c7fd8-5b11-11f1-ab55-92fbcf53809c.png

4.2检查 I2S 时钟

cat/sys/kernel/debug/clk/clk_summary |grep i2s0

确认 I2S0 的 MCLK、BCLK 时钟频率与配置一致(如 44.1kHz 采样率下,BCLK=11.2896MHz)。

波型实测

•LRCLK:频率 44.1kHz,方波信号稳定;

e437de50-5b11-11f1-ab55-92fbcf53809c.png

•BCLK/MCLK:频率 11.2896MHz,脉冲波形清晰;

e44aaa4e-5b11-11f1-ab55-92fbcf53809c.png

•SDATA:8 声道音频数据串行输出,波形无失真;

e46863fe-5b11-11f1-ab55-92fbcf53809c.png五、总结

RK3588+XS9922B 的 I2S-TDM 8 声道音频方案,其核心优势在于:仅用1组I2S总线 + 1个TDM控制器,就收齐了8路音频,既节省了RK3588宝贵的引脚资源,又通过TDM的时分复用保证了多声道同步性。

原生适配、配置简单、稳定性强,完美解决多路音频同步采集痛点。无需复杂的硬件扩展,仅通过设备树配置即可快速落地,是工业级、车载级、安防级多路音视频采集场景的首选方案。希望这篇基于 RK3588 I2S-TDM 与 XS9922B 的笔记,能为你的项目调试提供帮助。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 音频采集
    +关注

    关注

    0

    文章

    20

    浏览量

    10239
  • I2S
    I2S
    +关注

    关注

    1

    文章

    82

    浏览量

    44354
  • 核心板
    +关注

    关注

    6

    文章

    1435

    浏览量

    32242
  • RK3588
    +关注

    关注

    8

    文章

    610

    浏览量

    7783
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    瑞芯微RK3588开发板RK3588 EVB和RK3588S EVB解读

    行业类应用产品;RK3588S EVB 面向高端平板、AR/VR、个人移动互联网设备等消费类电子产品。 1. RK3588 EVB:高性能 多接口 RK3588 EVB采用RK3588
    的头像 发表于 09-22 15:54 2.4w次阅读
    瑞芯微<b class='flag-5'>RK3588</b>开发板<b class='flag-5'>RK3588</b> EVB和<b class='flag-5'>RK3588S</b> EVB解读

    RK3588 EVB开发板原理图讲解【八】 RK3588 power Tree

    本帖最后由 瑞芯微方案开发老王 于 2025-3-1 11:41 编辑 一、RK3588电源架构核心特点 ​电源域设计​ 芯片通常划分为多个独立电源域(Power Domain),例如
    发表于 03-01 11:38

    RK3588 EVB 开发板介绍

    行业AIoT终端设备。RK3588 EVB功能配置表 2. RK3588S EVB:更轻薄 消费级RK3588S EVB采用RK3588S
    发表于 03-16 16:39

    基于 RK3588 debian 搭建 RK3588 Kernel 编译环境

    如下timeRK3588分布式 RK3588 x1分布式 RK3588 x2分布式 RK3588 x3i
    发表于 03-22 16:28

    RK3588J和RK3588是什么关系?

    RK3588J是不是一个开发板的名字,里面的SOC是RK3588?还是RK3588J属于RK3588的子系列?
    发表于 03-13 14:22

    RK3588RK3588S之间的区别是什么

    RK3588RK3588S的区别: RK3588SRK3588的低配版,其区别类似RK3568跟RK
    发表于 03-10 19:22 3w次阅读

    ROC RK3588S PC源代码RK356X/RK3588 RKNN SDK

    电子发烧友网站提供《ROC RK3588S PC源代码RK356X/RK3588 RKNN SDK.txt》资料免费下载
    发表于 09-20 17:45 42次下载
    ROC <b class='flag-5'>RK3588S</b> PC源代码<b class='flag-5'>RK</b>356X/<b class='flag-5'>RK3588</b> RKNN SDK

    实例课程 I 基于 RK3588 实例的最新版本 Cadence Allegro PCB 设计与仿真项目

    本课程基于CadenceAllegroPCB最新版本AllegroX进行RK3588实例项目设计,是一个完整的项目设计过程,力求通过实例项目的操作演示,将软件新的功能和技巧融入到工程师的设计中去
    的头像 发表于 05-06 09:55 3379次阅读
    <b class='flag-5'>实例</b>课程 <b class='flag-5'>I</b> 基于 <b class='flag-5'>RK3588</b> <b class='flag-5'>实例</b>的最新版本 Cadence Allegro PCB 设计与仿真项目

    XS9922B通道 合一模拟高清解码器

    音频 Codec,集成了 3-CH MIC 输入、2-CH LineIn 输入和 1-CH LineOut 输出,可进行语音采集、对讲等应用。 XS9922B 还支持正向
    的头像 发表于 07-19 09:50 3653次阅读

    网课回放 I RK3588 实例课程第一期:项目总结和技术答疑

    网课回放 I RK3588 实例课程第一期:项目总结和技术答疑
    的头像 发表于 07-31 17:10 2271次阅读
    网课回放 <b class='flag-5'>I</b> <b class='flag-5'>RK3588</b> <b class='flag-5'>实例</b>课程第一期:项目总结和技术答疑

    rk3588rk3588s的区别

    rk3588rk3588s的区别 Rockchip是一家专业的半导体公司,成立于2001年,总部位于中国深圳,主要从事集成电路的设计、开发和销售。他们的热门产品RK3588RK3588S
    的头像 发表于 08-15 16:44 2.2w次阅读

    RK3588RK3588S比较哪个好?

    RK3588RK3588S比较哪个好? 随着物联网、人工智能和大数据的快速发展,处理器、芯片等微电子产品的重要性也越来越高。越来越多的人对于处理器的选择变得更加谨慎,因为一个好的处理器在设备的运作
    的头像 发表于 08-15 16:44 1.4w次阅读

    RK35883588s的区别

    RK35883588s的区别 Rockchip RK3588RK3588s是两种功能强大且广受欢迎的片上系统(SoC)解决方案,用于一系列设备,包括智能电视、高性能平板电脑、笔记本
    的头像 发表于 08-15 17:03 2.9w次阅读

    迅为电子RK3588SRK3588硬件性能区别及板卡选型

    迅为电子RK3588SRK3588硬件性能区别及板卡选型
    的头像 发表于 06-25 15:30 6777次阅读
    迅为电子<b class='flag-5'>RK3588S</b>与<b class='flag-5'>RK3588</b>硬件性能区别及板卡选型

    RK3588SRK3588S2差异说明

    RK3588S2 较 RK3588S少了一组 MIPI D/C-PHY CSI_RX PORT0,新增一组 MIPI DPHY CSI_RX PORT1,同时接口位置除 MIPI D/C-PHY
    的头像 发表于 05-13 14:23 3415次阅读
    <b class='flag-5'>RK3588S</b>和<b class='flag-5'>RK3588S2</b>差异说明