8 Tips for Optimizing Your XSignal Performance
An xSignal is a designer-defined signal path between two nodes. These nodes can be in the same net or in associated nets separated by a component.
Select a start pad and an end pad and run the Create xSignal command. The xSignal name is the combination of the net names of these pads.
1. Use xSignal Primitives
Signals are a state update system that is fast by default and eliminates performance bottlenecks such as memoization and selectors. They also allow fine-grained state updates that ensure your app stays fast, even as it grows complex.
The panel’s right-click context menu lets you remove (Delete) an xSignal or change its visual representation in the PCB design space (Change XSignal Color). The middle region displays xSignals defined in the selected class. The xSignals are displayed as node pads joined by a thin line that represents the xSignal path.
2. Use xSignal Classes
The xSignal class defines how to manage the signal state in your template. Whenever that signal state changes, the code in this class will react to those changes.
The panel region provides options for changing the visual representation of an xSignal in the PCB design space (Change xSignal Color) and its visibility (Check Visibility). Right-click in the region to access more management options, including removal of xSignals from the xSignal class collections (Delete). This includes the ability to scope xsignal products classes to applicable Length and Matched Length design rules.
3. Use xSignal Components
The xSignal Multi-Chip Wizard takes a component-oriented approach to identify potential xSignals. The dialog allows you to select the source and destination components and a net. It analyzes all possible paths from the source component to the designation component through series passive components and branches.
You can also use the Create xSignals from selected pads command (Design >> xSignals sub-menu or right-click xSignals mode in the PCB panel). This command will automatically build a single xSignal between the start and end pads.
4. Use xSignal Length Matching
A xSignal is a designer-dened signal path between two nodes. It can be two nodes within the same net or two nodes in associated nets separated by a component.
This is a group of signals that require length matching for signal integrity or high speed design purposes. This involves tracking individual track lengths and via depths for each signal/pair and then equalizing them across the matchgroup.
The xSignal panel automatically scopes applicable Length and Matched Length design rules during interactive length tuning. It also displays the Total Pin/Package Length and Unrouted (Manhattan) Length for each xSignal.
5. Use xSignal Routing Rules
A high-speed signal path consists of multiple nets. These can be associated nets that are separated by components or they can be a differential pair of two separate nets. The xSignals panel allows you to scope a design rule such as Matched Length to include all of the nets/diff pairs in the selected xSignal class.
This ensures that each pair of traces will be routed with the same length, which is critical to controlling crosstalk. This type of design rule can be checked during object placement, referred to as Online DRC, or in a post-process referred to as Batch DRC.
6. Use xSignal Interrupts
Interrupts are signals that suspend the main process being done/executed. For example, if your phone rings or the door bell rings, interrupts will be needed to handle these events.
The Priority Selection Block (14) uses the defined time information to determine the interrupt signal’s place in the queue. This ensures that the most critical signals are responded to before their defined times elapse.
This method is also called the interrupt priority algorithm. It works by comparing the priority levels of each interrupt source and assigning higher priority to more critical signals.
8. Use xSignal Routing Rules
The xSignals panel provides a graphical view of the xSignal objects and their properties. Using this view, you can manage key design requirements, such as Length and Matched Length rules.
Use matched length rules on both the differential pairs of an xSignal class and the individual nets of that class. In particular, ensure that the matched length rules between each differential pair are consistent with one another. Avoid broadside routing of diff pairs, if possible, to minimize crosstalk.