FPGA-Audio-Mixer:基于 AES67 的全硬件网络数字调音台

本项目基于 Intel Cyclone 10 LP FPGA 实现全硬件 AES67 网络数字调音台,集成电动推子、OLED、触摸感应物理控制面板,配套 Web 网页远程控制界面。音频处理、IP 网络协议均由 Verilog 硬件逻辑完成,低延迟可 DIY 扩展,兼容专业 IP 音频生态。

FPGA-Audio-Mixer:基于 AES67 的全硬件网络数字调音台封面
oshw_hqzl2026-06-29 18:04:56TAPR Open Hardware License
41
Star2

PCBA

设计文件

KiCad图标fpga-audio-mixer-main.zip16.69MB(1次下载)

EDA查看器

复制嵌入代码

详细介绍

一、项目核心概述

1. 设计初衷

作者长期寻找低成本、可自定义通道数量的数字调音台,市面上成品调音台控制界面与信号处理绑定,灵活性差;因此采用FPGA 独立完成音频 DSP + 网络协议 + 面板外设驱动,不依赖外置 MCU,全部逻辑硬件化,实时性更强。

2. 核心功能集合

  • 全 FPGA 原生数字音频混音处理,纯硬件 DSP 流水线

  • 电动推子、OLED 屏、触摸感应、编码器物理控制面板

  • AES67 标准 IP 音频网络(兼容 Dante 生态),SDP 会话协议

  • Web 网页前端远程控制,同步本地面板状态

  • 可扩展、模块化架构,硬件 PCB 可自制

二、硬件平台与物料清单

主控核心

Intel Cyclone 10 LP FPGA 开发板

优势:集成千兆以太网 MAC、充足 IO、片上 JTAG 调试器,成本约 100 欧元,原生支持网络 / 音频 / 外设并行逻辑。

控制面板关键器件(8 通道版本)

表格

器件型号

数量

功能

MF60T

8

60mm 线性电动推子

TB6612

4

推子电机 PWM 驱动

MPR121

8

推子电容触摸检测

PCA9548

1

I2C 多路复用器(OLED 扩展)

128×64 I2C OLED

8

每通道状态显示屏

MCP23017

1

IO 扩展,驱动 LED 与按键

STEC12

8

声像 Pan 旋转编码器

40Pin IDC 排线

1

控制面板与 FPGA 主板连接

三、网络与音频协议实现

1. AES67 + SDP 音频网络

  • 音频标准:AES67,48kHz 采样、24bit 位宽,纯硬件 RTL 实现协议栈,无软件 CPU 参与

  • SDP 会话描述协议:静态 SDP 配置,定义组播地址、端口、音频载荷,多设备接入

  • 传输底层:UDP 组播,实现一对多音频分发;简化 IGMP 逻辑降低 FPGA 资源占用,采用静态组播配置

2. 默认网络静态参数(硬编码在 RTL 中)

表格

参数

默认值

说明

调音台 FPGA IP

192.168.1.128

硬件音频处理单元地址

Web 前端服务 IP

192.168.1.100

接收状态上报的控制服务器

子网掩码

255.255.255.0

C 类局域网

组播音频流地址

239.69.1.2

AES67 RTP 音频目标地址

RTP 端口

5004

标准 RTP 音频端口

修改 IP 方式:

  1. FPGA RTL 代码:修改十六进制 IP 常量

  2. Web 前端 JS 配置文件:同步修改对应 IP 常量

四、硬件面板分区功能详解

  1. 电动推子:通道音量控制,网页远程控制时推子自动跟随位置

  2. Mute/Solo 按键:通道静音、独奏监听,背光 LED 反馈通道激活状态

  3. OLED 显示屏:显示通道名、声像位置、预推子电平表

  4. Pan 旋转编码器:调节立体声左右声像,带数字定位反馈

  5. 40Pin 连接器:控制面板与 FPGA 开发板互联

  6. TB6612 电机驱动、MPR121 触摸 IC、PCA9548 I2C 扩展等底层驱动芯片

五、软件与子系统架构

1. Web 前端控制界面

  • 网页 GUI 复刻本地物理面板全部功能

  • 双向状态同步:调节网页推子→硬件推子自动移动;物理面板操作实时回传网页

2. FPGA 内部子系统划分

  1. 音频子系统

    • 8 通道独立增益、静音、声像处理

    • 峰值检测、硬件电平表、音频同步锁相

    • AES67 RTP 接收 / 发送、SPDIF 音频输出

  2. 时序子系统

    • 48kHz 音频主时钟域、千兆以太网 125MHz 时钟域、外设低速时钟域分离

    • 多时钟域跨域同步 FIFO、异步握手隔离

  3. 网络协议栈子系统

    • 纯硬件 UDP/IP 组播栈,无软核处理器

    • SDP 会话解析、RTP 数据包解析、音频载荷提取

  4. 外设驱动子系统

    • I2C 控制器(OLED、触摸 IC、IO 扩展)

    • PWM 电机驱动、编码器脉冲采样、按键 LED 扫描

3. 开源依赖库

项目复用开源 Verilog IP 核:

  • Alex Forster 开源以太网 MAC、UDP/IP 硬件协议栈

  • I2C 主机控制器 IP

  • SPI/SPDIF 音频传输模块

六、FPGA 多时钟域设计(关键架构亮点)

时钟域划分

  • 125MHz:千兆以太网 GMII MAC 时钟

  • 48kHz:音频采样主时钟(音频 DSP 处理域)

  • 低速 I2C/IO 时钟:外设面板驱动域

跨时钟域处理策略

  • 数据包跨域:异步 FIFO 缓冲 RTP 网络包,隔离 125MHz 与 48kHz

  • 控制信号:两级寄存器同步器处理单比特状态

  • 音频数据流:同步 FIFO 做时钟重采样,消除网络抖动

七、项目优势与适用场景

优势

  1. 全硬件实时性:音频处理、网络协议全部 Verilog 硬件实现,无 MCU 调度延迟,专业音频级低时延

  2. 高度自定义:通道数量、面板布局可修改 PCB 与 RTL 逻辑自由扩展

  3. 低成本 DIY:Cyclone 10 LP 开发板价格低廉,所有硬件物料可采购自制

  4. 专业音频兼容:AES67 标准可对接 Dante、Ravenna 等专业音频网络设备

  5. 双控制链路:本地物理面板 + 远程网页控制,场景灵活

适用场景

  • 工作室自制专业数字调音台

  • 音频工程教学 FPGA 音频 DSP 实验平台

  • 中小型演出分布式 IP 音频混音系统

  • 音频硬件开发学习(网络音频、多时钟域、外设驱动综合案例)

八、开发与二次修改要点

  1. 通道扩容:修改 RTL 通道例化数量、扩展 I2C 多路复用器、更新 PCB 增加推子 / OLED

  2. 网络网段适配:同步修改 RTL 内 IP 常量与前端 JS 配置文件

  3. 音频效果扩展:在音频流水线中新增均衡、压缩、延迟等 DSP 模块,利用 FPGA 片上 DSP 单元实现

  4. 外设自定义:可替换推子、编码器,修改对应 I2C/PWM 驱动逻辑

九、开源协议

CERN-OHL-P-2.0 license

十、项目地址

https://github.com/brockbyte/fpga-audio-mixer