Stowarzyszenie Inżynierów i Techników Mechaników Polskich
Abstract
In this paper, experimental results of a proposed hardware acceleration of feature extraction and data classifiers for multimedia are presented. This hardware is based on multi-core architecture connected with a mesh Network on Chip (NoC). The cores in the system execute both data classifiers and feature extraction for audio and image data. Using various meta heuristics the system is optimized with regards to different data communication criteria. The system was implemented on an FPGA platform with use of ImpulseC hardware description language.W artykule zostały zeprezentowane wyniki eksperymentalne dotyczące sprzętowego przyspieszania ekstrakcji cech i klasyfikacji danych multimedialnych. Opracowane rozwiązanie sprzętowe bazuje na architekturze wielordzeniowej, w której każdy blok realizuje przypisaną mu statycznie funkcjonalność. Rdzenie połączone są ze sobą za pomocą sieci wewnątrzukładowej (ang. Network on Chip, NoC) o architekturze siatki. W artykule opisano pokrótce autorskie oprogramowanie służące do generowania kodu sieci wewnątrzukładowej. Graficzny interfejs użytkownika został zaprezentowany na rys. 1. Narzędzie ma za zadanie dokonywać odwzorowania wybranych funkcjonalności do poszczególnych rdzeni z wykorzystaniem takich meta-heurystyk jak algorytmy genetyczne, symulowane wyżarzanie, poszukiwanie losowe czy algorytmu gradientowego. Jako kryterium optymalizacji można wybrać minimalizację całkowitego przesyłu danych, minimalizację maksymalnej liczby danych transmitowanych przez pojedyncze łącze, a także minimalizację odchylenia standardowego rozmiaru strumieni transmitowanych przez poszczególne łącza. Przykładowe wyniki optymalizacji losowej dla sieci wewnątrzukładowej zostały przedstawione w tab. 1, natomiast wyniki optymalizacji dla sieci wewnątrzukładowej wykorzystującej inne podejścia - w tab. 2. Dla systemu zoptymalizowanego w ten sposób został wygnerowany opisujący go kod w języku ImpulseC, który następnie posłużył do syntezy sprzętowej na układzie FPGA z rodziny Xilinx Virtex 5. Zajętość układu XC5VSX50T dla trzech wykorzystanych klasyfikatorów została przedstawiona na rys. 3. Z kolei tab. 3 przedstawia liczbę zasobów wykorzystanych przez narzędzie syntezy wysokiego poziomu dla tych klasyfikatorów. Technika przedstawiona w publikacji umożliwia określenie warunków i ograniczeń implementacji sprzętowej systemu służącego klasyfikacji danych multimedialnych