2-DE10-Nano的HDMI音频传输案例——基于FPGA的I2S控制模块设计

I2S控制模块AUDIO_IF.v实现的功能是用离散的正弦波数据创建的查找表来合成声音(生成I2S格式的音频数据流)。如下是该模块的RTL视图:

该模块采用的是I2S 标准音频时序,每通道16位,LRCLK为低电平时传输左通道,为高电平时传输右声道,数据由高位(MSB)到低位(LSB)依次进行传输:

所以该模块里面设置了左右声道数据位宽16-bit。 另外离散的正弦波数据是48个。

该模块系统时钟是1.536MHz,位时钟sclk也是1.536MHz。因寄存器设置0x157:4=0010,ADV7513采样率为48KHz,所以lrclk经过sclk分频后也是48KHz。

这里设置sclk下降沿时数据改变,符合寄存器x0B6的设置(其默认设置是0,代表在下降沿时I2S数据发生变化,上升沿时数据保持不变锁存数据)。另外,这里Data_Count取反让数据由高位(MSB)到低位(LSB)依次进行传输:

该模块在lrclk下降沿的时候给出Data_Bit,在lrclk上升沿的时候数据保持没变,所以左右声道传输的是相同的数据:

关于正弦波离散数据的获取,用户可以通过python 或者matlab生成。本文不再赘述。

整个I2S控制模块AUDIO_IF.v的时序图如下:

往期阅读

1-DE10-Nano的HDMI方块移动案例------显示器时序(DMT)标准介绍

2-DE10-Nano的HDMI方块移动案例------HDMI接口介绍(含TMDS)

3-DE10-Nano的HDMI方块移动案例------ADV7513芯片解读

4-DE10-Nano的HDMI方块移动案例------I2C通信协议

5-DE10-Nano的HDMI方块移动案例------基于FPGA的I2C控制模块设计

6-DE10-Nano的HDMI方块移动案例------使用Modelsim仿真I2C控制器

7-DE10-Nano的HDMI方块移动案例的整体实现(含Quartus完整工程免费下载)

1- DE10-Nano的HDMI彩条显示案例(分辨率可切换)(含Quartus完整工程免费下载)

2-DE10-Nano的HDMI彩条显示案例(分辨率可切换)------ VGA显示控制器模块设计

3-DE10-Nano的HDMI彩条显示案例(分辨率可切换)------学会用Signal Tap逻辑分析仪查看信号波形

4-DE10-Nano的HDMI彩条显示案例(分辨率可切换)------ ALTPLL IP与ALTPLL RECONFIG IP介绍

5-DE10-Nano的HDMI彩条显示案例(分辨率可切换)------ PLL控制器和分辨率模式切换

1-DE10-Nano的HDMI音频传输案例------I2S通信协议

相关推荐
tedcloud1235 小时前
Wand-Enhancer 怎么搭建?开源 Wand 客户端增强与远程控制工具介绍
大数据·服务器·人工智能·开源·音视频
找方案8 小时前
AI视频生成对决:Sora vs 可灵 vs Veo,谁能定义未来
人工智能·机器学习·音视频
Riwuarua10 小时前
从近似0基础开始FPGA开发 -- part.11 AXI总线协议与工程应用
fpga开发
m0_6145235510 小时前
差异很大的两段视频怎么自然衔接:切点、AI转场与失败回退
人工智能·音视频
TechVoyager_824611 小时前
IT68353多协议视频转换芯片的硬件架构与协议能力分析
硬件架构·音视频·it68353·多协议音视频·typec 扩展坞·dp hdmi 转换
自小吃多11 小时前
高云 FPGA 添加时序约束笔记
笔记·fpga开发
可乐鸡翅yeah_13 小时前
hls.js 播放质量埋点实战,采集卡顿、起播、错误指标定位线上用户问题
开发语言·前端·javascript·ecmascript·音视频·m3u8·音视频在线播放
youandyouyou14 小时前
医学远程示教同屏直播的技术实现路径:以连通宝双流方案为例
音视频·网络通信
A133455515 小时前
保姆级教程:视频播放器怎么导入SRT外挂字幕
音视频
揽秀亭长15 小时前
如何把提取一个视频的脚本?实测3种提取视频脚本的方法
音视频