Design Rule System
Design Rule Template
There are two logical ways to understand the design rule template; the PCB can choose according to its needs:
- As a base version for other design rules, other design rules are overrides of the template.
- Mutually exclusive with other design rules; when a template exists, other design rules are only temporary and have no effect.
- As an identifier of which template the rules originate from, without affecting the effectiveness of subsequent actual rules (current solution).
json
{ "type": "RULE_TEMPLATE", "ticket": 1 }||{ "name": "JLCPCB Capability(High Frequency Board)"}|1
- type design rule template:
RULE_TEMPLATE. - ticket logical clock.
- name template name.
Design Rule
json
{ "type": "RULE", "id":"UUID", "ticket": 1 }||
{
"ruleType":"Safe Clearance",
"ruleName":"General",
"ruleState":1,
"ruleContext":{},
}|1
2
3
4
5
6
7
2
3
4
5
6
7
- type design rule:
RULE. - ticket logical clock.
- ruleType rule type: decided by EDA.
- ruleName rule name.
- ruleState rule state: 0 normal rule, 1 default rule, 2 disabled rule.
- ruleContext rule content: decided by EDA.
Design rules of the same rule type must appear in the same order as the left tree in [Rule Manager].
Rule Selector
json
{ "type": "RULE_SELECTOR", "id":"UUID", "ticket": 1 }||
{
"ruleSelect":["NET", "GND"],
"ruleOrder":0,
"ruleKeyValue":{ "Safe Clearance": "General", "Other Clearance": "General" },
}|1
2
3
4
5
6
2
3
4
5
6
- type rule selector:
RULE_SELECTOR. - ticket logical clock.
- ruleSelect selector.
- Net class:
["NET_CLASS", "High Speed"] - Net:
["NET", "GND"] - Layer:
["LAYER", 5] - Region:
["REGION", "e10"] - Footprint:
["FOOTPRINT", "0805"] - Component:
["COMPONENT", "e100"] - Copper pour:
["POUR", "e100"] - Differential pair:
["DIFF_PAIR", "asdf"] - Equal-length group:
["EQ_LEN_GRP", "fdsa"] - Future logic support:
["AND", ["NET", "GND"], ["LAYER", 5]]
- Net class:
- ruleOrder priority: the smaller the value, the higher the priority. Recommended:
0component rule1footprint rule2region rule3net-net rule4net rule5layer rule
- ruleKeyValue rules. Key is the rule class, Value is the rule name. Only one rule can be selected under each rule class.