기계학습 방법의 하나인 SVM은 뛰어난 일반화 성능으로 영상처리 분야에서 많이 사용하고 있다. 하지만 SVM을 이용한 시스템에서 미리 학습된 데이터가 아닌 다른 데이터를 이용하려하면 새로 학습을 시켜야 하는 경우가 생긴다. 특히, 임베디드 환경에서는 이러한 상황에서 학습 시간이 오래 걸려 SVM을 적절히 이용하지 못하는 경우가 있다. 본 논문에서는 이러한 문제점을 해결하기 위하여 SVM의 학습 및 분류를 모두 수행할 수 있도록 하나의 FPGA로 구현하였다. SVM 연산의 복잡성으로 인해 생기는 반복연산을 병렬처리를 통하여 해결하고 커널 사용으로 생기는 지수 연산을 변형하여 고정 소수점 연산이 가능하도록 하였다. 제안하는 하드웨어는 Xilinx사의 ZC 706보드에 구현하였고, 구현한 FPGA의 검증을 위하여 TSR 알고리즘을 이용하였다. 구현한 하드웨어는 100 MHz의 주파수로 동작하며, 2천개의 데이터를 이용한 학습 시 약 5sec가 소요되고 1360 X 800 해상도에서 분류 시 약 16.54msec가 소요됨을 확인했다.
본 연구는 문제점을 해결하기 위하여 SVM의 학습과 분류를 모두 수행할 수 있도록 하나의 FPGA로 구현했다. SVM 연산의 복잡성으로 인하여 생기는 반복연산을 병렬처리를 통해 해결하고 커널 사용으로 생기는 지수 연산을 변형하여 고정 소수점 연산이 가능하게 했다.