WO1997033286A1 - Method and apparatus useful in electronic encoders having a voltage level detection circuit - Google Patents

Method and apparatus useful in electronic encoders having a voltage level detection circuit Download PDF

Info

Publication number
WO1997033286A1
WO1997033286A1 PCT/US1997/002990 US9702990W WO9733286A1 WO 1997033286 A1 WO1997033286 A1 WO 1997033286A1 US 9702990 W US9702990 W US 9702990W WO 9733286 A1 WO9733286 A1 WO 9733286A1
Authority
WO
WIPO (PCT)
Prior art keywords
volatile memory
voltage
data
writing
encoding device
Prior art date
Application number
PCT/US1997/002990
Other languages
French (fr)
Inventor
Kent Hewitt
Willem Smit
Original Assignee
Microchip Technology Incorporated
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 Microchip Technology Incorporated filed Critical Microchip Technology Incorporated
Priority to DE69727273T priority Critical patent/DE69727273D1/en
Priority to JP53182397A priority patent/JP2002515158A/en
Priority to EP97907873A priority patent/EP0830687B1/en
Publication of WO1997033286A1 publication Critical patent/WO1997033286A1/en

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/22Safety or protection circuits preventing unauthorised or accidental access to memory cells

Definitions

  • This invention relates generally to the field of electronic encoding and decoding, and more particularly to encoders and decoders useful for transmitting and receiving secure signals for remotely controlling systems.
  • Controlling systems and devices by remote control is becoming increasingly popular in many applications. Examples of such applications are numerous, some of the most common include security systems for buildings, security systems for vehicles, garage door and gate openers. These systems typically employ a transmitter to send an encoded signal to a receiver which decodes the signal and causes the desired operation to be performed. Of course, as these systems become more widely used, unscrupulous efforts to defeat them also increase.
  • a single fixed code is transmitted to a receiver which has been configured to operate in response to only that particular code.
  • a fixed code system is easily defeated by several methods.
  • One method is to use a device called a code scanner which transmits all possible combinations of fixed codes. For example, in systems using eight DIP switches to select the code, there are only two hundred and fifty-six (256) possible fixed code combinations.
  • a code scanner can typically transmit this number of combinations in less that thirty-two seconds. Even in systems using sixteen bit keys, yielding 65,536 combinations, only a little more than two hours would be required to try all possible combinations. Moreover, the scanner may gain access in far less than this maximum time, in fact, the average time would be half of the maximum time.
  • a remote control transmitter of the type normally used in vehicle security and remote control systems includes a small radio transmitter that transmits a code number on a specific frequency. This code number is normally generated by an integrated circuit encoder.
  • the transmission frequency is usually fixed by legislation within a particular country, therefore it is possible to build a receiver that can receive signals from all such transmitters.
  • Such a receiver is used together with a circuit which records the transmissions captured by the intended receiver.
  • Such a device is known as a code or key grabber and can be used to gain access to protected premises or to vehicles with remote control security systems.
  • Code-hopping encoders typically use an algorithm which generates a different code each time the transmitter is operated.
  • a decoder is provided with a corresponding algorithm for decoding the received transmission.
  • the algorithms employed in code-hopping encoders typically use one or more encryption keys provided by the manufacturer as a parameter in generating the final output code.
  • An example of this system is shown in Figure 1.
  • An encryption key 10, stored in memory, is provided to the encryption algorithm 14 along with the data to be encrypted 12.
  • the data to be transmitted includes such information as the synchronization counter and the serial number of the device. This information is used by a remote receiver to determine whether it is receiving a transmission from a valid transmitter and to decode the transmission.
  • the encryption algorithm 14 operates with the encryption key 10 to encrypt the data 12 before supplying it to the transmitter 16.
  • the transmitter 16 then transmits the encrypted data to the receiver via radio frequency, infrared, or other suitable transmission means.
  • the encryption key is typically stored in non- volatile memory, such as EEPROM, so that the encryption key is not lost when power is removed from the device.
  • non- volatile memory such as EEPROM
  • the encryption key is either not transmitted, or transmitted in an encrypted form. Therefore, there is no danger of unauthorized access to the encryption key.
  • other modes of operation of the encoding device are provided in which the encryption key may be read from EEPROM memory without being encoded.
  • the encoder must permit other modes of operation in which the EEPROM, or non-volatile memory, may be directly accessed without using the encryption algorithm. This creates the danger that an unauthorized operator may place the encoding device into the program mode and read the EEPROM memory, thus obtaining the encryption key.
  • EEPROM memory In theory, this prevents unauthorized access to the non-volatile memory because the memory contents must first be overwritten before a read is allowed.
  • a write to non-volatile memory would fail, for example, by providing a low power supply voltage while maintaining the device at a high temperature.
  • a write to memory could then be performed which would not overwrite the contents of the memory, but would cause the device to indicate a write had occurred. The device would then permit a read to non-volatile memory, revealing the encryption keys to an unauthorized operator.
  • a method for reading data from non- volatile memory in an electronic encoding device such that unauthorized access to the data is prevented.
  • the method comprises the steps of writing a first set of data to the non-volatile memory; generating a voltage detect signal during the writing, the voltage detect signal being representative of a source voltage applied to the non-volatile memory; determining whether the writing was successful by evaluating the voltage detect signal; and reading data from the non-volatile memory responsive to the determination.
  • a system for reading data from non- volatile memory in an electronic encoding device such that unauthorized access to the data is prevented.
  • the system comprises means for writing a first set of data to the non-volatile memory; means for generating a voltage detect signal during the writing, the voltage detect signal being representative of a source voltage applied to the non-volatile memory; means for determining whether the writing was successful by evaluating the voltage detect signal; and means for reading data from the non-volatile memory responsive to the determination.
  • an electronic encoding device comprises non- volatile memory; a controller accessible to the non-volatile memory; encoder logic accessible to the non- volatile memory; input logic in electrical communication with the controller; output logic in electrical communication with the non- volatile memory; and a voltage level detection circuit which provides a signal responsive to a non-volatile memory write voltage to enable a read from non- volatile memory.
  • Figure 1 is a block diagram of a code-hopping encoder.
  • Figure 2 is a block diagram of an electronic encoding device according to an embodiment of the present invention.
  • Figure 3 is a flow chart showing the operation of a read from non-volatile memory in the encoder device according to an embodiment of the invention.
  • Figure 4 is a schematic diagram of a circuit according to the present invention, which provides a voltage level detection signal used to allow a memory read.
  • Figure 5 is a circuit according to a further embodiment of the invention which provides a signal for allowing a read from non-volatile memory.
  • Figure 6 is a block diagram of an electronic encoding device according to still a further embodiment of the invention.
  • the electronic encoding device 100 comprises a controller 102 which is electronically connected to several peripheral circuits, such as oscillator 106, reset circuit 108, LED driver 110 and power latching and switching circuit 104 which provide supporting functions for the controller 102.
  • peripheral circuits such as oscillator 106, reset circuit 108, LED driver 110 and power latching and switching circuit 104 which provide supporting functions for the controller 102.
  • additional circuits such as communication ports, are provided with the controller, and in still further embodiments these circuits may be integrated into the controller 102 directly.
  • the exact controller used is not critical, and suitable controllers will occur to those of skill in the art.
  • the controller 102 receives user input through input logic.
  • the input logic comprises button input port 118 which receives input from four external switches S0-S3.
  • the controller 102 accesses non ⁇ volatile memory, in this case, EEPROM memory 112.
  • the controller 102 can cause data to be written to EEPROM memory 112, or to be read from EEPROM memory 112 through output logic incorporated in the device 100.
  • the output logic comprises a 32-bit shift register 116 whose contents are transmitted to a pulse width modulating circuit (not shown). Information sent to the pulse width modulating circuit is then transmitted by the encoding device to a remote receiver.
  • the output logic shown is only one suitable embodiment, and others will occur to those skilled in the art.
  • data from EEPROM 112 is provided to a serial communication port which may be read by external equipment to determine the contents of the EEPROM memory 112.
  • encoder logic 1 Also connected to EEPROM memory 112 is encoder logic 1 14.
  • the encoder logic 114 also accesses EEPROM 112 in order to encode the data to be transmitted and provide the encoded data to the 32-bit shift register 116 for transmission via the pulse width modulator circuit.
  • the data sent from the pulse width modulator is encoded by encoder 114 prior to transmission. Therefore, even if the encryption key is contained in the data, it still cannot be determined through unauthorized interception of a transmitted code.
  • the contents of EEPROM 112 can be read at least once immediately following a write to the EEPROM memory 112 in order to verify the contents of EEPROM 112. To prevent unauthorized access of
  • a voltage level detection circuit 113 is provided.
  • the voltage level detection circuit 1 13 generates a signal, responsive to the non-volatile memory write voltage, to enable or disable a read from non- volatile memory 112. This prevents a faulty write to EEPROM memory 112 from setting the encoding device 100 in condition to allow a memory read because a memory read will only be allowed if the EEPROM memory write voltage was sufficiently high to ensure the data in EEPROM memory 112 would have been changed. Thus, it is only possible to read back from the EEPROM memory 112 exactly what was immediately written to it. This is described in further detail with respect to Figure 3.
  • Figure 3 is a flow chart 300 showing the operation of a read from EEPROM memory 112 in the encoder device 100.
  • the encoder device 100 is first placed in program mode in step 302.
  • step 304 the entire contents of
  • step 306 the signal from the voltage level detection circuit is tested to ensure that the write voltage to EEPROM memory 112 was sufficiently high to ensure that the contents were changed. If this voltage was not sufficiently high, then the process is halted in step 316, and no read from EEPROM memory 112 is allowed. However, if the voltage was high enough, the process proceeds to step 308 in which the data for programming the EEPROM memory 1 12 is retrieved. In this embodiment, the contents of EEPROM memory 112 have been erased, i.e., set to logical zero in step 304. Therefore, in step 310 the desired data, such as the serial number, encryption key, etc., is programmed into EEPROM memory 112 in step 310.
  • the desired data such as the serial number, encryption key, etc.
  • Figure 4 is a schematic diagram of a circuit useful in the present invention for providing the voltage level detection signal.
  • a pair of P-channel transistors 202, 204 are connected in a series.
  • the source of transistor 202 is connected to supply voltage Vdd, or the memory write voltage.
  • the gate of transistor 202 is connected to the source of transistor 204, while the gate of transistor 204 is connected to ground.
  • Vdd supply voltage
  • different threshold voltages are provided for these P-channel transistors 202, 204.
  • these threshold voltages may be set at different levels. For example, if it is desired to set a trip point, i.e., a voltage level at which a read from EEPROM memory 1 12 will be allowed, at 3.5 volts, then the threshold voltages of each of transistors 202, 204 are set at -1.5 volts.
  • the drain of transistor 204 is connected to the source of N-channel transistor 206.
  • the drain of N-channel transistor 206 is connected to the ground, while its gate is connected to node 208.
  • the threshold voltage of transistor 206 is 0.1 volts. The desired trip voltage will now appear at node 208 when the memory write voltage is sufficiently high. It is desirable to set the trip point high enough to guarantee a successful write at all temperatures. Therefore, a signal path from line
  • buffers 210 and 212 are provided through buffers 210 and 212 to voltage trip signal at node 214.
  • the voltage trip signal provided at node 214 will be a logical one if the voltage level at node 208 was sufficiently high during the previous write to EEPROM memory 112, or a logical zero otherwise.
  • circuit shown in Figure 4 is only one possible embodiment.
  • Other suitable circuits for detecting the voltage applied to the EEPROM memory during a write will occur to those skilled in the art.
  • Figure 5 there is shown a circuit according to another embodiment of the invention.
  • the circuit shown in Figure 5 directly senses the write voltage applied to the non-volatile memory cell.
  • a charge pump 502 is used in order to write to non-volatile memory, in this case, EEPROM memory 510.
  • Charge pump 502 is driven by oscillators OSC1 and OSC2 to charge capacitor 504 to a voltage level sufficiently high enough to write to EEPROM memory 510.
  • a typical write voltage level would be approximately 20 volts, depending on the circuitry and technology used in EEPROM 510.
  • a voltage clamping circuit 506 is connected to the write, or programming, voltage supply, at node 518.
  • the voltage clamping circuit 506 comprises four series-connected Zener diodes 508a-508d.
  • each of Zener diodes 508a-508d has a 5 volt breakdown voltage. Therefore, the voltage at node 520 will be 5 volts when a suitable memory write voltage is developed at node 518.
  • a small current source 512 such as a current mirror or a resistor, drains off charge from node 520 to prevent charge buildup which would cause node 520 to retain a 5 volt charge when node 518 falls below 20 volts.
  • filter 516 comprises a Schmidt trigger circuit.
  • the exact implementation of the filter is not critical, and other suitable examples will occur to those who are skilled in the art.
  • the output of filter 516 is referred to as the "HVOK" signal, and it is sampled to ensure that the write to EEPROM memory 510 was successful. If the voltage at node 518 was insufficient to program the EEPROM memory 510, then this will be reflected in the HVOK signal, thus halting charge pump operation and terminating EEPROM write and programming sequence. Consequently, a subsequent read of
  • EEPROM memory 510 will not be permitted by the encoding device.
  • FIG. 6 is a block diagram of an encoding device according to another embodiment of the invention showing the incorporation of the circuit in Figure 5 into the encoding device.
  • the HVOK circuit 115 samples the voltage level applied to the write lines of EEPROM 112 as discussed previously.
  • the HVOK signal itself is then provided to controller 102 which determines whether a successful write to EEPROM memory 112 has occurred and a subsequent read will be allowed.
  • the steps required to read the non-volatile memory are substantially the same as those shown in the flow chart of Figure 3; however, in step 306, the actual memory write voltage would be sampled (via the HVOK signal) rather than the Vdd trip signal.
  • the non-volatile memory must first be erased, or overwritten, before the data contained therein may be read. Moreover, unauthorized access to non-volatile memory by deliberately performing a faulty write to EEPROM memory 112 is prevented.
  • the above-described embodiments are merely illustrative of the present invention, and other suitable embodiments will occur to those with skill in the art without departing from the scope and spirit of the present invention.

Abstract

An electronic encoding device comprising a non-volatile memory (112), a controller (102) coupled to the non-volatile memory (112), encoder logic (114) coupled to the non-volatile memory (112), input logic (118) coupled to the controller (102), output logic (116) coupled to the non-volatile memory (112), and a voltage level detection circuit (113) coupled to the non-volatile memory (112), which provides a signal responsive to a non-volatile memory write voltage to enable a read from the non-volatile memory (112). The electronic encoding device is capable of preventing unauthorized access to data stored in the non-volatile memory (112).

Description

METHOD AND APPARATUS USEFUL IN ELECTRONIC ENCODERS HAVING A VOLTAGE LEVEL DETECTION CIRCUIT
BACKGROUND OF THE INVENTION This invention relates generally to the field of electronic encoding and decoding, and more particularly to encoders and decoders useful for transmitting and receiving secure signals for remotely controlling systems.
Controlling systems and devices by remote control is becoming increasingly popular in many applications. Examples of such applications are numerous, some of the most common include security systems for buildings, security systems for vehicles, garage door and gate openers. These systems typically employ a transmitter to send an encoded signal to a receiver which decodes the signal and causes the desired operation to be performed. Of course, as these systems become more widely used, unscrupulous efforts to defeat them also increase.
For example, in relatively unsophisticated systems, a single fixed code is transmitted to a receiver which has been configured to operate in response to only that particular code.However, a fixed code system is easily defeated by several methods. One method is to use a device called a code scanner which transmits all possible combinations of fixed codes. For example, in systems using eight DIP switches to select the code, there are only two hundred and fifty-six (256) possible fixed code combinations. A code scanner can typically transmit this number of combinations in less that thirty-two seconds. Even in systems using sixteen bit keys, yielding 65,536 combinations, only a little more than two hours would be required to try all possible combinations. Moreover, the scanner may gain access in far less than this maximum time, in fact, the average time would be half of the maximum time.
Another way of gaining unauthorized access is to simply intercept and retransmit the signal. For example, a remote control transmitter of the type normally used in vehicle security and remote control systems includes a small radio transmitter that transmits a code number on a specific frequency. This code number is normally generated by an integrated circuit encoder. The transmission frequency is usually fixed by legislation within a particular country, therefore it is possible to build a receiver that can receive signals from all such transmitters. Such a receiver is used together with a circuit which records the transmissions captured by the intended receiver. Such a device is known as a code or key grabber and can be used to gain access to protected premises or to vehicles with remote control security systems.
To control the threat of unauthorized access, remote control systems have become increasingly sophisticated.
One method of overcoming the limitations of fixed code systems is to employ code hopping encoders. Code-hopping encoders typically use an algorithm which generates a different code each time the transmitter is operated. At the receiving end, a decoder is provided with a corresponding algorithm for decoding the received transmission.
The algorithms employed in code-hopping encoders typically use one or more encryption keys provided by the manufacturer as a parameter in generating the final output code. An example of this system is shown in Figure 1. An encryption key 10, stored in memory, is provided to the encryption algorithm 14 along with the data to be encrypted 12. The data to be transmitted includes such information as the synchronization counter and the serial number of the device. This information is used by a remote receiver to determine whether it is receiving a transmission from a valid transmitter and to decode the transmission. The encryption algorithm 14 operates with the encryption key 10 to encrypt the data 12 before supplying it to the transmitter 16. The transmitter 16 then transmits the encrypted data to the receiver via radio frequency, infrared, or other suitable transmission means.
The encryption key is typically stored in non- volatile memory, such as EEPROM, so that the encryption key is not lost when power is removed from the device. When the encoding device is in its normal operating mode, the encryption key is either not transmitted, or transmitted in an encrypted form. Therefore, there is no danger of unauthorized access to the encryption key. However, other modes of operation of the encoding device are provided in which the encryption key may be read from EEPROM memory without being encoded. For example, when the device is being manufactured, the manufacturer must be able to read the EEPROM memory immediately after programming in order to ensure that proper programming of the memory has taken place. Therefore, the encoder must permit other modes of operation in which the EEPROM, or non-volatile memory, may be directly accessed without using the encryption algorithm. This creates the danger that an unauthorized operator may place the encoding device into the program mode and read the EEPROM memory, thus obtaining the encryption key.
To address this danger, it is possible to design an encoding device to allow only one read from non- volatile memory immediately following an erasure, or write, to the
EEPROM memory. In theory, this prevents unauthorized access to the non-volatile memory because the memory contents must first be overwritten before a read is allowed. However, in practice it is possible to place the encoding device into a condition where a write to non-volatile memory would fail, for example, by providing a low power supply voltage while maintaining the device at a high temperature. A write to memory could then be performed which would not overwrite the contents of the memory, but would cause the device to indicate a write had occurred. The device would then permit a read to non-volatile memory, revealing the encryption keys to an unauthorized operator.
It is therefore an object of the present invention to provide a method and apparatus of overcoming the above-discussed problems, as well as provide further advantages over present devices which will become apparent in view of the following disclosure.
SUMMARY OF THE INVENTION
According to the present invention, a method is provided for reading data from non- volatile memory in an electronic encoding device such that unauthorized access to the data is prevented. In one embodiment, the method comprises the steps of writing a first set of data to the non-volatile memory; generating a voltage detect signal during the writing, the voltage detect signal being representative of a source voltage applied to the non-volatile memory; determining whether the writing was successful by evaluating the voltage detect signal; and reading data from the non-volatile memory responsive to the determination.
According to another embodiment of the invention, a system is provided for reading data from non- volatile memory in an electronic encoding device such that unauthorized access to the data is prevented. In a further embodiment, the system comprises means for writing a first set of data to the non-volatile memory; means for generating a voltage detect signal during the writing, the voltage detect signal being representative of a source voltage applied to the non-volatile memory; means for determining whether the writing was successful by evaluating the voltage detect signal; and means for reading data from the non-volatile memory responsive to the determination.
In yet a further embodiment of the invention, an electronic encoding device is provided. In one embodiment, the electronic encoding device comprises non- volatile memory; a controller accessible to the non-volatile memory; encoder logic accessible to the non- volatile memory; input logic in electrical communication with the controller; output logic in electrical communication with the non- volatile memory; and a voltage level detection circuit which provides a signal responsive to a non-volatile memory write voltage to enable a read from non- volatile memory.
BRIEF DESCRIPTION OF THE DRAWINGS
The invention is further described by way of example with reference to the accompanying drawings in which:
Figure 1 is a block diagram of a code-hopping encoder.
Figure 2 is a block diagram of an electronic encoding device according to an embodiment of the present invention. Figure 3 is a flow chart showing the operation of a read from non-volatile memory in the encoder device according to an embodiment of the invention. Figure 4 is a schematic diagram of a circuit according to the present invention, which provides a voltage level detection signal used to allow a memory read. Figure 5 is a circuit according to a further embodiment of the invention which provides a signal for allowing a read from non-volatile memory. Figure 6 is a block diagram of an electronic encoding device according to still a further embodiment of the invention.
BRIEF DESCRIPTION OF EMBODIMENTS OF THE INVENTION
Referring now to Figure 2, there is shown a block diagram of an electronic encoding device according to an embodiment of the present invention. In this example, the electronic encoding device 100 comprises a controller 102 which is electronically connected to several peripheral circuits, such as oscillator 106, reset circuit 108, LED driver 110 and power latching and switching circuit 104 which provide supporting functions for the controller 102. In other embodiments, additional circuits, such as communication ports, are provided with the controller, and in still further embodiments these circuits may be integrated into the controller 102 directly. The exact controller used is not critical, and suitable controllers will occur to those of skill in the art.
The controller 102 receives user input through input logic. In the example shown, the input logic comprises button input port 118 which receives input from four external switches S0-S3. However, it is understood that other suitable types of input systems may be used, such as serial ports, keyboards, etc. The controller 102 accesses non¬ volatile memory, in this case, EEPROM memory 112. Depending on the user input, the controller 102 can cause data to be written to EEPROM memory 112, or to be read from EEPROM memory 112 through output logic incorporated in the device 100.
In this case, the output logic comprises a 32-bit shift register 116 whose contents are transmitted to a pulse width modulating circuit (not shown). Information sent to the pulse width modulating circuit is then transmitted by the encoding device to a remote receiver. Like the input logic, the output logic shown is only one suitable embodiment, and others will occur to those skilled in the art. For example, in another version of the invention, data from EEPROM 112 is provided to a serial communication port which may be read by external equipment to determine the contents of the EEPROM memory 112.
Also connected to EEPROM memory 112 is encoder logic 1 14. The encoder logic 114 also accesses EEPROM 112 in order to encode the data to be transmitted and provide the encoded data to the 32-bit shift register 116 for transmission via the pulse width modulator circuit.
As discussed previously, in the standard operating mode, the data sent from the pulse width modulator is encoded by encoder 114 prior to transmission. Therefore, even if the encryption key is contained in the data, it still cannot be determined through unauthorized interception of a transmitted code.
However, when the device 100 is in program mode, the contents of EEPROM 112 can be read at least once immediately following a write to the EEPROM memory 112 in order to verify the contents of EEPROM 112. To prevent unauthorized access of
EEPROM memory 1 12 by purposefully creating a faulty write then immediately reading the contents of EEPROM memory, a voltage level detection circuit 113 is provided. In one embodiment, the voltage level detection circuit 1 13 generates a signal, responsive to the non-volatile memory write voltage, to enable or disable a read from non- volatile memory 112. This prevents a faulty write to EEPROM memory 112 from setting the encoding device 100 in condition to allow a memory read because a memory read will only be allowed if the EEPROM memory write voltage was sufficiently high to ensure the data in EEPROM memory 112 would have been changed. Thus, it is only possible to read back from the EEPROM memory 112 exactly what was immediately written to it. This is described in further detail with respect to Figure 3.
Figure 3 is a flow chart 300 showing the operation of a read from EEPROM memory 112 in the encoder device 100. In this embodiment, the encoder device 100 is first placed in program mode in step 302. Next, in step 304, the entire contents of
EEPROM memory 112 are erased, or at least overwritten with new data. Flow then proceeds to step 306 in which the signal from the voltage level detection circuit is tested to ensure that the write voltage to EEPROM memory 112 was sufficiently high to ensure that the contents were changed. If this voltage was not sufficiently high, then the process is halted in step 316, and no read from EEPROM memory 112 is allowed. However, if the voltage was high enough, the process proceeds to step 308 in which the data for programming the EEPROM memory 1 12 is retrieved. In this embodiment, the contents of EEPROM memory 112 have been erased, i.e., set to logical zero in step 304. Therefore, in step 310 the desired data, such as the serial number, encryption key, etc., is programmed into EEPROM memory 112 in step 310.
This data is read back at step 312 to verify the contents of EEPROM memory 112, then the process is ended in step 314.
Figure 4 is a schematic diagram of a circuit useful in the present invention for providing the voltage level detection signal. In this embodiment, a pair of P-channel transistors 202, 204, are connected in a series. The source of transistor 202 is connected to supply voltage Vdd, or the memory write voltage. The gate of transistor 202 is connected to the source of transistor 204, while the gate of transistor 204 is connected to ground. Depending on the voltage requirements of the encoder system 100, different threshold voltages are provided for these P-channel transistors 202, 204.
Depending on the voltage requirements, these threshold voltages may be set at different levels. For example, if it is desired to set a trip point, i.e., a voltage level at which a read from EEPROM memory 1 12 will be allowed, at 3.5 volts, then the threshold voltages of each of transistors 202, 204 are set at -1.5 volts.
The drain of transistor 204 is connected to the source of N-channel transistor 206. The drain of N-channel transistor 206 is connected to the ground, while its gate is connected to node 208. In this example, the threshold voltage of transistor 206 is 0.1 volts. The desired trip voltage will now appear at node 208 when the memory write voltage is sufficiently high. It is desirable to set the trip point high enough to guarantee a successful write at all temperatures. Therefore, a signal path from line
208 is provided through buffers 210 and 212 to voltage trip signal at node 214.
The voltage trip signal provided at node 214 will be a logical one if the voltage level at node 208 was sufficiently high during the previous write to EEPROM memory 112, or a logical zero otherwise.
Of course, the circuit shown in Figure 4 is only one possible embodiment. Other suitable circuits for detecting the voltage applied to the EEPROM memory during a write will occur to those skilled in the art. For example, referring now to Figure 5, there is shown a circuit according to another embodiment of the invention.
Rather than sensing the Vdd, or source voltage, which is applied to the non-volatile memory, the circuit shown in Figure 5 directly senses the write voltage applied to the non-volatile memory cell. Specifically, in order to write to non-volatile memory, in this case, EEPROM memory 510, a charge pump 502 is used. Charge pump 502 is driven by oscillators OSC1 and OSC2 to charge capacitor 504 to a voltage level sufficiently high enough to write to EEPROM memory 510. A typical write voltage level would be approximately 20 volts, depending on the circuitry and technology used in EEPROM 510. In order to ensure that the write voltage applied to EEPROM 510 was high enough to guarantee a successful write, a voltage clamping circuit 506 is connected to the write, or programming, voltage supply, at node 518. In this embodiment, the voltage clamping circuit 506 comprises four series-connected Zener diodes 508a-508d. For purposes of illustration, it is assumed that 20 volts is required to ensure a successful write to EEPROM 510. In this case, each of Zener diodes 508a-508d has a 5 volt breakdown voltage. Therefore, the voltage at node 520 will be 5 volts when a suitable memory write voltage is developed at node 518. A small current source 512, such as a current mirror or a resistor, drains off charge from node 520 to prevent charge buildup which would cause node 520 to retain a 5 volt charge when node 518 falls below 20 volts.
Of course, due to the operation of charge pump 502, the voltage at node 520 will not be a flat DC level, but will have a spike wave form which must be smoothed by filter 516. In one embodiment, filter 516 comprises a Schmidt trigger circuit. However, the exact implementation of the filter is not critical, and other suitable examples will occur to those who are skilled in the art.
Here, the output of filter 516 is referred to as the "HVOK" signal, and it is sampled to ensure that the write to EEPROM memory 510 was successful. If the voltage at node 518 was insufficient to program the EEPROM memory 510, then this will be reflected in the HVOK signal, thus halting charge pump operation and terminating EEPROM write and programming sequence. Consequently, a subsequent read of
EEPROM memory 510 will not be permitted by the encoding device.
Figure 6 is a block diagram of an encoding device according to another embodiment of the invention showing the incorporation of the circuit in Figure 5 into the encoding device. In this case, the HVOK circuit 115 samples the voltage level applied to the write lines of EEPROM 112 as discussed previously. The HVOK signal itself is then provided to controller 102 which determines whether a successful write to EEPROM memory 112 has occurred and a subsequent read will be allowed. In one embodiment, the steps required to read the non-volatile memory are substantially the same as those shown in the flow chart of Figure 3; however, in step 306, the actual memory write voltage would be sampled (via the HVOK signal) rather than the Vdd trip signal.
With an encoding device as described in the above embodiments, the non-volatile memory must first be erased, or overwritten, before the data contained therein may be read. Moreover, unauthorized access to non-volatile memory by deliberately performing a faulty write to EEPROM memory 112 is prevented. Of course, the above-described embodiments are merely illustrative of the present invention, and other suitable embodiments will occur to those with skill in the art without departing from the scope and spirit of the present invention.

Claims

1. A method for reading data from non- volatile memory in an electronic encoding device such that unauthorized access to the data is prevented, the method comprising:
writing a first set of data to the non- volatile memory;
generating a voltage detect signal during the writing, the voltage detect signal being representative of a source voltage applied to the non¬ volatile memory;
determining whether the writing was successful by evaluating the voltage detect signal;
reading data from the non-volatile memory responsive to the determination.
2. A system for reading data from non-volatile memory in an electronic encoding device such that unauthorized access to the data is prevented, the system comprising:
means for writing a first set of data to the non-volatile memory;
means for generating a voltage detect signal during the writing, the voltage detect signal being representative of a source voltage applied to the non-volatile memory;
means for determining whether the writing was successful by evaluating the voltage detect signal; means for reading data from the non-volatile memory responsive to the determination.
3. An electronic encoding device comprising:
non-volatile memory;
a controller accessible to the non-volatile memory;
encoder logic accessible to the non-volatile memory;
input logic in electrical communication with the controller;
output logic in electrical communication with the non-volatile memory;
a voltage level detection circuit which provides a signal responsive to a non-volatile memory write voltage to enable a read from non-volatile memory.
4. An electronic encoding device as in claim 1 wherein the voltage level detection circuit comprises:
a pair of series connected P-channel transistors, each transistor having a first threshold voltage;
an N-channel transistor having a second threshold voltage; the N- channel transistor being in series with the pair of P-channel transistors;
a voltage detect signal path connected between a source of the N- channel transistor and the controller.
5. A method for reading data from non- volatile memory in an electronic encoding device such that unauthorized access to the data is prevented, the method comprising:
writing a first set of data to the non-volatile memory;
generating a voltage detect signal during the writing, the voltage detect signal being representative of a write voltage applied to the non- volatile memory:
determining whether the writing was successful by evaluating the voltage detect signal;
reading data from the non-volatile memory responsive to the determination.
6. An electronic encoding device comprising:
non-volatile memory;
a controller accessible to the non-volatile memory;
encoder logic accessible to the non-volatile memory;
input logic in electrical communication with the controller;
output logic in electrical communication with the non-volatile memory;
a voltage level detection circuit which provides a signal responsive to a source voltage applied to the non-volatile memory, the signal being enabling of a read from non-volatile memory.
PCT/US1997/002990 1996-03-05 1997-02-21 Method and apparatus useful in electronic encoders having a voltage level detection circuit WO1997033286A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE69727273T DE69727273D1 (en) 1996-03-05 1997-02-21 METHOD AND DEVICE FOR ELECTRONIC ENCODERS WITH VOLTAGE LEVEL DETECTOR CIRCUIT
JP53182397A JP2002515158A (en) 1996-03-05 1997-02-21 Method and apparatus useful for encoder having voltage level detection circuit
EP97907873A EP0830687B1 (en) 1996-03-05 1997-02-21 Method and apparatus useful in electronic encoders having a voltage level detection circuit

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/611,993 US5675534A (en) 1996-03-05 1996-03-05 Method and apparatus for preventing unauthorized access to nonvolatile memory in electronic encoders having a voltage level detection circuit
US08/611,993 1996-03-05

Publications (1)

Publication Number Publication Date
WO1997033286A1 true WO1997033286A1 (en) 1997-09-12

Family

ID=24451262

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1997/002990 WO1997033286A1 (en) 1996-03-05 1997-02-21 Method and apparatus useful in electronic encoders having a voltage level detection circuit

Country Status (7)

Country Link
US (1) US5675534A (en)
EP (1) EP0830687B1 (en)
JP (1) JP2002515158A (en)
KR (1) KR100396188B1 (en)
DE (1) DE69727273D1 (en)
TW (1) TW307071B (en)
WO (1) WO1997033286A1 (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5883443A (en) * 1997-06-27 1999-03-16 Ut Automotive Dearborn, Inc. Countermeasure method and system for securing a remote keyless entry system
US6351621B1 (en) * 2000-06-26 2002-02-26 Xerox Corporation Wireless interaction with memory associated with a replaceable module for office equipment
JP2002244926A (en) * 2001-02-15 2002-08-30 Matsushita Electric Ind Co Ltd Data invalidating device
US20030215248A1 (en) * 2002-05-17 2003-11-20 Xerox Corporation Machine post-launch process optimization through customer replaceable unit memory programming
US7197633B2 (en) 2003-07-30 2007-03-27 Xerox Corporation Wireless machine post-launch configuration and option upgrade
US7710288B2 (en) * 2006-02-09 2010-05-04 Alps Automotive, Inc. Wireless self-powered sensor
US20070182535A1 (en) * 2006-02-09 2007-08-09 Alps Automotive, Inc. Wireless sourceless sensor
US9317009B2 (en) * 2014-02-19 2016-04-19 Xerox Corporation Systems and methods for mounting an externally readable monitoring module on a rotating customer replaceable component in an operating device
JP2020026190A (en) * 2018-08-10 2020-02-20 株式会社カーメイト Remote starting device for vehicle

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5301161A (en) * 1993-01-12 1994-04-05 Intel Corporation Circuitry for power supply voltage detection and system lockout for a nonvolatile memory
US5554977A (en) * 1993-01-07 1996-09-10 Ford Motor Company Remote controlled security system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4812675A (en) * 1987-04-15 1989-03-14 Exel Microelectronics Incorporated Security element circuit for programmable logic array
US4962484A (en) * 1988-01-25 1990-10-09 Hitachi, Ltd. Non-volatile memory device
US5381369A (en) * 1993-02-05 1995-01-10 Kabushiki Kaisha Toshiba Nonvolatile semiconductor memory device using a command control system
US5594697A (en) * 1994-06-28 1997-01-14 Matsushita Electric Industrial Co., Ltd. Semiconductor device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5554977A (en) * 1993-01-07 1996-09-10 Ford Motor Company Remote controlled security system
US5301161A (en) * 1993-01-12 1994-04-05 Intel Corporation Circuitry for power supply voltage detection and system lockout for a nonvolatile memory

Also Published As

Publication number Publication date
KR100396188B1 (en) 2003-11-20
EP0830687A4 (en) 2001-03-21
KR19990008190A (en) 1999-01-25
US5675534A (en) 1997-10-07
EP0830687A1 (en) 1998-03-25
DE69727273D1 (en) 2004-02-26
TW307071B (en) 1997-06-01
JP2002515158A (en) 2002-05-21
EP0830687B1 (en) 2004-01-21

Similar Documents

Publication Publication Date Title
KR100374484B1 (en) Apparatus and method for electronic encoding and decoding
US5940002A (en) Security system with random number remote communication
US6667684B1 (en) Remote controlled garage door opening system
US6026165A (en) Secure communications in a wireless system
JP2784309B2 (en) Remote control security system
US5686904A (en) Secure self learning system
US7327216B2 (en) Secret key programming technique for transponders using encryption
US6191701B1 (en) Secure self learning system
US5787367A (en) Flash reprogramming security for vehicle computer
US6510517B1 (en) Method of cryptological authentification in a scanning identification system
US6166650A (en) Secure self learning system
US6097307A (en) Security system with randomized synchronization code
US20100208894A1 (en) Encoder and decoder apparatus and methods
US20010002813A1 (en) Communication system
US5675534A (en) Method and apparatus for preventing unauthorized access to nonvolatile memory in electronic encoders having a voltage level detection circuit
US5940000A (en) Trainable transmitter security circuit
EP2028606B1 (en) Method for determining temperature from a transponder
KR20000075917A (en) Electronic data processing device and system
US20050024228A1 (en) Method for matching transmitters and receiver
US20080244759A1 (en) Computer system with electronic lock and keyboard to control the electronic lock
US5862225A (en) Automatic resynchronization for remote keyless entry systems
US5881153A (en) Remote keyless entry encryption algorithm
KR100679056B1 (en) Rf-card reader module of homeautomation
KR200289401Y1 (en) Electronic key system using interactive authentication
WO1996021225A1 (en) On-chip randomly self-programmable non-volatile memory architecture

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): JP KP KR

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE

WWE Wipo information: entry into national phase

Ref document number: 1019970707715

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 1997907873

Country of ref document: EP

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWP Wipo information: published in national office

Ref document number: 1997907873

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1019970707715

Country of ref document: KR

WWG Wipo information: grant in national office

Ref document number: 1019970707715

Country of ref document: KR

WWG Wipo information: grant in national office

Ref document number: 1997907873

Country of ref document: EP