DE19525100A1 - Verfahren zur On-Board-Programmierung eines elektrisch programmierbaren Nur-Lese-Speichers - Google Patents

Verfahren zur On-Board-Programmierung eines elektrisch programmierbaren Nur-Lese-Speichers

Info

Publication number
DE19525100A1
DE19525100A1 DE1995125100 DE19525100A DE19525100A1 DE 19525100 A1 DE19525100 A1 DE 19525100A1 DE 1995125100 DE1995125100 DE 1995125100 DE 19525100 A DE19525100 A DE 19525100A DE 19525100 A1 DE19525100 A1 DE 19525100A1
Authority
DE
Germany
Prior art keywords
memory
eprom
data
ram
read
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.)
Granted
Application number
DE1995125100
Other languages
English (en)
Other versions
DE19525100C2 (de
Inventor
Karl-Heinz Niemann
Reiner Bleil
Reinhard Koehler
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ABB Patent GmbH
Original Assignee
Hartmann and Braun AG
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 Hartmann and Braun AG filed Critical Hartmann and Braun AG
Priority to DE19525100A priority Critical patent/DE19525100C2/de
Publication of DE19525100A1 publication Critical patent/DE19525100A1/de
Application granted granted Critical
Publication of DE19525100C2 publication Critical patent/DE19525100C2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Microcomputers (AREA)
  • Read Only Memory (AREA)

Description

Die Erfindung betrifft ein Verfahren zur Programmierung eines elektrisch programmierbaren Nur-Lese-Speichers, im folgenden als EPROM bezeichnet, der in einer Mikrorechnerschaltung als Programmspeicher physisch fest eingebunden ist und während der Programmierung in dieser Mikrorechnerschaltung verbleibt, wobei der die Mikrorechnerschaltung bestimmende Mikroprozessor eine explizite, hardwaremäßig integrierte Trennung zwischen einem Schreib-Lese-Speicher, im folgenden als RAM bezeichnet, und dem Programmspeicher aufweist und bei dem Datenspeicher und Programmspeicher identische Adressbereiche überstreichen und ausschließlich über eigene Steuersignale differenziert ansprechbar sind. Derartige Mirkoprozessoren sind beispielsweise als INTEL 8051 beziehungsweise INTEL 8032 bekannt und werden üblicherweise zu Steuerungszwecken verwendet.
Bei der Aktualisierung der Systemsoftware in Einrichtungen, deren Steuerung mit derartigen Mikroprozessoren aufgebaut ist, wird das in der Einrichtung befindliche EPROM physisch gegen einen die aktuelle Systemsoftware beinhaltenden EPROM ausgetauscht. Dazu ist die Einrichtung erforderlichenfalls soweit zu zerlegen, daß das EPROM zugänglich ist. Insbesondere in komplexen Anlagen mit einer Vielzahl derartiger Einrichtungen ist die Aktualisierung der Systemsoftware sehr aufwendig und zeitintensiv. Darüber hinaus ist dafür zumindest ein Teil der Anlage spannungsfrei zu schalten, wobei ein durch die Anlage zu steuernder Prozeß zumindest teilweise zu unterbrechen ist.
Der Erfindung liegt daher die Aufgabe zugrunde, ein Verfahren anzugeben, das es gestattet, ein EPROM in einer Mikrorechnerschaltung, bei der der die Mikrorechnerschaltung bestimmende Mikroprozessor eine explizite, hardwaremäßig integrierte Trennung zwischen einem Programmspeicher und einem Datenspeicher aufweist und bei dem Datenspeicher und Programmspeicher identische Adressbereiche überstreichen und ausschließlich über Steuersignale differenzierbar sind, im eingebauten Zustand zu programmieren.
Erfindungsgemäß wird diese Aufgabe mit den Mitteln des Patentanspruches 1 gelöst. Vorteilhafte Ausgestaltungen der Erfindung sind in den Patentansprüchen 2 bis 4 genannt.
Die Erfindung wird nachstehend anhand eines Ausführungsbeispiels näher erläutert.
Dabei wird auf einen Mikroprozessor vom Typ INTEL 8032 Bezug genommen. Die dazu erforderlichen Zeichnungen zeigen
Fig. 1 einen Adreßplan des Mikroprozessors im Normalbetrieb
Fig. 2 einen Adreßplan des Mikroprozessors in der Betriebsart "Programmiermodus".
Der Mikroprozessor weist einen 16 bit breiten Adreßbus und einen 8 bit breiten Datenbus auf und ist in der Lage, zwei physisch getrennte, direktadressierbare Speicherbereiche, die jeweils ein Speichervolumen von 64 K * 8 bit umfassen, zu verwalten, von denen der eine als Codebereich C im Adreßbereich 0000 bis FFFF über ein Steuersignal PSEN ausschließlich zum Lesen selektierbar ist und der andere gemäß Fig. 1 als Datenbereich D im Adreßbereich 0000 bis FFFF über Steuersignale zum Lesen RD und Schreiben WR selektierbar ist, wobei alle Adreßangaben hexadezimal notiert sind.
Der Codebereich C ist physisch durch ein EPROM als Codespeicher dargestellt, das als sogenanntes Flash-EPROM ausgeführt ist. Der Datenbereich D ist im Bereich der Adressen 0000 bis 7FFF für Ein-/Ausgabeleitungen E/A reserviert und im Adressbereich 8000 bis FFFF zur temporären Datenspeicherung mit einem Datenspeicher RAM, der als statischer Datenspeicher SRAM ausgeführt ist, ausgestattet.
Diese Konfiguration entspricht der herstellerseitig zum bestimmungsgemäßen Gebrauch vorgeschlagenen Applikation und wird im folgenden als Betriebsart "Normalbetrieb" bezeichnet.
Im Normalbetrieb führt der Mikroprozessor Codesequenzen, die im EPROM des Codebereiches C gespeichert sind, in der vorgesehenen Reihenfolge aus. Die Adresse der aktuell ausgeführten Codesequenz im Codebereich C wird durch einen Befehlszeiger BZ, das ist ein Register mit der Breite des Adreßbusses im Mikroprozessor, repräsentiert. Dabei werden im Datenbereich D Ein-/Ausgabeleitungen E/A lesend und schreibend bedient und Daten im Datenspeicher RAM gespeichert und ausgelesen.
Zum Programmieren des Codespeichers EPROM, bei dem auf den Codespeicher EPROM schreibend zugegriffen werden soll, werden in einem ersten Schritt ladbare Codesequenzen aus einer beliebigen Quelle in den Datenspeicher RAM geschrieben, wobei die Betriebsart Normalbetrieb eingestellt ist. Die Codesequenzen zur Ausführung dieses Schrittes sind im Codespeicher EPROM gespeichert.
In einem zweiten Schritt wird bei der Ausführung von Instruktionen aus dem Programmspeicher in eine zweite Betriebsart, im folgenden als Programmiermodus bezeichnet, gewechselt. Dazu wird gemäß Fig. 2 der Codespeicher EPROM in den Datenbereich D unter Beibehaltung seiner Adressen 0000 bis FFFF umgeblendet und der Datenspeicher RAM aus dem Adreßbereich 8000 bis FFFF des Datenbereichs D in den Adreßbereich 0000 bis 7FFF des Codebereiches C umgeblendet. Der Ein/-Ausgabebereich E/A ist im Programmiermodus ausgeblendet und daher nicht adressierbar. Während des Programmierens werden Ein-/Ausgabeprozeduren unterbunden. Der Wert des Befehlszählers BZ bleibt dabei erhalten. Im Programmiermodus wird der Datenspeicher RAM als Codespeicher mit den zugehörigen Steuersignalen und der Codespeicher EPROM als Datenspeicher mit den prozessorseitig zum Datenspeicher gehörigen Steuersignalen angesprochen. Die Ausführung von Instruktionen wird an der durch den Befehlszähler bezeichneten Adresse im Codebereich C, in dem nunmehr der RAM adressiert wird, fortgesetzt.
In einem dritten Schritt wird der nunmehr als Datenspeicher betriebene EPROM zumindest teilweise gelöscht. Bekannte EPROMs sind vor einem Überschreiben bereits gespeicherter Informationen zumindest in dem zu überschreibenden Adreßbereich zu löschen. Sobald EPROMs verfügbar werden, deren Speicherzelleninhalte direkt überschreibbar sind, werden der dritte und der folgende vierte Schritt gleichzeitig ausgeführt, in dem die ladbaren Codesequenzen aus dem RAM im Codebereich C in den EPROM im Datenbereich D beginnend mit einer vorgebbaren Startadresse kopiert werden.
Abschließend wird in einem fünften Schritt aus der Betriebsart Programmiermodus in den Normalbetrieb zurückgewechselt, indem die Steuersignale für den Datenspeicher RAM und den Codespeicher EPROM rückvertauscht werden, so daß der Ausgangszustand, dessen Adreßplan in Fig. 1 angegeben ist, wiederhergestellt ist.
In Abarbeitung der Codesequenzen wird an der im Befehlszähler stehenden Adresse, die nunmehr wieder auf eine Speicherstelle im Codespeicher EPROM zeigt, fortgesetzt.
Zum vollständigen Austausch der im Codespeicher EPROM ablegbaren Codesequenzen werden die Schritte 1 bis 5 in Abhängigkeit von der Größe des in einem Schrittezyklus übertragbaren Codeblocks wiederholt.
Vorteilhafterweise verbleibt der Codespeicher EPROM zum Zwecke seiner Programmierung in der ihn aufweisenden Einrichtung. Dieser Vorteil kommt insbesondere zum Tragen in dezentral strukturierten und hierarchisch organisierten Steuerungen mit einer Vielzahl von sogenannten Controllern, das sind autark funktionsfähige Mikrorechnereinheiten, insbesondere mit Mikroprozessoren der Familien INTEL 8051 oder INTEL 8032, beim Austausch der Betriebssoftware. Dabei entfällt das zumindest teilweise Abschalten oder Unterbrechen des zu steuernden Prozesses, da die Programmierung in Pausen zwischen zwei aufeinanderfolgenden, prozeßbezogenen Aktivitäten des Mikroprozessors durchgeführt werden kann.
In weiterer Ausgestaltung der Erfindung ist vorgesehen, daß zum Wechsel zwischen der ersten und der zweiten Betriebsart ein Steuersignal generiert wird. Dieses Steuersignal wird in Abarbeitung einer Codesequenz erzeugt und über einen Anschlußstift des Mikroprozessors ausgegeben. In Abhängigkeit vom Zustand dieses Steuersignals werden die Zugriffssignale für den Datenspeicher RAM und den Codespeicher EPROM vertauscht und entsprechend dem jeweiligen Speichertyp angepaßt.
In besonderer Ausgestaltung wird das Steuersignal zum Wechsel der Betriebsarten über einen der Ein-/Ausgabeanschlüsse des Mikroprozessors ausgegeben, der unabhängig von dem Ein-/Ausgabebereich E/A im Datenbereich D ist.
In besonders vorteilhafter Ausgestaltung der Erfindung werden die ladbaren Codesequenzen, die in dem Codespeicher EPROM geschrieben werden sollen, von einem externen Datenbus in den Datenspeicher RAM geschrieben. Über diesen Datenbus ist eine Vielzahl von Controllern gleichzeitig mit den aktuellen Codesequenzen der Betriebssoftware versorgbar. Dabei werden in der Zeiteinheit, die zur Programmierung eines Codespeichers EPROM benötigt wird, sämtliche Codespeicher EPROM der selektierten Controller programmiert.

Claims (4)

1. Verfahren zur On-Board-Programmierung eines elektrisch programmierbaren Nur-Lese-Speichers als Programmspeicher mit einem und für einen Mikroprozessor, der eine explizite, hardwaremäßig integrierte Trennung zwischen einem als Schreib-Lese-Speicher ausgeführten Datenspeicher und dem Programmspeicher aufweist, wobei Datenspeicher und Programmspeicher identische Adreßbereiche überstreichen und ausschließlich über eigene Steuersignale differenziert ansprechbar sind und der Mikroprozessor neben Datenanschlüssen, Adreßanschlüssen und Steuersignalanschlüssen mit Ein-/Ausgabeanschlüssen ausgestattet ist, dadurch gekennzeichnet,
  • - daß in einem ersten Schritt in einer ersten Betriebsart "Normalbetrieb" ladbare Codesequenzen aus einer beliebigen Quelle in den Datenspeicher geschrieben werden,
  • - daß in einem zweiten Schritt bei der Ausführung von Instruktionen aus dem Programmspeicher in eine zweite Betriebsart "Programmiermodus" gewechselt wird, in der temporär die Steuersignale für den Datenspeicher und für den Programmspeicher unter Anpassung an den Speichertyp vertauscht werden, wodurch der elektrisch programmierbare Nur-Lese-Speicher zum Datenspeicher und der Schreib-Lese-Speicher zum Programmspeicher wird,
  • - daß in einem dritten Schritt der elektrisch programmierbare Nur-Lese-Speicher zumindest selektiv gelöscht wird,
  • - daß in einem vierten Schritt die ladbaren Codesequenzen aus dem Schreib-Lese-Speicher in den gelöschten Bereich des elektrisch programmierbaren Nur-Lese-Speichers kopiert werden und
  • - daß in einem fünften Schritt aus der zweiten in die erste Betriebsart zurückgewechselt wird, indem die Steuersignale für den Datenspeicher und für den Programmspeicher rückvertauscht werden.
2. Verfahren nach Anspruch 1 dadurch gekennzeichnet, daß zum Wechsel zwischen der ersten und der zweiten Betriebsart ein Steuersignal generiert wird.
3. Verfahren nach Anspruch 2 dadurch gekennzeichnet, daß das Steuersignal zum Wechsel der Betriebsarten über einen der Ein-/Ausgabeanschlüsse ausgegeben wird.
4. Verfahren nach Anspruch 1 dadurch gekennzeichnet, daß die ladbaren Codesequenzen von einem externen Datenbus in den Datenspeicher geschrieben werden.
DE19525100A 1995-06-29 1995-06-29 Verfahren zur On-Board-Programmierung eines elektrisch programmierbaren Nur-Lese-Speichers Expired - Lifetime DE19525100C2 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19525100A DE19525100C2 (de) 1995-06-29 1995-06-29 Verfahren zur On-Board-Programmierung eines elektrisch programmierbaren Nur-Lese-Speichers

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19525100A DE19525100C2 (de) 1995-06-29 1995-06-29 Verfahren zur On-Board-Programmierung eines elektrisch programmierbaren Nur-Lese-Speichers

Publications (2)

Publication Number Publication Date
DE19525100A1 true DE19525100A1 (de) 1997-01-09
DE19525100C2 DE19525100C2 (de) 2001-10-18

Family

ID=7766460

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19525100A Expired - Lifetime DE19525100C2 (de) 1995-06-29 1995-06-29 Verfahren zur On-Board-Programmierung eines elektrisch programmierbaren Nur-Lese-Speichers

Country Status (1)

Country Link
DE (1) DE19525100C2 (de)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19701323A1 (de) * 1997-01-16 1998-07-23 Hartmann & Braun Gmbh & Co Kg Verfahren und Vorrichtung zur Aktualisierung der Betriebssoftware
DE19701322A1 (de) * 1997-01-16 1998-07-23 Hartmann & Braun Gmbh & Co Kg Verfahren zur Aktualisierung der Betriebssoftware
EP1209688A1 (de) * 2000-11-23 2002-05-29 Siemens Aktiengesellschaft Verfahren und Vorrichtung zur Aktualisierung von Lesedateien in einem FLASH-Speicher einer industriellen Steuereinrichtung
DE102007037879A1 (de) * 2007-08-10 2009-02-12 BSH Bosch und Siemens Hausgeräte GmbH Hausgerät und Verfahren zum Betreiben eines Hausgeräts
US7580992B2 (en) 1999-09-29 2009-08-25 Fisher Controls International Llc Downloadable code in a distributed process control system

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10255542B4 (de) * 2002-11-28 2015-11-12 Abb Ag Speicheranordnung für eine Mikrorechnerschaltung
DE10255540A1 (de) * 2002-11-28 2004-06-24 Abb Patent Gmbh Verfahren zur Aktualisierung des Betriebssystems einer Mikrorechnerschaltung
DE10255541B4 (de) * 2002-11-28 2015-05-21 Abb Ag Speicheranordnung für eine Mikrorechnerschaltung
DE10255539A1 (de) * 2002-11-28 2004-06-24 Abb Patent Gmbh Verfahren zur Inbetriebnahme einer Mikrorechnerschaltung

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
US IBM TDB Vol. 27 Nr. 10A, März 1985, S. 5826 f *
US-Z.: Electronic Design, H. 21, Oktober 1983, S. 145-150 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19701323A1 (de) * 1997-01-16 1998-07-23 Hartmann & Braun Gmbh & Co Kg Verfahren und Vorrichtung zur Aktualisierung der Betriebssoftware
DE19701322A1 (de) * 1997-01-16 1998-07-23 Hartmann & Braun Gmbh & Co Kg Verfahren zur Aktualisierung der Betriebssoftware
DE19701322C2 (de) * 1997-01-16 2002-10-10 Abb Patent Gmbh Verfahren zur Aktualisierung der Betriebssoftware
DE19701323C2 (de) * 1997-01-16 2002-11-14 Abb Patent Gmbh Verfahren und Vorrichtung zur Aktualisierung der Betriebssoftware
DE19701323C5 (de) * 1997-01-16 2006-06-08 Abb Patent Gmbh Verfahren und Vorrichtung zur Aktualisierung der Betriebssoftware
US7580992B2 (en) 1999-09-29 2009-08-25 Fisher Controls International Llc Downloadable code in a distributed process control system
EP1209688A1 (de) * 2000-11-23 2002-05-29 Siemens Aktiengesellschaft Verfahren und Vorrichtung zur Aktualisierung von Lesedateien in einem FLASH-Speicher einer industriellen Steuereinrichtung
DE102007037879A1 (de) * 2007-08-10 2009-02-12 BSH Bosch und Siemens Hausgeräte GmbH Hausgerät und Verfahren zum Betreiben eines Hausgeräts

Also Published As

Publication number Publication date
DE19525100C2 (de) 2001-10-18

Similar Documents

Publication Publication Date Title
DE69209538T2 (de) Automatische Konfiguration einer Einheit für koppelbare Rechner
DE2646162C3 (de) Schaltungsanordnung zum Ersetzen fehlerhafter Informationen in Speicherplätzen eines nicht veränderbaren Speichers
DE3687787T2 (de) Speicherzugriff-steuerungsschaltung.
DE10308545A1 (de) Verfahren und Vorrichtung zum Aktualisieren eines verteilten Programms
EP0500973B1 (de) EEPROM und Verfahren zum Ändern einer Initialisierungsroutine im EEPROM
EP1113362B1 (de) Integrierter Halbleiterspeicher mit einer Speichereinheit zum Speichern von Adressen fehlerhafter Speicherzellen
DE19525100C2 (de) Verfahren zur On-Board-Programmierung eines elektrisch programmierbaren Nur-Lese-Speichers
DE3314976C2 (de)
DE69033031T2 (de) Programmierbares Steuergerät
DE2064473B2 (de) Schaltung zur Bestimmung der Adresse einer in einem Speicher einer Datenverarbeitungsanlage enthaltenden, gesuchten Information
DE68925376T2 (de) In Direktabbildung und in Bankabbildung wirksamer Informationsprozessor und Verfahren zum Schalten der Abbildungsschemas
DE69326329T2 (de) Speicherzellen-Stromleseverfahren in Mikrosteuergerät
DE3210616A1 (de) Rechner
EP0203409A1 (de) Verfahren und Anordnung zum nichtflüchtigen Speichern des Zählerstandes eines digitalen Zählers
DE1296429B (de) Datenbearbeitungsanlage
DE19701323C5 (de) Verfahren und Vorrichtung zur Aktualisierung der Betriebssoftware
DE4117326C2 (de) Röntgentechnische Einrichtung
EP0443070B1 (de) Anordnung zum Prüfen der Funktionsfähigkeit von Speicherplätzen eines Schreib-Lese-Speichers
DE2219070C3 (de) Anordnung zur Steuerung von Programmverschiebungen und zur Wiedereingabe von Unterprogrammen bei einer mit Multiprogrammierung arbeitenden digitalen Datenverarbeitungsanlage
EP0645710A2 (de) Verfahren zur Funktionsprüfung signaltechnisch nicht sicherer Speicher für mindestens zweikanalig abgespeicherte Nutzdaten und Einrichtung zur Durchführung des Verfahrens
EP0613077B1 (de) Verfahren zur Reset-Erzeugung in Datenverarbeitungsanlagen
DE4107007A1 (de) Elektronisches geraet
DE10255542B4 (de) Speicheranordnung für eine Mikrorechnerschaltung
EP0326803B1 (de) Anordnung zur Erweiterung eines Befehlsspeicherbereichs
DE10255541B4 (de) Speicheranordnung für eine Mikrorechnerschaltung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8125 Change of the main classification

Ipc: G06F 9/22

8127 New person/name/address of the applicant

Owner name: ABB PATENT GMBH, 68309 MANNHEIM, DE

D2 Grant after examination
8327 Change in the person/name/address of the patent owner

Owner name: ABB PATENT GMBH, 68526 LADENBURG, DE

8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: ABB AG, 68309 MANNHEIM, DE

R071 Expiry of right