主要内容

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

这个例子展示了如何建立一个参考设计来运行音频算法和访问音频输入和输出在ZYBO板上。

在你开始之前

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

  • Xilinx Zyn金宝appq平台的HDL编码器支持包

  • Xilinx Zynq平台的嵌金宝app入式编码器支持包

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

  • Digilent®Zybo Zynq™开发板和附件套件

注意:本例使用Digilent®Zybo Zynq-7000 ARM/FPGA SoC培训板。本例不适用于Digilent®Zybo Z7: Zynq-7000 ARM/FPGA SoC开发板,该开发板有Zybo Z7-10和Zybo Z7-20两种变体。

要安装ZYBO板,请参考设置Zybo董事会部分的为Zynq工作流定义定制板和参考设计篇文章。

介绍

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

在ZYBO板上进行音频处理,需要以下2个协议:

  1. I2C配置ZYBO板上的SSM2603音频编解码芯片。

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

上图是一个高层架构图,展示了ZYBO板上的滤波算法IP是如何使用参考设计的。本例与Zedboard的音频系统参考设计类似,不同之处是ZYBO板使用SSM2603音频编解码芯片,而Zedboard使用ADAU1761音频编解码芯片。其余的运行参数与Zedboard的音频系统参考设计相同。详情请参阅在Zynq板上编写音频系统参考设计的例子。

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

  1. 为外围接口生成IP核

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

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

  4. 验证参考设计

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

在这个例子中,

  1. I2C IP是使用状态流块和用于三状态缓冲区的VHDL代码开发的。

  2. 通过在Simulink中对I2S IP进行建模,开发了I2S IP。金宝app

1.1创建I2C IP

创建I2C IP以配置“音频编解码SSM2603”,请参考IP Core I2C控制器IP的生成,用于配置音频编解码芯片篇文章。

1.2创建I2S IP

利用matlab函数在Simulin金宝appk中设计了一个实现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工作流顾问生成的IP核,IPCORE_CLKAXI4_Lite_ACLK应该连接到同一个时钟源。

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

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

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

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

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

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

  4. I2C_CLKI2C_DATA是标准I2C信号吗

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

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

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

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

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

ZYBO文件夹使用以下命令:

cd ([matlabroot' /工具箱/ hdlcoder / hdlcoderdemos / customboards / ZYBO ']);

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

4.验证参考设计

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