论文部分内容阅读
近年来,声纹识别作为生物特征识别的一种,愈发受到人们的关注,并随着技术的发展,逐渐应用到日常生活的各种场景中,而在大多数情况下,i-vector是用于文本无关声纹识别的最佳性能模型。本文着眼于i-vector声纹识别算法的FPGA加速工作展开。首先,基于TIMIT数据集对i-vector软件算法进行量化分析,提出了统计量求平均的方法使数据规模统一,并且利用数据归一化缩小数据的范围,同时,使用MATLAB定点仿真工具对i-vector软件算法进行定点化。其次,对i-vector算法中关键的复杂运算子模块进行设计与实现,包括:高性能可配置矩阵乘法模块,能够通过简单配置适应i-vector算法中的6种规模3种数据调度方式的矩阵乘法,并且通过流水化实现接近峰值的性能;基于部件复用对细粒度并行的Cholesky分解进行了优化,通过数据重用对上三角矩阵细粒度流水并行进行优化,实现了计算时延与硬件资源消耗的降低;设计了针对流水结构的可变逐栈调试模块,能帮助快速定位问题,降低开发难度。最后,通过对i-vector软件算法各步骤运行时间的分析与计算访存的分析,确定了加速器的三段流水结构,并对三个流水栈分别进行设计和性能评估,确定最终的设计方案,并与CPU平台性能做了对比分析,本设计在时间性能方面最高能达到1.59倍的加速比,在功耗效率性能方面最高能达到14.19倍的加速比。