SDRAM controller implemented in a PLD

Electrical computers and digital processing systems: memory – Storage accessing and control – Access timing

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C326S039000, C713S503000, C713S400000, C716S030000

Reexamination Certificate

active

06487648

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to synchronous dynamic random access memory (SDRAM), and particularly to an SDRAM controller implemented in a programmable logic device (PLD).
2. Description of the Related Art
The clock rates of the first microprocessors were limited to a range between 1 and 10 Mhz. Typically, even the simplest of instructions, required several clocks to execute. Assuming a main memory cycle time of 250 nanoseconds, approximately 4 million accesses to main memory were needed every second to maintain the first processors at their maximum speed. Asynchronous dynamic random access memory (DRAM) chips, having an access time of 80-100 nanoseconds, met these requirements.
Next generation microprocessors advanced to internal clock speeds in excess of 100 Mhz. However, the DRAM of the time, which had advanced to 60 nanosecond access time, thereby still requiring 10-12 clock cycles to fill a cache line, could not keep pace with those microprocessors. To solve this problem, Fast Page Mode (FPM) DRAMs and EDO (Extended Data Out) DRAMs were developed which provided some performance improvement.
Eventually, improvements in semiconductor processing technology enabled microprocessors to operate beyond 133 Mhz. However, development of a memory device to take full advantage of this speed proved more difficult. Virtually all then available DRAM devices used asynchronous clocking systems, i.e. the clocking signals necessary to perform memory access functions were not synchronized to the associated microprocessor. Specifically, although memories were accessed by signals sent by the microprocessor, the exact time interval between the time a request was sent to a memory and the time a response was received was dependent on the particular internal features of the memory. Thus, system designers had to allow for the “worst case” response time between requests for information and the anticipated time the information would be available. This “worst case” response time necessarily wasted time in handling many memory functions.
After extensive research, a type of memory called synchronous DRAM (SDRAM) was developed to operate with these megafast microprocessors. SDRAM is a generic name for various kinds of DRAM that are synchronized with the optimal clock speed of the microprocessor. In this manner, an SDRAM can increase the number of instructions that the microprocessor can perform in a given time.
Typically, SDRAMs are fabricated as separate integrated circuits from other system components. The SDRAMs, microprocessor, and other components of the system are interconnected via a system bus. An SDRAM controller, which is placed between the system bus and the SDRAM, facilitates communication between the microprocessor and the SDRAM, as well as provides a “window” into the functioning of the SDRAM.
Currently, many of these SDRAM controllers are application specific integrated circuits (ASICs), which provide specific functionality for predetermined SDRAMs. Unfortunately, the extensive engineering necessary to develop and the long lead time associated with the manufacture of these custom devices render ASIC SDRAM controllers an expensive component of the system. This disadvantage is further exacerbated by the continuing fast pace of SDRAM technology development. Thus, by the time an ASIC SDRAM controller is placed in the system and the system is commercially available, new features are introduced on the next generation of SDRAM devices, thereby necessitating another expensive, ASIC development.
Therefore, a need arises for a device to implement an SDRAM controller which reduces the current lead time development of the controller as well as the time to market.
SUMMARY OF THE INVENTION
In accordance with the present invention, a programmable logic device (PLD) implements the SDRAM controller. The configurable logic of the PLD forms an interface between the system and the SDRAM, as well as a state machine to operate the controller and the interface. In this manner, many functions of the SDRAM controller can be selectively controlled and easily changed by reprogramming the PLD. For example, in one embodiment, the number of locations as well as the sequence of memory access in the burst mode are programmable in the PLD.
The state machine, implemented by the configurable logic of the PLD, includes the following steps during a Write operation. If the system issues a WRITE command, but a Ras-to-Cas Delay time in the SDRAM has not been met, then the controller enters a Write Wait for Ras-to-Cas Delay state. However, if the system issues a WRITE command, and the Ras-to-Cas Delay time in the SDRAM has been met, then the controller enters a Write Command state in which the controller issues data and a WRITE command to the SDRAM. After the WRITE command is issued, the controller continues to provide data in a Write state until burst end, at which time the controller returns to an Idle state.
The state machine includes the following steps during a Read operation. If the system issues a READ command, but a Ras-to-Cas Delay time in the SDRAM has not been met, then the controller enters a Read Wait for Ras-to-Cas Delay state. However, if the system issues a READ command, and the Ras-to-Cas Delay time in the SDRAM has been met, then the controller enters a Read Command state and issues a READ command to the SDRAM. After the Read Command state, the controller automatically enters a Read Command, Wait for Cas Latency state. After the Read Command, Wait for Cas Latency state, the controller reads data in a Read state until burst end, at which time the controller enters an Idle state.
Specific PLDs, such as the Xilinx Virtex field programmable gate arrays (FPGAs), provide features which optimize the design of the SDRAM controller. In accordance with the present invention, dedicated circuits of the PLD eliminate skew between the system clock, a global clock in the PLD, and the SDRAM clock. These dedicated circuits include a first delay locked loop (DLL) receiving the system clock and outputting the SDRAM clock and a first feedback signal to the first DLL, and a second DLL receiving the system clock and outputting a second feedback signal to the second DLL. Of importance, the first feedback signal is external to the PLD and the second feedback signal is internal to the PLD.
In one embodiment, a global clock buffer on the PLD drives the system clock to the first and second DLLs. Other global clock buffers on the PLD drive the feedback signals to the DLLs.
Other dedicated circuits that optimize the SDRAM controller include a flip-flop associated with each input and output buffer of the input/output (I/O) blocks in the PLD. The present invention registers the input signals from and output signals to the SDRAMs. The I/O block further includes a programmable delay connected to the D input of the flip-flop registering the input signals to the PLD. The delay in matched to the internal clock distribution delay of the PLD, thereby eliminating pad-to-pad hold time.


REFERENCES:
patent: 5319252 (1994-06-01), Pierce et al.
patent: 5331220 (1994-07-01), Pierce et al.
patent: 5535342 (1996-07-01), Taylor
patent: 5717644 (1998-02-01), Fladderman et al.
patent: 5737612 (1998-04-01), Ansel et al.
patent: 5917761 (1999-06-01), Tietjen et al.
patent: 5926838 (1999-07-01), Jeddeloh
patent: 5959929 (1999-09-01), Cowles et al.
patent: 5982697 (1999-11-01), Williams et al.
patent: 5995424 (1999-11-01), Lawrence et al.
patent: 6043677 (2000-03-01), Albu et al.
patent: 6107826 (2000-08-01), Young et al.
patent: 6130552 (2000-10-01), Jefferson et al.
patent: 6154078 (2000-11-01), Stave
patent: 6191613 (2001-02-01), Schultz et al.
patent: 6201754 (2001-03-01), Ooishi et al.
patent: 6219747 (2001-04-01), Banks et al.
patent: 6233694 (2001-05-01), Allard et al.
Micron Technology, Inc., “Synchronous DRAM,” 16Mb: x16 SDRAM, p. 1-48, ( Dec. 10, 1998).
Xilinx, Inc., “Using the Virtex Delay-Locked Loop,” XAPP132, No. 1.4, p. 1-9, ( Oct. 11, 1999).
Xilinx, Inc., “Using The Virtex SelectI/O,” XAPP133

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

SDRAM controller implemented in a PLD does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with SDRAM controller implemented in a PLD, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and SDRAM controller implemented in a PLD will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2971930

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.