yosys/tests/xsthammer/run-xst.sh

77 lines
1.3 KiB
Bash
Raw Normal View History

2013-06-09 18:40:20 -05:00
#!/bin/bash
if [ $# -eq 0 ]; then
echo "Usage: $0 <job_id>" >&2
exit 1
fi
job="$1"
set --
2013-06-10 14:07:22 -05:00
set -e
mkdir -p xst xst_temp/$job
cd xst_temp/$job
2013-06-09 18:40:20 -05:00
cat > $job.xst <<- EOT
run
-ifn $job.prj
-ifmt mixed
-ofn $job
-ofmt NGC
-p xc6vlx75t-2-ff784
-top $job
-opt_mode Speed
-opt_level 1
-power NO
-iuc NO
-keep_hierarchy NO
-rtlview Yes
-glob_opt AllClockNets
-read_cores YES
-write_timing_constraints NO
-cross_clock_analysis NO
-hierarchy_separator /
-bus_delimiter <>
-case maintain
-slice_utilization_ratio 100
-bram_utilization_ratio 100
-dsp_utilization_ratio 100
-fsm_extract YES -fsm_encoding Auto
-safe_implementation No
-fsm_style lut
-ram_extract Yes
-ram_style Auto
-rom_extract Yes
-shreg_extract YES
-rom_style Auto
-auto_bram_packing NO
-resource_sharing YES
-async_to_sync NO
-use_dsp48 auto
-iobuf NO
-max_fanout 100000
-bufg 32
-register_duplication YES
-register_balancing No
-optimize_primitives NO
-use_clock_enable Auto
-use_sync_set Auto
-use_sync_reset Auto
-iob auto
-equivalent_register_removal YES
-slice_utilization_ratio_maxmargin 5
EOT
2013-06-09 18:40:20 -05:00
cat > $job.prj <<- EOT
verilog work "../../rtl/$job.v"
EOT
2013-06-10 09:17:09 -05:00
. /opt/Xilinx/14.2/ISE_DS/settings64.sh
2013-06-09 18:40:20 -05:00
xst -ifn $job.xst
netgen -w -ofmt verilog $job.ngc $job
cp $job.v ../../xst/$job.v
2013-06-09 18:40:20 -05:00
exit 0
2013-06-09 18:40:20 -05:00