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),)