Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create dc_setup.tcl #778

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 62 additions & 0 deletions syn/dc/dc_setup.tcl
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
puts "Info: Running script [info script]"
source "scripts/common/saed32.tcl"
source "scripts/common/design.tcl"
source "scripts/dc/dc_setup_filenames.tcl"

if {![shell_is_in_topographical_mode]} {
puts "Error: dc_shell must be run in topographical mode."
exit 1
}

###############################################################################
# Milkyway library setup
###############################################################################
# Milkyway variable settings
set mw_reference_library ${MW_REFERENCE_LIB_DIRS}
set mw_design_library ${MW_LIBRARY_NAME}
set mw_site_name_mapping { {CORE unit} {Core unit} {core unit} }

# Only create new Milkyway design library if it doesn't already exist
if {![file isdirectory $mw_design_library ]} {
create_mw_lib \
-technology $TECH_FILE \
-mw_reference_library $mw_reference_library \
$mw_design_library
} else {
# If Milkyway design library already exists, ensure that it is consistent with specified Milkyway reference libraries
set_mw_lib_reference \
$mw_design_library \
-mw_reference_library $mw_reference_library
}

open_mw_lib $mw_design_library

check_library > ${REPORTS_DIR}/${CHECK_LIBRARY_REPORT}

set_tlu_plus_files \
-max_tluplus $TLUPLUS_MAX_FILE \
-min_tluplus $TLUPLUS_MIN_FILE \
-tech2itf_map $MAP_FILE

check_tlu_plus_files

###############################################################################
# Library setup
###############################################################################
set_app_var search_path ". ${ADDITIONAL_SEARCH_PATH} $search_path"
set_app_var target_library ${TARGET_LIBRARY_FILES}
set_app_var synthetic_library {dw_minpower.sldb dw_foundation.sldb}
set_app_var link_library "* $target_library $ADDITIONAL_LINK_LIB_FILES $synthetic_library"
foreach {max_library min_library} $MIN_LIBRARY_FILES {
set_min_library $max_library -min_version $min_library
}

###############################################################################
# Don't use file
###############################################################################
if {[file exists [which ${LIBRARY_DONT_USE_FILE}]]} {
puts "Info: Sourcing script file [which ${LIBRARY_DONT_USE_FILE}]\n"
source -echo -verbose ${LIBRARY_DONT_USE_FILE}
}

puts "Info: Completed script [info script]"