###############################################################################
# Configuration file for running the MCNC benchmarks through the AP flat 
# placement reconstruction full legalizer.
#
# The AP flow requires that each circuit contains fixed blocks and is fixed
# to a specific device size. The device sizes here were chosen to match the
# device sizes of the default VTR flow.
###############################################################################

# Path to directory of circuits to use
circuits_dir=benchmarks/blif/wiremap6

# Path to directory of architectures to use
archs_dir=arch/timing

# Add architectures to list to sweep
arch_list_add=k6_frac_N10_40nm.xml

# Add circuits to list to sweep
circuit_list_add=apex4.pre-vpr.blif
circuit_list_add=ex5p.pre-vpr.blif
circuit_list_add=frisc.pre-vpr.blif

# Constrain the circuits to their devices
circuit_constraint_list_add=(apex4.pre-vpr.blif,    device=mcnc_medium)
circuit_constraint_list_add=(ex5p.pre-vpr.blif,   device=mcnc_small)
circuit_constraint_list_add=(frisc.pre-vpr.blif,    device=mcnc_medium)

# Constrain the circuits to their channel widths
#       1.3 * minW
circuit_constraint_list_add=(apex4.pre-vpr.blif,    route_chan_width=78)
circuit_constraint_list_add=(ex5p.pre-vpr.blif,   route_chan_width=68)
circuit_constraint_list_add=(frisc.pre-vpr.blif,    route_chan_width=96)

# Read in the flat placement files
circuit_constraint_list_add=(apex4.pre-vpr.blif,    read_flat_place=../../../../../flatrecon_full_legalizer/constraints/apex4.fplace)
circuit_constraint_list_add=(ex5p.pre-vpr.blif,   read_flat_place=../../../../../flatrecon_full_legalizer/constraints/ex5p.fplace)
circuit_constraint_list_add=(frisc.pre-vpr.blif,   read_flat_place=../../../../../flatrecon_full_legalizer/constraints/frisc.fplace)


# Parse info and how to parse
parse_file=vpr_ap_reconstruction.txt

# How to parse QoR info
qor_parse_file=qor_ap_flatrecon_fl_fixed_chan_width.txt

# Pass requirements
pass_requirements_file=pass_requirements_ap_reconstruction.txt

# Pass the script params while writing the vpr constraints.
script_params=-starting_stage vpr -track_memory_usage --analytical_place --ap_detailed_placer none --ap_full_legalizer flat-recon

