当前位置:首页 > 工业控制 > 电子设计自动化

  摘 要: 提出了利用2个麦克风基于FPGA的声源定位的方法。具体通过基于相位变换改进的互相关方法成功在低信噪比(10 dB)的噪声环境下完成声源定位。利用同样的算法和硬件结构,可以在1片FPGA芯片上实现5组并行的时域处理的系统,而且每个麦克风的功耗只有77 mW~108 mW。
关键词: 声源定位;时延估计;FPGA

  实时声源定位在许多方面得到了应用,例如声音的识别和电话会议,可以利用阵列麦克风来实现对多个声源信号的获取和并行处理[1-3]。由于处理多路语音信号需要多个处理器,使得其实现费用昂贵,即便是使用DSP,系统也会带来很大的功耗,因而限制了其在许多实际中的应用。例如Brown大学发展的大规模麦克阵列系统利用多个DSP处理器和缓冲器来实现声源的定位,每个麦克的功耗达到了400 mW。这大大超过了一些便携式设备(PDA和手机)的功耗,因此最好的解决办法是设计专用芯片。
  本文将阐述声源定位系统在FPGA中的实现,为专用芯片提供一个可行性参考,具有很好的商业应用价值。以前采用DSP[4]或是DSP+FPGA[5]实现多路声源信号的定位,而本设计的整个定位系统除了前端的模拟部分外其余部分均在FPGA中实现。采取有效的算法后,整个硬件实现的功耗可以控制在77 mW~108 mW之间。
1 声源定位的算法
  现有许多算法[1-4]实现声源定位,包括基于信号子空间的方法(例如MUSIC算法)和空间似然方法[2,4]等,最为常用的方法是估计信号的对应的麦克对到达延时(TDOA)[3]估计方法。该方法的每一组麦克对将声源定位在3维空间的一个双曲面上,这样通过多个麦克对确定的双曲面的交点能有效地实现声源的定位。TDOA估计方法已进行了很多研究[3,6],最为普通的是广义互相关GCC(Generalized Cross Correlation)方法[6]。与其他的方法相比,基于GCC的方法计算量小、计算效率高。
  假设2个麦克各自接收的信号分别为m1(t)和m2(t)(包括噪声、回响和声音的延时信号)。常用的估计延时的方法是互相关方法:
  

   
  PHAT权系数对应的是相位变换,在回响环境中效果明显[1,3,6]。UCC权系数为1,对应的是单纯的互相关而没有经过滤波处理。
离散信号的GCC表示为:

  如果采用方波作为补偿函数,(4)式可以写成:
  

  与(4)式相比,(5)式用来估计TDOA的好处在于计算量的减少,而且在低的信噪比下具有更好的性能,所以本文采用的是(5)式在FPGA中的实现。
2 FPGA的实现
  设计中只考虑最简单的一对麦克风的TDOA的估计,每个麦克风接收的信号经过放大、带通滤波后以20 kHz的频率进行采样,每个采样的数据宽度为24位。取量化后的高8位送往FPGA(Xilinx Virtex II 2000)中进行运算。尽管只讨论了1对麦克风的情况,多个麦克风对也能在同一个FPGA中实现(本文将会在后面具体介绍)。
  输入的采样信号分别存储在2个Buffer里(Buffer的大小为256~1 024个采样点),然后将输出信号经过汉宁窗滤波,将数据转化为16位的浮点数存储在FFT的Buffer中,FFT模块将各自的Buffer中的数据进行FFT运算,如图1所示。

  在FPGA的实现过程中采用CORDIC算法,它将傅里叶变换的复数表达形式转换成幅度和相位表达形式,在能够减少计算量的同时不增加硬件的资源。2路信号的幅度和相位计算出来后利用(5)式得到TDOA的估计,如图2所示。估计的过程涉及到根据(5)式搜索最大的τ,搜索的范围从-30 Ts~30 Ts(步进为采样周期Ts),ε=0.5。为了实现TDOA的实时估计,硬件部分主要由3部分组成:输入信号采集部分、FFT的计算及幅相转换部分、TDOA的估计部分。2个Buffer已经能够满足GCC前端数据缓存的要求,但考虑到CORDIC算法的误差,设计中多用了1个Buffer储存数据的复数形式,为系统的误差分析提供数据,确保定位精度。


3 实验结果
在实验中Buffer的大小为1 024位,对应的时间缓存时间为50 ms。麦克风对按前面介绍的方法安置。第一个实验是对固定声源的定位,讲话人在房间内固定的地方说话,如图3所示。


要注意保持麦克风对与讲话者嘴的高度一致。将麦克风得到的数据经过放大、滤波、采样和FPGA处理。系统噪声由麦克风、放大器或滤波器等器件引入,信噪比为30 dB。利用麦克风获取的50 ms的信号帧,分别用GCC和PHAT的权值来估计讲话者的TDOA。将每帧的到达时间时延τ转换成波达方向,其中,v表示声音的传播速度(取345 m/s),d表示2个麦克风之间的距离(d=0.4 m)。
  通过DOA的估计和实际的DOA来计算DOA的误差,实际的DOA可以通过讲话者在环境的实际位置得到。DOA误差如图4所示。利用PHAT权值的TDOA定位精度要比UCC的好,因此试验中利用的是PHAT权值。为了得到基于FPGA的声源定位系统在运动的声源和不同背景噪声下的性能,本文利用PHAT权系数分别进行实验。如图5所示,讲话者从一个地方移动到另外一个地方,整个移动持续1 min,讲话者始终面对着麦克风对。


分别在信噪比为30 dB、20 dB、10 dB、0 dB的条件下对2个不同的讲话者做试验,当信噪比为30 dB时,噪声只由传感器和信号处理系统自身引入;当信噪比为20 dB、10 dB、0 dB时,则通过提供一个高斯噪声源来提供,通过调整噪声的强度可以实现信噪比的变化。信噪比为30 dB的DOA误差如图6(a)所示,在不同的信噪比条件下,0°的位置具有共同的峰值,但是随着信噪比的降低(20 dB和10 dB分别对应图6(b)和图6(c)),误差越来越大,当降到0 dB时起不到定位的作用,如图6(d)所示。


实时声源定位系统在Xilinx公司的xc3s1000 FPGA中实现,按文中提出的算法和实现方法可以实现10 dB信噪比以上的声源定位,整个系统具有很好的鲁棒性。通常的处理多对麦克风对的信号算法常常利用DSP,然而功耗的需求以及外围设备的复杂使得DSP在许多场合受到限制。利用本文介绍的算法,在FPGA Virtex II Pro-70中并行处理6个TDOA估计模块,时钟选取为10 MHz,功耗可以控制在0.776 W~1.074 W之间,试验消耗的逻辑门为1 192 793。通过流水线处理,如果系统的时钟为100 MHz,在1块FPGA中能并行处理50个TDOA估计模块,不过功耗要增大到7.76~10.74 W之间。由于Virtex II Pro-70有足够的存储空间,因此输入Buffer部分无需额外的逻辑门。与其他的方法相比,如大型麦克阵列每个麦克的功耗为400 mW[5],本文的方法的平均功耗要小得多(每个麦克77~108 mW),为减少VLSI电路的功耗提供了一个切实可行的途径。

参考文献
[1] AARABI P,MAHDAVI A.The relation between speech segment selectivity and time delay estimation accuracy. In Proceedings of ICASSP,May 2002.
[2] AARABI P,ZAKY S. Robust sound localization using mult-source audiovisual information fusion. Information Fusion, 2001,3(2):209-223.
[3] BRANDSTEIN M S, SILVERMAN H. A robust method for speech signal time-delay estimation in reverberant rooms.IN Proceedings of ICASSP,May 1997.
[4] PONCA M, SCHAUER C. FPGA implementation of a spike-based sound localization system. In 5th International Conference on Artificial Neural Networks and genetic Algorithms, 2001.
[5] SILVERMAN H F,PATTERSON W R,FLANAGAN J L.The huge microphone array.Brown University Technical Report,May 1996.
[6] KNAPP C H, CARTER G.The generalized correlation method for estimation of time delay.IEEE Tarnsactions on ASSP,1976,24(4):320-327.

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

Bluespec支持加速器功能的RISC-V处理器将Achronix的FPGA转化为可编程SoC

关键字: RISC-V处理器 FPGA SoC

为无处不在的端侧设备插上AI的翅膀,AMD发布第二代Versal™ 自适应 SoC

关键字: AMD FPGA 自适应SoC AI 边缘计算

Pmod接口可以说是数字电路板的连接革命。随着科技的飞速发展,数字电路板间的通信与连接技术也在不断创新和进步。Pmod接口,作为一种新兴的数字接口标准,正逐渐成为数字电路板间通信的桥梁,为电子设备的连接和通信带来了革命性...

关键字: pmod接口 FPGA 数字电路板

近日举办的GTC大会把人工智能/机器学习(AI/ML)领域中的算力比拼又带到了一个新的高度,这不只是说明了通用图形处理器(GPGPU)时代的来临,而是包括GPU、FPGA和NPU等一众数据处理加速器时代的来临,就像GPU...

关键字: FPGA AI 图形处理器

当我们提到成本优化型FPGA,往往与简化逻辑资源、有限I/O和较低制造工艺联系在一起。诚然,在成本受限的系统设计中,对于价格、功耗和尺寸的要求更为敏感;但随着一系列创新应用的发展、随着边缘AI的深化,成本优化型FPGA也...

关键字: AMD FPGA Spartan 边缘计算

全球领先的高性能现场可编程门阵列(FPGA)和嵌入式FPGA(eFPGA)半导体知识产权(IP)提供商Achronix Semiconductor公司宣布,该公司参加了由私募股权和风险投资公司Baird Capital举...

关键字: FPGA 智能汽车 eFPGA

全新 FPGA 能为嵌入式视觉、医疗、工业互联、机器人与视频应用提供高数量 I/O、功率效率以及卓越的安全功能

关键字: FPGA 嵌入式视觉 机器人

Altera致力于为客户提供端到端的FPGA、易于使用的AI、软件和弹性供应链。

关键字: FPGA AI

在半导体领域,大部分对于AI的关注都集中在GPU或专用AI加速器芯片(如NPU和TPU)上。但事实证明,有相当多的组件可以直接影响甚至运行AI工作负载。FPGA就是其中之一。

关键字: FPGA AI 半导体

半导体产品老化是一个自然现象,在电子应用中,基于环境、自然等因素,半导体在经过一段时间连续工作之后,其功能会逐渐丧失,这被称为功能失效。半导体功能失效主要包括:腐蚀、载流子注入、电迁移等。其中,电迁移引发的失效机理最为突...

关键字: 半导体 电迁移 FPGA
关闭
关闭