EP0875899B1 - Arrangement of two memories on the same monolithic integrated circuit - Google Patents

Arrangement of two memories on the same monolithic integrated circuit Download PDF

Info

Publication number
EP0875899B1
EP0875899B1 EP98400661A EP98400661A EP0875899B1 EP 0875899 B1 EP0875899 B1 EP 0875899B1 EP 98400661 A EP98400661 A EP 98400661A EP 98400661 A EP98400661 A EP 98400661A EP 0875899 B1 EP0875899 B1 EP 0875899B1
Authority
EP
European Patent Office
Prior art keywords
circuit
memories
selection
reading
memory
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Lifetime
Application number
EP98400661A
Other languages
German (de)
French (fr)
Other versions
EP0875899A1 (en
Inventor
Alessandro Brigati
Jean Devin
Bruno Leconte
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
STMicroelectronics SA
Original Assignee
STMicroelectronics SA
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 SA filed Critical STMicroelectronics SA
Publication of EP0875899A1 publication Critical patent/EP0875899A1/en
Application granted granted Critical
Publication of EP0875899B1 publication Critical patent/EP0875899B1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/12Group selection circuits, e.g. for memory block selection, chip selection, array selection
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store

Definitions

  • the invention relates to an integrated circuit. monolithic with two memories, preferably separate from each other, and circuits electronic to allow operation in simultaneous of the two memories.
  • Each of the memory cells of these first two memories consists of a floating gate transistor having a gate command, a floating grid, a source region and a drain region. To write or read such a cell memory, we apply specific voltages on connections that lead to these cells. These tensions depend on memory types.
  • the voltages applied to various electrodes of a memory cell are different.
  • a strong positive voltage at the word line of the transistor a memory cell.
  • a voltage intermediate for example positive of the order of 5V, to the drain region.
  • the application of these voltages cause a electron migration.
  • the phenomenon involved is a phenomenon known as hot carriers.
  • the object of the invention is to remedy this problem by allowing writing or reading in a memory while writing or reading is allowed in the other memory, these two memories being present on the same integrated circuit.
  • the invention proposes to remedy this problem in allowing to select one or the other memories and write operations there or reading while the other memory is in read or write.
  • a programming or reading operation lasts a certain predetermined time, which is specific to each memory. Rather than being embarrassed, we use the memory occupation time at one of these tasks to isolate it, select the other memory, and start executing this other memory read or write. So we use a selection signal to start a task. The continuation of the task is conditioned by a signal hold triggered by this selection signal.
  • the subject of the invention is an integrated circuit monolithic with two separate memories one on the other, a microcontroller to sequence write or read operations of these memories, a selection circuit suitable for selecting one or the other from the memories and receiving a signal from selection.
  • the invention is characterized in that the integrated circuit has two microcontrollers in relationship each with one of the memories and in that each microcontroller has a circuit for execute in each memory the write operations or reading regardless of the signal value of selection.
  • the set constituted by the microcontroller and charge pumps allows perform programming or reading in each memory independently one of the other.
  • an integrated circuit comprising two memories, 2 and 3, distinct from one the other.
  • the two memories are of different types: memory 2 is an EEPROM, memory 3 is a flash EPROM.
  • a microcontroller 4 is capable of causing execution in sequence of write and / or read operations in these memories 2 and 3.
  • a microcontroller is a microprocessor with dedicated program memory. A microcontroller only knows in practice what to do actions recorded in program memory.
  • a selection circuit 5 selects one or the other of these memories 2 or 3.
  • a double selection signal SS1 and SS2 is applied to the input of this circuit 5.
  • the signals SS1 and SS2 are complementary.
  • the integrated circuit 1 comprises a second microcontroller 6 of the same type. The two microcontrollers 4 and 6 are in relation each with one of memories 2 and 3 respectively.
  • An address decoder 7 is controlled by the microcontroller 4.
  • the decoder 7 allows access to the memory 2.
  • an address decoder 8 is controlled by the microcontroller 6.
  • the decoder 8 allows access to memory 3.
  • each microcontroller 4 and 6 has a circuit, respectively 13 or 14 or 25 or 26, to execute in each memory the operations writing or reading, regardless of value selection signal SS1 or SS2.
  • a validation input 9 and 10 of each microcontroller respectively is connected, in an example, to the output of an OR gate 11 and 12 respectively with two inputs. With these two entries we want to validate these write or read microcontrollers.
  • a first of the inputs of each gate OR 11 and 12 is connected to the selection circuit 5 by through circuits 13 and 14 suitable for supplying a write delay signal of duration T or T '. Circuits 13 and 14 are triggered during a write selection and produce a sustained signal SME1 (write hold signal) during this duration T or SME2 for a duration T '.
  • SME1 write hold signal
  • the circuits 13 and 14 can for example be monostable multivibrator circuits. Alternatively, the circuits 13 and 14 are an integral part, with the OR gates 11 and 12, microcontrollers 4 and 6. In in this case, circuits 13 and 14 can be made up of metering firmware by microcontrollers 4 and 6. These microprograms of counting count for example a predetermined number of pulses of a clock signal produced by or supplied to the microcontroller.
  • the duration T of the signal SME1 is chosen in such a way so that it is greater than or equal to a duration execution of a write in memory 2. There may also have two durations: a long duration T for a writing, a duration T "for a reading. We will see below how the distinction operates.
  • circuits 13 and 14 are connected to door outputs AND respectively 15 and 16 to two entries. Doors 15 and 16 form a first circuit logic 21. A first entry of gate 15 is connected to a first entrance to door 16 by a connection 17. Connection 17 receives a command of writing E common to the two memories 2 and 3.
  • the circuit 21 also receives on the second inputs of doors 15 and 16 selection signals SS1 and SS2 respectively. These signals allow select one of memories 2 or 3 for writing in function of the logic level of the two signals SS1 or SS2 selection and level of signal E.
  • the second entrances to these doors 15 and 16 are connected to connections that carry signals from SS1 and SS2 selection respectively via of a circuit 18 with two inputs and two outputs.
  • the circuit 18 consists of two looped reversers 19 and 20 in parallel on its two entrances and its two exits. Circuit 18 ensures the selection of a single of the two memories at the same time.
  • Connection 22 which connects the output of the inverter 19 and the input of the inverter 20 constitutes both an entry and an exit from this circuit 18 connected to door 15.
  • Connection 23 which connects the output of the inverter 20 and the input of the inverter 19 constitutes both a second input and a second output of this circuit 18 connected to the door 16.
  • the two inputs of circuit 18 correspond selection signals SS1 and SS2. We don't select only one memory at a time insofar as one does not want not duplicate memorizations. However, in a mirror use, circuit 18 can be omitted, both memories can be selected at the same time time.
  • OR doors 11 and 12 have a second Entrance.
  • the second entrances of these doors 11 and 12 are also connected to a timer circuit, by example here also a monostable multivibrator, 25 and 26 respectively.
  • These two circuits 25 and 26 have the same functions as the two circuits 13 and 14 previously defined and are similarly related to the selection circuit 5.
  • OR doors 11 and 12 receive maintained signals (SME1 SME2 and SML1 SML2 depending on the writing or reading mode selected) of reading and writing. They deliver a hold signal, during the write or read operation selected, in the selected microcontroller.
  • the selection circuit 5 thus comprises a second logic circuit 24.
  • This circuit 24 is of identical to circuit 21. It has two AND gates 27 and 28 whose outputs are connected to inputs of circuits 25 and 26 respectively.
  • circuit 24 has three inputs. A first entry of door 27 is connected to a first entrance to the door 28 by a connection 30 and constitutes a first input of circuit 24.
  • Connection 30 receives a read command L common to the two memories 2 and 3.
  • Circuit 24 also receives on the second inputs of doors 27 and 28 selection signals SS1 and SS2 to allow you to select one of these memories 2 or 3. These signals allow selection from memory exclusively.
  • Each of memories 2 and 3 has circuits address and data decoders 7 and 29 and 8 and 31.
  • the address decoders are duplicated to allow a address decoding for each of memories 2 and 3, independently of each other.
  • the decoder 7 address is connected to microcontroller 4 and to the lines of words from memory 2.
  • Decoder 8 is connected to microcontroller 6 and word lines from memory 3.
  • These decoders 7 and 8 receive the addresses to decode by address buses 32 and 33 respectively whose number of lines is characteristic of memories 2 and 3.
  • Buses 32 and 33 are both from of the same address demultiplexing circuit 34.
  • the circuit 34 receives at its input a bus 37 with address, common to both memories 2 and 3.
  • Bus 37 is connected to the pins (not shown) of the integrated circuit 1.
  • Buffers respectively 35 and 36, controlled by microcontrollers 4 and 6 allow to memorize the bits of the addresses transmitted by the demultiplexer 34.
  • the two memories 2 and 3 are connected to another data decoder 29 and 31 respectively.
  • decoders 29 and 31 receive data signals to apply to the bit lines of memories 2 and 3.
  • Charge pumps 320 and 330 are connected, respectively, at the outputs of decoder 29 and at memory 2, and at the outputs of decoder 31 and at memory 3.
  • the charge pumps are controlled by the corresponding microcontroller. These pumps allow to polarize the lines of each of memories independently of each other. Indeed, the presence of these pumps makes it possible to polarize the lines of each of memories 2 and 3 to potentials different and therefore read or write simultaneously in each of the memories.
  • Each decoder 29 and 31 is connected to a bus 39 and 40 of data respectively from a circuit of demultiplexing 38 of data.
  • buffers 41 and 42 are installed on these buses respectively 39 and 40 in output of the demultiplexer 38.
  • These buffer memories 41 and 42 are controlled by microcontrollers 4 and 6 respectively.
  • the demultiplexer 38 is connected to its input to a data bus 43 common to both memories. Bus 43 is connected outside the circuit 1.
  • Each memory 2 or 3 can have a bus 46 and 47 data output respectively. These buses 46 and 47 are connected to memories 2 and 3 by read circuits 48 and 49 respectively by microcontrollers 4 and 6. As a variant, the circuits 48, 29 and 320 are connected to the same bus input output 39-46. Likewise, alternatively, the circuits 49, 31 and 330 are linked to the same input bus data output 40-47. In this case circuits 48 and 29, and 49 and 31 are produced in the form of a single circuit every time. In this case too, the demultiplexer 38 can be used as a multiplexer for output data on bus 43.
  • Circuits 48 and 49 deliver in data output whose number of bits depends on number of bus lines 39 or 40.
  • Each of the bits read in a word in a memory is applied to the entry of an element multiplexer 50 with two inputs.
  • the other entry of this multiplexer element 50 is dedicated to a bit read in a word in the other memory.
  • the multiplexer element 50 has two inputs identical scales 51 and 52.
  • the inputs of the scales 51 and 52 are connected to one of the wires of buses 46 and 47 respectively.
  • Each rocker 51 and 52 is made up of two identical doors.
  • flip-flop 51 has an AND 53 door with three inputs and a door OR 54 with three entries.
  • a first door entrance AND 53 is connected by a connection 55 and by a inverter 56 at an entrance to the OR gate 54.
  • the connection 55 is also connected to the output of the circuit 25.
  • a second entrance to gate 53 is connected to the exit of door 54.
  • Conversely the output of door 53 is connected to a second input of door 54.
  • the third entrances of doors 53 and 54 are connected together to a wire 70 of the bus 46.
  • the second rocker 52 included in the element multiplexer 50 is identical to flip-flop 51 set to except that the signals that control it come from the other timer circuit 26 via a connection 73.
  • a connection 69 equivalent to the connection 70 of the first rocker is connected to the reading circuit output 49.
  • the two flip-flops 51 and 52 each have two exits.
  • the outputs of the OR doors (54) of both flip-flops 51 and 52 are connected to the two inputs an AND 57 door with two inputs.
  • the outputs of AND gates (53) of the two flip-flops 51 and 52 are connected to the two inputs of a door OR two 58 entries.
  • These two doors 57 and 58 have their outputs applied to order grids respectively a P 59 type MOS transistor and a MOS transistor N 60 type. These two transistors are in series.
  • the source of transistor 59 is connected to potential Vcc, integrated circuit power supply.
  • the transistor drain 60 is connected to ground.
  • the output of the element multiplexer 50 is located at the midpoint of the two transistors 59 and 60 arranged in series.
  • connection 71 The midpoint of transistors 59 and 60 is connected to a connection 71. There are as many connections 71 that there are multiplexer elements 50. The connections 71 together form the data output bus 72 of the integrated circuit 1.
  • the multiplexer element 50 is connected by the connection 55 at the output of circuit 25. In this way it is controlled by the read selection signal L after the transformation of this signal L into signal SML1, maintained by circuit 25.
  • the signal SML1 allows output the data from the memory selected.
  • the multiplexer 50 can be directly controlled by the read signal. This solution is shown in dashes in Figure 1. In this in this case the selection signals must be imposed outside circuit 1 at a time when the selection in reading and when outputting data on bus 72.
  • connection 55 allows according to the cases of inhibiting the flip-flop 51 or on the contrary of the make passers-by.
  • FIG. 2 a mode of use of the circuit of figure 1. This mode highlights the functioning of the two microcontrollers 2 and 3 running in each memory write operations independently.
  • control signal E is active.
  • the top of Figure 1 shows that signal E is active (at level 1) while the signal L is inactive. This complementarity, usual, however, is not necessary.
  • a selection signal SS1 active level 1).
  • Circuit 18 automatically sets the signal SS2 to select the memory 3 at a complementary logic level (inactive).
  • the selection signal SS1 triggers a signal SME1 from time delay, duration T, via the circuit 13. This produces a sustained signal SME1 characteristic of a write selection of the memory 2.
  • the duration T of this signal SME1 is greater or equal to the duration of execution of a write.
  • the microcontroller 4 is therefore validated by this signal from duration T applied to door 11. It is at the same time isolated from the outside, insensitive to fallout 74 SS1 signal or even a possible untimely signal 75.
  • the holding signal produced at the output of the door 11 gives the order to the microcontroller to execute in memory 2 the write operation.
  • the addresses AD1 sent on bus 37 following the order E, or SS1 selection, are present at the output of address demultiplexer 34.
  • the demultiplexer 34 correctly directs addresses that he receives, either because he receives an order in this sense of microcontroller 4, either because it discriminates according to the address read on the bus 37 that of buffers 35 or 36 which must be requested.
  • the two buffer memories 35 and 36 have the same addresses, and the microcontroller 4 validates the address buffers 35 and data 41 that the microcontroller 6 validates the buffer memories 36 address, and 42 data, by connections 76 to 79 respectively.
  • microcontrollers 4 and 6 for this purpose interpret the signals delivered by the OR gates 11 and 12.
  • AD1 address bits stored in the buffers 35 are applied to the decoder 7. They allow you to select one or more lines of memory word 2.
  • microprocessor 4 (which continues to be validated by the order of duration T) causes the desired programming in memory 2.
  • signal SS1 may drop, after or before the transfer of data or addresses in buffers 41 and 35, depending on the mode normal or according to the variant mode selected. In the normal mode, address and data transfers may even be prior to order SS1 if the control of demultiplexers 34 and 38 is external.
  • signal SS2 becomes active. He authorizes a selection from memory 3.
  • the selection signal SS2 triggers, if the write signal has remained active, a time delay signal SME2 T 'from the circuit 14.
  • the duration produced by circuit 14 is not not necessarily the same as the duration T of the circuit 13. It depends on the programming speed of the memory 3 compared to that of memory 2.
  • a signal holding is produced accordingly at the exit of the logic circuit 12 to validate the microcontroller 6.
  • the microcontroller 6 then becomes autonomous in turn and can execute the write to memory operation 3.
  • the microcontroller operates and performs write operations regardless of value of the selection signal. So we take advantage of this duration of autonomy to trigger writing in the other memory.
  • the invention particularly finds a application in functional tests for which the length of the test time is a factor of productivity. Write and read operations can be performed in two separate memories of the same integrated circuit, this reduces test time and a fortiori the cost of the test.
  • durations T "and T" 'of SML1 and SML2 signals delivered by circuits 25 and 26 (which can be equal to each other) is greater or equal to the playing times. They can be also greater than or equal to the write times well let it be of little use.

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Read Only Memory (AREA)
  • Static Random-Access Memory (AREA)
  • Memory System (AREA)
  • Storage Device Security (AREA)
  • Logic Circuits (AREA)

Description

L'invention concerne un circuit intégré monolithique comportant deux mémoires, de préférence distinctes l'une de l'autre, et des circuits électroniques pour permettre le fonctionnement en simultané des deux mémoires.The invention relates to an integrated circuit. monolithic with two memories, preferably separate from each other, and circuits electronic to allow operation in simultaneous of the two memories.

Elle s'applique tout particulièrement aux mémoires non volatiles, programmables et effaçables électriquement EEPROM, flash EPROM ou encore mémoires sauvegardées par pile. Chacune des cellules mémoires de ces deux premières mémoires est constituée d'un transistor à grille flottante comportant une grille de commande, une grille flottante, une région source et une région drain. Pour écrire ou lire une telle cellule mémoire, on applique des tensions spécifiques sur des connexions qui mènent à ces cellules. Ces tensions dépendent des types de mémoire.It particularly applies to briefs non-volatile, programmable and erasable electrically EEPROM, flash EPROM or memories saved by battery. Each of the memory cells of these first two memories consists of a floating gate transistor having a gate command, a floating grid, a source region and a drain region. To write or read such a cell memory, we apply specific voltages on connections that lead to these cells. These tensions depend on memory types.

Par exemple pour programmer une cellule mémoire dans une mémoire EEPROM, on applique à la ligne de mots, reliée à la grille de commande du transistor à grille flottante de la cellule mémoire, une tension fortement positive et à la ligne de bit reliée à la région drain une tension nulle. L'application de ces tensions crée à travers l'étroite couche d'oxyde une forte tension ayant pour résultat la migration d'électrons vers la grille flottante. Ces électrons sont piégés dans la grille flottante. Le phénomène mis en jeu est un phénomène tunnel.For example to program a memory cell in an EEPROM memory, we apply to the line of words, connected to the control gate of the transistor floating grid of the memory cell, a voltage strongly positive and to the bit line connected to the region drain a zero voltage. The application of these tensions creates through the narrow oxide layer a high tension resulting in migration of electrons to the floating gate. These electrons are trapped in the floating grid. The phenomenon put at stake is a tunnel phenomenon.

Dans un autre exemple, pour programmer une mémoire de type flash EEPROM, les tensions appliquées aux divers électrodes d'une cellule mémoire sont différentes. Lors d'une programmation, on applique une forte tension positive à la ligne de mots du transistor d'une cellule mémoire. On applique une tension intermédiaire, par exemple positive de l'ordre de 5V, à la région drain. Tout comme dans une mémoire de type EEPROM, l'application de ces tension provoquent une migration des électrons. Le phénomène mis en jeu est un phénomène dit de porteurs chauds.In another example, to program a memory flash EEPROM type, the voltages applied to various electrodes of a memory cell are different. During programming, a strong positive voltage at the word line of the transistor a memory cell. We apply a voltage intermediate, for example positive of the order of 5V, to the drain region. Just like in a type memory EEPROM, the application of these voltages cause a electron migration. The phenomenon involved is a phenomenon known as hot carriers.

Il existe donc une certaine disparité entre les tensions de programmation et de lecture, à la fois pour une même mémoire et à la fois pour des mémoires de types différents.There is therefore a certain disparity between the programming and reading voltages, both for the same memory and both for memories of different types.

Sur un circuit intégré monolithique, intégrant notamment des mémoires de différents types, on veut toutefois conserver la possibilité d'un fonctionnement simultané comme si les deux mémoires ne se trouvaient pas sur le même circuit intégré. On veut par ailleurs utiliser des mémoires de types différents sur un même circuit intégré car les types différents conduisent à des caractéristiques différentes: vitesse plus ou moins grande d'écriture, densité d'intégration, accessibilité bit par bit ou page par page. Un concepteur peut alors, avec un même circuit intégré, disposer de facultés différentes qui lui permettent de mieux s'organiser.On a monolithic integrated circuit, integrating including memories of different types, we want however keep the possibility of operation simultaneous as if the two memories were not not on the same integrated circuit. We also want use memories of different types on the same integrated circuit because the different types lead to different characteristics: speed more or less large writing capacity, integration density, accessibility bit by bit or page by page. A designer can then, with the same integrated circuit, to have faculties that allow him to organize himself better.

Il est connu dans l'état de la technique de disposer d'un même circuit intégré comportant deux mémoires distinctes l'une de l'autre. Cependant la possibilité d'effectuer des opérations simultanées sur ces deux mémoires est limitée. On sait ainsi lire ou écrire dans une mémoire de type flash EPROM, tout en lisant ou en écrivant dans une mémoire de type EEPROM, à condition de dupliquer toutes les fonctions utiles. Ceci signifie doublement des bus et des circuits auxquels ils sont reliés. L'état de la technique n'offre aucune alternative. Le problème présenté est que ces fonctions occupent alors beaucoup de place sur le circuit intégré et en réduisent l'efficacité. Notamment le fait d'avoir deux bus est rédhibitoire. Si on n'a qu'un bus, le fonctionnement des mémoires n'est pas simultané, il est alternatif. Dans ce cas il y a une perte de temps.It is known in the state of the art to have the same integrated circuit comprising two memories distinct from each other. However the possibility of performing simultaneous operations on these two memories is limited. We know how to read or write to a flash EPROM memory, while reading or writing to an EEPROM type memory, provided you duplicate all the useful functions. This means doubling of buses and circuits to which they are connected. State of the art offers no alternative. The problem presented is that these functions then occupy a lot of space on the integrated circuit and reduce its efficiency. In particular the fact of having two buses is unacceptable. Yes there is only one bus, the functioning of the memories is not not simultaneous, it is alternative. In this case there is a waste of time.

L'invention a pour objet de remédier à ce problème en permettant l'écriture ou la lecture dans une mémoire en même temps qu'on permet l'écriture ou la lecture dans l'autre mémoire, ces deux mémoires étant présentes sur le même circuit intégré. De préférence, il n'y a qu'un bus.The object of the invention is to remedy this problem by allowing writing or reading in a memory while writing or reading is allowed in the other memory, these two memories being present on the same integrated circuit. Preferably, there is than a bus.

En pratique, l'invention propose de remédier à ce problème en permettant de sélectionner l'une ou l'autre des mémoires et d'y effectuer des opérations d'écriture ou de lecture pendant que l'autre mémoire est en lecture ou en écriture. Dans l'invention on tire parti du fait qu'une opération de programmation ou de lecture dure un certain temps prédéterminé, durée qui est spécifique à chaque mémoire. Plutôt que d'en être gêné, on utilise le temps d'occupation d'une mémoire à l'une de ces tâches pour l'isoler, sélectionner l'autre mémoire, et commencer à faire exécuter à cette autre mémoire une lecture ou une écriture. On utilise donc un signal de sélection pour commencer une tâche. La continuation de la tâche est conditionnée par un signal de maintien déclenché par ce signal de sélection.In practice, the invention proposes to remedy this problem in allowing to select one or the other memories and write operations there or reading while the other memory is in read or write. In the invention we take advantage that a programming or reading operation lasts a certain predetermined time, which is specific to each memory. Rather than being embarrassed, we use the memory occupation time at one of these tasks to isolate it, select the other memory, and start executing this other memory read or write. So we use a selection signal to start a task. The continuation of the task is conditioned by a signal hold triggered by this selection signal.

Ainsi, l'invention a pour objet un circuit intégré monolithique comportant deux mémoires distinctes l'une de l'autre, un microcontrôleur pour séquencer des opérations d'écriture ou de lecture de ces mémoires, un circuit de sélection propre à sélectionner l'une ou l'autre des mémoires et recevant un signal de sélection. L'invention est caractérisée en ce que le circuit intégré comporte deux microcontrôleurs en relation chacun avec une des mémoires et en ce que chaque microcontrôleur comporte un circuit pour exécuter dans chaque mémoire les opérations d'écriture ou de lecture indépendamment de la valeur du signal de sélection.Thus, the subject of the invention is an integrated circuit monolithic with two separate memories one on the other, a microcontroller to sequence write or read operations of these memories, a selection circuit suitable for selecting one or the other from the memories and receiving a signal from selection. The invention is characterized in that the integrated circuit has two microcontrollers in relationship each with one of the memories and in that each microcontroller has a circuit for execute in each memory the write operations or reading regardless of the signal value of selection.

Dans un exemple, pour résoudre le problème des tensions spécifiques à appliquer pour un type particulier de mémoire, on a dupliqué des pompes de charge. Ainsi, l'ensemble constitué par le microcontrôleur et les pompes de charge permet d'effectuer des opérations de programmation ou de lecture dans chaque mémoire indépendamment l'une de l'autre.In one example, to solve the problem of specific voltages to apply for a type particular from memory, we duplicated pumps charge. Thus, the set constituted by the microcontroller and charge pumps allows perform programming or reading in each memory independently one of the other.

L'invention sera mieux comprise à la lecture de la description qui suit et à l'examen des figures qui l'accompagnent. Celles-ci ne sont données qu'à titre indicatif et nullement limitatif de l'invention. Les figures montrent :

  • figure 1 : la représentation schématique d'un circuit conforme à l'invention;
  • figure 2 : des diagrammes temporels de signaux utilisés dans l'invention.
The invention will be better understood on reading the description which follows and on examining the figures which accompany it. These are given for information only and in no way limit the invention. The figures show:
  • Figure 1: the schematic representation of a circuit according to the invention;
  • Figure 2: time diagrams of signals used in the invention.

Sur la figure 1, on a représenté un circuit intégré 1 comportant deux mémoires, 2 et 3, distinctes l'une de l'autre. Dans un exemple, en plus d'être distinctes, les deux mémoires sont de type différent: la mémoire 2 est une EEPROM, la mémoire 3 est une flash EPROM. Un microcontrôleur 4 est propre à provoquer l'exécution en séquence des opérations d'écriture et/ou de lecture dans ces mémoires 2 et 3. Un microcontrôleur est un microprocesseur muni d'une mémoire programme dédiée. Un microcontrôleur ne sait en pratique qu'effectuer les actions enregistrées dans la mémoire programme. Un circuit de sélection 5 permet de sélectionner l'une ou l'autre de ces mémoires 2 ou 3. Dans un exemple, un double signal de sélection SS1 et SS2 est appliqué à l'entrée de ce circuit 5. Les signaux SS1 et SS2 sont complémentaires. Selon l'invention, le circuit intégré 1 comporte un deuxième microcontrôleur 6 du même type. Les deux microcontrôleurs 4 et 6 sont en relation chacun avec une des mémoires respectivement 2 et 3.In Figure 1, an integrated circuit is shown 1 comprising two memories, 2 and 3, distinct from one the other. In one example, in addition to being separate, the two memories are of different types: memory 2 is an EEPROM, memory 3 is a flash EPROM. A microcontroller 4 is capable of causing execution in sequence of write and / or read operations in these memories 2 and 3. A microcontroller is a microprocessor with dedicated program memory. A microcontroller only knows in practice what to do actions recorded in program memory. A selection circuit 5 selects one or the other of these memories 2 or 3. In an example, a double selection signal SS1 and SS2 is applied to the input of this circuit 5. The signals SS1 and SS2 are complementary. According to the invention, the integrated circuit 1 comprises a second microcontroller 6 of the same type. The two microcontrollers 4 and 6 are in relation each with one of memories 2 and 3 respectively.

Un décodeur d'adresse 7 est commandé par le microcontrôleur 4. Le décodeur 7 permet l'accès à la mémoire 2. De même, un décodeur 8 d'adresse est commandé par le microcontrôleur 6. Le décodeur 8 permet l'accès à la mémoire 3.An address decoder 7 is controlled by the microcontroller 4. The decoder 7 allows access to the memory 2. Similarly, an address decoder 8 is controlled by the microcontroller 6. The decoder 8 allows access to memory 3.

Selon l'invention, chaque microcontrôleur 4 et 6 comporte un circuit, respectivement 13 ou 14 ou 25 ou 26, pour exécuter dans chaque mémoire les opérations d'écriture ou de lecture, indépendamment de la valeur du signal de sélection SS1 ou SS2. Dans ce but, une entrée de validation 9 et 10 de chaque microcontrôleur respectivement est reliée, dans un exemple, à la sortie d'une porte OU respectivement 11 et 12 à deux entrées. Avec ces deux entrées on veut valider ces microcontrôleurs en écriture ou en lecture.According to the invention, each microcontroller 4 and 6 has a circuit, respectively 13 or 14 or 25 or 26, to execute in each memory the operations writing or reading, regardless of value selection signal SS1 or SS2. For this purpose, a validation input 9 and 10 of each microcontroller respectively is connected, in an example, to the output of an OR gate 11 and 12 respectively with two inputs. With these two entries we want to validate these write or read microcontrollers.

Une première des entrées de chaque porte OU 11 et 12 est reliée au circuit de sélection 5 par l'intermédiaire des circuits 13 et 14 propres à fournir un signal de temporisation d'écriture de durée T ou T'. Les circuits 13 et 14 sont déclenchés lors d'une sélection en écriture et produisent un signal maintenu SME1 (signal de maintien en écriture) pendant cette durée T ou SME2 pendant une durée T'.A first of the inputs of each gate OR 11 and 12 is connected to the selection circuit 5 by through circuits 13 and 14 suitable for supplying a write delay signal of duration T or T '. Circuits 13 and 14 are triggered during a write selection and produce a sustained signal SME1 (write hold signal) during this duration T or SME2 for a duration T '.

Les circuits 13 et 14 peuvent être par exemple des circuits multivibrateurs monostables. En variante, les circuits 13 et 14 sont partie intégrante, avec les portes OU 11 et 12, des microcontrôleurs 4 et 6. Dans ce cas, les circuits 13 et 14 peuvent être constitués de microprogrammes de comptage effectués par les microcontrôleurs 4 et 6. Ces microprogrammes de comptage comptent par exemple un nombre prédéterminé d'impulsions d'un signal d'horloge produit par ou fourni au microcontrôleur.The circuits 13 and 14 can for example be monostable multivibrator circuits. Alternatively, the circuits 13 and 14 are an integral part, with the OR gates 11 and 12, microcontrollers 4 and 6. In in this case, circuits 13 and 14 can be made up of metering firmware by microcontrollers 4 and 6. These microprograms of counting count for example a predetermined number of pulses of a clock signal produced by or supplied to the microcontroller.

La durée T du signal SME1 est choisie de telle sorte qu'elle soit supérieure ou égale à une durée d'exécution d'une écriture dans la mémoire 2. Il peut y avoir par ailleurs deux durées: une durée T longue pour une écriture, une durée T" pour une lecture. On verra plus loin comment s'opère la distinction.The duration T of the signal SME1 is chosen in such a way so that it is greater than or equal to a duration execution of a write in memory 2. There may also have two durations: a long duration T for a writing, a duration T "for a reading. We will see below how the distinction operates.

Les entrées des circuits 13 et 14 sont reliées à des sorties de portes ET respectivement 15 et 16 à deux entrées. Les portes 15 et 16 forment un premier circuit logique 21. Une première entrée de la porte 15 est reliée à une première entrée de la porte 16 par une connexion 17. La connexion 17 reçoit une commande d'écriture E commune aux deux mémoires 2 et 3. Le circuit 21 reçoit par ailleurs sur les deuxièmes entrées des portes 15 et 16 les signaux de sélection SS1 et SS2 respectivement. Ces signaux permettent de sélectionner une des mémoires 2 ou 3 en écriture en fonction du niveau logique des deux signaux de sélection SS1 ou SS2 et du niveau du signal E.The inputs of circuits 13 and 14 are connected to door outputs AND respectively 15 and 16 to two entries. Doors 15 and 16 form a first circuit logic 21. A first entry of gate 15 is connected to a first entrance to door 16 by a connection 17. Connection 17 receives a command of writing E common to the two memories 2 and 3. The circuit 21 also receives on the second inputs of doors 15 and 16 selection signals SS1 and SS2 respectively. These signals allow select one of memories 2 or 3 for writing in function of the logic level of the two signals SS1 or SS2 selection and level of signal E.

Les deuxièmes entrées de ces portes 15 et 16 sont reliées à des connexions qui véhiculent les signaux de sélection respectivement SS1 et SS2 par l'intermédiaire d'un circuit 18 à deux entrées et deux sorties. Le circuit 18 est constitué de deux inverseurs rebouclés 19 et 20 en parallèle sur ses deux entrées et ses deux sorties. Le circuit 18 assure la sélection d'une seule des deux mémoires à la fois. La connexion 22 qui relie la sortie de l'inverseur 19 et l'entrée de l'inverseur 20 constitue à la fois une entrée et une sortie de ce circuit 18 reliée à la porte 15. La connexion 23 qui relie la sortie de l'inverseur 20 et l'entrée de l'inverseur 19 constitue à la fois une deuxième entrée et une deuxième sortie de ce circuit 18 reliées à la porte 16. Les deux entrées du circuit 18 correspondent aux signaux de sélection SS1 et SS2. On ne sélectionne qu'une mémoire à la fois dans la mesure où on ne veut pas dupliquer les mémorisations. Cependant, dans une utilisation en miroir, le circuit 18 peut être omis, les deux mémoires pouvant être sélectionnées en même temps.The second entrances to these doors 15 and 16 are connected to connections that carry signals from SS1 and SS2 selection respectively via of a circuit 18 with two inputs and two outputs. The circuit 18 consists of two looped reversers 19 and 20 in parallel on its two entrances and its two exits. Circuit 18 ensures the selection of a single of the two memories at the same time. Connection 22 which connects the output of the inverter 19 and the input of the inverter 20 constitutes both an entry and an exit from this circuit 18 connected to door 15. Connection 23 which connects the output of the inverter 20 and the input of the inverter 19 constitutes both a second input and a second output of this circuit 18 connected to the door 16. The two inputs of circuit 18 correspond selection signals SS1 and SS2. We don't select only one memory at a time insofar as one does not want not duplicate memorizations. However, in a mirror use, circuit 18 can be omitted, both memories can be selected at the same time time.

Les portes OU 11 et 12 comportent une deuxième entrée. Les deuxièmes entrées de ces portes 11 et 12 sont reliées de même à un circuit temporisateur, par exemple ici aussi un multivibrateur monostable, respectivement 25 et 26. Ces deux circuits 25 et 26 ont les mêmes fonctions que les deux circuits 13 et 14 définis précédemment et sont de la même façon reliés au circuit de sélection 5. Les portes OU 11 et 12 reçoivent les signaux maintenus (SME1 SME2 et SML1 SML2 selon le mode écriture ou lecture retenu) de lecture et d'écriture. Elles délivrent un signal de maintien, pendant l'opération d'écriture ou de lecture retenue, dans le microcontrôleur sélectionné.OR doors 11 and 12 have a second Entrance. The second entrances of these doors 11 and 12 are also connected to a timer circuit, by example here also a monostable multivibrator, 25 and 26 respectively. These two circuits 25 and 26 have the same functions as the two circuits 13 and 14 previously defined and are similarly related to the selection circuit 5. OR doors 11 and 12 receive maintained signals (SME1 SME2 and SML1 SML2 depending on the writing or reading mode selected) of reading and writing. They deliver a hold signal, during the write or read operation selected, in the selected microcontroller.

Le circuit de sélection 5 comporte ainsi un deuxième circuit logique 24. Ce circuit 24 est de constitution identique au circuit 21. Il comporte deux portes ET 27 et 28 dont les sorties sont reliées aux entrées des circuits respectivement 25 et 26. Le circuit 24 comporte trois entrées. Une première entrée de la porte 27 est reliée à une première entrée de la porte 28 par une connexion 30 et constitue une première entrée du circuit 24. La connexion 30 reçoit une commande de lecture L commune aux deux mémoires 2 et 3. Le circuit 24 reçoit par ailleurs sur les deuxièmes entrées des portes 27 et 28 les signaux de sélection SS1 et SS2 pour permettre de sélectionner une de ces mémoires 2 ou 3. Ces signaux permettent la sélection d'une mémoire exclusivement.The selection circuit 5 thus comprises a second logic circuit 24. This circuit 24 is of identical to circuit 21. It has two AND gates 27 and 28 whose outputs are connected to inputs of circuits 25 and 26 respectively. circuit 24 has three inputs. A first entry of door 27 is connected to a first entrance to the door 28 by a connection 30 and constitutes a first input of circuit 24. Connection 30 receives a read command L common to the two memories 2 and 3. Circuit 24 also receives on the second inputs of doors 27 and 28 selection signals SS1 and SS2 to allow you to select one of these memories 2 or 3. These signals allow selection from memory exclusively.

Chacune des mémoires 2 et 3 comporte des circuits décodeurs d'adresse et de données respectivement 7 et 29 et 8 et 31. Conformément à l'invention, les décodeurs d'adresse sont dupliqués pour permettre un décodage d'adresses pour chacune des mémoires 2 et 3, indépendamment l'une de l'autre. Le décodeur 7 d'adresse est relié au microcontrôleur 4 et aux lignes de mots de la mémoire 2. Le décodeur 8 est relié au microcontrôleur 6 et aux lignes de mots de la mémoire 3. Ces décodeurs 7 et 8 reçoivent les adresses à décoder par des bus d'adresse respectivement 32 et 33 dont le nombre de lignes est caractéristique des mémoires 2 et 3. Les bus 32 et 33 sont tous deux issus d'un même circuit de démultiplexage 34 d'adresses. Le circuit 34 reçoit à son entrée un bus 37 d'adresse, commun aux deux mémoires 2 et 3. Le bus 37 est connecté aux broches (non représentées) du circuit intégré 1. Des mémoires tampons respectivement 35 et 36, contrôlées par les microcontrôleurs respectivement 4 et 6 permettent de mémoriser les bits des adresses transmises par le démultiplexeur 34.Each of memories 2 and 3 has circuits address and data decoders 7 and 29 and 8 and 31. In accordance with the invention, the address decoders are duplicated to allow a address decoding for each of memories 2 and 3, independently of each other. The decoder 7 address is connected to microcontroller 4 and to the lines of words from memory 2. Decoder 8 is connected to microcontroller 6 and word lines from memory 3. These decoders 7 and 8 receive the addresses to decode by address buses 32 and 33 respectively whose number of lines is characteristic of memories 2 and 3. Buses 32 and 33 are both from of the same address demultiplexing circuit 34. The circuit 34 receives at its input a bus 37 with address, common to both memories 2 and 3. Bus 37 is connected to the pins (not shown) of the integrated circuit 1. Buffers respectively 35 and 36, controlled by microcontrollers 4 and 6 allow to memorize the bits of the addresses transmitted by the demultiplexer 34.

Les deux mémoires 2 et 3 sont reliées à un autre décodeur de données respectivement 29 et 31. Les décodeurs 29 et 31 reçoivent des signaux de donnée à appliquer sur les lignes de bit des mémoires 2 et 3. Des pompes de charge 320 et 330 sont reliées, respectivement, aux sorties du décodeur 29 et à la mémoire 2, et aux sorties du décodeur 31 et à la mémoire 3. Les pompes de charge sont contrôlées par le microcontrôleur qui leur correspond. Ces pompes permettent de polariser les lignes de chacune des mémoires indépendamment l'une de l'autre. En effet, la présence de ces pompes permet de polariser les lignes de chacune des mémoires 2 et 3 à des potentiels différents et donc de lire ou d'écrire simultanément dans chacune des mémoires.The two memories 2 and 3 are connected to another data decoder 29 and 31 respectively. decoders 29 and 31 receive data signals to apply to the bit lines of memories 2 and 3. Charge pumps 320 and 330 are connected, respectively, at the outputs of decoder 29 and at memory 2, and at the outputs of decoder 31 and at memory 3. The charge pumps are controlled by the corresponding microcontroller. These pumps allow to polarize the lines of each of memories independently of each other. Indeed, the presence of these pumps makes it possible to polarize the lines of each of memories 2 and 3 to potentials different and therefore read or write simultaneously in each of the memories.

Chaque décodeur 29 et 31 est relié à un bus 39 et 40 de données respectivement issu d'un circuit de démultiplexage 38 de données. Afin de mémoriser les données à programmer, des mémoires tampons 41 et 42 sont installés sur ces bus respectivement 39 et 40 en sortie du démultiplexeur 38. Ces mémoires tampons 41 et 42 sont contrôlées par les microcontrôleurs respectivement 4 et 6. Le démultiplexeur 38 est relié à son entrée à un bus 43 de données commun aux deux mémoires. Le bus 43 est raccordé à l'extérieur du circuit 1.Each decoder 29 and 31 is connected to a bus 39 and 40 of data respectively from a circuit of demultiplexing 38 of data. In order to memorize the data to be programmed, buffers 41 and 42 are installed on these buses respectively 39 and 40 in output of the demultiplexer 38. These buffer memories 41 and 42 are controlled by microcontrollers 4 and 6 respectively. The demultiplexer 38 is connected to its input to a data bus 43 common to both memories. Bus 43 is connected outside the circuit 1.

Chaque mémoire 2 ou 3 peut comporter un bus respectivement 46 et 47 de sortie de données. Ces bus 46 et 47 sont reliés aux mémoires 2 et 3 par des circuits de lecture respectivement 48 et 49 contrôlés par les microcontrôleurs 4 et 6. En variante, les circuits 48, 29 et 320 sont reliés à un même bus d'entrée sortie 39-46. De même, en variante, les circuits 49, 31 et 330 sont liés à un même bus d'entrée sortie de donnée 40-47. Dans ce cas les circuits 48 et 29, et 49 et 31 sont réalisés sous la forme d'un seul circuit à chaque fois. Dans ce cas également, le démultiplexeur 38 peut servir de multiplexeur pour délivrer des données en sortie sur le bus 43.Each memory 2 or 3 can have a bus 46 and 47 data output respectively. These buses 46 and 47 are connected to memories 2 and 3 by read circuits 48 and 49 respectively by microcontrollers 4 and 6. As a variant, the circuits 48, 29 and 320 are connected to the same bus input output 39-46. Likewise, alternatively, the circuits 49, 31 and 330 are linked to the same input bus data output 40-47. In this case circuits 48 and 29, and 49 and 31 are produced in the form of a single circuit every time. In this case too, the demultiplexer 38 can be used as a multiplexer for output data on bus 43.

On va expliquer maintenant le fonctionnement d'un tel multiplexeur. Les circuits 48 et 49 délivrent en sortie des données dont le nombre de bits dépend du nombre de lignes des bus 39 ou 40. Dans un exemple, il y a à chaque fois huit lignes de bit et on forme des mots de huit bits. Chacun des bits lus dans un mot dans une mémoire est appliqué à l'entrée d'un élément multiplexeur 50 à deux entrées. L'autre entrée de cet élément multiplexeur 50 est dédiée à un bit lu dans un mot dans l'autre mémoire. Il y a de préférence correspondance entre la longueur de mots lus ou écrits dans une mémoire et ceux lus ou écrits dans une autre. Ceci n'est cependant pas une obligation. Il y a autant d'éléments multiplexeurs 50 que le mot le plus long à lire dans une mémoire comporte de bits.We will now explain how a like multiplexer. Circuits 48 and 49 deliver in data output whose number of bits depends on number of bus lines 39 or 40. In an example, there are eight bit lines each time and we form eight bit words. Each of the bits read in a word in a memory is applied to the entry of an element multiplexer 50 with two inputs. The other entry of this multiplexer element 50 is dedicated to a bit read in a word in the other memory. There is preferably correspondence between the length of words read or written in one memory and those read or written in another. This is however not an obligation. There is as much of multiplexer elements 50 that the longest word to read from memory has bits.

L'élément multiplexeur 50 comporte en entrée deux bascules identiques 51 et 52. Les entrées des bascules 51 et 52 sont reliées à un des fils des bus 46 et 47 respectivement. Chaque bascule 51 et 52 est constituée de deux portes identiques. Par exemple, la bascule 51 comporte une porte ET 53 à trois entrées et une porte OU 54 à trois entrées. Une première entrée de la porte ET 53 est reliée par une connexion 55 et par un inverseur 56 à une entrée de la porte OU 54. La connexion 55 est par ailleurs reliée à la sortie du circuit 25. Une deuxième entrée de la porte 53 est reliée à la sortie de la porte 54. Inversement la sortie de la porte 53 est reliée à une deuxième entrée de la porte 54. Les troisièmes entrées des portes 53 et 54 sont reliées ensemble à un fil 70 du bus 46. La deuxième bascule 52 comprise dans l'élément multiplexeur 50 est identique à la bascule 51 mis à part que les signaux qui la commandent sont issus de l'autre circuit temporisateur 26 par une connexion 73. D'autre part une connexion 69 équivalente à la connexion 70 de la première bascule est reliée à la sortie du circuit de lecture 49.The multiplexer element 50 has two inputs identical scales 51 and 52. The inputs of the scales 51 and 52 are connected to one of the wires of buses 46 and 47 respectively. Each rocker 51 and 52 is made up of two identical doors. For example, flip-flop 51 has an AND 53 door with three inputs and a door OR 54 with three entries. A first door entrance AND 53 is connected by a connection 55 and by a inverter 56 at an entrance to the OR gate 54. The connection 55 is also connected to the output of the circuit 25. A second entrance to gate 53 is connected to the exit of door 54. Conversely the output of door 53 is connected to a second input of door 54. The third entrances of doors 53 and 54 are connected together to a wire 70 of the bus 46. The second rocker 52 included in the element multiplexer 50 is identical to flip-flop 51 set to except that the signals that control it come from the other timer circuit 26 via a connection 73. On the other hand, a connection 69 equivalent to the connection 70 of the first rocker is connected to the reading circuit output 49.

Les deux bascules 51 et 52 ont chacune deux sorties. Les sorties des portes OU (54) des deux bascules 51 et 52 sont connectées aux deux entrées d'une porte ET 57 à deux entrées. Les sorties des portes ET (53) des deux bascules 51 et 52 sont connectées aux deux entrées d'une porte OU 58 à deux entrées. Ces deux portes 57 et 58 ont leur sorties appliquées à des grilles de commande respectivement d'un transistor MOS de type P 59 et d'un transistor MOS de type N 60. Ces deux transistors sont en série. La source du transistor 59 est reliée au potentiel Vcc, alimentation du circuit intégré. Le drain du transistor 60 est relié à la masse. La sortie de l'élément multiplexeur 50 se situe au point milieu des deux transistors 59 et 60 disposés en série.The two flip-flops 51 and 52 each have two exits. The outputs of the OR doors (54) of both flip-flops 51 and 52 are connected to the two inputs an AND 57 door with two inputs. The outputs of AND gates (53) of the two flip-flops 51 and 52 are connected to the two inputs of a door OR two 58 entries. These two doors 57 and 58 have their outputs applied to order grids respectively a P 59 type MOS transistor and a MOS transistor N 60 type. These two transistors are in series. The source of transistor 59 is connected to potential Vcc, integrated circuit power supply. The transistor drain 60 is connected to ground. The output of the element multiplexer 50 is located at the midpoint of the two transistors 59 and 60 arranged in series.

Le point milieu des transistors 59 et 60 est relié à une connexion 71. Il y a autant de connexions 71 qu'il y a d'éléments multiplexeur 50. Les connexions 71 ensemble forment le bus 72 de sortie de données du circuit intégré 1.The midpoint of transistors 59 and 60 is connected to a connection 71. There are as many connections 71 that there are multiplexer elements 50. The connections 71 together form the data output bus 72 of the integrated circuit 1.

L'élément multiplexeur 50 est connecté par la connexion 55 en sortie du circuit 25. De cette façon il est commandé par le signal de sélection de lecture L après la transformation de ce signal L en signal SML1, maintenu, par le circuit 25. Le signal SML1 permet de fournir en sortie la donnée issue de la mémoire sélectionnée.The multiplexer element 50 is connected by the connection 55 at the output of circuit 25. In this way it is controlled by the read selection signal L after the transformation of this signal L into signal SML1, maintained by circuit 25. The signal SML1 allows output the data from the memory selected.

Dans un autre exemple, le multiplexeur 50 peut être commandé directement par le signal de lecture. Cette solution est montrée en tirets sur la figure 1. Dans ce cas les signaux de sélection doivent être imposés de l'extérieur du circuit 1 à la fois au moment de la sélection en lecture et au moment de la sortie des données sur le bus 72.In another example, the multiplexer 50 can be directly controlled by the read signal. This solution is shown in dashes in Figure 1. In this in this case the selection signals must be imposed outside circuit 1 at a time when the selection in reading and when outputting data on bus 72.

Le signal présent sur la connexion 55 permet selon les cas d'inhiber la bascule 51 ou au contraire de la rendre passante.The signal present on connection 55 allows according to the cases of inhibiting the flip-flop 51 or on the contrary of the make passers-by.

On décrit maintenant en référence à la figure 2 un mode d'utilisation du circuit de la figure 1. Ce mode permet de mettre en évidence le fonctionnement des deux microcontrôleurs 2 et 3 exécutant dans chaque mémoire d'une manière autonome des opérations d'écriture. We will now describe with reference to FIG. 2 a mode of use of the circuit of figure 1. This mode highlights the functioning of the two microcontrollers 2 and 3 running in each memory write operations independently.

On considère ici que le signal de commande d'écriture E est actif. Le haut de la figure 1 montre que le signal E est actif (au niveau 1) alors que le signal L est inactif. Cette complémentarité, habituelle, n'est cependant pas nécessaire. Dans le cas de la sélection de la mémoire 2, on applique à l'entrée du circuit de sélection 5, par exemple à la date t, un signal de sélection SS1 actif (niveau 1). Le circuit 18 place automatiquement le signal SS2 de sélection de la mémoire 3 à un niveau logique complémentaire (inactif). Le signal de sélection SS1 déclenche un signal SME1 de temporisation, de durée T, par l'intermédiaire du circuit 13. Celui-ci produit un signal maintenu SME1 caractéristique d'une sélection en écriture de la mémoire 2. La durée T de ce signal SME1 est supérieure ou égale à la durée d'exécution d'une écriture. Le microcontrôleur 4 est donc validé par ce signal de durée T appliqué sur la porte 11. Il est en même temps isolé de l'extérieur, insensible à une retombée 74 du signal SS1 ou même à un éventuel signal intempestif 75.We consider here that the control signal E is active. The top of Figure 1 shows that signal E is active (at level 1) while the signal L is inactive. This complementarity, usual, however, is not necessary. In the case from memory 2 selection, apply to input of selection circuit 5, for example on date t, a selection signal SS1 active (level 1). Circuit 18 automatically sets the signal SS2 to select the memory 3 at a complementary logic level (inactive). The selection signal SS1 triggers a signal SME1 from time delay, duration T, via the circuit 13. This produces a sustained signal SME1 characteristic of a write selection of the memory 2. The duration T of this signal SME1 is greater or equal to the duration of execution of a write. The microcontroller 4 is therefore validated by this signal from duration T applied to door 11. It is at the same time isolated from the outside, insensitive to fallout 74 SS1 signal or even a possible untimely signal 75.

Le signal de maintien produit à la sortie de la porte 11 donne l'ordre au microcontrôleur d'exécuter dans la mémoire 2 l'opération d'écriture. Les adresses AD1 envoyées sur le bus 37 consécutivement à l'ordre d'écriture E, ou de sélection SS1, sont présentes à la sortie du démultiplexeur d'adresse 34. Le démultiplexeur 34 oriente correctement les adresses qu'il reçoit, soit parce qu'il reçoit un ordre dans ce sens du microcontrôleur 4, soit parce qu'il discrimine en fonction de l'adresse lue sur le bus 37 celle des mémoires tampons 35 ou 36 qui doit être sollicitée. En variante, les deux mémoires tampons 35 et 36 présentent les mêmes adresses, et le microcontrôleur 4 valide les mémoires tampons 35 d'adresse, et 41 de données, alors que le microcontrôleur 6 valide les mémoires tampons 36 d'adresse, et 42 de données, par des connexions 76 à 79 respectivement. Dans ce cas les microcontrôleurs 4 et 6 interprètent dans ce but les signaux délivrés par les portes OU 11 et 12. Les bits d'adresse AD1 mémorisés dans les mémoires tampons 35 sont appliqués au décodeur 7. Ils permettent de sélectionner une ou des lignes de mot de la mémoire 2.The holding signal produced at the output of the door 11 gives the order to the microcontroller to execute in memory 2 the write operation. The addresses AD1 sent on bus 37 following the order E, or SS1 selection, are present at the output of address demultiplexer 34. The demultiplexer 34 correctly directs addresses that he receives, either because he receives an order in this sense of microcontroller 4, either because it discriminates according to the address read on the bus 37 that of buffers 35 or 36 which must be requested. In variant, the two buffer memories 35 and 36 have the same addresses, and the microcontroller 4 validates the address buffers 35 and data 41 that the microcontroller 6 validates the buffer memories 36 address, and 42 data, by connections 76 to 79 respectively. In this case microcontrollers 4 and 6 for this purpose interpret the signals delivered by the OR gates 11 and 12. AD1 address bits stored in the buffers 35 are applied to the decoder 7. They allow you to select one or more lines of memory word 2.

De la même manière les données D1 sont présentes à la sortie du démultiplexeur de données 38 et à l'entrée de la mémoire tampon 41. La pompe de charge 32 est activée en même temps que les mémoires tampons. Elle permet de polariser les lignes de bit de la mémoire à des tensions de programmation. Dans ces conditions, sur la base des adresses AD1 disponibles dans la mémoire tampon 35 et des données D1 disponibles dans la mémoire tampon 41, le microprocesseur 4 (qui continue à être validé par l'ordre de durée T) provoque la programmation désirée dans la mémoire 2.In the same way the data D1 is present at the output of the data demultiplexer 38 and at the input of the buffer memory 41. The charge pump 32 is activated at the same time as the buffers. She allows to polarize the bit lines of the memory to programming voltages. Under these conditions, on the base of AD1 addresses available in memory buffer 35 and D1 data available in memory buffer 41, microprocessor 4 (which continues to be validated by the order of duration T) causes the desired programming in memory 2.

Une fois que la sélection SS1 a permis de déclencher ces actions, le signal SS1 peut retomber, après ou avant le transfert des données ou des adresses dans les mémoires tampons 41 et 35, selon le mode normal ou selon le mode en variante retenu. Dans le mode normal, les transferts d'adresses et de données peuvent même être antérieurs à l'ordre SS1 si la commande des démultiplexeurs 34 et 38 est externe.Once SS1 selection has resulted in trigger these actions, signal SS1 may drop, after or before the transfer of data or addresses in buffers 41 and 35, depending on the mode normal or according to the variant mode selected. In the normal mode, address and data transfers may even be prior to order SS1 if the control of demultiplexers 34 and 38 is external.

Au moment du front descendant 74 du signal de sélection SS1, le signal SS2 devient actif. Il autorise une sélection de la mémoire 3. Le signal de sélection SS2 déclenche, si le signal d'écriture est resté actif, un signal SME2 de temporisation de durée T' issu du circuit 14. La durée produite par le circuit 14 n'est pas nécessairement la même que la durée T du circuit 13. Elle dépend de la vitesse de programmation de la mémoire 3 comparée à celle de la mémoire 2. Un signal de maintien est produit en conséquence à la sortie du circuit logique 12 pour valider le microcontrôleur 6. Le microcontrôleur 6 devient alors autonome à son tour et peut exécuter l'opération d'écriture dans la mémoire 3.At the time of the falling edge 74 of the signal selection SS1, signal SS2 becomes active. He authorizes a selection from memory 3. The selection signal SS2 triggers, if the write signal has remained active, a time delay signal SME2 T 'from the circuit 14. The duration produced by circuit 14 is not not necessarily the same as the duration T of the circuit 13. It depends on the programming speed of the memory 3 compared to that of memory 2. A signal holding is produced accordingly at the exit of the logic circuit 12 to validate the microcontroller 6. The microcontroller 6 then becomes autonomous in turn and can execute the write to memory operation 3.

Les opérations d'écriture sont simultanées dans les deux mémoires si le front 74 se produit avant la fin de la durée T. La figure 2 montre, vers le bas, les transferts d'adresse AD2 et de données D2 utiles à la programmation de la mémoire 3.The write operations are simultaneous in the two memories if the front 74 occurs before the end of the duration T. Figure 2 shows, downwards, the AD2 address and D2 data transfers useful for memory programming 3.

Dès le moment où le signal de temporisation est déclenché, le microcontrôleur fonctionne et effectue les opérations d'écriture indépendamment de la valeur du signal de sélection. On tire donc parti de cette durée d'autonomie pour déclencher l'écriture dans l'autre mémoire.From the moment the delay signal is triggered, the microcontroller operates and performs write operations regardless of value of the selection signal. So we take advantage of this duration of autonomy to trigger writing in the other memory.

L'invention trouve tout particulièrement une application dans les tests de fonctionnement pour lequel la durée du temps de test est un facteur de productivité. Les opérations d'écriture et de lecture pouvant être effectuées dans deux mémoire distinctes du même circuit intégré, ceci réduit le temps des tests et a fortiori le coût du test.The invention particularly finds a application in functional tests for which the length of the test time is a factor of productivity. Write and read operations can be performed in two separate memories of the same integrated circuit, this reduces test time and a fortiori the cost of the test.

Tout ce qui vient d'être dit pour l'écriture est valable pour la lecture. Dans la mesure où une opération d'écriture dure de l'ordre de 500 microsecondes, on voit l'intérêt qu'il y a à en exécuter deux en même temps. Pour la lecture, il convient, sur un cycle de lecture de quelques microsecondes, de retenir qu'une lecture de cellules proprement dite dure environ 100 nanosecondes. Avec le procédé de l'invention, on commence la lecture dans une mémoire. Pendant qu'elle se poursuit, on commence la lecture dans l'autre. Puis on peut resélectionner (en se synchronisant) le bus 46 de la première mémoire (puis le bus 47) avec les éléments multiplexeur 50 pour assurer le transfert des données lues sur le bus 71.All that has just been said for writing is valid for reading. To the extent that a write operation lasts around 500 microseconds, we see the interest in run two at the same time. For reading, it suitable, on a reading cycle of a few microseconds, to remember that a cell reading proper lasts for about 100 nanoseconds. With the process of the invention, we start reading in a memory. While it continues, we start the read in the other. Then we can reselect (in synchronizing) bus 46 of the first memory (then bus 47) with the multiplexer elements 50 for ensure the transfer of the data read on the bus 71.

Dans le cas de la lecture, bien entendu, il est seulement nécessaire que les durées T" et T"' des signaux SML1 et SML2 délivrés par les circuits 25 et 26 (qui peuvent être égales entre elles) soit supérieures ou égales aux durées de lecture. Elles peuvent être aussi supérieures ou égales aux durées d'écriture bien que cela soit peu utile.In the case of reading, of course, it is only necessary that the durations T "and T" 'of SML1 and SML2 signals delivered by circuits 25 and 26 (which can be equal to each other) is greater or equal to the playing times. They can be also greater than or equal to the write times well let it be of little use.

Claims (11)

  1. Integrated circuit (1) comprising two memories (2, 3) separate from one another, a microcontroller (4) for sequencing writing or reading operations for these memories (2, 3), a selection circuit (5) suitable for selecting one or other of the memories (2, 3) and receiving a selection signal (SS1, SS2), characterised in that
    this integrated circuit (1) comprises two microcontrollers (4, 6) each in relation with one of the memories (2, 3), and in that
    each microcontroller (4, 6) comprises a circuit (13, 14) for executing the writing or reading operations in each memory (2, 3) independently of the value of the selection signal (SS1, SS2).
  2. Circuit according to claim 1, characterised in that each microcontroller (4, 6) is connected to the selection circuit (5) through the intermediary of means (13, 14) suitable for supplying a delay signal of a given time (T), triggered when a selection is made, to produce a holding signal (SME1, SME2) during this given time, the given time being greater than or equal to a time for execution of a reading or a writing operation.
  3. Circuit according to one of claims 1 to 2, characterised in that it comprises
    a circuit (18) so that the selection signals are complementary in order to select just one memory (2, 3) at a time.
  4. Circuit according to one of claims 1 to 3, characterised in that
    the selection circuit (5) comprises at least a first logic circuit (21) which receives a writing command (E) common to the two memories and which receives the selection signal (SS1, SS2), the logic circuit (21) permitting the selection (SME1, SME2) of one of these two memories (2, 3) for writing.
  5. Circuit according to one of claims 1 to 4, characterised in that
    the selection circuit (5) comprises a second logic circuit (24) which receives a reading command (L) common to the two memories (2, 3) and which receives the selection signal (SS1, SS2), the logic circuit (24) permitting the selection (SME1, SME2) of one of these two memories (2, 3) for reading.
  6. Circuit according to one of claims 4 or 5, characterised in that the logic circuit (24) comprises two gates (27 and 28) with two inputs, a first input of these gates receiving the selection signal (SS2, SS1), a second input receiving the writing or reading signal, to permit selection of a memory exclusively for writing or for reading.
  7. Circuit according to one of claims 1 to 6, characterised in that it comprises
    duplicated address decoders (7, 8, 29, 31) to permit decoding of addresses in each of the memories (2, 3) independently of one another.
  8. Circuit according to one of claims 1 to 7, characterised in that it comprises
    duplicated charging pumps (32, 33) to polarise lines in each of the memories (2, 3) independently of one another.
  9. Circuit according to one of claims 1 to 8, characterised in that it comprises
    an OR gate at the validation input of each microcontroller (11, 12) to receive the reading and writing holding signals and to produce a holding signal during the writing or reading operation.
  10. Circuit according to claim 5, characterised in that it comprises
    an output multiplexer (50) controlled by reading signals (73) from the second logic circuit (24) and which supplies the data read from the selected memory (2, 3) at the output.
  11. Circuit according to claim 5, characterised in that it comprises
    an output multiplexer (50) controlled (55) by the holding signals (SML1) suitable for supplying the data read from the selected memory at the output.
EP98400661A 1997-04-08 1998-03-20 Arrangement of two memories on the same monolithic integrated circuit Expired - Lifetime EP0875899B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9704285 1997-04-08
FR9704285A FR2761802B1 (en) 1997-04-08 1997-04-08 SET OF TWO MEMORIES ON THE SAME INTEGRATED MONOLITHIC CIRCUIT

Publications (2)

Publication Number Publication Date
EP0875899A1 EP0875899A1 (en) 1998-11-04
EP0875899B1 true EP0875899B1 (en) 2003-06-18

Family

ID=9505647

Family Applications (1)

Application Number Title Priority Date Filing Date
EP98400661A Expired - Lifetime EP0875899B1 (en) 1997-04-08 1998-03-20 Arrangement of two memories on the same monolithic integrated circuit

Country Status (5)

Country Link
US (3) US6205512B1 (en)
EP (1) EP0875899B1 (en)
JP (1) JPH113596A (en)
DE (1) DE69815590D1 (en)
FR (1) FR2761802B1 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2761802B1 (en) * 1997-04-08 1999-06-18 Sgs Thomson Microelectronics SET OF TWO MEMORIES ON THE SAME INTEGRATED MONOLITHIC CIRCUIT
US6804136B2 (en) * 2002-06-21 2004-10-12 Micron Technology, Inc. Write once read only memory employing charge trapping in insulators
US7017017B2 (en) * 2002-11-08 2006-03-21 Intel Corporation Memory controllers with interleaved mirrored memory modes
US6882590B2 (en) * 2003-01-29 2005-04-19 Micron Technology, Inc. Multiple configuration multiple chip memory device and method
US8108588B2 (en) * 2003-04-16 2012-01-31 Sandisk Il Ltd. Monolithic read-while-write flash memory device
US7162551B2 (en) * 2003-10-31 2007-01-09 Lucent Technologies Inc. Memory management system having a linked list processor
US7159049B2 (en) * 2003-10-31 2007-01-02 Lucent Technologies Inc. Memory management system including on access flow regulator for a data processing system

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4667190A (en) * 1982-07-30 1987-05-19 Honeywell Inc. Two axis fast access memory
JPS60200287A (en) * 1984-03-24 1985-10-09 株式会社東芝 Memory unit
US4924427A (en) * 1985-11-15 1990-05-08 Unisys Corporation Direct memory access controller with direct memory to memory transfers
US4908502A (en) 1988-02-08 1990-03-13 Pitney Bowes Inc. Fault tolerant smart card
US5335336A (en) * 1988-03-28 1994-08-02 Hitachi, Ltd. Memory device having refresh mode returning previous page address for resumed page mode
DE69021666D1 (en) * 1989-08-02 1995-09-21 Fujitsu Ltd Scan converter control loop with memories and address generator for generating a zigzag address signal supplied to the memories.
JPH0511827A (en) * 1990-04-23 1993-01-22 Canon Inc Execution time output method of industrial automatic equipment
JPH04233642A (en) * 1990-07-27 1992-08-21 Dell Usa Corp Processor which performs memory access in parallel with cache access and method used therrfor
JP2740063B2 (en) * 1990-10-15 1998-04-15 株式会社東芝 Semiconductor storage device
US5349578A (en) * 1991-05-10 1994-09-20 Nec Corporation Time slot switching function diagnostic system
US5615355A (en) * 1992-10-22 1997-03-25 Ampex Corporation Method and apparatus for buffering a user application from the timing requirements of a DRAM
US5455912A (en) * 1993-06-18 1995-10-03 Vtech Industries, Inc. High speed/low overhead bus arbitration apparatus and method for arbitrating a system bus
US6154850A (en) * 1993-11-01 2000-11-28 Beaufort River, Inc. Data storage system and method
EP0834131A4 (en) * 1995-05-26 2001-10-31 Emulex Corp RELATED ANEMEMORIES FOR CONTEXT DATA SEARCH
US5724501A (en) * 1996-03-29 1998-03-03 Emc Corporation Quick recovery of write cache in a fault tolerant I/O system
US5802561A (en) * 1996-06-28 1998-09-01 Digital Equipment Corporation Simultaneous, mirror write cache
US5774135A (en) * 1996-11-05 1998-06-30 Vlsi, Technology, Inc. Non-contiguous memory location addressing scheme
FR2761802B1 (en) * 1997-04-08 1999-06-18 Sgs Thomson Microelectronics SET OF TWO MEMORIES ON THE SAME INTEGRATED MONOLITHIC CIRCUIT
US6052133A (en) * 1997-06-27 2000-04-18 S3 Incorporated Multi-function controller and method for a computer graphics display system
US5962930A (en) * 1997-11-26 1999-10-05 Intel Corporation Method and apparatus for detecting supply power loss

Also Published As

Publication number Publication date
FR2761802B1 (en) 1999-06-18
US6434056B2 (en) 2002-08-13
EP0875899A1 (en) 1998-11-04
US20010000815A1 (en) 2001-05-03
FR2761802A1 (en) 1998-10-09
US20010001206A1 (en) 2001-05-17
JPH113596A (en) 1999-01-06
US6205512B1 (en) 2001-03-20
US6279068B2 (en) 2001-08-21
DE69815590D1 (en) 2003-07-24

Similar Documents

Publication Publication Date Title
EP0313431B1 (en) Programming method for memory cells and circuit for carrying out this method
EP0666573B1 (en) Non volatile flip-flop, programmed via the source, especially for memory redundancy circuit
EP0674264B1 (en) Circuit for selecting redundant memory elements and FLASH EEPROM containing said circuit
EP0567356B1 (en) Apparatus and method for erasing sectors from a flash-EPROM memory
EP0618591B1 (en) Integrated circuit for memory card and method for deducting units in a memory card
EP0645714B1 (en) Dynamic redundancy circuit for integrated circuit memory
FR2627315A1 (en) METHOD FOR PRECONDITIONING, ERASING AND / OR PROGRAMMING AN EEPROM MEMORY COMPONENT
EP1111621A1 (en) Page programmable flash memory
FR2665973A1 (en) Automatic erase optimisation circuit for an electrically erasable and programmable semiconductor memory, and method relating thereto
EP0875899B1 (en) Arrangement of two memories on the same monolithic integrated circuit
EP0051525B1 (en) Logic array with simplified electric programming
FR2641391A1 (en) FAST ERASABLE PROGRAMMABLE LOGIC COMPONENT
FR2979468A1 (en) FLOATING ADDRESSING OF A MEMORY PAGE EEPROM
EP0606796B1 (en) Method of uniformly programming an electrically programmable memory and memory using the method
EP0833346B1 (en) Serial access memory with secured writing
FR2627316A1 (en) MEMORY EEPROM "FLASH" A PROCESSOR OF CONTROL OF THE PORT OF ORDERS
FR2718867A1 (en) Method of erasing a memory and circuits for implementation.
FR2604554A1 (en) SECURITY DEVICE FOR PROGRAMMING AN ELECTRICALLY PROGRAMMABLE NON-VOLATILE MEMORY
EP1085520B1 (en) Page mode writing method for an EEPROM and corresponding circuitry
FR2605447A1 (en) NON-VOLATILE MEMORY PROGRAMMABLE ELECTRICALLY
EP1256961B1 (en) Nonvolatile memory architecture and integrated circuit comprising such a memory
EP1012847B1 (en) Method for recording a binary word using electrically erasable and programmable memory cells
FR2758645A1 (en) DEVICE AND METHOD FOR PROGRAMMING A MEMORY
FR2756658A1 (en) NON-VOLATILE ELECTRONIC MEMORY AND ITS MANAGEMENT METHOD
FR2759195A1 (en) CHANGE OF ADDRESS DETECTION CIRCUIT

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): DE FR GB IT

AX Request for extension of the european patent

Free format text: AL;LT;LV;MK;RO;SI

17P Request for examination filed

Effective date: 19981203

RAP3 Party data changed (applicant data changed or rights of an application transferred)

Owner name: STMICROELECTRONICS S.A.

AKX Designation fees paid

Free format text: DE FR GB IT

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: STMICROELECTRONICS S.A.

GRAH Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOS IGRA

GRAH Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOS IGRA

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Designated state(s): DE FR GB IT

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT;WARNING: LAPSES OF ITALIAN PATENTS WITH EFFECTIVE DATE BEFORE 2007 MAY HAVE OCCURRED AT ANY TIME BEFORE 2007. THE CORRECT EFFECTIVE DATE MAY BE DIFFERENT FROM THE ONE RECORDED.

Effective date: 20030618

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

Free format text: NOT ENGLISH

REF Corresponds to:

Ref document number: 69815590

Country of ref document: DE

Date of ref document: 20030724

Kind code of ref document: P

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20030919

GBT Gb: translation of ep patent filed (gb section 77(6)(a)/1977)
PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed

Effective date: 20040319

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20080225

Year of fee payment: 11

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20080328

Year of fee payment: 11

GBPC Gb: european patent ceased through non-payment of renewal fee

Effective date: 20090320

REG Reference to a national code

Ref country code: FR

Ref legal event code: ST

Effective date: 20091130

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20090320

Ref country code: FR

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20091123