Because of the impedance of the power and ground distribution, a voltage drop will occur as the IC current switches. This voltage drop means the power and ground rails have collapsed from their nominal values.

Simultaneous switching noise (SSN) or simultaneous switching output (SSO): Whenever an output pin changes state, the current it draws from its ICs 0V and power rails eventually flows through the interconnections to the PCB’s 0V and power rails. The inductance in these paths causes voltage drops that make the IC’s internal 0V and power rails ‘bounce’ with respect to the PCB rails, according to the activity of the output ports

Ways to minimize:

1) Closely placed power-ground planes with thin dielectric

2) Low inductance decaps, on-chip decaps

3) Multiple short power, ground pins in packages

Sources of EMI

1) Conversion of some differential signal into a common signal

2) Ground bounce

Ways to minimize:

1) Use shielded cables

2) Use low-impedance connections

Rise time: Time taken to go from 10% to 90% of the final value.

Mostly rise time is about 10% of clock period.

Bandwidth = 0.35*[Rise Time]

For most microprocessor, ASIC based systems rise time is 7% of clock period.

Create my first project at Github: This script can be downloaded from https://github.com/agraja/text2perl/blob/master/text2perl.pl #!/usr/bin/perl # Tiny preprocessor: # Example: Paste this example in a file # Pass it as argument to this script # some text /* for(1..5) { */ # this line will be printed 5 times # /* } */ open(P,”|$^X”); print P […]

Here is a preprocessor in perl, primarily for Verilog, SystemVerilog, but may be used for any language. There are programs with a lot of repetitive text. Language features like functions, objects can reduce typing. Still, there is scope for putting it in lesser code using a text preprocessor. Limitations in existing preprocessors prompted in writing a new on […]

Wire Can be used for input, output, inout Multiple drivers, No drivers cause x Usage: Wire variable = value; Assign variable = value; Can be used to connect module instances Reg Can be used only for input Can’t be used in ‘assign’ statement It takes last assigned value, behaves like a variable Note: R […]