Professional Documents
Culture Documents
RHSC Debug - For Internal Use Only - : 1 © 2018 ANSYS, Inc. ANSYS Confidential
RHSC Debug - For Internal Use Only - : 1 © 2018 ANSYS, Inc. ANSYS Confidential
RHSC Debug - For Internal Use Only - : 1 © 2018 ANSYS, Inc. ANSYS Confidential
>>> os.system('date')
Mon Sep 10 21:22:07 PDT 2018 → MS10
0
>>> os.system('domainname’)
sjo → SO
0
>>> cm_enable_dev_mode('SOMS10')
>>>
• For debug session, following option will help
set_obfuscate_names(True)
– SOTJ26 is the code
– first and last letter from SJO
– first letter from date, first letter from month , and date
options['analysis_options'].force_num_pp_parts = 1
options['analysis_options'].force_num_pp_parts = 1
Or
options['layout_options'].force_xt_partitions="1x1"
options['layout_options'].force_xt_partitions="5x5"
Type “plot voltage -name C642/C618092 -sv”, then voltage waveform window will appear
apache.pwr:
351799 230.300000 -328.300000 1 1 2.00001 0.100219 10479 10479 -1 2e+08 2 0 0 0.214752 TMRBUFCLXPA 400 387.5 550 479.384 -9 -9 0 -1 17
mstate.out
# Time: start_time end_time dt (ps)
# <inst_ID> <sample_ID> <state1> <switchT1> ... <stateN> <switchTN>
351799 188 c01 1659 c10 4161 c01 6659 c10 9161 c01 11659 c10 14161 c01 16659 c10 19161 c01 21659 c10 24161 c01 26659 c10 29161 c01 31659 c10
34161 c01 36659 c10 39161 c01 41659 c10 44161 c01 46659 c10 49161
➢ aqua cell.current
Select Sample ID
user_conditions = {'from_pin' : Pin('A'), 'from_dir' : 'f', 'to_pin' : Pin('Y'), 'to_dir' : 'f', 'input_transition_time' : 3.875e-10, 'pi_c1': 1.803-14, 'pi_c2' : 1.966e-
13, 'pi_r' : 47.58, 'voltage' : 1.35, 'temperature' : 25.0, 'pg_pin' : Pin('VDD'), 'debug_level' : 0, 'include_other_voltages' : False}
dc_result = dv_get_cell_apl_dynamic_currents(dv, Cell(cell_name), user_conditions)
plot(dc_result)
user_conditions = {'from_pin' : Pin('A'), 'from_dir' : 'f', 'to_pin' : Pin('Y'), 'to_dir' : 'f', 'input_transition_time' : 3.875e-10, 'pi_c1': 1.803-14, 'pi_c2' : 1.966e-
13, 'pi_r' : 47.58, 'voltage' : 1.35, 'temperature' : 25.0, 'pg_pin' : Pin('VSS'), 'debug_level' : 0, 'include_other_voltages' : False}
dc_result = dv_get_cell_apl_dynamic_currents(dv, Cell(cell_name), user_conditions)
plot(dc_result)
Instead of plotting waveform, you can write out to file using following command.
>>> write_to_file(‘apl_current.wf',data=dc_results)
include('./input_files.py')
options = get_default_options()
avm_files = [ './avm.conf', ]
lv = db.create_liberty_view(avm_config_file_names=avm_files, liberty_file_names=lib_files, tag='lv', options=options)
ここまでは設定
APL波形確認
des = dv.get_lib_design()
cell=des.get_cell('HS1P0352W42B04C_RM1R')
セル名指定
apl = cell.lookup_apl_dynamic_current(des,1.32,25)
ここで(des,1.32,25)の1.32は電圧、25は温度を指定しています
table = apl['dynamic_currents'][37517][0]['table']
wave_state0 = table.get_waveform_from_index(0,0)
plot(wave_state0.get_waveform())
STEP2. Run below perl script on text file generated in 1st step and specify voltage value
❑ With Multi-bit flip-flop, it is assumed all switching flops in the bank are switching at
the same time (controlled by the same clock pin).
❑ With Multi-bit flip-flop, it is assumed all flops in the bank are electrically identical (all
flops share the same APL current profile).
❑ SH does not have local ground scaling mechanism , It sinks total ground current at
driver ground .
options = get_default_options()
options = get_default_options(legacy_mode=True)
Same!!
Click to add text
options = get_default_options(redhawk_mode=True)
>>> gp_dict(options['multichip_options'].options_)
{'cp_model_ranges': {'max_ind': 1000.0, 'max_r': 1000000.0, 'min_ind': 1e-15, 'min_r': 1e-06}}
>>> gp_dict(options['multichip_coupling_options'].options_)
{'coupling_layer_number': 1}
create_activity_profile_view(design_view, vcd_files, timing_window_files=None, sdc_files=None, rtl_namemap_files=None, bus_mode=False, physical_mode=False, top_n_cycles_for_density=100, num_x_tiles=10, num_y_tiles=10, voltage_levels=None, virtual_supplies=None,
supply_connection_rules=None, options=None, tag='fsdb_profile')
FSDB profiler.
create_analysis_view(simulation_view=None, scenario_views=None, tag='av', duration=None, step_size=None, options=None, start_from=None, keep_stats_level=None, ramp_up_nets=None, off_state_nets=None, repeat_simulation_time=None, initial_condition='avg_dc',
delay_simulation_start=None, current_type_for_dc=None, delay_stats=None, current_snap_method=None, enable_start_from=False, current_derate_mode=None, battery_levels=None, symmetric_repeat=None, simulate_system_response=False, scheduler_barrier=None)
Create an AnalysisView in this database.
create_chunked_data(tag='cd', save_to_db=True)
Create a ChunkedData object in this database.
create_design_view(lib_views=None, tag='dv', top_cell_name=None, lef_files=None, def_files=None, gds_files=None, external_instances=None, macro_views=None, phymodel_views=None, skip_nets=None, focus_pg_nets=None, options=None, stackup_file=None,
gds_layer_map_file=None, rename_pg_nets=None, tech_view=None, tech_layer_map_file=None, hdl_view=None, design_ecos=None, merge_clean_layers=None, lef_def_layer_map_file=None, scan_chain_data=None, default_tech_lef=None, custom_cell_phantoms=None)
Create a DesignView object in this database.
create_dynamic_power_view(timing_view, extract_view=None, external_parasitics=None, analysis_duration=None, time_interval_length=None, tag='dpwr', voltage_levels=None, temperature=25.0, disable_clocks=None, clock_source_toggle_rates=None, options=None,
activity_level=None, mode_definitions=None, instance_settings=None, gate_vcd_mode='off', prefer_gate_vcd_clock_period=True, rtl_vcd_mode='on', infer_icg_enable_signals_from_rtl_vcd=False, infer_icg_enable_signals_from_fanin_prop=False, zero_delay_mode=False,
process_corner='default_process', value_change_data=None, virtual_supplies=None, supply_connection_rules=None, transition_time_precedence=None, event_time_precedence=None, generate_instance_events_only=False, limit_net_cap_to_pin_max_cap=False,
include_input_only_events=True, calculation_settings=None, results_spec=None, default_input_pin_transition_time=1e-11)
Create a dynamic PowerView.
create_electromigration_view(analysis_view, tag='emv', mode='DC', temperature_em=None, delta_t_rms=None, thermal_view=None, context_factors=None, calculate_fit=False, temperature_fit=None, fit_life_time=None, fit_mode='basic', fit_tech_file=None,
em_ruleset_names=None, em_mission_factor=None, options=None, em_settings=None, fit_settings=None, create_fit_heatmap=True)
Create an ElectromigrationView in this database.
create_extract_view(design_view, tech_view, tag='ev', mode='pg', tech_layer_map_file=None, temperature=None, calculate_spr=False, options=None, probes=None, rollup_settings=None, extract_inductance=False, inductance_layers=None, enable_via_clustering=None,
tsv_subckts=None, bump_equal_potential_radius=None)
Create an ExtractView object in this database.
create_hdl_view(tag, options)
Create an HDLView object in this database.
create_multichip_analysis_view(multichip_views, tag='mcav', duration=None, step_size=None, options=None, start_from=None, keep_stats_level=None, ramp_up_nets=None, off_state_nets=None, repeat_simulation_time=None, initial_condition='avg_dc',
delay_simulation_start=None, current_type_for_dc=None, delay_stats=None, current_snap_method=None, enable_start_from=False, current_derate_mode=None, battery_levels=None, symmetric_repeat=None, simulate_system_response=False, scheduler_barrier=None)
Create a MultichipAnalysisView in this database.
create_multichip_electromigration_view(analysis_view, tag='mcemv', mode='DC', temperature_em=None, delta_t_rms=None, thermal_view=None, context_factors=None, calculate_fit=False, temperature_fit=None, fit_life_time=None, fit_mode='basic', fit_tech_file=None,
em_ruleset_names=None, em_mission_factor=None, options=None, em_settings=None, fit_settings=None, create_fit_heatmap=True)
Create a MultiChipElectromigrationView in this database.
create_no_prop_scenario_view(db, timing_view, extract_view=None, external_parasitics=None, power_view=None, voltage_levels=None, supply_connection_rules=None, temperature=25.0, analysis_duration=None, frame_length=None, arrival_time_policy='min',
process_corner='default_process', object_settings={}, mode_definitions=None, value_change_data=None, default_input_pin_transition_time=1e-11, random_seed=0, data_types=None, tag='scn', options=None, always_active_clocks=False, limit_net_cap_to_pin_max_cap=False,
ensure_coverage=False, auto_switch_macros=False, macro_settings=None, current_data_precedence=['APL', 'CCSPower', 'NLPM'], default_clock={}, target_power_settings={})
Create a dynamic ScenarioView without propagation.
create_power_profile_view(timing_view, extract_view=None, external_parasitics=None, analysis_duration=None, time_interval_length=None, tag='pwr_profile', voltage_levels=None, temperature=25.0, options=None, activity_level=None, mode_definitions=None,
infer_icg_enable_signals_from_fanin_prop=False, object_settings={}, prefer_gate_vcd_clock_period=True, process_corner='default_process', value_change_data=None, virtual_supplies=None, supply_connection_rules=None, calculation_settings=None,
limit_net_cap_to_pin_max_cap=False, results_spec=None)
Create a PowerProfileView with power vs. time data.
create_power_view(design_view=None, power_files=None, switching_activity_view=None, extract_view=None, external_parasitics=None, timing_view=None, process_corner='default_process', voltage_levels=None, virtual_supplies=None, supply_connection_rules=None,
temperature=25.0, instance_settings=None, tag='pwr', options=None, limit_net_cap_to_pin_max_cap=False, current_data_precedence=['NLPM', 'APL', 'CCSPower'], calculation_settings=None)
Create a PowerView from IPF files and/or switching activity input.
create_reduced_model_view(simulation_view, scenario_view=None, analysis_view=None, tag='gv', options=None, cpm_port_map=None, cpm_nx=None, cpm_ny=None, cpm_cdie=None, cpm_plocname=None, cpm_parasitics=None, cpm_repeat_current_time=None,
cpm_noglobal_gnd=None, cpm_passive=None, cpm_probes=None, cpm_use_afs=None, cpm_pincurrent=None, coupled_simulation=None)
Create an GrmView (generic reduced model) in this database.
create_scaled_power_view(pwr_orig, target_power_settings=None, toggle_rate_settings=None, scenario_view=None, pwr_example=None, tag='pwr_scaled', precedence='top-down', scale_leakage_power=False, leakage_scaling_factor=None, options=None)
Create a PowerView by scaling instance power from an existing PowerView.
create_signal_net_current_view(simulation_view, scenario_view=None, switching_activity_view=None, timing_view=None, voltage_levels=None, external_parasitics=None, recovery_factor=-1, selected_nets=None, temperature=25.0, value_change_data=None,
const_net_overrides=None, options=None, tag='scv')
Create an SignalNetCurrentView in this database.
create_switching_activity_view(timing_view, saif_files=None, vcd_files=None, value_change_data=None, propagation_style='propagate_activity', disable_clocks=None, clock_source_toggle_rates=None, use_sta_clock_info=False, settings=None, object_settings={},
time_interval_length=None, rtl_name_map_rules=None, rtl_name_map_files=None, tag='swa', options=None, infer_icg_enable_signals_from_fanin_prop=False, vcd_x_logic_state=None)
Create a SwitchingActivityView object in this database.
create_timing_view(design_view, process_corner='default_process', path_view=None, tag='tv', sdc_files=None, timing_window_files=None, vcd_files=None, rtl_name_mapping_rules=None, logic_graph=True, settings=None, options=None, ignore_pin_connections={})
Create a TimingView object in this database.
create_user_view(tag='uv', save_to_db=True)
Create a UserView object in this database.
get_num_ppns(simulation_view, options=None)
Retuns number of power partitions that will be used in analysis.
get_views(force=False, report_incomplete_views=False)
Returns a list of available views in this database.
perform_missing_via_check(design_view, top_layer=None, bottom_layer=None, nets=None, query_rect=None, via_stack_spec=None, tag='missing_via_check', pitch=[], settings={}, user_min_via_cut=None, exclude_rects=None, exclude_cells=None, exclude_insts=None,
include_gds_cells=False, ignore_finger_geoms=False, via_rule_names=None)
Performs missing via check.
perform_signal_em_calculation(extract_view, scenario_view=None, switching_activity_view=None, timing_view=None, voltage_levels=None, external_parasitics=None, recovery_factor=-1, selected_nets=None, mode=None, temperature=None, delta_t=None,
target_life_time='DEFAULT', metal_line_number=None, em_mission_factor=None, value_change_data=None, const_net_overrides=None, options=None)
Performing signal net EM violation check.
run_fx_view(design_view, fx_executable=None, tag='fx', input_tcl_file=None, lib_files=None, vlog_files=None, spef_files=None, sdc_files=None, num_fx_workers=6, distributed=False)
Create an FXView object for the given design view and run FX timing analysis.
ARGUMENTS
simulation_view : SimulationView object (type=SimulationView, default_value=None)
scenario_views : List of ScenarioView objects (type=object, default_value=None)
tag : Name of the view (type=str, default_value='av')
duration : Simulation duration (seconds) (type=float, default_behavior='Automatically determined based on scenario current end time')
step_size : Simulation sampling step size (seconds) (type=float, default_behavior='Automatically determined', constraint="step_size must be > 0")
options : View creation options, typically from get_default_options() (type=object, default_value=None)
start_from : Start from the end of specified AnalysisView (type=AnalysisView, default_behavior='Decided based on argument initial_condition')
keep_stats_level : Detail level for simulation statistics and heatmap creation (Zero,Bqm,High,Full,Low,Medium,SystemResponse). Also see help(KeepStats) (type=object, default_value='Medium', constraint="keep_stats_level must be one of Zero, Bqm, High, Full, Low, Medium,
SystemResponse")
ramp_up_nets : Power/Ground nets that are in ramp-up (by power gates) state (type=list, default_behavior='no ramp-up nets')
off_state_nets : Power/Ground nets that are in off (power-gated) state (type=list, default_behavior='no off-state nets')
repeat_simulation_time : Repeat demand current time in seconds (type=float, default_behavior='no repeat')
initial_condition : Specify what initial condition calculation (presim) method to use. This is an umbrella argument that override delay_simulation_start and current_type_for_dc unless they are specified (type=str, default_value='avg_dc', constraint="Valid values are 't0' or 'avg_dc'")
delay_simulation_start : Delay for simulation start in seconds (can be a list for multi-scenario). Alternatively you can specify 'Avg' to shift start to average total demand current of highest energy net (type=object, default_behavior="'Avg' if initial_condition is 'avg_dc', otherwise 0.0")
current_type_for_dc : Set to 'Avg' to use average current for each instance pin at dc (type=str, default_behavior="'Avg' if initial_condition is 'avg_dc', otherwise 't0'", constraint="Valid values are 't0' or 'Avg'")
delay_stats : Delay for statistics collection in seconds (can be a list for multi-scenario) (type=object, default_behavior='Statistics collection starts from simulation time 0')
current_snap_method : Set the time_step snapping method to use for demand currents (type=str, default_value='charge', constraint="Valid values are 'charge' or 'peak' or 'none'")
enable_start_from : When enabled ckt state for the last step gets saved so that a new av can start from this (type=bool, default_value=False)
current_derate_mode : Set voltage derate method in transient simulation (type=str, default_value='off', constraint="one of ['chargebased', 'legacy', 'off']")
battery_levels : Dict of voltage levels supplied for battery in av (type=object, default_behavior='Automatically assigned from Power/Ground net ScenarioView voltage levels', constraint="dict of net name pattern to float")
symmetric_repeat : When demand currents are repeated, use symmetric repeat for demands (type=bool,default_value=False)
simulate_system_response : When turned on a matematical model for chip is hookedupwith package for simulation (type=bool, default_value=False)
scheduler_barrier : When set to True scheduler will make sure to complete thisAnalysisView jobs before executing the jobs after this AnalysisView (type=bool, default_value=True)
DETAILS
initial_condition is used for system DC state at time 0.
When 'avg_dc' is used, the simulation will be advanced to the step where the instantaneous total demand
for the highest power net is equal to the average current for that domain. This allows for the distributed system RLC to be
at proper voltages without introducing a false di/dt event at the first step of the transient solve.
Using 't0' forces the system to use the DC state of time 0 in the ScenarioView.
ARGUMENTS
level : bundle control setting (type=str, required=True, constraint="level must be one of Zero,Bqm,High,Full,Low,Medium,SystemResponse")
node_stats : Force pg circuit node voltage statistics bookkeeping (type=bool, default_value=None)
edge_currents_stats : Force pg circuit edge current statistics bookkeeping (type=bool, default_value=None)
instance_heatmaps : Force create instance voltage heatmaps (type=bool, default_value=None)
node_voltage_heatmaps : Force create node voltage heatmaps (type=bool, default_value=None)
current_heatmaps : Force create edge current heatmaps (type=bool, default_value=None)
bump_voltages : Force bookkeep transient bump voltages (type=bool, default_value=None)
bump_currents : Force bookkeep transient bump currents (type=bool, default_value=None)
user_probe_voltages : Force bookkeep transient user probe voltages (type=bool, default_value=None)
power_gate_currents : Force bookkeep transient power gate currents (type=bool, default_value=None)
pin_voltages : Force bookkeep transient instance pin voltages (type=bool, default_value=None)
cycle_stats : Force bookkeep cycle stats for instance and pin voltages (type=bool, default_value=None)
fullsim_stats : Force bookkeep statistics for instance and pin voltages (type=bool, default_value=None)
effective_dvd_stats_mode : Defines fullsim effective dvd calculation method (type=str, default_value='avg', constraint="effective_dvd_stats_mode takes one of the ['avg', 'min', 'max']")
instance_probes : List of instances or instance pins for selective probing (type=object, default_value=None)
timing_window_stats_mode : Define timing window stats calculation method (type=str, default_value='full_tw', constraint="timing_window_stats_modetakes one of the ['full_tw', 'sliding_window']")
effective_dvd_in_only_use_delay_filter : Filter effective dvd stats for in_only delay (type=bool, default_value=None)
bump_heatmaps : Force create bump current and voltage heatmaps (type=bool, default_value=None)
first_event_used_for_effective_dvd : Use first event's start time and direction in case of overlapping events for effective dvd stats (type=bool, default_value=None)
max_num_cycles_in_stats : Defines maximum number of cycles in cycle stats (type=int, default_value=128)
probe_shadow_cell_pins : Controls voltage statistics capturing for shadow cell instances (type=bool, default_value=False)
probe_filler_cell_pins : Controls voltage statistics capturing for filler cell instances (type=bool, default_value=False)
probe_decap_cell_pins : Controls voltage statistics capturing for decap cell instances (type=bool, default_value=False)
DETAILS
level provides bundle control of individual bookkeeping or heatmap items.
Valid values are 'Zero','Bqm','High','Full','Low','Medium','SystemResponse'.
To see contents of each setting, please run "print KeepStats(<level>)".
EXAMPLE
# Run at Medium stats level, and force to create current_heatmaps and instance pin transient voltages
av = db.create_analysis_view(..., keep_stats_level=KeepStats('Medium', current_heatmaps=True, pin_voltages=True))
49 © 2018
# RunANSYS, Inc.
at Full stats level, and force to skip bookkeeping for cycle stats ANSYS Confidential
KeepStats : Each Level
>>> print KeepStats('Full') >>> print KeepStats('High') >>> print KeepStats('Medium') >>> print KeepStats('Low')
{'bump_currents_': True, {'bump_currents_': True, {'bump_currents_': True, {'bump_currents_': False,
'bump_heatmaps_': True, 'bump_heatmaps_': True, 'bump_heatmaps_': True, 'bump_heatmaps_': False,
'bump_voltages_': True, 'bump_voltages_': True, 'bump_voltages_': True, 'bump_voltages_': False,
'current_heatmaps_': True, 'current_heatmaps_': True, 'current_heatmaps_': True, 'current_heatmaps_': False,
'cycle_stats_': True, 'cycle_stats_': True, 'cycle_stats_': False, 'cycle_stats_': False,
'drop_stats_': True, 'drop_stats_': True, 'drop_stats_': True, 'drop_stats_': True,
'edge_currents_stats_': True, 'edge_currents_stats_': True, 'edge_currents_stats_': True, 'edge_currents_stats_': False,
'effective_dvd_in_only_use_delay_filter_': False, 'effective_dvd_in_only_use_delay_filter_': False, 'effective_dvd_in_only_use_delay_filter_': False, 'effective_dvd_in_only_use_delay_filter_': False,
'effective_dvd_stats_mode_': 'Avg', 'effective_dvd_stats_mode_': 'Avg', 'effective_dvd_stats_mode_': 'Avg', 'effective_dvd_stats_mode_': 'Avg',
'first_event_used_for_effective_dvd_': None, 'first_event_used_for_effective_dvd_': None, 'first_event_used_for_effective_dvd_': None, 'first_event_used_for_effective_dvd_': None,
'fullsim_stats_': True, 'fullsim_stats_': True, 'fullsim_stats_': True, 'fullsim_stats_': False,
'gui_images_': None, 'gui_images_': None, 'gui_images_': None, 'gui_images_': None,
'instance_heatmaps_': True, 'instance_heatmaps_': True, 'instance_heatmaps_': True, 'instance_heatmaps_': False,
'max_num_cycles_in_stats_': None, 'max_num_cycles_in_stats_': None, 'max_num_cycles_in_stats_': None, 'max_num_cycles_in_stats_': None,
'node_stats_': True, 'node_stats_': True, 'node_stats_': True, 'node_stats_': False,
'node_voltage_heatmaps_': True, 'node_voltage_heatmaps_': True, 'node_voltage_heatmaps_': True, 'node_voltage_heatmaps_': False,
'pin_voltages_': True, 'pin_voltages_': False, 'pin_voltages_': False, 'pin_voltages_': False,
'power_gate_currents_': True, 'power_gate_currents_': False, 'power_gate_currents_': False, 'power_gate_currents_': False,
'probe_decap_cell_pins_': None, 'probe_decap_cell_pins_': None, 'probe_decap_cell_pins_': None, 'probe_decap_cell_pins_': None,
'probe_filler_cell_pins_': None, 'probe_filler_cell_pins_': None, 'probe_filler_cell_pins_': None, 'probe_filler_cell_pins_': None,
'probe_shadow_cell_pins_': None, 'probe_shadow_cell_pins_': None, 'probe_shadow_cell_pins_': None, 'probe_shadow_cell_pins_': None,
'selected_probe_view_': None, 'selected_probe_view_': None, 'selected_probe_view_': None, 'selected_probe_view_': None,
'tw_stats_mode_': 'full_tw', 'tw_stats_mode_': 'full_tw', 'tw_stats_mode_': 'full_tw', 'tw_stats_mode_': 'full_tw',
'user_probe_voltages_': True} 'user_probe_voltages_': True} 'user_probe_voltages_': True} 'user_probe_voltages_': False}
>>> b=min(bqm_currents)
>>> print(b)
{'name': 'probe_1000.043639.57', 'value': -0.0}
c=0
for i in bqm_currents:
if i['value']<=0:
c+=['value']
October 2017
VSS
quiet_ratio = 1 – total_transition_time/total_time
VDD
Assumes net load capacitances are coupled 50% to power and 50% to ground
The Effective Series Resistance (ESR) and Effective Series Capacitance (ESC) are read
from the APL cdev data.
help(rpt_annotation.report_block_vcd_annotation_style_c)
vcv.get_coverage()
vcv.get_coverage(report_uncovered_instances=True)
ARGUMENTS
level : control level (type=str, required=True, constraint="must be one of
'High','Medium','Low'")
DETAILS
This command can be used to decrease memory and/or network consumption with some
runtime penalty
By default, SeaScape executes all of the view's jobs concurrently. Views do not
wait for other views to be
fully completed to start. Moreover, data is kept in resident memory of workers
for fastest execution (not on disk).
Unlike other configs, this one can be used anywhere in script and it will block
execution before changing the tool mode.
Low: default.
Medium: run views one by one to make sure view saves don't happen when other
jobs are running to help network congestion.
High: run views one by one and move worker memory to disk after each view is
completed, to reduce worker peak memory.
High mode is same as inserting move_views_to_disk after every
64 © 2018 ANSYS, Inc. ANSYS Confidential
>>> help(set_config.global_disk_space_control)
set_config('global_disk_space_control', (level)
Global disk space vs runtime trade-off command.
ARGUMENTS
level : control level (type=str, required=True, constraint="must be one of
'High','Medium','Low'")
DETAILS
This command can be used to decrease disk consumption of SC-DB with some runtime
penalty
By default, SeaScape uses a fast compressor for its data storage under DB. This
command can be
used to increase the compression level.
Low: default compression. Optimized for faster runtime.
Medium: use zlib_level6 compression for large data files and zlib_level4 for
regular data files. Decrease heatmap resolution to 800.
High: use zlib_level9 compression for large data files and zlib_level4 for
regular data files. Decrease heatmap resolution to 600.
For more detailed control of compression and heatmap resolution, see
file_compression
65 © 2018 ANSYS, Inc. and image_pixel settings in help(set_config). ANSYS Confidential
Defaultと違うオプションを調べる
>>> help(socio_utils.add_workers)
add_workers(file, wait_time=10, remove_list=False)
Create new launcher once a host list is ready.
ARGUMENTS
file : A List of Host (type=str, required=True)
wait_time : Waiting time if the list is not available: Default=10 (type=int,
default_value=10)
remove_list : delete the List of Host after launching workers: Default=False
(type=bool, default_value=False)
DETAILS
Create new launcher once a host list is available, otherwise check a list
availability every 10 sec in default.
ARGUMENTS
golden : AnalysisView for golden (type=AnalysisView, required=True)
new : AnalysisView for new (type=AnalysisView, required=True)
skip_partial_coverage : Skip instances that are not present in all the hetmaps (type=bool, default_value=True)
net : A Net object to use as a filter (type=Net, default_value=None)
DETAILS
This script can be used to create instance based heatmaps given as golden and new analysisView, and returns a
resultant heatmap.
• 2020_R2.0より、rollup_settingsの記述方法が変更
‐ トップ層より何レイヤー残すかを指定
• e.g.) M1~M15の構成で、M1~M9までをM10にrollupする(M11~M15は影響無) ➔ keep_metals=6
72
ev_rollup = db.create_extract_view(
design_view=dv,
tech_view=nv,
tag ='ev_rollup',
run.py temperature=25,
calculate_spr=True,
rollup_settings=ev_utils.create_rollup_settings(dv,keep_metals=3),
options=options,
)
実行後確認
>>> ev_rollup.get_rollup_settings()
transcript {Instance(''): {'rollup_layer': Layer('metal10')}, Instance('core3'): {'rollup_layer': Layer('metal10')}}
73
Explorer
74
From 2021R2
75
Appendix
76
77