首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

基于Zedboard的电吉他多重音效处理系统

电吉他多重音效处理系统

基于Zedboard (Zynq 7020)实现

1

Demo视频

照例以项目Demo视频开场:

2

项目简介与创新

这一项目作品来自以色列特拉维夫大学的两名大四学生,基于Digilent与Avnet联合出品的Xilinx Zynq一代名板:ZedBoard实现。本质上,项目通过在FPGA器件上设计和部署音频处理算法,为电吉他实现了一套音频效果处理系统,并且实现了包括:失真音和过载音、八度音+颤音、颤音、延迟音四种音效。在音乐界,这样一套东西俗称为“综合效果器/踏板效果器”,嗯,大致是介个样子:

相比于商业界传统的基于DSP/CPU技术的“电吉他综合效果器”,这一作品完全基于FPGA逻辑实现,借助FPGA天生并行的优势,将多个音频信道一起处理,从而提高实时性能——对标一些业界领先的商用踏板效果器所宣传的“几毫秒”延时,该作品的最大延时仅仅约为1ms。

3

系统原理功能

作品的简易框图如下:

上图黄色部分为作品实际用到的Zedboard板载硬件:系统通过Line-in端口与电吉他连接以接收音频,并通过Line-out端口将处理音效传送到放大器。板载的Zynq器件与音频解码器是整个系统的核心,其中Zynq的PL端的主要用来进行音频处理,以及产生不同的时钟并实现用户界面;ARM部分(PS端)则主要用来做一下辅助的框架搭建与支持工作。所有的编程通过JTAG USB端口实现;同时,作者利用了板载的按键与LED灯设计了一个简易的物理用户界面。

软件部分,作者使用Vivado 2016.2,全部手动基于VHDL硬件描述语言为音频信号路径,效果,用户界面和PS-PL交互创建了所有的IP blocks;PS端,作者使用Xilinx SDK 2016.2借助C语言编程,通过AXI功能读取/写入PL音频采样,并初始化板载音频编解码器。在VHDL代码部署之前,作者还使用了MATLAB来进行仿真并测试整个系统设计。

图:效果链,以及每个效果的内部变化

图:音频信号路径

图:控制信号路径

4

完整项目与源码获取

从来成功没有理所当然,而在项目中实现技术成长,是唯一的小捷径。这也是我们分享开源项目的初衷。Hope you enjoy~!

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20171227B0LKWZ00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券