主要内容

运行一个音频过滤器使用英特尔板现场音频输入

在这个例子中,我们将展示如何:

  1. 模型一个音频系统低通和带通滤波器

  2. 实现在英特尔®董事会使用音频参考设计

这个例子的目的是接受音频输入通过箭头SoC开发工具包的行输入,处理FPGA和传输处理音频扬声器。上面的图显示了这样一个系统的高级体系结构。它使用一个音频编解码器接口外设和模拟数字信号转换,反之亦然。音频编解码器IPs用于配置英特尔之间传输音频数据的音频编解码器和SoC和音频编解码器。过滤IP用于音频处理。ARM处理器是用于控制类型的过滤器使用即低通或带通。

在你开始之前

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

  • 高密度脂蛋白编码器™为金宝app英特尔SoC设备支持包

  • 为英特尔SoC设备嵌入式编码器®金宝app支持包

  • 第四的英特尔®'标准,支持版本中列出金宝appHDL语言支持,支持第三方金宝app工具和硬件

  • 英特尔SoC嵌入式设计套件

  • 箭头SoC开发工具包

设置箭头SoC开发工具包,指的是建立在英特尔SoC硬件和工具部分开始使用针对英特尔SoC设备的例子。连接的音频输入手机或MP3播放器杰克和耳机或扬声器行了杰克在箭头SoC如下所示。

介绍

在接下来的模型,一个音频文件作为输入到DUT子系统,Audio_filter。在仿真软件模拟该模型,可以听到通过处理的音频效果金宝app音频设备的作家块和频谱分析仪块显示过滤音频输出的光谱图。

modelname =“hdlcoder_audio_filter_biquad”;open_system (modelname);

模型系统与低通和带通滤波器

滤波器系数可能生成使用MATLAB函数或模型。金宝app在这个模型中,filterDesigner(DSP系统工具箱)(DSP系统工具箱)工具用于生成滤波器系数为每个类型的过滤器。那么这些滤波器系数导出并存储为matlab文件。这些系数将被用来设计仿真软件的过滤器。金宝app在这个模型中,离散IIR滤波器模块从仿真软件®作为Biquad低通或带通滤波器取决于相应的滤波金宝app器系数。

您可以测试该模型通过模拟仿真软件的模型。金宝app在频谱分析仪的频率范围和音频效果通过音频设备作家块应该取决于所选择的过滤器的类型。过滤器选择块用于选择类型的过滤音频输入。

定制箭头SoC模型开发工具包

为了实现这个模型在箭头SoC,您必须首先创建一个参考设计在转换频率接收音频输入箭头SoC和传输音频数据处理的箭头SoC。有关如何创建一个参考设计集音频滤波器模型,参考编写一个参考设计在英特尔董事会音频系统的例子。

参考设计,左和右通道音频数据组合起来形成一个单一的通道。都连接起来,这样低24位是左通道和上24位是正确的通道。在上面的仿真软金宝app件模型,Data_in分为2通道即相应的左和右。他们的大小除以2和2通道被添加在一起,形成一个通道。过滤完成在这个频道。

Data_inValid_in是AXI4-Stream信号。Data_in包含音频数据和处理Valid_in作为启动信号。每个过滤器是映射到LED在箭头SoC视觉显示过滤器是否打开或关闭。

FilterSelect输入是通过AXI4接口控制。

产生高密度脂蛋白与AXI4-Stream接口IP核

接下来,你就可以开始HDL工作流顾问和使用英特尔®硬件软件合作设计工作流部署这对英特尔的硬件设计。对于更详细的一步一步的指导,您可以参考开始使用针对英特尔SoC设备的例子。

1。设置英特尔第四的合成路径工具MATLAB命令窗口中使用以下命令。使用自己的英特尔第四的安装路径,当你运行该命令。例如:

hdlsetuptoolpath (“ToolName”,“阿尔特拉第四的二世”,“路径”,“C: \ intelFPGA \ 18.1 \第四的\ bin64 \ quartus.exe);

2。添加IP存储库文件夹和箭头SoC开发工具包登记文件到MATLAB路径使用以下命令:

目录(fullfile (matlabroot,“工具箱”,“hdlcoder”,“hdlcoderdemos”,“customboards”,“ipcore”));目录(fullfile (matlabroot,“工具箱”,“hdlcoder”,“hdlcoderdemos”,“customboards”,“ArrowSoC”));

3所示。开始的高密度脂蛋白工作流顾问DUT子系统,hdlcoder_audio_filter_biquad / Audio_filter或通过双击启动HDL工作流顾问盒子模型中。

在任务1.1中,选择IP核心代目标工作流程,并选择箭头SoC开发工具包目标平台

在任务1.2中,音频系统AXI4流接口被选中的参考设计

AXI4-Stream接口是用来传输音频数据参考设计和滤波算法之间的IP。AXI4-Stream接口包含数据(数据有效的()和控制信号等数据有效的)、背压(准备好了),和数据边界(TLAST)。至少数据有效的信号所需AXI4-Stream IP核心的一代。在任务1.3中,目标平台接口表加载如以下图片所示。音频数据流端口,Valid_in,Data_in,Valid_outData_out映射到AXI4-Stream接口,Pass_through_LED、BiQuad_LPF_LED BiQuad_BPF_LED是映射到led箭头SoC和控制参数的港口吗Filter_select映射到AXI4接口。

AXI4-Stream接口通信在主/从模式中,在主设备发送数据到从设备。因此,如果一个数据端口是一个输入端口,将其分配给一个AXI4-Stream奴隶接口,如果一个数据端口输出端口,将其分配给一个AXI4-Stream主接口。

3所示。右键单击任务3.2,生成RTL代码和IP核心,并选择选择任务运行生成IP核。你可以找到寄存器地址映射和其他文档的IP核心IP核生成报告。

IP集成到AXI4-Stream音频兼容的参考设计

接下来,在高密度脂蛋白工作流顾问,你运行嵌入式系统集成任务部署生成的高密度脂蛋白IP核在英特尔SoC。

1。4.1运行任务,创建项目。这个任务将生成的IP核心插入到音频系统AXI4流接口参考设计。第一个图所示,这个参考设计包含ip处理音频数据的箭头SOC。生成的项目是一个完整的设计,包括算法(生成的DUT算法IP)一部分,平台部分(参考设计)。有关如何创建一个参考设计集音频滤波器模型,参考编写一个参考设计在英特尔董事会音频系统的例子。

2。点击阿尔特拉生成转换频率项目在结果窗格中打开链接生成平台设计项目转换频率。

3所示。在高密度脂蛋白工作流顾问,运行的其他任务生成软件界面模型,并建立和下载FPGA比特流。选择下载在任务的编程方法项目目标设备下载FPGA比特流到英特尔的SD卡,所以你的设计将会自动重新加载时动力循环的英特尔。

生成的手臂执行调优参数对FPGA结构

4.2软件界面模型生成的任务,生成软件界面模型

1。之前你从软件界面模型生成代码,注释掉音频输入源和音频输出沉即从多媒体文件,数据类型转换、缓冲、音频设备作家和频谱分析仪。这些块不需要在ARM处理器上运行。Audio_filter IP运行Filtering_Algorithm在FPGA结构。ARM处理器使用AXI4界面选择滤波器类型例如Biquad低通、带通或通过。

  1. 在生成模型,去硬件窗格,然后点击打开配置参数对话框硬件设置

  1. 选择解算器并设置停止时间

  2. 然后在硬件面板,点击监视和优化按钮。嵌入式程序员构建模型,下载手臂英特尔板硬件可执行,执行它,连接模型到可执行的英特尔板的硬件上运行。然后您可以调整模型参数。

使用过滤器的类型可以使用下拉选项被选中过滤器选择

过滤后的音频输出可以通过插入耳机或扬声器听到行了杰克在箭SoC。根据过滤选择,箭头SoC打开相应的领导。在这个例子中,LD0打开时通过(没有过滤器使用)选项被选中时,LD1打开当选择Biquad低通滤波器,LD2打开当Biquad带通滤波器被选中。