⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 command.log

📁 hdlc帧接收器 包含文件: 设计代码 测试代码 综合脚步 说明文档
💻 LOG
📖 第 1 页 / 共 5 页
字号:
#@ }#@ #@ define_proc_attributes close_mw_lib -hide_body     -info " Closes the milkyway library "     -define_args       {{-save "Save open cels" "" boolean {optional}}       {"" "libraries to be closed" "lib list" list {hidden optional}}}#@ #@ ###############################################################################@ #  PROCEDURE:   execute_command_and_create_cel_from_scratch #@ #  ABSTRACT:    This procedure executes the given command and creates the CEL#@ #               from scratch after executing this command.#@ ###############################################################################@ proc execute_command_and_create_cel_from_scratch {org_cmd_name args} {#@   global mw_create_cel_force#@   global mw_enable_auto_cel#@   global mw_force_auto_cel#@ #@   set lib [current_mw_lib]#@ #@   # If no MW lib, design is not from MW. Execute the original command #@   # and return.#@   if {$lib == ""} {#@     return [eval $org_cmd_name $args]#@   }#@ #@   # Get values of few variables.#@   set incr_mode $mw_create_cel_force#@   set mw_create_cel_force TRUE#@ #@   # Get auto cel mode, disable it temporarily if enabled.#@   set auto_cel_mode $mw_enable_auto_cel#@   set mw_enable_auto_cel FALSE#@ #@   # Check if the already existing CEL is auto-CEL.#@   set auto_cel 0#@   if {[is_cel_auto_cel]} {#@       set auto_cel 1#@   } elseif {![get_top_cel_mwid]} {#@       set auto_cel 1#@   }#@ #@ #@   # Run the original command, if not successful restore the incr_mode #@   # variable and return. No CEL is created.#@   if {![eval $org_cmd_name $args]} {#@     set mw_create_cel_force $incr_mode#@     set mw_enable_auto_cel $auto_cel_mode#@     return 0#@   }#@ #@   # Restore auto_cel mode#@   set mw_enable_auto_cel $auto_cel_mode#@ #@   # Now create auto or real CEL depending on what the original CEL was.#@   if {$auto_cel == "1"} {#@   # Force creation of auto-CEL, since commands other than read_def/pdef#@   # do not decouple CEL from DC.#@ #@   set mw_force_auto_cel TRUE#@     set cmd [format {save_mw_cel -auto}] #@   } else {#@       if [get_top_cel_mwid] {#@       set cmd [format {save_mw_cel -create}] #@       echo "Information: Command not supported by incr. update or write-thru."#@       echo "             Creating new CEL from scratch, old CEL will be closed."#@     }#@   }#@ #@   # Create the Auto CEL or normal CEL from scratch.#@   if {![uplevel #0 $cmd]} {#@     set mw_create_cel_force $incr_mode#@     set mw_force_auto_cel FALSE#@     return 0#@   }#@ #@   set mw_create_cel_force $incr_mode#@   set mw_force_auto_cel FALSE#@   return 1#@ }#@ #@ define_proc_attributes execute_command_and_create_cel_from_scratch -hidden     -hide_body#@ #@ ###############################################################################@ #  PROCEDURE:   read_def#@ #  ABSTRACT:    Wrapper around read_def to handle incremental update properly#@ #  if MW based read_def is used, bypass the wrapper#@ #  enable_milkyway_def_reader_writer must be TRUE and use_pdb_lib_format must#@ # be false for MW read_Def to be run, use wrapper if either condition fails#@ ###############################################################################@ rename -force dc_read_def org_read_def#@ icc_hide_cmd org_read_def#@ proc dc_read_def args {#@   parse_proc_arguments -args $args ra#@ #@   return [eval execute_command_and_create_cel_from_scratch "org_read_def" $args]#@ }#@ #@ define_proc_attributes dc_read_def -hide_body     -info " Read a def file "     -define_args       {{-design "name of design for which clusters are to be read" "" string {optional}}        {-quiet "do not print out any warnings" "" boolean {optional}}        {-verbose "print out more warnings" "" boolean {optional}}        {-allow_physical_cells "allow physical cells" "" boolean {optional}}        {-allow_physical_ports "allow physical ports" "" boolean {optional}}        {-allow_physical_nets "allow physical nets" "" boolean {optional}}        {-skip_signal_nets "skip signal nets" "" boolean {optional}}        {-incremental "incremental" "" boolean {optional}}        {-enforce_scaling "enforce_scaling" "" boolean {optional}}        {-move_bounds "move bounds" "" boolean {optional}}        {"" "input def file names" "input_def_file_name" string {required}}}#@ #@ ###############################################################################@ #  PROCEDURE:   read_pdef#@ #  ABSTRACT:    Wrapper around read_pdef to handle incremental update properly#@ ###############################################################################@ rename -force read_pdef org_read_pdef#@ icc_hide_cmd org_read_pdef#@ proc read_pdef args {#@   parse_proc_arguments -args $args ra#@   return [eval execute_command_and_create_cel_from_scratch "org_read_pdef" $args]#@ }#@ #@ define_proc_attributes read_pdef -hide_body     -info " Read a pdef file "     -define_args       {{-design "name of design for which clusters are to be read" "" string {optional}}        {-quiet "do not print out any warnings" "" boolean {optional}}        {-verbose "print out more warnings" "" boolean {optional}}        {-dont_update_core_area "do not overwrite the core area" "" boolean {optional}}        {-allow_physical_cells "allow physical cells" "" boolean {optional}}        {-allow_physical_ports "allow physical ports" "" boolean {optional}}        {-skip_signal_nets "skip signal nets" "" boolean {optional}}        {"" "input pdef file names" "file_name" string {required}}}#@ #@ #@ ###############################################################################@ #  PROCEDURE:   uniquify#@ #  ABSTRACT:    Wrapper around uniquify to handle incremental update properly#@ ###############################################################################@ rename -force uniquify org_uniquify#@ icc_hide_cmd org_uniquify#@ proc uniquify args {#@   parse_proc_arguments -args $args ra#@   return [eval execute_command_and_create_cel_from_scratch "org_uniquify" $args]#@ }#@ #@ define_proc_attributes uniquify -hide_body   -info " uniquify multiply instantiated designs"   -define_args    {{-force "force the uniquify_naming_style on all designs" "" boolean {optional}}     {-base_name "use this as the base name for new design names instead of original design name" "" string {optional}}     {-cell "force generation of new designs for these cells" "" list {optional}}     {-reference "force generation of new designs for all cells referencing this design" "" string {optional}}             {-new_name "use this name for the new design of the given cell" "" string {optional}}#@    }#@ #@ ###############################################################################@ #  PROCEDURE:   group#@ #  ABSTRACT:    Wrapper around group to handle incremental update properly#@ ###############################################################################@ rename -force group org_group#@ icc_hide_cmd org_group#@ proc group args {#@   parse_proc_arguments -args $args ra#@   return [eval execute_command_and_create_cel_from_scratch "org_group" $args]#@ }#@ #@ define_proc_attributes group -hide_body   -info " create new hierarchy"   -define_args    {{-except "cells not to be included in the group" "" list {optional}}#@     {-design_name "name of design created for new hierarchy" "" string {optional}}#@     {-cell_name "name of cell created for new hierarchy" "" string {optional}}#@     {-logic "group any combinational elements" "" boolean {optional}}#@     {-pla "group any PLA elements" "" boolean {optional}}#@     {-fsm "group all elements part of a finite state machine" "" boolean {optional}}#@     {-hdl_block "name of hdl_block to group" "" string {optional}}#@     {-hdl_bussed "group all bussed gates under this block" "" boolean {optional}}#@     {-hdl_all_blocks "group all hdl blocks under this block" "" boolean {optional}}#@     {-soft "set the group_name attribute" "" boolean {optional}}#@     {"" "cells to be included in the group" "" list {optional}}}#@ #@ ###############################################################################@ #  PROCEDURE:   copy_design#@ #  ABSTRACT:    Wrapper around copy_design to handle incremental update properly#@ ###############################################################################@ rename -force copy_design org_copy_design#@ icc_hide_cmd org_copy_design#@ proc copy_design args {#@   parse_proc_arguments -args $args ra#@   return [eval execute_command_and_create_cel_from_scratch "org_copy_design" $args]#@ }#@ #@ define_proc_attributes copy_design -hide_body   -info " copy_design"   -define_args    {{"" "List of designs to be copied" "design_list" list {required}}#@     {"" "Name of new design or target file" "target_name" string {required}}}#@ #@ ###############################################################################@ #  PROCEDURE:   create_design#@ #  ABSTRACT:    Wrapper around create_design to handle incremental update properly#@ ###############################################################################@ rename -force create_design org_create_design#@ icc_hide_cmd org_create_design#@ proc create_design args {#@   parse_proc_arguments -args $args ra#@   return [eval execute_command_and_create_cel_from_scratch "org_create_design" $args]#@ }#@ #@ define_proc_attributes create_design -hide_body   -info " Creates a design in dc_shell memory"   -define_args    {{"" "name of the design to create" "<design_name>" string {required}}#@     {"" "name of file for design; optional" "<file_name>" string {optional}}}#@ #@ ###############################################################################@ #  PROCEDURE:   reset_design#@ #  ABSTRACT:    Wrapper around reset_design to handle incremental update properly#@ ###############################################################################@ rename -force reset_design org_reset_design#@ icc_hide_cmd org_reset_design#@ proc reset_design args {#@   parse_proc_arguments -args $args ra#@   return [eval execute_command_and_create_cel_from_scratch "org_reset_design" $args]#@ }#@ #@ ###############################################################################@ #  PROCEDURE:   rename_design#@ #  ABSTRACT:    Wrapper around rename_design to handle incremental update properly#@ ###############################################################################@ rename -force rename_design org_rename_design#@ icc_hide_cmd org_rename_design#@ proc rename_design args {#@   parse_proc_arguments -args $args ra#@   return [eval execute_command_and_create_cel_from_scratch "org_rename_design" $args]#@ }#@ #@ define_proc_attributes rename_design -hide_body   -info " rename_design"   -define_args    {{"" "List of designs to be renamed" "design_list" list {required}}#@     {"" "Name of new design or target file" "target_name" string {required}}}#@ #@ }#@ #@ ###############################################################################@ # If we are in icc_shell (i.e. Galileo) then#@ # load the procedures to switch between DC and Milkyway collections.#@ # Set the default to MW collection unless otherwise specified.#@ ###############################################################################@ if { [string match -nocase {*icc_shell*} $synopsys_program_name] } {#@     # load the procedures that switch between DC and MW collections#@     source $synopsys_root/auxx/syn/collection_procs.tcl#@ #@     set CS mw #@ #@     # see if the user wants DC#@     if {! [catch {getenv USE_DC_COLLECTIONS_ONLY}] &&#@ 	  [getenv USE_DC_COLLECTIONS_ONLY] } {#@ 	set CS dc #@     }  #@ #@     # set the collection source now#@     redirect /dev/null {#@       if {[catch {set_collection_mode -handle $CS}]} {#@         catch {set_collection_option -handle $CS}#@       } #@     } #@     #@     unset CS#@ }#@ #@ ###############################################################################@ # procedure for route command #@ # echo the command to a temp tcl file for seperate process to pick up#@ ###############################################################################@ if { [string match -nocase {*icc_shell*} $synopsys_program_name] } {#@     rename -force route org_route#@     icc_hide_cmd org_route#@     proc route args {#@         set route_cmd_file_name ".route_cmd.tcl"#@         set route_cmd_temp_file_name ".route_cmd.tcl.temp"#@         set fp [open $route_cmd_file_name "w"]#@         set route_cmd [concat "sep_proc_route " $args " -child"]#@         puts $fp $route_cmd#@         close $fp#@         #@         uplevel #0 rename -force route route_temp_proc#@         uplevel #0 rename -force org_route route#@         set status  [ uplevel #0 route $args  ]#@         uplevel #0 rename -force route org_route#@         uplevel #0 rename -force route_temp_proc route#@         #@         if { [info exist status ] == 1 } {#@             return $status#@         }#@         return #@     }#@ }#@ #@ ###############################################################################@ # Tcl Command: set_ignore_cell#@ # Description: Load the command only in IC Compiler (icc_shell)#@ ###############################################################################@ if { [string match -nocase {*icc_shell*} $synopsys_program_name] } {#@     source $synopsys_root/auxx/syn/psyn/ideal_cell.tcl.e#@ }#@ #@ ###############################################################################@ # Tcl Command: check_physical_design#@ # Description: Load the command only in IC Compiler (icc_shell)#@ ###############################################################################@ if { [string match -nocase {*icc_shell*} $synopsys_program_name] } {#@     # Load the compiled Tcl byte-code:#@     source $synopsys_root/auxx/syn/psyn/check_physical_design_core.tbc#@     source $synopsys_root/auxx/syn/psyn/check_physical_design_utils.tbc#@     source $synopsys_root/auxx/syn/psyn/check_physical_design_flows.tbc#@     source $synopsys_root/auxx/syn/psyn/check_physical_design_reports.tbc#@     source $synopsys_root/auxx/syn/psyn/check_physical_design_ui.tbc#@ }#@ #@ ###############################################################################@ # ICC setup and hiding commands/procs etc#@ ###############################################################################@ #@ if { [string match -nocase {*icc_shell*} $synopsys_program_name] } {#@ set  save_mw_cel_lib_setup  TRUE#@ set  auto_restore_mw_cel_lib_setup FALSE#@ #@ alias create_wiring_keepout create_wiring_keepouts#@ alias get_wiring_keepout get_wiring_keepouts#@ alias get_placement_keepout get_placement_keepouts#@ alias create_placement_keepout create_placement_keepouts#@ #@ icc_hide_cmd execute_command_and_create_cel_from_scratch#@ icc_hide_cmd dc_read_def#@ icc_hide_cmd enable_unsupported_commands#@ icc_hide_cmd read_edif#@ icc_hide_cmd read_sverilog#@ icc_hide_cmd read_vhdl#@ icc_hide_cmd onCreateBaseTopLevel#@ icc_hide_cmd set_collection_mode#@ icc_hide_cmd return_dc_collection#@ icc_hide_cmd return_mw_collection#@ icc_hide_cmd all_cluster_cells#@ icc_hide_cmd all_clusters#@ icc_hide_cmd change_selection_no_core#@ icc_hide_cmd change_selection_too_many_objects#@ icc_hide_cmd remove_ccl_attribute#@ icc_hide_cmd remove_ccl_str_in_pattern_list#@ set mw_use_pdb_lib_format true#@ }#@ #@ #@ # -- End source /tools2/synopsys/syn_vY-2006.06/auxx/syn/.dc_procs.tcl#@ #@ # Temporary fix for the LMC_HOME variable- set it to an empty string #@ #@ if { [catch {getenv LMC_HOME } __err ] != 0 } {#@   setenv LMC_HOME ""#@ }#@ #@ #@ ##@ ##@ #       Site-Specific Variables#@ ##@ #       These are the variables that are most commonly changed at a#@ #       specific site, either upon installation of the Synopsys software,#@ #       or by specific engineers in their local .synopsys files.#@ ##@ ##@ #@ # from the System Variable Group #@ set link_force_case  "check_reference"#@ set link_library  { * your_library.db }#@ set physical_library ""#@ #@ set search_path [list . ${synopsys_root}/libraries/syn ${synopsys_root}/dw/sim_ver ${synopsys_root}/dw/syn_ver]

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -