Title :
A Classification Processor for a Support Vector Machine with Embedded DSP Slices and Block RAMs in the FPGA
Author :
Ago, Yuki ; Nakano, Kaoru ; Ito, Yu
Author_Institution :
Dept. of Inf. Eng., Hiroshima Univ., Higashi-Hiroshima, Japan
Abstract :
This paper presents an FPGA implementation of a Support Vector Machine (SVM) classification using the DSP slices and block RAMs in the Xilinx Virtex-6 family FPGA. In our approach, the SVM classification is performed by the multiple DSPs. Our implementation supports 3 types of kernel functions, the sigmoid kernel, the polynomial kernel, and the RBF kernel. We connect DSPs with the built-in cascade logic in a DSP slice. Thus, our architecture consists of a cascaded DSP pipeline and process the input data with this pipeline. The number of DSP slices included in this cascade connection is equal to the number of the support vectors in the SVM. We have implemented the processor core which includes 768 DSPs for SVM classification in a Xilinx Virtex-6 FPGA XC6VLX240T-FF1156. The implementation results show that it can be implemented in the FPGA with 768 DSP48E1 slices, 800 block RAMs and 17680 slices. It runs in 370.096MHz clock frequency and can evaluate the SVM classification for 128-dimensional feature space data 2.89×106 times per second.
Keywords :
cascade networks; digital signal processing chips; field programmable gate arrays; learning (artificial intelligence); multilayer perceptrons; pattern classification; polynomials; radial basis function networks; random-access storage; support vector machines; DSP48E1; RBF kernel; SVM; XC6VLX240T-FF1156; Xilinx Virtex-6 family FPGA; block RAM; built-in cascade logic; cascaded DSP pipeline; classification processor; clock frequency; embedded DSP slices; feature space data; frequency 370.096 MHz; machine learning algorithms; multi layer perceptron; polynomial kernel; processor core; sigmoid kernel; support vector machine; Computer architecture; Digital signal processing; Field programmable gate arrays; Kernel; Random access memory; Support vector machines; Vectors; Classification; Embedded DSP slices; Embedded block RAMs; FPGA; Support vector machine;
Conference_Titel :
Embedded Multicore Socs (MCSoC), 2013 IEEE 7th International Symposium on
Conference_Location :
Tokyo
DOI :
10.1109/MCSoC.2013.30