blob: ae2aae5f07781a742b4691b798426d1bde105c40 [file] [log] [blame]
Bram Moolenaar5c736222010-01-06 20:54:52 +01001" Vim syntax file
2" Language: SDC - Synopsys Design Constraints
3" Maintainer: Maurizio Tranchero - maurizio.tranchero@gmail.com
Bram Moolenaar5c736222010-01-06 20:54:52 +01004" Credits: based on TCL Vim syntax file
5" Version: 0.3
daniel-s-w1724ddb2024-07-17 20:10:04 +02006" Last Change: Thu Mar 25 17:35:16 CET 2009
7" 2024 Jul 17 by Vim Project (update to SDC 2.1)
Bram Moolenaar5c736222010-01-06 20:54:52 +01008
9" Quit when a syntax file was already loaded
10if exists("b:current_syntax")
11 finish
12endif
13
14" Read the TCL syntax to start with
15runtime! syntax/tcl.vim
16
daniel-s-w1724ddb2024-07-17 20:10:04 +020017" TCL extension related to SDC and available from some vendors
18" (not defined in SDC standard!)
Bram Moolenaar5c736222010-01-06 20:54:52 +010019syn keyword sdcCollections foreach_in_collection
Bram Moolenaar5c736222010-01-06 20:54:52 +010020syn keyword sdcObjectsInfo get_point_info get_node_info get_path_info
21syn keyword sdcObjectsInfo get_timing_paths set_attribute
daniel-s-w1724ddb2024-07-17 20:10:04 +020022
23" SDC rev. 2.1 specific keywords
24syn keyword sdcObjectsQuery get_clocks get_ports get_cells
25syn keyword sdcObjectsQuery get_pins get_nets all_inputs
26syn keyword sdcObjectsQuery all_outputs all_registers all_clocks
27syn keyword sdcObjectsQuery get_libs get_lib_cells get_lib_pins
28
29syn keyword sdcConstraints set_false_path set_clock_groups set_sense
30syn keyword sdcConstraints set_propagated_clock set_clock_gating_check
31syn keyword sdcConstraints set_ideal_latency set_ideal_network
32syn keyword sdcConstraints set_ideal_transistion set_max_time_borrow
33syn keyword sdcConstraints set_data_check group_path set_max_transition
34syn keyword sdcConstraints set_max_fanout set_driving_cell
35syn keyword sdcConstraints set_port_fanout_number set_multi_cycle_path
36syn keyword sdcConstraints set_disable_timing set_min_pulse_width
37
Bram Moolenaar5c736222010-01-06 20:54:52 +010038syn keyword sdcNonIdealities set_min_delay set_max_delay
39syn keyword sdcNonIdealities set_input_delay set_output_delay
40syn keyword sdcNonIdealities set_load set_min_capacitance set_max_capacitance
daniel-s-w1724ddb2024-07-17 20:10:04 +020041syn keyword sdcNonIdealities set_clock_latency set_clock_transition set_clock_uncertainty
42syn keyword sdcNonIdealities set_resistance set_timing_derate set_drive
43syn keyword sdcNonIdealities set_input_transition set_fanout_load
44
Bram Moolenaar5c736222010-01-06 20:54:52 +010045syn keyword sdcCreateOperations create_clock create_timing_netlist update_timing_netlist
daniel-s-w1724ddb2024-07-17 20:10:04 +020046syn keyword sdcCreateOperations create_generated_clock
47
48syn keyword sdcPowerArea set_max_area create_voltage_area
49syn keyword sdcPowerArea set_level_shifter_threshold set_max_dynamic_power
50syn keyword sdcPowerArea set_level_shifter_strategy set_max_leakage_power
51
52syn keyword sdcModeConfig set_case_analysis set_logic_dc
53syn keyword sdcModeConfig set_logic_zero set_logic_one
54
55syn keyword sdcMiscCommmands sdc_version set_wire_load_selection_group
56syn keyword sdcMiscCommmands set_units set_wire_load_mode set_wire_load_model
57syn keyword sdcMiscCommmands set_wire_load_min_block_size set_operating_conditions
58syn keyword sdcMiscCommmands current_design
Bram Moolenaar5c736222010-01-06 20:54:52 +010059
60" command flags highlighting
Jordi Altayó6d626c42023-08-20 21:45:13 +020061syn match sdcFlags "[[:space:]]-[[:alpha:]_]*\>"
Bram Moolenaar5c736222010-01-06 20:54:52 +010062
63" Define the default highlighting.
64hi def link sdcCollections Repeat
65hi def link sdcObjectsInfo Operator
66hi def link sdcCreateOperations Operator
daniel-s-w1724ddb2024-07-17 20:10:04 +020067hi def link sdcObjectsQuery Function
Bram Moolenaar5c736222010-01-06 20:54:52 +010068hi def link sdcConstraints Operator
69hi def link sdcNonIdealities Operator
daniel-s-w1724ddb2024-07-17 20:10:04 +020070hi def link sdcPowerArea Operator
71hi def link sdcModeConfig Operator
72hi def link sdcMiscCommmands Operator
Bram Moolenaar5c736222010-01-06 20:54:52 +010073hi def link sdcFlags Special
74
75let b:current_syntax = "sdc"
76
77" vim: ts=8