DE68924109T2 - Verfahren und System für die Überwachung der Anzahl von freien Puffern. - Google Patents

Verfahren und System für die Überwachung der Anzahl von freien Puffern.

Info

Publication number
DE68924109T2
DE68924109T2 DE68924109T DE68924109T DE68924109T2 DE 68924109 T2 DE68924109 T2 DE 68924109T2 DE 68924109 T DE68924109 T DE 68924109T DE 68924109 T DE68924109 T DE 68924109T DE 68924109 T2 DE68924109 T2 DE 68924109T2
Authority
DE
Germany
Prior art keywords
signal
buffers
upper limit
limit value
lower limit
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
Application number
DE68924109T
Other languages
English (en)
Other versions
DE68924109D1 (de
Inventor
Kuniaki Oki Electric I Kishino
Tamiya Oki Electric I Nakamura
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Publication of DE68924109D1 publication Critical patent/DE68924109D1/de
Application granted granted Critical
Publication of DE68924109T2 publication Critical patent/DE68924109T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Information Transfer Systems (AREA)
  • Bus Control (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Complex Calculations (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Time-Division Multiplex Systems (AREA)

Description

  • Diese Erfindung bezieht sich auf ein Pufferüberwachungssystem und insbesondere ein Peripherie- Pufferüberwachungssystem, das an einen Mikrocomputer gekoppelt ist, der mindestens einen Unterbrechungsport aufweist, der die Puffer häufig erfassen/freigeben muß. Ein Stand der Technik System US-A- 3 665 416 von Hikosata et al. beschreibt ein Echtzeit-Verarbeitungssystem, das Pufferspeicherung aufweist, und in dein der Fluß der Eingabeinformation in einen Puffer durch Vergleichen der Werte eines einspeichernden Adressenzählers und eines Grenzwertzählers gesteuert wird, und durch Vergleichen eines auspeichernden Adressenzählers und eines Untergrenzwertzählers und Generieren eines von den Vergleichen abhängigen Koinzidenzsignals generiert wird.
  • Eine Steuermethode des Typs mit aufgelisteter (I/O) Eingabe-Ausgabe oder speicherorientierte (I/O) Eingabe-Ausgabe-Steuermethode wird in einem Mikrocomputersystem verwendet. Einer solchen Methode gemäß, ist jedes periphere Eingabe-Ausgabeelement einem entsprechenden speziellen Bereich in einem Speicherfeld als sein eigener Puffer zugeordnet, und Zugriff durch den Mikrocomputer geschieht auf dieselbe Weise wie bei einer normalen Speicheradresse.
  • Gibt es viele (I/O) Eingabe-Ausgabe-Einrichtungen zu handhaben, und Speicherbereiche eines Speicherfeldes sind als ihre Puffer zugeordnet, so ist ein spezielles Puffersteuerelement zur Steuerung deren Priorität oder Puffernummer erforderlich, um einen Mangel an verfügbaren Speicherbereichen zu vermeiden und/oder um den gesamten Durchsatz des Systems zu steuern.
  • Es wird jetzt auf die Abbildung 1 der beiliegenden Zeichnungen Bezug genommen, wobei es sich um ein allgemeines Blockdiagramm eines herkömmlichen Puffersteuersysterns handelt, das an ein Mikrocomputersystem gekoppelt ist, das in einem Datenübertragungs-/Empfangssystem verwendet wird.
  • Bezugnehmend auf die Abbildung 1 ist dort ein Puffersteuerelement (BC) gezeigt, das funktionsmäßig an periphere (I/O) Eingabe-Ausgabe-Einrichtungen 12 zur Steuerung ihrer Puffer angeschlossen ist, die in einem (nicht gezeigten) Speicher zugeordnet sind. Das Puffersteuerelement 10 kann die Anzahl der verfügbaren Puffer und Adressen der Puffer speichern, und gibt ein digitales Puffernummernsignal BN aus, das die Anzahl verfügbarer Puffer darstellt. Ein (I/O) Eingabe-Ausgabe-Steuerelement (hiernach, IOC) 14 zur Steuerung der I/O-Einrichtungen, empfängt das Signal BN (Pufferzahl) und schreibt, falls aufgefordert, vorbestimmte Daten in den Puffer und liest Daten aus dem Puffer. Eine Busleitung 16, in Abbildung 1 in teilweise ausgelassener Form gezeigt, verbindet Hauptelemente wie z.B. einen Nurlesespeicher (ROM, nicht gezeigt), einen Direktzugriffsspeicher (RAM, nicht gezeigt) miteinander und mit einer zentralen Verarbeitungseinheit 18 (hiernach, CPU), die für insgesamte Steuerung des Systems sorgt.
  • In diesem System überwacht das Puffersteuerelement (BC) den Status der Eingabe-Ausgabe-Einrichtungen 12. Wenn das Puffersteuerelement (BC) eine Aufforderung von einer Eingabe- Ausgabe-Einrichtung 12 erhält, ordnet das Puffersteuerelement (BC) 10 die Eingabe-Ausgabe-Einrichtung einem verfügbaren Puffer zu, subtrahiert 1 von der vorher gespeicherten verfügbaren Pufferzahl, die ursprünglich von der CPU 18 eingestellt wurde, und schreibt die Adressen der verfügbaren Puffer neu. Andererseits, wenn eine andere Eingabe-Ausgabe- Einrichtung ihren Puffer freigibt, addiert das Puffersteuerelement 10 eine 1 zur verfügbaren Pufferzahl.
  • Was die Funktion der CPU 18 anbelangt, wann immer die CPU 18 die Zahl der verfügbaren Puffer wissen muß, muß sie die Zahl aus dem Puffersteuerelement 10 über den ICO 14, unter Verwendung eines zweckdienlichen und konventionellen ("READ") Leseoperation, lesen. Daher, wenn die CPU 18 eine spezielle Funktion, wie z.B. Steuerung eines Telefonverrnittlungssystems mit einer großen Anzahl von Eingabe-Ausgabe-Einrichtungen, ausführt, die häufigen Austausch und häufige Erfassung/Freigabe der Puffer erfordern, so muß die CPU 18 solche "READ"-Operationen mehrere Male in einem kurzen Intervall wiederholen, selbst wenn sich die Zahl verfügbarer Puffer nicht verändert hat, um die verfügbaren Puffer zu verwalten. Im allgemeinen verbrauchen (READ/WRITE) LESE- SCHREIB-Operationen, die in einer üblichen CPU, wie z.B. einem Mikrocomputer, ausgeführt werden, mehr Ausführungszeit (Taktzyklen) als die anderen Operationen. Der Gesamtdurchsatz des Systems wird dadurch schwerwiegend begrenzt.
  • Die Erfindung beabsichtigt die obige Begrenzung hinsichtlich
  • Systemdurchsatz zu eliminieren.
  • Ein Ziel unserer Erfindung ist, eine Pufferüberwachungsmethode bereitzustellen, bei der keine Notwendigkeit besteht das Puffersteuerelement mit der CPU zu synchronisieren, oder für Zusammenarbeit des Puffersteuerelements mit den üblichen anderen Operationen der zentralen Verarbeitungseinheit (CPU) zu sorgen.
  • Daher wird der gesamte Durchsatz des Systems wesentlich erhöht.
  • Ein weiteres Ziel der Erfindung ist, ein System zu realisieren, das die Methode ausführt. Dieses Ziel wird mit einem System realisiert, das in der Lage ist die Zahl verfügbarer Puffer zwischen zwei gewünschten Werten, unter Verwendung einer Vielheit von D-Latch-Stromkreisen und an sie gekoppelte Vergleichsschaltungen, zu steuern.
  • Eine Methode zur Überwachung der Zahl verfügbarer Puffer, in Übereinstimmung mit der Erfindung, wird in einem System ausgeführt, das an eine zentrale Verarbeitungseinheit (CPU) gekoppelt ist, die mindestens einen Unterbrechungseingangsport aufweist. Die Methode umfaßt folgende Schritte:
  • (a) Speichern eines oberen Grenzwertes;
  • (b) Speichern eines unteren Grenzwertes, der niedriger als der obere Grenzwert ist, die oberen und unteren Grenzwerte definieren dazwischen einen Bereich von Werten;
  • (c) Überwachen eines Status von jedem der Puffer und produzieren eines, auf die Zahl der unbenutzten Puffer hinweisendes, ersten Signals; dadurch gekennzeichnet, daß
  • (d) ein zweites Signal produziert wird, wenn das erste Signal größer als der obere Grenzwert oder kleiner als der untere Grenzwert ist;
  • (e) ein Unterbrechungssignal in Reaktion auf das zweite Signal produziert, und ein neuer oberer Grenzwert und ein neuer unterer Grenzwert auf gegenüberliegenden Seiten besagter Zahl unbenutzter Puffer, eingestellt wird.
  • Außerdem, ist erfindungsgemäß ein System zur Überwachung unbenutzter Puffer in einem Speicher vorgesehen, das an eine zentrale Verarbeitungseinheit gekoppelt ist, die mindestens einen Unterbrechungseingangsport aufweist, das System umfaßt:
  • (a) ein erstes Speichermittel zum Speichern eines oberen Grenzwertes und zur Erzeugung eines ersten Signals, das auf den oberen Grenzwert hinweist;
  • (b) ein zweites Speichermittel zum Speichern eines unteren Grenzwertes unter dem oberen Grenzwert, und das ein zweites Signal produziert, das auf den unteren Grenzwert hinweist, wobei die oberen und unteren Werte dazwischen einen Bereich von Werten definieren;
  • (c) ein Puffersteuermittel zur Überwachung eines Status von jedem der Puffer und Erzeugung eines dritten Signals, das auf die Zahl der unbenutzten Puffer hinweist;
  • (d) ein erstes Vergleichsmittel, das an besagtes erstes Speichermittel und besagtes Puffersteuermittel gekoppelt ist, um das erste Signal mit dem dritten Signal zu vergleichen;
  • (e) ein zweites Vergleichsmittel, das an besagtes zweite Speichermittel und besagte Puffersteuermittel gekoppelt ist, um das zweite Signal mit dem dritten Signal zu vergleichen;
  • (f) ein Unterbrechungssteuermittel, das an besagtes erste Vergleichsmittel und besagtes zweite Vergleichsmittel gekoppelt ist, um ein Unterbrechungssignals zu erzeugen, wenn das eine oder andere der vierten bzw. fünften Signale, die von den ersten und zweiten Vergleichsmitteln erzeugt wurden, wenn die Zahl der unbenutzten Puffer über dem oberen Grenzwert oder unter dem unteren Grenzwert liegt darauf hinweist, daß die Zahl der unbenutzten Puffer außerhalb des Bereiches von Werten liegt.
  • Falls notwendig, wäre es möglich die Zahl der D- Latch-Stromkreise oder die Zahl der Vergleicher zu erhöhen. Außerdem läßt sich die Methode durch Verwendung von Software- Unterbrechung mit einem Microcomputer realisieren, der fähig ist das Programm auf Befehl zu unterbrechen (Software- Unterbrechung).
  • Die Erfindung wird mit Bezugnahme auf die Abbildungen 2 bis 5 der bei liegenden Zeichnungen weiter beschreiben, von denen:
  • Die Abbildung 2 ein detailliertes Blockdiagramm einer bevorzugten Ausführung der Erfindung ist;
  • Die Abbildung 3 ein allgemeines Flußdiagramm zur Erläuterung ist, wie man mit der Erfindung vorangeht;
  • Die Abbildung 4 ein Diagramm zur Erläuterung einer Funktion der in Abbildung 2 gezeigten Erfindung ist; und die Abbildung 5 ist ein weiters Diagramm zur Erläuterung einer weiteren Funktion der, in der Abbildung 2 gezeigten, Erfindung ist.
  • Die Abbildung 2 zeigt ein bevorzugtes Ausführungsbeispiel des erfindungsgemäßen Systems. Ein Puffersteuerelement (BC) 20 besitzt ähnliche Funktionen wie das herkömmliche Puffersteuerelement 10 in der Abbildung 1 und gibt ein Pufferzahlsignal BN aus, das ein 4-Bit-Digitalsignal umfaßt, das die Anzahl der verfügbaren Puffer darstellt. Ein D-Latch-Stromkreis höherwertiger Zahl HDN 22 zur Speicherung eines oberen Grenzwertes der verfügbaren Pufferzahl in 4-Bit digitaler Form empfängt den oberen Grenzwert über den Eingabeport D, und gibt ihn über den Ausgabeport Q, gemäß einem Taktgebersignal (Schreibfreigabe) IOWO aus, das einem Taktport C bereitgestellt wird. Ein D-Latch-Stromkreis (LND) 24 niederwertiger Zahl zur Speicherung eines unteren Grenzwertes der verfügbaren Pufferzahl in 4-Bit digitaler Form empfängt den unteren Grenzwert über den Eingabeport D und gibt ihn über den Ausgabeport Q, gemäß einem Taktgebersignal (Schreibfreigabe) IOW1 aus, das einem Taktport C bereitgestellt wird.
  • Diese D-Latch-Stromkreise ließen sich durch zweckdienliche ICs, wie z.B. 74LS175 Viererelement D-Typ Flipflopschaltung von Texas Instruments verwirklichen.
  • Ein Vergleichsstromkreis hochwertiger Zahl (HCMP) 26 vergleicht die betreffenden Größen des 4-Bit-Signals BN und des 4-Bit oberen Grenzwertes. ein Vergleichsstromkreis niederwertiger Zahl (hiernach, LCMP) 28 vergleicht die Größe des 4-Bit-Signals BN und des 4-Bit unteren Grenzwertes. Diese Vergleichsstromkreise werden mit einem IC, wie z.B. 74LS85 Größenvergleicher von Texas Instruments verwirklicht.
  • Ein Eingabe-Ausgabe-Steuerelement (IOC) 30 steuert die Eingabe-Ausgabe-Funktion des Systems. In diesem Ausführungsbeispiel enthält der IOC 30 einen Dekodierer 32, ein ODER-Gatter 34 mit 13 Eingabeports und einem NAND-Gatter 36 mit einem einzigen Eingabeport. Dieser IOC 30 wird durch Verwendung eines IC (integrierter Schaltung), wie z.B. 74LS138 Dekodierer für 3 bis 8 Leitungen von Texas Instruments verwirklicht.
  • Ein Unterbrechungssteuerelement (INTC) 38 steuert die Unterbrechungsfunktion des Systems. Dieses Unterbrechungssteuerelement wird mit einem IC, wie z.B. 8259A von Intel verwirklicht.
  • Eine Busleitung 40 verbindet die Haupteinrichtungen miteinander. Wie in der Abbildung gezeigt, umfaßt die Busleitung 40 Adressenbusse A0 bis A15, Datenbusse D0 bis D7, eine Schreibanforderungsleitung WR, eine Leseanforderungsleitung RD, und eine Eingabe- Ausgabe-Anforderungsleitung IORQ.
  • Eine zentrale Verarbeitungseinheit (hiernach, CPU) 42 im System hat einen Unterbrechungseingabeport INT und einen Unterbrechungsquittungs-Ausgabeport INTA. Diese CPU läßt sich mit einem IC, wie z.B. Zilogs Z80 verwirklichen.
  • Eine Funktion des oben beschriebenen Systems wird mit Hilfe des allgemeinen Flußdiagramms in der Abbildung 3 erläutert.
  • (Schritt 1)
  • Mit Bezugnahme auf die Abbildung 3, zunächst stellt die CPU 42 mit Hilfe des Eingabe-Ausgabe-Steuerelements 30 den oberen Grenzwert der Zahl der Puffer ein, die als 4-Bit digitale Daten in HND 22 gespeichert werden und stellt auch den unteren Grenzwert in LND 24 ein. Im Detail, in Reaktion auf einen Befehl von der CPU 42, aktiviert das Eingabe- Ausgabe-Steuerelement 30 das HDN 22 und das LND 24, über deren Datenportbusse D0 bis D3, um obere bzw. untere Grenzwerte der Zahl verfügbarer Puffer, unter Verwendung der Schreibaktivierungssignale IOW1 und IOW0, zu schreiben, jeder der D-Latch-Stromkreise speichert die Grenzwerteingabe dazu und gibt diesen Wert ab jedem Ausgabeport Q aus.
  • (Schritt 2)
  • Das Puffersteuerelement 20 sendet ein 4-Bit-Signal BN an die Eingabeports B des HCMP 26 und LCMP 28.
  • (Schritt 3)
  • Im HCMP 26 wird das empfangene Signal mit dem Wert verglichen, der ab dem HND 22 an Port A gesendet wurde. Wenn der Wert ab Port A größer als jener ab dem Port B ist, geht es mit Schritt 4 weiter. Wenn nicht, geht die Schrittfolge auf Schritt 6.
  • (Schritt 4)
  • Im LCMP 28 wird das am Port B empfangene Signal BN mit dem Wert verglichen, der ab LND 24 an Port A gesendet wurde. Wenn der Wert ab Port A kleiner als der Wert ab Port B ist, dann geht es mit Schritt 5 weiter. Wenn nicht, geht die Schrittfolge auf Schritt 6.
  • (Schritt 5)
  • Der Schritt 5 zeigt eine typische Schleifenend- Verarbeitung, worin das System üblicherweise die Schritte 2, 3, 4 wiederholt.
  • (Schritt 6)
  • Wenn im Schritt 3, der am Port B empfangene Wert größer als der an Port A ist, mit anderen Worten, die Zahl verfügbarer Puffer BN überschreitet den oberen Grenzwert der im HND 22 gehaltenen Pufferzahl, so erzeugt das HCMP ein Unterbrechungsanforderungssignal (INT-a).
  • Das Signal INT-a wird in den Unterbrechungsanforderungsport IR&sub1; des INTC 38 eingegeben. Als Reaktion darauffordert das INTC 38 die CPU 41 auf Unterbrechung zu akzeptieren und ein vorbestimmtes Programm A auszuführen, wie z.B. Erhöhung des oberen Grenzwertes auf einen viel höheren Wert.
  • (Schritt 7)
  • Nach Beendigung von Schritt 6 quittiert die CPU 42 die Unterbrechung über den Quittierausgabeport INTA, und führt das Programm A sofort aus (Rücksetzen des oberen Grenzwertes und Rückkehr zu Schritt 1).
  • (Schritt 8)
  • Wenn bei Schritt 4, der am Port B empfangene Wert kleiner als der an Port A ist, mit anderen Worten, die Zahl BN unter den im LND gehaltenen unteren Grenzwert fällt, so erzeugt das LCMP ein Unterbrechungsanforderungssignal (INT-b)
  • Das Signal INT-b wird in den Unterbrechungsanforderungsport IR&sup0; des INTC 38 eingegeben. Als Reaktion auf das Signal INT-b fordert das INTC 38 die CPU 41 auf Unterbrechung zu akzeptieren und ein vorbestimmtes Programm B auszuführen, wie z.B. Reduzierung des früheren unteren Grenzwertes auf einen kleineren Wert.
  • (Schritt 9)
  • Nach Beendigung von Schritt 8 quittiert die CPU 42 die Unterbrechung über den Quittierausgabeport INTA, und führt das Programm B sofort aus (Rücksetzen des unteren Grenzwertes und Rückkehr zu Schritt 1).
  • Normalerweise, wenn die Zahl verfügbarer Puffer zwischen dem oberen Grenzwert und dem unteren Grenzwert liegt, braucht die CPU die Zahlen nicht in kurzen Abständen überprüfen. Wenn eintritt, daß die Pufferzahl BN, den Bereich zwischen den oberen und unteren Grenzwerten übersteigt oder darunter fällt, wird die CPU 42 durch ein Unterbrechungssignal informiert. Deshalb wird der Durchsatz der CPU 42 erhöht.
  • Beispiele der oben beschriebenen Funktionen sind in Abbildung 4 und Abbildung 5 illustriert. In jenen Abbildungen zeigt die horizontale Achse Zahlen von Puffern, die vom System gesteuert werden. Der mit "L" bezeichnete linke Teil deutet große Zahlen an und der mit "S" bezeichnete rechte Teil deutet kleine Zahlen an.
  • In der Abbildung 4, im Status 4a, liegt die Zahl BN zuerst auf einem Mittelwert der Zahlen und anfänglich stellt die CPU 42 den oberen Grenzwert H0 und den unteren Grenzwert L0 auf gegenüberliegenden Seiten ein.
  • Reduziert sich die Zahl BN im nächsten Status 4b, auf einen Wert unterhalb des unteren Grenzwertes L0, wird die CPU 42 davon durch das Signal INT-b informiert, und führt das Programm B aus. Zum Beispiel zieht die CPU 42 eine vorbestimmte Zahl n0 von L0 ab und stellt einen neuen niedrigeren Grenzwert L1 ein. Außerdem, wenn notwendig, wird es möglich sein ein weiteres Programm, wie z.B. gleichzeitiges Abziehen der Zahl n0 von H0, auszuführen, um einen neuen oberen Grenzwert H1, wie im Status 4c gezeigt, einzustellen.
  • Die Abbildung 5 zeigt einen Fall bei dem sich die Zahl BN auf einen Wert erhöht, der über dem oberen Grenzwert H1 liegt. Im Status 4a, liegt die Zahl BN zuerst auf einem Mittelwert der Zahlen und anfänglich stellt die CPU 42 einen oberen Grenzwert H2 und einen unteren Grenzwert L2 auf gegenüberliegenden Seiten ein.
  • Erhöht sich die Zahl BN im nächsten Status und passiert den oberen Grenzwert H2, wird die CPU 42 davon durch das Signal INT-b informiert, und führt das Programm A aus. Zum Beispiel addiert die CPU 42 eine vorbestimmte Zahl n1 zu H2 ab und stellt einen neuen oberen Grenzwert H3 ein. Außerdem, wenn notwendig, wird es möglich sein ein weiteres Programm, wie z.B. gleichzeitiges Addieren der Zahl n1 zu L2, auszuführen, um einen neuen niedrigeren Grenzwert L3, wie im Status 5c gezeigt, einzustellen.
  • Die Erfindung wird, indem sie jetzt ausführlich beschrieben ist, wird jemandem mit normalem Geschick in der Technik augenscheinlich
  • sein, wie Änderungen und Modifikationen dazu vorgenommen werden können, ohne vom Gültigkeitsbereich der Erfindung abzuweichen wie sie darin aufgezeigt ist. Zum Beispiel, in beiden der in Abbildung 4 und 5 gezeigten
  • Fälle, kann jede der Zahlen n0 und n1 individuell geändert werden, und der obere Grenzwert und der untere Grenzwert lassen sich an unterschiedlichen Abständen von der Pufferzahl BN einstellen.

Claims (2)

1. Eine Methode zur Überwachung der Anzahl unbenutzter Puffer in einem Speicher, der an eine zentrale Verarbeitungseinheit (42) gekoppelt ist, die mindestens einen Unterbrechungseingabeport aufweist, die Methode folgende Schritte umfaßt:
(a) Speicherung eines oberen Grenzwertes;
(b) Speicherung eines unteren Grenzwertes, der niedriger als der obere Grenzwert ist, wobei die oberen und unteren Grenzwerte dazwischen einen Bereich von Werten definieren;
(c) Überwachung eines Status von jedem der Puffer und Erzeugung eines ersten Signals, das auf die Anzahl unbenutzter Puffer hinweist; dadurch gekennzeichnet, daß
(d) ein zweites Signal erzeugt wird, wenn das erste Signal mehr als der obere Grenzwert oder weniger als der untere Grenzwert beträgt;
(e) ein Unterbrechungssignal als Reaktion auf das zweite Signal erzeugt wird, und ein neuer oberer Grenzwert und ein neuer unterer Grenzwert auf gegenüberliegenden Seiten besagter Zahl unbenutzter Puffer eingestellt wird.
2. Ein System zur Überwachung der Zahl unbenutzter Puffer in einem Speicher, der an eine zentrale Verarbeitungseinheit (42) gekoppelt ist, die mindestens einen Unterbrechungseingabeport aufweist, das System umfaßt:
(a) ein erstes Speichermittel (22) zur Speicherung eines oberen Grenzwertes und ein erstes Signal produzierend, das auf den oberen Grenzwert hinweist;
(b) ein zweites Speichermittel (24) zur Speicherung eines unteren Grenzwertes unter dem oberen Grenzwert und ein Signal produzierend, das auf den unteren Grenzwert hinweist, wobei die oberen und unteren Grenzwerte dazwischen einen Bereich von Werten definieren;
(c) ein Puffersteuermittel (20) zur Überwachung eines Status eines jeden der Puffer und ein drittes Signal produzierend, das auf die Anzahl von Puffern hinweist, die unbenutzt sind;
(d) ein erstes Vergleichsmittel (26), das an besagtes erste Speichermittel (22) und besagtes Puffersteuermittel (20) gekoppelt ist, zum Vergleichen des ersten Signals mit dem dritten Signal;
(e) ein zweites Vergleichsmittel (28), das an besagtes zweite Speichermittel (24) und besagtes Puffersteuermittel (20) gekoppelt ist, zum Vergleichen des zweiten Signals mit dem dritten Signal; gekennzeichnet durch,
(f) ein Unterbrechungssteuermittel (38), das an besagtes erste Vergleichsmittel (26) und besagtes zweite Vergleichsmittel (28) gekoppelt ist, um ein Unterbrechungssignal zu erzeugen, wenn eines der vierten bzw. fünften Signale, das von den ersten und zweiten Vergleichsmitteln erzeugt wird, wenn die Anzahl der unbenutzten Puffer über dem oberen Grenzwert oder unter dem unteren Grenzwert liegt, darauf hinweist, daß die Zahl der unbenutzen Puffer außerhalb des Bereiches von Werten liegt.
DE68924109T 1988-07-28 1989-07-27 Verfahren und System für die Überwachung der Anzahl von freien Puffern. Expired - Fee Related DE68924109T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63186791A JPH0237422A (ja) 1988-07-28 1988-07-28 数値管理方式

Publications (2)

Publication Number Publication Date
DE68924109D1 DE68924109D1 (de) 1995-10-12
DE68924109T2 true DE68924109T2 (de) 1996-04-18

Family

ID=16194649

Family Applications (1)

Application Number Title Priority Date Filing Date
DE68924109T Expired - Fee Related DE68924109T2 (de) 1988-07-28 1989-07-27 Verfahren und System für die Überwachung der Anzahl von freien Puffern.

Country Status (7)

Country Link
US (1) US5068784A (de)
EP (1) EP0353051B1 (de)
JP (1) JPH0237422A (de)
KR (1) KR960005106B1 (de)
AU (1) AU616987B2 (de)
CA (1) CA1328025C (de)
DE (1) DE68924109T2 (de)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5581705A (en) * 1993-12-13 1996-12-03 Cray Research, Inc. Messaging facility with hardware tail pointer and software implemented head pointer message queue for distributed memory massively parallel processing system
US5754889A (en) * 1993-12-22 1998-05-19 Adaptec, Inc. Auto write counter for controlling a multi-sector write operation in a disk drive controller
US5675797A (en) * 1994-05-24 1997-10-07 International Business Machines Corporation Goal-oriented resource allocation manager and performance index technique for servers
US5893924A (en) * 1995-07-28 1999-04-13 International Business Machines Corporation System and method for overflow queue processing
US5692156A (en) * 1995-07-28 1997-11-25 International Business Machines Corp. Computer program product for overflow queue processing
KR0156173B1 (ko) * 1995-11-21 1998-11-16 문정환 인터럽트 발생회로
US5841973A (en) * 1996-03-13 1998-11-24 Cray Research, Inc. Messaging in distributed memory multiprocessing system having shell circuitry for atomic control of message storage queue's tail pointer structure in local memory
US5864738A (en) * 1996-03-13 1999-01-26 Cray Research, Inc. Massively parallel processing system using two data paths: one connecting router circuit to the interconnect network and the other connecting router circuit to I/O controller
US5881316A (en) * 1996-11-12 1999-03-09 Hewlett-Packard Company Dynamic allocation of queue space using counters
US6216182B1 (en) * 1998-07-30 2001-04-10 Fore Systems, Inc. Method and apparatus for serving data with adaptable interrupts
US6216174B1 (en) 1998-09-29 2001-04-10 Silicon Graphics, Inc. System and method for fast barrier synchronization
KR20030032413A (ko) * 2001-10-18 2003-04-26 주식회사 엠씨글로벌 멀티미디어 데이터용 버퍼 구조 및 버퍼링 방법
US9323571B2 (en) 2004-02-06 2016-04-26 Intel Corporation Methods for reducing energy consumption of buffered applications using simultaneous multi-threading processor
US8268453B2 (en) 2009-08-06 2012-09-18 Synthesarc Inc. Steel based composite material

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3302185A (en) * 1964-01-20 1967-01-31 Jr Andrew P Cox Flexible logic circuits for buffer memory
US3665416A (en) * 1969-10-09 1972-05-23 Mitsuo Hikosaka On-line real time data processing system
JPS4919623A (de) * 1972-06-14 1974-02-21
US4228496A (en) * 1976-09-07 1980-10-14 Tandem Computers Incorporated Multiprocessor system
SE399773B (sv) * 1977-03-01 1978-02-27 Ellemtel Utvecklings Ab Adress- och avbrottsignalgenerator
US4169289A (en) * 1977-07-08 1979-09-25 Bell Telephone Laboratories, Incorporated Data processor with improved cyclic data buffer apparatus
US4754399A (en) * 1983-12-28 1988-06-28 Hitachi, Ltd. Data transfer control system for controlling data transfer between a buffer memory and input/output devices
JPS62182950A (ja) * 1986-02-07 1987-08-11 Nec Corp バツフア管理方式
US4845710A (en) * 1986-12-23 1989-07-04 Oki Electric Industry Co., Ltd. Dynamic buffer supervising system for a data link access protocol control

Also Published As

Publication number Publication date
DE68924109D1 (de) 1995-10-12
EP0353051A2 (de) 1990-01-31
US5068784A (en) 1991-11-26
CA1328025C (en) 1994-03-22
KR960005106B1 (ko) 1996-04-20
EP0353051A3 (de) 1992-01-29
KR900002196A (ko) 1990-02-28
AU3900889A (en) 1990-02-01
JPH0237422A (ja) 1990-02-07
EP0353051B1 (de) 1995-09-06
AU616987B2 (en) 1991-11-14

Similar Documents

Publication Publication Date Title
DE3224034C2 (de)
DE68924109T2 (de) Verfahren und System für die Überwachung der Anzahl von freien Puffern.
DE3300261C2 (de)
DE68928530T2 (de) Modulare Kreuzschienenzwischenverbindungen in einem digitalen Rechner
DE68924954T2 (de) Übertragungssystem für verteilte Datenbanken.
EP0006164B1 (de) Multiprozessorsystem mit gemeinsam benutzbaren Speichern
EP0010198A2 (de) Vorrichtung zur Steuerung des Seitenaustausches in einem Datenverarbeitungssystem mit virtuellem Speicher
EP0107026B1 (de) Speicherprogrammierbare Steuerung
DE2523372B2 (de) Eingabe-ZAusgabe-Anschlußsteuereinrichtung
DE3642324A1 (de) Multiprozessoranlage mit prozessor-zugriffssteuerung
DE4035837A1 (de) Bus-hauptschnittstellenschaltung mit transparenter unterbrechung einer datenuebertragungsoperation
DE1424762B2 (de) Datenverarbeitungsanlage
DE2054830C3 (de) Informationsverarbeitungsanlage mit Mitteln zum Zugriff zu Speicher-Datenfeldern variabler Länge
DE69122142T2 (de) Steuerungsanlage für ein Mehrprozessorsystem
EP0050305B1 (de) Einrichtung zur Steuerung des Zugriffes von Prozessoren auf eine Datenleitung
DE3750045T2 (de) Unterbrechungssteuerungsvorrichtung für eine virtuelle Maschine mit einer Vielzahl von Verarbeitungseinheiten.
DE4005042A1 (de) Architektur eines digitalen bewegungssteuerungselements hoher geschwindigkeit
DE29521444U1 (de) Anordnung mit Master- und Slave-Einheiten
DE68919638T2 (de) Rechner mit unterbrechungsgesteuerter Taktgeschwindigkeit und Verfahren für seinen Betrieb.
DE3855718T2 (de) Ubertragungssystem zwischen Prozessoren in einem Nachrichtenverarbeitungssystem mit Übertragung zwischen Ausführungsprozessoren während Übertragung zwischen anderen Prozessoren
DE3856342T2 (de) Busfehlerverarbeitungssystem
DE68926382T2 (de) Steuerungssystem für Übertragungsbefehle zwischen zentralen Verarbeitungseinheiten
DE2845218B1 (de) Mikroprogrammgesteuerte Ein-/Ausgabeeinrichtung und Verfahren zum Durchfuehren von Ein-/Ausgabeoperationen
DE3719711C2 (de)
DE68917015T2 (de) Umstrukturierungssystem für Ein/Ausgabesteuerungssysteme.

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee