Implementation of Pipelined FastICA on FPGA for Real-Time Blind Source Separation

Fast independent component analysis (FastICA) algorithm separates the independent sources from their mixtures by measuring non-Gaussian. FastICA is a common offline method to identify artifact and interference from their mixtures such as electroencephalogram (EEG), magnetoencephalography (MEG), and electrocardiogram (ECG). Therefore, it is valuable to implement FastICA for real-time signal processing. In this paper, the FastICA algorithm is implemented in a field-programmable gate array (FPGA), with the ability of real-time sequential mixed signals processing by the proposed pipelined FastICA architecture. Moreover, in order to increase the numbers precision, the hardware floating-point (FP) arithmetic units had been carried out in the hardware FastICA. In addition, the proposed pipeline FastICA provides the high sampling rate (192 kHz) capability by hand coding the hardware FastICA in hardware description language (HDL). To verify the features of the proposed hardware FastICA, simulations are first performed, then real-time signal processing experimental results are presented using the fabricated platform. Experimental results demonstrate the effectiveness of the presented hardware FastICA as expected.

[1]  Charoensak Charayaphan,et al.  A single-chip FPGA design for real-time ICA-based blind source separation algorithm , 2005, 2005 IEEE International Symposium on Circuits and Systems.

[2]  D. Chakrabarti,et al.  A fast fixed - point algorithm for independent component analysis , 1997 .

[3]  Te-Won Lee,et al.  Independent Component Analysis , 1998, Springer US.

[4]  Peter M. Athanas,et al.  Quantitative analysis of floating point arithmetic on FPGA based custom computing machines , 1995, Proceedings IEEE Symposium on FPGAs for Custom Computing Machines.

[5]  Anis Nurashikin Nordin,et al.  Design of FPGA ICA for hyperspectral imaging processing , 2001, SPIE Defense + Commercial Sensing.

[6]  Gert Cauwenberghs,et al.  Mixed-signal real-time adaptive blind source separation , 2004, 2004 IEEE International Symposium on Circuits and Systems (IEEE Cat. No.04CH37512).

[7]  Erkki Oja,et al.  Independent component approach to the analysis of EEG and MEG recordings , 2000, IEEE Transactions on Biomedical Engineering.

[8]  A.K. Barros,et al.  Single channel speech recovery by coding , 2004, 2004 IEEE International Joint Conference on Neural Networks (IEEE Cat. No.04CH37541).

[9]  P Berg,et al.  A multiple source approach to the correction of eye artifacts. , 1994, Electroencephalography and clinical neurophysiology.

[10]  Aapo Hyvärinen,et al.  Fast and robust fixed-point algorithms for independent component analysis , 1999, IEEE Trans. Neural Networks.

[11]  Jen-Tzung Chien,et al.  A new independent component analysis for speech recognition and separation , 2006, IEEE Transactions on Audio, Speech, and Language Processing.

[12]  Jagath C. Rajapakse,et al.  Neural networks in FPGAs , 2002, Proceedings of the 9th International Conference on Neural Information Processing, 2002. ICONIP '02..

[13]  Hairong Qi,et al.  An FPGA implementation of parallel ICA for dimensionality reduction in hyperspectral images , 2004, IGARSS 2004. 2004 IEEE International Geoscience and Remote Sensing Symposium.

[14]  Soo-Young Lee,et al.  FPGA implementation of ICA algorithm for blind signal separation and adaptive noise canceling , 2003, IEEE Trans. Neural Networks.

[15]  R N Vigário,et al.  Extraction of ocular artefacts from EEG using independent component analysis. , 1997, Electroencephalography and clinical neurophysiology.

[16]  Tian Lan,et al.  Salient EEG Channel Selection in Brain Computer Interfaces by Mutual Information Maximization , 2005, 2005 IEEE Engineering in Medicine and Biology 27th Annual Conference.

[17]  B.J. Culpepper,et al.  Enabling computer decisions based on EEG input , 2003, IEEE Transactions on Neural Systems and Rehabilitation Engineering.

[18]  Guido D. Salvucci,et al.  Ieee standard for binary floating-point arithmetic , 1985 .

[19]  Erkki Oja,et al.  Independent component analysis: algorithms and applications , 2000, Neural Networks.