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

Subversion Repositories nfcc

[/] [nfcc/] [trunk/] [rijndael/] [keyexpansion/] [Makefile] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 arif_endro
#- ------------------------------------------------------------------------
2
#- Copyright (C) 2010 Arif Endro Nugroho
3
#- All rights reserved.
4
#-
5
#- Redistribution and use in source and binary forms, with or without
6
#- modification, are permitted provided that the following conditions
7
#- are met:
8
#-
9
#- 1. Redistributions of source code must retain the above copyright
10
#-    notice, this list of conditions and the following disclaimer.
11
#- 2. Redistributions in binary form must reproduce the above copyright
12
#-    notice, this list of conditions and the following disclaimer in the
13
#-    documentation and/or other materials provided with the distribution.
14
#-
15
#- THIS SOFTWARE IS PROVIDED BY ARIF ENDRO NUGROHO "AS IS" AND ANY EXPRESS
16
#- OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
17
#- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
18
#- DISCLAIMED. IN NO EVENT SHALL ARIF ENDRO NUGROHO BE LIABLE FOR ANY
19
#- DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20
#- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
21
#- OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22
#- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
23
#- STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
24
#- ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
25
#- POSSIBILITY OF SUCH DAMAGE.
26
#-
27
#- End Of License.
28
#- ------------------------------------------------------------------------
29
#
30
# Need to FLATTENING the design before OCP and NERO
31
# Use x2y vst vst  
32
# then flatlo -r   # source is a result from x2y
33
# this two sequence will remove most warning/error message when
34
# performing LOON on the netlist.
35
#
36
# BOOM will optimize the logic
37
# BOOG will optimize/convert the logic into netlist
38
# LOON will optimize the netlist (this will report area/timing)
39
#
40
# VST is a circuit netlist file
41
# AP  is a circuit placement file (OCP/NERO create this file)
42
# VBE is alliance VHDL Behavioral Description file
43
 
44
VASYFLAGS = -V -B -I vhdl -a -p -o
45
BOOMFLAGS = -VP
46
BOOGFLAGS =
47
LOONFLAGS =
48
OCPFLAGS  = -v
49
NEROFLAGS = -V -G -6 -p
50
DRUCFLAGS =
51
S2RFLAGS  = -v
52
OCP       = ocp
53
NERO      = nero
54
DRUC      = druc
55
S2R       = s2r
56
VASY      = vasy
57
BOOM      = boom
58
BOOG      = boog
59
LOON      = loon
60
RM        = /bin/rm -vf
61
X2Y       = x2y
62
FLATLO    = flatlo
63
X2YFLAGS  = vst vst
64
FLATLOFLAGS    = -r
65
TOUCH     = touch
66
 
67
# Set-up TARGET variable respectively
68
%.ap:           TARGET = $(subst .ap,, $@)
69
%.cif:          TARGET = $(subst .cif,, $@)
70
%.vst:          TARGET = $(subst .vst,, $@)
71
%.flt:          TARGET = $(subst .flt,, $@)
72
%.flatten:      TARGET = $(subst .flatten,, $@)
73
 
74
all: sbox.vbe counter.vbe keyexpansion.vbe
75
 
76
%.vbe: %.vhdl
77
        @$(VASY) $(VASYFLAGS) $<
78
 
79
%.vst: %.vbe
80
        @$(BOOM) $(BOOMFLAGS) $(TARGET) $(TARGET)_o
81
        @$(BOOG) $(BOOGFLAGS) $(TARGET)_o
82
        @$(LOON) $(LOONFLAGS) $(TARGET)_o $(TARGET)
83
        -$(RM) $(TARGET)_o.*
84
 
85
%.flt: %.vbe
86
        @$(BOOM) $(BOOMFLAGS) $(TARGET)_model $(TARGET)_model_o
87
        @$(BOOG) $(BOOGFLAGS) $(TARGET)_model_o
88
        @$(LOON) $(LOONFLAGS) $(TARGET)_model_o $(TARGET)_model
89
        -$(RM) $(TARGET)_model_o.*
90
        @$(X2Y) $(X2YFLAGS) $(TARGET) $(TARGET)_m
91
        @$(FLATLO) $(FLATLOFLAGS) $(TARGET)_m $(TARGET)_o
92
        @$(LOON) $(LOONFLAGS) $(TARGET)_o $(TARGET)
93
        -$(RM) $(TARGET){_o,m}.*
94
        @$(TOUCH) $@
95
 
96
%.flatten: %.vst
97
        @$(X2Y) $(X2YFLAGS) $(TARGET) $(TARGET)_m
98
        @$(FLATLO) $(FLATLOFLAGS) $(TARGET)_m $(TARGET)_o
99
        @$(LOON) $(LOONFLAGS) $(TARGET)_o $(TARGET)
100
        -$(RM) $(TARGET){_o,m}.*
101
 
102
clean:
103
        @rm -vf *.dat *.gpl *.vhd *.vbe *.boom *.pat *.vst *.xsc *.ap *.cif *.drc done.* *.flt

powered by: WebSVN 2.1.0

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