Method and apparatus for using internal delays for adjusting setup and hold times in a memory device
A method and apparatus for compensating address and control lines to account for clock delays within a memory device is disclosed. Latches are located directly within a the storage area of the memory device, so that the parasitic capacitance inherent within the address and control lines can be advantageously employed for introducing delay. The parasitic delay enables the clock, address, and control lines to be synchronized, yet does not require introducing delay blocks and so the overall speed of the memory device is improved.
The invention relates to a memory device which uses the parasitic delay inherent within signal lines to compensate for an inherently slower clock signal.
BACKGROUND OF THE INVENTION It is well known for memory devices to latch address, data and command information before they are processed to a memory core, i.e. memory banks, blocks, or other type of storage areas. However, a problem with such latching is that the separate clock, address data, and control paths often have differing lengths and inherent delays. For example,
Referring back to
One known way of compensating for the differing signal delays includes adding delay in the fastest signal path to balance against the slowest signal path. Thus,
In one aspect, the invention provides a memory device having an input buffer; a core memory storage area connected to the input buffer through a plurality of address, control, data and clock signal lines; a latch located within the core memory storage area and respectively associated with each address data, control line, whereby the parasitic capacitance of the address, data and control lines introduces sufficient delay to synchronize the arriving address, data, and command signals with clock signals transmitted along the clock lines. The memory device also has an optional delay associated with the input to each latch for adding a specific amount of delay if necessary, where the delay is adjustable. These and other features and advantages of the invention will be more clearly seen from the following detailed description of the invention which is provided in connection with the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
Although
The memory controller 902 is also coupled to one or more memory buses 907. Each memory bus accepts memory components 908 which include at least one memory device 610 of the present invention. The memory components 908 may be a memory card or a memory module. Examples of memory modules include single inline memory modules (SIMMs) and dual inline memory modules (DIMMs). The memory components 908 may include one or more additional devices 909. For example, in a SIMM or DIMM, the additional device 909 might be a configuration memory, such as a serial presence detect (SPD) memory. The memory controller 902 may also be coupled to a cache memory 905. The cache memory 905 may be the only cache memory in the processing system. Alternatively, other devices, for example, processors 901 may also include cache memories, which may form a cache hierarchy with cache memory 905. If the processing system 900 include peripherals or controllers which are bus masters or which support direct memory access (DMA), the memory controller 902 may implement a cache coherency protocol. If the memory controller 902 is coupled to a plurality of memory buses 916, each memory bus 916 may be operated in parallel, or different address ranges may be mapped to different memory buses 907.
The primary bus bridge 903 is coupled to at least one peripheral bus 910. Various devices, such as peripherals or additional bus bridges may be coupled to the peripheral bus 910. These devices may include a storage controller 911, an miscellaneous I/O device 914, a secondary bus bridge 915, a multimedia processor 918, and an legacy device interface 920. The primary bus bridge 903 may also coupled to one or more special purpose high speed ports 922. In a personal computer, for example, the special purpose port might be the Accelerated Graphics Port (AGP), used to couple a high performance video card to the processing system 900. In addition to memory device 931 which may contain a buffer device of the present invention, any other data input device of
The storage controller 911 couples one or more storage devices 913, via a storage bus 912, to the peripheral bus 910. For example, the storage controller 911 may be a SCSI controller and storage devices 913 may be SCSI discs. The I/O device 914 may be any sort of peripheral. For example, the I/O device 914 may be an local area network interface, such as an Ethernet card. The secondary bus bridge may be used to interface additional devices via another bus to the processing system. For example, the secondary bus bridge may be an universal serial port (USB) controller used to couple USB devices 917 via to the processing system 900. The multimedia processor 918 may be a sound card, a video capture card, or any other type of media interface, which may also be coupled to one additional devices such as speakers 919. The legacy device interface 920 is used to couple legacy devices, for example, older styled keyboards and mice, to the processing system 900. In addition to memory device 931 which may contain a buffer device of the invention, any other data input device of
The processing system 900 illustrated in
Claims
1-25. (canceled)
26. A memory device, comprising:
- an input buffer for receiving from a first signal line externally supplied information;
- a core memory storage area connected to said input buffer through an internal signal line; and
- a latch, located within said core memory storage area and connected to said signal line for latching said externally supplied information on said internal signal line in response to an externally supplied clock signal received on a clock signal line.
27. The memory device of claim 26, wherein a predetermined timing relationship between said externally supplied clock signal and said externally supplied information is maintained at said latch by delaying said externally supplied information through a delay device.
28. The memory device of claim 27, wherein said externally supplied information comprises address information.
29. The memory device of claim 28, wherein said externally supplied information further comprises command information.
30. The memory device of claim 29, wherein said externally supplied information further comprises data to be written to said core memory storage area.
31. A memory device, comprising:
- a plurality of address input buffers for receiving address data;
- a core memory storage area;
- a plurality of data input buffers for receiving data to be stored in said core memory storage area;
- a first and second plurality of delay devices;
- a plurality of address signal lines;
- a plurality of data signal lines;
- a plurality of address latches provided at said core memory storage area and respectively connected by said plurality of address signal lines and said first plurality of delay devices to said plurality of address input buffers;
- a plurality of data latches provided at said memory core storage area and respectively connected by said plurality of data signal lines and said second plurality of delay devices to said plurality of data input buffers; and
- a clock signal path for providing a clock signal for operating said latches to latch in incoming data;
- wherein said clock signal, address data, and data to be stored are provided from an external source
32. The memory device of claim 31, wherein a predetermined timing relationship between said clock signal and each of said address data and data to be stored is respectively maintained at said pluralities of address and data latches by said first and second plurality of delay devices.
33. The memory device of claim 32, further comprising:
- a plurality of command input buffers for receiving command data.
34. A processor system, comprising:
- a processor; and
- a memory circuit for exchanging data with said processor, said memory circuit comprising a memory device, said memory device comprising:
- an input buffer for receiving from a first signal line externally supplied information;
- a core memory storage area connected to said input buffer through an internal signal line; and
- a latch, located within said core memory storage area and connected to said signal line for latching said externally supplied information on said internal signal line in response to an externally supplied clock signal received on a clock signal line.
35. The memory device of claim 34, wherein a predetermined timing relationship between said externally supplied clock signal and said externally supplied information is maintained at said latch by delaying said externally supplied information through a delay device.
36. The memory device of claim 35, wherein said externally supplied information comprises address information.
37. The memory device of claim 36, wherein said externally supplied information further comprises command information.
38. The memory device of claim 37, wherein said externally supplied information further comprises data to be written to said core memory storage area.
39. A method of operating a memory device, comprising:
- transmitting, from an external source, a first signal via an input buffer to a memory core area along a first transmission path;
- transmitting, from said external source, a clock signal in accordance with a predetermined timing relationship to said first signal, to said memory core area;
- delaying the transmission said first signal along said first transmission path to maintain said predetermined timing relationship; and
- latching said first signal into said memory core area with a latch located inside said memory core using said clock signal.
Type: Application
Filed: Oct 3, 2005
Publication Date: May 4, 2006
Inventors: Ebrahim Abedifard (Sunnyvale, CA), Frankie Roohparvar (Milpitas, CA), Dean Nobunaga (Cupertino, CA)
Application Number: 11/240,640
International Classification: G06F 1/12 (20060101);