ZYNQ自带I2S_IP核分析

简介

I2S Transmitter 和 I2S Receiver IP核是Xilinx公司开发的套件,支持任何采样率,可以用于音频设备传输(AES3)和接收PCM音频数据。

参考图

发送机

在这里插入图片描述

接收机

在这里插入图片描述

结构框图

发送机

在这里插入图片描述

接收机

在这里插入图片描述

接口定义

发送机

接口名称方向类型描述
s_axi_ctrl_aclk输入时钟信号AXI4-Lite接口的输入时钟
s_axi_ctrl_aresetn输入复位AXI4-Lite接口的激活-低复位
s_axi_ctrl_ *s_axi_ctrlAXI4-Lite接口
aud_mclk输入时钟信号输入音频时钟。通常是音频采样率的倍数。
aud_mrst输入复位信号音频接口的高重置
s_axis_aud_aclk输入时钟信号AXIS音频流时钟
s_axis_aud_resetn输入复位信号Active-Low AXIS audio reset
s_axis_aud_*音频 AXIS InterfaceAXIS音频接口1
Irq输出中断信号主动-高中断
lrclk_out输出输出左右声道音频时钟,当核心被配置为主可用。
sclk_out输出输出音频位时钟,当核心被配置为主可用。
lrclk_in输入声道音频时钟输出左右声道音频时钟,当核心被配置为从可用。
sclk_in输入音频位时钟信号输出音频位时钟,当核心被配置为从可用。
sdata_0_out输出数据通道0I2S串行数据输出
sdata_1_out输出I2S串行数据输出。当音频频道数为>2时可用。
sdata_2_out输出I2S串行数据输出。当音频频道数为>4时可用。
sdata_3_out输出I2S串行数据输出。当音频频道数为>6时可用。

接收机

接口名称方向类型描述
s_axi_ctrl_aclk输入时钟信号AXI4-Lite接口的输入时钟
s_axi_ctrl_aresetn输入复位AXI4-Lite接口的激活-低复位
s_axi_ctrl_ *s_axi_ctrlAXI4-Lite接口
aud_mclk输入时钟信号输入音频时钟。通常是音频采样率的倍数。
aud_mrst输入复位信号音频接口的高重置
m_axis_aud_aclk输入时钟信号AXIS音频流时钟
m_axis_aud_resetn输入复位信号Active-Low AXIS audio reset
m_axis_aud_*音频 AXIS InterfaceAXIS音频接口
Irq输出中断信号主动-高中断
lrclk_out输出输出左右声道音频时钟,当核心被配置为主可用。
sclk_out输出输出音频位时钟,当核心被配置为主可用。
lrclk_in输入输出左右声道音频时钟,当核心被配置为从可用。
sclk_in输入输出音频位时钟,当核心被配置为从可用。
sdata_0_out输出I2S串行数据输出
sdata_1_out输出I2S串行数据输出。当音频频道数为>2时可用。
sdata_2_out输出I2S串行数据输出。当音频频道数为>4时可用。
sdata_3_out输出I2S串行数据输出。当音频频道数为>6时可用。

如何设置sclk和lrclk的方向

1)选中IP核后点击鼠标右键,点击Block Properties…
在这里插入图片描述
2)然后点击放大,最后在左下角点击Properties
在这里插入图片描述
在这里插入图片描述

3)展开CONFIG,将其中的C_IS_MASTER一栏的数值修改为0。即可实现从输出变为为输入模式
在这里插入图片描述
在这里插入图片描述

总结

1)aud_mclk 该接口在IIS通信协议中就是MCLK(系统时钟),通常是采样率的256倍或384倍;

2)lrclk 该接口在IIS通信协议中就是 LRCK(也称WS),用于切换左右声道的数据。lrclk的频率等于采样频率;

3)sclk该接口在IIS通信协议中就是SCLK(也称BCLK)位时钟,即对应数字音频的每一位数据,sclk都有一个脉冲。sclk的频率=2×采样频率×采样位数,在此IP核中的计算公式为 sclk的频率=2×采样频率×24 或 sclk的频率=2×采样频率×16;

4)sdata_*_out 该接口在IIS通信协议中就是串行数据SDATA,就是用二进制补码表示的音频数据;

5)配置的过程中需要根据采样频率计算出MCLK的值,根据计算的结果提供时钟信号;

6)sclk和lrclk的方向是需要根据是接受还是发送来配置;

注:一般遵循谁发送数据谁提供sclk和lrck,不过该IP核作者还未验证。
注:其实本IP核主要的目的是实现IIS转AES3(一种数字音频协议),不支持接受IIS的数据。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

嘉鑫的程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值