Home > Community > Blogs > PCB Design > what s good about allegro router and via changes spb16 3 has a few new enhancements
 
Login with a Cadence account.
Not a member yet?
Create a permanent login account to make interactions with Cadence more conveniennt.

Register | Membership benefits
Get email delivery of the PCB Design blog (individual posts).
 

Email

* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

What's Good About Allegro Router and Via Changes? SPB16.3 Has a Few New Enhancements!

Comments(0)Filed under: PCB Layout and routing, PCB design, SPB, Allegro PCB Editor, Allegro, via, microvia, PCB Editor, PCB, SPB 16.3, layer stacks, Allegro 16.3, layout, SPB16.3, routing, Specctra

This week, I’ll be closing discussions on the new SPB16.3 Allegro PCB Router improvements. The focus is on several enhancements for via support.

The Use_Via Rule

Many times you need to restrict the usage of specific vias in a region. Allegro PCB Router has been enhanced in the SPB16.3 release to allow via usage in a certain region. The use_via rule has been enhanced to align with the Allegro via list functionality. The following objects support the use_via rule:

1.    region
2.    region net
3.    region class

New physical rules look like following:

circuit region <region_name> (use_via {[<padstack_id>]})
circuit region_net <region_name> (use_via {[<padstack_id>]})
circuit region_class <region_name> (use_via {[<padstack_id>]})

Specifying Vias for a Region
Via rules can be specified in Allegro Constraint Manager.  Open Constraint Manager > Physical > Region > All Layers and select the vias for regions. The rules specified in Constraint Manager are transferred to the Router:

 


The rules are translated to a “do” file as shown in the example below:



 
Reports
Use via conflicts are reported as a type option to the ‘report conflict’ command:
report conflicts window (type use_via)

If any conflicts should be reported according to syntax:
#1: Incorrect Via Padstack Usage "VIA019"
 

Blind-Buried (BB) Via Clearance

Both the SPECCTRA Router algorithm and DRC engine can differentiate between bbvia and thru via for the same net to net spacing requirement.  In the SPB16.2 release, only the microvia specific clearances were respected.

Blind Buried Vias Spacing Constraints

The following set of net to net and same net constrains for bbvias are now supported in Allegro PCB Router:

BBvia => bbvia
=> microvia
=> thru via
=> testvia
=> samepin
=> thrupin
=> testpin
=> bondpad
=> wire
=> area


Please refer to Allegro PCB Router Command Reference manual for syntax details.

You can open the Allegro constraint Manager and specify the blind buried clearances.  For example:
Open Constraint Manager > Physical > Net  > All Layers. In the example below different clearances have been applied to net ADSL:



 
These are translated to the “do” file as shown below:

################################################################################
# rule assignments for net clearances                                          #
################################################################################
rule net ADSL (clearance 1 (type microvia_bbvia))
rule net ADSL (clearance 2 (type bbvia_bbvia))
rule net ADSL (clearance 3 (type bbvia_thrupin))
rule net ADSL (clearance 2 (type bbvia_smdpin))
rule net ADSL (clearance 5 (type bbvia_thruvia))
rule net ADSL (clearance 4 (type bbvia_wire))
rule net ADSL (clearance 6 (type bbvia_area))
rule net ADSL (clearance 2 (type bbvia_testpin))
rule net ADSL (clearance 4 (type bbvia_testvia))


Notes:

1. Object names are case insensitive
2. 'bbvia' is a generalization of buried/blind vias


Enabling/Disabling Blind/Buried Via Spacing Constraints
Bbvia spacing constraints may be enabled/disabled at all levels of hierarchy by the following command:
set <bbvia_condition> on|off
< bbvia_condition >::= bbvia [_<paired_object>] [samenet]
<pairedObject>::= bbvia|microvia|thruvia|testvia|smd pin|thrupin|
testpin|bondpad|wire|area


Same Net Checks
'same_net' keyword attaches the clearance rule to typed objects from same net

For example:
rule pcb (clearance 3 same_net (type bbVia_bbVia))

All samenet rules are enabled/disabled by the ‘set’ command as following:
set same_net_checking on
or
set same_net_checking off


Reports
The current rules are reflected in detailed rules. For example Report > Rules > Net Rules reflects the above rule as shown below:

    Net ADSL:
area_bbvia clearance =    6.0000
bbvia_bbvia clearance =    2.0000
bbvia_smdpin clearance =    2.0000
bbvia_testpin clearance =    2.0000
bbvia_testvia clearance =    4.0000
bbvia_thrupin clearance =    3.0000
bbvia_thruvia clearance =    5.0000
bbvia_wire clearance =    4.0000
 

Highlight/Unhighlight bbvias


The following SPB16.3 SPECCTRA command is available to highlight/unhighlight selected kinds of bbvias:

        highlight <object_type> [<start_layer> [<finish_layer>]] on|off

object_type::= bbvias | blind_vias | buried_vias

start_layer valid layer name where bbvia starts from

finish_layer valid layer name where bbvia ends at



Notes: bbvias – blind and buried vias are highlighted (unhighlighted)

blind_vias - only blind vias are highlighted (unhighlighted)

buried_vias - only buried vias are highlighted (unhighlighted)


If layers aren’t specified, bbvias from all layers are highlighted or unhighlighted

If only one layer is specified, only crossing this layer bbvias are highlighted (unhighlighted)
on – highlight objects
off – unhighlight objects





Example:

Command > highlight bbvias on

will highlight all bbvias
 

 

Please share your experiences with these new capabilities.

Jerry "GenPart" Grzenia

Comments(0)

Leave a Comment


Name
E-mail (will not be published)
Comment
 I have read and agree to the Terms of use and Community Guidelines.
Community Guidelines
The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.