FR2681965A1 - MEMORY WRITE PROTECTION METHOD AND APPARATUS. - Google Patents
MEMORY WRITE PROTECTION METHOD AND APPARATUS. Download PDFInfo
- Publication number
- FR2681965A1 FR2681965A1 FR9211978A FR9211978A FR2681965A1 FR 2681965 A1 FR2681965 A1 FR 2681965A1 FR 9211978 A FR9211978 A FR 9211978A FR 9211978 A FR9211978 A FR 9211978A FR 2681965 A1 FR2681965 A1 FR 2681965A1
- Authority
- FR
- France
- Prior art keywords
- signal
- data
- memory device
- write
- predetermined duration
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/88—Masking faults in memories by using spares or by reconfiguring with partially good memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/004—Error avoidance
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/24—Memory cell safety or protection circuits, e.g. arrangements for preventing inadvertent reading or writing; Status cells; Test cells
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0796—Safety measures, i.e. ensuring safe condition in the event of error, e.g. for controlling element
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
La présente invention concerne de façon générale l'infrastructure de systèmes micro-informatiques et, plus spécialement, l'accès au dispositif mémoire contenu à l'intérieur d'un système micro-informatique. Plus particulièrement, elle concerne un procédé et un appareil de protection d'écriture en mémoire. The present invention relates generally to the infrastructure of microcomputer systems and, more specifically, access to the memory device contained within a microcomputer system. More particularly, it relates to a method and an apparatus for writing to memory protection.
Typiquement, un système micro-informatique contient une mémoire, un bus de données, un microprocesseur et des dispositifs périphériques. La mémoire contient une entrée bus de données, une entrée bus d'adresses, une entrée sélection de puce, ou de boîtier, et une entrée de validation d'écriture. D'un point de vue général, en micro-informatique, il existe trois systèmes pour écrire des données dans une mémoire externe. Typically, a microcomputer system contains a memory, a data bus, a microprocessor and peripheral devices. The memory contains a data bus input, an address bus input, a chip or box selection input, and a write validation input. From a general point of view, in microcomputing, there are three systems for writing data to an external memory.
Selon un premier système, on utilise un dispositif de commande pour créer l'adresse sur le bus d'adresses. Les lignes de sélection de puce et de validation d'écriture sont directement connectées entre le dispositif de commande et le dispositif mémoire. Lors de la mise sous tension ou pendant un transfert de données, il peut arriver que le signal de validation d'écriture soit activé pendant trop longtemps ou soit déclenché de manière erronée. Ceci peut amener l'écriture de données parasites dans le dispositif mémoire et altérer les données contenues dans la mémoire, ce qui peut sérieusement affecter le fonctionnement du système micro-informatique. De plus, le dispositif de commande peut exécuter le code d'erreur pendant un cycle d'écriture, ce qui produit des résultats imprévisibles à l'intérieur du dispositif mémoire. According to a first system, a control device is used to create the address on the address bus. The chip selection and write validation lines are directly connected between the control device and the memory device. During power-up or during data transfer, it may happen that the write enable signal is activated for too long or is triggered incorrectly. This can lead to the writing of spurious data in the memory device and alter the data contained in the memory, which can seriously affect the functioning of the microcomputer system. In addition, the controller can execute the error code during a write cycle, which produces unpredictable results inside the memory device.
Selon le deuxième système, une tentative est effectuée pour protéger la mémoire vis-à-vis de données altérées. Le dispositif de commande déclenche un dispositif logique, et celui-ci crée le signal de validation d'écriture pour le dispositif mémoire pendant une durée prédéterminée. Cette durée prédéterminée est typiquement fixée au temps nécessaire pour écrire dans le dispositif mémoire le bloc de données le plus grand possible, de sorte qu'elle ne limite pas la quantité de données qui est écrite à l'emplacement de mémorisation du dispositif mémoire. Ce système laisse la possibilité que des données altérées soient écrites dans le dispositif mémoire dans le cas où des blocs de données, plus petits que le bloc de données le plus grand possible, sont écrits dans le dispositif de mémoire ou qu'un signal de validation d'écriture soit déclenché de façon erronée. De nouveau, le dispositif de commande peut exécuter le code d'erreur pendant un cycle d'écriture et amener des résultats imprévisibles à l'intérieur du dispositif mémoire. According to the second system, an attempt is made to protect the memory from corrupted data. The controller triggers a logic device, which creates the write enable signal for the memory device for a predetermined period of time. This predetermined duration is typically fixed at the time necessary to write the largest possible block of data to the memory device, so that it does not limit the amount of data which is written to the storage location of the memory device. This system leaves the possibility of corrupted data being written to the memory device in the event that data blocks, smaller than the largest possible data block, are written to the memory device or an enable signal write is triggered incorrectly. Again, the controller can execute the error code during a write cycle and cause unpredictable results inside the memory device.
Le troisième système possède un dispositif de protection intégré dans la mémoire. La mémoire demande au dispositif de commande d'écrire un multiplet de données à trois adresses particulières avant d'écrire les données voulues dans le dispositif mémoire. Cette forme de mise en oeuvre est discutée dans les fiches techniques X28C64, de XICOR Data Book, 2ème édition, 1990. Une fois la séquence de trois multiplets écrite aux adresses appropriées, la fenêtre d'écriture de page s'ouvre, ce qui autorise le dispositif de commande à écrire entre 1 et 64 multiplets de données dans le dispositif mémoire. Ce dispositif de protection protège la mémoire vis-à-vis d'un déclenchement erroné, mais laisse possible une altération du dispositif de mémoire durant cette fenêtre invariable d'écriture de page. De nouveau, le dispositif de commande peut exécuter le code d'erreur pendant un cycle d'écriture et produire des résultats imprévisibles à l'intérieur du dispositif mémoire. The third system has a protection device built into the memory. The memory requests the controller to write a byte of data to three specific addresses before writing the desired data to the memory device. This form of implementation is discussed in the technical data sheets X28C64, of XICOR Data Book, 2nd edition, 1990. Once the sequence of three bytes has been written to the appropriate addresses, the page writing window opens, which authorizes the control device to write between 1 and 64 bytes of data in the memory device. This protection device protects the memory against an erroneous triggering, but allows a possible alteration of the memory device during this invariable page writing window. Again, the controller can execute the error code during a write cycle and produce unpredictable results inside the memory device.
11 existe donc un besoin pour un dispositif de protection de données susceptible d'adaptation, qui fait varier la durée du signal de validation d'écriture en fonction de la taille du bloc de données à écrire dans le dispositif mémoire ou de l'activité contrôlée à l'intérieur du dispositif de commande, et qui élimine le déclenchement erroné du signal de validation d'écriture. There is therefore a need for a data protection device capable of adaptation, which varies the duration of the write validation signal as a function of the size of the data block to be written in the memory device or of the activity monitored. inside the control device, and which eliminates the erroneous triggering of the write validation signal.
L'invention propose un appareil de protection d'écriture destiné à protéger un dispositif mémoire vis-à-vis de la réception de données altérées pendant l'écriture d'un bloc de données dans le dispositif mémoire en provenance d'un dispositif de fourniture de données. Le dispositif mémoire possède une entrée validation d'écriture et une entrée données. L'appareil de protection d'écriture couple le dispositif de fourniture de données à l'entrée données du dispositif mémoire. Le dispositif de protection de mémoire produit un premier signal qui déclenche la production d'un deuxième signal. Le deuxième signal est actif pendant une première durée prédéterminée et est appliqué à l'entrée du dispositif mémoire, ce qui permet au dispositif de fourniture de données d'écrire des données dans le dispositif mémoire pendant cette première durée prédéterminée. Un troisième signal peut être produit pour invalider ledit deuxième signal. The invention provides a write protection device intended to protect a memory device from receiving corrupted data during the writing of a data block to the memory device from a supply device. of data. The memory device has a write validation input and a data input. The write protection device couples the data supply device to the data input of the memory device. The memory protection device produces a first signal which triggers the production of a second signal. The second signal is active for a first predetermined duration and is applied to the input of the memory device, which allows the data supply device to write data to the memory device during this first predetermined duration. A third signal can be produced to invalidate said second signal.
L'invention concerne également un procédé de protection d'écriture en mémoire. The invention also relates to a memory write protection method.
La description suivante, conçue à titre d'illustration de l'invention, vise à donner une meilleure compréhension de ses caractéristiques et avantages ; elle s'appuie sur les dessins annexés, parmi lesquels:
la figure 1 est un schéma fonctionnel d'un système de télécommunication radiotéléphonique qui peut employer l'invention;
la figure 2 est un schéma de circuit de l'invention;
la figure 3 est un diagramme temporel de l'invention; et
la figure 4 est un organigramme montrant le procédé selon l'invention.The following description, intended to illustrate the invention, aims to give a better understanding of its characteristics and advantages; it is based on the appended drawings, among which:
Figure 1 is a block diagram of a radiotelephone telecommunications system which can employ the invention;
Figure 2 is a circuit diagram of the invention;
Figure 3 is a timing diagram of the invention; and
Figure 4 is a flowchart showing the method according to the invention.
L'invention propose un système micro-informatique incorporé dans un radiotéléphone numérique, par exemple le radiotéléphone cellulaire numérique "Japan Digital Cellular Telephone". Dans le mode de réalisation préféré, on utilise une mémoire morte programmable, ou PROM, électroniquement effaçable, c'està-dire une EEPROM, comme dispositif mémoire dans le radiotéléphone pour emmagasiner l'information permanente nécessaire au fonctionnement du radiotéléphone, même si l'invention peut être utilisée pour protéger n'importe quel type de dispositif mémoire de type non volatil, ou rémanent. Des blocs de données de tailles diverses sont écrits dans la EEPROM en provenance de dispositifs différents. Dans le passé, on a pu constater, lors du renvoi de radiotéléphones au service d'entretien, que la EEPROM contenait des données altérées qui invalidaient ou affectaient le fonctionnement du radiotéléphone. Grâce à la mise en oeuvre de l'invention, l'écriture de données altérées dans la EEPROM est minimisée. En substance, l'invention propose un procédé et un appareil permettant d'écrire des blocs de données dans la EEPROM sans altérer les données emmagasinées à l'intérieur du dispositif mémoire. The invention provides a microcomputer system incorporated in a digital radiotelephone, for example the "Japan Digital Cellular Telephone" digital cellular radiotelephone. In the preferred embodiment, a programmable read-only memory, or PROM, electronically erasable, that is to say an EEPROM, is used as a memory device in the radiotelephone to store the permanent information necessary for the operation of the radiotelephone, even if the The invention can be used to protect any type of non-volatile or non-volatile memory device. Data blocks of various sizes are written to the EEPROM from different devices. In the past, it has been observed, when returning radiotelephones to the maintenance service, that the EEPROM contained altered data which invalidated or affected the operation of the radiotelephone. Thanks to the implementation of the invention, the writing of corrupted data in the EEPROM is minimized. In essence, the invention provides a method and apparatus for writing data blocks to the EEPROM without altering the data stored inside the memory device.
La figure 1 est un schéma fonctionnel d'un système de télécommunication radiotéléphonique. A l'intérieur de ce système, il existe un émetteur-récepteur de site fixe 103 qui envoie des signaux de fréquence radio (RF) à des téléphones mobiles ou portatifs placés dans la zone géographique desservie par ltémetteur- récepteur de site fixe 103 et qui en reçoit. Le radiotéléphone 101 est un des radiotéléphones desservis par l'émetteur-récepteur de site fixe 103. Figure 1 is a block diagram of a radiotelephone telecommunication system. Within this system, there is a fixed site transceiver 103 which sends radio frequency (RF) signals to mobile or portable telephones located in the geographic area served by the fixed site transceiver 103 and which receives some. The radiotelephone 101 is one of the radiotelephones served by the fixed site transceiver 103.
A la réception de signaux de fréquence radio, les antennes 105 et 107 du radiotéléphone convertissent les signaux de fréquence radio en signaux de fréquence radio électriques, lesquels sont respectivement transmis aux récepteurs 111 et 113. Les récepteurs 111 et 113 convertissent les signaux électriques de fréquence radio en données utilisables, destinées à être employées par d'autres parties du radiotéléphone 101. A l'émission de signaux de fréquence radio, le microprocesseur 121 applique des données à l'entrée de l'émetteur 109. L'émetteur accepte les données et les convertit en signaux de fréquence radio électriques et les émet via l'antenne 105, laquelle convertit ses signaux de fréquence radio et émet ceux-ci à destination de l'émetteur-récepteur de site fixe 103. Pour que le radiotéléphone 101 fonctionne correctement, il faut que de nombreux paramètres soient emmagasinés dans une mémoire permanente 127. Cette mémoire permanente est l'EEPROM 127. Il est fait accès à l'EEPROM 127 par l'intermédiaire du microprocesseur 121. On reception of radio frequency signals, the antennas 105 and 107 of the radiotelephone convert the radio frequency signals into electric radio frequency signals, which are respectively transmitted to receivers 111 and 113. Receivers 111 and 113 convert the electric frequency signals radio in usable data, intended for use by other parts of the radiotelephone 101. When transmitting radio frequency signals, the microprocessor 121 applies data to the input of the transmitter 109. The transmitter accepts the data and converts them into electric radio frequency signals and transmits them via antenna 105, which converts its radio frequency signals and transmits them to the fixed site transceiver 103. For the radiotelephone 101 to function properly , many parameters must be stored in a permanent memory 127. This permanent memory is EEPRO M 127. Access to the EEPROM 127 is made via the microprocessor 121.
Pendant la programmation initiale, en usine, du radiotéléphone, on programme l'EEPROM 127 à l'aide de paramètres fonctionnels essentiels, qui comprennent : l'information d'intensité de signal reçu (RSSI), l'information d'identification et l'information de niveau de puissance. During initial factory programming of the radiotelephone, the EEPROM 127 is programmed using essential functional parameters, which include: received signal strength information (RSSI), identification information and power level information.
L'information RSSI est nécessaire pour étalonner les intensités des signaux en cours de réception. Les intensités étalonnées des signaux reçus servent à sélectionner l'émetteur-récepteur de site fixe 103 approprié. L'intensité du signal reçu courant qui est reconstituée à partir des récepteurs 111 et 113 est utilisée en référence avec la valeur RSSI emmagasinée dans l'EEPROM 127. Si les valeurs
RSSI sont altérées, un émetteur-récepteur de site fixe erroné peut alors être sélectionné, ce qui entraîne une réduction des performances du radiotéléphone 101.RSSI information is required to calibrate the strengths of the signals being received. The calibrated intensities of the received signals are used to select the appropriate fixed site transceiver 103. The intensity of the current received signal which is reconstructed from receivers 111 and 113 is used in reference to the RSSI value stored in the EEPROM 127. If the values
RSSIs are altered, an incorrect fixed site transceiver can then be selected, which results in a reduction in the performance of the radiotelephone 101.
L'information d'identification contient un numéro de série et un numéro de téléphone uniques. Cette information est emmagasinée dans l'EEPROM 127 au cours de la procédure de programmation initiale. Il faut que cette information soit protégée pour assurer l'intégrité du système de télécommunication. Si le numéro de série change ou s'altère, le téléphone peut alors être identifié comme étant celui de quelqu'un d'autre, ou bien des appels téléphoniques peuvent être effectués et affectés à la facture téléphonique de quelqu'un d'autre. The identification information contains a unique serial number and telephone number. This information is stored in EEPROM 127 during the initial programming procedure. This information must be protected to ensure the integrity of the telecommunications system. If the serial number changes or changes, the phone can then be identified as someone else's, or phone calls can be made and assigned to someone else's phone bill.
La table des niveaux de puissance est chargée, en usine, dans l'EEPROM 127. Les niveaux de puissance de sortie sont mesurés pour une entrée donnée, car la puissance de sortie fluctue d'un radiotéléphone à l'autre en fonction des variations des composants et des éléments hybrides. La puissance de sortie d'émission est accordée de façon à satisfaire les spécifications FCC (Federal
Communications Commission), ou les spécifications japonaises équivalentes, sur cinq niveaux prédéterminés. L'information nécessaire pour exciter l'amplificateur de puissance sur le niveau de sortie voulu est emmagasinée dans l'EEPROM 127 et est extraite à chaque fois que l'amplificateur de puissance doit être accordé sur un niveau de puissance de sortie prédéterminé. Si cette information est altérée, l'amplificateur de puissance contenu dans l'émetteur 109 ne fonctionnera pas dans le cadre des spécifications et ceci pourra amener de sérieux problèmes de performances pour le radiotéléphone 101. Une fois que cette information a été chargée dans l'EEPROM 127, le radiotéléphone 101 est prêt à fonctionner.The power level table is loaded at the factory in EEPROM 127. The output power levels are measured for a given input, because the output power fluctuates from one radiotelephone to another according to the variations of the components and hybrid elements. Transmit power is tuned to meet FCC (Federal
Communications Commission), or equivalent Japanese specifications, on five predetermined levels. The information necessary to drive the power amplifier to the desired output level is stored in the EEPROM 127 and is extracted each time the power amplifier is to be tuned to a predetermined output power level. If this information is altered, the power amplifier contained in the transmitter 109 will not function within the specifications and this may cause serious performance problems for the radiotelephone 101. Once this information has been loaded into the EEPROM 127, the radiotelephone 101 is ready to operate.
Lorsque le radiotéléphone 101 est en service, il est prévu d'emmagasiner dans l'EEPROM 127 certaines données particulières de l'utilisateur et divers paramètres afin de faciliter les réparations lorsque le téléphone est renvoyé au fournisseur. Tout d'abord, on utilise une horloge pour mémoriser le temps écoulé d'utilisation du radiotéléphone depuis le début. Pour que le radiotéléphone 101 maintienne le fonctionnement du compteur, il emmagasine le compteur dans l'EEPROM 127. En cas de mise hors tension ou de coupure de courant, l'horloge n'est pas repositionnée. En deuxième lieu, le radiotéléphone 101 contient un dispositif de contrôle d'erreur qui utilise un groupe de codes d'erreur permettant de décrire les problèmes qui se sont posés dans le radiotéléphone 101 pendant le fonctionnement. Si une erreur se produit pendant le fonctionnement du radiotéléphone 101, le code de l'erreur et son instant d'apparition sont mémorisés dans l'EEPROM 127 pour aider à la réparation ultérieure du radiotéléphone 101. When the radiotelephone 101 is in service, provision is made to store in the EEPROM 127 certain specific user data and various parameters in order to facilitate repairs when the telephone is returned to the supplier. First of all, a clock is used to memorize the elapsed time of use of the radiotelephone from the start. So that the radiotelephone 101 maintains the operation of the counter, it stores the counter in the EEPROM 127. In the event of powering off or power failure, the clock is not repositioned. Second, the radiotelephone 101 contains an error control device that uses a group of error codes to describe the problems that arose in the radiotelephone 101 during operation. If an error occurs during the operation of the radiotelephone 101, the error code and its instant of occurrence are memorized in the EEPROM 127 to assist in the subsequent repair of the radiotelephone 101.
De plus, l'EEPROM 127 est utilisée pour emmagasiner des numéros de téléphone et des choix de l'utilisateur, par exemple le volume de la sonnerie. Les opérations précédentes sont commandées par le microprocesseur 121 pendant le fonctionnement du radiotéléphone 101.In addition, EEPROM 127 is used to store phone numbers and user choices, such as ring volume. The preceding operations are controlled by the microprocessor 121 during the operation of the radiotelephone 101.
La figure 2 est un schéma fonctionnel montrant l'utilisation de l'invention. Figure 2 is a block diagram showing the use of the invention.
Le cycle d'écriture de données en provenance du microprocesseur 121 commence par l'envoi d'une configuration binaire connue à une adresse prédéterminée.The data writing cycle from the microprocessor 121 begins with the sending of a known binary configuration to a predetermined address.
L'adresse prédéterminée correspond au vérificateur de données 207. Le vérificateur de données 207 reçoit le multiplet de données connu de la part du microprocesseur 121 et le vérifie par rapport à son multiplet de données connu. Lors de la vérification, le microprocesseur 121 change alors l'adresse pour celle de l'EEPROM 127 et commence à charger les données voulues sur le bus de données 217. Simultanément, le vérificateur de données 207 produit un signal 211 de déclenchement de validation d'écriture qui est appliqué à l'entrée du circuit monostable 203. Le circuit monostable 203 produit un signal d'autorisation d'écriture 213 pendant une durée prédéterminée. Cette durée prédéterminée est égale au temps nécessaire pour écrire le bloc de données le plus grand dans l'EEPROM 127 en provenance du microprocesseur 121. Dans le mode de réalisation préféré, le temps du circuit monostable est fixé à 50,us. Le signal 213 d'autorisation d'écriture et le signal de lecture/écriture 219 sont appliqués à l'entrée d'une porte ET 205. Ceci garantit que, dans le cas d'un déclenchement erroné par le circuit monostable, le signal 215 de validation d'écriture dans l'EEPROM ne sera pas erronément validé, ce qui protège l'EEPROM 127 vis-à-vis de données altérées. La porte ET 205 et le vérificateur de données 207 sont, dans le mode de réalisation préféré, mis en oeuvre sous la forme d'un circuit logique programmable (PLA) désigné par le numéro de référence 129 sur la figure 1 et pouvant être un modèle PAL16V8, que l'on peut se procurer auprès de la société Advanced Micro
Devices. Lorsqu'on peut former le produit logique (fonction ET) des trois signaux 211, 213 et 219, la porte ET 205 délivre un signal de validation d'écriture (WE) 215 à l'entrée validation d'écriture de l'EEPROM 127. Ceci autorise l'écriture des données présentes sur le bus de données 217 dans l'EEPROM 127 aux adresses déterminées par le microprocesseur 121.The predetermined address corresponds to the data verifier 207. The data verifier 207 receives the known byte of data from the microprocessor 121 and checks it against its known byte of data. During the verification, the microprocessor 121 then changes the address to that of the EEPROM 127 and begins to load the desired data on the data bus 217. Simultaneously, the data verifier 207 produces a signal 211 for triggering validation of d writing which is applied to the input of the monostable circuit 203. The monostable circuit 203 produces a write authorization signal 213 for a predetermined period. This predetermined duration is equal to the time necessary to write the largest data block in the EEPROM 127 coming from the microprocessor 121. In the preferred embodiment, the time of the monostable circuit is fixed at 50, us. The write authorization signal 213 and the read / write signal 219 are applied to the input of an AND gate 205. This guarantees that, in the event of an incorrect triggering by the monostable circuit, the signal 215 of validation of writing in the EEPROM will not be erroneously validated, which protects the EEPROM 127 against corrupted data. The AND gate 205 and the data verifier 207 are, in the preferred embodiment, implemented in the form of a programmable logic circuit (PLA) designated by the reference number 129 in FIG. 1 and which can be a model PAL16V8, which can be obtained from the company Advanced Micro
Devices. When the logical product (AND function) of the three signals 211, 213 and 219 can be formed, the AND gate 205 delivers a write validation signal (WE) 215 to the write validation input of the EEPROM 127 This authorizes the writing of the data present on the data bus 217 in the EEPROM 127 at the addresses determined by the microprocessor 121.
Le signal 209 de repositionnement du circuit monostable peut être utilisé pour abréger la durée du signal de validation d'écriture du circuit monostable, si bien qu'il est créé un signal de validation d'écriture de durée variable. Il y a plusieurs raisons pour lesquelles une durée variable est souhaitable pour le signal de validation d'écriture. Tout d'abord, si le bloc de données qui doit être écrit dans l'EEPROM 127 a une durée plus courte que le bloc de données le plus grand, le signal 209 de repositionnement du circuit monostable peut alors être déclenché par le microprocesseur 121, à la suite de quoi il y a invalidation du signal 213 d'autoirisation d'écriture envoyé à l'EEPROM 127 au moment où le bloc de données plus court a été écrit. La durée du signal de validation d'écriture est égale à la longueur du bloc de données à écrire dans l'EEPROM 127, ce qui élimine sensiblement la possibilité d'écrire des données altérées dans l'EEPROM 127. Selon un autre cas, le signal de repositionnement 209 peut être utilisé pour interrompre un cycle d'écriture dans l'EEPROM 127 lorsqu'il est déterminé qu'un problème existe à l'intérieur du radiotéléphone. Dans le mode de réalisation préféré, le signal de repositionnement 209 est utilisé pour interrompre un cycle d'écriture lorsque le radiotéléphone détecte un signal de demande de lecture ou un signal de sélection de puce envoyés à un dispositif autre que l'EEPROM 127. Ces problèmes sont particuliers au système à l'intérieur duquel l'invention est utilisée et l'homme de l'art pourra utiliser des critères équivalents d'invalidation du cycle d'écriture. The repositioning signal 209 of the monostable circuit can be used to shorten the duration of the write validation signal of the monostable circuit, so that a write validation signal of variable duration is created. There are several reasons why a variable duration is desirable for the write enable signal. First of all, if the data block which is to be written in the EEPROM 127 has a shorter duration than the largest data block, the signal 209 for repositioning the monostable circuit can then be triggered by the microprocessor 121, as a result of which there is invalidation of the write authorization signal 213 sent to the EEPROM 127 at the time when the shorter data block has been written. The duration of the write enable signal is equal to the length of the data block to be written to the EEPROM 127, which appreciably eliminates the possibility of writing corrupted data in the EEPROM 127. According to another case, the repositioning signal 209 can be used to interrupt a write cycle in EEPROM 127 when it is determined that a problem exists inside the radiotelephone. In the preferred embodiment, the repositioning signal 209 is used to interrupt a write cycle when the radiotelephone detects a read request signal or a chip selection signal sent to a device other than the EEPROM 127. These Problems are particular to the system within which the invention is used and those skilled in the art will be able to use equivalent criteria for invalidating the writing cycle.
On note que le circuit monostable 203 est particulier à ce mode de réalisation. D'autres modes de réalisation peuvent employer des dispositifs de synchronisation équivalents, comportant des horloges numériques, des registres à décalage et des circuits à résistance/condensateur (RC), à la place du circuit monostable. De la même façon, l'homme de l'art pourra remplacer l'EEPROM 127 par n'importe quel dispositif mémoire. Note that the monostable circuit 203 is particular to this embodiment. Other embodiments may employ equivalent timing devices, including digital clocks, shift registers, and resistance / capacitor (RC) circuits, in place of the monostable circuit. Likewise, a person skilled in the art can replace the EEPROM 127 with any memory device.
La figure 3 montre les positions dans le temps de tous les signaux principaux apparaissant dans le schéma fonctionnel de la figure 2. Le microprocesseur 121 positionne le bus de données 305 sur une configuration binaire connue, et le bus d'adresses 307 au vérificateur de données 207. Après que le vérificateur de données 207 a reçu la configuration binaire connue, le microprocesseur 121 positionne le bus d'adresses 307 sur un emplacement de mémoire situé à l'intérieur de l'EEPROM 127 et commence à transférer les données voulues sur le bus de données 307. A la vérification de la configuration binaire connue, le vérificateur de données 207 crée le signal de déclenchement de validation d'écriture 313 (211). Le signal est appliqué à l'entrée du circuit monostable 203. Le circuit monostable 203 crée alors un signal d'autorisation d'écriture 311 (213), qui dure pendant 50,us et est appliqué à l'entrée du dispositif ET logique 205. Le dispositif ET logique 205 utilise les signaux appliqués à l'entrée du microprocesseur, à savoir le signal de lecture/écriture 309 (219), le signal de déclenchement de validation d'écriture 313 (211) et le signal d'autorisation d'écriture 311, pour créer le signal 315 de validation d'écriture dans l'EEPROM. La durée du signal de validation d'écriture 315 peut être abrégée par le microprocesseur 121, qui valide le signal de repositionnement 317 (209). Le signal de repositionnement 317 (209) repositionne le circuit monostable 203, ce qui désactive le signal de validation d'écriture 315 (215). FIG. 3 shows the positions over time of all the main signals appearing in the functional diagram of FIG. 2. The microprocessor 121 positions the data bus 305 on a known binary configuration, and the address bus 307 to the data verifier 207. After the data verifier 207 has received the known binary configuration, the microprocessor 121 positions the address bus 307 on a memory location located inside the EEPROM 127 and begins to transfer the desired data to the data bus 307. When verifying the known binary configuration, the data verifier 207 creates the write validation trigger signal 313 (211). The signal is applied to the input of the monostable circuit 203. The monostable circuit 203 then creates a write authorization signal 311 (213), which lasts for 50, us and is applied to the input of the logical AND device 205 The logical AND device 205 uses the signals applied to the input of the microprocessor, namely the read / write signal 309 (219), the write validation trigger signal 313 (211) and the authorization signal d 'write 311, to create the write validation signal 315 in the EEPROM. The duration of the write validation signal 315 can be shortened by the microprocessor 121, which validates the repositioning signal 317 (209). The repositioning signal 317 (209) reposition the monostable circuit 203, which deactivates the write validation signal 315 (215).
La figure 4 est un organigramme du procédé empIoyé par ce mode de réalisation pour réduire le risque d'écrire des données altérées dans l'EEPROM 127. FIG. 4 is a flow diagram of the method used by this embodiment to reduce the risk of writing corrupted data in the EEPROM 127.
L'organigramme commence en 401. En 403, le microprocesseur 121 produit une configuration binaire connue sur le bus de données 217 et il positionne l'adresse sur le bus 217 à destination du vérificateur de données 207. En 405, le microprocesseur 121 positionne le bus d'adresses 217 sur une adresse placée à l'intérieur de l'EEPROM 127 et commence à transférer les données voulues sur le bus de données 217. En 407, le vérificateur 207, après vérification de la configuration binaire reçue connue, produit un signal 313 de déclenchement de validation d'écriture, qui est appliqué à l'entrée du circuit monostable 203 et à celle du circuit
ET 205. En 409, le circuit monostable 203 produit, en réponse au signal de déclenchement de validation d'écriture 313, le signal d'autorisation d'écriture 311 pendant le temps nécessaire pour le transfert du plus grand bloc possible de données voulues à l'EEPROM 127. Dans le mode de réalisation préféré, cette durée est de 50,us.The flowchart begins at 401. At 403, the microprocessor 121 produces a known binary configuration on the data bus 217 and it positions the address on the bus 217 intended for the data verifier 207. At 405, the microprocessor 121 positions the address bus 217 on an address placed inside the EEPROM 127 and begins to transfer the desired data to the data bus 217. At 407, the verifier 207, after checking the known received bit pattern, produces a write validation trigger signal 313, which is applied to the input of the monostable circuit 203 and to that of the circuit
AND 205. At 409, the monostable circuit 203 produces, in response to the write validation trigger signal 313, the write authorization signal 311 for the time necessary for the transfer of the largest possible block of desired data to EEPROM 127. In the preferred embodiment, this duration is 50, us.
En 411, si le bloc de données envoyé par le microprocesseur 121 est plus court que le bloc de données le plus grand possible, le signal de repositionnement 317 (209) est alors produit par le microprocesseur 121 et est appliqué à l'entrée de repositionnement du circuit monostable, ce qui invalide l'application du signal de validation d'écriture 315 à l'EEPROM 127. Le signal de repositionnement 317 (209) fait fonction de fenêtre variable pour le signal de validation d'écriture 315, laquelle fenêtre est réglée pour s'ajuster à la longueur du bloc de données écrit dans l'EEPROM. Selon une autre possibilité, le signal de repositionnement 317 (209) peut être produit en réponse à l'existence d'un problème dans le radiotéléphone 101, ce qui a pour effet d'annuler le reste du cycle d'écriture en évitant tout autre endommagement de l'EEPROM 127. Dans le mode de réalisation préféré, le signal de repositionnement 317 (209) est déclenché en réponse à une tentative de lecture ou à un signal de sélection d'une autre puce, exécuté par le microprocesseur 121. Ces signaux indiquent que le microprocesseur 121 peut exécuter le code d'erreur. In 411, if the data block sent by the microprocessor 121 is shorter than the largest possible data block, the repositioning signal 317 (209) is then produced by the microprocessor 121 and is applied to the repositioning input of the monostable circuit, which invalidates the application of the write enable signal 315 to the EEPROM 127. The repositioning signal 317 (209) acts as a variable window for the write enable signal 315, which window is set to fit the length of the data block written to the EEPROM. Alternatively, the repositioning signal 317 (209) can be produced in response to the existence of a problem in the radiotelephone 101, which has the effect of canceling the rest of the write cycle by avoiding any further damage to the EEPROM 127. In the preferred embodiment, the repositioning signal 317 (209) is triggered in response to an attempt to read or a signal to select another chip, executed by the microprocessor 121. These signals indicate that microprocessor 121 can execute the error code.
Bien entendu, l'homme de l'art sera en mesure d'imaginer, à partir de l'appareil et du procédé dont la description vient d'être donnée à titre simplement illustratif et nullement limitatif, diverses variantes et modifications ne sortant pas du cadre de l'invention. Of course, those skilled in the art will be able to imagine, from the apparatus and the method, the description of which has just been given by way of illustration only and in no way limitative, various variants and modifications not departing from the part of the invention.
Claims (10)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US76989691A | 1991-10-01 | 1991-10-01 |
Publications (1)
Publication Number | Publication Date |
---|---|
FR2681965A1 true FR2681965A1 (en) | 1993-04-02 |
Family
ID=25086828
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR9211978A Pending FR2681965A1 (en) | 1991-10-01 | 1992-10-01 | MEMORY WRITE PROTECTION METHOD AND APPARATUS. |
Country Status (5)
Country | Link |
---|---|
CA (1) | CA2097308A1 (en) |
FR (1) | FR2681965A1 (en) |
IT (1) | IT1258856B (en) |
MX (1) | MX9205634A (en) |
WO (1) | WO1993007565A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998010611A2 (en) * | 1996-09-05 | 1998-03-12 | Ericsson Inc. | System for preventing electronic memory tampering |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4154006B2 (en) * | 1996-12-25 | 2008-09-24 | 富士通株式会社 | Semiconductor memory device |
GB2356952B (en) * | 1996-12-25 | 2001-07-25 | Fujitsu Ltd | Semiconductor memory device |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4493031A (en) * | 1982-08-25 | 1985-01-08 | At&T Bell Laboratories | Memory write protection using timers |
EP0223130A2 (en) * | 1985-10-31 | 1987-05-27 | Alcatel Satmam | Electronic postage meter circuitry |
EP0272977A1 (en) * | 1986-12-19 | 1988-06-29 | Sgs-Thomson Microelectronics S.A. | Protection device for an erasable and reprogrammable ROM |
US4843385A (en) * | 1986-07-02 | 1989-06-27 | Motorola, Inc. | Electronic lock system for a two-way radio |
WO1991010192A1 (en) * | 1990-01-05 | 1991-07-11 | Raha-Automaattiyhdistys | Method and apparatus for controlling writing to memory |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4245344A (en) * | 1979-04-02 | 1981-01-13 | Rockwell International Corporation | Processing system with dual buses |
JPS6124091A (en) * | 1984-07-12 | 1986-02-01 | Nec Corp | Memory circuit |
US4816654A (en) * | 1986-05-16 | 1989-03-28 | American Telephone And Telegraph Company | Improved security system for a portable data carrier |
US5001670A (en) * | 1987-02-06 | 1991-03-19 | Tektronix, Inc. | Nonvolatile memory protection |
JPS63271679A (en) * | 1987-04-30 | 1988-11-09 | Toshiba Corp | Data writing system |
US4860341A (en) * | 1987-06-02 | 1989-08-22 | Motorola, Inc. | Radiotelephone credit card call approval synchronization |
US4970692A (en) * | 1987-09-01 | 1990-11-13 | Waferscale Integration, Inc. | Circuit for controlling a flash EEPROM having three distinct modes of operation by allowing multiple functionality of a single pin |
JPH0648838B2 (en) * | 1988-07-18 | 1994-06-22 | 株式会社田村電機製作所 | Public telephone |
-
1992
- 1992-08-03 CA CA002097308A patent/CA2097308A1/en not_active Abandoned
- 1992-08-03 WO PCT/US1992/006455 patent/WO1993007565A1/en active Application Filing
- 1992-09-28 IT ITRM920707A patent/IT1258856B/en active IP Right Grant
- 1992-10-01 FR FR9211978A patent/FR2681965A1/en active Pending
- 1992-10-01 MX MX9205634A patent/MX9205634A/en unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4493031A (en) * | 1982-08-25 | 1985-01-08 | At&T Bell Laboratories | Memory write protection using timers |
EP0223130A2 (en) * | 1985-10-31 | 1987-05-27 | Alcatel Satmam | Electronic postage meter circuitry |
US4843385A (en) * | 1986-07-02 | 1989-06-27 | Motorola, Inc. | Electronic lock system for a two-way radio |
EP0272977A1 (en) * | 1986-12-19 | 1988-06-29 | Sgs-Thomson Microelectronics S.A. | Protection device for an erasable and reprogrammable ROM |
WO1991010192A1 (en) * | 1990-01-05 | 1991-07-11 | Raha-Automaattiyhdistys | Method and apparatus for controlling writing to memory |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998010611A2 (en) * | 1996-09-05 | 1998-03-12 | Ericsson Inc. | System for preventing electronic memory tampering |
WO1998010611A3 (en) * | 1996-09-05 | 1998-07-09 | Ericsson Ge Mobile Inc | System for preventing electronic memory tampering |
US6026293A (en) * | 1996-09-05 | 2000-02-15 | Ericsson Inc. | System for preventing electronic memory tampering |
Also Published As
Publication number | Publication date |
---|---|
ITRM920707A1 (en) | 1994-03-28 |
WO1993007565A1 (en) | 1993-04-15 |
CA2097308A1 (en) | 1993-04-02 |
ITRM920707A0 (en) | 1992-09-28 |
IT1258856B (en) | 1996-03-01 |
MX9205634A (en) | 1993-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0430734B1 (en) | System and method to securely operate a computerprogram | |
JP3008441B2 (en) | Security module | |
EP2463833B1 (en) | Method and device for operational control of internal functions and protected applications embedded in chip cards for mobile terminals | |
US6515575B1 (en) | Method of authenticating user and system for authenticating user | |
FR2704341A1 (en) | Device for protecting the keys of a smart card. | |
FR2471000A1 (en) | METHOD AND DEVICE FOR CONTROLLING THE NUMBER OF TENTATIVES FOR ACCESSING AN ELECTRONIC MEMORY, IN PARTICULAR AN INTEGRATED CIRCUIT OF AN OBJECT SUCH AS A CREDIT CARD OR A PURCHASE CARD | |
EP0267114B1 (en) | Integrated circuit for memorizing and confidentially processing information, comprising an anti-fraud device | |
FR2627609A1 (en) | PORTABLE ELECTRONIC DEVICE | |
EP1080453A1 (en) | Method for authenticating an integrated circuit card user's personal code | |
EP0292342A1 (en) | System for the reciprocal analogous authentication between a terminal and a transmission line | |
EP1108249B1 (en) | Method for making secure a sensitive information processing in a monolithic security module, and associated security module | |
EP0426544B1 (en) | Method of protection against inhibition of non-authorised writing over specific memory zone of a microprocessor card and device for application | |
EP0977449A1 (en) | Method and aparatus for theft prevention in a cellular communications network | |
FR2528196A1 (en) | APPARATUS FOR PROTECTING COMPUTER PROGRAMS | |
FR2681965A1 (en) | MEMORY WRITE PROTECTION METHOD AND APPARATUS. | |
EP2447880A1 (en) | Method and system for controlling the performance of a function protected by user authentication, in particular for accessing a resource | |
FR2473755A1 (en) | Secure electronic data processing for card terminal transactions - using non-erasable memory data for identification and controlled access erasable memory for transaction recording | |
FR3096481A1 (en) | Method and device for authenticating a user. | |
FR2904505A1 (en) | Detachable secure portable electronic entity i.e. universal serial bus key, for exchanging e.g. multimedia data, has digital content delayed retransmission secure unit preventing reproduction of received content before its transmission | |
US6035368A (en) | Protection method against eeprom-directed intrusion into a mobile communication device that has a processor, and a device having such protection mechanism | |
US6739504B2 (en) | Method and system for ensuring connection of a module to an electronic apparatus | |
EP0932860B1 (en) | A method and a system to ensure that modules to be connected to an electronic apparatus are of a specific type, and a module as well as a storage medium therefor | |
EP1547005B9 (en) | Microcircuit card whereof the performances can be modified after customization | |
EP1064776B1 (en) | Method for securely managing a units counter and security module implementing said method | |
CA2150285A1 (en) | Processor performance optimizing device |