WO2002017095A1 - Control circuit for a dram memory - Google Patents

Control circuit for a dram memory Download PDF

Info

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
Application number
PCT/FR2001/002669
Other languages
French (fr)
Inventor
Pierre Marty
Gaëlle REY
Pascal Chauvet
Original Assignee
Stmicroelectronics S.A.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Stmicroelectronics S.A. filed Critical Stmicroelectronics S.A.
Priority to EP01965353A priority Critical patent/EP1311962A1/en
Priority to JP2002521719A priority patent/JP2004507817A/en
Publication of WO2002017095A1 publication Critical patent/WO2002017095A1/en
Priority to US11/446,553 priority patent/US7395399B2/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-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

The invention concerns a control circuit of a storage unit (4) comprising at least two zones (A, B) which cannot be accessed simultaneously, the circuit comprising first means (14, 16) for storing series of reading and/or writing instructions separately for each of said zones, second means (18) for detecting that a first instruction addressed to 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 (20) for supplying instructions to another zone of the storage unit during said period.

Description

CIRCUIT DE COMMANDE D'UNE MEMOIRE DRAM DRIVE MEMORY CONTROL CIRCUIT
La présente invention concerne un circuit de commande d'une mémoire, et en particulier un circuit de commande d'une mémoire externe de type SDRAM, DDR ou RAMBUS comprenant plusieurs zones mémoire. De nombreux systèmes électroniques doivent mémoriser une grande quantité de données dans une mémoire et ils doivent accéder à ces données rapidement. Des mémoires du type RAM dynamique, ou DRAM, comportant généralement plusieurs zones mémoire accessibles chacune par l'intermédiaire d'un cache à débit de données élevé, conviennent à ce genre d'utilisation. Ces mémoires sont généralement des circuits intégrés discrets (mémoires externes) qui doivent être reliés à des circuits de commande de mémoire faisant la liaison avec le reste du système électronique.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.
La figure 1 représente schématiquement un circuit de commande de mémoire 2 connecté à une mémoire 4 de type DRAM par l'intermédiaire d'un bus de commande COM et d'un bus de données DAT. La mémoire 4 comprend deux zones mémoire A et B dont chacune est reliée au bus de données DAT par l'intermédiaire d'un cache, respectivement BUFA et BUFB. La mémoire 4 est cadencée par un signal d'horloge CK. Les zones mémoire A et B sont toutes les deux organisées en plusieurs pages mémoire (non représentées) dont chacune comporte un nombre prédéterminé de mots. Les caches BUFA et BUFB sont reliés par le bus de commande COM au circuit 2. Le circuit 2 comprend un bloc de gestion de priorité 8 connecté pour recevoir des requêtes d'écriture et/ou de lecture depuis des blocs (non représentés) qui sont par ailleurs reliés au bus DAT pour échanger des données avec la mémoire 4. Ls bloc 8 reçoit des requêtes d'écriture et/ou de lecture destinées à l'une ou l'autre des zones mémoire. Lorsque le bloc 8 reçoit simultanément deux requêtes fournies par deux blocs, il traite en priorité la requête reçue depuis celui des deux blocs qui a la priorité sur l'autre. L'ordre de priorité des blocs est généralement prograiπré à l'initialisation du circuit. Le circuit 2 comprend en outre un bloc 10, relié entre la sortie du bloc 8 et le bus COM, qui convertit les requêtes reçues par le bloc 8 d'un protocole de cαimunication propre au circuit 2 vers un protocole de communication propre à la mémoire 4. Le protocole accepté par une mémoire dépend du type et du constructeur de la mémoire. La figure 2 illustre schématiquement deux séries d'instructions fournies par le bloc 10 en cadence avec le signal d'horloge CK. Dans l'exemple représenté, le bloc 10 reçoit une première requête d'écriture d'un mot, destinée à une adresse Al" d'une page Al de la zone mémoire A, puis une deuxième requête d'écriture d'un mot, destinée à une adresse Bl' d'une page Bl de la zone mémoire B. Dans l'exemple représenté, de telles requêtes d'écriture commencent chacune par la réécriture des données du cache considéré dans une page traitée précédemment (précharge du cache, instruction PRE), suivie de l'écriture de la page considérée dans ledit cache (activatiαn du cache, instruction ACT) , suivie 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. When 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. In the example shown, 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. In the example shown, such 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
périodes. Ainsi, pendant deux périodes suivant la réception de l'instruction de précharge, le cache ne peut pas recevoir d'autre instruction, et le bloc 10 doit fournir deux non-instructions "NOP" entre l'instruction de précharge et l'instruction d'activation suivante. A un instant tl situé trois périodes T après l'instant to, le bloc 10 fournit au bus COM une commande ACT Al d'activation de page commandant au cache BUFA de lire la page d'adresse Al de la zone mémoire A. L'instruction d'activation est fournie au cache BUFA en une période T mais l'opération d'activation est exécutée en trois périodes, et le bloc 10 doit fournir deux instructions NOP entre l'instruction d'activation et l'instruction d'écriture suivante. A un instant t2, situé trois périodes T après l'instant tl, le bloc 10 fournit une instruction WR Al' d'écriture du mot d'adresse Al' dans le cache BUFA. On notera que le mot qui doit être écrit à l'adresse Al' est fourni au bus de données DAT lorsque l'instruction WR Al est fournie. Une seule période est nécessaire pour exécuter l'opération d'écriture. A un instant t3 situé une période T après l'instant t2, l'opération d'écriture du mot d'adresse Al' de la page Al de la zone mémoire A est terminée. La deuxième requête d'écriture se déroule d'une façon semblable à la première requête d'écriture. A l'instant t3, le bloc 10 fournit une instruction PRE B0 de précharge du cache BUFB. A un instant t4 situé trois périodes T après l'instant t3, le bloc 10 fournit une instruction ACT Bl d'activation de la page d'adresse Bl de la zone mémoire B. Enfin, à un instant t5 situé trois périodes T après l'instant t4, le bloc 10 fournit une instruction d'écriture WR Bl' du mot d'adresse Bl' de la page Bl.periods. Thus, for two periods following receipt of the precharge instruction, 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. At an instant tl situated three periods T after the instant to, 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 . At an instant t2, located three periods T after the instant tl, 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. At an instant t3 situated a period T after the instant t2, 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. At time t3, block 10 provides a PRE B0 instruction for precharging the BUFB cache. At an instant t4 situated three periods T after the instant t3, block 10 provides an ACT Bl instruction for activating the address page Bl of the memory area B. Finally, at an instant t5 situated three periods T after l 'instant t4, block 10 provides a writing instruction WR Bl' of the address word Bl 'of the page Bl.
On notera que lorsqu'une première et une deuxième requêtes d'écriture doivent être exécutées successivement dans une même page, le cache utilisé contient déjà la bonne page après la première écriture et il n'est pas nécessaire pour exécuter la deuxième requête d'écriture que le bloc 10 fournisse de nouveau les instructions de précharge et d'activation de ladite page. On notera également que certaines mémoires sont prévues pour faire suivre automatiquement toute écriture dans un mot d'un cache par une suite d'écritures dans les mots suivants du cache. Une telle suite d'écriture est appelée écriture par "paquets" (écriture en mode BURST) . Durant une écriture par paquets, le cache utilisé ne peut recevoir d'autre instruction et le bloc 10 fournit des ins- tructions NOP. Une écriture par paquets est classiquement interrompue par une instruction prédéterminée telle que l'instruction de précharge.Note that when a first and a second write request must be executed successively on the same page, the cache used already contains the correct page after the first write and there is no need to execute the second write request. that block 10 again provides the instructions for preloading and activating said page. It will also be noted that certain memories are provided to automatically follow any writing in a word of a cache by a series of writings in the following words of the cache. Such a writing sequence is called writing by "packets" (writing in BURST mode). During a packet write, the cache used cannot receive any other instruction and block 10 provides NOP instructions. A packet write is conventionally interrupted by a predetermined instruction such as the preload instruction.
L'exécution d'une requête de lecture d'un mot d'une page d'une zone mémoire est semblable à l'exécution d'une requête d'écriture de mot décrite précédemment, une instruction de lecture de mot (RD) remplaçant 1 ' instruction d'écriture de mot (WR) .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).
Les récentes avancées technologiques ont permis de développer des mémoires DRAM fonctionnant à des fréquences très élevées allant jusqu'à 800 MHz. Il a jusqu'à présent été possible de développer des circuits de commande pouvant fournir les instructions de commande de telles mémoires, en utilisant des architectures particulièrement simples et rapides. Cependant, on souhaite accroître encore le débit des données échangées avec la mémoire. Il est possible d'accroître la vitesse d'accès aux mémoires, mais le développement de circuits de commande fonctionnant avec des signaux d'horloge plus rapides pose de nombreux problèmes, notamment un coût de développement élevé et une consommation élevée. L'utilisation de bus de commande et de données très larges permet également d'accroître le débit de données, mais une telle solution demande d'utiliser plusieurs mémoires dont chacune est reliée à une partie du bus, et l'utilisation de plusieurs mémoires est coûteuse.Recent technological advances have made it possible to develop DRAM memories operating at very high frequencies up to 800 MHz. It has so far been possible to develop control circuits capable of providing the control instructions for such memories, using particularly simple and rapid architectures. However, it is desired to further increase the data rate exchanged with the memory. It is possible to increase the speed of access to the memories, but the development of control circuits operating with faster clock signals poses many problems, in particular a high development cost and a high consumption. The use of very large control and data buses also makes it possible to increase the data rate, but such a solution requires the use of several memories, each of which is connected to a part of the bus, and the use of several memories is expensive.
Un objet de la présente invention est de prévoir un circuit de commande permettant d'accéder avec un débit de données élevé à une mémoire de type DRAM comprenant au moins deux zones.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.
Un autre objet de la présente invention est de prévoir un tel circuit de commande utilisant des bus de commande et de données ayant une largeur standard. Un autre objet de la présente invention est de prévoir un tel circuit fonctionnant avec un signal d'horloge de fréquence peu élevée.Another object of the present invention is to provide such a control circuit using control and data buses having a standard width. Another object of the present invention is to provide such a circuit operating with a low frequency clock signal.
Un autre objet de la présente invention est de prévoir un tel circuit qui puisse fonctionner avec une mémoire peu coûteuse ayant une fréquence maximale de fonctionnement peu élevée.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.
Pour atteindre ces objets, ainsi que d'autres, la présente invention prévoit un circuit de commande d'une mémoire comprenant au moins deux zones auxquelles on ne peut pas accéder simultanément, le circuit comprenant des premiers moyens pour mémoriser des séries d'instructions de lecture et/ou d'écriture séparément pour chacune desdites zones, des deuxièmes moyens pour détecter qu'une première instruction destinée à une première zone est une instruction prédéterminée qui doit être suivie d'une période pendant laquelle la première zone ne peut recevoir une autre instruction, et des troisièmes moyens pour, pendant ladite période, fournir des instructions à une autre zone de la mémoire.To achieve these and other objects, 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.
Selon un mode de réalisation de la présente invention, ' chacune des zones de la mémoire est accessible par l'interé- diaire d'un cache particulier.According to an embodiment of the present invention, each of the areas of the memory is accessible via a particular cache.
Selon un mode de réalisation de la présente invention, le circuit comprend en outre des quatrièmes moyens pour recevoir des requêtes de lecture et/ou d'écriture et pour les écrire chacune sous la forme d'une série d'instructions dans les pre- miers moyens, chaque série d'instructions comprenant un nombre prédéterminé de données.According to an embodiment of the present invention, 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.
Selon un mode de réalisation de la présente invention, ledit nombre prédêterrniné de données d'une série d'instructions comprend notamment une indication de l'ordre de priorité existant entre chaque série d'instructions mémorisée dans le premier moyen.According to an embodiment of the present invention, 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.
Selon un mode de réalisation de la présente invention, ledit nombre prédéterminé de données d'une série d'instructions comprend notamment une indication de ce que la série d'instruction vise à une lecture ou à une écriture de la mémoire. Selon un mode de réalisation de la présente invention, ledit nombre prédéterminé de données d'une série d'instructions comprend notamment les adresses auxquelles ladite série d'instructions est destinée. Selon un mode de réalisation de la présente invention, ledit nombre prédéterminé de données d'une série d'instructions comprend notamment les instructions formant ladite série d'instructions .According to an embodiment of the present invention, 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. According to an embodiment of the present invention, said predetermined number of data of a series of instructions notably comprises the addresses for which said series of instructions is intended. According to an embodiment of the present invention, said predetermined number of data of a series of instructions notably comprises the instructions forming said series of instructions.
Selon un mode de réalisation de la présente invention, ledit nombre prédéterminé de données d'une série d'instructions comprend notamment la durée nécessaire pour exécuter ladite série d' instructions .According to an embodiment of the present invention, said predetermined number of data of a series of instructions notably comprises the time necessary to execute said series of instructions.
Selon un mode de réalisation de la présente invention, les premiers moyens comportent pour chaque zone de la mémoire un nombre prédéterminé de registres.According to an embodiment of the present invention, the first means comprise for each zone of the memory a predetermined number of registers.
Selon un mode de réalisation de la présente invention, ledit nombre prédéterminé de registres comprend des registres d'index pour gérer l'écriture et la lecture des autres registres dudit nombre prédéterminé de registres, respectivement par les quatrièmes et deuxièmes moyens.According to an embodiment of the present invention, 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.
Ces objets, caractéristiques et avantages, ainsi que d'autres de la présente invention seront exposés en détail dans la description suivante de modes de réalisation particuliers faite à titre non-limitâtif en relation avec les figures jointes parmi lesquelles : la figure 1, précédemment décrite, représente schémati- qαement un circuit de commande classique d'une mémoire DRAM ; la figure 2, précédemment décrite, illustre le fonctionnement du circuit de commande de la figure 1 ; la figure 3 représente schématiquement un circuit de commande selon la présente invention ; la figure 4 illustre schématiquement le fonctionnement du circuit de commande de la figure 3 ; et la figure 5 représente schématiquement la structure d'un ensemble de registres du circuit de commande selon la présente invention.These objects, characteristics and advantages, as well as others of the present invention will be explained in detail in the following description of particular embodiments given without limitation in relation to the attached figures, among which: 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; and FIG. 5 schematically represents the structure of a set of registers of the control circuit according to the present invention.
La figure 3 représente schématiquement un circuit de commande de mémoire selon la présente invention, connecté à une mémoire 4. Selon la présente invention, le circuit de commande comprend un bloc de reconnaissance 12 connecté pour recevoir des requêtes d'écriture et/ou de lecture depuis des blocs (non représentés) du circuit qui sont reliés au bus DAT pour échanger des données avec la mémoire 4. Le circuit de commande comprend en outre deux ensembles de registres 14 (A') et 1S (B') prévus pour mémoriser les données fournies par le bloc 12. Un bloc de décision 18 est connecté aux sorties des ensembles des registres 14 et 16. La sortie du bloc 18 est fournie à une machine d'état 20 reliée au bus de commande COM. La machine d'état 20 est cadencée par le même signal d'horloge CK que la mémoire 4.FIG. 3 schematically represents a memory control circuit according to the present invention, connected to a memory 4. According to the present invention, 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.
Lorsque le bloc 12 reçoit une requête destinée à la zone mémoire A ou B, il traduit la requête en des instructions et des informations, comme on le verra par la suite. Ces instructions/ informations sont respectivement mémorisées dans 1 'ensemble de registres 14 ou 16 selon qu'elles sont destinées à la zone A ou B. Si le bloc 12 reçoit simultanément deux requêtes provenant de deux blocs du circuit, il traite en priorité la requête provenant du bloc ayant la priorité la plus haute selon une gestion de priorité classique. Les instructions mémorisées dans les ensembles de registres 14 et 16 sont analysées par le bloc 18 pour déterminer si une instruction doit être suivie d'une période pendant laquelle le cache auquel elle est destinée ne peut recevoir d'autres instructions. Si une telle instruction existe dans l'un des ensembles de registres, le bloc 18 analyse les informations/ instructions mémorisées dans l'autre ensemble de registres pour déterminer si, pendant ladite période, il est possible de fournir une instruction de l'autre ensemble de registres à l'autre cache. La machine d'état 20 fournit un signal de cadencement au bloc de décision 18 de manière à recevoir à chaque nouvelle période du signal d'horloge CK une instruction devant être fournie à l'un ou l'autre des caches de la mémoire. Si aucune instruction ne doit être fournie, la machine d'état 20 produit une instruction NOP. La machine d'état 20 traduit les instructions fournies par le bloc 18 en instructions codées élémentaires acceptées par la mémoire 4.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. If such an instruction exists in one of the sets of registers, 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.
La figure 4 illustre schématiquement deux séries d'instructions fournies en cadence avec le signal d'horloge CK par la machine d'état 20. Comme précédemment, les deux séries d'instructions correspondent respectivement à une première requête d'écriture d'un mot à une adresse Al' d'une page Al de la zone mémoire A, et à une deuxième requête d'écriture d'un mot à une adresse Bl' d'une page Bl de la zone mémoire B. Comme précédemment, chaque requête commence par une instruction de précharge de page, suivie d'une instruction d'activation de page et d'une instruction d'écriture de mot.FIG. 4 schematically illustrates two series of instructions supplied in time with the clock signal CK by the state machine 20. As previously, 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. As before, each request begins by a page preload instruction, followed by a page activation instruction and a word writing instruction.
Les instructions de précharge PRE A0, d'activation ACT Al et d'écriture WR Al' destinées à la zone mémoire A sont, comme précédemment, fournies avec un intervalle de trois périodes T à des instants to, tl et t2 respectivement. Cependant, selon la présente invention, l'instruction de précharge PRE B0 destinée à la zone mémoire B est fournie au bus COM à un instant tO ' situé une période T après l'instant tO. L'instant t0' est le dçbut de la période suivant l'instruction PRE A0 pendant laquelle le cache BUFA ne peut recevoir d'autre instruction. De même, l'instruction d'activation ACT Bl destinée à la zone mémoire B est fournie au bus COM à un instant tl' situé deux périodes T après l'instant tl. On notera qu'une instruction NOP est ainsi intercalée entre les instructions ACT Al et ACT Bl. Une telle instruction NOP intercalaire est nécessaire pour la plupart des mémoires, qui ne peuvent, par construction, pas recevoir à la suite deux instructions ACT. Cependant, dans le cas d'une mémoire pouvant recevoir à la suite deux instructions ACT, l'instant tl' pourrait être situé une période T après l'instant tl. Enfin, l'instruction d'écriture WR Bl' destinée à la zone mémoire B est fournie à un instant t2' situé une période T après l'instant t2. On notera que l'écriture du mot Al a lieu avant l'écriture du mot Bl, c'est-à- dire en respectant l'ordre de priorité avec lequel les requêtes d'écriture ont été fournies aux ensembles de registres 14 et 16.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. However, according to the present invention, 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. Likewise, 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. It will be noted that 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. However, in the case of a memory that can receive two ACT instructions in succession, the instant tl 'could be located a period T after the instant tl. Finally, 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.
Dans l'exemple représenté, la présente invention permet de fournir à la mémoire 4 deux requêtes d'écriture en huit périodes du signal d'horloge CK. Ce chiffre est à comparer aux quatorze périodes du signal d'horloge qui sont nécessaires selon l'art antérieur pour fournir les mêmes requêtes à la même mémoire. Ce gain de vitesse peut être généralisé aux autres requêtes d'écriture/lecture, non représentées, qui peuvent être fournies à la mémoire. La présente invention permet d'obtenir un débit de données élevé sans utiliser un signal d'horloge plus rapide que selon l'art antérieur. Ainsi, il est possible avec un circuit de commande de mémoire selon la présente invention, d'avoir un débit de données plus élevé qu'avec un circuit de commande selon l'art antérieur, tout en utilisant un signal d'horloge de fréquence plus basse que selon l'art antérieur. En outre, un circuit de commande selon la présente invention permettant un débit de données élevé avec une mémoire fonctionnant à une fréquence peu élevée, la présente invention permet d'utiliser une mémoire peu coûteuse.In the example shown, 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. Thus, 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. In addition, 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.
La présente invention est également adaptée à des circuits de commande de mémoires effectuant des écritures et des lectures par paquets. Lorsqu'une mémoire effectue sur un premier cache une suite d'écritures ou de lectures par paquets, ledit cache ne peut recevoir une autre instruction et le bus de commande COM est libre pour fournir des . instructions au deuxième cache. Cependant, le bus de données DAT est utilisé par les écritures ou les lectures. Le bloc 18 est ainsi prévu pour, lors d'une écriture/lecture par paquet dans un cache, ne fournir à l'autre cache que des instructions n'entraînant pas une utilisation du bus de données DAT (telles que les instructions de précharge et d'activation décrites précédemment) .The present invention is also suitable for memory control circuits performing write and read in packets. When 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. However, 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).
La figure 5 représente schématiquement l'ensemble de registres 14. L'ensemble de registres 16 a une structure iden- tique. L'ensemble de registres 14 comprend un registre de type (TYP) , un registre d'ordre (ORD) , un registre d'adresse (ADR) , un registre de commande (CMD) , un registre de taille (SIZ) , un registre de validation d'octets (BE) , un registre d'index d'écri- ture (WRI) et un registre d'index de lecture (RDI) . Le registre d'index d'écriture contient une adresse mise à jour par le bloc 12. Le registre d' index de lecture contient une adresse mise à jour par le bloc 18. Les registres de type, d'ordre, d'adresse, de commande, de taille et de validation d'octets sont de type FIFO et ils contiennent chacun un nombre égal de données repé- rables chacune par une adresse. Les registres FIFO sont connectés de manière à être écrits par le bloc 12 à l'adresse contenue dans le registre d'index d'écriture et lus par le bloc 18 à l'adresse contenue dans le registre d'index de lecture. On notera qu'une comparaison des adresses comprises dans les registres d'index d'écriture et de lecture permet de connaître le taux de remplissage des registres FIFO. Si toutes les adresses des registres FIFO sont utilisées, il n'est plus possible de mémoriser les données concernant une requête dans cet ensemble de registres, et un message d'erreur est produit.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.
Chaque requête reçue par le bloc 12 donne lieu à l'écriture de données dans les registres FIFO, et à une incrémentation de l'adresse du registre de l'index d'écriture.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.
Le registre de type reçoit une donnée indiquant si la requête est une requête de lecture ou d'écriture.The type register receives data indicating whether the request is a read or write request.
Le registre d'ordre reçoit un temps absolu indiquant l'instant auquel la requête a été fournie au circuit de commande. Cette indication de temps permet au circuit 18 de sélectionner quelle instruction doit être envoyée en priorité. Le registre d'adresse reçoit les adresses de page et de mot, auxquelles la requête doit être exécutée.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.
Le registre de commande contient les instructions nécessaires pour exécuter la requête. Par exemple, les instructions ' PRE, ACT, WR pour une requête d'écriture dans une nouvelle page, et les instructions WR pour une requête d'écriture dans une page déjà activée. Les instructions nécessaires pour exécuter la requête sont déterminées notamment en fonction de l'adresse de la page à laquelle la requête est destinée, qui est comparée à l'adresse de la page à laquelle la requête précédente est desti- née. Pour cela, le bloc 12 peut lire le registre de commande, par une liaison non représentée.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.
Le registre de taille reçoit le nombre de périodes nécessaires pour exécuter la requête.The size register receives the number of periods necessary to execute the request.
Le registre de validation d'octets reçoit le nombre d'octets de données concernés par chaque requête (par exemple lorsque tous les octets d'un mot ne doivent pas être écrits ou lus) .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).
Afin de garantir un fonctionnement global rapide du bloc 18, ce dernier est prévu pour, lorsque les données concer- nant une requête sont particulièrement simples et rapides à traiter, commencer à traiter la requête suivante. Le nombre de données mémorisables dans l'ensemble des registres FIFO détermine le nombre de requêtes que le bloc 18 peut analyser à l'avance.In order to guarantee rapid overall operation of block 18, 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.
Bien entendu, la présente invention est susceptible de diverses variantes et modifications qui apparaîtront à l'homme du métier à la lecture de la description précédente. En particulier, on a décrit un circuit de commande dans lequel une requête d'écriture est exécutée d'une manière particulière, mais l'homme du métier adaptera sans difficultés la présente invention à un circuit de commande dans lequel une même requête est exécutée autrement. Par exemple, une requête d'écriture peut correspondre à une instruction d'activation suivie d'une instruction d'écriture et d'une instruction de précharge.Of course, the present invention is susceptible to various variants and modifications which will appear to a person skilled in the art on reading the preceding description. In particular, a control circuit has been described in which a write request is executed in a particular manner, but a person skilled in the art will easily adapt the present invention to a control circuit in which the same request is executed otherwise. . For example, a write request can correspond to an activation instruction followed by a write instruction and a precharge instruction.
En outre, la présente invention a été décrite en rela- tion avec une mémoire comportant deux zones mémoire, mais l'homme du métier adaptera sans difficultés la présente invention à une mémoire comportant un plus grand nombre de zones mémoire. Le circuit de commande selon la présente invention comportera alors autant d'ensembles de registres que la mémoire aura de zones mémoire. In addition, the present invention has been described in relation to a memory comprising two memory areas, but a person skilled in the art will easily adapt the present invention to a memory comprising a greater number of memory areas. The control circuit according to the present invention will then comprise as many sets of registers as the memory will have memory areas.

Claims

REVENDICATIONS
1. Circuit de commande d'une mémoire (4) comprenant au moins deux zones (A, B) auxquelles on ne peut pas accéder simultanément, caractérisé en ce que le circuit comprend : des premiers moyens (14, 16) pour mémoriser des séries d'instructions de lecture et/ou d'écriture séparément pour chacune desdites zones, des deuxièmes moyens (18) pour détecter qu'une première instruction destinée à une première zone est une instruction prédéterminée qui doit être suivie d'une période pendant laquelle la première zone ne peut recevoir une autre instruction, et des troisièmes moyens (20) pour, pendant ladite période, fournir des instructions à une autre zone de la mémoire.1. A memory control circuit (4) comprising at least two zones (A, B) which cannot be accessed simultaneously, characterized in that the circuit comprises: first means (14, 16) for storing series second reading and / or writing instructions for each of said zones, second means (18) 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 (20) for, during said period, providing instructions to another zone of the memory.
2. Circuit selon la revendication 1, de commande d'une mémoire dont chacune des zones est accessible par l'intermédiaire d'un cache particulier (BUFA, BUFB) .2. The circuit as claimed in claim 1, for controlling a memory, each of the zones of which is accessible via a particular cache (BUFA, BUFB).
3. Circuit selon la revendication 1 ou 2, comprenant en outre des quatrièmes moyens (12) pour recevoir des requêtes de lecture et/ou d'écriture et pour les écrire chacune sous la forme d'une série d'instructions dans les premiers moyens, chaque série d'instructions comprenant un nombre prédéterminé de données.3. The circuit of claim 1 or 2, further comprising fourth means (12) 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.
4. Circuit selon la revendication 3, dans lequel ledit nombre prédéterminé de données d'une série d'instructions comprend notamment une indication (ORD) de l'ordre de priorité existant entre chaque série d'instructions mémorisée dans le premier moyen.4. The circuit of claim 3, wherein said predetermined number of data of a series of instructions notably comprises an indication (ORD) of the order of priority existing between each series of instructions stored in the first means.
5. Circuit selon la revendication 3, dans lequel ledit nombre prédéterminé de données d'une série d'instructions comprend notamment une indication (TYP) de ce que la série d'instructions vise à une lecture ou à une écriture de la mémoire. 5. The circuit as claimed in claim 3, in which said predetermined number of data of a series of instructions notably comprises an indication (TYP) that the series of instructions is for reading or writing from the memory.
6. Circuit selon la revendication 3, dans lequel ledit nombre prédéterminé de données d'une série d'instructions comprend notamment les adresses (ADR) auxquelles ladite série d'instructions est destinée. 6. The circuit as claimed in claim 3, in which said predetermined number of data of a series of instructions notably comprises the addresses (ADR) for which said series of instructions is intended.
7. Circuit selon la revendication 3, dans lequel ledit nombre prédéterminé de données d'une série d'instructions comprend notamment les instructions (COM) formant ladite série d'instructions . 7. The circuit as claimed in claim 3, in which said predetermined number of data of a series of instructions notably comprises the instructions (COM) forming said series of instructions.
8. Circuit selon la revendication 3, dans lequel ledit nombre prédéterminé de données d'une série d'instructions comprend notair ent la durée (SIZ) nécessaire pour exécuter ladite série d'instructions .8. The circuit as claimed in claim 3, in which said predetermined number of data of a series of instructions notably includes the duration (SIZ) necessary to execute said series of instructions.
9. Circuit selon l'une quelconque des revendications 4 à 8, dans lequel les premiers moyens comportent pour chaque zone de la mémoire un nombre prédéterminé de registres.9. Circuit according to any one of claims 4 to 8, in which the first means comprise for each zone of the memory a predetermined number of registers.
10. Circuit selon la revendication 9, dans lequel ledit nombre prédétermine de registres comprend des registres d'index (WRI, RDI) pour gérer l'écriture et la lecture des autres registres dudit nombre prédéterminé de registres, respectivement par les quatrièmes et deuxièmes moyens. 10. The circuit as claimed in claim 9, in which said predetermined number of registers comprises index registers (WRI, RDI) for managing the writing and reading of the other registers of said predetermined number of registers, respectively by the fourth and second means. .
PCT/FR2001/002669 2000-08-25 2001-08-24 Control circuit for a dram memory WO2002017095A1 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
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