Opisano proces generacji syntezowalnego kodu w językach opisu sprzętu przy wykorzystaniu programowej aplikacji. Działanie aplikacji pokazano na przykładzie sprzętowego modułu kodera kodów korekcyjnych z rodziny BCH. Ukazano proces generacji, rozpoczynający się opisem algorytmu, przez reprezentacje pośrednie i tworzenie wynikowego kodu w językach VHDL i Verilog. Artykuł zawiera wprowadzenie do tematyki pamięci NAND-Flash, opis właściwości kodów BCH oraz algorytmów zastosowanych do ich dekodowania. Szczegółowo opisano aplikację generatora kodu źródłowego w językach HDL, proces generacji i tworzenia kodu źródłowego.
EN
This article describes an idea of generating synthesisable HDL module code by a software generator application. As an example of complete data flow - from idea, through intermediate representation, to VHDL / Verilog code - an error correction algorithm of BCH (Bose-Chaudhuri-Hocquenghem) was choosen. The article introduces the NAND-Flash architecture together with its key features, gives description of BCH algorithm and the theory behind it, covers generator application's overall data flow together with some implementation details and shortly summarises proposed solution's features and advantages.
Dynamic Time Warping procedure is widely used in pattern matching applications, such as speaker recognition systems. It allows to align elements of nonlinear time sequences, such as acoustic feature sequences of utterances that have different length. Software implementation of DTW algorithm requires a lot of computation power and thus it can occupy the most of available CPU time, leaving little resources to perform other necessary tasks. On the other hand, putting whole DTW into hardware is a complex and difficult process, mainly due to high memory requirements. Embedded memory blocks available in modern FPGAs cannot satisfy this requirements, thus external RAM chips have to be used. This paper proposes hardware-software solution with partitioning between embedded software application and hardware component. Altera FPGA device, with NiosII-based software system is used to implement the procedure.
PL
Procedura dynamicznej normalizacji czasowej (DTW) jest powszechnie stosowanym narzędziem w problemach dopasowania wzorców, takich jak problem rozpoznawania mówcy. Procedura jest wymagająca obliczeniowo i ma regularną strukturę, natomiast wymaga dużych zasobów pamięci I skomplikowanych algorytmów dostępu do niej. W artykule przedstawiono programowo-sprzętową implementację algorytmu DTW, w której powtarzalne obliczenia realizowane są w sprzęcie, natomiast dostępem do pamięci zarządza mikroprocesor.
JavaScript jest wyłączony w Twojej przeglądarce internetowej. Włącz go, a następnie odśwież stronę, aby móc w pełni z niej korzystać.