R
DS030 (v1.5) April 4, 2000 3
Sparta n Family of PR OMs
Co nt rol ling P R OMs
Connecting the Spartan device with the PROM:
•The DATA output of the PROM drives the DIN input of
the lead Spartan device.
•The Master Spartan device CCLK output drives the
CLK input of the P ROM .
•The RESET/OE input of the PROM is driven by the INIT
output of the Spartan device. This connection assures
that the PROM address counter is reset befor e the start
of any (re)configuration, even when a reconfiguration is
initiated by a VCC glitch. Other methods – such as
driving RESET/OE from LDC or system reset – assume
that the PROM internal power-on-reset is always in step
with the FPGA’s internal power-on-reset, which may not
be a safe assumption.
•The CE input of the PROM is driven by the DONE
output of the Spartan device, provided that DONE is not
permanently grounded. Otherwise, LDC can be used to
drive CE, but m ust then be unconditionally High during
user operation. CE can also be permanently tied Low,
but this keeps the DATA output active and causes an
unnecessary supply current of 10 mA maximum.
FPG A Master Serial Mode Summary
The I/O and logic functions of the Configurable Logic Block
(CLB) and their associated interconnections are estab-
lished by a configuration program. The program is loaded
either automatically upon power up, or on command,
depending on the state of the Spartan device MODE pin. In
Master Serial mode, the Spartan device automatically
loads the configuration progr am from an external memory.
The Spartan PROM has been designed for compatibility
with the Master Serial mode.
Upon power-up or reconfiguration, the Spartan device
enters the Master Serial mode when the MODE pin is Low.
Data is read from the PROM sequentially on a single data
line. Synchronization is provided by the rising edge of the
temporary signal CCLK, which is generated during confi gu-
ration.
Master Serial mode provides a simple configuration inter-
face. Only a serial data line and two control lines are
required to configure the Spartan device. Data from the
PROM is read sequentially, accessed via the internal
address and bit counters which are incremented on every
valid rising edge of CCLK .
If the user-programmable, dual-function DIN pin on the
Spartan device i s used only for configur ation, it must stil l be
held at a defined level during normal operation. The Spar -
tan family takes care of this automatically with an on-chip
default pull-up resistor.
Prog r am mi n g the F PG A Wi th Counte r s
Unc hange d Up on Completion
When multiple-configurations for a single Spartan device
are stored in a PROM, the OE pin should be tied Low . Upon
power-up, the internal address counters are reset and con-
figuration begins with the first program stored in memory.
Since the OE pin is held Low, the address counters are left
unchanged after configuration is complete. Therefore, to
reprogram the FPGA with another program, the DONE line
is pulled Low and configuration begins at the last value of
the address counters.
This method fails if a user applies RESET during the Spar-
tan device configuration process. The Spartan device
aborts the configuration and then restarts a new configura-
tion, as intended, but the PROM does not reset its address
counter , since it never saw a High level on its OE input. The
new configuration, therefore, reads the remaining data in
the PR OM an d interprets it as pr eamble, length count etc.
Since the Spartan device is the Master, it issues the neces-
sary number of CCLK pulses, up to 16 million (224) and
DONE g oes High. However, the Spartan device configura-
tion will be completely wrong, with potential contentions
inside the Spartan device and on its output pins. This
method must, therefore, never be used when there is any
chance of external reset during configuration.