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

4.2. QUICK USER GUIDE 4.2 69 Quick User Guide LegUp accetta un file ANSI C come input , cioè , non sono necessari parole chiave specifiche , e produce un file di descrizione hardware Verilog come output che può essere sintetizzata su un FPGA Altera . Eventuali istruzioni printf C vengono convertiti in Verilog come dichiarazioni $Display che vengono stampati durante una simulazione ModelSim , rendendo possibile compilare lo stesso file C con gcc e controllare la sua uscita contro la simulazione. LegUp ha due di erenti flussi di sintesi : • Hardware Puro : sintetizza l’intero file C in hardware senza soft processor • Hybrid : esegue una porzione del file C sul soft processor TigerMIPS e sintetizzare il resto in hardware. Il flusso di sintesi LegUp è guidato dal Makefile nella directory esempi. La cartella examples contiene programmi di benchmark campione C che compongono la suite di test LegUp. Ci sono due Makefile globali: • Makefile.config : Questo Makefile definisce tutte le variabili globali Makefile default. Gli utenti possono accedere a questo Makefile per modificare le seguenti variabili : – FAMILY : specifica la famiglia di dispositivi target FPGA , sia : CycloneII (default) o StratixIV – LEGUP_SDC_PERIOD : specifica il periodo di vincolo di clock di destinazione ( ns ) . Il valore predefinito è 15ns per CycloneII e 5ns per StratixIV . • Makefile.common : Questo è il Makefile centrale che è incluso da tutte le altre Makefile nella directory esempi. Questo file include Makefile.config . Il Makefile contine: 1 NAME=array ifeq ($(NO_OPT),) NO_OPT=1 endif ifeq ($(NO_INLINE),)