The BUILD_ECS MACRO Creates a Named ELECTRICAL_CONSTRAINT_SET (ECS) which can be applied to matching NetNames
Electrical Constraint Sets
An Electrical Constraint Set (ECS) is use to constrain the Electrical attributes of Nets
BUILD_ECS can constrain many different parameters for a group of signals, and can also apply a PHYSICAL_CONSTRANT_SET (PCS) to the same group.
PARAMETERS that can be constrained include VIAS_MAX,VIAS_MATCH,MIN_PROP_DLY,MAX_PROP_DLY,MIN_TOTAL_ETCH,MAX_TOTAL_ETCH,
TOP_MAP_MODE,TOP_VERIFY_SCHEDULE,TOP_SCHEDULE_CONTROL,STUB_LENGTH,MAX_EXPOSED,MAX_PARALLEL,LAYER_SETS
BUILD_ECS
This Line tells dal constraints to create a new named ECS
syntax:
BUILD_ECS | NAME=> | NAME_FOR_ECS
the TYPE=> Attribute tells dal constraints what type of ECS the user wants to create
Valid options are: DIFF_PAIR and SINGLE_ENDED
Syntax:
TYPE=>[DIFF_PAIR|SINGLE_ENDED]
The DIFF_PAIR ECS is used to create Dynamic (DPA) and Static Differential Pair Routing Rules.
These are very powerful constraints which Allegro PCB uses to control the skew between the diff_pair mate nets.
The DYNAMIC
ASSIGN_PCS
The ASSIGN_PCS=>Attribute assigns an existing PCS to any nets assigned to this ECS
The PCS may have been created using the BUILD_PCS MACRO or when dal constraints imported the stackup.
Syntax:
ASSIGN_PCS=>PCS_NAME
Example
ASSIGN_PCS=>90_OHM_DIFF
TRACE_WIDTH_PARAMETERS
the TRACE_WIDTH_PARAMETERS attribute provides a list of routing widths and spacing for each routing layer (using the UNITS attribute)
example syntax for TYPE=>DIFF_IMPEDANCE
TRACE_WIDTH_PARAMETERS=> L1,L24=10/7.5:L4,L5,L8,L9,L16,L17,L20,L21=3.7/5
This specifies that target diff_pair nets on Layers 1 and 24 should be routed at 10 mils and 7.5 mil edge to edge spacing. On layers 4,5,6,7,8,9,16,17 and 21 target diff_pairs should be routed at 3.75 mils and 5 mil spacing
example syntax for TYPE=>SINGLE_ENDED_IMPEDANCE
TRACE_WIDTH_PARAMETERS=> L1,L24=12:L4,L5,L8,L9,L16,L17,L20,L21=6
This specifies that target single_ended nets on Layers 1 and 24 should be routed at 12 mils, On layers 4,5,6,7,8,9,16,17 and 21 target single_ended nets should be routed at 6 mils
example syntax for TYPE=>POWER
TRACE_WIDTH_PARAMETERS=> L1,L24=25:L4,L5,L8,L9,L16,L17,L20,L21=18MEMBERS
The MEMBERS=> Attribute tells dal constraints what nets to apply the new PCS to.
This is an optional attribute when you are creating a PCS that will be assigned from an ECS.
The syntax is MEMBERS=>net_match1,net_match2.... net_matchN
like
MEMBERS=>P48V,P48V_RTN
This tells dal constraints to assign this PCS to any net containing 'P48V' or 'P48V_RTN'
in this case the net_match is a simple text pattern
The MEMBERS net_matches are treated as regular expressions by dal constraints and are quite powerful.
To see more information on regular expression entry see Regular Expressions In CadEnhance Tools
NOT_MATCHING
the NOT_MATCHING=>Attribute is optional and works together with the MEMBERS attribute to fully define the set of target nets
the NOT_MATCHING is a comma seperated list of patterns that will be used to exclude nets from the set of nets that match the MEMBER patterns
Together the 2 attributes make very simple to define a large set of nets without having to create a very large list of specific matches
Add Comment