121 lines
3.0 KiB
Tcl
121 lines
3.0 KiB
Tcl
proc tproc_msg { args } {
|
|
puts "INFO: $args"
|
|
}
|
|
|
|
|
|
proc tproc_apply_tlup { args } {
|
|
|
|
global GEV TVAR
|
|
|
|
set options(-tlup) ""
|
|
parse_proc_arguments -args $args options
|
|
|
|
tproc_msg "Beginning tproc_apply_tlup:"
|
|
tproc_msg " -tlup = $options(-tlup)"
|
|
|
|
## -----------------------------------------------------------------------------
|
|
## set the TLU+
|
|
## -----------------------------------------------------------------------------
|
|
|
|
set set_tlu_plus_files_cmd ""
|
|
|
|
switch $options(-tlup) {
|
|
TLUP_MIN_MAX_EMF {
|
|
set_tlu_plus_files \
|
|
-max_tluplus $TVAR(tech,tlup_emf_file,RC_MAX_1) \
|
|
-min_tluplus $TVAR(tech,tlup_emf_file,RC_MIN_1) \
|
|
-tech2itf_map $TVAR(tech,layer_map_mdb_2_itf)
|
|
|
|
set set_tlu_plus_files_cmd [list \
|
|
set_tlu_plus_files \
|
|
-max_tluplus $TVAR(tech,tlup_emf_file,RC_MAX_1) \
|
|
-min_tluplus $TVAR(tech,tlup_emf_file,RC_MIN_1) \
|
|
-tech2itf_map $TVAR(tech,layer_map_mdb_2_itf) \
|
|
]
|
|
}
|
|
TLUP_MIN_MAX {
|
|
set_tlu_plus_files \
|
|
-max_tluplus $TVAR(tech,tlup_file,RC_MAX_1) \
|
|
-min_tluplus $TVAR(tech,tlup_file,RC_MIN_1) \
|
|
-tech2itf_map $TVAR(tech,layer_map_mdb_2_itf)
|
|
|
|
set set_tlu_plus_files_cmd [list \
|
|
set_tlu_plus_files \
|
|
-max_tluplus $TVAR(tech,tlup_file,RC_MAX_1) \
|
|
-min_tluplus $TVAR(tech,tlup_file,RC_MIN_1) \
|
|
-tech2itf_map $TVAR(tech,layer_map_mdb_2_itf) \
|
|
]
|
|
}
|
|
default {
|
|
tproc_msg "Unrecognized value for -tlup = $options(-tlup)"
|
|
}
|
|
}
|
|
|
|
foreach item $set_tlu_plus_files_cmd {
|
|
tproc_msg "$item"
|
|
}
|
|
|
|
}
|
|
|
|
define_proc_attributes tproc_apply_tlup \
|
|
-info "Pre-packaged TLU+ settings." \
|
|
-define_args {
|
|
{-tlup "TLU+ options" AString string required}
|
|
}
|
|
|
|
|
|
|
|
proc tproc_dct_setup_mw {} {
|
|
|
|
global TVAR GEV
|
|
global mw_reference_library
|
|
global mw_design_library
|
|
|
|
set mw_reference_library $TVAR(lib,mw_reflist)
|
|
set mw_design_library $GEV(design_lib)
|
|
|
|
if { [file exists $mw_design_library] } {
|
|
file delete -force $mw_design_library
|
|
}
|
|
|
|
create_mw_lib \
|
|
-technology $TVAR(tech,astro_techfile) \
|
|
-mw_reference_library $mw_reference_library \
|
|
$mw_design_library
|
|
|
|
open_mw_lib $mw_design_library
|
|
|
|
tproc_apply_tlup -tlup TLUP_MIN_MAX
|
|
|
|
report_tlu_plus_files
|
|
}
|
|
|
|
|
|
proc tproc_dct_tlup_settings {top_design_name} {
|
|
global TVAR GEV
|
|
set work_dir [pwd]
|
|
set tech_dir ""
|
|
set rcxt_dir ""
|
|
set lib_dir ""
|
|
|
|
set TVAR(lib,mw_reflist) [list \
|
|
]
|
|
|
|
set GEV(dst_dir) ${work_dir}
|
|
set GEV(design_lib) $GEV(dst_dir)/${top_design_name}
|
|
set TVAR(tech,astro_techfile) ${tech_dir}/milkyway/top.tf
|
|
set TVAR(tech,tlup_emf_file,RC_MAX_1) ${rcxt_dir}/top.tluplus
|
|
set TVAR(tech,tlup_emf_file,RC_MIN_1) ${rcxt_dir}/top.tluplus
|
|
set TVAR(tech,tlup_file,RC_MAX_1) ${rcxt_dir}/top.tluplus
|
|
set TVAR(tech,tlup_file,RC_MIN_1) ${rcxt_dir}/top.tluplus
|
|
set TVAR(tech,layer_map_mdb_2_itf) ${rcxt_dir}/milkyway/top
|
|
|
|
return 1
|
|
}
|
|
|
|
|
|
proc check_log {log_file} {
|
|
puts "INFO: Check log file ${log_file} ..."
|
|
return
|
|
}
|