summaryrefslogtreecommitdiff
path: root/n/asserv/src/counter/xilinx/Makefile
blob: bbee31a829e43b9077d16cf639ee450b458c25df (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
HDL_FILES = counter_top.v quad_decoder.v quad_filter.v spi_output.v
TOP = counter_top
PART = xc9500
DEVICE = xc9572-15-PC44
UCF_FILE = counter_top.ucf

FITTER_IC = 36
FITTER_PC = 25
FITTER_FLAGS = -ofmt verilog -optimize speed -htmlrpt -loc on -slew fast -init \
	       low -inputs $(FITTER_IC) -pterms $(FITTER_PC) -power std \
	       -localfbk -pinfbk

XST_OPTIONS_FILE = __projnav/$(TOP).xst

all: fit xst

xst: $(TOP).ngc
fit: $(TOP).vm6

%.ngc: $(HDL_FILES:%=../%) $(XST_OPTIONS_FILE)
	xst -intstyle ise -ifn $(XST_OPTIONS_FILE) -ofn $(TOP).syr

%.ngd: %.ngc $(UCF_FILE:%=../%)
	ngdbuild -dd _ngo -uc $(UCF_FILE:%=../%) -p $(PART) $< $@

%.vm6: %.ngd Makefile
	cpldfit -p $(DEVICE) $(TOP).ngd

.PRECIOUS: %.ngc %.ngd %_map.ncd %.ncd %.twr %.vm6 %.jed

clean: $(TOP).clean

%.clean:
	rm -f $*.lso $*.prj $*.sprj $*.ana $*.cmd_log
	rm -f $*.stx $*.ucf.untf $*.mrp $*.nc1 $*.ngm $*.prm $*.lfp
	rm -f $*.placed_ncd_tracker $*.routed_ncd_tracker
	rm -f $*.pad_txt $*.twx *.log $*.dhp
	rm -f $*.ngr $*.ngc $*.ngd $*.syr $*.bld $*.pcf
	rm -f $*_map.mrp $*_map.ncd $*_map.ngm $*.ncd $*.pad
	rm -f $*.par $*.xpi $*_pad.csv $*_pad.txt $*.drc $*.bgn
	rm -f $*.xml $*_build.xml $*.rpt $*.gyd $*.mfd $*.pnx
	rm -f $*.vm6 $*.jed $*.err $*.ER result.txt tmperr.err *.bak
	rm -f impactcmd.txt
	rm -rf xst _ngo $*_html