View | Details | Raw Unified | Return to bug 654
Collapse All | Expand All

(-)a/common/cmake/devices.cmake (-1 / +2 lines)
Lines 2390-2396 function(generate_pinmap) Link Here
2390
2390
2391
  add_custom_command(
2391
  add_custom_command(
2392
    OUTPUT ${GENERATE_PINMAP_NAME}.json
2392
    OUTPUT ${GENERATE_PINMAP_NAME}.json
2393
    COMMAND ${QUIET_CMD} ${YOSYS} -p "write_json ${CMAKE_CURRENT_BINARY_DIR}/${GENERATE_PINMAP_NAME}.json" ${SOURCE_FILES}
2393
    COMMAND ${QUIET_CMD} ${YOSYS} -p \"proc $<SEMICOLON> write_json ${CMAKE_CURRENT_BINARY_DIR}/${GENERATE_PINMAP_NAME}.json\" -l ${CMAKE_CURRENT_BINARY_DIR}/${GENERATE_PINMAP_NAME}.json.log ${SOURCE_FILES}
2394
   # COMMAND ${QUIET_CMD} ${YOSYS} -p "write_json ${CMAKE_CURRENT_BINARY_DIR}/${GENERATE_PINMAP_NAME}.json" ${SOURCE_FILES}
2394
    DEPENDS
2395
    DEPENDS
2395
      ${QUIET_CMD}
2396
      ${QUIET_CMD}
2396
      ${YOSYS}
2397
      ${YOSYS}
(-)a/xc/xc7/yosys/synth.tcl (+2 lines)
Lines 132-137 read_verilog -specify -lib $::env(TECHMAP_PATH)/cells_sim.v Link Here
132
#
132
#
133
133
134
techmap -map  $::env(TECHMAP_PATH)/carry_map.v
134
techmap -map  $::env(TECHMAP_PATH)/carry_map.v
135
clean_processes
135
write_json $::env(OUT_JSON).carry_fixup.json
136
write_json $::env(OUT_JSON).carry_fixup.json
136
exec $::env(PYTHON3) $::env(UTILS_PATH)/fix_xc7_carry.py < $::env(OUT_JSON).carry_fixup.json > $::env(OUT_JSON).carry_fixup_out.json
137
exec $::env(PYTHON3) $::env(UTILS_PATH)/fix_xc7_carry.py < $::env(OUT_JSON).carry_fixup.json > $::env(OUT_JSON).carry_fixup_out.json
137
design -push
138
design -push
Lines 175-180 opt_expr -undriven Link Here
175
opt_clean
176
opt_clean
176
177
177
setundef -zero -params
178
setundef -zero -params
179
clean_processes
178
stat
180
stat
179
181
180
# TODO: remove this as soon as new VTR master+wip is pushed: https://github.com/SymbiFlow/vtr-verilog-to-routing/pull/525
182
# TODO: remove this as soon as new VTR master+wip is pushed: https://github.com/SymbiFlow/vtr-verilog-to-routing/pull/525
(-)a/xc/xc7/yosys/utils.tcl (+14 lines)
Lines 2-7 Link Here
2
# Due to the fact that Yosys doesn't support floating parameter values
2
# Due to the fact that Yosys doesn't support floating parameter values
3
# i.e. treats them as strings, the parameter values need to be multiplied by 1000
3
# i.e. treats them as strings, the parameter values need to be multiplied by 1000
4
# for the PLL registers to have correct values calculated during techmapping.
4
# for the PLL registers to have correct values calculated during techmapping.
5
6
proc clean_processes {} {
7
    proc_clean
8
    proc_rmdead
9
    proc_prune
10
    proc_init
11
    proc_arst
12
    proc_mux
13
    proc_dlatch
14
    proc_dff
15
    proc_memwr
16
    proc_clean
17
}
18
5
proc multiply_param { cell param_name multiplier } {
19
proc multiply_param { cell param_name multiplier } {
6
    set param_value [getparam $param_name $cell]
20
    set param_value [getparam $param_name $cell]
7
    if {$param_value ne ""} {
21
    if {$param_value ne ""} {

Return to bug 654