DE19751439A1 - Programmierbare Steuerung mit anwendungsspezifischer Hartverdrahtung - Google Patents

Programmierbare Steuerung mit anwendungsspezifischer Hartverdrahtung

Info

Publication number
DE19751439A1
DE19751439A1 DE1997151439 DE19751439A DE19751439A1 DE 19751439 A1 DE19751439 A1 DE 19751439A1 DE 1997151439 DE1997151439 DE 1997151439 DE 19751439 A DE19751439 A DE 19751439A DE 19751439 A1 DE19751439 A1 DE 19751439A1
Authority
DE
Germany
Prior art keywords
oriented
control
bit
controller
byte
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.)
Withdrawn
Application number
DE1997151439
Other languages
English (en)
Inventor
Claus Dworski
Gunter Kalmbach
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.)
DWORSKI CLAUS DIPL INFORM
Original Assignee
DWORSKI CLAUS DIPL INFORM
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 DWORSKI CLAUS DIPL INFORM filed Critical DWORSKI CLAUS DIPL INFORM
Priority to DE1997151439 priority Critical patent/DE19751439A1/de
Publication of DE19751439A1 publication Critical patent/DE19751439A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/045Programme control other than numerical control, i.e. in sequence controllers or logic controllers using logic state machines, consisting only of a memory or a programmable logic device containing the logic for the controlled machine and in which the state of its outputs is dependent on the state of its inputs or part of its own output states, e.g. binary decision controllers, finite state controllers
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13007Program hardwired logic, pld, fpga when out of machine, or inactive
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13024Convert digital logic of hardware circuit into plc software
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/15Plc structure of the system
    • G05B2219/15057FPGA field programmable gate array
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/15Plc structure of the system
    • G05B2219/15127Bit and word, byte oriented instructions, boolean and arithmetic operations

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Description

1 Einleitung
Anwendungsspezifische Integrierte Schaltkreise (Asics) verändern unser technisches Umfeld, insbesondere die beiden programmierbaren Untergruppen CPLDs und FPGAs. Konnte man früher bereits Teile einer Steuerung mit FPGAs realisieren (siehe Patent EP 0 499 695 A2, sowie Patent EP 0499695 A2 ≘ DE 42 05 524 A1) oder Steuerprogramme für eine Binärsignaiverarbeitung in einen Zustandsautomaten im inneren eines CPLDs umsetzen (siehe Patent DE 40 38 533 A1) so kann man heute die komplette Steuerung in einem FPGA unterbringen. Die Schaltung wird dabei in der Regel als Mikroprozessor oder als Automat (Moore, Mealy oder Metvedev) im inneren der FPGAs realisiert. Im Gegensatz dazu stellt die vorliegende Erfindung eine programmierbare Steuerung mit anwendungsspezifischer Hartverdrahtung zur Verfügung, die aus einem STEP5-Programm heraus entwickelt werden kann.
Im Vergleich zu Speicherprogrammierbaren Steuerungen haben anwendungsspezifisch hartverdrahtete Steuerungen folgende Vorteile:
  • - Parallelbearbeitung der Logik möglich,
  • - Wesentlich kürzere Zykluszeiten,
  • - geringere Kosten der Steuerung,
  • - verringerter Raumbedarf der Steuerung,
  • - modularer Aufbau möglich,
  • - vereinfachte Lagerhaltung von Systemkomponenten,
  • - erhöhte Systemzuverlässigkeit sowie
  • - Reduzierung der Systemverlustleistung.
Bisher werden auch für kleine Steuerungen, bei denen Flexibilität erforderlich ist, Speicherprogrammierbare Steuerungen eingesetzt. Anwendungsspezifisch hartverdrahtete Steuerungen mit FPGAs stellen eine kleinere, der Anlagengröße entsprechende Alternative dar.
Ein Problem dagegen ist die Programmierung der FPGAs die bis heute nur Ingenieuren vorbehalten bleibt. Das im weiteren angegebene Verfahren zur Umsetzung eines STEP5-Programmes in eine anwendungsspezifisch hartverdrahtete Steuerung versetzt auch Praktiker mit SPS-Kenntnissen in die Lage FPGAs zu programmieren.
Auch der Mikroprozessor hat in der Steuerungstechnik sein Einsatzgebiet in vielen Anwendungen gefunden, kann aber wegen der Komplexität des Assemblercodes nur von Fachleuten programmiert werden. Der Unterschied dieser Steuerung zu einem Mikroprozessor besteht darin, daß bitorientierte Operationen eins zu eins in hartverdrahtete Logik umgesetzt werden. Außerdem gibt es kein Programm in einem Programmspeicher, wie bei einem Prozessor, sondern eine anwendungsspezifisch hartverdrahtete Steuereinheit.
Da FPGAs intern parallel arbeiten ist es möglich, daß mehrere Bitoperationen in nur einem Systemtaktzyklus und Byteoperationen in maximal zwei Systemtaktzyklen abgearbeitet werden können. Dadurch ergeben sich sehr kleine Verzögerungszeiten der Signale und sehr schnelle Reaktionszeiten der Steuerung.
Oberflächlich betrachtet bietet sich zur Erstellung der Steuerung eine direkte Umsetzung des STEP5- Programmes in die Hardwarebeschreibungssprache VHDL (Very High Speed Integrated Circuit Hardware Description Language) an. Die entstehende Steuerung wäre aber um ein Vielfaches zu komplex, um in einem FPGA realisiert werden zu können. Als weitaus besseres Verfahren erweist sich eine strukturierte Umsetzung, in der auch Festkomponenten enthalten sind. Die Festkomponenten kommen jedoch nur in der byteorientierten Steuerung vor.
Eine Übersicht der Gesamtschaltung ist im Anhang in Bild 1 dargestellt. Im folgenden werden die einzelnen Komponenten der Steuerung beschrieben:
  • - Die anwendungsspezifisch hartverdrahtete bitorientierte Steuerung,
  • - die Festkomponenten der byteorientierten Steuerung und
  • - die anwendungsspezifisch hartverdrahtete Steuereinheit.
2 Die anwendungsspezifisch hartverdrahtete bitorientierte Steuerung
Die logischen Verknüpfungen in der bitorientierten Steuerung werden von den Mikrotakten (µTn) des Mikroprogrammzählers (µPc) aktiviert, so daß in jedem Systemtakt die entsprechenden logischen Verknüpfungen durchgeführt werden. Gemäß Bild 2 sind die Logikschaltungen (1, . . ., 1') über den vom Mikrotakt gesteuerten Multiplexer (2) mit dem Zustandsspeicher (3) verbunden. So werden in jedem Mikrotakt die richtigen Ergebnisse der Logikschaltungen in den richtigen Zustandsspeichern gespeichert. Im Zustandspeicher werden Merker (M), Eingänge (E), Ausgänge (A), Verknüpfungsergebnisse (VKE), Zählergebnisse (Z) und Timerergebnisse (T) gespeichert. Die aktuellen Zustände können mit dem Bus (5) in den Logikschaltungen (1, . . ., 1') weiterverarbeitet oder den Ausgängen (A0, . . ., An) zugeleitet werden. Die Eingänge (E0, . . ., Em) werden im Zustandsspeicher und die Ausgänge (A0, . . ., An) im Ausgangslatch (4, . . ., 4') gepuffert, um deren Werte während eines Programmzyklusses konstant halten zu können. Das Lesen der Eingänge und des Ausgangsabbildes wird gleichzeitig im Mikrotakt Null, bei dem noch keine logische Verknüpfung stattfindet, durchgeführt.
Bitoperationen
In der bitorientierten Steuerung sind die Bitoperationen als hartverdrahtete Logik enthalten. Jede Operation wird direkt in kombinatorische Logik umgewandelt wodurch sich sehr kleine Bearbeitungszeiten ergeben.
Tabelle 1 zeigt ein Übersicht der Operationen und der dazugehörigen Schaltungsumsetzung.
Tabelle 1
Hierbei entsteht zunächst eine kombinatorische Logikschaltung mit hintereinanderfolgenden Gattern, die später beim Minimieren durch Zusammenfassung parallelisiert und deren Zahl verringert wird.
Klammern
Beim Öffnen von Klammern mit O( oder U( wird eine zweite kombinatorische Logik-Schaltung begonnen, die beim Schließen der Klammer mit) zur ersten kombinatorischen Schaltung hinzugefügt wird.
Zusätzliche Taktzyklen
Als nächstes wird darauf eingegangen, wann bei der Umsetzung des STEP5-Programmes eine rein kombinatorische Schaltung nicht mehr ausreicht und ein Mikrotakt abgewartet werden muß.
Dies ist nach dem Setzen (S), Rücksetzen (R) oder Zuweisen (=) von Merkern dann erforderlich, wenn die Merker erneut verwendet werden. Die Verwendung der Merker könnte durch Und (U), Undnicht (UN), Oder (O) oder Odernicht (ON) erfolgen. Dasselbe gilt auch bei Ein- und Ausgängen. Bild 3 zeigt die verschiedenen Möglichkeiten.
Man kann die Anzahl der Mikrotakte niedrig halten, indem man versucht sogenannte "Schmiermerker" zu umgehen. Schmiermerker sind Merker, die im selben Programmzyklus unter verschiedenen Bedeutungen eingesetzt werden. Man kann statt ihnen jedesmal neue Merker verwenden.
Ebenso werden nach allen Byteoperationen ein bis zwei zusätzliche Mikrotakte eingefügt, weil höchstens eine Byteoperation in einem Mikrotaktzyklus möglich ist.
Insbesondere nach allen Timeroperationen SI, SE, SV, SA, SS und R und allen Zähleroperationen S, R, ZV und ZR sind zwei Mikrotaktzyklen erforderlich. So erhält man bei darauffolgenden Abfragen den richtigen Timer- bzw. Zählerzustand.
Dennoch sind insgesamt wesentlich weniger Mikrotakte in einem Programmzyklus erforderlich, als Takte in einem Programmzyklus einer Speicherprogrammierbaren Steuerung. Erstens, weil die anwendungsspezifisch hartverdrahtete Steuerung nur einen Mikrotakt pro Byteoperation benötigt, und zweitens, weil in einem Mikrotakt mehrere Bitoperationen parallel durchgeführt werden können.
3 Die Festkomponenten der byteorientierten Steuerung
Die in Bild 1 dünn umrahmten Festkomponenten der byteorientierten Steuerung sind für alle Anwendungen erforderlich. Ihre Inhalte sind mit Ausnahme des Datenspeichers für alle Anwendungen gleich. Im Datenspeicher stehen die anwendungsspezifischen Konstanten des STEP5-Programmes und es ist Platz für Datenbausteine vorgesehen. Im Gegensatz zur Speicherprogrammierbaren Steuerung existiert kein Programmcode, der im Speicher abgelegt werden müßte. Auch die Timer und Zähler sind für alle Anwendungen gleich, nur ihre Anzahl hängt von den Anwendungen ab. Um die Schaltung möglichst klein zu halten, sollte man so wenig Timer und Zähler wie möglich einsetzen.
Die gesamte Schaltung wird synchron getaktet. Zur Ansteuerung der Timer (T1, T2, . . ., Tn) wird der Systemtakt mit dem Frequenzteiler (T) in verschiedene Frequenzen geteilt. So werden mehrere Enable-Leitungen mit kurzen Impulsen für die Timer hergestellt, und die verschiedenen Zeitbasen verwirklicht, die aus der STEP5-Programmiersprache her kommen.
Tabelle 2 zeigt die verschiedenen Zeitbasen und die dazugehörigen Frequenzen auf den Enable-Leitungen.
Tabelle 2
Frequenzen der Enable-Leitungen für die Timer
Wie schon im vorigen Abschnitt erwähnt wurde, sind sowohl die Timer (T1, T2,. . .,Tn) als auch die Zähler (Z1, Z2,. . .,Zm) in der byteorientierten Steuerung für alle Anwendungen gleich. Dazu sind verschiedene Timer- bzw. Zähleraufsätze in der bitorientierten Steuerung notwendig. Durch sie werden die verschiedenen STEP5-Operationen SI, SE, SV, SA, SS und R bei den Timern und S, R, ZV und ZR bei den Zählern verwirklicht. Die Aufsätze werden mit den Timern bzw. Zählern über globale Busse verbunden, die unabhängig vorn verwendeten Aufsatz alle notwendigen Leitungen enthalten (siehe Kapitel 5 Timer und Zähler).
Der Kern der byteorientierten Steuerung besteht aus einer Arithmetisch-Logischen Recheneinheit (ALU) und zwei hintereinandergeschalteten Akkumulatoren (A1 und A2).
Die Rotieroperationen SLW und SRW werden direkt im Akku 1 durchgeführt, der als Schieberegister ausgelegt ist. Für die arithmetischen Operationen +F, -F, D, I und KZW, die logischen Operationen UW, OW, XOW und KEW und die Vergleichsoperationen !=F, <<F, <F, <=F, <F und <=F wird die ALU verwendet. Das Ergebnis der arithmetischen oder logischen Operationen wird von der ALU in den Akku 1 geführt. Bei den Vergleichsoperationen sind als Ergebnis von der ALU nur die Leitungen C (Carry) und Z (Zero) von Bedeutung. Sie werden je nach Vergleichsoperation miteinander verknüpft und der bitorientierten Steuerung als VKE zugeführt.
Bei den Ladeoperationen L DL, L DR und L DW werden Daten direkt vom Datenspeicher in den Akku 1 geladen. Bei den Transferoperationen T DL, T DR und T DW hingegen müssen die Daten vom Akku 1 durch die ALU in den Datenspeicher transferiert werden. Die Timer und Zähler können direkt vom Akku 1 geladen werden. Mit den Ladeoperationen L T1 und L Z1 können die aktuellen Timer- bzw. Zählerstände wieder in den Akku 1 geladen werden.
Die Steuereinheit gehört zu den anwendungsspezifisch hartverdrahteten Komponenten (siehe Kapitel 4). Sie koordiniert den Ablauf in der byteorientierten Steuerung, indem sie Verbindungen durchschaltet, wie beispielsweise vom Akku 1 durch die ALU in den Datenspeicher. Außerdem stellt sie sämtliche Steuerleitungen, Zählstände für den Mikroprogrammzähler (µPc) und Adressen für den Datenspeicher her. Als Eingang hat sie nur den Mikroprogrammzähler.
Der Mikroprogrammzähler (µPc) mit nachgeschaltetem Decoder (D) wird bei jedem Takt um eins erhöht. Am Ende jedes Zyklus wird er von der Steuereinheit wieder mit Null geladen. Beim Mikrotakt Null werden die Zustände aller Eingänge eingelesen und das Ausgangsabbild an die Ausgänge durchgeschaltet. So können das Eingangsabbild und die Zustände der Ausgänge während eines Zyklus konstant bleiben. Die anderen Mikrotakte aktivieren die richtigen Logikschaltungen der bitorientierten Steuerung.
Der Dekoder hat als Eingangssignal den aktuellen Stand des Mikroprogrammzählers. Am Ausgang legt er die korrespondierende Mikrotaktleitung auf High. Es liegt immer nur eine Mikrotaktleitung auf High.
Um untergeordnete Programmbausteine und Funktionsbausteine aufrufen zu können, wird ein Stack verwendet, der bei jedem Bausteinaufruf den aktuellen Stand des Mikroprogrammzählers speichert und beim Beenden des untergeordneten Bausteines eine Fortsetzung des übergeordneten Bausteines ermöglicht.
4 Die anwendungsspezifisch hartverdrahtete Steuereinheit
Die anwendungsspezifisch hartverdrahtete Steuereinheit ist eine rein kombinatorische Schaltung. Sie hat nur einen Eingang: Den Mikroprogrammzähler (µPc). Ihre Ausgänge sind in Tabelle 3 genau beschrieben. Die Anzahl der Ausgänge ist variabel, da für jeden Timer und für jeden Zähler ein anderes Auslesesignal benötigt wird (LT1, . . ., LTn, LZ1, . . ., Lzm).
Tabelle 3
Ein- und Ausgänge der Steuereinheit
Das Schaltnetz der anwendungsspezifisch hartverdrahteten Steuereinheit wird über eine Wertetafel aus dem STEP5-Programm erstellt. Ein Beispiel dieser Wertetafel ist in Tabelle 4 dargestellt.
Tabelle 4
Wertetafel der Steuereinheit
Wie in Tabelle 4 ersichtlich ist, muß nicht in jedem Mikrotakt eine Operation in der byteorientierten Steuerung ausgeführt werden. Es werden auch in der bitorientierten Steuerung Operationen ausgeführt.
5 Timer und Zähler Timeraufsätze
Bild 4 im Anhang zeigt die Timeraufsätze in der bitorientierten Steuerung für die STEP5-Operationen SI, SE, SV, SA, SS und R.
Zur Ansteuerung eines Timeraufsatzes wird von einer Logikschaltung in der bitorientierten Steuerung (Bild 2, 1) ein Verknüpfungsergebnis (VKE) erzeugt. Von diesem wird innerhalb des Timeraufsatzes beim richtigen Mikrotakt die steigende Flanke (SI, SE, SV und SS) bzw. die fallende Flanke (SA) ausgewertet. Das Rücksetzen (R) des Timers erfolgt flankenunabhängig. An seinem Ausgang gibt der Timeraufsatz an, in weichem Zustand sich der Timer befindet. Der Ausgang wird ohne weitere Logikschaltung über den vom Mikrotakt gesteuerten Multiplexer (2) dem Zustandsspeicher (3) zugeführt.
Timer
Beim Laden des Timers werden vom Akkumulator 10 Bit in den Zähler transferiert. Zwei weitere Bits geben an, welche Frequenz die Enable-Leitung des Timers haben soll. Sie werden beim Laden des Timers in D-Flipflops gepuffert und wählen über einen Multiplexer die Enableleitung aus.
Das Laden des Timers erfordert einen Mikrotakt; und um den Zustand des Timers zu ermitteln und im Zustandsspeicher zu puffern, ist ein weiterer Mikrotakt erforderlich (siehe Kapitel 2, Zusätzliche Taktzyklen). Der aktuelle Timerstand kann in den Akku 1 geladen werden (L).
In der STEP5-Programmiersprache ist es möglich den selben Timer mehrmals mit verschiedenen STEP5-Operationen aufzurufen. In solchen Fällen werden die Verbindungen von den Timeraufsätzen zum Timer mit ODER-Gattern verknüpft. Auf diese Weise setzt sich der zuletzt aktivierte Timeraufsatz mit dem Setzen bzw. Rücksetzen des Timers durch.
Zähleraufsätze
Bild 5 im Anhang zeigt die Zähleraufsätze in der bitorientierten Steuerung für die STEP5-Operationen S, R, ZV und ZR. Auch hier wird zur Ansteuerung des Zähleraufsatzes von einer Logikschaltung in der bitorientierten Steuerung (1) ein Verknüpfungsergebnis (VKE) erzeugt und innerhalb des Zähleraufsatzes beim richtigen Mikrotakt die steigende Flanke des VKEs (ZV und ZR) ausgewertet. Das Setzen (S) und Rücksetzen (R) des Zählers erfolgt flankenunabhängig. An seinem Ausgang gibt der Zähleraufsatz an, in weichem Zustand sich der Zähler befindet. Der Ausgang wird ohne weitere Logikschaltung über den vom Mikrotakt gesteuerten Multiplexer (2) dem Zustandsspeicher (3) zugeführt.
Zähler
Wie beim Timer werden beim Laden des Zählers vom Akkumulator 10 Bit in den Zähler transferiert. Das Laden des Zählers erfordert einen Mikrotakt; und um den Zustand des Zählers zu ermitteln und im Zustandsspeicher zu puffern, ist ein weiterer Mikrotakt erforderlich (siehe Kapitel 2, Zusätzliche Taktzyklen). Der aktuelle Zählerstand kann in den Akku 1 geladen werden (L).
6 Hierarchieebenen
STEP5-Programme werden zur übersichtlichen Strukturierung in mehrere Bausteine unterteilt. Ein STEP5-Programm enthält den Organisationsbaustein OB1, der zyklisch aufgerufen wird, in dem die vom Anwender erstellten Programmbausteine PB1, PB2, . . . aufgerufen werden. Funktionsbausteine (FB) enthalten Programmteile die öfters verwendet werden. Bild 6 zeigt ein Beispiel eines übersichtlich strukturierten STEP5-Programmes. Im folgenden werden zwei verschiedene Möglichkeiten vorgestellt, ein STEP5-Programm dieser Art umzusetzen.
"Verflachung" der Hierarchieebenen
Bei diesem Verfahren werden die untergeordneten Programm- und Funktionsbausteine vollständig in den übergeordneten Bausteinen eingebettet. Dies ist bei STEP5-Programmen möglich, weil innerhalb eines Programmzykluses nur eine immer gleiche Zahl von Bausteinen aufgerufen werden kann (keine Rekursionen möglich). Wird ein Funktionsbaustein mehrfach im STEP5-Programm aufgerufen, so wird er auch mehrfach umgesetzt. Dies führt zu einer relativ umfangreichen Steuerung.
Verwendung eines Stacks
Beim Aufruf eines untergeordneten Programm- oder Funktionsbausteines wird der aktuelle Zählstand des Mikroprogrammzählers (siehe Bild 1, µPc) auf den Stack geschrieben. Nun wird der untergeordnete Baustein abgearbeitet. Danach wird wieder der alte Zählstand des Mikroprogrammzählers vom Stack geholt und der übergeordnete Baustein fortgesetzt.
Der Stack ist ein vom Datenspeicher unabhängiger Speicherbereich, der direkt von einem speziellen Stackpointerregister aus adressiert werden kann. Dadurch sind Stackzugriffe in nur zwei Mikrotakten möglich.
7 Beispiel für die Umsetzung eines STEP5-Programmes in eine anwendungsspezifisch hartverdrahtete Steuerung
Es soll der Zustandsgraph aus Bild 7 umgesetzt werden.
Die Zuordnungsliste für die Merker, Ein- und Ausgänge ist in Tabelle 5 dargestellt:
Tabelle 5
Zuordnungsliste
Es ergibt sich das STEP5-Programm in Tabelle 6.
Tabelle 6
STEP5-Programm
Die nach dem angegebenen Verfahren umgesetzte anwendungsspezifisch hartverdrahtete Steuerung sieht folgendermaßen aus:
  • - Anwendungsspezifisch hartverdrahtete bitorientierte Steuerung siehe Bild 8,
  • - Festkomponenten der byteorientierten Steuerung siehe Bild 9 und
  • - anwendungsspezifisch hartverdrahtete Steuereinheit siehe Tabelle 7.
Tabelle 7
Anwendungsspezifisch hartverdrahtete Steuereinheit

Claims (21)

1. Programmierbare Steuerung zum Anschließen von Sensoren wie z. B. Taster, Schalter, Temperatur-, Druck- und induktive Sensoren und Aktoren wie z. B. Motoren, Ventile und Meldeeinrichtungen mit einer bitorientierten Steuerung und einer byteorientierten Steuerung bestehend aus Steuereinheit, Recheneinheit, Registern und Speicher, dadurch gekennzeichnet, daß die bitorientierte Steuerung anwendungsspezifisch hartverdrahtet ist.
2. Programmierbare Steuerung zum Anschließen von Sensoren wie z. B. Taster, Schalter, Temperatur-, Druck- und induktive Sensoren und Aktoren wie z. B. Motoren, Ventile und Meldeeinrichtungen mit einer bitorientierten Steuerung und einer byteorientierten Steuerung bestehend aus Steuereinheit, Recheneinheit, Registern und Speicher, dadurch gekennzeichnet, daß die in der byteorientierten Steuerung enthaltene Steuereinheit anwendungsspezifisch hartverdrahtet ist.
3. Programmierbare Steuerung zum Anschließen von Sensoren wie z. B. Taster, Schalter, Temperatur-, Druck- und induktive Sensoren und Aktoren wie z. B. Motoren, Ventile und Meldeeinrichtungen mit einer bitorientierten Steuerung und einer byteorientierten Steuerung bestehend aus Steuereinheit, Recheneinheit, Registern und Speicher, dadurch gekennzeichnet, daß sowohl die bitorientierte Steuerung als auch die in der byteorientierten Steuerung enthaltene Steuereinheit komplett in einem programmierbaren Logikbaustein untergebracht sind.
4. Steuerung nach Anspruch 1 und 2, dadurch gekennzeichnet, daß sowohl die bitorientierte Steuerung als auch die in der byteorientierten Steuerung enthaltene Steuereinheit anwenderspezifisch hartverdrahtet sind.
5. Steuerung nach Anspruch 1, dadurch gekennzeichnet, daß die bitorientierte Steuerung in einem programmierbaren Logikbaustein untergebracht ist.
6. Steuerung nach Anspruch 2, dadurch gekennzeichnet, daß die in der byteorientierten Steuerung enthaltene Steuereinheit in einem programmierbaren Logikbaustein untergebracht ist.
7. Steuerung nach Anspruch 1 und 2, dadurch gekennzeichnet, daß sowohl die bitorientierte Steuerung als auch die in der byteorientierten Steuerung enthaltene Steuereinheit komplett in einem programmierbaren Logikbaustein untergebracht sind.
8. Steuerung nach Anspruch 3, 4, 5 oder 6, dadurch gekennzeichnet, daß der programmierbare Logikbaustein ein FPGA (Feldprogrammierbares Gatterfeld), CPLD (Komplexer Programmierbarer Logikbaustein) oder ein EPROM (Löschbarer Programmierbarer Festwertspeicher) ist.
9. Steuerung nach Anspruch 1, dadurch gekennzeichnet, daß ein Zähler mit nachgeschaltetem Decoder die Auswahlleitung (Mikrotaktleitung) der aktiven Logikteilschaltung der bitorientierten Steuerung liefert.
10. Steuerung nach Anspruch 1, dadurch gekennzeichnet, daß in der bitorientierten Steuerung parallele Logikstrukturen vorhanden sind.
11. Steuerung nach Anspruch 2, dadurch gekennzeichnet, daß die in der byteorientierten Steuerung enthaltenen Timer feste Komponenten, die gleiche Konfigurationen aufweisen, enthalten.
12. Steuerung nach Anspruch 2, dadurch gekennzeichnet, daß die in der byteorientierten Steuerung enthaltenen Zähler feste Komponenten, die gleiche Konfigurationen aufweisen, enthalten.
13. Steuerung nach Anspruch 1, dadurch gekennzeichnet, daß die bitorientierte Steuerung sowohl parallel als auch sequenziell strukturiert ist.
14. Verfahren zum Betreiben einer programmierbaren Steuerung nach einem oder mehreren der obigen Ansprüche, dadurch gekennzeichnet, daß die bitorientierte Steuerung anwendungsspezifisch hartverdrahtet ist.
15. Verfahren zum Betreiben einer programmierbaren Steuerung nach einem oder mehreren der obigen Ansprüche, dadurch gekennzeichnet, daß die in der byteorientierten Steuerung enthaltene Steuereinheit anwendungsspezifisch hartverdrahtet ist.
16. Verfahren zum Betreiben einer programmierbaren Steuerung nach einem oder mehreren der obigen Ansprüche, dadurch gekennzeichnet, daß sowohl bitorientierte als auch die in der byteorintierten Steuerung enthaltene Steuereinheit in einem programmierbaren Logikbaustein untergebracht sind.
17. Verfahren nach Anspruch 12 bis 14, dadurch gekennzeichnet, daß das funktionale Gesamtverhalten der Programmierbaren Steuerung in der Program­ miersprache für speicherprogrammierbare Steuerungen STEP5 vorgegeben wird.
18. Verfahren nach Anspruch 15, dadurch gekennzeichnet, daß das funktionale Gesamtverhalten der Programmierbaren Steuerung in die Hardware­ beschreibungssprache (VHDL) umgesetzt wird.
19. Verfahren nach Anspruch 16, dadurch gekennzeichnet, daß das funktionale Gesamtverhalten der Programmierbaren Steuerung in ein Netzliste umgesetzt wird.
20. Verfahren nach Anspruch 16, daß bei Klammeraufrufen im STEP5-Programm eine weitere Logikteilschaltung in der bitorientierten Steuerung begonnen wird und diese beim Schließen der Klammer zu der vorangehenden Logikteilschaltung hinzugefügt wird.
21. Verfahren nach Anspruch 17, dadurch gekennzeichnet, daß in der bitorientierten Steuerung die Struktur nach Setzen (S), Rücksetzen (R) oder Zuweisen (=) erneut verwendet wird.
DE1997151439 1997-11-20 1997-11-20 Programmierbare Steuerung mit anwendungsspezifischer Hartverdrahtung Withdrawn DE19751439A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE1997151439 DE19751439A1 (de) 1997-11-20 1997-11-20 Programmierbare Steuerung mit anwendungsspezifischer Hartverdrahtung

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE1997151439 DE19751439A1 (de) 1997-11-20 1997-11-20 Programmierbare Steuerung mit anwendungsspezifischer Hartverdrahtung

Publications (1)

Publication Number Publication Date
DE19751439A1 true DE19751439A1 (de) 1999-06-02

Family

ID=7849306

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1997151439 Withdrawn DE19751439A1 (de) 1997-11-20 1997-11-20 Programmierbare Steuerung mit anwendungsspezifischer Hartverdrahtung

Country Status (1)

Country Link
DE (1) DE19751439A1 (de)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10330458A1 (de) * 2003-07-05 2005-02-10 Staedtler + Uhl Kg Steuervorrichtung zur Steuerung von Blas- und/oder Saugintervallen zur Reinigung einer Garnitur einer textilen Kämm-Maschine
WO2006131317A1 (de) * 2005-06-07 2006-12-14 Contec Steuerungstechnik & Automation Gmbh Speicherprogrammierbare steuerung
EP1967920A1 (de) * 2007-03-07 2008-09-10 Siemens Aktiengesellschaft Verfahren zur Durchführung von Softwareupdates in FPGA-basierte Automatisierungsgeräte

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10330458A1 (de) * 2003-07-05 2005-02-10 Staedtler + Uhl Kg Steuervorrichtung zur Steuerung von Blas- und/oder Saugintervallen zur Reinigung einer Garnitur einer textilen Kämm-Maschine
WO2006131317A1 (de) * 2005-06-07 2006-12-14 Contec Steuerungstechnik & Automation Gmbh Speicherprogrammierbare steuerung
EP1967920A1 (de) * 2007-03-07 2008-09-10 Siemens Aktiengesellschaft Verfahren zur Durchführung von Softwareupdates in FPGA-basierte Automatisierungsgeräte

Similar Documents

Publication Publication Date Title
DE3300260C2 (de)
DE3783072T2 (de) Zusatzprozessorarchitektur.
DE3300261C2 (de)
EP1329816B1 (de) Verfahren zum selbständigen dynamischen Umladen von Datenflussprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o.dgl.)
DE69634824T2 (de) Integrierte schaltungstestanordnung mit paralleler ansteuerung
DE69019670T2 (de) Verzögerungsmessschaltung.
DE19882486B4 (de) Synchroner, nicht-flüchtiger Seitenmodus-Speicher
DE3750705T2 (de) Programmierbare, logische Kontrolleinrichtung.
DE3752017T2 (de) Mikrorechner mit Zugriffsfähigkeit auf einen internen Speicher mit gewünschter variabler Zugriffszeit
DE69428634T2 (de) Hardware-Anordnung und Verfahren zur Ausdehnung der Datenverarbeitungszeit in den Fliessbandstufen eines Mikrorechnersystems
DE2714268A1 (de) Schaltungsanordnung zur steuerung von werkzeugmaschinen
DE2359258A1 (de) Echtzeitsteuerungsanordnung fuer eine simulationsvorrichtung
DE69107476T2 (de) Vorrichtung für eine in-circuit-prüfung mit einem minimalspeicher.
DE19814415A1 (de) Logikanalyse-Untersystem in einem Zeitscheibenemulator
DE3752280T2 (de) Mustergenerator
DE3508640A1 (de) Computersystem zur implementierung eines ereignisgesteuerten simulationsalgorithmus
DE4024594C2 (de)
DE69130513T2 (de) Verfahren zur Durchführung boolescher Operationen zwischen zwei beliebigen Bits von zwei beliebigen Registern
DE3587446T2 (de) Signalverarbeitungsprozessor und hierarchische Multiverarbeitungstruktur mit mindestens einem solchen Prozessor.
EP0134831A1 (de) Einrichtung im Befehlswerk eines Fliessbandprozessors zur Befehlsunterbrechung und -wiederholung
EP0218280A2 (de) Datenverarbeitungsanordnung
DE4005042A1 (de) Architektur eines digitalen bewegungssteuerungselements hoher geschwindigkeit
EP1116129B1 (de) Konfigurierbarer hardware-block
DE19751439A1 (de) Programmierbare Steuerung mit anwendungsspezifischer Hartverdrahtung
DE10110567B4 (de) Datenverarbeitungssystem mit einstellbaren Takten für unterteilte synchrone Schnittstellen

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8122 Nonbinding interest in granting licenses declared
8139 Disposal/non-payment of the annual fee