OpenCores
URL https://opencores.org/ocsvn/timerocd/timerocd/trunk

Subversion Repositories timerocd

[/] [timerocd/] [trunk/] [src/] [Makefile] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 dewhisna
#
2
# TimerOCD Makefile for building/simulating with ghdl/gtkwave
3
#
4
#       Copyright (C) 2015 Donna Whisnant/Dewtronics.
5
#       Contact: http://www.dewtronics.com/
6
#
7
#       This file may be used under the terms of the GNU Lesser General Public License
8
#       version 3.0 as published by the Free Software Foundation and appearing
9
#       in the files lgpl-3.0.txt/gpl-3.0.txt included in the packaging of this file.
10
#       Please review the following information to ensure the GNU Lesser General
11
#       Public License version 3.0 requirements will be met:
12
#       https://www.gnu.org/licenses/lgpl-3.0.html
13
#       Attribution requested, but not required.
14
#
15
#       Target Device: Xilinx Spartan-6 XC6SLX9-2-TQG144
16
#               Using Numato Mimas Spartan 6 FPGA Development Board
17
#               http://numato.com/mimas-spartan-6-fpga-development-board.html
18
#
19
 
20
# project name
21
PROJECT=TimerOCD
22
 
23
# vhdl files
24
FILES = TimerOCD.vhd \
25
                spi_slave.vhd \
26
                ../xilinx/TimerOCD/ipcore_dir/timer_memblk.vhd \
27
                ../xilinx/TimerOCD/ipcore_dir/timerCT_memblk.vhd \
28
                ../xilinx/TimerOCD/ipcore_dir/cmpFreqData_memblk.vhd \
29
                ../xilinx/TimerOCD/ipcore_dir/cmpOnData_memblk.vhd \
30
                ../xilinx/TimerOCD/ipcore_dir/InterpolateMultAdd.vhd
31
 
32
# testbench
33
SIMTOP = timerocd_testbench
34
SIMFILES = testbench/TimerOCD_testbench.vhd
35
 
36
# Simu break condition
37
#GHDL_SIM_OPT   = --assert-level=error --stop-time=1000ms --disp-time --stats
38
#GHDL_SIM_OPT   = --assert-level=warning --stop-time=1000ms --disp-time --stats
39
GHDL_SIM_OPT    = --assert-level=error --stop-time=1000ms --stats
40
 
41
SIMDIR = simu
42
 
43
XILINX_SRC_PATH = /opt/Xilinx/14.7/ISE_DS/ISE/vhdl/src
44
 
45
#----------------------------------------------------------
46
 
47
MV      = mv -f
48
MKDIR   = mkdir -p
49
 
50
GHDL_CMD        = ghdl
51
GHDL_FLAGS      = --ieee=synopsys --warn-no-vital-generic -fexplicit -P$(SIMDIR)
52
 
53
VIEW_CMD        = /usr/bin/gtkwave
54
 
55
#----------------------------------------------------------
56
 
57
 
58
$(SIMDIR):
59
        $(MKDIR) $(SIMDIR)
60
 
61
#----------------------------------------------------------
62
#
63
# Note: The Xilinx ieee library will not compile under ghdl, using synopsys via GHDL_FLAGS above instead:
64
#
65
$(SIMDIR)/synopsys-obj93.cf:
66
        $(GHDL_CMD) -i $(GHDL_FLAGS) --work=synopsys --workdir=$(SIMDIR) $(XILINX_SRC_PATH)/synopsys/*.vhd
67
 
68
synopsys:       $(SIMDIR)/synopsys-obj93.cf
69
 
70
$(SIMDIR)/ieee-obj93.cf:        synopsys
71
        $(GHDL_CMD) -i $(GHDL_FLAGS) --work=ieee --workdir=$(SIMDIR) $(XILINX_SRC_PATH)/ieee/*.vhd
72
 
73
#ieee:  $(SIMDIR)/ieee-obj93.cf
74
ieee:
75
 
76
#----------------------------------------------------------
77
 
78
$(SIMDIR)/xilinxcorelib-obj93.cf:       ieee
79
        $(GHDL_CMD) -i $(GHDL_FLAGS) --work=XilinxCoreLib --workdir=$(SIMDIR) $(XILINX_SRC_PATH)/XilinxCoreLib/*.vhd
80
 
81
xilinxcorelib:  $(SIMDIR)/xilinxcorelib-obj93.cf
82
 
83
#----------------------------------------------------------
84
 
85
$(SIMDIR)/unisim-obj93.cf:      ieee
86
        $(GHDL_CMD) -i $(GHDL_FLAGS) --work=unisim --workdir=$(SIMDIR) $(XILINX_SRC_PATH)/unisims/*.vhd $(XILINX_SRC_PATH)/unisims/primitive/*.vhd
87
 
88
unisim: $(SIMDIR)/unisim-obj93.cf
89
 
90
#----------------------------------------------------------
91
 
92
$(SIMDIR)/$(SIMTOP):    $(SIMDIR) $(FILES) $(SIMFILES) xilinxcorelib unisim
93
        $(GHDL_CMD) -i $(GHDL_FLAGS) --workdir=$(SIMDIR) --work=work $(SIMFILES) $(FILES)
94
        $(GHDL_CMD) -m $(GHDL_FLAGS) --workdir=$(SIMDIR) --work=work $(SIMTOP)
95
        $(MV) $(SIMTOP) $(SIMDIR)/$(SIMTOP)
96
 
97
all:    $(SIMDIR)/$(SIMTOP)
98
 
99
$(SIMDIR)/$(SIMTOP).vcdgz:      $(SIMDIR)/$(SIMTOP)
100
        @$(SIMDIR)/$(SIMTOP) $(GHDL_SIM_OPT) --vcdgz=$(SIMDIR)/$(SIMTOP).vcdgz
101
 
102
run:    $(SIMDIR)/$(SIMTOP).vcdgz
103
 
104
view:
105
        gunzip --stdout $(SIMDIR)/$(SIMTOP).vcdgz | $(VIEW_CMD) --vcd
106
 
107
clean:
108
        $(GHDL_CMD) --clean --workdir=$(SIMDIR) --work=work
109
        $(GHDL_CMD) --clean --workdir=$(SIMDIR) --work=unisim
110
        $(GHDL_CMD) --clean --workdir=$(SIMDIR) --work=XilinxCoreLib
111
        $(GHDL_CMD) --clean --workdir=$(SIMDIR) --work=ieee
112
        $(GHDL_CMD) --clean --workdir=$(SIMDIR) --work=synopsys
113
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.