为了实现便携式实时处理的实用型脑-机接口(BMI),提出了一种基于概率神经网络(PNN)的锋电位信号实时分类算法,并完成了该算法基于现场可编程门阵列(FPGA)的实现.该算法通过训练数据的快速导入完成PNN的训练,再由PNN实现锋电位的分类工作.文中通过调用FPGA片上DSP48Es资源实现单精度浮点的乘加运算,采用并行流水结构加速向量间距离的计算,通过查找表和坐标旋转数字计算方法完成PNN激活函数的准确逼近.实验结果表明,在完成高达93.82%准确率的情况下,基于FPGA的PNN实现方法比基于Matlab的方法快47.43倍,达到了便携式实时处理的设计要求.
In order to develop a portable brain-machine interface(BMI) for practical real-time applications,a real-time sorting algorithm of spike potentials based on the probabilistic neural network(PNN) is proposed and is implemented on the FPGA(Field Programmable Gate Array).In this algorithm,the network is trained via the quick loading of training data,and the spike potentials are sorted out through the trained network.In the FPGA architecture,a floating-point multiply-add operation is implemented by a on-chip DSP48Es;the calculation of vector distance is accelerated by adopting a pipelined parallel architecture;and the lookup table as well as the CORDIC(Coordinate Rotation Digital Computer) method is employed to achieve an accurate approximation of the PNN activation function.Experimental results show that the FPGA-based implementation of PNN runs 47.43 times faster than the Matlab-based one with the same accuracy being up to 93.82%,which means that the portability and the real-time processing of BMI are successfully realized.