IPCB_DifferentialPairsRoutingRule interface
A differential signaling system is one where a signal is transmitted down a pair of tightly coupled carriers, one of these carrying the signal, the other carrying an equal but opposite image of the signal. Differential signaling was developed to cater for situations where the logic reference ground of the signal source could not be well connected to the logic reference ground of the load. Differential signaling is inherently immune to common mode electrical noise, the most common interference artifact present in an electronic product. Another major advantage of differential signaling is that it minimizes electromagnetic interference (EMI) generated from the signal pair.
public interface IPCB_DifferentialPairsRoutingRule : IPCB_Rule
Namespace: PCB · Assembly: Altium.SDK.Interfaces
Inherits: IPCB_Primitive → IPCB_Rule
Derived: IPCB_DifferentialPairsRoutingRule2
Remarks
Differential pair routing is a design technique employed to create a balanced transmission system able to carry differential (equal and opposite) signals across a printed circuit board. Typically this differential routing will interface to an external differential transmission system, such as a connector and cable.
It is important to note that while the coupling ratio achieved in a twisted pair differential cable may be better than 99%, the coupling achieved in differential pair routing will typically be less than 50%. Current expert opinion is that the PCB routing task is not to try to ensure a specific differential impedance is achieved, rather the objective is to maintain the properties required to ensure the differential signal arrives in good condition at the target component as it travels from the external cabling.
The IPCB_FanoutControl rule determines how BGAs on a PCB document is going to be fanned in respect to vias placement for routing.
This interface defines the minimum clearance between any two primitive objects on a copper layer.
The PrimitivesViolate method checks if two primitives violate the minimum clearance or not.
The Gap property determines the gap size of the track segments.
Properties
| Property | Type | Access | Description |
|---|---|---|---|
| FavoredImpedance | double | get; set | |
| ImpedanceDriven | bool | get; set | |
| MaxGap | int | get; set | |
| MaxImpedance | double | get; set | |
| MaxUncoupledLength | int | get; set | |
| MaxWidth | int | get; set | |
| MinGap | int | get; set | |
| MinImpedance | double | get; set | |
| MinWidth | int | get; set | |
| PreferedGap | int | get; set | |
| PreferedWidth | int | get; set |
FavoredImpedance
No description yet.
double GetState_FavoredImpedance();
void SetState_FavoredImpedance(double argValue);
Type: double · Access: read/write
ImpedanceDriven
No description yet.
bool GetState_ImpedanceDriven();
void SetState_ImpedanceDriven(bool argValue);
Type: bool · Access: read/write
MaxGap
No description yet.
int GetState_MaxGap(V7_LayerBase argL);
void SetState_MaxGap(V7_LayerBase argL, int argValue);
Type: int · Access: read/write · Index: argL (V7_LayerBase)
The accessors are extension methods of IPCB_DifferentialPairsRoutingRuleHelper (using PCB;).
MaxImpedance
No description yet.
double GetState_MaxImpedance();
void SetState_MaxImpedance(double argValue);
Type: double · Access: read/write
MaxUncoupledLength
No description yet.
int GetState_MaxUncoupledLength();
void SetState_MaxUncoupledLength(int argValue);
Type: int · Access: read/write
MaxWidth
No description yet.
int GetState_MaxWidth(V7_LayerBase argL);
void SetState_MaxWidth(V7_LayerBase argL, int argValue);
Type: int · Access: read/write · Index: argL (V7_LayerBase)
The accessors are extension methods of IPCB_DifferentialPairsRoutingRuleHelper (using PCB;).
MinGap
No description yet.
int GetState_MinGap(V7_LayerBase argL);
void SetState_MinGap(V7_LayerBase argL, int argValue);
Type: int · Access: read/write · Index: argL (V7_LayerBase)
The accessors are extension methods of IPCB_DifferentialPairsRoutingRuleHelper (using PCB;).
MinImpedance
No description yet.
double GetState_MinImpedance();
void SetState_MinImpedance(double argValue);
Type: double · Access: read/write
MinWidth
No description yet.
int GetState_MinWidth(V7_LayerBase argL);
void SetState_MinWidth(V7_LayerBase argL, int argValue);
Type: int · Access: read/write · Index: argL (V7_LayerBase)
The accessors are extension methods of IPCB_DifferentialPairsRoutingRuleHelper (using PCB;).
PreferedGap
No description yet.
int GetState_PreferedGap(V7_LayerBase argL);
void SetState_PreferedGap(V7_LayerBase argL, int argValue);
Type: int · Access: read/write · Index: argL (V7_LayerBase)
The accessors are extension methods of IPCB_DifferentialPairsRoutingRuleHelper (using PCB;).
PreferedWidth
No description yet.
int GetState_PreferedWidth(V7_LayerBase argL);
void SetState_PreferedWidth(V7_LayerBase argL, int argValue);
Type: int · Access: read/write · Index: argL (V7_LayerBase)
The accessors are extension methods of IPCB_DifferentialPairsRoutingRuleHelper (using PCB;).
Inherited members
- From IPCB_Rule: ActualCheck, ActualCheck_1, CheckBinaryScope, CheckUnaryScope, CollisionExpansion, Comment, DataSummaryString, DefinedByLogicalDocument, DRCEnabled, Export_ToParameters_1, GetWhatsThisHelpString, IsUnary, LayerKind, Name, NetScope, NetScopeMatches, Priority, RuleKind, Scope1Expression, Scope1Includes, Scope2Expression, Scope2Includes, ScopeDescriptorString, ScopeKindIsValid, ShortDescriptorString, ViolationDescriptorString
- From IPCB_Primitive: AllowGlobalEdit, BeginModify, Board, BoundingRectangle, BoundingRectangleChildren, BoundingRectangleForPainting, BoundingRectangleForSelection, CancelModify, Component, Coordinate, DescriptorString, DetailString, Dimension, DrawAsPreview, DRCError, Enabled, Enabled_Direct, Enabled_vComponent, Enabled_vCoordinate, Enabled_vDimension, Enabled_vNet, Enabled_vPolygon, EnableDraw, EndModify, Export_ToParameters, FlipXY, GraphicallyInvalidate, Handle, Identifier, InBoard, InComponent, InCoordinate, Index, InDimension, InNet, InPolygon, InSelectionMemory, IsAssyTestPoint_Bottom, IsAssyTestPoint_Top, IsElectricalPrim, IsFreePrimitive, IsHidden, IsKeepout, IsPreRoute, IsSaveable, IsTenting, IsTenting_Bottom, IsTenting_Top, IsTestPoint_Bottom, IsTestPoint_Top, Layer, MiscFlag1, MiscFlag2, MiscFlag3, Moveable, MoveByXY, MoveToXY, Net, ObjectID, ObjectIDString, PadCacheRobotFlag, PasteMaskExpansion, Polygon, PolygonOutline, PowerPlaneClearance, PowerPlaneConnectStyle, PowerPlaneReliefExpansion, Preview, ReliefAirGap, ReliefConductorWidth, ReliefEntries, Replicate, RequiredParamterSpace, RotateBy, Selected, SolderMaskExpansion, SwapLayerPairs, TearDrop, UnionIndex, UniqueId, UniqueID, Used, UserRouted, V7Layer, ViewableObjectID