6 Altera Corporation
PIB 29: LVDS Comparison: APEX 20KE vs. Virtex-E Devices
Virtex-E LVDS Receiver Implementation
Because Virtex-E devices do not have dedicated LVDS circuitry at the
silicon level, the LVDS receiver and the LVDS transmitter must be
designed separately.
XAPP233: Multi-channel 622 MHz LVDS Data
Transfer with Virtex-E Devices
describes an LVDS receiver implementation
that has been validated only by software emulation. Analysis of the LVDS
receiver implementation suggests that it would have difficulty operating
at 622 Mbps in a real design.
The LVDS receiver implementation described in
XAPP233
requires an
on-board clock running at 311 MHz to achieve a data rate of 622 Mbps.
Each data channel requires two registers that are clocked by the rising
edges and the falling edges of the 311-MHz clock. The data captured by
these two registers is passed on to two 4-bit registers that act as a
serial-to-parallel converter. A prescaler, consisting of two cascaded
multiplexers, steps the clock frequency down to 155 MHz. Then the
155-MHz clock clocks the parallel data that will be stored in a block RAM.
The receiver also requires an external clock running at 77.75 MHz to shift
data out of the block RAM.
To achieve a 622-Mbps data rate in Virtex-E devices, the signal routing
between the configurable logic block (CLB) registers and the block RAM
must be tightly controlled by placing the block RAM as close as possible
to the CLB. This implementation requires both hand routing and hand
placement and only applies to the 8
×
data transfer mode. Both the 1
×
and
the 4
×
data transfer modes require separate implementations with
different constraint files and guide files for each implementation.
Timing Issues with the Virtex-E Receiver Implementation
To equalize path delays to different registers, a dummy load is required.
According to
XAPP233
, if the dummy load is placed in appropriate
locations, the delays can be reduced to within a few picoseconds (ps).
However, lab results show that Virtex-E devices cannot generate
repeatable delays with ps accuracy.
Furthermore, since timing parameters vary with the operating conditions,
dummy load placement will vary. A dummy load placement that works
under one set of operating conditions may not work under different
operating conditions. Therefore, the Virtex-E LVDS implementation
cannot function throughout the device’s operating range.