XC3S400-4FT256C Xilinx Inc, XC3S400-4FT256C Datasheet - Page 24

no-image

XC3S400-4FT256C

Manufacturer Part Number
XC3S400-4FT256C
Description
SEMI CONDUCTOR
Manufacturer
Xilinx Inc
Datasheet

Specifications of XC3S400-4FT256C

Case
BGA
Dc
04+

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
XC3S400-4FT256C
Manufacturer:
ISSI
Quantity:
101
Part Number:
XC3S400-4FT256C
Manufacturer:
XILINX
0
Part Number:
XC3S400-4FT256C
Manufacturer:
XILINX/赛灵思
Quantity:
20 000
Part Number:
XC3S400-4FT256C0985
Manufacturer:
XILINX
Quantity:
6 633
Part Number:
XC3S400-4FT256CES
Manufacturer:
XILINX
0
Spartan-3 FPGA Family: Functional Description
The carry chain, together with various dedicated arithmetic
logic gates, support fast and efficient implementations of
math operations. The carry chain enters the slice as CIN
and exits as COUT. Five multiplexers control the chain:
CYINIT, CY0F, and CYMUXF in the lower portion as well as
CY0G and CYMUXG in the upper portion. The dedicated
arithmetic logic includes the exclusive-OR gates XORG and
XORF (upper and lower portions of the slice, respectively)
as well as the AND gates GAND and FAND (upper and
lower portions, respectively). For more details on the carry
logic, refer to the “Using Carry and Arithmetic Logic” chap-
ter in UG331.
Main Logic Paths
Central to the operation of each slice are two nearly identi-
cal data paths, distinguished using the terms top and bot-
tom. The description that follows uses names associated
with the bottom path. (The top path names appear in paren-
theses.) The basic path originates at an interconnect-switch
matrix outside the CLB. Four lines, F1 through F4 (or G1
through G4 on the upper path), enter the slice and connect
directly to the LUT. Once inside the slice, the lower 4-bit
path passes through a function generator ‘F’ (or ‘G’) that
performs logic operations. The function generator’s Data
output, ‘D’, offers five possible paths:
1. Exit the slice via line ‘X’ (or ‘Y’) and return to
2. Inside the slice, ‘X’ (or ‘Y’) serves as an input to the
3. Control the CYMUXF (or CYMUXG) multiplexer on the
4. With the carry chain, serve as an input to the XORF (or
5. Drive the multiplexer F5MUX to implement logic
In addition to the main logic paths described above, there
are two bypass paths that enter the slice as BX and BY.
Once inside the FPGA, BX in the bottom half of the slice (or
BY in the top half) can take any of several possible
branches:
1. Bypass both the LUT and the storage element, then exit
2. Bypass the LUT, then pass through a storage element
3. Control the wide function multiplexer F5MUX (or
24
54
interconnect.
DXMUX (DYMUX) which feeds the data input, ‘D’, of
the FFX (FFY) storage element. The ‘Q’ output of the
storage element drives the line XQ (or YQ) which exits
the slice.
carry chain.
XORG) exclusive-OR gate that performs arithmetic
operations, producing a result on ‘X’ (or ‘Y’).
functions wider than four bits. The ‘D’ outputs of both
the F-LUT and G-LUT serve as data inputs to this
multiplexer.
the slice as BXOUT (or BYOUT) and return to
interconnect.
via the D input before exiting as XQ (or YQ).
F6MUX).
www.xilinx.com
4. Via multiplexers, serve as an input to the carry chain.
5. Drives the DI input of the LUT.
6. BY can control the REV inputs of both the FFY and FFX
7. Finally, the DIG_MUX multiplexer can switch BY onto
Other slice signals shown in
cussed in the sections that follow.
Function Generator
Each of the two LUTs (F and G) in a slice have four logic
inputs (A1-A4) and a single output (D). This permits any
four-variable Boolean logic operation to be programmed
into them. Furthermore, wide function multiplexers can be
used to effectively combine LUTs within the same CLB or
across different CLBs, making logic functions with still more
input variables possible.
The LUTs in both the right-hand and left-hand slice-pairs not
only support the logic functions described above, but also
can function as ROM that is initialized with data at the time
of configuration.
The LUTs in the left-hand slice-pair (even-numbered col-
umns such as X0 in
additional functions that the right-hand slice-pair (odd-num-
bered columns such as X1) do not.
First, it is possible to program the “left-hand LUTs” as dis-
tributed RAM. This type of memory affords moderate
amounts of data buffering anywhere along a data path. One
left-hand LUT stores 16 bits. Multiple left-hand LUTs can be
combined in various ways to store larger amounts of data. A
dual port option combines two LUTs so that memory access
is possible from two independent data lines. A Distributed
ROM option permits pre-loading the memory with data dur-
ing FPGA configuration.
Second, it is possible to program each left-hand LUT as a
16-bit shift register. Used in this way, each LUT can delay
serial data anywhere from one to 16 clock cycles. The four
left-hand LUTs of a single CLB can be combined to produce
delays up to 64 clock cycles. The SHIFTIN and SHIFTOUT
lines cascade LUTs to form larger shift registers. It is also
possible to combine shift registers across more than one
CLB. The resulting programmable delays can be used to
balance the timing of data pipelines.
Block RAM Overview
All Spartan-3 devices support block RAM, which is orga-
nized as configurable, synchronous 18Kbit blocks. Block
RAM stores relatively large amounts of data more efficiently
than the distributed RAM feature described earlier. (The lat-
ter is better suited for buffering small amounts of data any-
where along signal paths.) This section describes basic
Block RAM functions. For more information, refer to the
“Using Block RAM” chapter in UG331.
storage elements.
the DIG line, which exits the slice.
Figure
9) of each CLB support two
Figure 10, page 23
DS099-2 (v2.2) May 25, 2007
Product Specification
are dis-
R

Related parts for XC3S400-4FT256C