############################################################
## Copyright: 2010 Integrated Sytems Laboratory, ETH Zurich
## http://www.iis.ee.ethz.ch/~sha3
############################################################
## simple script
# radical clean
sh rm -rf WORK/*
# Adjust according tothe num CPUs available
# regular machines have just 2. Arinas have 16 !!
set_host_options -max_cores 2
# less radical clean
remove_design -design
## set the targets to be the worst case library to begin with
set target_library [list fsd0a_a_generic_core_ss1p08v125c.db ]
set link_library [list "*" dw_foundation.sldb fsd0a_a_generic_core_ss1p08v125c.db ]
analyze -f vhdl { ../sourcecode/blake32Pkg_small.vhd \
../sourcecode/roundreg32_small.vhd \
../sourcecode/controller_small.vhd \
../sourcecode/blake_small.vhd }
## Elaborate
elaborate blake
## constraints
## we need 15.9ns for 200 Mbps
set CLK 15.5
create_clock -name CLKxCI -period $CLK CLKxCI
set_input_delay 0 -clock CLKxCI [remove_from_collection [all_inputs] CLKxCI]
set_output_delay 0 -clock CLKxCI [all_outputs]
set_ideal_network RSTxRBI
## driving cell
set_driving_cell -no_design_rule -library fsd0a_a_generic_core_ss1p08v125c -lib_cell BUFX8 [remove_from_collection [all_inputs] CLKxCI]
# simple load
set_load 0.050 [all_outputs]
set_max_area 0
uniquify
compile_ultra
write_file -h -f ddc -o DDC/blake_small.ddc
define_name_rules verilog -add_dummy_nets
change_names -h -rules verilog
write -h -f verilog -o netlists/blake_small.v