full_case : Specifies that a case statement is to be treated as full caseparallel_case : Specifies that a case statement is to be treated as parallel caseinfer_mux : Directs synthesis to generate a more robust multiplexer solutionsync_set_reset : Directs the synthesis tool to check the signals in the list ot determine if they synchronously set or reset the designasync_set_reset : Directs the synthesis tool to check the signals in the list to determine if they asynchronously set or reset the designone_hot : Specifies that the set and reset signals will not be in their active 1'b1 state at the same timeone_cold : Specifies that the set and reset signals will not be in their active 1'b0 state at the same timetranslate_off / translate_on : Directs the synthesis tool to not synthesize the Verilog code that is in between these two delimitersresource : Alerts synthesis that directives to follow are resource block relatedops : Lists identifiers to be used as labelsmap_to_module : Specifies the DesignWare synthetic part that the operator is to be mapped ontoimplementation : Specifies the archetecture implementation for the selected DesignWare synthetic partlabel : Identifies the operator that is to be synthesized into the specified implementationset compile_seqmap_synchronous_extraction : Directs synthesis to implement a more robust algorithm when synthesizing flip-flops with synchronous set/reset pinsset hdlin_ff_always_sync_set_rest : When set to true synthesis is directed to automatically check the coding style for synchronous set and reset conditions of flip-flopsset hdlin_ff_always_async_set_reset : When set to true synthesis is directed to automatically check the coding style for asynchronous set and reset conditions of flip-flopsset hdlin_use_carry_in : Directs synthesis to use the carry-in pin of an adder resource blockset hdlin_infer_function_local_latches : When set to true latches will be synthesized for laatch coding styles in subprogramsset view_command_log_file : Specifies location of intermediate log filesset command_log_file : Specifies location of intermediate log filesset_dont_use : Directs the synthesis tool to not select the specified cells from the target libraryset_test_hold : Specifies value that an input pin should have during the check_test commandhdlin_enable_presto : Enables/disables Presto Veriloghdlin_while_loop_iterations : Specifies the maximum number of times that a Verilog loop statement will be iterated during teh Elaborate phasealias : Renames a synthesis commandset company : Sets company name toe be displayedin generated schematicsset designer : Sets designer's name toe be displayed in generated schematicsset target_library : Specifies a technology or a list of technology libraries from which the synthesis tool will select cells during its mapping to gates stageset link_library : Specifies a list of design files and libraries used during the linking phase of a designset symbol_library : Specifies the library containing the graphical elements that will be used to generate the schematic output of synthesisdefine_design_lib Identifies the subdirectory into which the Verilog analyzed files will be seavedremove_design -designs : Deletes designs from Design Vision's memorycompare_design : Checks the functional equivalency of two designscheck_test : Checks if a design satisfies the observability and controllability rules for test insertionread_file -format verilog {<file_name>.v}read_verilog <file_name>.v : verilog file 읽기analyze -format verilog {<file_name>.v}elaborate <design_name>read_ddc {<ddc_file_name>.ddc}current_design <design_name> : (arg 없으면)현재 디자인 확인 / <design_name>으로 변경source <constrain_file_name>.con : constrain file 적용check_timinglinkcompile_ultracreate_schematic : Creates schematic with default drawing parameters
create_schematic -no_bus : Creates schematic in which individual lines of bussed signals are isolated
query_objects : 정보 보기
filter_collection [get_cells *] "ref_name =~ AN*" : 해당 조건에 만족하는 것들만
get_cells * -filter "dont_touch == true : 해당 조건에 만족하는 것들만
list_attributes -application -class <object_type> : attribute 확인
get_*get_nets : current design의 net들. -hier로 sub-block도 가능get_pins <cell/pin> : cell들의 input/output pins. -hier로 sub-block 가능get_ports : current design의 input/output/bidir ports. -hier 가능get_cells : cells(instances) in the current design. -hier 로 sub-blocks도 가능get_clocks : current design이나 above design에서 정의된 clock objectget_designs : DC memory에 있는 designsget_libs : DC memory에 있는 librariesget_lib_cells <libname/cellname> : library 안에 있는 cell들get_lib_pins <libname/cellname/pinname> : library 안에 있는 cell의 pin들all_*all_inputs : current design의 모든 input, inout portsall_outputs : current design의 모든 output, inout portsall_clocks : current design과 below에서 정의된 clock들all_registers : 현재 디자인의 register cell들의 hierarchyall_ideal_netsall_faninall_fanoutall_connectedall_dont_touchall_high_fanout*_collectionadd_to_collection : Add object(s)compare_collections : compares two collectionscopy_collection : Make a copy of collectionfilter_collection : Filter a collection, resulting in a new collectionforeach_in_collection : Iterate over a collectionindex_collection : Extract object from collectionremove_from_collection : Remove object(s) from a collectionsizeof_collection : Number of objects in a collectionsort_collection : Create a sorted copy of a collectioncreate_clock -period <T> -name <virtual_clock_name> : virtual clock 생성create_clock -period <T> [get_ports <clock_name>] : clock object 로 바꿔줌, T는 주기set_clock_uncertainty -setup <T> [get_clocks <clock_name>] : T = skew + jitter + marginset_clock_latency -source -max <source_latency> [get_clocks <clock_name>] : Source Latency 설정set_clock_latency -max <network_latency> [get_clocks <clock_name>] : Network Latency 설정set_clock_transition -max <T> [get_clocks <clock_name>] : trasition time 설정set_propagated_clock [get_ports <clock_name>] : CTS 후에set_input_delay -max <T> -clock <clock_name> [get_ports <port_name>] : input port delayset_output_delay -max <T> -clock <clock_name> [get_ports <port_name>] : output port delayset_input_delay -max 0.5 -clock Clk [remove_from_collection [all_inputs] [get_ports Clk]]
다른 옵션 줄 때
set_input_delay -max 0.5 -clock Clk [all_inputs]
set_input_delay -max 0.8 -clock Clk [get_ports C]
remove_input_delay [get_ports Clk]
set_input_transition -max <transition_time> [get_ports <port_name>]set_driving_cell -max -lib_cell <cell_name> -library(not required) -pin(if required) [get_ports <port_name>]set_load -max [load_of <lib_name/cell_name/pin_name>] [get_ports <port_name>]set_load -max <load_value> [get_ports <port_name>]report_*report_port -verbose : Input, Output delay 확인 가능report_clock : period, waveform, source 확인report_clock -skew : network delay, transition 확인 가능report_clock -skew -attr : 둘 다tools => Setup : Displays current synthesis environmentFile => Analyze : Analyzes specified fileFile => Elaborate : Elaborates specified designTools => Design Optimization : Maps elaborated design onto cells from the target libraryReport => Constraint Analysis => Timing Path : Generates Timing reportReport => Constraint Analysis => Area : Generates Area ReportFile => Save As : Saves design in specified subdirectory as a .db fileFile => Read : Brings RTL source code and netlists into Design VisionView => Preferences => pin_name_layer : Directs schematic output to include pin names of cells selected from target libraryReports => Design Information => Resources : Generates a resource implementation reportanalyze -library <library_name> -format verilog {<file_name>.v}elaborate <design_name> -library <library_name>read_file -format verilog {<file_name>.v}