Tesi Robotica Algoritmi ed architetture per la risoluzione di... | Page 57

3.2. CONVERSIONE C TO HARDWARE: HIGH LEVEL SYNTESIS 57 base alla luminosità(come abbiamo spiegato nel capitolo 2) si sceglie se andare nell’albero omogeneo oppure strutturato. Rispetto a FAST la soluzione proposta di AGAST non solo è veloce ma anche ottimale. 3.2 Conversione C to Hardware: High level syntesis Il nostro obiettivo è quello di far girare il codice C di agast5_8 su un FPGA Altera in modo da poter gestire un flussio video piuttosto che un’immagine. Per fare questo, dobbiamo innanzitutto convertire il nostro condice Ansi C in Verilog. Quindi: Come si può vedere dalla figura, per passare da Ansi C a Verilog abbiamo utilizzato un Framework che si chiama LegUp che ci permette di convertire frammenti di codice Ansi C in Verilog. Di seguito vedremo il codice Verilog di AGAST. Questo codice è stato realizzato partendo dal codice C sopra indicato e trasformandolo in codice verilog tramite Legup che nei prossimi capitoli spiegheremo. (Il codice sottostante è solo un’estrapolazione di quello originale) //Prendiamo in esame solo le porzioni di codice che ci interessano per la spiegazione //Per il codice completo si rimanda all’appendice /--------------------------------------------------------------------//