Tutorials, news, snippets, and other various musings about the electrical engineering industry.

What's Good About Allegro PCB Editor Fiber Weave Effect—Zig-Zag Routing? New Capabilities in 16.6-2015!

The 16.6-2015 Allegro PCB Editor release introduces the interactive conversion of Orthogonal and 45-degree routed traces into a Zig-Zag pattern to minimize the Fiber Weave Effect in a Printed Circuit Board (PCB).


What is “Fiber Weave Effect”?


PCB Dielectric material sheets that are placed between signal and plane layers in a PCB stack-up are constructed from several woven fiberglass fabrics bonded together with epoxy resin. Traces routed directly over the fiberglass weave will see a different Dielectric Constant than the traces that are routed over the voids in the weave where only epoxy resin is present.


At high data rates, this dielectric constant mismatch can cause signal integrity issues when running these high-speed signals parallel to the void areas of PCB fiberglass weave. If the condition exists on a differential pair where one member is running directly over the weave and the other running over the voids in the weave, it can result in different propagation velocities between the legs of the Differential Pair:



This feature supports both routed differential pair and single-ended nets. Users are provided the ability to specify the required zigzag angle offset and maximum segment length, as well as the option to convert full segments or define start/end points.




Route – Unsupported Prototype - Fiber Weave Effect – Add ZigZag Pattern


Pattern Options


There are some options for Fiber Weave – Add ZigZag Pattern that need to be setup and reviewed prior to adding the ZigZag pattern. These options can be updated during the process and prior to committing the pattern to allow you to find the ZigZag pattern the works best for your design.


Options window – These settings allow the user to set the Fiber Weave options. All options are saved in the design:



  • Angle offset: This allows the user to set the desired angle.  Default value is set to 10 degrees.
  • Max length: This is a required input. The user needs to specify the desired maximum length for zigzag segments. The default is blank:




  • Centered zigzag: This provides option to define zigzag centered or not, relative to axis of original segment. Default is checked.
    • Checked: Defines the zigzag segment centered about the original segment line:




    • Unchecked: Defines the zigzag segment above or below the original segment line:




  • Full segment: This provides the option to define extents of zigzag conversion. Default is unchecked.
    • Checked: When option is enabled, full length of segment is automatically converted to zigzag.
    • Unchecked: When option is disabled, user specifies the start and end point to define the extents of the zigzag conversion.



Selection and Pattern Controls


You can use the Add Zigzag command to convert cline segments based on the setting defined under the Options window in several ways:

  • Segment Selection
  • Multiple segments
    • Window select multiple parallel segments using standard RMB Selection options.
    • Select a single reference cline to add ZigZag pattern.
    • Indicate pattern direction and single click to accept pattern.
  • Single segment
    • Select single segment as the reference cline to add ZigZag pattern.
    • Indicate pattern direction and single click to accept pattern.
  • Pattern controls
  • After selecting the cline segments for patterns you will be in a dynamic mode to see the resulting pattern based on your Option windows settings.
  • Indicate a ZigZag pattern direction by cursor position.
    • Full segment checked in the Options window will flip the pattern for the cline segment:





    • Full segment unchecked in the Options window will flip the pattern for the cline segment and also define the extents (start/stop) for the pattern, indicating beyond the selected trace will apply the pattern to other parallel clines:






  • Only parallel segments are valid objects to be selected for conversion to zigzag pattern.
  • Applicable to cline segments only. Entire Cline (multiple segments) are not supported.
  • Add Zigzag command will create DRCs to non-selected objects. This is the Intended behavior with no bubble or shove operations performed.
  • Running Add Zigzag command on off-angle routed traces is not recommended. Orthogonal and 45 degree routed traces are supported.