WO2002017095A1 - Control circuit for a dram memory - Google Patents
Control circuit for a dram memory Download PDFInfo
- Publication number
- WO2002017095A1 WO2002017095A1 PCT/FR2001/002669 FR0102669W WO0217095A1 WO 2002017095 A1 WO2002017095 A1 WO 2002017095A1 FR 0102669 W FR0102669 W FR 0102669W WO 0217095 A1 WO0217095 A1 WO 0217095A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- instructions
- series
- memory
- circuit
- instruction
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1673—Details of memory controller using buffers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
Definitions
- the present invention relates to a memory control circuit, and in particular a control circuit for an external memory of SDRAM, DDR or RAMBUS type comprising several memory areas.
- Many electronic systems need to store a large amount of data in a memory and they need to access this data quickly.
- Memories of the dynamic RAM or DRAM type generally comprising several memory zones each accessible by means of a cache with high data rate, are suitable for this type of use. These memories are generally discrete integrated circuits (external memories) which must be connected to memory control circuits making the connection with the rest of the electronic system.
- FIG. 1 schematically represents a memory control circuit 2 connected to a memory 4 of DRAM type via a COM control bus and a DAT data bus.
- the memory 4 comprises two memory zones A and B each of which is connected to the data bus DAT by means of a cache, respectively BUFA and BUFB.
- the memory 4 is clocked by a clock signal CK.
- the memory zones A and B are both organized in several memory pages (not shown), each of which comprises a predetermined number of words.
- BUFA and BUFB caches are connected by the COM control bus to circuit 2.
- Circuit 2 includes a priority management block 8 connected to receive write and / or read requests from blocks (not shown) which are also connected to the bus DAT for exchanging data with the memory 4.
- the block 8 receives write and / or read requests intended for one or the other of the memory zones.
- block 8 receives simultaneously two requests provided by two blocks, it processes in priority the request received from that of the two blocks which has priority over the other.
- the order of priority of the blocks is generally progressed when the circuit is initialized.
- Circuit 2 also includes a block 10, connected between the output of block 8 and the COM bus, which converts requests received by block 8 from a communication protocol specific to circuit 2 to a communication protocol specific to memory. 4.
- the protocol accepted by a memory depends on the type and manufacturer of the memory.
- FIG. 2 schematically illustrates two series of instructions supplied by the block 10 in cadence with the clock signal CK.
- block 10 receives a first request to write a word, intended for an address A1 "of a page A1 of the memory area A, then a second request to write a word, intended for an address Bl 'of a page Bl of the memory area B.
- write requests each begin with the rewriting of the data of the cache considered in a page previously processed (cache preload, instruction PRE), followed by the writing of the page considered in said cache (activation of the cache, ACT instruction), followed
- the cache cannot receive any other instruction, and block 10 must supply two "NOP" non-instructions between the precharge instruction and the instruction d next activation.
- the block 10 supplies the bus COM with an ACT A1 command for activating the page commanding the cache BUFA to read the address page Al of the memory area A.
- activation instruction is supplied to the BUFA cache in one period T but the activation operation is executed in three periods, and block 10 must supply two NOP instructions between the activation instruction and the following write instruction .
- block 10 provides an instruction WR A1 'for writing the address word Al' in the cache BUFA. It will be noted that the word which must be written at the address A1 'is supplied to the data bus DAT when the instruction WR A1 is supplied. Only one period is necessary to execute the write operation.
- the operation of writing the address word Al 'of the page A1 of the memory area A is terminated.
- the second write request proceeds in a similar fashion to the first write request.
- block 10 provides a PRE B0 instruction for precharging the BUFB cache.
- block 10 provides an ACT Bl instruction for activating the address page Bl of the memory area B.
- block 10 provides a writing instruction WR Bl' of the address word Bl 'of the page Bl.
- the execution of a request to read a word from a page of a memory area is similar to the execution of a request to write a word described above, a word read (RD) instruction replacing 1 word writing instruction (WR).
- RD word read
- WR word writing instruction
- An object of the present invention is to provide a control circuit allowing access with a high data rate to a DRAM type memory comprising at least two zones.
- Another object of the present invention is to provide such a circuit which can operate with an inexpensive memory having a low maximum operating frequency.
- the present invention provides a memory control circuit comprising at least two areas which cannot be accessed simultaneously, the circuit comprising first means for memorizing series of instruction reading and / or writing separately for each of said zones, second means for detecting that a first instruction intended for a first zone is a predetermined instruction which must be followed by a period during which the first zone cannot receive another instruction, and third means for, during said period, providing instructions to another area of the memory.
- each of the areas of the memory is accessible via a particular cache.
- the circuit further comprises fourth means for receiving read and / or write requests and for writing them each in the form of a series of instructions in the first means, each series of instructions comprising a predetermined number of data.
- said predetermined number of data of a series of instructions notably comprises an indication of the order of priority existing between each series of instructions stored in the first means.
- said predetermined number of data of a series of instructions notably comprises an indication that the series of instructions is aimed at reading or writing from the memory.
- said predetermined number of data of a series of instructions notably comprises the addresses for which said series of instructions is intended.
- said predetermined number of data of a series of instructions notably comprises the instructions forming said series of instructions.
- said predetermined number of data of a series of instructions notably comprises the time necessary to execute said series of instructions.
- the first means comprise for each zone of the memory a predetermined number of registers.
- said predetermined number of registers comprises index registers for managing the writing and reading of the other registers of said predetermined number of registers, respectively by the fourth and second means.
- FIG. 1, previously described schematically represents a conventional control circuit of a DRAM memory
- Figure 2, previously described illustrates the operation of the control circuit of Figure 1
- FIG. 3 schematically represents a control circuit according to the present invention
- Figure 4 schematically illustrates the operation of the control circuit of Figure 3
- FIG. 5 schematically represents the structure of a set of registers of the control circuit according to the present invention.
- FIG. 3 schematically represents a memory control circuit according to the present invention, connected to a memory 4.
- the control circuit comprises a recognition block 12 connected to receive write and / or read requests from blocks (not shown) of the circuit which are connected to the DAT bus to exchange data with the memory 4.
- the control circuit further comprises two sets of registers 14 (A ') and 1S (B') provided for memorizing the data supplied by block 12.
- a decision block 18 is connected to the outputs of the sets of registers 14 and 16.
- the output of block 18 is supplied to a state machine 20 connected to the command bus COM.
- the state machine 20 is clocked by the same clock signal CK as the memory 4.
- block 12 When block 12 receives a request intended for the memory area A or B, it translates the request into instructions and information, as will be seen below. These instructions / information are respectively stored in the set of registers 14 or 16 depending on whether they are intended for zone A or B. If block 12 receives two requests simultaneously from two blocks of the circuit, it processes the request as a priority from the block with the highest priority according to conventional priority management. The instructions stored in the sets of registers 14 and 16 are analyzed by block 18 to determine whether an instruction should be followed by a period during which the cache for which it is intended cannot receive other instructions.
- the block 18 analyzes the information / instructions stored in the other set of registers to determine whether, during said period, it is possible to provide an instruction from the other set registers to the other cache.
- the state machine 20 provides a timing signal to the decision block 18 so as to receive at each new period of the clock signal CK an instruction to be supplied to one or other of the memory caches. If no instruction is to be provided, the state machine 20 produces an NOP instruction.
- the state machine 20 translates the instructions supplied by block 18 into elementary coded instructions accepted by memory 4.
- FIG. 4 schematically illustrates two series of instructions supplied in time with the clock signal CK by the state machine 20.
- the two series of instructions correspond respectively to a first request to write a word to an address Al 'of a page Al of the memory area A, and to a second request to write a word to an address Bl' of a page Bl of the memory area B.
- each request begins by a page preload instruction, followed by a page activation instruction and a word writing instruction.
- the precharge PRE A0, activation ACT A1 and write WR A1 'instructions intended for the memory area A are, as before, provided with an interval of three periods T at times to, tl and t2 respectively.
- the precharge instruction PRE B0 intended for the memory area B is supplied to the bus COM at an instant tO 'situated a period T after the instant tO.
- the instant t0 ' is the beginning of the period following the PRE A0 instruction during which the BUFA cache cannot receive any other instruction.
- the activation instruction ACT B1 intended for the memory area B is supplied to the bus COM at an instant tl 'situated two periods T after the instant tl.
- an NOP instruction is thus inserted between the ACT A1 and ACT B1 instructions.
- Such an intermediate NOP instruction is necessary for most memories, which cannot, by construction, receive two ACT instructions in succession.
- the instant tl 'could be located a period T after the instant tl.
- the write instruction WR Bl 'intended for the memory area B is supplied at an instant t2' situated a period T after the instant t2. Note that the writing of the word A1 takes place before the writing of the word B1, that is to say respecting the order of priority with which the writing requests have been supplied to the sets of registers 14 and 16.
- the present invention makes it possible to supply the memory 4 with two write requests in eight periods of the clock signal CK.
- This figure is to be compared with the fourteen periods of the clock signal which are necessary according to the prior art to supply the same requests to the same memory.
- This gain in speed can be generalized to other write / read requests, not shown, which can be supplied to the memory.
- the present invention makes it possible to obtain a high data rate without using a faster clock signal than according to the prior art.
- a memory control circuit according to the present invention it is possible with a memory control circuit according to the present invention, to have a higher data rate than with a control circuit according to the prior art, while using a clock signal of higher frequency. bass than according to the prior art.
- a control circuit according to the present invention allowing a high data rate with a memory operating at a low frequency, the present invention allows the use of an inexpensive memory.
- the present invention is also suitable for memory control circuits performing write and read in packets.
- a memory performs a series of writes or reads in packets on a first cache, said cache cannot receive any other instruction and the COM command bus is free to provide. instructions to the second cache.
- the DAT data bus is used for writes or reads. Block 18 is thus provided for, during a write / read by packet in a cache, to provide the other cache only with instructions which do not involve the use of the DAT data bus (such as the precharge instructions and previously described).
- FIG. 5 schematically represents the set of registers 14.
- the set of registers 16 has an identical structure. tick.
- the set of registers 14 comprises a type register (TYP), an order register (ORD), an address register (ADR), a command register (CMD), a size register (SIZ), a byte validation register (BE), a write index register (WRI) and a read index register (RDI).
- the write index register contains an address updated by block 12.
- the read index register contains an address updated by block 18.
- the registers of type, order, address, control, size and validation of bytes are FIFO type and they each contain an equal number of data each identifiable by an address.
- the FIFO registers are connected so as to be written by block 12 at the address contained in the write index register and read by block 18 at the address contained in the read index register. It will be noted that a comparison of the addresses included in the write and read index registers makes it possible to know the filling rate of the FIFO registers. If all the addresses of the FIFO registers are used, it is no longer possible to store the data relating to a request in this set of registers, and an error message is produced.
- Each request received by block 12 gives rise to the writing of data in the FIFO registers, and to an incrementation of the address of the register of the write index.
- the type register receives data indicating whether the request is a read or write request.
- the order register receives an absolute time indicating the instant at which the request was supplied to the control circuit. This time indication allows the circuit 18 to select which instruction should be sent in priority.
- the address register receives the page and word addresses, at which the request must be executed.
- the command register contains the instructions necessary to execute the request. For example, the instructions ' PRE, ACT, WR for a request to write to a new page, and the instructions WR for a request to write to a page already activated.
- the instructions necessary to execute the request are determined in particular as a function of the address of the page to which the request is intended, which is compared with the address of the page to which the previous request is intended. For this, the block 12 can read the command register, by a link not shown.
- the size register receives the number of periods necessary to execute the request.
- the byte validation register receives the number of data bytes concerned by each request (for example when all the bytes of a word must not be written or read).
- the latter is provided for, when the data relating to a request is particularly simple and quick to process, to start processing the next request.
- the number of data that can be stored in all of the FIFO registers determines the number of requests that block 18 can analyze in advance.
- a write request can correspond to an activation instruction followed by a write instruction and a precharge instruction.
- control circuit according to the present invention will then comprise as many sets of registers as the memory will have memory areas.
Abstract
Description
Claims
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP01965353A EP1311962A1 (en) | 2000-08-25 | 2001-08-24 | Control circuit for a dram memory |
JP2002521719A JP2004507817A (en) | 2000-08-25 | 2001-08-24 | DRAM control circuit |
US11/446,553 US7395399B2 (en) | 2000-08-25 | 2006-06-02 | Control circuit to enable high data rate access to a DRAM with a plurality of areas |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0010943A FR2813427B1 (en) | 2000-08-25 | 2000-08-25 | DRIVE MEMORY CONTROL CIRCUIT |
FR00/10943 | 2000-08-25 |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10111506 A-371-Of-International | 2001-08-24 | ||
US40662703A Continuation | 2000-08-25 | 2003-04-03 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2002017095A1 true WO2002017095A1 (en) | 2002-02-28 |
Family
ID=8853733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/FR2001/002669 WO2002017095A1 (en) | 2000-08-25 | 2001-08-24 | Control circuit for a dram memory |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP1311962A1 (en) |
JP (1) | JP2004507817A (en) |
FR (1) | FR2813427B1 (en) |
WO (1) | WO2002017095A1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ES2619313T3 (en) | 2001-03-15 | 2017-06-26 | Precision Biologics, Inc. | Monoclonal antibody therapy for pancreatic cancer |
IT1399916B1 (en) * | 2010-04-30 | 2013-05-09 | Balluchi | MEMORY DEVICE FOR LOGGED REGISTER ACCESS |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5822772A (en) * | 1996-03-22 | 1998-10-13 | Industrial Technology Research Institute | Memory controller and method of memory access sequence recordering that eliminates page miss and row miss penalties |
WO2000029959A1 (en) * | 1998-11-16 | 2000-05-25 | Infineon Technologies Ag | Memory controller which increases bus utilization by reordering memory requests |
-
2000
- 2000-08-25 FR FR0010943A patent/FR2813427B1/en not_active Expired - Fee Related
-
2001
- 2001-08-24 EP EP01965353A patent/EP1311962A1/en not_active Withdrawn
- 2001-08-24 WO PCT/FR2001/002669 patent/WO2002017095A1/en active Application Filing
- 2001-08-24 JP JP2002521719A patent/JP2004507817A/en not_active Withdrawn
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5822772A (en) * | 1996-03-22 | 1998-10-13 | Industrial Technology Research Institute | Memory controller and method of memory access sequence recordering that eliminates page miss and row miss penalties |
WO2000029959A1 (en) * | 1998-11-16 | 2000-05-25 | Infineon Technologies Ag | Memory controller which increases bus utilization by reordering memory requests |
Also Published As
Publication number | Publication date |
---|---|
FR2813427B1 (en) | 2002-11-29 |
FR2813427A1 (en) | 2002-03-01 |
JP2004507817A (en) | 2004-03-11 |
EP1311962A1 (en) | 2003-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
FR2773233A1 (en) | CIRCUIT FOR MASKING DATA AND METHOD FOR MASKING DATA OF A SEMICONDUCTOR MEMORY DEVICE | |
KR101027181B1 (en) | Memory control method and memory system | |
EP3259674B1 (en) | Dram circuit provided with a built-in processor | |
FR2858874A1 (en) | MEMORY CONTROL DEVICE, CHIP CARD, AND METHOD FOR CONTROLLING MEMORY READING OPERATION | |
FR2589600A1 (en) | DYNAMIC MEMORY COOLING CIRCUIT WITH PARITY CONTROL | |
FR2884629A1 (en) | DEVICE FOR ENHANCING BANDWIDTH FOR CIRCUITS WITH MULTIPLE MEMORY CONTROLLERS | |
US8069303B2 (en) | Method and apparatus for controlling memory precharge operation | |
FR2642544A1 (en) | Data processing system with a security program | |
WO2003038620A2 (en) | Data storage method with error correction | |
US6542416B1 (en) | Methods and arrangements for conditionally enforcing CAS latencies in memory devices | |
EP1293984A2 (en) | Synchronous semiconductor memory device | |
EP0037252A2 (en) | Dynamic semiconductor memory | |
EP1311962A1 (en) | Control circuit for a dram memory | |
KR100619202B1 (en) | Apparatus and method for encoding auto-precharge | |
EP3826015B1 (en) | Method for writing in a volatile memory and corresponding integrated circuit | |
EP0733977B1 (en) | Computer system having hierarchical memories | |
EP3716086A1 (en) | Direct memory access | |
JP5363060B2 (en) | Memory module and memory auxiliary module | |
EP1460640A3 (en) | A content addressable memory (CAM) architecture providing improved speed | |
US20040085850A1 (en) | Semiconductor memory capable of performing high-speed processing | |
FR2719939A1 (en) | Electrically programmable non-volatile memory with control interface | |
FR2700056A1 (en) | A uniform field programming method of an electrically programmable memory and a memory implementing the method. | |
JP2019133657A (en) | Method for scheduling page size recognition and non-temporary computer readable recording medium | |
FR2770661A1 (en) | MICROPROCESSOR COMPRISING MEANS FOR CONCATENATION OF BITS | |
US6631441B2 (en) | DRAM read and write circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): JP US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
ENP | Entry into the national phase |
Ref country code: JP Ref document number: 2002 521719 Kind code of ref document: A Format of ref document f/p: F |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2001965353 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 2001965353 Country of ref document: EP |