Upload
malinga-dabarera
View
216
Download
0
Embed Size (px)
Citation preview
8/4/2019 06 Parallel Bus Issues
1/22
Curtin University of Technology, Australia 6-1
YH Leung (2009, 2010)
SOME PARALLEL BUS DESIGN ISSUES
A typical parallel bus is the backplane bus shown below
Fig. 1 A typical backplane application using several plug-in cards
Previously, we have noted the performance of a parallel bus is limited by skew
In this section, we shall consider bus hold, hot swapand ground bounce
Later, we will study line terminationand crosstalk, in a more general context
1 Bus Structure of a Simple Computer System
To fix some ideas, we begin by examining a simple computer system
Fig. 2 shows the organisation of the classical Von Neumannarchitecture1
1Although modern computers are implemented with more advanced architectures, often these
structures are just tweaks of the Von Neumann architecture
8/4/2019 06 Parallel Bus Issues
2/22
Curtin University of Technology, Australia 6-2
YH Leung (2009, 2010)
Data and instruction
Control signals
Outputunit
Inputunit
Controlunit
Memoryunit
Arithmeticlogicunit
Fig. 2 The basic Von Neumann machine
The Central Processing Unit (CPU) consists of the Arithmetic and Logic
Unit(ALU) and the Control Unit(CU)
The CU coordinates the operation of the various parts of the computer
The ALU performs all arithmetic ( + , , , etc.) and logic (AND, OR, XOR, etc.)functions
The CPU reads data from and writes data into the Memory Unit. This unit also
holds the program, consisting of a sequence of instructions that specify the
overall operation of the computer
The computer gets data from the outside world through the Input Unit, and
returns data/information to the outside world through the Output Unit
Typically, input/output (I/O) units will contain their own control lines to theoutside world to coordinate their data transfers with the outside world
8/4/2019 06 Parallel Bus Issues
3/22
Curtin University of Technology, Australia 6-3
YH Leung (2009, 2010)
For the actual physical implementation, it has been found the 3-bus structure
shown below is most convenient in terms of maintenance and future expansions
CPUROM RAM
I/O
Memory
ALU
CU
Data Bus
Address Bus
Control Bus
Fig. 3 Bus organisation of a typical computer system
The CPU transfers data in words (4, 8, 16, 32 bits, etc.) to and from the
memory unit and I/O device(s) through the Data Bus. If the data words each
have nbits, then the data bus will have nlines
The Address Bus specifies to or from which memory location or I/O device
(port) that data transfer is to occur. The address bus will contain m lines for
an address space of 2m memory locations and 2m I/O ports
The Control Bus contains a number of lines. These lines carry timing
information such as memory read and I/O write.
Example (Memory Read)
Step 1 CPU places memory address on the address bus
Step 2 CPU sets memory read line on control bus high
Step 3 Memory unit places data from the memory location whose address is
on the address bus onto the data bus
Step 4 CPU brings memory read line on control bus low and clocks data
on the data bus into its own internal memory (register)
In the above example, it is important that the CU allows sufficient time in and
between each of the steps for the signals to stabilise and for them to meet the
set-up and hold time requirements of any clocked devices in the system
8/4/2019 06 Parallel Bus Issues
4/22
Curtin University of Technology, Australia 6-4
YH Leung (2009, 2010)
2 Bidirectional Bus
The data bus in the simple computer of Fig. 3 is bidirectional, i.e., data can
be driven from the CPU into memory, or be driven into the CPU from memory
In other words, on each line of a bidirectional bus, a number of transmitting
and receiving devices are connected
Bus line of interest
Another bus line
CircuitModule
#1
CircuitModule
#2
CircuitModule
#3
Bus driver
Fig. 4 Typical bidrectional bus
To avert the problem of transmitter outputs driving each other, IC manufacturers
have come up with bus interface circuits whose transmitter output can assume
one of three states: (see, for example, Reading List, TI SN74ABTE16245)
logic 1
logic 0
and high-impedance
When a transmitting device is in the high-impedance state, its output is
virtually disconnected from the bus
An external control logic is used to ensure only one transmitter is allowed to
drive the bus
The control logic will select only one transmitter and de-select the remaining
transmitters
The selected transmitter will then place a logic 1 or 0 on the bus line while
the de-selected transmitters will put their output circuits into the high impedance
state, in effect, disconnecting themselves from the bus and not interfere with the
operation of the selected transmitter
8/4/2019 06 Parallel Bus Issues
5/22
Curtin University of Technology, Australia 6-5
YH Leung (2009, 2010)
3 Slow or Floating CMOS Inputs
In recent years, CMOS and BiCMOS have become the dominant technology in
the semiconductor market
It is important, therefore, to understand their characteristics and be aware of
techniques that will overcome their shortcomings
One problem that can arise in bus applications is that, unused CMOS inputs
must not be left floating
Specifically, CMOS inputs can be left effectively floating if all transmitters
connected to the same bus line entered the high-impedance state at the same
time
There are two phenomena that can damage the CMOS device: through
currents and high frequency oscillations
3.1 Through Current
Fig. 5 shows the input stage of a CMOS gate
Fig. 5 Input structure of a CMOS device
If Iv is around 2DDV , then PQ and NQ can both be ON (or slightly ON) and
a large current, known as through current, can flow from DDV to GND
through PQ and NQ
8/4/2019 06 Parallel Bus Issues
6/22
Curtin University of Technology, Australia 6-6
YH Leung (2009, 2010)
Fig. 6 plots the supply current versus the input voltage of a CMOS gate
Fig. 6 Supply current against input voltage of a CMOS device
Evidently, the input voltage must switch from low to high, or high to low, as
rapidly as possible to minimise the amount of power that is dissipated by the
device
Table below lists the maximum input transition rise and fall rates for various
CMOS familes
8/4/2019 06 Parallel Bus Issues
7/22
Curtin University of Technology, Australia 6-7
YH Leung (2009, 2010)
3.2 High Frequency Oscillations
Fig. 7 shows an inverting buffer stage with the parasitic inductances of the
package leads ( PL ) and the capacitive load ( LC ) at the output
Fig. 7 Parasitic components that can cause circuit oscillation
Suppose Iv is low and the output is high
As Iv (slowly) increases past the threshold voltage, the output will switch low
The surge in load current Oi will cause a voltage spike in GNDV which willmake iv to appear to dip low suddenly (with respect to GNDV ). This in turn
will cause the output to switch high
By a similar argument, the induced -ve voltage spike at +V due to output
switching low to high will cause the threshold voltage of the gate to dip down.
This in turn will cause iv to appear to dip above the threshold voltage and the
output will switch low
Fig. 8 shows what happens at the output of a CMOS gate when its input isslowly raised
LC
+V
8/4/2019 06 Parallel Bus Issues
8/22
Curtin University of Technology, Australia 6-8
YH Leung (2009, 2010)
Fig. 8 Oscillation at the output of a CMOS circuit whose input is triggered
by a signal with a rise time of = 200 nsrt
8/4/2019 06 Parallel Bus Issues
9/22
Curtin University of Technology, Australia 6-9
YH Leung (2009, 2010)
4 Bus Hold
A simple solution is to connect all unused (floating or open) inputs to CCV or
GND or via a resp. pull-up or pull-down resistor
VCCPull-up resistor
Pull-down resistor
Fig. 9 Pull-up and pull-down resistors
However, pull-up and pull-down resistors can cause additional power
dissipation and increase component count
Also, when using todays narrow pitch packages, there may not be enough
space on the PCB to add pull-up and pull-down resistors
Moreover, in certain test conditions, inputs may be left open, and as discussed,
in bus applications it may happen that the inputs are effectively floating when all
devices driving the bus are in the high-impedance state
Many bus interface circuits now include a bus holdcircuit in their input
Resistor lessens driving effectof 2nd inverter on bus
Fig. 10 Bus with bus hold circuit
8/4/2019 06 Parallel Bus Issues
10/22
Curtin University of Technology, Australia 6-10
YH Leung (2009, 2010)
In CMOS, it is not easy to implement a purely ohmic resistor
Fig. 11 shows a stand-alone 10- or 16-bit bus hold device where the feedback
resistor has been replaced by a configuration known as a transmission gate
Effectively a resistor cheaper tomake in a CMOS chip
When x is 1, PMOS is ON andNMOS is OFF
When x is 0, PMOS is OFF andNMOS in ON
Input clamping diodes to protectgate input from excessive input
voltages
x
Fig. 11 Stand-alone bus hold circuit (SN74ACT107x)
Transmission gate is effectively a dynamic pull-up/pull-down resistor
Fig. 12 shows the input structure of two other CMOS families with bus hold
circuits
Fig. 12 Bus hold circuits for ABT/LVT and ALVC/LVC families
8/4/2019 06 Parallel Bus Issues
11/22
Curtin University of Technology, Australia 6-11
YH Leung (2009, 2010)
5 Hot Swap
5.1 Introduction
In many applications, there is a requirement to exchange modules in anelectronic system while the supply voltage remains on
Examples include electronic telephone exchanges, the switching control centre
of an electric utility, air traffic controllers, medical life support systems, etc
Above procedure is known as hot swap(or live insertion, or hot plug, or hot
insertion)
Hot swap is also a feature of USB devices
It allows an external drive, network adapter or other peripheral to be plugged
into a computer without having to power down the computer first
Hot swap is really a system design issue
It costs money to support therefore one must first perform a careful system
analysis before proceeding
Suppose hot swap has been deemed to be necessary
One must then consider the question: Must the systemcontinue to function
during hot swap?
If NO, then all that is required is a simple method to safe the software and
the hardware that the module controls
If YES, then one must examine each module to determine how its possiblefailure and replacement can be handled
Specifically, one has to consider whether the system is to be fault tolerant,
i.e. it will continue to function as if there is no malfunction in any of its
modules; or whether the system is to have high availability, i.e. it will
continue to function but with reduced capabilities
8/4/2019 06 Parallel Bus Issues
12/22
Curtin University of Technology, Australia 6-12
YH Leung (2009, 2010)
Fault tolerant systems are expensive to implement since they require redundant
modules, and logic to detect and replace the faulty module with the spare
module or one of the spare modules
Another question that one must ask when designing systems with hot swap is:
Is the purpose for supporting hot swap to enable repair, reconfiguration, or
both?
Supporting hot swap for repair means the system can detect a failed module,
take it off-line, notify the operator, and when the module is replaced, qualify
the new module for system operation and bring it smoothly back on-line
Reconfiguration can be accomplished as either replacement, enhancement,
or both. Replacement means replacing a functioning module that is close to
its use-by-date. Enhancement means replacing the module with a bettermodule. It can also mean adding more modules to the system
5.2 Hot Swapping in a Bus System
Goal is to perform card insertion or extraction and maintain data integrity on the
system bus, while preventing damage to components on the host system or on
the inserted/extract card
Hot swapping can be done with components that provide different levels of bus
isolation
In the first level, the components should be constructed such that they will
not be damaged in an unpowered card while connected to a live bus.
Moreover, their input and output pins if connected to the bus must not load
down the system bus, and the outputs must remain in the high impedance
state and have a power-off disable feature that eliminates current paths toCCV due to the diodes and parasitic elements
In the second level, we require in addition, circuitry on the component that
will keep its bus outputs in high impedance during power-up or power-down
In the third level, we further require circuitry that will pre-charge the bus to a
chosen voltage level in order to reduce glitches caused by the bus
impedance and capacitance at the hot swap interface
The aforesaid 3 levels of isolation will be discussed in more details in the sequel
8/4/2019 06 Parallel Bus Issues
13/22
Curtin University of Technology, Australia 6-13
YH Leung (2009, 2010)
We begin by considering the construction of a typical IC as shown in Fig. 13
Fig. 13 Diodes at the inputs and outputs of a typical IC
D1 is integrated into most CMOS devices for electrostatic discharge (ESD)
protection. Its function is to limit the positive voltages at the circuit input
D2 is implemented in most devices to limit undershoot due to line reflections
(see later), and for some ESD protection
D3 is implemented in most CMOS devices for ESD protection. In bipolar
devices, D3 is a parasitic diode, except for bipolar devices with open-
collector or tri-state output where they can be eliminated
D4 is a collector-to-substrate or drain-to-substrate parasitic diode. In bipolar
devices, a Schottky diode is often integrated to limit undershoot arising from
line reflections, while in CMOS devices, an additional diode is often
incorporated for ESD protection
The difficulties with the device of Fig. 13 when used in a hot swap application
are:
If the device is unpowered and if either the input or output is inserted into an
active bus, current will flow through D1 or D3, possibly damaging them or the
active system. Also, the bus voltage will be disrupted by being momentarily
pulled down to the inactive CCV
During extraction or power-down, D1 and D3 present a path to CCV and can
pull down the bus voltage to the decaying CCV level
8/4/2019 06 Parallel Bus Issues
14/22
Curtin University of Technology, Australia 6-14
YH Leung (2009, 2010)
Most bus interface devices now have D1 and D3 removed
They also have a power-off disable circuitry to protect the output parasitic diode
D3
Such devices meet the first level of isolation required for hot swapping
For the second level of isolation, most bus interface devices now also include a
power-up/power-down tri-state circuit to keep the outputs in high impedance
during power sequencing, as shown below
Fig. 14 Power-up/power-down tri-state circuit
During power-up, the collector of Q1 follows CCV which is interpreted as a
HIGH at the NOR gate input. This disables the output buffer regardless of
the voltage on the enable (OE ) or data pins. As CCV rises, the Q1 base-emitter junction becomes forward biased thus turning on Q1 and pulling the
collector of Q1 LOW and the NOR gate input LOW. Depending on the signal
at the OE pin, the output buffer can now be enabled or disabled, as required
for normal operations
During power-down, Q1 remains on to keep one input of the NOR gate LOW,
keeping control of the output buffer to the OE pin. When CCV drops below a
certain threshold voltage, Q1 turns off and the power-up/power-down circuit
keeps the output buffer disabled
8/4/2019 06 Parallel Bus Issues
15/22
Curtin University of Technology, Australia 6-15
YH Leung (2009, 2010)
Finally, we consider the third level of isolation
When an unpowered card is plugged into an active bus or backplane, the input
capacitance of the individual signal lines at the interface must be charged to the
instantaneous voltage on the corresponding bus line. These additional currents
can distort the signal that is being transmitted on that bus line at that instant
Fig. 15 shows the equivalent circuit that describes the above situation where sC
is the capacitance of the unpowered modules driver, traces, and connector, sL
is the inductance of the connector contact and circuit trace, iV is the initial
voltage of the module connector pin, and qV is the quiescent voltage on the bus
prior to live insertion
Fig. 15 RLC model of live insertion event
By solving the circuit shown in Fig. 15, it can be shown that a glitch can occur
on the bus, and if the amplitude and width of the glitch is sufficient, a receiver
on the bus can interpret the glitch as a valid signal and bus errors will occur
Fig. 16 Glitch on bus signal line due to live insertion
The size and width of the glitch can be minimised by reducing the voltagedifference between iV and qV . This can be achieved by applying a pre-charging
8/4/2019 06 Parallel Bus Issues
16/22
Curtin University of Technology, Australia 6-16
YH Leung (2009, 2010)
voltage to the cards signal lines as it is being inserted into the active bus. Since
qV can be HIGH or LOW, a pre-charge voltage somewhere near the middle of
HIGH and LOW is normally chosen
Fig. 17 gives the simplified schematic of a pre-charging circuit
Fig. 17 Simplified pre-charging circuit
See Reading List, Philips CBT6800 and TI SN74ABTE16245, for the data
sheets of two bus interface devices
8/4/2019 06 Parallel Bus Issues
17/22
Curtin University of Technology, Australia 6-17
YH Leung (2009, 2010)
Apart from the signal lines, one must also consider the disturbance on the
power supply lines of the bus caused by the insertion/extraction of a card
When an unpowered card is inserted, current will surge into the card (inrush
current) thereby causing a (negative) glitch on the power lines
Likewise, when a powered card is extracted, the supply current to the card will
be interrupted suddenly thereby causing another glitch (positive)
Power supply glitches can be overcome by including a power conditioning IC on
the card. This IC controls the rise and fall times of CCV on the card as the card
is being inserted or extracted
Finally, by considering the current flows to and from the devices on a card as
the card is being inserted or extracted, one can conclude that the cards busconnector pins should be staggered as shown below
Fig. 18 Bus connector with staggered pins
Thus, during insertion, Ground is connected first, followed by a signal to pre-
charge the signal lines, then CCV , and when all devices on the card have been
properly powered-up, the signal lines
In the case of extraction, the output signal lines are first put into the high
impedance state. The signal lines are then disconnected, followed by the power
lines. This ensures the signal lines are in a known state (high impedance) when
they are disconnected
8/4/2019 06 Parallel Bus Issues
18/22
Curtin University of Technology, Australia 6-18
YH Leung (2009, 2010)
6 Ground Bounce
6.1 What is Ground Bounce?
Ground bounce occurs when the output of a logic device on a logic chipswitches from a 1 to a 0, and a disturbance is observed in the otherwise
constant output voltage of another logic device on the same chip
Fig. 19 below shows a circuit model that helps explain above phenomenon
Note careful distinction between the ground and power supply lines of the
board, and the ground and power supply lines that run inside the chip
Board GND
Board VCC
Chip GND
Chip VCC
Inductance ofpackage pin,bond wire, etc.
CL
Digital IC Chip
VIH
VIL i(t)
vG(t)
Board GNDvi1(t) vo1(t)
L
vo2(t)vi2(t)
Board GND
v3(t)
v1(t) = 1
v2(t)
Fig. 19 Circuit model of ground bounce
Suppose initially
(i) Input of quiet device 1( )iv t is held high such that 1( )ov t is at 1
(ii) Input of active device 2( )iv t is at 1 such that 2( )ov t is at 1; and
(iii) ( ) 0Gv t = , i.e., chip ground is at same voltage potential as board ground
8/4/2019 06 Parallel Bus Issues
19/22
Curtin University of Technology, Australia 6-19
YH Leung (2009, 2010)
At 0t= , input of the active device switches from 1 to 0
Following sequence of events will then take place
(i) Output of the active device will start to conduct such that 2( )ov t is
effectively connected to the chip ground, and the charge that was storedin LC will start to be discharged through the active device, i.e., ( )i t will
start to flow where
2( )( ) oLdv t
i t Cdt
= (1)
(Minus sign appears since we define ( )i t to flow out of the positive
terminal of LC )
(ii) Change in ( )i t will cause a voltage ( )Gv t to develop across the parasitic
inductor L ( )
( )Gdi t
v t Ldt
= (2)
2( )ov t
2( ) ( )dL odti t C v t =
0
0
t
t
t0
( ) ( )dG dtv t L i t =
1 1( ) ( ) ( )i Gv t v t v t =
0 t
t0
3 1( ) ( ) ( )o Gv t v t v t = +
Fig. 20 Waveforms due to active device switching from 1 to 0
8/4/2019 06 Parallel Bus Issues
20/22
Curtin University of Technology, Australia 6-20
YH Leung (2009, 2010)
As can be seen from Fig. 20, 1 to 0 transition in output of the active device
can cause a ripple to appear in 3( )v t , output of the quiet device
Ground bounceis bounce in the chip ground relative to the board ground
Ground bounce can become particularly severe if a number of devices on the
same chip switch their outputs from high to low simultaneously
In this situation, the output sink currents are summed together as they flow out
of the chip through the inductance in the chips GND pin. For example, two
devices switching simultaneously will almost double magnitude of the bounce
relative to when only one device is switching
6.2 Potential Ill-Effects of Ground Bounce
1( )iv t is voltage at input gate of the quiet device relative to the chip ground. It
determines logic state of the quiet device
A potential problem is that the dip in 1( )iv t can cause the output of the quiet
device to switch momentarily to 0 if 1( )iv t drops below the input low threshold
of the quiet device
Another potential problem is with 3( )v t , input voltage of the device that is
connected to the output of the quiet device
Assuming the chip ground of the receiving device is at the same voltage
potential as the board ground, the dip in 3( )v t can cause the receiving device to
switch momentarily to 0 if 3( )v t drops below its input low threshold voltage
8/4/2019 06 Parallel Bus Issues
21/22
Curtin University of Technology, Australia 6-21
YH Leung (2009, 2010)
6.3 Cures for Ground Bounce
Ground bounce is unavoidable, but there exist techniques to reduce it
From IC manufacturers perspective
(i) From Eq. (1), we see peak value of ( )i t can be reduced by slowing down
falling/rising edge of the output voltage of the active device
This can be achieved through a proper design of the output stage of the
active device
(ii) From Eq. (2), we see ( )Gv t can be reduced by reducing ( )di t dt
But ( )i t must flow through output stage of the active device. Therefore, as
with first technique, ( )di t dt can be reduced through a proper design of
the output stage of the active device
(iii) From Eq. (2), we see ( )Gv t can also be reduced by reducing L
Techniques to achieve this include: (a) reduce length of the GND pin
through surface mount chip packaging; (b) reduce length of the bond wire
by, for example, providing multiple GND pins on the chip or relocating the
GND pin so that it is more centrally located with respect to the devices on
the chip; (c) minimise shared inductance on the chip by connecting the
ground of the devices to the common GND pin through a star connection
Note however that, reducing L does not necessarily reduce ground
bounce to the extent one might expect from Eq. (2). This is because by
reducing L , one gets a corresponding increase in the edge rate of 2( )ov t .
(iv) With reference to the plot of 1( )iv t in Fig. 20, we see that by providing
separate driver and logic GND pins on the chip, we can prevent the
bounce from appearing in 1( )iv t
From circuit designers perspective
(v) If a chip has many logic devices, try not to switch them simultaneously
(vi) Keep the load as close as possible to the chip to minimise the loop
inductance
(vii) Try not to connect a capacitive load to a logic devices output directly.
Insert a (small)resistor between them to damp down the offending current
( )i t
8/4/2019 06 Parallel Bus Issues
22/22
C ti U i it f T h l A t li 6 22
(viii) Use multi-layer boards with power supply and GND planes. Solder the
chips power pins directly to the planes to ensure lowest possible power
line inductance
(ix) Use decoupling capacitors, preferably one per chip and located close to
the ground pin. Purpose of the capacitors is to filter out the bounce ripples
in the supply lines before they affect other chips on the board
(x) Avoid sockets because of their relative large inductances
6.4 CCV Bounce
CCV bounceis dual of ground bounce
It occurs when output of the active device switches from 0 to 1
During CCV bounce, current flow from CCV , through output stage of the active
device, to charge up LC (see Fig. 19)
Sudden surge of current through the inductance in the CCV pin will cause the
chips internal CCV line to dip down first, then pulse up
Aforesaid bounce in the chip CCV will result in a momentary change to the quiet
devices input threshold voltages
Bounce in chip CCV will also affect stability of the quiet devices output voltage
These momentary changes may change the state of the logic devices driven by
the quiet device