ETC EP520

EP520 SDRAM Controller
December 5, 2000
Product Specification
AllianceCORE™ Facts
Eureka Technology, Inc.
4962 El Camino Real, Suite 108
Los Altos, CA 94022 USA
Phone: +1 650-960-3800
Fax:
+1 650-960-3805
E-Mail: [email protected]
URL:
www.eurekatech.com
Features
•
•
•
•
•
•
•
•
•
•
•
•
Supports Virtex™, Virtex™-E, and Spartan™-II FPGAs
Supports industry standard SDRAM and PC100
SDRAM DIMM.
Supports register mode and non-register mode PC100
SDRAM DIMM.
Programmable memory size and data width.
Supports industrial standard 16Mbit, 64Mbit, 128Mbit
and 256Mbit SDRAMs.
Supports burst size of 1 to 8 and full page burst.
Supports zero wait state burst data transfer to maximize
data bandwidth.
Programmable SDRAM access timing parameters.
Automatic refresh generation with programmable
refresh intervals.
Optional Error Correction Code (ECC).
Multiple external SDRAM partitions.
Supports external data buffer between user device and
SDRAM data bus
December 5, 2000
Core Specifics
Supported Family
Virtex
Device Tested
V50-6
CLB Slices
287
1
Clock IOBs1
IOBs1
116
Performance (MHz)
91
Xilinx Tools
3.2i
Special Features
None
Provided with Core
Documentation
User guide
Design File Formats
EDIF netlist
Constraints File
Top520.ucf
Verification
VHDL or Verilog test bench
Instantiation Templates
VHDL, Verilog
Reference designs &
None
application notes
Additional Items
None
Simulation Tool Used
Model Technology Modelsim™ 5.4b
Support
Support provided by Eureka Technology
Notes:
1. Assuming all core I/Os are routed off-chip
Applications
•
•
•
•
•
•
•
Networking equipment
Communication equipment
Video systems
Image processing equipment
Medical equipment
Avionics
PC peripherals
3-1
EP520 SDRAM Controller
Figure 1: EP520 SDRAM Controller Block Diagram
General Description
Functional Description
The EP520 SDRAM controller interfaces between a processor or DMA device with an SDRAM. It performs SDRAM
read and write access based on processor or DMA
requests.
The EP520 core is partitioned into modules as shown in
Figure 1 and described below
SDRAM timing such as row and column latency, precharge
timing, and row access length are automatically handled by
the SDRAM controller. All these timing parameters are set
by the SDRAM controller on system reset and can be programmed by the user during run time to optimize system
performance.
Based on the request signals ADS_B and CE_B, the state
machine sends control signals to the Counters, Address
Mux, and SDRAM control blocks to access to SDRAM.
READY_B is asserted for each read data that is returned
from the SDRAMs, or for each data that is written to the
SDRAMs. If an access to the Control Registers block is
requested on the CR_ADS_B input, the State Machine
sends appropriate control signals to the Control Registers
block to perform a register write.
The EP520 supports all industry standard SDRAM organizations, ranging from 16Mbit to 256Mbit devices, and from
X4 data width to X16 data width. The user can use multiple
SDRAMs to build access word size from16-bit to 64-bit
wide, or use standard SDRAM DIMMs to build the memory
system. The SDRAM size and word size are programmable
by the memory controller.
Zero wait state data bursting is supported by the SDRAM
controller to maximize data throughput. The back-end interface to user device such as CPU or DMA controller is a
standard microprocessor bus with wait state control. It can
be optimized easily to meet different application requirements.
3-2
State Machine
SDRAM Control
The SDRAM control block generates the CS_B, CAS_B,
RAS_B and WE_B signals and drives the appropriate
address and DQM[7:0] at the proper timing.
Counters
Under the control of the state machine, the counters keep
track of the burst length and various SDRAM timing parameters, such as RAS_B-to-CAS_B delay, active commandto-precharge time, etc, so that every command is issued at
the correct timing. These timing parameters are programmable through the Control Registers.
December 5, 2000
Eureka Technology, Inc.
Address Mux
The Address Mux takes the input address on ADDR[31:0]
and drives the correct bank address on BA and row or column address on MADDR.
Control Registers
The user can program the SDRAM controller to support different SDRAM sizes, burst lengths, and SDRAM timing
parameters. The registers are accessed through the control
register access signals, CR_XX (all CR_ signals).
Core Modifications
The SDRAM controller is designed in the XCV50PQ240
device. Cores for other packages can also be supported.
Eureka Technology will contract to modify the core to your
specifications.
Pinout
The pinout of the EP520 core has not been fixed to specific
FPGA I/O, thereby allowing flexibility with a user’s application. Signal names are shown in Figure 1 and described in
Table 2.
Verification Methods
Functional simulation has been done using Model Technology ModelsimTM 5.4b. Static timing analysis has been
done for all paths using the timing analyzer in Xilinx Foundation Series 2.1i.Recommended Design Experience
The user must be familiar with HDL design methodology as
well as instantiation of Xilinx netlists in a hierarchical design
environment.
Table 1: Core Signal Pinout
Signal
ADDR[31:0]
ADS_B
BE_B[7:0]
BLAST_B
CE_B
CLK
CR_ADR[1:0]
CR_ADS_B
CR_DT[31:0]
CR_RDY_B
CR_WR
OE_B
OFR_B
READY_B
RESET_B
T_R_B
WR
BA[1:0]
CAS_B
CS_B[3:0]
DQM[7:0]
MADDR[12:0]
RAS_B
REGE
WE_B
Signal
Direction
Input
Input
Input
Input
Input
Input
Input
Input
Input
Output
Input
Output
Output
Output
Input
Output
Input
Output
Output
Output
Output
Output
Output
Output
Output
Description
Address input
Address strobe
Byte enable
Burst last
Chip enable
System clock
Register address
Control register access
Register data
Control register ready
Register write
Output enable
Out of range
Ready
System reset
Transmit/Receive
Write enable
Bank address
Column address select
Chip select
Data mask
Memory address
Row address select
Register mode select
Write enable
Related Information
Recommended Design
Experience
Xilinx Programmable Logic
Users should have a basic knowledge about SDRAM and
decide the target device.
For information on Xilinx programmable logic or development system software, contact your local Xilinx sales office,
or:
Ordering Information
If you have inquiries or want to license our core, please
contact Eureka Technology directly. Eureka Technology
retains the right to make changes to these specifications at
any time without notice.
Phone : (650)960 3800
Email : [email protected]
Xilinx, Inc.
2100 Logic Drive
San Jose, CA 95124
Phone: +1 408-559-7778
Fax:
+1 408-559-7114
URL:
www.xilinx.com
For general Xilinx literature, contact:
Phone:
Email:
December 5, 2000
408-231-3386 (inside the USA)
408-879-5017 (outside the USA)
[email protected]
3-3