Memory controller and method for generating commands to a memory
First Claim
1. A memory controller for generating commands to a memory which uses encoded command signals not associated with conventional memory accesses, the memory controller comprising:
- a control portion for controlling operation of the memory controller, the control portion providing only memory control signals normally associated with the conventional memory accesses, the encoded command signals being encoded by encoding combinations of the memory control signals normally associated with the conventional memory accesses to form the encoded command signals;
an address comparator for receiving an address and for determining whether the address is assigned to the memory, the address comparator providing an output signal which both indicates a match between the address and one of a plurality of predetermined assigned addresses for the memory and which is also used as a first control signal for generation of one of the encoded command signals;
a control register for storing and providing memory configuration information for the memory controller, the control register also storing a command bit which is used as a second control signal for generation of the one of the encoded command signals; and
logic circuitry coupled to the control register, to the address comparator and to the control portion, the logic circuitry using the first and second control signals to provide a request signal to the control portion, the control portion providing one of the encoded command signals in response thereto.
22 Assignments
0 Petitions
Accused Products
Abstract
A memory controller (42) controls accesses to a command-based memory device (43) such as a synchronous DRAM. The memory controller (42) uses an address comparator (45) for both base address matching and command generation. When the memory controller (42) detects an access to the memory device (43) and a control register bit is set, a state machine (56) causes the command to be written to the memory device (43). The memory controller (42) thus allows the memory device (43) to be accessed with little additional circuitry, and to be connected to higher order address bits to speed the access. Since the commands are detected by accesses to the same memory locations as reads and writes, the memory controller (42) avoids creating “holes” in the memory map.
-
Citations
15 Claims
-
1. A memory controller for generating commands to a memory which uses encoded command signals not associated with conventional memory accesses, the memory controller comprising:
-
a control portion for controlling operation of the memory controller, the control portion providing only memory control signals normally associated with the conventional memory accesses, the encoded command signals being encoded by encoding combinations of the memory control signals normally associated with the conventional memory accesses to form the encoded command signals;
an address comparator for receiving an address and for determining whether the address is assigned to the memory, the address comparator providing an output signal which both indicates a match between the address and one of a plurality of predetermined assigned addresses for the memory and which is also used as a first control signal for generation of one of the encoded command signals;
a control register for storing and providing memory configuration information for the memory controller, the control register also storing a command bit which is used as a second control signal for generation of the one of the encoded command signals; and
logic circuitry coupled to the control register, to the address comparator and to the control portion, the logic circuitry using the first and second control signals to provide a request signal to the control portion, the control portion providing one of the encoded command signals in response thereto. - View Dependent Claims (2, 3, 4, 5)
a first logic gate having a first input connected to the first control signal, a second input connected to the second control signal, and an output for providing the request signal in response to the first and second control signals.
-
-
4. The memory controller of claim 3 wherein the control register further stores a second command bit which is used as a third control signal, and the logic circuitry provides a second request signal to the control portion, the logic circuitry further comprising:
a second logic gate having a first input connected to the first control signal, a second input connected to the third control signal, and an output for providing the second request signal in response to the first and second control signals.
-
5. The memory controller of claim 1 wherein the memory controller is further coupled to a processor, and the control portion of the memory controller further comprises a state machine which interprets requests from the processor, the state machine having a predetermined plurality of defined states which define when the encoded command signals are provided to the memory and what encodings are given.
-
6. In a memory system having a memory controller, a method for generating commands to a memory which uses encoded command signals not associated with conventional memory accesses, the method comprising the steps of:
-
providing a control circuit for controlling operation of the memory controller, the control circuit providing only memory control signals normally associated with the conventional memory accesses, the encoded command signals being encoded by encoding combinations of the memory control signals normally associated with the conventional memory accesses to form the encoded command signals;
receiving an address and determining whether the address is assigned to the memory by comparing the address and one of a plurality of predetermined assigned addresses for the memory;
providing an address match signal in response to determining that the address is assigned to the memory;
using the address match signal as a first control signal for generation of one of the encoded command signals;
storing and providing memory configuration information for the memory controller in a control register, the control register also storing a command bit which is used as a second control signal for the generation of one of the encoded command signals; and
providing logic circuitry which receives the first and second control signals and provides a first request signal to the control circuit, the control circuit providing one of the encoded command signals in response thereto. - View Dependent Claims (7, 8, 9, 10)
providing a first logic gate, the first logic gate having a first input for receiving the first control signal, a second input for receiving the second control signal, and an output for providing the first request signal to the control circuit in response to the first and second control signals; and
providing a second logic gate, the second logic gate having a first input for receiving the first control signal, a second input for receiving the third control signal, and an output for providing a second request signal to the control circuit in response to the first and third control signals.
-
-
9. The method of claim 6 further comprising the step of:
synchronously clocking the memory with a clock signal as a synchronous dynamic random access memory.
-
10. The method of claim 6 wherein the control circuit comprises a state machine which interprets external requests, the state machine having a predetermined plurality of defined states which define when the encoded command signals are provided to the memory and what encodings are given.
-
11. A data processing system comprising:
-
a processor for communicating data, addresses and control information;
a memory coupled to the processor, the memory storing and providing data to the processor from a predetermined mapped section of the memory; and
a memory controller coupled to the processor and the memory, the memory controller providing only memory control signals normally associated with conventional memory accesses to the memory and providing an encoding of the control signals to generate encoded command signals used to control operation of the memory not associated with the conventional memory accesses, the encoded command signals being encoded by encoding combinations of the memory control signals normally associated with the conventional memory accesses to form the encoded command signals, the memory controller having address compare circuitry for comparing received addresses with addresses of the memory and providing an output match signal for use both as an address match indication and for use to generate the encoded command signals, the address compare circuitry sharing a portion of the predetermined mapped section of the memory to provide data to the processor and to generate the encoded command signals used to control the operation of the memory not associated with the conventional memory accesses, thereby avoiding separate and additional memory mapping to support the address compare circuitry. - View Dependent Claims (12, 13, 14, 15)
-
Specification