@@ -37,35 +37,24 @@ read_verilog -defer -sv {{ name }}
37
37
chparam{% for key , value in params .items () %} -set {{ key }} {{ value }}{% endfor %}
38
38
{% endif %}
39
39
40
- {% if top %} # Top-level specification
40
+ # Top-level specification and Syntesis
41
+ {% if family in ['ice40' , 'ecp5' ] %}
42
+ synth_{{ family }} -top {{ top }} -json {{ project }}.json
43
+ {% elif family in ['xc6s' , 'xc6v' , 'xc5v' , 'xc4v' , 'xc3sda' , 'xc3sa' , 'xc3se' , 'xc3s' , 'xc2vp' , 'xc2v' , 'xcve' , 'xcv' ] %}
44
+ synth_xilinx -top {{ top }} -family {{ family }}
45
+ write_edif -pvector bra {{ project }}.edif -ise
46
+ {% elif family %}
47
+ synth_xilinx -top {{ top }} -family {{ family }}
48
+ write_edif -pvector bra {{ project }}.edif
49
+ {% else %}
41
50
synth -top {{ top }}
51
+ write_verilog {{ project }}.v
42
52
{% endif %}
43
-
44
- synth_{{ family }} -top {{ top }} -json {{ project }}.json
45
53
'
46
54
{% if hooks %} {{ hooks.postsyn | join('\n') }}{% endif %}
47
55
"
48
56
{% endif %}
49
57
50
- {#
51
- #SYNTH=
52
- #WRITE=
53
- #if [[ $BACKEND == "vivado" ]]; then
54
- # SYNTH="synth_xilinx -top $TOP -family $FAMILY"
55
- # WRITE="write_edif -pvector bra $PROJECT.edif"
56
- #elif [[ $BACKEND == "ise" ]]; then
57
- # SYNTH="synth_xilinx -top $TOP -family $FAMILY -ise"
58
- # WRITE="write_edif -pvector bra $PROJECT.edif"
59
- #elif [[ $BACKEND == "nextpnr" ]]; then
60
- # SYNTH="synth_$FAMILY -top $TOP -json $PROJECT.json"
61
- #elif [[ $BACKEND == "verilog-nosynth" ]]; then
62
- # WRITE="write_verilog $PROJECT.v"
63
- #else
64
- # SYNTH="synth -top $TOP"
65
- # WRITE="write_verilog $PROJECT.v"
66
- #fi
67
- #}
68
-
69
58
{% if 'par' in steps %} # Place and Route
70
59
71
60
CONSTRAINTS="{{ constraints | join(' ') }}"
0 commit comments