DE3818097C2 - - Google Patents
Info
- Publication number
- DE3818097C2 DE3818097C2 DE3818097A DE3818097A DE3818097C2 DE 3818097 C2 DE3818097 C2 DE 3818097C2 DE 3818097 A DE3818097 A DE 3818097A DE 3818097 A DE3818097 A DE 3818097A DE 3818097 C2 DE3818097 C2 DE 3818097C2
- Authority
- DE
- Germany
- Prior art keywords
- time
- memory
- input
- data
- change
- 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.)
- Expired - Lifetime
Links
- 238000005070 sampling Methods 0.000 claims description 6
- 125000004122 cyclic group Chemical group 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 23
- 238000010200 validation analysis Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 5
- 238000005259 measurement Methods 0.000 description 4
- 238000000034 method Methods 0.000 description 4
- 239000003550 marker Substances 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K5/00—Manipulating of pulses not covered by one of the other main groups of this subclass
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/76—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
- G06F7/78—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data for changing the order of data flow, e.g. matrix transposition or LIFO buffers; Overflow or underflow handling therefor
- G06F7/785—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data for changing the order of data flow, e.g. matrix transposition or LIFO buffers; Overflow or underflow handling therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using a RAM
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/12—Group selection circuits, e.g. for memory block selection, chip selection, array selection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Nonlinear Science (AREA)
- Programmable Controllers (AREA)
- Electronic Switches (AREA)
- Time-Division Multiplex Systems (AREA)
- Inverter Devices (AREA)
Description
Die Erfindung betrifft eine Impulseingabevorrichtung
nach dem Oberbegriff des Patentanspruches 1.
Eine ähnliche Impulseingabevorrichtung ist aus der US-PS 42 22 103 bekannt.
Ein automatisches Steuerungssystem wird beispielsweise
in einem Kraftfahrzeug verwendet, um die verschiedenen
Komponenten des Kraftfahrzeuges abhängig von Datengrößen
zu steuern, welche die sich mit der Zeit ändernden
Betriebszustände dieser Komponenten darstellen. Das
heißt, Sensoren, die in dem Kraftfahrzeug vorgesehen
sind, erfassen die Betriebszustände der Komponenten
und erzeugen diese Zustände wiedergebende Signale. Wenn
sich damit die Betriebszustände der Komponenten ändern,
verändern sich auch die durch die Sensoren ausgegebenen
Signale. Die Größen der Zeitdaten, welche die Zeiten darstellen,
zu denen sich die Betriebszustände ändern, werden
in die Zentraleinheit des automatischen Steuerungssystems
eingegeben. Eine Impulseingabevorrichtung wird
verwendet, um derartige Zeitdatengrößen in die Zentraleinheit
einzuspeisen. Impulseingabevorrichtungen werden
in verschiedenen Steuerungssystemen verwendet, die zur
Steuerung einer Vielzahl von Maschinen ausgelegt sind.
So ist beispielsweise eine Impulseingabevorrichtung in
der bereits erwähnten US-PS 42 22 103 beschrieben. Wie in Fig. 23 gezeigt ist,
hat diese Vorrichtung einen Zeitgeberzähler
1203 und Register 1204 bis 1209. Der Zeitgeberzähler 1203
mißt die Zeit und liefert Daten, welche die vorliegende
oder Ist-Zeit darstellen. Die Register 1204 bis 1209
werden verwendet, um die Größen der Daten zu speichern,
welche die Zeiten wiedergeben, zu denen sind die in
die Vorrichtung eingegebenen Signale geändert haben.
Das heißt, jedes dieser Register 1204 bis 1209 speichert die Zeitdaten,
die der Zeitgeberzähler 1203 in dem Augenblick
ausgibt, in welchem das Register ein Triggersignal
empfängt, das erzeugt wird, wenn sich das in die Vorrichtung
eingegebene Signal ändert. Jedes Register
kann derartige Zeitdaten ohne jegliche Unterbrechung
des Rechnerprogrammes speichern, das für die automatische
Steuerung einer Maschine abläuft. Wenn beispielsweise
Daten "0100", die wiedergeben, daß sich das Eingangssignal
geändert hat, in einem anderen Register
1210 gespeichert sind, führen logische Gatter 1212
bis 1219 logische Operationen an diesen Daten und dem
Eingangssignal aus, wodurch Triggersignale zu den Registern
1204 bis 1209 zu den Zeiten gespeist sind,
in denen das Eingangssignal seinen Pegel geändert hat,
wie dies aus der Fig. 24 zu ersehen ist. Abhängig von
den Triggersignalen speichert und hält jedes der Register
1204 bis 1209 den Zählwert des Zeitgeberzählers
1203. Die Daten, die die Zahl des Kanales darstellen,
auf welchem das Eingangssignal übertragen wurde, werden
in einem Register 1211 gespeichert.
Der Betrieb dieser Impulseingabevorrichtung wird anhand
des Flußdiagrammes von Fig. 25 näher erläutert. Eine
Operationssequenz wird abhängig von einem Unterbrechungssignal
für jeden Kanal wiederholt. Die Sequenz
besteht aus dem Analysieren eines Unterbrechungsfaktors,
dem Lesen der Zeit, dem Einstellen des nächsten Unterbrechungsfaktors
und dem Warten auf die nächste Unterbrechung.
Das heißt, in einer Operationssequenz 1 werden
die Unterbrechungsfaktoren für alle Kanäle so eingestellt,
daß alle Kanäle auf ein Unterbrechungssignal
warten. In einer Operationssequenz 2 wird, wenn ein
Unterbrechungssignal erzeugt ist, der Unterbrechungsfaktor
analysiert und zu der Zeit, zu der sich das im
ersten Kanal übertragene Eingangssignal geändert hat,
aus dem Register 1206 ausgelesen, und schließlich wird
der nächste Unterbrechungsfaktor auf "0" gesetzt. Dann
wartet der durch den Unterbrechungsfaktor so festgelegte
Kanal auf ein Unterbrechungssignal. Fünf andere
Folgen oder Sequenzen von ähnlichen Operationen werden
durchgeführt, wodurch die Datengrößen, die die Zeiten
darstellen, zu denen sich die in den anderen fünf Kanälen
übertragenen Eingangssignale geändert haben, aus
den Registern 1204, 1295, 1207, 1208 und 1209 ausgelesen werden.
Um diese ähnlichen Sequenzen von Operationen durchzuführen,
muß die Zentraleinheit wiederholt auf ein Unterbrechungssignal
warten und einen nächsten oder folgenden
Unterbrechungsfaktor einstellen. Die in der US-
PS 42 22 103 beschriebene Impulseingabevorrichtung
kann lediglich eine Datengröße aufzeichnen, welche
die Zeit darstellt, zu der sich das in jedem Kanal übertragene
Eingangssignal geändert hat. Wenn daher das
Eingangssignal eine komplexe Wellenform hat, so wird
die Zentraleinheit oft unterbrochen. Als Folge nimmt
die Last auf der Zentraleinheit zu, und die Fähigkeit
des Steuerungssystems als Ganzes wird vermindert.
Eine andere Art einer Impulseingabevorrichtung ist in
der US-PS 42 59 719 und der US-PS 42 83 761 beschrieben.
Diese Impulseingabevorrichtung hat einen FIFO-
Stapel (FIFO=Zuerst-Ein, Zuerst-Aus). Ein Triggersignal
wird erzeugt, wenn erfaßt wird, daß sich das
Eingangssignal ändert. Abhängig von dem Triggersignal
werden Daten, die die vorliegende oder Ist-Zeit darstellen,
und Daten, die die Änderung im Betriebszustand
einer Vorrichtung darstellen, geliefert. Die
Datengrößen, die die Änderungen des Betriebszustandes
darstellen, werden im FIFO-Stapel in der Reihenfolge
gespeichert, in welcher die Zustandsänderungen aufgetreten
sind. Wenn angenommen wird, daß die ersten
Daten, die eine Phasendifferenz darstellen, und die
zweiten Daten, die die auf die Phasendifferenz bezogene
Impulsbreite darstellen, im FIFO-Stapel gespeichert
sind, dann ist es erforderlich, alle Datengrößen
aus dem FIFO-Stapel auszulesen, um nach den zweiten
Daten entsprechend den ersten Daten zu suchen. Weiterhin
muß eine Analyseroutine ausgeführt werden, um
alle Datengrößen aus dem FIFO-Stapel zu lesen und die
so aus dem FIFO-Stapel ausgelesenen Datengrößen anschließend
zu klassifizieren. Somit muß die Zentraleinheit,
an die die Impulseingabevorrichtung die Zeitdatengrößen
liefert, alle Operationen ausführen, die
erforderlich sind, um aufgrund der im FIFO-Stapel gespeicherten
Datengrößen die Zeit von jeder Änderung
im Betriebszustand festzulegen.
Wenn, wie oben erläutert wurde, die herkömmliche Impulseingabevorrichtung
zum Eingeben von Zeitdatengrößen
an eine Zentraleinheit so verwendet wird, daß
diese Einheit die komplexe Wellenform eines Signales
bestimmt, welches die Änderungen im Betriebszustand
einer Vorrichtung zeigt, so muß der Betrieb der Zentraleinheit oft
unterbrochen werden, oder sie muß eine Analyseroutine
ausführen. Offenbar ist die an die Zentraleinheit gestellte
Anforderung groß, und die Fähigkeit eines
die Zentraleinheit verwendenden automatischen Steuerungssystems
ist zwangsläufig beschränkt.
Es ist daher Aufgabe der vorliegenden Erfindung, eine
Impulseingabevorrichtung zu schaffen, die die Änderungen
externer Signale ohne große Belastung einer
Zentraleinheit festlegen kann, selbst wenn für externe
Signale komplexe Meßbedingungen gesetzt sind.
Diese Aufgabe wird bei einer Impulseingabevorrichtung
nach dem Oberbegriff des Patentanspruches 1
erfindungsgemäß durch die in dessen jeweiligem kennzeichnendem
Teil enthaltenen Merkmale gelöst.
Vorteilhafte Weiterbildungen der Erfindung sind in den
Patentansprüchen 2 bis 10 angegeben.
Es ist also eine Impulseingabevorrichtung
mit einem Zeitgeberzähler, einer Eingangsstufe,
einem Eingangsspeicher, einem Befehlsspeicher und
einer Folgesteuerungseinheit vorgesehen. Der Zeitgeberzähler
zählt vorbestimmte Taktimpulse und erzeugt
Bezugszeitdaten. Die Eingangsstufe tastet ein Eingangssignal
jedes Kanales snychron mit Taktimpulsen
entsprechend den Bezugszeitdaten ab. Der Eingangsspeicher
speichert die Komponenten des Signales, das durch
die Eingangsstufe synchron mit den Taktimpulsen entsprechend
den Bezugszeitdaten abgetastet wurde, an
den Adressen des Eingangsspeichers, die durch die Bezugszeitdaten
bezeichnet sind. Der Eingangsspeicher
setzt auch alle abgetasteten Komponenten des Signales
jedes Kanales, die gespeichert wurden, in einen Code
um, der die Zeit darstellt, zu der sich das Eingangssignal
geändert hat. Der Befehlsspeicher speichert Befehle
zum Aufzeichnen der die Art der Änderung im Eingangssignal
darstellenden Datengrößen und auch der
Datengröße, die die Zeit wiedergibt, zu der die Änderung
aufgetreten ist. Die Folgesteuerungseinheit
empfängt die sequentiell aus dem Befehlsspeicher gelesenen
Befehle derart, daß alle Befehle ausgeführt
werden, bevor Datengrößen in allen Adressen des Eingangsspeichers
gespeichert sind. Wann immer ein Befehl
zum Aufzeichnen der Zeit einer vorbestimmten Änderung im
Eingangssignal an die Folgesteuerungseinheit
abgegeben wird, liest die Folgesteuerungseinheit den
Code aus dem Eingangsspeicher, der die Zeit der Änderung
des Eingangssignales darstellt, und empfängt den
Zählwert des Zeitgeberzählers, welcher die vorliegende
oder Ist-Zeit wiedergibt. Die Folgesteuerungseinheit
bestimmt die Zeit der Zustandsänderung des
bezeichneten Kanales aufgrund des Codes und der vorliegenden
Zeit und fügt dann die die so bestimmte Zeit
darstellenden Daten zu dem Befehl zum Aufzeichnen der
Zeit hinzu.
Die Komponenten eines Eingangssignales entsprechend
einem bestimmten Kanal, die durch die Eingangsstufe
abgetastet wurden, werden in den Eingangsspeicher
synchron mit den Impulsen des durch den Zeitgeberzähler
erzeugten Bezugstaktsignales sequentiell geschrieben.
Der Code, der die Zeit der Änderung des Eingangssignales
darstellt, wird aus dem Eingangsspeicher ausgelesen.
Das Lesen des Codes aus dem Eingangsspeicher
wird unabhängig vom Schreiben der abgetasteten Signalkomponenten
in diesen ausgeführt. Daher kann eine
Vielzahl von Meßzuständen für irgendeinen Kanal gesetzt
werden. Überdies werden die abgetasteten Komponenten
eines Signales, die im Eingangsspeicher gespeichert
wurden, in den Code umgesetzt, der die Zeit
darstellt, zu der sich das Eingangssignal geändert
hat. Somit kann die Zeit der Änderung aus dem Eingangsspeicher
durch lediglich einmaligen Zugriff zum
Eingangsspeicher ausgelesen werden.
Wie oben erläutert wurde, liest die Folgesteuerungseinheit
aus dem Befehlsspeicher den Befehl zum Aufzeichnen
der Art und Zeit einer spezifischen Änderung
im Eingangssignal, um die Ausführung dieses Befehles abzuschließen,
bevor abgetastete Eingangssignalkomponenten
an allen Adressen des Eingangsspeichers
gespeichert sind. Somit kompensiert die
Folgesteuerungseinheit die Zeit der spezifischen Änderung
des Eingangssignales in einem bestimmten Kanal aufgrund
der durch den Zählwert des Zeitgeberzählers dargestellten
vorliegenden Zeit und fügt die die kompensierte
Zeit zeigenden Daten zu dem entsprechenden, aus dem Befehlsspeicher
ausgelesenen Befehl hinzu, bevor die abgetasteten
Eingangssignalkomponenten in alle Adressen des Eingangsspeichers
geschrieben sind.
Da die Komponenten eines Signales irgendeines spezifischen
Kanales sequentiell im Eingangsspeicher gespeichert
sind und die Folgesteuerungseinheit die Zeit irgendeiner
spezifischen Änderung des Eingangssignales in dem Kanal
entsprechend einem aus dem Befehlsspeicher ausgelesenen
Befehl bestimmt und dann die die bestimmte Zeit darstellenden
Daten zu dem entsprechenden Befehl beifügt und
den Befehl mit den Zeitdaten im Befehlsspeicher abspeichern
läßt, braucht die Zentraleinheit nicht oft
unterbrochen zu werden, selbst wenn ein Signal mit einer
komplexen Wellenform von einem Sensor erzeugt wird. Da
zusätzlich der die Zeit der Änderung des Eingangssignales
darstellende Code aus dem Eingangsspeicher durch
lediglich einmaligen Zugriff zum Eingangsspeicher gelesen
werden kann und die Folgesteuerungseinheit die
Zeit der Änderung bestimmt, braucht die Zentraleinheit
nicht eine Spezialunterroutine, wie beispielsweise eine
Analyseroutine zum Auswählen notwendiger Datengrößen,
auszuführen.
Nachfolgend wird die Erfindung anhand der Zeichnung
näher erläutert. Es zeigt
Fig. 1 ein Blockschaltbild einer Impulseingabevorrichtung
nach einem Ausführungsbeispiel der vorliegenden Erfindung,
Fig. 2 ein Blockschaltbild mit dem Zeitgeberzähler,
der in der in Fig. 1 dargestellten Impulseingabevorrichtung
enthalten ist,
Fig. 3 ein Zeitdiagramm von in den Zeitgeberzähler
eingespeisten und von diesem ausgegebenen
Signalen,
Fig. 4 ein Blockschaltbild von einer Eingangsstufe,
die in der in Fig. 1 gezeigten Vorrichtung verwendet
ist,
Fig. 5 ein Schaltbild eines von identischen Differenziergliedern,
die in der in Fig. 4 gezeigten
Eingangsstufe enthalten sind,
Fig. 6 und 7 Zeitdiagramme von in verschiedene
Komponenten des in Fig. 5 gezeigten
Differenziergliedes eingespeisten und von diesem
ausgegebenen Signalen,
Fig. 8 ein Blockschaltbild eines Eingangsspeichers,
der in der in Fig. 1 gezeigten Vorrichtung
enthalten ist,
Fig. 9 ein Schaltbild einer Speicherzelle des in Fig. 8 gezeigten Eingangsspeichers,
Fig. 10 ein Diagramm zur Erläuterung des Betriebs des
Eingangsspeichers,
Fig. 11 und 12 Formate verschiedener Befehle,
Fig. 13 ein Diagramm zur Erläuterung von Funktionen
der Befehle,
Fig. 14 eine Tabelle mit verschiedenen Befehlen und
den Adressen des Befehlsspeichers, der diese
Befehle speichert,
Fig. 15 ein Blockschaltbild der Folgesteuerungseinheit,
die in der in Fig. 1 gezeigten Impulseingabevorrichtung
verwendet wird,
Fig. 16 ein Diagramm zur Erläuterung der
durch eine in der Folgesteuerungseinheit
enthaltenen Kompensationsschaltung ausgeführten
Funktion,
Fig. 17 ein Blockschaltbild von der in der Folgesteuerungseinheit
verwendeten Kompensationsschaltung,
Fig. 18 ein Diagramm einer Gültigkeitsprüfschaltung,
die in der Folgesteuerungseinheit
enthalten ist,
Fig. 19 ein Blockschaltbild der Gültigkeitsprüfschaltung,
Fig. 20 ein Blockschaltbild des Befehlsspeichers,
Fig. 21 ein Zeitdiagramm mit den in den Befehlsspeicher
eingegebenen Befehlen,
Fig. 22A bis 22F Flußdiagramme zur Erläuterung des
Betriebs der Folgesteuerungseinheit, und
Fig. 23 bis 25 Diagramme zur Erläuterung einer herkömmlichen
Impulseingabevorrichtung.
Fig. 1 ist ein Blockschaltbild, das eine Impulseingabevorrichtung
1 nach der vorliegenden Erfindung zeigt. Wie
aus dieser Fig. 1 zu ersehen ist, ist die Impulseingabevorrichtung
1 durch einen Bus 2 mit einer Zentraleinheit
(CPU) 3 verbunden.
Die Impulseingabevorrichtung 1 umfaßt einen Zeitgeberzähler
4, eine Eingangsstufe 6, einen Eingangsspeicher
7, eine Folgesteuerungseinheit 8 und einen Befehlsspeicher
9. Der Zeitgeberzähler 4 erzeugt ein Bezugstaktsignal,
und sein Ausgangsanschluß ist an Takteingangsanschlüsse
der Eingangsstufe 6, des Eingangsspeichers
7 und der Folgesteuerungseinheit 8 angeschlossen.
Die Folgesteuerungseinheit 8 ist mit dem Befehlsspeicher
9 verbunden.
Die Eingangsstufe 6 tastet die Vorderflanke und die
Rückflanke des in einen Eingangsanschluß 5 eingegebenen
Signales synchron mit den Impulsen des durch den
Zeitgeberzähler 4 gelieferten Bezugstaktsignales ab.
Der Eingangsspeicher 7 speichert die abgetasteten
Komponenten des Eingangssignales, die durch die Eingangsstufe
6 abgetastet wurden, synchron mit den Impulsen
des vom Zeitgeberzähler 4 gelieferten Bezugstaktsignales.
Die Folgesteuerungseinheit 8 liest aus dem Eingangsspeicher
7 den Code, der die Zeit wiedergibt, zu
der sich ein Eingangssignal geändert hat, gemäß dem
durch die Zentraleinheit 3 festgelegten und aus dem
Befehlsspeicher 9 ausgelesenen Befehl, und fügt dann
diesen Code dem durch die Zentraleinheit 3 festgelegten
Befehl bei und bewirkt, daß dieser im Befehlsspeicher
9 gespeichert wird.
Der Zeitgeberzähler 4 wird durch Impulse aufwärts gezählt,
die durch Teilen der Frequenz eines Systemtaktsignales
SCK durch einen Faktor 6 erhalten sind,
und erzeugt ein 24-Bit-(TO₀-TO₂₃)-Zeitgeberausgangssignal,
d. h., Bezugszeitdaten (die vorliegende oder
Ist-Zeit) und ebenfalls Steuerimpulse TWP, TCL, TWR und
SMPL, wie dies in der Fig. 2 und teilweise in der Fig. 3 gezeigt ist. Der
Impuls TWP wird immer dann erzeugt, wenn das Zeitgeberausgangssignal
(TO₀-TO₂₃) 16mal erneuert ist, und
er ist auf einem hohen Pegel während eines Zeitintervalles
entsprechend dem EIN-Taktzyklus des Systemtaktsignales
SCK. Der Impuls TCL ist ein Signal zum Bestimmen
einer Zeitsteuerung für ein Verriegeln des Zeitgebersignales
(TO₀-TO₂₃) in der Folgesteuerungseinheit 8.
Der Impuls TWR ist ein Schreibimpuls für den Eingangsspeicher
7. Der Impuls SMPL ist ein Abtastimpuls für
die Eingangsstufe 6.
Wie aus Fig. 4 zu ersehen ist, hat die Eingangsstufe 6
vier Eingangskanäle CH₀ bis CH₃. Vier Differentialschaltungen
bzw. Differenzierglieder 11a bis 11d werden jeweils für die Kanäle CH₀
bis CH₃ verwendet. Diese Differentialschaltungen haben alle
die gleiche Struktur. Die Differentialschaltung für den
Kanal CH₀ wird beispielsweise anhand der Fig. 5 erläutert.
Wie in Fig. 5 gezeigt ist, wird das zu einem Eingangsanschluß
5a gespeiste Eingangssignal in ein stabiles
Binärsignal mittels eines Eingangspuffers 21 mit
Hysteresekennlinie bzw. -eigenschaft umgewandelt. Das
Binärsignal wird in D-Flipflops 22 und 23 eingespeist.
Jedes D-Flipflop hält das Binärsignal abhängig von dem
in seinem Takteingang zu seinem Takteingangsanschluß
CK gespeisten Impuls SMPL und liefert zwei Signale
Q und von seinem Q- und -Anschluß. Das durch das
Flipflop 22 ausgegebene Signal Q und das durch das
Flipflop 23 gelieferte Signal , die eine Phasendifferenz
eines Taktzyklus des Impulses SMPL haben, werden
durch das UND-Gatter 24 getastet. In ähnlicher Weise
wird das Signal , das durch das Flipflop 22 ausgegeben
ist, und das Signal Q, das vom Flipflop 23 geliefert
ist, die eine Phasendifferenz eines Taktzyklus des
Impulses SMPL haben, durch ein UND-Gatter 25 getastet.
Somit liefert das UND-Gatter 24 einen Differentialimpuls,
der die Vorderflanke (Anstiegsflanke) des
Eingangssignales darstellt, während das UND-Gatter 25
einen Differentialimpuls abgibt, der die Rückflanke
(Abfallflanke) des Eingangssignales zeigt. Diese
Differentialimpulse werden durch jeweils Ausgangsverriegelungsschaltungen
26 bis 27 verriegelt. Abhängig
von dem TWR-Impuls speisen die Ausgangsverriegelungsschaltungen
26 und 27 die Differentialimpulse
zu dem Eingangsspeicher 7. Die Differentialimpulse werden
in den Eingangsspeicher 7 als Datengrößen DI 0 und
DI 1 geschrieben. Beide Verriegelungsschaltungen 26
und 27 werden bei der Rückflanke dses TWR-Impulses
gelöscht.
Fig. 6 ist ein Zeitdiagramm, das die Wellenformen der
Signale, die in der in Fig. 5 gezeigten Differentialschaltung
11a erzeugt werden, und auch die Wellenformen
des Eingangssignales und Abtastimpulses SMPL zeigt.
Wie aus diesem Zeitdiagramm zu ersehen ist, eilen die
Vorderflanke und die Rückflanke des Eingangssignales
dem Abtastimpuls SMPL um höchstens einen Taktzyklus
nach. Um den Einfluß dieser Zeitverzögerung auszuschließen,
beträgt der Taktzyklus des Abtastimpulses
SMPL ein Drittel des Taktzyklus des Schreibimpulses
TWR, wie dies in Fig. 7 gezeigt ist. Damit
ist der Impuls, der die Änderung darstellt, die während
einer Periode aufgetreten ist, im Zeitpunkt
verriegelt; der Impuls, der die Änderung zeigt, die
während der Periode aufgetreten ist, ist im Zeitpunkt
verriegelt; schließlich ist der Impuls, der die
Änderung darstellt, die während der Periode eingetreten
ist, im Zeitpunkt verriegelt. Die so verriegelten
Impulse werden in den Eingangsspeicher 7 während
einer Periode geschrieben. Somit ist aus Fig. 7
zu ersehen, daß der Impuls, der irgendeine Änderung
zeigt, die während der Periode b aufgetreten ist, in
den Speicher 7 während der Periode geschrieben
wird, und daß der Impuls, der irgendeine Änderung zeigt,
die während einer Periode c aufgetreten ist, in
den Speicher 7 während einer Periode geschrieben wird.
Wie aus der Fig. 8 zu ersehen ist, umfaßt der Eingangsspeicher
7 einen Orthogonal-RAM 31, einen Auslesedecodierer
32, einen Einschreibdecodierer 33 und einen Auslesecodierer
34. Der Orthogonal-RAM 31 hat eine Speicherkapazität
von 8×16 Bits. Das heißt, er kann 16 Wörter
speichern, deren jedes 8-Bit-Paralleldaten sind. Der
Orthogonal-RAM 31 hat Speicherzellen, von denen eine
in Fig. 9 gezeigt ist. Wie aus dieser Fig. 9 zu ersehen
ist, umfaßt jede Speicherzelle ein 1-Bit-Speicherelement
und Transistoren 47 bis 50. Das Speicherelement umfaßt
zwei Inverter 41 und 42 und ist mit einer Einschreib-
Bitleitung 43 durch einen Transistor 47, mit einer
Einschreib-Wortleitung 44 durch einen Transistor 48,
mit einer Auslese-Bitleitung 45 durch einen Transistor
49 und mit einer Auslese-Wortleitung 46 durch einen
Transistor 50 verbunden. Die Einschreib-Bitleitungen
43 schneiden die Auslese-Bitleitungen 45 unter rechten
Winkeln, und die Einschreib-Wortleitungen 44 schneiden
die Auslese-Wortleitungen 46 unter rechten Winkeln.
Das heißt, die Einschreibrichtung des RAM 31 ist
orthogonal zu dessen Ausleserichtung.
Es wird im folgenden anhand der Fig. 8 und 10 erläutert,
wie Daten in den Orthogonal-RAM 31 eingeschrieben und
aus diesem ausgelesen werden. Die von der Eingangsstufe
6 ausgegebenen 8-Bit-Paralleldaten 51 (4 Kanäle
× 2 Bit) werden in den RAM 31 synchron mit einem vom
Zeitgeberzähler 4 gelieferten Impuls TWR geschrieben,
wie dies durch ein Bezugszeichen 52 angedeutet ist,
wenn eine durch untere 4 Bits (TO₀-TO₃) dargestellte
Einschreibadresse WRADRS durch den Einschreibdecodierer
33 gewählt ist. Wenn das Eingangssignal für jeden Kanal
im RAM 31 gespeichert wird, werden der Vorderflankenteil
und der Rückflankenteil getrennt im RAM 31 gespeichert.
Wenn daher das gespeicherte Eingangssignal
später verarbeitet wird, so ist der Schritt zum
Trennen des Eingangssignales in zwei Komponenten nicht
notwendig. Demgemäß kann die Eingabevorrichtung ohne
eine spezifische Schaltung eine Vielzahl von Zuständen
in einem einzigen Kanal auswerten.
Um Daten aus dem Orthogonal-RAM 31 auszulesen, decodiert
der Auslesedecodierer 32 die 3-Bit-Ausleseadresse RADRS,
die von der Folgesteuerungseinheit 8 in den Eingangsspeicher
7 eingegeben ist. Die an dieser Adresse gespeicherten
Daten werden aus dem RAM 31 abhängig von
einem Lesesignal RD ausgelesen, das in den Decodierer
32 von der Folgesteuerungseinheit 8 eingegeben ist. Wie
aus den obigen Einschreib- und Ausleseoperationen zu
ersehen ist, ist die Richtung, in der Daten in den RAM
31 geschrieben werden, orthogonal zu derjenigen, in
welcher die im RAM 31 gespeicherten Daten aus dem RAM
31 ausgelesen werden.
Vom RAM 31 ausgegebene Daten 54 sind zeitserielle Daten
aus 16 Bits entsprechend 16 abgetasteten Komponenten
eines Eingangsdatenwertes DIn (n = 0 bis 7). Wenn diese
16-Bit-Zeitseriendaten eine Datengröße umfassen, die
den Augenblick darstellt, in dem sich das Eingangssignal
geändert hat, so zeigt die Datengröße eine binäre "1"
an. Dieser Datenwert wird in 4-Bitdaten TWT 55 und ein
GÜLTIG-Signal (VALID-Signal) mittels des Auslesecodierers
34 codiert. Wenn die 16-Bitdaten 35 aus dem Orthogonal-
Speicher 31 ausgelesen sind, werden sie in die
4-Bitdaten 55 codiert. Das heißt, die 4-Bit-TWT-Daten
sind ein Code, der durch Codieren der 16-Bitdaten einschließlich
wenigstens einer Datengröße "1" erhalten
wird und die Zeit darstellt, zu der sich das Eingangssignal
geändert hat. Wenn die 16-Bitdaten wenigstens
1 Bit umfassen, das eine "1" darstellt, so liefert der
Auslesecodierer 34 ein GÜLTIG-Signal einer logischen
"1". Wenn die 16-Bitdaten nur aus "0"-Bits bestehen,
so zeigen sie an, daß sich das Eingangssignal nicht
geändert hat, während das Eingangssignal 16mal abgetastet
wurde. Wenn dies der Fall ist, so liefert der
Auslesecodierer 34 ein GÜLTIG-Signal einer logischen
"0".
Der Eingangsspeicher 7 hat eine Speicherkapazität von
16 Bits, wobei in der Richtung der Zeitachse (Zeilenrichtung
in Fig. 10) dieses Speichers die abgetasteten
Signalkomponenten des Eingangssignales sequentiell in
diesen eingeschrieben sind. Der Eingangsspeicher 7
kann daher Daten speichern, die die Änderungen darstellen,
welche aufgetreten sind, während das Zeitgeberausgangssignal
(TO₀-TO₂₃) 16mal erneuert wurde. Durch
16maliges Erneuern des Zeitgeberausgangssignals
kann die
Impulseingabevorrichtung alle im Befehlsspeicher 9 gespeicherten
Befehle korrekt
ausführen und die Zeit bestimmen, zu der sich
das Eingangssignal geändert hat.
Die Befehle, die die Folgesteuerungseinheit 8 ausführt,
werden im folgenden erläutert. Der Befehlsspeicher 9
speichert drei Arten von Befehlen, d. h. einen NOP-Befehl,
einen EDGE-Befehl und einen WIDTH-Befehl. Der
NOP-Befehl ist ein Befehl, der aus einer Einheit
gebildet ist. Der EDGE-Befehl ist ebenfalls ein
Befehl, der aus einer Einheit besteht. Der
WIDTH-Befehl ist ein Doppelbefehl, der aus zwei Einheiten
besteht. Die Befehlseinheit besteht aus zwei Wörtern,
deren jedes aus zwei Bytes gebildet ist. Damit umfaßt
die Befehlseinheit 32 Bits. Wie in Fig. 11 gezeigt ist,
besteht die Einheit aus einem 2-Bit-INST-Abschnitt,
einem 6-Bit-MODE-Abschnitt und einem 24-Bit-T-Abschnitt.
Der INST-Abschnitt identifiziert die Art des Befehles.
Wenn der INST-Abschnitt den Wert "00" hat, so gibt er
einen NOP-Befehl an. Wenn er den Wert "01" hat, so
stellt er einen EDGE-Befehl dar. Wenn er "10" oder "11"
ist, dann stellt er einen WIDTH-Befehl dar. Der MODE-
Abschnitt wird verwendet, um Zustände zum Messen der
Zeit zu bezeichnen, beispielsweise um die Vorderflanke
oder Rückflanke des Eingangssignales anzugeben. Der
T-Abschnitt wird zum Schreiben der Zeit, zu der sich
das Eingangssignal geändert hat, mittels der Folgesteuerungseinheit
8 verwendet. Das heißt, da der T-Abschnitt
durch die Folgesteuerungseinheit 8 eingeschrieben
wird, braucht die Zentraleinheit 3 nicht Daten zu
schreiben, die im T-Abschnitt des Befehles enthalten
sind. Was immer für Daten in den T-Abschnitt
geschrieben wurden, bevor der Befehl ausgeführt wird,
die Folgesteuerungseinheit 8 wertet diese Daten
nicht aus.
Die Funktionen, die der NOP-Befehl, der EDGE-Befehl und
der WIDTH-Befehl ausführen, werden im folgenden erläutert:
Der NOP-Befehl unterrichtet die Folgesteuerungseinheit
8, nicht die in dem MODE-Abschnitt oder in dem T-Abschnitt
gespeicherten Daten zu verarbeiten. Der NOP-Befehl wird
verwendet, um lediglich die vakante oder leere Stelle
des Befehlsspeichers 9 zu füllen.
Die ist ein Befehl zum Bestimmen der Zeit T, zu welcher
das Eingangssignal eines gewünschten Kanales ansteigt
oder abfällt, wie dies in Fig. 13A gezeigt ist. Der
MODE-Abschnitt des EDGE-Befehles besteht aus einem
2-Bit-Kanalzahl-Unterabschnitt, einem 1-Bit-R/F-Unterabschnitt,
einem 1-Bit-STATE-Unterabschnitt, einem
1-Bit-INT-Unterabschnitt und einem 1-Bit-S/C-Unterabschnitt.
Der Kanalzahl-(CH#)-Unterabschnitt ist ein
Datenbereich zum Bezeichnen des Kanales entsprechend
dem Eingangssignal einschließlich zu erfassenden Änderungen.
DerR/F-Unterabschnitt hat den logischen Wert
von "1", wenn die Vorderflanke des Eingangssignales
erfaßt werden muß, und den logischen Wert von "0",
wenn die Rückflanke des Eingangssignales zu erfassen
ist. Der STATE-Unterabschnitt hat den logischen Wert
von "0", wenn die Zeit von irgendeiner Änderung des
Eingangssignales noch zu messen ist, und den logischen
Wert von "1", wenn diese Zeit bereits gemessen ist.
Der INT-Unterabschnitt speichert eine Flagge, welche
angibt, ob die Zentraleinheit 3 unterbrochen werden
muß oder nicht, nachdem die Zeit einer Änderung des
Eingangssignales gemessen wurde. Der S/C-Unterabschnitt
speichert eine Flagge, die den logischen Wert
von "1" hat, wenn die Zeiten der Änderungen des Eingangssignales
kontinuierlich gemessen werden müssen,
und den logischen Wert von "0", wenn die Zeit von
lediglich einer Änderung des Eingangssignales gemessen
werden muß. Der STATE-Unterabschnitt kann erneut durch
die Folgesteuerungseinheit 8 geschrieben werden, nachdem
die Zeit der Änderung des Eingangssignales gemessen
wurde. Die anderen drei Unterabschnitte des MODE-Abschnittes
können nicht erneut geschrieben werden; sie
können unverändert bleiben, nachdem sie durch die Zentraleinheit
3 einmal gesetzt wurden.
Dieser Befehl unterrichtet die Folgesteuerungseinheit 8,
einen Zeitpunkt T 1 der ersten Änderung des Eingangssignales
und auch einen Zeitpunkt T 2 der zweiten Änderung des Eingangssignales
zu bestimmen, um die Impulsbreite zu
messen, wie dies in Fig. 13B gezeigt ist, um weiterhin
den Impulszyklus zu messen, wie dies in Fig. 13C dargestellt
ist, und um schließlich die Phasendifferenz
zwischen zwei Signalen zu messen, die über zwei Kanäle
eingegeben sind. Der EDGE-Befehl besteht aus zwei
Unterbefehlen. Der erste Unterbefehl wird verwendet,
um den Zeitpunkt T 1 zu messen, und der zweite Unterbefehl
wird benutzt, um den Zeitpunkt T 2 zu messen. Der MODE-Abschnitt
des ersten Unterbefehles besteht aus einem
2-Bit-SCH#.1-Unterabschnitt, einem 1-Bit-R/E 1-Unterabschnitt,
einem 2-Bit-STATE-Unterabschnitt, einem
1-Bit-S/F-Unterabschnitt und einem 1-Bit-S/C-Unterabschnitt,
wie dies durch eine Markierung gezeigt
ist. Der MODE-Abschnitt des zweiten Unterbefehles besteht
aus einem 2-Bit-CH#.1-Unterabschnitt, einem
1-Bit-R/F. 2-Unterabschnitt und einem 1-Bit-INT-Unterabschnitt,
wie dies in einer Markierung dargestellt
ist. Der CH#.1-Unterabschnitt ist ein Datenbereich
zum Bezeichnen eines Kanales, in welchem der
erste Zeitpunkt T 1 gemessen wird. Der R/F.1-Unterabschnitt
hat den logischen Wert von "1", wenn die Vorderflanke
(Anstiegsflanke) des Eingangssignales erfaßt werden
muß, und den logischen Wert von "0", wenn die Rückflanke
(Abfallflanke) des Signales zu erfassen ist.
Das CH#.2-Segment bezeichnet den Kanal, in welchem der
zweite Zeitpunkt T 2 gemessen wird. Der R/F. 2-Unterabschnitt
hat den logischen Wert von "1", wenn die Vorderflanke
des Eingangssignales erfaßt werden muß, und den logischen
Wert von "0", wenn die Rückflanke des Eingangssignales
zu erfassen ist. Der S/C-Unterabschnitt und
der INT-Unterabschnitt sind in der Funktion zu denjenigen
des EDGE-Befehles identisch. Das heißt, der
STATE-Unterabschnitt speichert Daten "00", bevor der
Zeitpunkt einer Änderung gemessen wird, Daten "01", wenn die
Folgesteuerungseinheit 8 den ersten Unterbefehl abgeschlossen
hat, und Daten "10", wenn die Folgesteuerungseinheit
8 den zweiten Unterbefehl abgeschlossen hat. Die
Zeitpunkte T 1 und die Zeit T 2, die beide durch die Folgesteuerungseinheit
8 bestimmt sind, werden in den T-Abschnitt
des ersten Unterbefehles bzw. in den T-Abschnitt
des zweiten Unterbefehles geschrieben.
Fig. 14 ist eine Tabelle, die die in den Befehlsspeicher
9 geschriebenen Befehle zeigt, welche dazu verwendet
werden, die Änderungen in den verschiedenen Wellenformen
zu messen, welche in Fig. 24 gezeigt sind. Es genügt,
drei WIDTH-Befehle zu verwenden, um den Zyklus eines
Impulssignales, die Impulsbreite eines Impulssignales
und die Phasendifferenz zwischen zwei Impulssignalen
zu bestimmen, wie dies in Fig. 24 gezeigt ist. Damit genügen
sechs Unterbefehle zum Bestimmen der Zeiten der
Wellenformen in Fig. 24. Wenn die Zentraleinheit 3 diese
sechs Unterbefehle im Befehlsspeicher 9 speichert, ist
die Zentraleinheit 3 von der Aufgabe zum Messen der
Änderung freigegeben. Da der Befehlsspeicher 9 höchstens 16
Befehle speichern kann, sind die sechs Unterbefehle in
einer 0ten bis 11ten Adresse - des Befehlsspeichers
9 gespeichert, und die NOP-Befehle sind in den verbleibenden
Adressen, d. h. in der 12ten bis 32ten Adresse
gespeichert.
In Fig. 14 bedeutet die Markierung einen WIDTH-
Befehl zum Messen des Zyklus des Eingangssignales des
Kanales CH 0 durch Erfassen einer Zeit T 0 an der Rückflanke
eines Impulses und einer Zeit T 1 an der Rückflanke
des nächstens Impulses. Nachdem die Zeit T 0 und
die Zeit T 1 beide erfaßt wurden, unterbricht die Impulseingabevorrichtung
1 die Zentraleinheit 3. Der Befehl
bezeichnet lediglich eine Messung des Impulszyklus.
Eine Markierung bezeichnet einen WIDTH-Befehl zum
Bestimmen der Impulsbreite des Eingangssignales des
Kanales CH 1 durch Messen einer Zeit T 2 an der Vorderflanke
des Eingangssignales und einer Zeit T 3 an der
Rückflanke des Signales. Die Zentraleinheit 3 ist unterbrochen,
nachdem die Zeiten T 2 und T 3 erfaßt wurden.
Eine Markierung bezeichnet einen WIDTH-Befehl zum
Bestimmen der Phasendifferenz zwischen dem Eingangssignal
eines Kanales CH 2 und dem Eingangssignal eines
Kanales CH 3 durch Erfassen einer Zeit T 4 an der Rückflanke
des Signales des Kanales CH 2 und der Zeit T 5
an der Rückflanke des Signales des Kanales CH 3. Die
Zentraleinheit 3 ist auch unterbrochen, nachdem eine
Zeit T 4 und T 5 erfaßt wurde.
Die Folgesteuerungseinheit 8 wird im folgenden anhand
der Fig. 15 näher erläutert. Die Folgesteuerungseinheit
8 tastet den Befehlsspeicher 9 für sequentielles Auslesen
der darin gespeicherten Befehle ab. Gemäß jedem Befehl
liest die Folgesteuerungseinheit 8 Daten aus dem
Eingangsspeicher 7. Die Folgesteuerungseinheit 8 bestimmt
dann aus den Daten die Zeit der Änderung in dem
Eingangssignal und schreibt die die Zeit darstellenden
Daten in den Befehlsspeicher 9. Das Einschreiben von Daten
in den Befehlsspeicher 9. Das Einschreiben von Daten
in den Eingangsspeicher 7 und das Auslesen von Daten
aus dem Befehlsspeicher 9 werden unabhängig ausgeführt.
Durch Zusammenfassen von zwei oder mehr in dem
Befehlsspeicher 9 gespeicherten Befehlen können die im
Eingangsspeicher 7 gespeicherten Daten, die einem Kanal
oder einem Eingangsanschluß entsprechen, zum mehrfachen
Zeit-Messen verwendet werden.
Wie in Fig. 15 gezeigt ist, umfaßt die Folgesteuerungseinheit
8 einen Programmzähler (PC) 62, zwei 8-Bit-Register
(IR 0) 64 und (IR 1) 65, ein Steuerglied (CTL) 66, eine
Kompensationsschaltung 67, eine T 2-Gültigkeitsprüfschaltung
68 und ein 24-Bit-Register 70. Der Programmzähler
62 ist durch einen 4-Bit-Adreßbus 61 mit dem
Befehlsspeicher 9 verbunden, und die 8-Bit-Register
(IR 0) 64 und (IR 1) 65 sind durch einen 8-Bit-Bus 63a
mit dem Befehlsspeicher 9 verbunden. Der Programmzähler
62 erzeugt eine an den Befehlsspeicher 9 abzugebende
Ausleseadresse. Die 8-Bit-Register 64 und 65
speichern den INST-Abschnitt bzw. den MODE-Abschnitt
eines Befehles. Das Steuerglied 66 steuert jede Komponente
der Impulseingabevorrichtung 1 gemäß den in den
Registern 64 und 65 gespeicherten Befehlen. Die Kompensationsschaltung
67 empfängt die Zeitdaten, die
aus dem Eingangsspeicher 7 gelesen werden und die Zeit
der Änderung des Eingangssignales zeigen, und kompensiert
diese Zeit aufgrund der vorliegenden oder IST-Zeit.
Die T 2-Gültigkeitsprüfschaltung 68 bestimmt abhängig
von dem WIDTH-Befehl, ob die die Zeit T 2 darstellenden
Daten gültig sind oder nicht. Das 24-Bit-Register
70 speichert die kompensierten Zeitdaten zwischen,
so daß die kompensierten Zeitdaten in den T-Abschnitt
des Befehlsspeichers 9 über den 24-Bit-Datenbus 69
eingeschrieben werden.
Der Programmzähler 62 umfaßt einen 4-Bit-Zähler. Dessen
Zählwert wird um 1 weitergeschaltet, sooft ein Hochzählsignal
COUNTUP in den Zähler 62 vom Steuerglied
66 eingegeben wird. Der Zähler 62 wird durch ein Rücksetzsignal
RESET rückgesetzt. Der Übertrag von dem
höchstwertigen Bit (MSB) des Programmzählers 62 wird
durch eine 1-Bit-Verriegelungsschaltung 71 gehalten.
Nach Empfang des Übertrages liefert die Verriegelungsschaltung
71 ein Überlaufsignal OVER, das anzeigt, daß
der Zähler 62 übergelaufen ist, an das Steuerglied 66.
Damit zählt das Steuerglied 66 den Zähler 62 ab dem
Rücksetzen des Programmzählers 62 bis zum Überlauf des
Zählers 62 hoch. Der Befehlsspeicher 9 wird gemäß den
Adressen abgetastet, die sequentiell vom Zähler 62
ausgegeben sind. Das 4-Bit-Ausgangssignal des Zählers
62 wird durch die 4-Bit-Adreßverriegelungsschaltung
72 gehalten.
Von jedem der sequentiell aus dem Befehlsspeicher 9
gelesenen Befehle werden der INST-Abschnitt und der
MODE-Abschnitt im Register 64 bzw. 65 gespeichert. Der
INST-Abschnitt stellt die Art des Befehles dar. Von dem
MODE-Abschnitt bilden die niedrigen drei Bits einen
CH#-Unterabschnitt und einen R/F-Unterabschnitt und
sind als eine Leseadresse RADRS in den Eingangsspeicher
7 eingegeben. Die oberen drei Bits jedes Befehles
bilden Daten, die den Zustand des Messens der Zeit von
irgendeiner Änderung im Eingangssignal zeigen, und
sie sind in das Steuerglied 66 eingespeist.
Die Kompensationsschaltung 67 kompensiert die Zeitdaten
gemäß den 4-Bit-Daten TWT, die aus dem Eingangsspeicher
7 gelesen sind, und auch gemäß den 24-Bit-Bezugszeitdaten
(TO₀-TO₂₃), die vom Zeitgeberzähler 4 eingespeist
sind. Die Zeit, die durch die Daten TWT dargestellt ist,
welche im Eingangsspeicher 7 gespeichert sind, ist von
der vorliegenden oder IST-Zeit GT verschieden, welche
durch die Bezugszeitdaten (TO₀-TO₂₃) wiedergegeben ist.
Wenn die unteren vier Bits GT 4 der Zeitdaten GT und die
bestimmten Zeitdaten TWT die in Fig. 16A gezeigte Beziehung
haben, das heißt, wenn die Schreibweise
TWT < GT 4 gilt, so wurden die oberen 20 Bits der Bezugszeitdaten
GT nicht fortgeschrieben. Damit sind diese
oberen 20 Bits der Daten GT nicht kompensiert und zu
den Daten TWT hinzugefügt. Die sich ergebenden Daten stellen
die Zeit dar, zu der das Eingangssignal geändert
wurde. Wenn dagegen die unteren vier Bits GT 4 der
Zeitdaten GT und die vorbestimmten Zeitdaten TWT die in
Fig. 16B gezeigte Beziehung haben, d. h., wenn die
Schreibweise TWT < GT 4 gilt, so wurden die oberen
20 Bits der Bezugszeitdaten GT bereits fortgeschrieben.
Damit wird eine Größe des durch diese oberen 20
Bits der Daten GT dargestellten Wertes genommen, und
die sich ergebenden Daten werden zu den Daten TWT
addiert. Die sich ergebenden Daten stellen die Zeit
dar, zu der sich das Eingangssignal geändert hat.
Die Kompensationsschaltung 67 kann in der in Fig. 17
gezeigten Weise ausgelegt sein, um die Zeit der Änderung
im Eingangssignal zu bestimmen, wie dies oben beschrieben
ist. Das heißt, die Schaltung 67 hat ein 24-
Bitregister 81 zum Verriegeln der Bezugszeitdaten GT,
die durch den Zeitgeberzähler 4 ausgegeben sind. Die
unteren oder niedrigeren 4 Bits GT 4 der Daten GT werden
zu einem der beiden Eingangsanschlüsse eines Größenvergleichers
82 gespeist. Die Daten TWT, die durch den
Eingangsspeicher 7 ausgegeben sind, werden in einem
4-Bitregister 83 verriegelt und dann in den anderen
Eingangsanschluß des Größenvergleichers 82 eingegeben.
Die oberen 20 Bits der Daten GT werden in ein 20-Bitregister
84 eingespeist. Die Register 81 und 84 bilden
ein Zweistufen-Schieberegister. Das TCL-Signal wird als
ein Schiebeimpuls in diese Register 81 und 84 vom Zeitgeberzähler
4 eingespeist. Somit hält das Register 84
Daten (vor Fortschreiben) die durch Vermindern um 1
von einem Wert erhalten sind, der durch die oberen 20
Bits dargestellt ist, welche im Register 81 gespeichert
sind. Die Kompensationsschaltung hat weiterhin einen
Datenwähler 85 zum Wählen der oberen 20 Bits, die im
Register 81 gespeichert sind, oder der Inhalte des Registers
84 gemäß dem Ausgangssignal CMP des Größenvergleichers
82. Das heißt, der Wähler 85 wählt die Inhalte
des Registers 81 wenn GT 4 < TWT gilt, da das Ausgangssignal
CMP des Vergleichers 82 den Wert "0" hat. Dagegen
wählt der Wähler 85 die Inhalte des Registers 84, wenn
GT 4 < TWT gilt, da das Ausgangssignal CMP den Wert "1"
hat. Die gewählten 20 Bits werden mit den Daten TWT zusammengefaßt,
um so Daten T zu bilden, die die Zeit darstellen,
zu welcher sich das Eingangssignal geändert hat.
Die durch die Kompensationsschaltung 67 gebildeten
Zeitdaten werden zu dem Register 70 gespeist. Das Ausgangssignal
CMP des Größenvergleichers 82 wird in die
T 2-Gültigkeitsprüfschaltung 68 eingegeben. Die T 2-Gültigkeitsprüfschaltung
68 bestimmt gemäß dem WIDTH-Befehl,
ob die zweiten Daten T 2 gültig sind oder nicht.
Das heißt, die zweite Änderung des Eingangssignales
wird abhängig von dem WIDTH-Befehl erfaßt. Wenn die
zweite Änderung nicht innerhalb der Zeitdauer eintritt,
die im Eingangsspeicher 68 gespeichert werden kann, so
tritt kein Problem auf. Wenn die zweite Änderung innerhalb
dieser Zeitdauer auftritt, so ist es erforderlich,
zu bestätigen, ob diese Änderung vorangeht oder der
anderen folgt.
Wenn angenommen wird, daß die erste Änderung zu einer
Zeit TWT 1 und die zweite Änderung zu einer Zeit TWT 2
stattfinden, dann können TWT 1, TWT 2, und die unteren
vier Bits GT 4 die sechs Beziehungen haben, welche in
den Fig. 18A bis 18F gezeigt sind. Wenn TWT 2, TWT 1 und
GT 4 die in Fig. 18A, 18C oder 18E gezeigte Beziehung
haben, dann bestimmt die T 2-Gültigkeitsprüfschaltung 68,
daß die zweiten Zeitdaten TWT 2 gültig sind, da diese
Zeit TWT 2 nach der Zeit TWT 1 gemessen wurde. Wenn dagegen
TWT 2, TWT 1, GT 4 die in den Fig. 18B, 18D oder 18F
gezeigte Beziehung haben, dann bestimmt die Schaltung
68, daß die zweiten Zeitdaten TWT 2 ungültig sind, da
die Zeit TWT 2 vor der Zeit TWT 1 gemessen wurde.
Fig. 19 zeigt die Struktur der T 2-Gültigkeitsprüfschaltung
68, die bestimmt, ob die zweiten Zeitdaten TWT 2
gültig sind oder nicht. Wie in Fig. 19 gezeigt ist, umfaßt
die T 2-Gültigkeitsprüfschaltung ein 1-Bitregister
91, ein 4-Bitregister 92, einen 4-Bit-Größenvergleicher
93, Inverter 94 und 95, UND-Gatter 96 bis 89 und ein
ODER-Gatter 99. Das Register 91 verriegelt 1-Bitdaten,
die die Beziehung zwischen Daten GT 4 und Daten TWT 1
darstellen, d. h. die Daten CMP, welche von der Kompensationsschaltung
67 ausgegeben sind. Mit anderen Worten,
es speichert "1", wenn TWT 1 < GT 4 vorliegt. Das Register
92 verriegelt den Wert der Daten TWT 1. Diese Register
91 und 92 verriegeln die Datengrößen abhängig von
einem durch das Steuerglied 66 gelieferten Verriegelungssignal.
Der Größenvergleicher 93 vergleicht TWT 1, das im
Register 92 verriegelt ist, mit einem neu eingegebenen
Wert TWT 2, und erzeugt ein "1"-Signal, wenn TWT 1 < TWT 2
vorliegt. Der Inverter 94, die UND-Gatter 96 bis 98 und
das ODER-Gatter 99 sind logische Schaltungen, die verwendet
werden, um zu bestimmen, ob die in den Fig. 18A,
18C oder 18E gezeigte Beziehung vorliegt oder nicht. Das
Ausgangssignal VALIDT des ODER-Gatters 99 ist "1",
wenn eine der folgenden Bedingungen erfüllt ist:
(1) TWT 2 < GT 4 und TWT 1 < GT 4
(2) TWT 2 < GT 4 und TWT 1 < GT 4 und TWT 1 < TWT 2
(3) TWT 2 < GT 4 und TWT 1 < GT 4 und TWT 1 < TWT 2
(2) TWT 2 < GT 4 und TWT 1 < GT 4 und TWT 1 < TWT 2
(3) TWT 2 < GT 4 und TWT 1 < GT 4 und TWT 1 < TWT 2
Wenn das Ausgangssignal VALIDT der T 2-Gültigkeitsprüfschaltung
68 den Wert "1" hat, so bestimmt das Steuerglied
66, daß die zweiten Daten T 2 für den WIDTH-Befehl
gültig sind.
Das Steuerglied 66, das die Komponenten der Folgesteuerungseinheit
7 steuert, umfaßt ein programmierbares
Logik-Feld (PLA). Ein Teil des im Register 64
gespeicherten INST-Abschnittes und ein Teil des im Register
65 gespeicherten MODE-Abschnittes werden aus dem Eingangsspeicher
7 ausgelesen und zum Steuerglied 66 gespeist.
Das VALID-Signal (GÜLTIG-Signal) das zeigt, daß sich das
Eingangssignal geändert hat, und das VALIDT-Signal, das
zeigt, daß die Daten T 2 gültig sind, werden ebenfalls
in das Steuerglied 66 eingegeben. Das Steuerglied 66
arbeitet als sequentielle Schaltung, indem es eine Rückkopplungsschleife
mit Registern 73 und 74 zum Speichern
von Zustandszahlen bildet. Das Steuerglied 66 liefert
zum Befehlsspeicher 9 ein MREQ-Signal zum Anfordern
eines Zugriffes zum Befehlsspeicher 9, ein RD/WR-Signal
zum Lesen von Daten aus dem Befehlsspeicher 9 und zum
Einschreiben von Daten in diesen, ein CMDEND-Signal, das
den Abschluß der Ausführung eines Befehles darstellt, und
ein WRCMD-Signal, das den Befehlsspeicher 9 davon unterrichtet,
Daten zu speichern. Das Steuerglied 66 gibt
auch ein RD-Signal zum Eingangsspeicher 7 ab, um dadurch
Daten aus dem Eingangsspeicher 7 zu lesen.
Auf den Befehlsspeicher 9 kann nicht nur durch die Zentraleinheit
3, sondern auch durch die Folgesteuerungseinheit
8 zugegriffen werden. Der Speicher 9 kann 32 Wörter aus jeweils
16 Bits, die von der Zentraleinheit 3 eingespeist
sind, und 16 Wörter aus jeweils 12 Bits, die von der
Folgesteuerungseinheit 8 eingespeist sind, speichern. Er
kann höchstens 16 Befehle speichern. Der Speicher 9 hat
die in Fig. 20 gezeigte Struktur. Wie aus dieser Figur
zu ersehen ist, umfaßt der Befehlsspeicher 9 eine Speicherregion,
die aus einer Speicherebene 101 mit 16 Bits
×16 Wörtern und Speicherebenen 102 und 103 mit 8 Bits×
16 Wörtern gebildet ist, und einen Adreßdecodierer 104
zum Bezeichnen der Adressen dieser Speicherebenen. Die
verschiedenen Befehle sind in der Speicherregion gespeichert,
die durch diese Speicherebenen 101, 102 und
103 gebildet sind.
Wie aus der Fig. 20 zu ersehen ist, umfaßt der Befehlsspeicher
9 weiterhin eine Schlichtungs-Schaltung,
einen Adreßwähler 106, eine 16-Bit-Verriegelungsschaltung
107 und einen Datenwähler 108. Die
Schaltung 105 schlichtet zwischen der von der Zentraleinheit
5 erfolgten Anforderung nach einem Zugriff zu
den Speicherebenen 101 bis 103 und der durch die Folgesteuerungseinheit
8 erfolgten Anforderung nach den Speicherebenen
101 bis 103. Der Adreßwähler 106 wählt die
von der Zentraleinheit eingespeiste Adresse oder die
von der Folgesteuerungseinheit 8 eingespeiste Adresse
gemäß den von der Schlichtungsschaltung 105 ausgegebenen
Daten. Die Verriegelungsschaltung 107 verriegelt den aus
der Speicherebene 101 ausgelesenen 16-Bitbefehl bis zu
der Zeit, in der dieser Befehl zur Zentraleinheit 3 gespeist
ist. Der Datenwähler 108 wählt die von der Zentraleinheit
3 eingespeisten 8-Bitdaten oder die von der
Folgesteuerungseinheit 8 gelieferten 8-Bitdaten.
In diesem Ausführungsbeispiel ist die Zeit, die die
Folgesteuerungseinheit benötigt, um Daten in den Befehlsspeicher
9 zu schreiben oder Daten aus diesem zu lesen,
gleich dem Zeitintervall der Impulse des Operationstaktsignales
für die Folgesteuerungseinheit 8, und die
Zeit, die die Zentraleinheit benötigt, um Daten in den
Befehlsspeicher 9 zu schreiben oder aus diesem zu lesen,
ist 3mal länger als das Intervall der Impulse des Operationstaktsignales
für die Folgesteuerungseinheit 8.
Wenn die Zentraleinheit 3 Daten in den Befehlsspeicher
9 einschreibt oder Daten aus diesem liest, ist die
Adresse unbestimmt, da das MREQ-Signal bei dem ersten Taktimpuls
ungültig ist, wie dies aus Fig. 21 zu ersehen
ist. Die Schlichtungsschaltung 105 wurde unter der Annahme
ausgelegt, daß die Folgesteuerungseinheit 8 nicht
kontinuierlich auf den Befehlsspeicher 9 länger als eine
Zweiimpuls-Periode zugreifen muß. Damit akzeptiert die
Schlichtungsschaltung 105 die durch die Folgesteuerungseinheit
8 gelieferte Anforderung vor der Anforderung, die
durch die Zentraleinheit 3 erfolgt. Während der in Fig.
21 gezeigten Periode oder Zeitdauer kann lediglich
die Folgesteuerungseinheit 8 auf dem Befehlsspeicher
9 zugreifen, da die Adresse der durch die Zentraleinheit
3 gemachten Anforderung noch nicht aufgebaut
wurde. Während der Zeitdauer und der Zeitdauer
können die Zentraleinheit 3 und die Folgesteuerungseinheit
8 beide einen Zugriff auf den Befehlsspeicher 9
haben. Wenn die Folgesteuerungseinheit 8 keine Anforderungen
für einen Zugriff während der Zeitdauer
macht, kann die Zentraleinheit 3 auf den Speicher 9
in dieser Zeitdauer zugreifen, um so Daten aus
dem Speicher 9 zur Zeit auszulesen. Wenn die Folgesteuerungseinheit
8 auf den Speicher 9 während der Zeitdauer
nicht zuzugreifen braucht, kann die Zentraleinheit
3 einen Zugriff auf den Speicher 9 während dieser
Zeitdauer haben, um so Daten aus dem Befehlsspeicher
9 zur Zeit auszulesen. Damit kann die Zentraleinheit
3 Daten aus dem Befehlsspeicher 9 wenigstens einmal zur
Zeit oder zur Zeit lesen. Die Verriegelungsschaltung
107 wird verwendet, um Daten zu halten,
die aus der Speicherregion ausgelesen und zur Zentraleinheit
3 zu speisen sind. Da die Folgesteuerungseinheit
8 nicht kontinuierlich auf den Befehlsspeicher 9 länger
als eine Zweiimpuls-Periode zugreifen muß, kann die
Zentraleinheit 3 auf den Speicher 9 während der Zeitdauer
zugreifen, falls die Folgesteuerungseinheit
8 auf den Speicher 9 während der Periode oder
einen Zugriff ausübt. Wenn die Folgesteuerungseinheit 8
auf den Speicher 9 während der Zeitdauer einen Zugriff
ausführt, so kann die Zentraleinheit 3 auf den Befehlsspeicher
9 während der Zeitdauer zugreifen.
Wenn jedoch die durch die Zentraleinheit 3 angeforderte
Adresse mit der durch die Folgesteuerungseinheit 8 angeforderten
Adresse identisch ist, so bedeutet dies,
daß der gerade ausgeführte Befehl die Adresse hat, die
zu der durch die Zentraleinheit 3 angeforderten einen
Adresse identisch ist. Wenn dies der Fall ist, so
wartet die Zentraleinheit 3, bis die Folgesteuerungseinheit
8 vollständig den Befehl ausführt, um zu verhindern,
daß die Folgesteuerungseinheit 8 den Befehl
irrtümlich ausführt, und um zu vermeiden, daß die Zentraleinheit
3 Daten unvollständig aus dem Befehlsspeicher
9 ausliest.
Da die Schlichtungsschaltung 105 nach dem oben erläuterten
Schema arbeitet, kann die Wartezeit für die entweder
durch die Zentraleinheit 3 oder die Folgesteuerungseinheit
8 gemachte Anforderung auf ein Minimum verringert
werden.
Der Betrieb der Impulseingabevorrichtung 1, die oben
beschrieben ist, wird im folgenden anhand der Fig. 22A
bis 22F gezeigten Flußdiagramme näher erläutert.
In dem Ausführungsbeispiel hat das Systemtaktsignal SCK
zum Fortschreiben des Zeitgeberzählers 4 eine 6mal
höhere Frequenz als die Frequenz des Taktsignales TWT
zum Fortschreiben des Eingangsspeichers 7. Die zum
Fortschreiben des Eingangsspeichers 7 erforderliche Zeit entspricht
16mal 96 Impulsen des Systemtaktsignales
SCK. Alle im Speicher 9 gespeicherten Befehle müssen
daher innerhalb dieser Zeitdauer ausgeführt werden.
Während Daten in den Eingangsspeicher 7 geschrieben werden
oder während das Taktimpulssignal TWR auf einem
"1"-Pegel bleibt, muß die Folgesteuerungseinheit 8 abgeschaltet
werden, damit die Impulseingabevorrichtung
richtig arbeitet. Eine 16 Impulsen des Systemtaktsignales entsprechende Zeit wird benötigt, um die Folgesteuerungseinheit
8 abzuschalten. Als Ergebnis entspricht die Zeit, die zur
Ausführung aller Befehle verwendet werden kann, lediglich
80 Implusen des Systemtaktsignales. Weiterhin muß jeder
Befehl nur einmal ausgeführt werden, um zu verhindern,
daß die Folgesteuerungseinheit 8 die gleiche Änderung
des Eingangssignales zweimal oder mehrfach erfaßt. Wenn
somit der Programmzähler 62 überläuft, so muß er angehalten
werden, bis das Taktsignal TWR auf den "1"-Pegel
ansteigt. Die Zeitdauer eines Impulses ist erforderlich, um den
Programmzähler 62 anzuhalten. Als Folge hiervon ist es
lediglich die Zeit von 79 Impulsen des Systemtaktsignales, die die Folgesteuerungseinheit
8 verwenden kann, um die Befehle auszuführen.
In Fig. 22A bezeichnet eine Periode
die Zeitdauer, die für den oben beschriebenen Vorbereitungsprozeß
benötigt wird. Während dieser Zeitdauer
steigt eine Datenflußschleife bis zum Taktsignal TWR
auf den "1"-Pegel an (Schritt 1). Wenn das Taktsignal TWR
auf den "1"-Pegel ansteigt, werden der Programmzähler 62
und OVFR auf "0" rückgesetzt, wodurch ein Befehl aus dem
Speicher 9 gelesen wird (Schritt 2). Dann wird bestimmt,
ob der Programmzähler 62 übergelaufen ist oder nicht.
Wenn er nicht überläuft, so werden die Inhalte des
Programmzählers 62 in der Verriegelungsschaltung 72 für
zukünftige Verwendung verriegelt. Die Daten von der Adresse
des Befehlsspeichers 9, die durch die Inhalte des Zählers
62 bezeichnet sind, werden in das Register 64 geladen.
Dieses Laden der Daten von der bezeichneten Adresse
erfordert eine Einimpuls-Periode. Fig. 22B zeigt die Folge-
bzw. Sequenz von Operationen, die durchgeführt werden,
um jeden Befehl zu analysieren und zu identifizieren, gemäß
den Daten des INST-Abschnittes, die im Register 64 gespeichert
sind. Wenn diese Daten "00" sind und ein NOP-
Befehl identifiziert wird, so wird der Zählwert des
Programmzählers 62 fortgeschrieben, um so diesen NOP-
Befehl auszuführen. Wenn die Daten beim INST-Abschnitt
"11" sind, wird ein WIDTH-Befehl identifiziert, und der
Prozeß ähnlich zu dem NOP-Befehl, d. h. ein Fortschreiben
des Programmzählers 62 wird ausgeführt.
Wenn die Daten des INST-Abschnittes "01" sind, dann wird
ein EDGE-Befehl identifiziert. Gemäß den Inhalten des
STATE-Unterabschnittes und des S/C-Unterabschnittes des
MODE-Abschnittes wird bestimmt, ob die Zeit einer Änderung
in dem Eingangssignal gemessen werden muß oder
nicht. Wenn die Bedingungen STATE=0 oder S/C=1 erfüllt
sind, so wird die Zeit der Änderung gemessen gemäß einem
Zustand, der durch den MODE-Abschnitt angezeigt ist,
wie dies in Fig. 22C dargestellt ist. Sonst wird der
Programmzähler 62 fortgeschrieben, um so die Ausführung
des Befehles abzuschließen.
Wenn die Daten des INST-Abschnittes "10" sind, dann wird
ein WIDTH-Befehl identifiziert. Gemäß den Inhalten des
STATE-Unterabschnittes und des S/C-Unterabschnittes des
MODE-Abschnittes wird bestimmt, ob die Zeit der ersten
Änderung oder die Zeit der zweiten Änderung gemessen werden
muß oder ob die Zeit irgendeiner Änderung des Eingangssignales
gemessen wurde. Das heißt, wenn der STATE-
Unterabschnitt "00" ist, wird die Zeit der ersten Änderung
gemäß dem durch den MODE-Abschnitt angezeigten Zustand
gemessen, und der Programmzähler 62 wird fortgeschrieben,
wodurch die Sequenz der in den Fig. 22D und
22E gezeigten Operationen ausgeführt wird. Wenn der STATE-
Unterabschnitt "01" ist, wird die Zeit der zweiten Änderung
gemäß den Inhalten des MODE-Abschnittes gemessen,
der Programmzähler 62 wird fortgeschrieben, wodurch die
Sequenz der in Fig. 22F gezeigten Operationen ausgeführt
wird. Wenn die Zeit der Änderung gemessen wurde, wird der
Programmzähler 62 fortgeschrieben, um so die Ausführung des
WIDTH-Befehles abzuschließen. Der in Fig. 22B gezeigte
Prozeß wird während der Zeitdauer eines Impulses durchgeführt.
Der EDGE-Befehl wird ausgeführt, wie dies im Flußdiagramm
von Fig. 22C gezeigt ist. Zunächst wird aus dem VALID-
Signal bestimmt, ob das Eingangssignal Änderungen unterworfen
war oder nicht. Wenn VALID=1 vorliegt, wird
der im Register 64 gespeicherte STATE-Unterabschnitt auf
"1" erneut geschrieben. Dann werden die Zeit T und die
Inhalte des Registers 64 in den Befehlsspeicher 9 geschrieben
(Schritt 1). Es wird dann bestimmt, ob der
INT-Unterabschnitt des MODE-Abschnittes "1" ist oder
nicht. Wenn INT="1" vorliegt, wird die Zentraleinheit
3 unterbrochen. Der Programmzähler 62 wird fortgeschrieben,
wodurch der EDGE-Befehl vollständig ausgeführt wird
(Schritt 2). Der in Fig. 22C gezeigte Prozeß wird ebenfalls
während der Zeitdauer eines Impulses ausgeführt.
Der WIDTH-Befehl wird ausgeführt, wie dies im Flußdiagramm
von Fig. 22D gezeigt ist, um die Zeit der ersten Änderung
des Eingangssignales zu messen. Zunächst wird aus dem
VALD-Signal bestimmt, ob das Eingangssignal Änderungen
unterworfen war oder nicht. Wenn VALID=1 vorliegt,
so wird der im Register 64 gespeicherte STATE-Teil auf
"10" umgeschrieben. Die Zeit T, zu der das LATCH-Signal
(Verriegelungssignal) auf "1" gesetzt wurde,
wird im Register 70 verriegelt, wodurch die nächste
Adresse in das Register 65 geschrieben wird (Schritt 1).
Es wird dann bestimmt, ob der im Register 56 gespeicherte
INST-Abschnitt "11" ist oder nicht. Wenn INST="11" vorliegt,
so wird die Zeit der zweiten Änderung gemäß dem
im Register 65 gespeicherten MODE-Abschnitt gemessen
(Schritt 2). Dann wird aus dem Signal VALID bestimmt,
ob die so festgelegte Zeit gültig ist oder nicht. Wenn
VALID = 1 vorliegt, wird der im Register 64 gespeicherte
STATE-Unterabschnitt auf "10" umgeschrieben, wodurch die
Zeit T in den Befehlsspeicher 9 bei der durch die Inhalte
des Programmzählers 62 bezeichneten Adresse geschrieben
wird. Wenn VALID≠ vorliegt, werden die
Inhalte der Register 64 und 70 als ein Befehl in den
Speicher 9 bei der durch die Inhalte der Verriegelungsschaltung
72 bezeichneten Adresse geschrieben,
und der Programmzähler 62 wird fortgeschrieben, um so
die Ausführung des WIDTH-Befehls abzuschließen (Schritt
3).
Um zu verhindern, daß ein Zugriff auf den Befehlsspeicher
9 kontinuierlich für die Zeitdauer von zwei Impulsen bzw. eine Zweiimpuls-Periode oder
eine längere Zeitdauer erfolgt, wird die Operation
für die Zeitdauer eines Impulses bzw. eine Einimpuls-Periode angehalten (Schritt 4).
Die Inhalte der Register 64 und 70 werden als ein Befehl
in den Befehlsspeicher 9 bei der Adresse geschrieben,
die durch die durch die Verriegelungsschaltung 72
verriegelten Daten bezeichnet ist (Schritt 5). Es wird
dann bestimmt, ob der INT-Unterabschnitt des MODE-Abschnittes
"1" ist oder nicht. Wenn INT = "1" vorliegt,
wird die Zentraleinheit 3 unterbrochen, und der Programmzähler
62 wird fortgeschrieben, um so die Ausführung des
WIDTH-Befehles abzuschließen (Schritt 6).
Die zur Durchführung der Sequenz der in der Fig. 22D
und 22E gezeigten Operation erforderliche Zeit ist
längstens die Zeitdauer von 6-Impulsen, d. h. eine "6-Impuls-Periode".
Der WIDTH-Befehl wird ausgeführt, um die Zeit einer
Änderung des Eingangssignales zu messen, wie dies im
Flußdiagramm von Fig. 22F gezeigt ist. Zunächst wird
der Zählwert des Programmzählers 62 in das Register 65
geladen (Schritt 1). Dann wird bestimmt, ob der im
Register 65 gespeicherte INST-Unterabschnitt "11" ist
oder nicht. Wenn INST = "11" vorliegt, wird die Zeit
der zweiten Änderung des Eingangssignales gemäß dem
im Register 65 gespeicherten MODE-Abschnitt gemessen
(Schritt 2). Es wird aus dem Signal VALID bestimmt,
ob sich das Eingangssignal geändert hat oder nicht.
Wenn VALID≠1 vorliegt, wird der Programmzähler 62
fortgeschrieben, wodurch der WIDTH-Befehl vollständig
ausgeführt wird. Wenn VALID = 1 vorliegt, wird der
im Register 64 gespeicherte STATE-Unterabschnitt in
"10" umgeschrieben, und die Zeit T wird in den Befehlsspeicher
9 bei der durch den Zählwert des Programmzählers
62 bezeichneten Adresse geschrieben (Schritt
3). Um zu verhindern, daß ein Zugriff zum Befehlsspeicher
9 kontinuierlich für eine Zweiimpuls-Periode
oder eine längere Zeitdauer erfolgt, wird der Betrieb
für eine Einimpuls-Periode angehalten (Schritt 4). Dann
werden die Inhalte des Registers 65 in den Speicher 9
bei der durch die Inhalte der Verriegelungsschaltung
72 bezeichneten Adresse geschrieben (Schritt 5). Es
wird bestimmt, ob der INT-Unterabschnitt des MODE-Abschnittes
1 ist oder nicht. Wenn INT = 1 vorliegt,
wird die Zentraleinheit 3 unterbrochen (Schritt 6).
Die zur Durchführung der Sequenz der in Fig. 22F gezeigten
Operationen erforderliche Zeit ist höchstens die Zeitdauer von sechs Impulsen, d. h.
eine "6-Impuls-Periode".
Wie beschrieben wurde ist eine Zeitdauer von zwei Impulsen, d. h. eine 2-Impuls-Periode zur
Ausführung eines NOP-Befehles erforderlich; höchstens eine Zeitdauer von vier Impulsen, d. h.
eine 4-Imupuls-Periode ist erforderlich zur Ausführung
eines EDGE-Befehles; weiterhin ist höchstens eine Zeitdauer von acht Impulsen d. h. eine
8-Impuls-Periode erforderlich, um einen WIDTH-Befehl
auszuführen. Da eine 4-Impuls-Periode für einen Befehl
erforderlich ist, wird höchstens eine Zeitdauer von 64 Impulsen, d. h. eine 64-Impuls-Periode
(4 Impulse×16 Bits) benötigt, um die im Befehlsspeicher
9 gespeicherten Befehle auszuführen. Diese
Periode ist kürzer als die Periode, welche der Zeitdauer
von 79 Impulsen des Systemtaktsignales entspricht, was eine für die Kapazität
des Eingangsspeichers 7 spezifische Zahl ist. Daher
können alle im Befehlsspeicher 9 gespeicherten Befehle
ausgeführt werden.
Bei der oben beschriebenen Impulseingabevorrichtung
werden die durch die verschiedenen Sensoren ausgegegebenen
Signale sequentiell im Eingangsspeicher gespeichert.
Die Folgesteuerungseinheit liest diese
Signale aus dem Eingangsspeicher gemäß den von dem
Befehlsspeicher eingespeisten Befehlen. Die Zeit
einer Änderung des Eingangssignales, d. h. ein Operationszustand
jeder der internen Komponenten von
beispielsweise einem Kraftfahrzeug wird aus jedem
Signal bestimmt, und die diese Zeit zeigenden Daten
werden zu dem Befehl addiert. Selbst wenn das
Eingangssignal eine komplexe Wellenform hat, können
die internen Komponenten die Zeit einer Änderung
des Betriebszustandes aus dem Signal
bestimmen, da die Zentraleinheit den Befehlsspeicher,
wann immer erforderlich, unterbrechen kann.
Die Arbeitsbelastung der Zentraleinheit kann so vermindert
werden.
Claims (10)
1. Impulseingabevorrichtung mit:
einem Zeitgeberzähler (4) zum Zählen vorbestimmter Taktimpulse und zum Erzeugen von Bezugszeitdaten und
einer Eingangsstufe (6) zum Abtasten eines Eingangssignales abhängig von den Bezugszeitdaten und zum Ausgeben mehrerer Abtastsignale,
gekennzeichnet durch
einen Eingangsspeicher (7) mit einer Vielzahl von durch die Bezugszeitdaten bezeichneten Adressen zum Speichern der Abtastsignale als Datengrößen und mit einer Umsetzeinrichtung zum Umsetzen der zu einem vorbestimmten Zeitpunkt gespeicherten Abtastsignale in einen Code, der das Auftreten einer Änderung im Signal und den Zeitpunkt zu dem die Änderung aufgetreten ist, anzeigt oder anzeigt, daß das Signal keiner Änderung unterlegen ist,
einen Befehlsspeicher (9) zum Speichern von Befehlen zum Anweisen des Aufzeichnens von Datengrößen, die die Art von wenigstens einer Änderung des Eingangssignales und den Zeitpunkt, in dem die Änderung aufgetreten ist, darstellen, und
eine Folgesteuerungseinheit (8) zum sequentiellen Lesen der Befehle aus dem Befehlsspeicher (9), derart, daß alle Befehle ausgeführt werden, bevor die Datengrößen in allen Adressen des Eingangsspeichers (7) fortgeschrieben sind,
wobei, wenn das Speichern der Zeit der Änderung durch den aus dem Befehlsspeicher (9) ausgelesenen Befehl angewiesen ist, die Folgesteuerungseinheit (8) den Code, der den Zeitpunkt der Änderung des Eingangssignals darstellt, aus dem Eingangsspeicher (7) ausliest, welcher den vorliegenden Zeitpunkt anzeigt, den Zeitpunkt der Signaländerung aus dem Code und der vorliegenden Zeit kompensiert und dann die den kompensierten Zeitpunkt der Signaländerung darstellenden Daten in dem Befehlsspeicher (9) zusätzlich zu dem Befehl, mit dem dem Befehl folgenden Zeitdaten speichert.
einem Zeitgeberzähler (4) zum Zählen vorbestimmter Taktimpulse und zum Erzeugen von Bezugszeitdaten und
einer Eingangsstufe (6) zum Abtasten eines Eingangssignales abhängig von den Bezugszeitdaten und zum Ausgeben mehrerer Abtastsignale,
gekennzeichnet durch
einen Eingangsspeicher (7) mit einer Vielzahl von durch die Bezugszeitdaten bezeichneten Adressen zum Speichern der Abtastsignale als Datengrößen und mit einer Umsetzeinrichtung zum Umsetzen der zu einem vorbestimmten Zeitpunkt gespeicherten Abtastsignale in einen Code, der das Auftreten einer Änderung im Signal und den Zeitpunkt zu dem die Änderung aufgetreten ist, anzeigt oder anzeigt, daß das Signal keiner Änderung unterlegen ist,
einen Befehlsspeicher (9) zum Speichern von Befehlen zum Anweisen des Aufzeichnens von Datengrößen, die die Art von wenigstens einer Änderung des Eingangssignales und den Zeitpunkt, in dem die Änderung aufgetreten ist, darstellen, und
eine Folgesteuerungseinheit (8) zum sequentiellen Lesen der Befehle aus dem Befehlsspeicher (9), derart, daß alle Befehle ausgeführt werden, bevor die Datengrößen in allen Adressen des Eingangsspeichers (7) fortgeschrieben sind,
wobei, wenn das Speichern der Zeit der Änderung durch den aus dem Befehlsspeicher (9) ausgelesenen Befehl angewiesen ist, die Folgesteuerungseinheit (8) den Code, der den Zeitpunkt der Änderung des Eingangssignals darstellt, aus dem Eingangsspeicher (7) ausliest, welcher den vorliegenden Zeitpunkt anzeigt, den Zeitpunkt der Signaländerung aus dem Code und der vorliegenden Zeit kompensiert und dann die den kompensierten Zeitpunkt der Signaländerung darstellenden Daten in dem Befehlsspeicher (9) zusätzlich zu dem Befehl, mit dem dem Befehl folgenden Zeitdaten speichert.
2. Impulseingabevorrichtung nach Anspruch 1, dadurch
gekennzeichnet, daß die Eingangsstufe (6) eine Vielzahl
von Eingangssignalen abtastet, die jeweils über
einen eigenen Kanal eingegeben werden, und entsprechend
die Änderung der Eingangssignale erfaßt, und
daß der Eingangsspeicher (7) einen Orthogonal-Speicher
(31) zum Speichern dieser Änderungen als Datengrößen
hat, wobei der Eingangsspeicher (7) eine Codiereinrichtung
(34) zum Codieren der Datengrößen
aufweist.
3. Impulseingabevorrichtung nach Anspruch 1, dadurch
gekennzeichnet, daß bei Vorhandensein eines Befehls
im Befehlsspeicher (9) zum Aufzeichnen des Zeitpunkts
der Vorderflanke oder Rückflanke des Eingangssignales
die Folgesteuerungseinheit (8) einen
den Zeitpunkt einer Änderung des Eingangssignals
innerhalb der Periode der zyklischen Adressierung
des Eingangsspeichers (7) darstellenden Code (TWT)
mit den niederwertigen Bits (GTL) der Bezugszeitdaten
vergleicht und diese durch den Code (TWT) ersetzt,
wenn TWT < GTL vorliegt, und zusätzlich die
nicht ersetzten oberen Bits der Bezugszeitdaten um
eins vermindert, wenn TWT < GTL vorliegt.
4. Impulseingabevorrichtung nach Anspruch 1, dadurch
gekennzeichnet, daß bei Vorhandensein eines Befehls
im Befehlsspeicher (9) zum Aufzeichnen des Zeitpunktes
einer ersten Änderung des Eingangssignales und
des Zeitpunktes einer zweiten Änderung hiervon die
Folgesteuerungseinheit (8) einen Code (TWT 1), der
den Zeitpunkt der ersten Änderung innerhalb der Periode
der zyklischen Adressierung zeigt, einen Code
(TWT 2), der den entsprechenden Zeitpunkt der zweiten
Änderung zeigt mit den niederwertigen Bits (GTL) der
Bezugszeitdaten vergleicht und Daten, die die Zeitpunkte
der ersten und zweiten Änderung darstellen,
gültig macht wenn TWT 2 < GTL < TWT 1, TWT 1 < TWT 2 < GTL
oder GTL < TWT 1 < TWT 2 vorliegt, sowie die die
Zeitpunkte der ersten und zweiten Änderung darstellenden
Daten ungültig macht, wenn TWT 1, TWT 2 und GTL
eine andere Beziehung zueinander haben.
5. Impulseingabevorrichtung nach Anspruch 2, dadurch
gekennzeichnet, daß der Orthogonal-Speicher (31) ein
n × m-Bit-Orthogonal-Speicher (31) ist und daß der
Eingangsspeicher (7) eine erste Adreßeinrichtung
(33) zum Eingeben von Adressen in den Orthogonal-Speicher
(31) derart, daß die Änderungen des Eingangssignales
bei in einer ersten Richtung angeordneten
Adressen gespeichert werden, und eine zweite
Adreßeinrichtung (32) zum Eingeben von Adressen in
den Orthogonal-Speicher (31) derart, daß die Änderungen
des Eingangssignales in einer die erste Richtung
schneidenden zweiten Richtung ausgelesen werden,
aufweist.
6. Impulseingabevorrichtung nach einem der Ansprüche 1
bis 5, dadurch gekennzeichnet, daß eine Zentraleinheit
(3) vorgesehen ist, und daß der Befehlsspeicher
(9) wenigstens eine erste Speicherebene (101, 102,
103), eine Adreßeinrichtung (104) zum Bezeichnen von
Adressen der Speicherebene und eine Schlichtungseinrichtung
(105) zum Entscheiden zwischen einer durch
die Zentraleinheit (3) vorgenommenen Zugriff-Anforderung
und einer durch die Folgesteuerungseinheit
(8) vorgenommenen Zugriff-Anforderung hat.
7. Impulseingabevorrichtung nach Anspruch 6, dadurch
gekennzeichnet, daß der Befehlsspeicher (9) eine
Verriegelungseinrichtung zum Zwischenspeichern eines
aus der Speicherebene ausgelesenen Befehles hat.
8. Impulseingabevorrichtung nach Anspruch 1, dadurch
gekennzeichnet, daß die Folgesteuerungseinheit (8)
zum Bestimmen des Zeitpunktes einer Änderung des
Eingangssignales eine Einrichtung (67) hat, die den
Impulszyklus des Eingangssignales mißt, um diesen
Zeitpunkt aus dem gemessenen Impulszyklus zu bestimmen.
9. Impulseingabevorrichtung nach Anspruch 1, dadurch
gekennzeichnet, daß die Folgesteuerungseinheit (8)
zum Bestimmen des Zeitpunktes einer Änderung des
Eingangssignales eine Einrichtung (67) hat, die eine
Phasendifferenz zwischen wenigstens zwei Eingangssignalen
mißt, um diesen Zeitpunkt aus der gemessenen
Phasendifferenz zu bestimmen.
10. Impulseingabevorrichtung nach Anspruch 1, dadurch
gekennzeichnet, daß die Folgesteuerungseinheit (8)
eine Einrichtung (67) zum Kompensieren des Zeitpunktes
der Änderung gemäß der Beziehung zwischen dem
aus dem Eingangsspeicher (7) ausgelesenen Signal und
den von dem Zeitgeberzähler (4) ausgegebenen Bezugszeitdaten
hat.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62132215A JP2588195B2 (ja) | 1987-05-28 | 1987-05-28 | パルス入力装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3818097A1 DE3818097A1 (de) | 1988-12-22 |
DE3818097C2 true DE3818097C2 (de) | 1992-11-26 |
Family
ID=15076079
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3818097A Granted DE3818097A1 (de) | 1987-05-28 | 1988-05-27 | Impulseingabevorrichtung |
Country Status (4)
Country | Link |
---|---|
US (1) | US4970679A (de) |
JP (1) | JP2588195B2 (de) |
KR (1) | KR910004653B1 (de) |
DE (1) | DE3818097A1 (de) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5125089A (en) * | 1988-12-19 | 1992-06-23 | Chrysler Corporation | Asynchronous-to-synchronous parallel word transfer circuit for preventing incoming asyncronous parallel byte data from interfering with outgoing synchronous data |
US5218692A (en) * | 1989-07-04 | 1993-06-08 | Kabushiki Kaisha Toshiba | Digital pulse timing parameter measuring device |
US5201055A (en) * | 1989-11-03 | 1993-04-06 | Compaq Computer Corporation | Multiprocessing system includes interprocessor encoding and decoding logic used for communication between two cards through reduced addressing lines |
GB9210414D0 (en) * | 1992-05-15 | 1992-07-01 | Texas Instruments Ltd | Method and apparatus for interfacing a serial data signal |
US5999742A (en) * | 1995-01-26 | 1999-12-07 | Zilog, Inc. | Dual latch data transfer pacing logic using a timer to maintain a data transfer interval |
GB9924310D0 (en) * | 1999-10-15 | 1999-12-15 | Univ Manchester | Neural network component |
GB0405283D0 (en) * | 2004-03-09 | 2004-04-21 | Aspex Technology Ltd | Multi-port memory for flexible and space efficient corner turning networks in associative processors |
GB2421092B (en) * | 2004-12-07 | 2008-12-03 | Hewlett Packard Development Co | Bufferless writing of data to memory |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3971920A (en) * | 1975-05-05 | 1976-07-27 | The Bendix Corporation | Digital time-off-event encoding system |
US4222103A (en) * | 1978-09-25 | 1980-09-09 | Motorola, Inc. | Real time capture registers for data processor |
US4259719A (en) * | 1979-06-13 | 1981-03-31 | Ford Motor Company | Binary input processing in a computer using a stack |
US4283761A (en) * | 1979-06-13 | 1981-08-11 | Ford Motor Company | Binary input/output processing in a digital computer using assigned times for input and output data |
US4445192A (en) * | 1980-11-25 | 1984-04-24 | Hewlett-Packard Company | Logic state analyzer with time and event count measurement between states |
-
1987
- 1987-05-28 JP JP62132215A patent/JP2588195B2/ja not_active Expired - Fee Related
-
1988
- 1988-05-25 US US07/198,304 patent/US4970679A/en not_active Expired - Lifetime
- 1988-05-27 DE DE3818097A patent/DE3818097A1/de active Granted
- 1988-05-27 KR KR1019880006249A patent/KR910004653B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR880014741A (ko) | 1988-12-24 |
JPS63295974A (ja) | 1988-12-02 |
US4970679A (en) | 1990-11-13 |
JP2588195B2 (ja) | 1997-03-05 |
KR910004653B1 (ko) | 1991-07-09 |
DE3818097A1 (de) | 1988-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3855274T2 (de) | Botschafts-Fifo-Puffersteuergerät | |
DE69124170T2 (de) | Automatisches Prüfausrüstungssystem, das eine Stiftscheibenarchitektur verwendet | |
DE2556822C2 (de) | Monolithische hochintegrierte Halbleiterschaltung | |
DE2555439C2 (de) | Monolithische hochintegrierte Halbleiterschaltung | |
DE3687956T2 (de) | Datensynchronisator zwischen einer sende- und einer empfangsanlage. | |
DE69128060T2 (de) | Bilddatenverarbeitung | |
DE2311220A1 (de) | Digital-informations-verarbeitungsvorrichtung zur zeichenerkennung | |
DE69026479T2 (de) | Datenprozessor mit Wartezustandsteuerungseinheit | |
DE69714244T2 (de) | Schnelles laden von prüfvektoren für eine automatische testeinrichtung | |
DE19713421A1 (de) | Halbleiterspeicher-Testvorrichtung | |
DE69107476T2 (de) | Vorrichtung für eine in-circuit-prüfung mit einem minimalspeicher. | |
DE3852562T2 (de) | Datenschreibverfahren für EEPROM. | |
DE2524046A1 (de) | Elektronische datenverarbeitungsanlage | |
DE68913807T2 (de) | Taktgeber. | |
DE69329305T2 (de) | Direktspeicherzugriffssteuerung | |
DE3128740A1 (de) | Dynamisches halbleiter-speichersystem | |
DE2725396C3 (de) | ||
DE69128268T2 (de) | Mikrocomputer mit einer Übertragungseinheit für serielle Daten | |
DE2536625C2 (de) | Paritätsprüfschaltung für ein binär zählendes Register | |
DE2912073C2 (de) | ||
DE3818097C2 (de) | ||
DE68916945T2 (de) | Synchronisierschaltung für Datenüberträge zwischen zwei mit unterschiedlicher Geschwindigkeit arbeitenden Geräten. | |
DE3421737C2 (de) | Vorrichtung zur Ermittlung einer Überlappung von Operanden | |
DE3855314T2 (de) | Dateneingangsschaltung mit Signalspeicherschaltung | |
DE2064473B2 (de) | Schaltung zur Bestimmung der Adresse einer in einem Speicher einer Datenverarbeitungsanlage enthaltenden, gesuchten Information |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8320 | Willingness to grant licences declared (paragraph 23) | ||
8339 | Ceased/non-payment of the annual fee |