Method for using at will the data memory of a microcomputer as a programme memory
6 claims: 3 independent, 3 dependent
- 1Verfahren zum Betreiben eines elektrisch programmierbaren Speichers (1) als Programmspeicher eines Mikrocomputers mit einer CPU (3) mit Befehlszähler (3a), dadurch gekennzeichnet, daß das Ausführen von im elektrisch programmierbaren Speicher (1) gespeicherten Programmen für einen bestimmten Adressbereich des elektrisch programmierbaren Speichers (1) jederzeit für alle späteren Anwendungsfälle unterbindbar ist, indem eine Blockiereinrichtung (4) aktiviert wird, die eine Ausgabe der Adressen dieses Adressbereiches durch den Befehlszähler (3a) der CPU (3) unterbindet.
- 2Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß das Ausführen von im elektrisch programmierbaren Speicher (1) gespeicherten Programmen für einen frei wählbaren Adressbereich des elektrisch programmierbaren Speichers (1) für alle späteren Anwendungsfälle unterbindbar ist.
- 3Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß das Ausführen von im elektrisch programmierbaren Speicher (1) gespeicherten Programmen für bestimmte Adressbereiche des elektrisch programmierbaren Speichers (1) von einer in einem nichtflüchtigen Speicher enthaltenen Sperrdateninformation abhängt.
- 4Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß durch eine Sperrschaltung ein Verändern der Daten in dem Speicherbereich mit den zur Programmausführung zugelassenen Adressen unterbindbar ist.
- 5Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß ein Kontrollprogramm das Setzen der Blockiereinrichtung (4) in Abhängigkeit von den in einem nichtflüchtigen Speicher abgelegten Speicherdaten veranlaßt.
- 6Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß erst nach dem erfolgreichen Ablauf dieses Kontrollprogrammes die Benutzung des Mikrocomputers ermöglicht wird.
Independent claims6
18 paragraphs, as filed
The invention relates to a method for user-specific use of the electrically programmable memory included in a microcomputer, wherein at least a portion of this electrically programmable memory can be written as a program memory.
A microcomputer typically includes a CPU (central processing unit), a usually mask-programmed (ROM) program memory, electrically programmable memory as a volatile (RAM) or non-volatile (E-PROM, EEPROM) memory may be executed and a data bus, which this connecting components to each other and with other components. Under the CPU od. Central processing unit of a microcomputer refers to the arithmetic unit and control unit which contains, inter alia, a program counter (Program Counter), a register indicating the memory addresses of the bits in each case to be processed at program operations. A description of the structure and operation of microcomputers and explanations of common terms can the Siemens reference book "microprocessors and microcomputers" H.-P. Blomeyer-Bartenstein be removed.
A mask-programmed program memory provides regarding subsequent manipulation of the application program maximum safety. If, however, especially in a single-chip microcomputer of the same type, different, application-specific programs are written in the program memory of the corresponding to the respective requirements microcomputer, so shall the application with the largest program memory requirement the grant made available chip area or the amount of memory of the mask-programmable program memory firmly. In applications for which only a small fraction of the available program memory assigned to an application program, the remaining memory area is wasted. Another drawback of a mask-programmable program memory is the relatively high cost, which is required for programming and is low volume in proportion to the benefit in applications. A reasonable alternative to a pure mask-programmed program memory storing subprograms in a mask-programmed memory and storing parent programs in an electrically programmable memory, which can be used as program memory. When the microcomputer in question contains a microprogram-capable CPU, also the microprogram at least in large part, for example, are stored mask programmed.
In some applications, it would be advantageous to enter aid programs in the program memory, simplifying the testing process during manufacture. These utilities are however after completion of the test superfluous, so that the space in which they are enrolled, by other programs can be occupied, or could be used as data storage. It is possible to use as a program memory, electrically programmable memory, or to provide such a memory, at least for the auxiliary or programs for user-specific portions of the respective application program. If this is an electrically erasable memory is used by the EE-PROM type, the memory area containing the utility can be deleted even after the trial period and be used as a data storage. In addition, then is when small application programs a correspondingly larger data storage.
In the article "Intelligence on plastic, security systems with chip Carrying Cards" by H. Lambert and M. Schmötzer which has been published in the journal Electronics from 03.10.1986, a microcomputer is described on page 66, which, in addition to a CPU one used as a scratchpad memory volatile memory, a data bus, a protection circuit and an input / out circuitry also includes a mask-programmable program memory for storing the application program and an electrically programmable memory. This executable programs can be stored in the electrically programmable memory. Since every data transfer, as usual, is carried out under control of the CPU, namely the operation of external programs is largely excluded, but the circuit is not protected against written in the memory programs, because the entire electrically programmable memory is provided for storing executable programs.
An electrically variable program memory holds, however, especially when used in described in the above article "Chip Carrying Cards", the risk that an impostor stores its own program in the program memory and the operation of the microcomputer with this program performs unauthorized manipulation or analysis.
In order to prevent a subsequent modifying the final stored program in an EEPROM memory, the corresponding memory can be blocked, for example by setting a write lock. Such write locks are known and described inter alia in EP-A-0123177.
The object of the invention is to provide a method for limited operating an electrically programmable memory as a program memory of a microcomputer.
This object is achieved by a method according to the characterizing part of claim 1.
Cheap process variants are based on claims.
The invention is characterized in microcomputers with a usable program memory electrically programmable memory, the possibility of using as a program memory for a specific address area of the electrically programmable memory, in particular for the entire electrically programmable memory, for all other applications to stop. It is also according to the invention, that this inhibiting of the program storage capability can not be performed in the production process of the microcomputer, but in particular at any time after completion of the microcomputer.
Whether a portion of the electrically programmable memory 1 can be used as program memory with specific addresses or not, this can in particular depend on a data stored in a nonvolatile memory blackouts information.
For inhibiting the execution of programs from a certain address area of the electrically programmable memory can in particular a preferably anytime activatable blocking means 4 can be provided, which accesses the program counter of the CPU 3a 3rd A program counter 3a is usually connected with address outputs to the address lines of the bus system. 6
A simple embodiment of a blocking device 4, by means of which the execution of programs that are stored in predetermined address areas of the electrically programmable memory 1, can be suppressed, is given by the fact that a certain number of address outputs of the program counter 3a placed on a corresponding fixed potential is and thus the corresponding to the other logic state of these address line addresses can not be selected as part of a program. For example, if the the most significant address bit representing address output of the program counter 3 set at a fixed potential, it can be used with the lowest address values as a program memory depending on the logic state of this solid Adreßbitpotentials only half of the memory with the highest address values or the half of the memory.
Another option, the execution of programs from a given, largely targeted selectable address range of the electrically programmable memory, to prevent, in particular by engaging in the program counter 3a of the CPU 3 blocking device is given in microcomputers with microprogram capable CPU by a corresponding micro-program that only specific addresses at the output of the program counter 3a permits.
Below a possible sequence of a method according to the invention is explained with reference to FIG. The figure shows the block diagram as part of a microcomputer electrically programmable memory 1, which may be a non-volatile memory, in particular, a mask-programmed memory 2, a CPU 3 with a program counter 3, an accessing to the program counter blocking device 4, a locking flip-flop 5 and a BUS system 6th
Preferably, after switching the microcomputer a particular in the mask-programmed memory Undocked monitoring program is carried out, the function of a particular non-volatile memory stored lock data information preferably via a locking flip-flop 5 activates a blocking device or not activated. This blocking device is limited in the activated state the number of dispensable from the program counter addresses, for example, by clamps certain address outputs of the program counter to a fixed potential. Only after successful completion of the control program, a use of the microcomputer by the CPU is enabled.
It is provided to divide an electrically programmable memory into areas, wherein a storage area as a data memory can be used, the other storage area, however, is also provided as a program memory. It may be desirable to be placed in the program memory storage area, after the desired program is stored to protect against later manipulation. Therefore, it is in development of the invention advantageous to provide a write lock on the electrically progammierbaren memory 1 in a known manner, which is activated after saving the desired channel, thus preventing the subsequent introduction of programs.
1 sheet
Sheet 1
Every citation, both waysCites: the store holds 1 of 2
| Document | Relation | Office |
|---|---|---|
| US3263218A | Cites | United States of America |
| FUNKSCHAU, Nr. 26, 23. Dezember 1983, Seiten 70-71, DE; W. PETERSEN: "Schutz gegen Softwareklau" | Non-patent | – |
| ELEKTRONIK, Nr. 11, 30. Mai 1986, Seiten 84-90, München, DE; K. LANG et al.: "Firmware vor unbefugtem Zugriff geschützt" | Non-patent | – |
| CHIP. ZEITSCHRIFT FÜR MIKRO-COMPUTER-TECHNIK, Nr. 11, November 1982, Seiten 190-191, Würzburg, DE; A. STRAUB: "Speicherschutz für Mikrocomputer" | Non-patent | – |
8 members in 5 offices
Priority claims4
| Document | Office | Kind | Date |
|---|---|---|---|
| 3807122 | Germany | A | |
| 3807122 | Germany | – | |
| 3807122 | – | – | – |
| DE19883807122 | – | – | – |
Members8
| Document | Office | Kind | |
|---|---|---|---|
| DK98989D0 | Denmark | D0 | |
| DK98989A | Denmark | A | |
| EP0331202A1 | European Patent Office (EPO) | A1 | |
| EP0331202B1This record | European Patent Office (EPO) | B1 | |
| AT82645T | Austria | T | |
| DE58902733D1 | Germany | D1 | |
| ES2036730T3 | Spain | T3 | |
| DK170385B1 | Denmark | B1 |
36 legal events, as 3 offices reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | Office | |
|---|---|---|---|
| Appeal reference modifiedAppealORIGINAL CODE: EPIDOSCREFNOAPAH | APAH | EP | |
| Nl: decision of oppositionOppositionNLR2 | NLR2 | EP | |
| Patent revokedRevoked27W | 27W | EP | |
| Gb: patent revoked under art. 102 of the ep convention designating the uk as contracting stateRevoked980713GBPR | GBPR | EP | |
| Patent ceasedCeasedPL | PL | CH | |
| Patent revokedRevokedORIGINAL CODE: 0009271RDAG | RDAG | EP | |
| Information on the status of an ep patent application or granted ep patentGrantedSTATUS: PATENT REVOKEDSTAA | STAA | EP | |
| Patent revokedRevokedORIGINAL CODE: EPIDOS REVORDAH | RDAH | EP | |
| Appeal dossier modifiedAppealORIGINAL CODE: EPIDOS NOAPOAPAC | APAC | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Appeal dossier modifiedAppealORIGINAL CODE: EPIDOS NOAPOAPAC | APAC | EP | |
| Appeal dossier modifiedAppealORIGINAL CODE: EPIDOS NOAPOAPAC | APAC | EP | |
| Appeal reference recordedAppealORIGINAL CODE: EPIDOS REFNAPAA | APAA | EP | |
| Interlocutory decision in oppositionOppositionORIGINAL CODE: EPIDOS IDOPPLAW | PLAW | EP | |
| Nl: opposition has been filed with the epoOppositionNLR1 | NLR1 | EP | |
| Opposition filedOpposition26 | 26 | EP | |
| Opposition filedOppositionORIGINAL CODE: 0009260PLBI | PLBI | EP | |
| Definitive protectionFG2A | FG2A | ES | |
| Gb: translation of ep patent filed (gb section 77(6)(a)/1977)GBT | GBT | EP | |
| It: translation for a ep patent filedITF | ITF | EP | |
| It: translation for a ep patent filedITF | ITF | EP | |
| Fr: translation filedET | ET | EP | |
| Corresponds to:REF | REF | EP | |
| Designated contracting statesAK | AK | EP | |
| Corresponds to:REF | REF | EP | |
| (expected) grantORIGINAL CODE: 0009210GRAA | GRAA | EP | |
| First examination report despatched17Q | 17Q | EP | |
| Request for examination filed17P | 17P | EP | |
| Designated contracting statesAK | AK | EP | |
| Public reference made under article 153(3) epc to a published international application that has entered the european phaseORIGINAL CODE: 0009012PUAI | PUAI | EP |
Numbers
- Publication
- 0331202
- Publication, DOCDB
- 0331202
- Publication, EPODOC
- EP0331202
- Application
- 89103803
- Application, DOCDB
- 89103803
- Application, EPODOC
- EP19890103803
Titles3
- German
- Verfahren zur bedarfsweisen Benutzung des Datenspeichers eines Mikrocomputers als Programmspeicher
- English
- Method for using at will the data memory of a microcomputer as a programme memory
- French
- Méthode à utiliser suivant les besoins de la mémoire de données d'un micro-ordinateur en tant que mémoire de programme
Classification
- CPC, 2
- G06F21/79
- G06F12/1441
- IPC, 3
- G06F1 00
- G06F12 14
- G06F21 79
Designated states1
- Contracting states, 1
- Netherlands (Kingdom of the)
