15
FN6982.1
November 19, 2009
Serial Bus Programming
Pins 16 (DI), 45 (ENB), and 46 (CLK) are used to
program the registers inside the QLx4300-S45. Figure
22shows an exemplary timing diagram for the signals on
these pins. The serial bus can be used to program a
single QLx4300-S45 according to the following steps:
1. The ENB pin is pulled ‘LOW’.
- While this pin is ‘LOW’, the data input on DI are
read into registers but not yet latched.
- A setup time of tSCK is needed between ENB going
‘LOW’ and the first rising clock edge.
2. At least 21 values are read from DI on the rising
edge of the CLK signal.
- If more than 21 values are passed in, then only the
last 21 values are kept in a FIFO fashion.
- The data on DI should start by sending the value
destined for register 21 and finish by sending the
value destined for register 1.
- A range of clock frequencies can be used. A typical
rate is 10MHz. The clock should not exceed 20MHz.
-Setup (tSDI) and hold (tHDI) times are needed
around the rising clock edge.
3. The ENB pin is pulled ‘HIGH’ and the contents of the
registers are latched and take effect.
- After clocking in the last data bit, an additional
tHEN should elapse before pulling the ENB signal
‘HIGH’.
- After completing these steps, the new values will
affect within tD.
Programming Multiple QLx4300-S45
Devices
The serial bus interface provides a simple means of
setting the equalizer boost levels with a minimal amount
of board circuitry. Many of the serial interface signals can
be shared among the QLx4300-S45 devices on a board
and two options are presented in this section. The first
uses common clock and serial data signals along with
separate ENB signals to select which QLx4300-S45
accepts the programmed changes. The second method
uses a common ENB signal as the serial data is
carried-over from one QLx4300-S45 to the next.
Separate ENB Signals
Multiple QLx4300-S45 devices can be programmed from
a common serial data stream as shown in Figure
23.Here, each QLx4300-S45 is provided its own ENB signal,
and only one of these ENB signals is pulled ‘LOW’, and
hence accepting the register data one at a time. In this
situation, the programming of each equalizer follows the
steps outlined in Figure
22.DI/DO Carryover
The DO pin (pin 17) can be used to daisy-chain the serial
bus among multiple QLx4300-S45 chips. The DO pin
outputs the overflow data from the DI pin. Specifically, as
data is pipelined into a QLx4300-S45, it proceeds
according to the following flow. First, a bit goes into
shadow register 1. Then, with each clock cycle, it shifts
over into subsequent higher numbered registers. After
shifting into register 21, it is output on the DO pin on the
same clock cycle. Thus, the DO signal is equal to the DI
signal, but delayed by 20 clock cycles. The timing
diagram for the DO pin is shown in Figure
24 where the
first 20 bits output from the DO are indefinite and
subsequent bits are the data fed into the DI pin. The
delay between the rising clock edge and the data
transition is tCQ.
A diagram for programming multiple QLx4300-S45s is
shown in Figure
25. It is noted that the board layout
should ensure that the additional clock delay experienced
between subsequent QLx4300-S45s should be no more
than the minimum value of tCQ, i.e. 12ns.
FIGURE 22. TIMING DIAGRAM FOR PROGRAMMING THE INTERNAL REGISTERS OF THE QLx4300-S45
R21
R20
R19
R1
tSDI tHDI
tSCK
tHEN
DI
CLK
ENB
QLx4300-S45