zedboard 音频芯片 adau1761 linux 下音频驱动(二)Vivado

一、概述

本实验依赖adau1761音频芯片,与是否使用zedboard板卡关系不大。可以使用米联的音频卡,需要FPC接口转接,在此不给出链接。

二、新建工程

zedboard 音频芯片 adau1761 linux 下音频驱动(二)Vivado

 

这一步没有Boards的参见:

https://reference.digilentinc.com/learn/software/tutorials/vivado-board-files/start

工程建立完毕。

注:非ZedBoard板卡情况:

1、可以选ZyBo开发板,具体兼容性请联系开发板卖家。

2、或者不使用板卡支持文件,打钩ps7的usb、uart、以太网(可选)。具体请参照原理图。

三、添加IP核:

两种方式任选其一:

1、使用文件包中的 axi_i2s_adi_v1_0

2、下载自GitHub:https://github.com/analogdevicesinc/hdl

zedboard 音频芯片 adau1761 linux 下音频驱动(二)Vivado

四、新建Block Design

依次添加:ZYNQ7、AXI IIC、axi_i2s_adi、Clocking Wizard、Concat。

并做如下修改,axi-iic 保持默认:

  • axi_i2s_adi:

PL330是ARM公司设计的一类DMA控制器代号,pl330 DMA控制器位于PS中,数量有限。AXI-Stream则是PL-DMA。

zedboard 音频芯片 adau1761 linux 下音频驱动(二)Vivado

  • Clocking Wizard:

可以去掉reset、locked信号,影响不大。

zedboard 音频芯片 adau1761 linux 下音频驱动(二)Vivado

  • Concat:

zedboard 音频芯片 adau1761 linux 下音频驱动(二)Vivado

  • 点击 Run Block Automation:

zedboard 音频芯片 adau1761 linux 下音频驱动(二)Vivado

  • ZYNQ7:

使能 DMA1、DMA2

zedboard 音频芯片 adau1761 linux 下音频驱动(二)Vivado

选择 PL Clock:

zedboard 音频芯片 adau1761 linux 下音频驱动(二)Vivado

使能中断:

zedboard 音频芯片 adau1761 linux 下音频驱动(二)Vivado

  • Run Connection Automation:

zedboard 音频芯片 adau1761 linux 下音频驱动(二)Vivado

 五、连接Block Design:

1、如图连接:

zedboard 音频芯片 adau1761 linux 下音频驱动(二)Vivado

2、编辑地址:

zedboard 音频芯片 adau1761 linux 下音频驱动(二)Vivado

3、点击Tools->Validate Design,出现如下警告正常:

zedboard 音频芯片 adau1761 linux 下音频驱动(二)Vivado

六、 综合:

  • 在system.bd上点击右键,Generate Output Products.
  • 在system.bd上点击右键,Create HDL Wrapper.
  • 添加.xdc文件,仅打开如下端口:

zedboard 音频芯片 adau1761 linux 下音频驱动(二)Vivado

  • Generate Bitstream。

七、后续

  • WNS -4.336、TNS -154.604,在此忽略,主要原因是Clocking Wizard没有走BUFG。
  • 导出硬件:Files -> Export -> Export Hardware... -> Include Bitstream

八、结语:

到此,硬件设计结束。

转载请注明原作者及原文出处。