利用多核架构并采用图形化方式去设计和调试音频和语音解决方案

devtools/2024/11/14 13:14:38/

作者:牟涛, XMOS亚太区市场和销售负责人

XMOS推出的基于其第三代xcore架构xcore.ai系列可编程SoC芯片,在一颗器件里面集成了边缘AIDSP、控制单元和I/O等功能,因而可以针对应用利用软件将其定义为不同的器件系统,在保持灵活性和可编程性的同时提供优异的性能,从而可以有更快的速度和更低的成本完成全新器件系统的开发。

本文将介绍如何利用xcore.ai芯片开发DSP系统,并以XMOSDSP Concepts近期宣布的合作协议为例,展示音频开发人员如何将 XMOS 的高度确定性、低延迟的 xcore.ai 平台与 DSP Concepts Audio Weaver 软件相结合,使用户能够利用多核架构并采用图形化方式去设计和调试音频和语音解决方案。

灵活地构建DSP系统

xcore 能够以最低的系统物料清单成本来构建整个 DSP 系统,可支持包括定点和浮点格式的主要DSP工作负载。xcore平台的灵活性还使解决方案能够集成其他关键组件,例如 IO 协议、控制算法甚至人工智能组件。xcore 的独特之处在于,整个 DSP 系统可以仅使用软件构建。

独特的硬件可编程性

凭借其独特的多线程、多核微架构xcore.ai 提供了世界领先的具有可预测性的可编程能力,这对于需要极高实时性的 DSP 应用来说至关重要。xcore 的独特架构可确保系统的不同部分互不干扰,从而提供 DSP 系统(尤其是支持多采样率的系统)所需的稳健性、低延迟和可确保的执行时间。

提供丰富的功能

xcore.ai是一种独特的可编程处理器阵列——每个xcore.ai具有16个硬件线程(HART),它们分属2个独立多线程处理器“单元”,其中每个单元配备512kBSRAM存储空间,以及一个能够完成高效块浮点运算的整数矢量单元,使每个 HART 都能执行一套通用的控制、DSPAI IO 指令。强大的处理器间专用通信链路可在任意数量的xcore.ai芯片之间进行高速通信,并将这些器件变成一颗更大的器件。所有这一切都在同一个、同质和强大的开发环境中实现。

嵌入式 DSP

xcore.ai提供的多线程简化了将具有硬件实时特性的DSP功能集成到单芯片嵌入式解决方案中的过程。

除了提供基本的DSP构建模块库,XMOS 还提供了一整套高级功能,例如 PDM 接口、声学回声消除、噪声抑制、异步采样率转换、自动增益控制等。这些功能被封装为参考应用,可以随时进行修改和扩展,以满足特定应用独特的系统功能和接口要求,所有这些功能都被集成在一个高性价比的器件中。

主频为800MHzxcore.ai的高性能

800 MFLOPS的持续处理能力

1,600 MFLOPS的峰值处理能力

98,561 FFT/s

11,300浮点FFT/s

1,024-Pt复杂 FFTRadix 2/s

957M FIR filter taps/s

251M IIR filter (per biquad)/s

另外值得关注的是xcore.ai的可扩展性——XMOS在片上设计提供专用的XMOS互联链路,支持用户将多颗xcore.ai芯片连接在一起形成更大的系统并无缝扩展性能。

使用合作伙伴的技术来打造各种解决方案,如构建DSP系统

XMOSxcore系列芯片已经建立了完善而丰富的生态系统,开发者可以利用这些生态伙伴的技术快速甚至是低代码实现应用。例如,使用DSP Concepts公司提供的Audio Weaver工具,就可以跳过撰写源代码并设计音频DSP系统。这个功能齐全的开发工具是业界的黄金标准,它支持工程师通过调用和刷新xcore可执行项,就能在一块开发板上进行完整音频系统的设计、部署、调节和控制。

现场例证:观看XMOSDSP Concepts联合举办的网络研讨会

该网络研讨会由XMOSDSP Concepts联合举办,在这个简短的网络研讨会中,双方深入探讨了合作背后的细节,并探讨了XMOS高确定性、低延迟的xcore.ai平台与DSP ConceptsAudio Weaver软件工具配合,正在彻底改变音频和语音产品的开发过程。

xcore.ai多通道音频开发板可支持全高速USB操作、USB Audio Class 2.01.0MIDIHIDDFU等音频格式和版本。

该开发板集成了四个立体声音频DAC和两个四通道音频ADC,可同时支持8个双向音频流。它还包括用于S/PDIFMIDI输入和输出端口的电信号和光信号接口。将以下链接复制到浏览器,即可登录或者注册下载该网络研讨会:

https://www.xmos.com/develop/dsp#

DSP工具库

  • lib_dsp
  • lib_xcore_math —— 一个完整的数学函数库
  • lib_src —— 采样率转换工具库

用于语音应用的DSP

  • 双麦克风前端
  • 音频流水线功能包括回声消除、干扰消除和噪声抑制
  • I2SUSB接口,支持的异步采样率介于44.1 kHz – 192 kHz
  • 双向信号路径
  • 更多信息,请参见xcore-voice平台介绍;点击或复制以下链接到浏览器也可以了解详情:

XCORE-VOICE | XMOS

购买该开发套件或者索取xcore.ai样片

欢迎购买xcore-voice开发套件,仅需几个步骤几个搭建好自己的智能音频系统并开始应用的开发。

开发者资源

资源库

XMOS的资源库提供可重用的软件,并且可作为通用功能的源文件。

完整的数学模型和DSP函数库,包括整数、浮点数、矢量化和复杂运算。

采样率转换(SRC)工具库提供同步和异步音频采样率转换功能。

定点数字信号处理软件库,它实现了一套整常用的信号处理功能。


http://www.ppmy.cn/devtools/95186.html

相关文章

科研绘图系列:Python语言时间趋势图

介绍 不同指标在时间上的变化,可以用时间序列线图表示趋势。 加载Python包 import sys import pandas as pd import numpy as np import scipy as sp from scipy import stats import randomimport seaborn as sns import matplotlib.pyplot as plt from matplotl

疫情打卡健康评测系统

TOC springboot199疫情打卡健康评测系统 第1章 绪论 1.1 选题动因 到现在为止,互联网已经进入了千家万户,最普通的平民百姓也有属于自己的智能设备,计算机各种技术的储备也是相当的丰富,并且实现也是没有难度,各行…

vue使用海康视频web插件如何实现自适应

如果要实现自适应的话&#xff0c;就需要在不同的分辨率内设置不同的宽度和高度&#xff0c;可以监听当前屏幕的宽度和高度(可视区域的宽高)&#xff0c;划分不同的显示阶段 通过设置父级元素的宽度和高度实现子级视频的自适应 index.vue <template><div class&quo…

内部排序(插入、交换、选择)

一、排序的部分基本概念 1. 算法的稳定性 若待排序表中有两个元素 Ri 和 Rj &#xff0c;其对应的关键字相同即 keyi keyj&#xff0c;且在排序前 Ri 在 Rj 的前面&#xff0c;若使用某一排序算法排序后&#xff0c;Ri 仍然在 Rj 的前面&#xff0c;则称这个排序算法是稳定的…

Linux中conda的相关操作

安装Anaconda或Miniconda&#xff1a; 下载安装脚本&#xff1a;wget https://repo.anaconda.com/archive/Anaconda3-<version>-Linux-x86_64.sh或者wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh运行安装脚本&#xff1a;bash Anaconda3…

python单元测试及统计覆盖率

第1章&#xff1a;引言 1.1 单元测试的重要性 单元测试是软件开发过程中不可或缺的一部分。它确保了代码的每个独立单元&#xff08;通常是函数或方法&#xff09;按预期工作。通过单元测试&#xff0c;开发者可以&#xff1a; 快速定位问题&#xff1a;当测试失败时&#x…

快速排序基础

分区 此处的分区指的是从数组随机选取一个值&#xff0c;以其为轴&#xff0c;将比它小的值放到它左边&#xff0c;比它大的值放到它右边。分区的算法实现起来很简单&#xff0c;例子如下所示。假设有一个下面这样的数组。 从技术上来说&#xff0c;选任意值为轴都可以&#x…

ASP.NET Core项目实战:短信功能与分布式限流

在现代Web应用程序中&#xff0c;短信功能和分布式限流是两个重要的组件。短信功能常用于用户验证、通知等&#xff0c;而分布式限流则用于保护系统免受恶意请求的影响。本文将详细介绍如何在ASP.NET Core项目中实现这两个功能&#xff0c;包括技术选型、架构设计、代码实现等。…