主要内容

在ZYBO板上编写音频系统参考设计

这个例子展示了如何构建一个参考设计来运行音频算法并访问ZYBO™Z7-10板上的音频输入和输出。

开始之前

要运行此示例,您必须安装并设置以下软件和硬件:

  • 针对Xilinx®Zy万博1manbetxnq®平台的HDL Coder™支持包

  • 嵌入式Coder®支持包Xili万博1manbetxnx Zynq平台

  • Xilinx Vivado®,文档中提到的最新版本

  • Digilent®Zybo Z7-10 Zynq开发板与附件套件

此示例可作为创建Digilent®ZYBO Z7-20板的自定义参考设计的参考。

要设置ZYBO Z7-10板,请参见设置Zybo板章节。为Zynq工作流定义定制板和参考设计篇文章。

简介

在本例中,您将创建一个参考设计,该设计接收来自ZYBO Z7-10板的音频输入,对其进行一些处理,并将处理后的音频数据从ZYBO Z7-10板传输出去。还可以为使用的外围接口生成IP核HDL工作流顾问

在ZYBO Z7-10板上进行音频处理,需要以下两个协议:

  1. I2C配置SSM2603音频编解码芯片在ZYBO Z7-10板上。

  2. I2S用于在编解码器芯片和zynq织物之间传输数字化音频数据。

上图是一个高级架构图,展示了滤波算法IP在ZYBO Z7-10板上是如何使用参考设计的。这个例子类似于Zedboard的音频系统参考设计,除了ZYBO Z7-10板使用SSM2603音频编解码芯片,而Zedboard使用ADAU1761音频编解码芯片。其余的操作参数与Zedboard的音频系统参考设计相同。详情请参阅在Zynq板上编写音频系统参考设计的例子。

以下步骤用于创建上面描述的参考设计:

  1. 为外围接口生成IP核

  2. 在Vivado中创建自定义音频编解码器参考设计

  3. 创建参考设计定义文件

  4. 验证参考设计

1.使用HDL工作流顾问为外围接口生成IP核

在这个例子中,

  1. I2C IP是使用Stateflow®块和传统的VHDL代码开发的三态缓冲区。

  2. 在Simulink中对I2S IP进行建模开发。万博1manbetx

1.1创建I2C IP

创建I2C IP配置音频编解码器SSM2603,请参见IP核生成I2C控制器IP配置音频编解码芯片篇文章。

1.2创建I2S的IP地址

在Simulink中设计一个模型,利万博1manbetx用MATLAB函数实现I2S协议。

modelname =“hdlcoder_I2S_ssm2603”;open_system (modelname);

测试和IP核生成步骤与Zedboard I2S型号相同。I2S IP地址的生成请参见在Zynq板上编写音频系统参考设计的例子。

2.在Vivado中创建自定义音频编解码器参考设计

I2C, I2S和FIFO ip被纳入自定义参考设计。要创建自定义参考设计,请参阅中的“使用Xilinx Vivado创建并导出自定义参考设计”部分为Zynq工作流定义定制板和参考设计

在创建这个自定义参考设计时要注意的要点:

  1. 我们必须了解ZYBO板上音频编解码芯片的工作原理。

  2. fifo的配置被设置为默认值。

  3. 对于使用HDL Workflow Advisor生成的IP核,IPCORE_CLK而且AXI4_Lite_ACLK应该连接到相同的时钟源。

  4. 在Vivado中验证块设计时,除了未连接的端口外,应该没有任何严重警告。

  5. 在此参考设计中,音频编解码器配置为在主模式下运行。

以下信号在Zynq Soc上的参考设计和ZYBO板上的音频编解码器之间运行:

  1. Bit_clock是采样频率、每个通道的比特数和通道数的乘积。它由主模式下的音频编解码器驱动。在本例中,采样频率为48KHz,通道数为2,每个通道的比特数为24。

  2. Serial_data_in是从模拟到数字转换音频数据的编解码器。

  3. Serial_data_out数字音频数据将通过编解码器转换为模拟形式。

  4. I2C_CLK而且I2C_DATA是标准I2C信号吗

  5. MUTEN是连接到音频编解码器SSM2603的硬件静音引脚。

  6. MCLK为编解码器所需的12.288MHz时钟信号。

为本例创建的自定义音频编解码器参考设计如下所示:

3.创建参考设计定义文件

下面的代码描述了ZYBO板参考设计定义文件的内容plugin_rd.m为以上设计参考。有关如何定义和注册自定义板的详细信息,请参阅为Zynq工作流定义定制板和参考设计的例子。

解压缩并添加ZYBO使用以下命令将文件夹移到MATLAB路径:

解压缩(“ZYBO.zip”);目录(genpath (“ZYBO”));

参考设计所需的所有文件,如IP核文件,XDC文件,plugin_rd文件等都应该添加到MATLAB路径中ZYBO文件夹中使用如下所示的层次结构。用户生成的IP核文件应该在+ vivado文件夹中。plugin_rd.m, tcl files and xdc files should be in+ vivado_audio_filter_2020_2文件夹中。

4.验证参考设计

要验证参考设计,从模型生成音频滤波器IP核并将其与音频编解码器参考设计集成,请参阅使用Zynq板在实时音频输入上运行音频过滤器的例子。