 5.0 Analysis Tutorial - Reducing crosstalk (*** scroll->

Crosstalk is one of the most significant noise concerns
addressed by SNA.  Crosstalk occurs from parallel or nearly
parallel etch where one net picks up noise from activity on
its neighbor.  Crosstalk generally increases as the, separation
between the parallel etch decreases. It also increases as parallel 
length increases, and as the technology risetime becomes faster, or as
the voltage swing 
increases. Crosstalk occurs from same layer parallelism and from
layer to layer parallelism.  Shield layers (walls of metal) 
completely block layer to layer crosstalk.  SNA models all these
effects as well as the saturation length for backwards crosstalk
(parallelism for longer than this saturation length doesn't cause
still more backwards crosstalk. However this saturation length is 
rather long. Saturation is only reached when the length of parallelism
corresponds to a delay equal to 1/2 the risetime.  For a fast ECL
1ns risetime this is about 4.5 inches, for slower risetimes or
slower board materials this saturation length is proportionately
longer.)

SNA crosstalk predictions are intentionally simplified for speed and
ease of use, yet are consistently pessimistic. (Engineers can approve a
few marginal false alarms but hidden problems should never be missed.)
SNA does NOT model the modest crosstalk reduction of etch shield 
lines/traces between 2 nets (i.e. allegro only recognizes shield planes
not shield lines.) The extra separation 
distance incidental from an intervening line is of course recognized by
Allegro. SNA also uses the true diagonal separation between lines on different layers. 

SNA models accumulated crosstalk from multiple nets as a simple sum of 
the net to net ingredients. (This simple summing is quite accurate for
combining small ingredients.  If the crosstalk is huge this simple sum
might unrealistically exceed the voltage swing on a single net but such
huge crosstalk cases certainly require attention anyway.) 

The default prediction shows the crosstalk ingredients summed from all neighbor
nets.  

 *********************************
 Type the command (all caps is required):
    SET CROSSTALK_CALC = PEAK_NET
 then pick Analyze->Again 
 *********************************

to see the lower crosstalk ingredient generated 
after this set option to only show the crosstalk from the single worst neighboring net. (Net A0L should be about 49mV for PEAK_NET vs 268mV for NET_SUM)

 *********************************
 type
 set CROSSTALK_CALC = NET_SUM
 then pick Analyze->Again 
 *********************************

to restore the pessimistic sum from all neighbors.
This setting is never saved with a .brd but can be set in the user
environment file to match user preferences.

Large crosstalk accumulated from lots of different neighbors is more 
likely to be a false alarm (Allowed/ok'ed by engineering) than a large
crosstalk contribution from a single dominant neighbor.

The simple solution to crosstalk is to move the etch farther apart.  Note
that it is NOT the minimum separation which dominates crosstalk but it is
close parallelism for significant lengths which are a concern.  Thus users
can pick the neighbor or its victim to move at least for most of the length
of parallelism and easily reduce crosstalk.  

Allegro's slide command is particular useful for manually tweaking the
layout to reduce crosstalk.  

The F1 key has been setup to slide the worst contributing segment
and to remove the crosstalk violation on net AOL.

 *************************************
 Hit F1 to perform a slide script
 *************************************

This will show the backwards crosstalk for net A0L reduced from 268mV to
224mV (which is enough to pull it under our selected 250mV rule).

In some cases such as this tutorial where
Changing to the latest fastest technology, has led to a design
with totally unacceptable crosstalk more completely new routing
setup and even more layers might be required to adequately limit
crosstalk.  Generally designers will want to shorten distances 
by using smaller components and finer line spacing.  Shorter nets 
will obviously help timing constraints for high speed designs.
Also for the same net to net separations shorter nets collect 
less crosstalk than longer nets. As you browse through the
nets in this tutorial you will see that the longest nets
tend to have the most problems.

For this layout some large crosstalk ingredients occur from 
the layer to layer parallelism between etch subclass int1 & int2.
For example after sort by "NETNAME" Next to the 3nd net BUSADSL
SNA highlights the worst offending segment of the worst 
offending neighbor net crosstalk in RED. Use the World view
left button click to pan to the region of concern. You can perform
a Show->element on the segments highlighting to verify their
nets and layers.

Adding a new shield etch subclass (an extra ground plane) between
int1 & int2 has been setup as a script on the F1 function key.  
This script will perform a Define->subclass of etch between 
int1 & int2 and then Define->Cross_section marking this new 
subclass as a "shield" .  Finally only net BUSADSL is
analyzed again to see a drastically reduced crosstalk.

 *****************************************************************
 Hit F1 and wait for both the addsubc & re-analyze until the done msg.
 *****************************************************************

You will see the backwards crosstalk drop from 328mV to under 100mV with
no *'s or crosstalk neighbor violations highlighted RED for BUSADSL.

(BUSASDL will analyze->again in only a few seconds, other long nets 
with multiple drivers require much longer to analyze->again.)

 *****************************************************************
 Press <F1> to continue to next frame ...
 *****************************************************************
