DE69229423T2 - Datenübertragungssystem - Google Patents
DatenübertragungssystemInfo
- Publication number
- DE69229423T2 DE69229423T2 DE69229423T DE69229423T DE69229423T2 DE 69229423 T2 DE69229423 T2 DE 69229423T2 DE 69229423 T DE69229423 T DE 69229423T DE 69229423 T DE69229423 T DE 69229423T DE 69229423 T2 DE69229423 T2 DE 69229423T2
- Authority
- DE
- Germany
- Prior art keywords
- data
- buffer memory
- address
- pointing device
- data block
- 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 - Fee Related
Links
- 230000005540 biological transmission Effects 0.000 title claims description 22
- 230000015654 memory Effects 0.000 claims description 75
- 239000000872 buffer Substances 0.000 claims description 61
- 230000002093 peripheral effect Effects 0.000 claims description 3
- 230000003247 decreasing effect Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
- G06F5/10—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2205/00—Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F2205/10—Indexing scheme relating to groups G06F5/10 - G06F5/14
- G06F2205/108—Reading or writing the data blockwise, e.g. using an extra end-of-block pointer
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Information Transfer Systems (AREA)
- Computer And Data Communications (AREA)
Description
- Die vorliegende Erfindung betrifft ein Datenübertragungssystem und insbesondere ein Datenübertragungssystem, in dem eine automatisch inkrementierende Zeigereinrichtung verwendet wird.
- Ein herkömmliches Datenübertragungssystem, in dem eine automatisch inkrementierende Zeigereinrichtung verwendet wird, weist mehrere Zentralprozessoren, ein Ein-Ausgabefeld mit einem Pufferspeicher, einer internen Zeigereinrichtung und einer externen Zeigereinrichtung und einen Systembus auf, über den die Zentralprozessoren mit dem Ein- Ausgabebefeld verbunden werden. Der Pufferspeicher weist eine vorgegebene Anzahl von Pufferspeichereereichen auf, auf die durch die Zentralprozessoren und das Ein-Ausgabefeld zugegriffen wird. Die externe Zeigereinrichtung speichert eine Anfangsadresse für einen Zugriff auf die Pufferspeicherbereiche durch die Zentralprozessoren, und die interne Zeigereinrichtung speichert eine Anfangsadresse für einen Zugriff auf die Pufferspeicherbereiche ausschließlich durch das Ein- Ausgabefeld. Die Priorität zwischen den Zentralprozessoren wird durch eine Busarbitrations- oder -zuordnungsschaltung festgelegt.
- Im herkömmlichen Datenübertragungssystem wird, wenn die externe Zeigereinrichtung durch einen der Zentralprozessoren gelesen wird, der durch die Buszuordnungsschaltung ausge wählt wird, dem Zentralprozessor ein in der externen Zeigereinrichtung gespeichertes Adressendatenelement zugeführt.
- Daraufhin wird in einem Schreibmodus ein vorgegebener Datenblock vom Zentralprozessor zum Pufferspeicherbereich übertragen, der durch das Adressendatenelement der externen Zeigereinrichtung festgelegt ist. Zu diesem Zeitpunkt wird in der externen Zeigereinrichtung ein Adressenwert "1" automatisch zum vorangehenden Adressendatenelement addiert, und die durch die Addition erhaltene Adresse wird als nachfolgende Adresse in der externen Zeigereinrichtung gespeichert. Auf die gleiche Weise wird zwischen den Zentralprozessoren und dem Ein-Ausgabefeld ein Lesevorgang ausgeführt.
- Andererseits wird, wenn durch das Ein-Ausgabefeld auf die interne Zeigereinrichtung zugegriffen wird, ein vorgegebener Datenblock gemäß einem in der internen Zeigereinrichtung gespeicherten Adressendatenelement vom Pufferspeicher beispielsweise an eine Peripherieschaltung übertragen.
- Bei einem herkömmlichen Datenübertragungssystem besteht jedoch ein Nachteil dadurch, daß, wenn die Länge eines zu übertragenden Datenblocks größer ist als diejenige der Pufferspeicherbereiche, der Datenblock geteilt werden muß, so daß die Länge der geteilten Daten kleiner ist als die Länge der Pufferspeicherbereiche, weil die Pufferspeicherbereiche eine vorgegebene Länge aufweisen. Dadurch wird die Datenübertragungsgeschwindigkeit vermindert. Wenn dagegen die Länge eines zu übertragenden Datenblocks kleiner ist als diejenige des Pufferspeicherbereichs, ist ein Teil des Speicherbereichs im Pufferspeicher ungenutzt.
- In der US-A-4599689 wird ein Steuergerät für Datenübertragungen mit direktem Speicherzugriff (DMA-Übertragungen) dargestellt. Dieses Gerät weist einen in mehrere Pufferspeicher geteilten Speicher auf. Jeder Pufferspeicher weist einen ihm zugeordneten Überlaufabschnitt auf, der ein dem Puf ferspeicher zugeordneter zusätzlicher Speicherbereich ist. Vor einer Datenübertragung werden die Pufferspeicher, die zu übertragende Daten enthalten, verknüpft, um einen einzelnen Speicherbereich zu bilden, indem Daten des zweiten Datenblocks des Pufferspeichers in den Überlaufabschnitt des Pufferspeichers des vorangehenden Datenblocks kopiert werden. Die Datenübertragung wird nicht beendet, jedoch unterbrochen, wenn ein bestimmter Pufferspeicher gelesen wird, die Datenübertragung wird jedoch fortgesetzt, indem die Daten im Überlaufabschnitt übertragen werden. Das System korrigiert Adressen- und Wortzahlinformationen vom direkten Speicherzugriff, so daß die letzten Daten des Überlaufabschnitts und das erste Wort des Pufferspeichers des nächsten Datenblocks zusammenhängend sind.
- Daher ist es eine Aufgabe der vorliegenden Erfindung, ein mit hoher Geschwindigkeit arbeitendes Datenübertragungssystem bereitzustellen.
- Es ist eine andere Aufgabe der vorliegenden Erfindung, ein Datenübertragungssystem bereitzustellen, in dem ein Pufferspeicher effizient verwendet werden kann.
- Es ist eine weitere Aufgabe der vorliegenden Erfindung, ein Datenübertragungssystem bereitzustellen, in dem ein im Pufferspeicher gespeicherter Datenblock zu einem beliebigen Zeitpunkt von seiner Anfangsposition gelesen werden kann.
- Die Erfindung betrifft ein Datenübertragungssystem mit: mindestens zwei Prozessoren mit jeweils einem zu übertragenden, vorgegebenen Datenblock; einem Pufferspeicher mit einer vorgegebenen Anzahl von Pufferspeicherbereichen zum Speichern von von den mindestens zwei Prozessoren übertragenen Datenblöcken; und einer externen Zeigereinrichtung zum Speichern eines Adressendatenelements, das eine Anfangsposition eines der Pufferspeicherbereiche anzeigt; wobei das Adressendatenelement um einen Wert erhöht oder vermindert wird, der gemäß einem Verhältnis zwischen der Länge des Datenblocks und der Länge der Pufferspeicherbereiche bestimmt ist.
- Die Erfindung ist durch eine Vorrichtung gemäß Patentanspruch 1 definiert. Weitere Ausführungsformen sind in den beigefügten abhängigen Ansprüchen spezifiziert.
- Die Erfindung wird nachstehend in Verbindung mit den beigefügten Zeichnungen ausführlicher beschrieben; es zeigen:
- Fig. 1 ein Blockdiagramm zum Darstellen einer bevorzugten Ausführungsform eines erfindungsgemäßen Datenübertragungssystems;
- Fig. 2 ein Format von in der bevorzugten Ausführungsform von einem Zentralprozessor zu einem Ein-Ausgabefeld übertragenen Daten;
- Fig. 3 ein Format von in der bevorzugten Ausführungsform von einem Zentralprozessor zu einem Pufferspeicher übertragenen Daten;
- Fig. 4 eine erläuternde Darstellung der in der bevorzugten Ausführungsform vorgesehenen Arbeitsweise des Ein- Ausgabefeldes (einer externen Zeigereinrichtung);
- Fig. 5 eine Darstellung eines in der bevorzugten Ausführungsform verwendeten 2-Port-RAM-Speichers;
- Fig. 6 ein Blockdiagramm zum Darstellen einer in der bevorzugten Ausführungsform verwendeten externen Zeigereinrichtung;
- Fig. 7 und 8 Ablaufdiagramme zum Darstellen einer Arbeitsweise der bevorzugten Ausführungsform; und
- Fig. 9 ein Format von im Pufferspeicher gespeicherten Daten.
- Fig. 1 zeigt eine bevorzugte Ausführungsform eines erfindungsgemäßen Datenübertragungssystems. Das Datenübertragungssystem weist vier Zentralprozessoren 10, 12, 14 und 16, ein mit einer Leitung 20 verbundenes Ein-Ausgabefeld 18, einen Systembus 22, über den jeder der Zentralprozessoren 10, 12, 14 und 16 mit dem Ein-Ausgabefeld 18 verbunden wird, und eine mit den Zentralprozessoren 10, 12, 14 bzw. 16 verbundene Busarbitrations- oder -zuordnungsschaltung 24 auf.
- Die Buszuordnungsschaltung 24 steuert die Zentralprozessoren 10, 12, 14 und 16 so, daß diese, ohne daß ein Konflikt zwischen ihnen auftritt, auf das Ein-Ausgabefeld 26 zugreifen können. Das Ein-Ausgabefeld 18 weist einen 2-Port- RAM-Speicher 26 mit einem Pufferspeicher 28 und eine interne und eine externe Zeigereinrichtung 30 und 32 zum Speichern von Adressendaten PTRe und PTRi für einen Zugriff auf den Pufferspeicher 28 durch die Zentralprozessoren 10, 12, 14 und 16 bzw. das Ein-Ausgabefeld 18 auf. Jeder der Zentralprozessoren 10, 12, 14 und 16 führt der externen Zeigereinrichtung 32 zusätzlich zum Adressendatenelement PTRe ein einer Länge eines übertragenen Datenblocks entsprechendes Inkrementdatenelement "Lb" zu, so daß ein Datenelement 100 erhalten wird, wie in Fig. 2 dargestellt. Gleichzeitig überträgt jeder der Zentralprozessoren 10, 12, 14 und 16 einen Datenblock mit einem den Belegtzustand eines Pufferspeichers anzeigenden Flag "B", einem Kopf "KOPF" und einem Längendatenelement "Li" des übertragenen Datenblocks zum Pufferspeicher 28, wie in Fig. 3 dargestellt. Um einen Konflikt zwischen den Datenblöcken zu vermeiden, hat der Kopf "KOPF" einen bezüglich anderen Datenblöcken verschiedenen Wert. Das Adressendatenelement PTRe wird, wenn das Inkrementdatenelement "Lb" dazu addiert wird, aktualisiert, wie in Fig. 4 dargestellt.
- Fig. 5 zeigt ein Speicherdiagramm des 2-Port-RAM- Speichers 26 mit zwei Seiten für das Ein-Ausgabefeld 18 bzw. den Systembus 22. D. h., für das Ein-Ausgabefeld 18 weist der 2-Port-RAM-Speicher 26 Adressen $0000 bis $7FFF auf, die aus einem RAM-Speicherbereich mit Adressen $8000 bis $FFFF gebildet werden sollen. Andererseits besteht der 2-Port-RAM- Speicher 26 für den Systembus 22 aus einem Pufferspeicherbereich 28E, einem Speicherbereich 32E für die externe Zeigereinrichtung und einem Speicherbereich 30E für die interne Zeigereinrichtung, die dem Pufferspeicher 28, der externen Zeigereinrichtung 32 bzw. der internen Zeigereinrichtung 30 zugeordnet sind, wie in Fig. 1 dargestellt.
- Auf den Pufferspeicherbereich 28E wird durch die Zentralprozessoren 10, 12, 14 und 16 in einem Lese- und einem Schreibmodus zugegriffen. Im Speicherbereich 32E für die externe Zeigereinrichtung sind Adressendaten für einen Zugriff auf den Pufferspeicherbereich 28E gespeichert und auf den Speicherbereich 32E wird durch die Zentralprozessoren 10, 12, 14 und 16 im Lese- und im Schreibmodus zugegriffen. Wenn die aktuell gespeicherte Adresse durch den Zentralprozessor 10, 12, 14 oder 16 gelesen wird, wird das Adressendatenelement gemäß dem Inkrementdatenelement "Lb" für einen nachfolgenden Zugriff auf den Pufferspeicherbereich 28E automatisch aktualisiert. Auf den Speicherbereich 30E für die interne Zeigereinrichtung kann durch den Zentralprozessor 10, 12, 14 und 16 nicht zugegriffen werden, es kann ausschließlich durch das Ein-Ausgabefeld 18 darauf zugegriffen wird.
- Fig. 6 zeigt die externe Zeigereinrichtung 32 mit einer Zeitsteuerungseinrichtung 40 zum Zuführen von Zeitsteuerungssignalen RWS, RDGATE, LATCH, INGATE und WSEL, einem De codierer 42 zum Decodieren eines Adressensignals, einer Torschaltung 44 zum Steuern der Übertragung eines Datenelements, einem RAM-Speicher 46 zum Speichern eines vorgegebenen Datenelements, einer zwischen der Torschaltung 44 und dem RAM-Speicher 46 geschalteten Signalspeicherschaltung 48 zum Speichern eines aus dem RAM-Speicher 46 ausgelesenen Signals, einem Addierglied 50 zum Addieren des Leseadressendatenelements A und eines Inkrementdatenelements B, einer Auswahleinrichtung 52 zum Auswählen zwischen Eingangssignalen an Eingängen X und Y, um ein Ausgangssignal Q in den RAM- Speicher 46 zu schreiben, und einer Adressensteuerungseinrichtung 54 zum Maskieren des Inkrementdatenelements "Lb" des Datenelements 100.
- Das Ein-Ausgabefeld 18, das die externe Zeigereinrichtung 32 aufweist, arbeitet in einem ersten und in einem zweiten Modus. Der erste Modus wird als normale Operation ausgeführt, wenn ein Adressensignal im Decodierer 42 decodiert wird, um auf Adressen zuzugreifen, die von einer der externen Zeigereinrichtung 32 zugeordneten Adresse verschieden ist, und der zweite Modus wird als besondere erfindungsgemäße Operation ausgeführt, wenn ein Adressensignal im Decodierer decodiert wird, um auf das der externen Zeigereinrichtung 32 zugeordnete Adressensignal zuzugreifen.
- Im Schreibmodus ist die Torschaltung 44 geschlossen, und der Eingang Y der Auswahleinrichtung 52 offen, so daß dem RAM-Speicher 46 über die Auswahleinrichtung 52 ein vorgegebenes Datenelement zugeführt wird. Im Lesemodus wird ein im RAM-Speicher 46 gespeichertes Datenelement über die Signalspeicherschaltung 48 und die Torschaltung 44 dem Systembus 22 zugeführt.
- Hierin wird vorausgesetzt, daß der Zentralprozessor 10 durch die Buszuordnungsschaltung 24 ausgewählt ist, um auf die externe Zeigereinrichtung 32 zuzugreifen. Ein den RAN- Speicher 46, der der externen Zeigereinrichtung 32 zugeordnet ist, anzeigendes Adressensignal wird über einen Adressenbus einem Decodierer 42 zugeführt. Im Decodierer 42 wird ein der Steuerungseinrichtung 40 zuzuführendes AINC- (Auto- Inkrement-) Signal erzeugt, indem das Adressensignal ausschließlich der einem Auto-Inkrementdatenelement zugeordneten unteren acht Bit decodiert wird, so daß die Torschaltung 44 und die Signalspeicherschaltung 48 öffnen. Dadurch wird ein im RAM-Speicher 46 gespeichertes Adressendatenelement über die Signalspeicherschaltung 48 und die Torschaltung 44 dem Zentralprozessor 10 zugeführt. Das Inkrementdatenelement "Lb" wird zusammen mit dem Leseadressensignal dem Adressenbus zugeführt. Gleichzeitig wird das Leseadressendatenelement in der Signalspeicherschaltung 48 gespeichert, um es dem Eingang A des Addierglieds 50 zuzuführen, so daß das Adressendatenelement zum Inkrementdatenelement "Lb" addiert wird, das vom Adressenbus dem Eingang B des Addierglieds 50 zugeführt wird. Das durch die Addition erhaltene Datenelement wird über die Auswahleinrichtung 52 dem RAM-Speicher 4-6 zugeführt, so daß das durch die Addition erhaltene Datenelement darin als aktualisiertes Adressendatenelement gespeichert wird. Schließlich wird ein den Abschluß des Zugriffs anzeigendes Signal DTACK von der Steuerungseinrichtung 40 dem Zentralprozessor 10 zugeführt. Der Zentralprozessor 10 überträgt das in den Pufferspeicher 28 zu schreibende Datenelement durch Zugriff auf die von der externen Zeigereinrichtung 32 zugeführte Adresse.
- Nachstehend wird diese Arbeitsweise in Verbindung mit den Fig. 7 bis 9 erneut erläutert.
- In Fig. 7 wird zusätzlich vorausgesetzt, daß der Zentralprozessor 10 durch die Buszuordnungsschaltung 24 ausgewählt wird. Wenn das ausgewählte Signal von der Buszuordnungsschaltung 24 dem Zentralprozessor 10 zugeführt wird, führt der Zentralprozessor 10 der externen Zeigereinrichtung 32 ein vorgegebenes Signal zu. In Antwort auf das vom Zentralprozessor 10 zugeführte Signal wird dem Zentralprozessor 10 ein in der externen Zeigereinrichtung 32 gespeichertes Adressensignal PTRe zugeführt. Gleichzeitig erfaßt der Zentralprozessor 10 eine Blocklänge "Li" eines übertragenen Datenblocks (S31), und ein Auto-Inkrementdatenelement "Lb" wird gemäß der Blocklänge "Li" berechnet (S32), um ein Adressensignal 100 zu erzeugen, das das Inkrementdatenelement "Lb" enthält, wie in Fig. 2 dargestellt. Wenn beispielsweise vorausgesetzt wird, daß die minimale Speicherbiltlänge der externen Zeigereinrichtung 32 64 Bit beträgt, wird die Blocklänge "Li" durch 64 dividiert. Daraufhin wird ein ganzzahliger Wert des Rechenergebnisses der Division zum Wert "1" addiert, um das Inkrementdatenelement zu erzeugen.
- Dann wird das aktualisierte Datenelement 100 vom Zentralprozessor 10 über den Systembus 22 der externen Zeigereinrichtung 32 zugeführt (S33). Das Inkrementdatenelement "Lb" wird zum gelesenen und im Signalspeicher gespeicherten Adressendatenelement addiert, so daß darin anstelle des vorangehenden Adressendatenelements ein nachfolgendes Adressendatenelement gespeichert wird, das eine Anfangsadresse eines von einem anderen Prozessor anschließend übertragenen Datenelements darstellt.
- Daraufhin wird eine Anfangsadresse des Datenblocks gemäß dem Datenelement der externen Zeigereinrichtung 32 (S34) bestimmt, so daß der Datenblock vom Zentralprozessor zum Pufferspeicher 28 übertragen wird (S35). Wenn die Datenüber tragung beendet ist, nimmt das den Belegtzustand des Pufferspeichers anzeigende Flag "B" den Wert "1" an (S36).
- Fig. 8 zeigt ein Ablaufdiagramm der bevorzugten Ausführungsform für den Fall, daß ein im Pufferspeicher 28 gespeichertes, vorgegebenes Datenelement unter Verwendung der internen Zeigereinrichtung 30 der Leitung 20 zugeführt wird. Wenn eine Anfangsadresse eines übertragenen Datenblocks gemäß einem in der internen Zeigereinrichtung 30 gespeicherten Adressendatenelement PTRi bestimmt ist (S41), wird festgelegt, ob ein Kopf "KOPF" an einer Position, die mit der erfaßten Anfangsadresse 42 in einer vorgegebenen Beziehung steht, gesetzt ist oder nicht. Wenn der Kopf "KOPF", wie in Fig. 9 dargestellt, bei "a" und "b" erfaßt wird, wird festgestellt, ob das den Belegtzustand des Pufferspeichers anzeigende Flag "B" auf "1" gesetzt ist oder nicht (S43). Wenn das den Belegtzustand des Pufferspeichers anzeigende Flag "B" auf "1" gesetzt ist, wird der Datenblock von der Anfangsadresse gelesen und zur Leitung 20 übertragen (S44). Wenn das den Belegtzustand des Pufferspeichers anzeigende Flag "B" nicht auf "1" gesetzt ist, wird der Datenblock nicht gelesen, bis das den Belegtzustand des Pufferspeichers anzeigende Flag "B" den Wert "1" annimmt. Wenn die Datenübertragung beendet ist, wird das den Belegtzustand des Pufferspeichers anzeigende Flag "B" auf "0" zurückgesetzt (S45), wird das vorangehende Adressendatenelement PTRi der internen Zeigereinrichtung 30 gemäß der Blocklänge "Li" aktualisiert und springt die Verarbeitung zu Schritt S41 zurück.
- Wenn das in der internen Zeigereinrichtung 30 gespeicherte Adressendatenelement PTRi eine Zwischenposition des Datenblocks anzeigt, an dem der Kopf "KOPF" nicht erfaßt wird, wie in Fig. 9 bei "c" dargestellt, wird ein Kopf "KOPF" im Pufferspeicher 28 gesucht (S47), wird das falsche Adressendatenelement gemäß der Position des gesuchten Kopfes "KOPF" korrigiert (S48) und springt die Verarbeitung zurück zu Schritt S41.
- Wie vorstehend beschrieben, wird in der bevorzugten Ausführungsform das Adressendatenelement PTRe der externen Zeigereinrichtung 32 gemäß der Länge eines zu übertragenden Datenblocks aktualisiert, so daß der Datenblock auf einmal übertragen werden kann. Dadurch wird die Betriebsgeschwindigkeit des Systems erhöht. Außerdem wird der ungenutzte Teil jedes der Pufferspeicherbereiche reduziert, so daß der Pufferspeicher 28 effizient verwendet werden kann.
- Außerdem weist der zu übertragende Datenblock einen Kopf "KOPF" auf, so daß ein im Pufferspeicher gespeicherter Datenblock zu einem beliebigen Zeitpunkt von seiner Anfangsposition gelesen werden kann.
Claims (7)
1. Datenübertragungssystem mit:
mindestens zwei Prozessoren (10, 12, 14, 16) mit
jeweils einem zu übertragenden, vorgegebenen
Datenblock;
einem Pufferspeicher (28) mit einer vorgegebenen
Anzahl von Pufferspeicherbereichen zum Speichern von
von den mindestens zwei Prozessoren übertragenen
Datenblöcken; und
einer Zeigereinrichtung (32), auf die durch einen
ausgewählten der mindestens zwei Prozessoren (10, 12,
14, 16) zugegriffen wird und zum Speichern von
Adressendaten, die eine Anfangsadresse im Pufferspeicher
bezeichnen;
gekennzeichnet durch eine Einrichtung zum Erhöhen
und Vermindern der Adressendaten (100) um einen Wert,
der gemäß dem Verhältnis zwischen der Länge des
Datenblocks und der Länge eines Speicherbereichs des
Pufferspeichers bestimmt ist.
2. Datenübertragungssystem nach Anspruch 1, dadurch
gekennzeichnet, daß die Zeigereinrichtung (32) und der
Pufferspeicher (28) in einem Ein-Ausgabefeld (18)
angeordnet sind.
3. Datenübertragungssystem nach Anspruch 1, ferner
gekennzeichnet durch:
eine im Ein-Ausgabefeld (18) angeordnete, weitere
Zeigereinrichtung (30) zum Speichern von Adressendaten,
die eine Anfangsadresse im Pufferspeicher bezeichnen,
in dem der von den Prozessoren übertragene Datenblock
gespeichert ist, wobei der Datenblock von der
Anfangsadresse des Pufferspeichers gelesen wird, um ihn zu
einer Peripherieschaltung zu übertragen,
wobei der Datenblock einen die Anfangsadresse des
Datenblocks anzeigenden Kopf aufweist;
der Kopf gesucht wird, wenn der im Pufferspeicher
gespeicherte Datenblock gelesen wird; und
der gespeicherte Datenblock gemäß den in der
Zeigereinrichtung gespeicherten Adressendaten vom Kopf
gelesen wird.
4. Datenübertragungssystem nach Anspruch 3, dadurch
gekennzeichnet, daß:
die Adressendaten korrigiert werden, so daß sie
eine Position des gesuchten Kopfes darstellen, wenn der
Kopf nicht an einer vorgegebenen Position angeordnet
ist.
5. Datenübertragungssystem nach einem der vorangehenden
Ansprüche, gekennzeichnet durch:
einen Systembus (22) zum Übertragen von Daten von
den mehreren Prozessoren zum Pufferspeicher; und
eine Buszuordnungsschaltung (24), durch die die
Benutzung des Systembusses für einen ausgewählten der
mehreren Prozessoren reserviert wird.
6. Datenübertragungssystem nach Anspruch 1, dadurch
gekennzeichnet, daß:
die Zeigereinrichtung (32) in einem
Ein-Ausgabefeld (18) angeordnet ist, wobei das Ein-Ausgabefeld eine
weitere Zeigereinrichtung (30) zum Speichern eines
Adressensignals aufweist, das eine Anfangsadresse des
Pufferspeichers bezeichnet, wobei ein Datenblock von
der Anfangsadresse des Pufferspeichers gelesen wird, um
ihn zu einer Peripherieschaltung zu übertragen.
7. Datenübertragungssystem nach Anspruch 6, dadurch
gekennzeichnet, daß:
durch die mehreren Prozessoren auf die
Zeigereinrichtung (32) zugegriffen wird, während durch das Ein-
Ausgabefeld (18) auf die weitere Zeigereinrichtung (30)
zugegriffen wird.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3106805A JP2836283B2 (ja) | 1991-04-11 | 1991-04-11 | バッファ管理方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69229423D1 DE69229423D1 (de) | 1999-07-22 |
DE69229423T2 true DE69229423T2 (de) | 2000-02-17 |
Family
ID=14443076
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69229423T Expired - Fee Related DE69229423T2 (de) | 1991-04-11 | 1992-04-10 | Datenübertragungssystem |
Country Status (6)
Country | Link |
---|---|
US (1) | US5555380A (de) |
EP (1) | EP0509722B1 (de) |
JP (1) | JP2836283B2 (de) |
AU (1) | AU661301B2 (de) |
CA (1) | CA2065894C (de) |
DE (1) | DE69229423T2 (de) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5412611A (en) * | 1992-03-17 | 1995-05-02 | Fujitsu, Limited | FIFO memory device capable of writing contiguous data into rows |
GB2291230B (en) * | 1992-10-15 | 1996-10-16 | Fujitsu Ltd | Fifo memory devices |
GB2297639B (en) * | 1992-10-15 | 1996-10-16 | Fujitsu Ltd | Fifo memory devices |
US5634099A (en) * | 1994-12-09 | 1997-05-27 | International Business Machines Corporation | Direct memory access unit for transferring data between processor memories in multiprocessing systems |
JP3078204B2 (ja) * | 1995-06-01 | 2000-08-21 | 株式会社東芝 | 磁気ディスク装置及び磁気ディスク装置におけるバッファ管理方法 |
US5675829A (en) * | 1995-07-07 | 1997-10-07 | Sun Microsystems, Inc. | Method and apparatus for coordinating data transfer between hardware and software by comparing entry number of data to be transferred data to entry number of transferred data |
US6347335B1 (en) * | 1995-09-22 | 2002-02-12 | Emc Corporation | System using a common and local event logs for logging event information generated by plurality of devices for determining problem in storage access operations |
GB9609833D0 (en) * | 1996-05-10 | 1996-07-17 | Memory Corp Plc | Memory device |
KR100427136B1 (ko) * | 1996-05-30 | 2004-08-11 | 마츠시타 덴끼 산교 가부시키가이샤 | 데이터변환장치 |
DE69702689T2 (de) * | 1996-05-30 | 2000-11-30 | Matsushita Electric Industrial Co., Ltd. | Vorrichtung zur Datenumwandlung für ein pseudointeraktives Datenkommunkationssystem |
JP3181515B2 (ja) * | 1996-09-11 | 2001-07-03 | 株式会社沖データ | データ転送方法及びその方法を用いたデータ転送装置 |
JP3635169B2 (ja) * | 1996-11-20 | 2005-04-06 | 松下電器産業株式会社 | データ伝送装置 |
US5961606A (en) * | 1997-06-30 | 1999-10-05 | Sun Microsystems, Inc. | System and method for remote buffer allocation in exported memory segments and message passing between network nodes |
US6332176B1 (en) * | 1998-08-07 | 2001-12-18 | Integrated Memory Logic, Inc. | Autohost controller |
US7389374B1 (en) | 2000-05-17 | 2008-06-17 | Marvell International Ltd. | High latency interface between hardware components |
US6871251B1 (en) * | 2000-05-17 | 2005-03-22 | Marvell International Ltd. | High latency interface between hardware components |
US6711572B2 (en) * | 2000-06-14 | 2004-03-23 | Xosoft Inc. | File system for distributing content in a data network and related methods |
US7281065B1 (en) | 2000-08-17 | 2007-10-09 | Marvell International Ltd. | Long latency interface protocol |
US7032042B2 (en) * | 2003-09-10 | 2006-04-18 | Intel Corporation | Request conversion |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS547252A (en) * | 1977-06-20 | 1979-01-19 | Hitachi Ltd | Program control system |
JPS54129942A (en) * | 1978-03-31 | 1979-10-08 | Fujitsu Ltd | Direct transfer system between sub-systems |
US4500958A (en) * | 1982-04-21 | 1985-02-19 | Digital Equipment Corporation | Memory controller with data rotation arrangement |
US4663706A (en) * | 1982-10-28 | 1987-05-05 | Tandem Computers Incorporated | Multiprocessor multisystem communications network |
US4599689A (en) * | 1983-02-28 | 1986-07-08 | Data Translations, Inc. | Continuous data transfer system |
JPS617967A (ja) * | 1984-06-15 | 1986-01-14 | インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション | I/oコントロ−ラ |
JPS61196349A (ja) * | 1985-02-27 | 1986-08-30 | Nec Corp | 共通バス制御方法 |
EP0273083B1 (de) * | 1986-12-30 | 1993-10-06 | International Business Machines Corporation | Nicht-sperrender Warteschlangenmechanismus |
US4914652A (en) * | 1988-08-01 | 1990-04-03 | Advanced Micro Devices, Inc. | Method for transfer of data between a media access controller and buffer memory in a token ring network |
DE68924040T2 (de) * | 1988-10-24 | 1996-04-18 | Ibm | Verfahren zum Austauschen von Daten zwischen Programmen in einem Datenverarbeitungssystem. |
JPH07122868B2 (ja) * | 1988-11-29 | 1995-12-25 | 日本電気株式会社 | 情報処理装置 |
JPH02149150A (ja) * | 1988-11-30 | 1990-06-07 | Nec Corp | 通信データバッファ制御方式 |
US5117486A (en) * | 1989-04-21 | 1992-05-26 | International Business Machines Corp. | Buffer for packetizing block of data with different sizes and rates received from first processor before transferring to second processor |
US5247626A (en) * | 1990-05-29 | 1993-09-21 | Advanced Micro Devices, Inc. | Fddi controller having flexible buffer management |
-
1991
- 1991-04-11 JP JP3106805A patent/JP2836283B2/ja not_active Expired - Fee Related
-
1992
- 1992-04-10 EP EP92303221A patent/EP0509722B1/de not_active Expired - Lifetime
- 1992-04-10 DE DE69229423T patent/DE69229423T2/de not_active Expired - Fee Related
- 1992-04-13 CA CA002065894A patent/CA2065894C/en not_active Expired - Fee Related
- 1992-04-13 AU AU14875/92A patent/AU661301B2/en not_active Ceased
- 1992-04-13 US US07/867,523 patent/US5555380A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP0509722B1 (de) | 1999-06-16 |
EP0509722A2 (de) | 1992-10-21 |
DE69229423D1 (de) | 1999-07-22 |
JP2836283B2 (ja) | 1998-12-14 |
EP0509722A3 (de) | 1994-01-12 |
US5555380A (en) | 1996-09-10 |
CA2065894C (en) | 1998-06-23 |
JPH04314163A (ja) | 1992-11-05 |
AU1487592A (en) | 1992-10-15 |
AU661301B2 (en) | 1995-07-20 |
CA2065894A1 (en) | 1992-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69229423T2 (de) | Datenübertragungssystem | |
DE69525531T2 (de) | Dataverarbeitungssystem mit ringförmiger Warteschlange in einem Seitenspeicher | |
DE69423928T2 (de) | Dynamisch programmierbarer Busarbiter mit Einrichtung zur historischen Rückmeldung | |
DE69834739T2 (de) | Ausgleichen von daten die zwischen verschiedenen leitern fliessen die auf unterschiedlichen frequenzen operieren | |
DE3346816C2 (de) | ||
DE3438869C2 (de) | ||
DE3751302T2 (de) | Anzeigesteuergerät. | |
DE2953861C2 (de) | ||
DE3642324C2 (de) | Multiprozessoranlage mit Prozessor-Zugriffssteuerung | |
DE2637054C3 (de) | Steuervorrichtung für einen Pufferspeicher | |
DE3587375T2 (de) | Schaltung zur zwischenspeicherung von bilddaten. | |
DE3688640T2 (de) | Suchgerät. | |
DE69031524T2 (de) | Verfahren und Vorrichtung zur Datenübertragung zwischen Prozessorelementen | |
DE10048072A1 (de) | Linklisten-DMA-Descriptor-Architektur | |
DE68927795T2 (de) | Übertragungssystem mit einem gemeinsamen Speicher | |
DE2718551C3 (de) | Adressenumsetzer | |
DE69119149T2 (de) | Struktur zur direkten Speicher-zu-Speicher-Übertragung | |
DE2813080A1 (de) | Einrichtung zur speicheradressierung | |
DE3046912C2 (de) | Schaltungsanordnung zum selektiven Löschen von Cachespeichern in einer Multiprozessor-Datenverarbeitungsanlage | |
DE2912073C2 (de) | ||
DE69029815T2 (de) | Zentralisierte referenz- und änderungstabelle für eine virtuelle speicheranordnung | |
DE3441640A1 (de) | Streifenfeldspeichercontroller | |
DE2625113C2 (de) | Speicherschutzeinrichtung | |
DE3501903A1 (de) | Im pipelinebetrieb arbeitende datenverarbeitungseinrichtung | |
DE69031361T2 (de) | Taktsignalgeneratorsystem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |