DE69532383T2 - Verfahren und vorrichtung zur dynamischen erzeugung und erhaltung von rahmenbasierten abfrageprogrammen für das abfragen von isochronen und asynchronen funktionen, die wartezeiten und bandbreiten für die isochronen funktionen garantieren - Google Patents

Verfahren und vorrichtung zur dynamischen erzeugung und erhaltung von rahmenbasierten abfrageprogrammen für das abfragen von isochronen und asynchronen funktionen, die wartezeiten und bandbreiten für die isochronen funktionen garantieren Download PDF

Info

Publication number
DE69532383T2
DE69532383T2 DE69532383T DE69532383T DE69532383T2 DE 69532383 T2 DE69532383 T2 DE 69532383T2 DE 69532383 T DE69532383 T DE 69532383T DE 69532383 T DE69532383 T DE 69532383T DE 69532383 T2 DE69532383 T2 DE 69532383T2
Authority
DE
Germany
Prior art keywords
isochronous
functions
bus
asynchronous
polling
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
Application number
DE69532383T
Other languages
English (en)
Other versions
DE69532383D1 (de
Inventor
Shaun Knoll
Charles Jeff MORRISS
V. Ajay BHATT
Kottal Puthiya NIZAR
M. Richard HASLAM
Bala Sudarshan CADAMBI
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Application granted granted Critical
Publication of DE69532383D1 publication Critical patent/DE69532383D1/de
Publication of DE69532383T2 publication Critical patent/DE69532383T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40058Isochronous transmission
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/22Handling requests for interconnection or transfer for access to input/output bus using successive scanning, e.g. polling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40065Bandwidth and channel allocation

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich auf das Gebiet der Computersysteme. Insbesondere bezieht sich die vorliegende Erfindung auf serielle Busse zum Verbinden von Peripherieeinrichtungen mit den Systemeinheiten von Computersystemen, einschließlich der zugeordneten Steuereinrichtungen und Schnittstellen.
  • 2. Hintergrundinformationen
  • Eine Reihe zusammenhängender Betrachtungen macht es wünschenswert, über einen einzelnen, relativ schnellen, bidirektionalen, isochronen, kostengünstigen und dynamisch konfigurierbaren, seriellen Bus zum gleichzeitigen Verbinden isochroner sowie asynchroner Peripherieeinrichtungen mit der Systemeinheit eines Tischcomputersystems zu verfügen. Isochrone Peripherieeinrichtungen sind Peripherieeinrichtungen, die natürliche Echtzeitdaten, wie beispielsweise Sprache, bewegte Bilder und dergleichen, erzeugen. Diese zusammenhängenden Betrachtungen beinhalten:
  • Verbindung des Telefons mit dem Tischcomputer
  • Es wird erwartet, daß die Verschmelzung von Datenverarbeitung und Kommunikation die Basis der nächsten Generation von Leistungsanwendungen auf Tischcomputern bilden wird. Die Übertragung von maschinenorientierten und anwenderorientierten Datentypen von einem Ort oder einer Umgebung zu einem/einer anderen hängt von einer allgegenwärtigen und kostengünstigen Verbindungsfähigkeit ab. Bedauerlicherweise haben sich Datenverarbeitungs- und Kommunikations-Industrie unabhängig entwickelt. Im Ergebnis dessen muß eine breite Palette von Tischcomputer- und Telefonverbindungen unterstützt werden.
  • Bedienkomfort
  • Der Mangel an Flexibilität bei der Rekonfigurierung von Tischcomputern ist als die Achillesferse für deren weitere Entwicklung erkannt worden. Die Kombination von benutzerfreundlichen Grafikschnittstellen und den Hardware- und Software-Mechanismen, die der neuen Generation von Systembus-Architekturen zugeordnet sind, hat dazu geführt, daß Tischcomputer weniger konfrontativ und leichter rekonfigurierbar sind. Jedoch vom Standpunkt des Endbenutzers gesehen, fehlen den I/O-Schnittstellen des Tischcomputers, wie beispielsweise serielle/parallele Ports, Tastatur-/Maus-/Joystick-Schnittstellen, immer noch die Attribute von Einstecken und Einschalten [plug and play] oder sie unterliegen hinsichtlich des Typs der I/O-Einrichtungen, die direkt angeschlossen/getrennt werden können, zu vielen Beschränkungen.
  • Port-Erweiterung
  • Das Hinzufügen externer Peripherieeinrichtungen zu Tischcomputern ist weiterhin durch die Port-Verfügbarkeit beschränkt. Das Fehlen eines bidirektionalen, kostengünstigen, peripheren Busses mit geringer bis mittlerer Geschwindigkeit hat die Verbreitung von Peripherieeinrichtungen, wie beispielsweise Telefon-/Fax-/Modemadaptern, Anrufbeantwortern, Scannern, Persönliche Digitale Assistenten [Personal Digital Assistants] (PDA), Tastaturen, Mäusen etc., verzögert. Vorhandene Verbindungen werden für Ein- oder Zweipunkt-Produkte optimiert. Wie jede neue Funktion oder Fähigkeit zu dem Tischcomputer hinzugefügt wird, ist üblicherweise eine neue Schnittstelle definiert worden, um dieser Notwendigkeit zu entsprechen.
  • Mit anderen Worten, von diesem gewünschten seriellen Bus wird erwartet, daß er eine kostengünstige, gleichzeitige Verbindungsfähigkeit für die interaktiven Einrichtungen mit relativ geringer Geschwindigkeit von 10–100 kbps – wie beispielsweise Tastatur, Maus, Kopierstift, Peripherieeinrichtungen für Spiele, Peripherieeinrichtungen für virtuelle Realität und Monitore – sowie für die isochronen Einrichtungen mit mittlerer Geschwindigkeit von 500–5000 kbps – wie beispielsweise ISDN, PBX, POTS und andere Audio-Einrichtungen – bereitstellt. Es wird erwartet, daß eine Vielzahl beider Einrichtungstypen gleichzeitig verbunden und aktiv ist, und außerdem der letztere Einrichtungstyp mit garantierten Latenzzeiten und Bandbreiten versehen ist. Überdies wird erwartet, daß die Einrichtungen während des Betriebs angeschlossen und getrennt werden können, wobei die serielle Schnittstelle in der Lage ist, sich selbst dynamisch zu rekonfigurieren, ohne den Betrieb des Tischcomputersystems zu unterbrechen.
  • Es gibt verschiedene Technologien, die üblicherweise als serielle Busse zur Verbindung von Peripherieeinrichtungen mit Systemeinheiten von Computersystemen betrachtet werden. Jeder dieser Busse ist für die Behandlung eines speziellen Bereichs von Kommunikationen zwischen Systemeinheiten und Peripherieeinrichtungen ausgelegt. Spezielle Beispiele für diese Busse sind:
  • Apple®Desktop-Bus (ADB): Der ADB ist ein patentrechtlich geschützter Bus von Apple Computer Inc. Er ist ein serieller Bus für geringe Anforderungen, der ein einfaches Lese-/Schreibprotokoll für bis zu 16 Einrichtungen bereitstellt. Von Steuereinrichtungs- und Schnittstellen-Hardware werden nur Grundfunktionen verlangt. Somit ist zu erwarten, daß die Implementierungskosten gering sind. Jedoch unterstützt der ADB Datenübertragungsgeschwindigkeiten nur bis zu 90 kbps, gerade ausreichend für die Kommunikation mit asynchronen Tischcomputereinrichtungen, wie beispielsweise Tastaturen und Mäusen. Er ist nicht in der Lage, gleichzeitig die zuvor beschriebenen isochronen Einrichtungen mit mittlerer Geschwindigkeit zu unterstützen.
  • Access.bus (A.b): Der A.b wird von der Access.bus Industry Group entwickelt. Er basiert auf der I2C-Technologie der Philips Corporation und einem Software-Modell der Digital Equipment Corporation (DEC). Der A.b ist in erster Linie auch für asynchrone Einrichtungen, wie beispielsweise Tastaturen und Mäuse, ausgelegt. Der A.b wird jedoch allgemein als vielseitiger als der ADB betrachtet. Das Protokoll des A.b verfügt über gut definierte Spezifikationen für dynamischen Anschluß, Arbitrierung, Datenpakete, Konfiguration und Software-Schnittstelle. Von Steuereinrichtungs- und Schnittstellen-Hardware wird ein mittlerer Umfang an Funktionen verlangt. Folglich sind die Implementierungskosten für die gewünschte Tischcomputeranwendung nur bedingt wettbewerbsfähig. Während die Adressierung für bis zu 127 Einrichtungen ermöglicht wird, ist die praktische Belastung durch Kabellängen und Energieverteilungsbetrachtungen begrenzt. Revision 2.2 spezifiziert den Bus für einen 100-kbps-Betrieb, aber die Technologie verfügt über eine Reserve, um bei Verwendung derselben separaten Takt- und Datenleitungen bis zu 400 kbps zu gehen. Jedoch bei 400 kbps ist der A.b noch nicht in der Lage, den Anforderungen isochroner Einrichtungen mit mittlerer Geschwindigkeit zu entsprechen.
  • Spezifikation serieller Bus P1394 von IEEE (auch bekannt als FireWire)
  • Der FireWire ist ein serieller Hochleistungsbus. Er ist in erster Linie für Festplatten- und Video-Peripherieeinrichtungen ausgelegt, welche Bandbreiten über 100 Mbps hinaus benötigen können. Sein Protokoll unterstützt sowohl isochrone als auch asynchrone Übertragungen über denselben Satz von 4 Signalleitungen, die in unterschiedliche Paare von Takt- und Datensignalen unterteilt sind. Somit ist er in der Lage, gleichzeitig den Anforderungen sowohl interaktiver Einrichtungen mit geringer Geschwindigkeit als auch isochroner Einrichtungen mit mittlerer Geschwindigkeit gerecht zu werden. Es werden jedoch aufwändige Funktionen von der Steuereinrichtungs- und Schnittstellen-Hardware verlangt, was FireWire zu einer in bezug auf die Kosten nicht wettbewerbsfähigen Version für die gewünschte Tischcomputeranwendung macht. Darüber hinaus kommen die Einrichtungen der ersten Generation, die auf der FireWire-Spezifikation basieren, gerade erst auf den Markt.
  • Die Concentration-Highway-Schnittstelle (CHI): Die CHI wird von der American Telephone & Telegraph Corporation (AT&T) für Terminals und digitale Vermittlungssysteme entwickelt. Es ist eine serielle Voll-Duplex-Zeitmultiplexverfahren-Schnittstelle für die Übertragung digitalisierter Sprache in einem Kommunikationssystem. Das Protokoll besteht aus einer Anzahl von fixierten Zeitfenstern, die Sprachdaten und Steuerinformationen transportieren können. Die aktuelle Spezifikation unterstützt Datenübertragungsgeschwindigkeiten von bis zu 4096 Mbps. Der CHI-Bus hat 4 Signalleitungen: Takt, Rahmerkennung, Datenempfang und Datenübermittlung. Sowohl Rahmerkennungs- als auch Taktsignale werden zentral (d. h. PBX-Schaltung) erzeugt. Somit ist er auch in der Lage, den Anforderungen interaktiver isochroner Einrichtungen mit geringer Geschwindigkeit sowie isochroner Einrichtungen mit mittlerer Geschwindigkeit gerecht zu werden. Ähnlich wie bei FireWire werden ebenfalls aufwändige Funktionen von der Steuereinrichtungs- und Schnittstellen-Hardware verlangt. Im Ergebnis dessen ist CHI ebenfalls eine in bezug auf die Kosten nicht wettbewerbsfähige Version für die gewünschte Tischcomputeranwendung.
  • Eine Einrichtung zum Erzeugen und Aufrechterhalten rahmen- bzw. datenblockbasierter Abfragezeitpläne, die isochronen Funktionen Latenzzeiten bzw. Verzögerungen und Bandbreiten garantieren, ist aus dem Dokument EP 0 596 624 bekannt. Dieses Dokument offenbart ein breitbandiges, asynchrones Transfermodusnetzwerk, das mehrere Knoten verbindet. Die Lieferung an eine einzelne Ausgabeleitung eines Knotens unterliegt der Steuerung einer Multiplex-Schaltung und verfügt über ihren einen Time-Slive- bzw. Zeitabschnitt-Server. Es gibt wenigstens eine Warteschlange für jede Signalklassifikation, z. B. isochrone Signale mit hoher Bandbreite oder verzögerungssensitive Signale. Der einer Warteschlange zugewiesene Zeitabschnitt ist proportional dem Betrag der Bandbreite auf der Ausgabeverbindung, die von dieser Warteschlange benötigt wird.
  • Im Gegensatz zu der zeitabschnittsbasierten Planung von EP 0 596 624 basiert die Planung der vorliegenden Erfindung auf einer geschichteten Planungsrahmen- bzw. -datenblockstruktur, bei welcher Superrahmen bzw. ein Super-Datenblock mehrere Soft-Datenblöcke bzw. Rahmen aufweist. Ein Soft-Datenblock ist eine Replikation mehrerer Basis-Datenblöcke, und eine asynchrone Peripherieeinrichtung wird höchstens in einem der Soft-Datenblöcke geplant.
  • Wie nachstehend detaillierter beschrieben wird, stellt die vorliegende Erfindung die gewünschte serielle Busanordnung – einschließlich ihrer zugeordneten Steuereinrichtung, Überbrückungsverbinder und Schnittstellen – bereit, die die Beschränkungen der dem Stand der Technik entsprechenden seriellen Busse auf eine neuartige Weise vorteilhaft überwindet.
  • ZUSAMMENFASSENDE DARSTELLUNG DER ERFINDUNG
  • Die vorliegende Erfindung enthält Schaltungen eine Ergänzungs- bzw. und Komplementärlogik, die an eine Bussteuereinrichtung bereitgestellt werden, eine Anzahl von 1:n Bussignalverteilern und eine Anzahl von Busschnittstellen einer hierarchischen, seriellen Busanordnung, damit die Bussteuereinrichtung einen datenblockbasierten Abrufplan bzw. Abfragezeitplan zum Abrufen der Funktionen der Busagenten, die mit der seriellen Busanordnung und den seriellen Buselementen selbst verbunden sind, dynamisch erzeugen und aufrechterhalten kann. Die hierarchische, serielle Busanordnung wird verwendet, um eine Anzahl isochroner und asynchroner Peripherieeinrichtungen mit der Systemeinheit eines Computersystems seriell zu verbinden. Diese Schaltungen und Komplementärlogik der seriellen Buselemente unterstützen das Erfassen verschiedener kritischer Betriebscharakteristika durch die Bussteuereinrichtung. Die an die Bussteuereinrichtung bereitgestellten Schaltungen und Logik erzeugen dann ihrerseits den datenblockbasierten Abrufplan in Übereinstimmung mit diesen erfaßten kritischen Betriebscharakteristika, wodurch den isochronen Funktionen der isochronen Peripherieeinrichtungen Latenzzeiten und Bandbreiten garantiert werden. Ferner passen bei bestimmten Ausführungsbeispielen die an die Bussteuereinrichtung bereitge stellten Schaltungen und Logik als Reaktion auf einen direkten Anschluß/eine direkte Trennung serieller Buselemente ihren datenblockbasierten Abrufplan in Echtzeit auf die gleiche Weise an.
  • Üblicherweise ist die Bussteuereinrichtung in der Systemeinheit angeordnet und mit einer Anzahl von 1:n Bussignalverteilern und einer Anzahl von Busschnittstellen verbunden. Die Busschnittstellen sind in den Anschlußperipherieeinrichtungen – eine Busschnittstelle pro Anschlußperipherieeinrichtung – angeordnet. Über ihre Busschnittstellen sind die Peripherieeinrichtungen im Allgemeinen mit der Systemeinheit verbunden, über die Bussteuereinrichtung, unter Verwendung eines oder mehrerer der in der Systemeinheit angeordneten Bussignalverteiler, unabhängiger Überbückungsverbinder und/oder Anschlußperipherieeinrichtungen. Eine Busschnittstelle ist immer ein Abschlußpunkt. Nur ein Bussignalverteiler kann einen oder mehrere Bussignalverteiler und/oder Busschnittstelle(n) haben, die stromaufwärts mit ihm verbunden sind. Zusammen bilden die Systemeinheit, die seriellen Buselemente und die Peripherieeinrichtungen eine Hierarchie verbundener Einrichtungen.
  • Eine Anschlußperipherieeinrichtung kann eine isochrone oder eine asynchrone Peripherieeinrichtung sein. Üblicherweise arbeiten die isochronen Peripherieeinrichtungen mit Datenraten im Bereich von 500–5000 kbps, während die asynchronen Peripherieeinrichtungen mit Datenraten im Bereich von 10–100 kbps arbeiten. Des Weiteren kann eine Anschlußperipherieeinrichtung eine multifunktionale Peripherieeinrichtung sein, d. h. mehrere Funktionen werden auf einen einzelnen Busverbindungspunkt abgebildet, der von einer einzelnen Busschnittstelle bedient wird.
  • Die Bussteuereinrichtung, die Bussignalverteiler und die Busschnittstellen implementieren gemeinsam ein Master/Slave-Modell der Ablaufsteuerung zur seriellen Verbindung der verbundenen Peripherieeinrichtungen mit der Systemeinheit, um die Datenkommunikationstransaktionen zwischen den Busagenten, und die Verbindungsmanagementtransaktionen zwischen den seriellen Buselementen bei den Busagenten und den jeweiligen Betriebs geschwindigkeiten der seriellen Buselemente zu ermöglichen. Des Weiteren implementieren diese seriellen Buselemente gemeinsam einen datenblockbasierten Abrufplan zum Abrufen der Funktionen der Slave-Peripherieeinrichtungen und der seriellen Slave-Buselemente, der die Latenzzeiten und Bandbreiten der isochronen Funktionen garantiert. Der datenblockbasierte Plan, der auch als Super-Datenblock bezeichnet wird, weist eine Anzahl von Teilplänen auf, die auch als Soft-Datenblöcke bezeichnet werden. Eine isochrone Funktion wird so oft abgerufen, wie es in einem oder mehreren Soft-Datenblöcken des Super-Datenblocks erforderlich ist, um ihre Latenzzeit und Bandbreite zu garantieren. Das übrige Abrufen wird um das Abrufen der isochronen Funktionen herum, üblicherweise in höchstens einem Soft-Datenblock, geplant. Während des Betriebs ruft die Bussteuereinrichtung die Funktionen der verbundenen Peripherieeinrichtungen über ihre Busschnittstellen für Datenkommunikationstransaktionen und die seriellen Buselemente für Verbindungsmanagementtransaktionen in Übereinstimmung mit dem Abrufplan systematisch ab.
  • Beim Einschalten oder beim Reset ermöglichen die unter der vorliegenden Erfindung an die seriellen Buselemente bereitgestellten Schaltungen und die Komplementärlogik gemeinsam, daß Latenzzeitanforderungen der isochronen Funktionen, Sendezeiten ihrer isochronen Daten, Transaktionsanforderungen für asynchrone Funktionen sowie Verbindungsmanagement und Sendezeiten dieser Transaktionen durch die Bussteuereinrichtung erfaßt werden. Die an die Bussteuereinrichtung bereitgestellten Schaltungen und die Logik bestimmen dann die geringste Latenzzeitanforderung der isochronen Funktionen und stellen die Größe des Soft-Datenblocks entsprechend der geringsten Latenzzeitanforderung der isochronen Funktionen ein. Diese Schaltungen und die Logik der Bussteuereinrichtung bestimmen ferner einen isochronen Höchststand, der die obere Grenze eines Soft-Datenblocks zum Abrufen isochroner Funktionen festlegt, um zu gewährleisten, daß die Garantien eingehalten werden, sowie einen Datenblock-Höchststand, der die obere Grenze eines Soft- Datenblocks zur Ausführung jeder beliebigen Art des Abrufens festlegt, um die Betriebszuverlässigkeit zu gewährleisten.
  • Bei einigen Ausführungsbeispielen planen die an die Bussteuereinrichtung bereitgestellten Schaltungen und die Logik dann das Abrufen so vieler isochroner Funktionen in jedem Soft-Datenblock wie möglich für Datenkommunikationstransaktionen, vorbehaltlich der Beschränkung, daß die kumulativen Sendezeiten ihrer isochronen Daten geringer als der isochrone Höchststand sind. Verbleibende isochrone Funktionen, sofern vorhanden, werden von der Bussteuereinrichtung wegen des Überschreitens der Buskapazität abgelehnt. Dann planen die an die Bussteuereinrichtung bereitgestellten Schaltungen und die Logik das Abrufen der asynchronen Funktionen für Datenkommunikationstransaktionen und der seriellen Buselemente für Verbindungsmanagementtransaktionen um das Abrufen der isochronen Funktionen für Datenkommunikationstransaktionen herum, vorbehaltlich der Beschränkung, daß die kumulative Sendezeit jedes Soft-Datenblocks geringer als der Datenblock-Höchststand ist, wobei bei Notwendigkeit mehrere Soft-Datenblöcke verwendet werden.
  • Bei anderen Ausführungsbeispielen bestimmen die an die Bussteuereinrichtung bereitgestellten Schaltungen und die Logik ferner die kleinste gemeinsame Aktualisierungsrate, die von den isochronen Funktionen benötigt wird, basierend auf ihren jeweiligen Aktualisierungsratenanforderungen. Die Aktualisierungsratenanforderungen entsprechen den reziproken werten der jeweiligen Latenzzeitanforderungen der isochronen Funktionen. Bei der Bestimmung der kleinsten gemeinsamen Aktualisierungsrate der isochronen Funktionen bestimmen die an die Bussteuereinrichtung bereitgestellten Schaltungen und Logik ferner einen Multiplizierer für jede isochrone Funktion, um die benötigte Aktualisierungsrate der isochronen Funktion auf die kleinste gemeinsame Aktualisierungsrate multiplikativ zu erweitern. Dann planen die an die Bussteuereinrichtung bereitgestellten Schaltungen und die Logik das Abrufen der isochronen Funktionen in mehreren Soft-Datenblöcken für Datenkommunikationstransaktionen – basierend auf den abgeschnittenen Ver sionen dieser Multiplizierer und vorbehaltlich der Beschränkung, daß die kumulativen Sendezeiten der isochronen Daten jedes Soft-Datenblocks geringer als das isochrone Höchststand sind. Ebenso werden verbleibende isochrone Funktionen, sofern vorhanden, von der Bussteuereinrichtung abgelehnt, wie bei der früher beschriebenen Methode. Das Abrufen der asynchronen Funktionen für Datenkommunikationstransaktionen und der seriellen Buselemente für Verbindungsmanagementtransaktionen wird um das Abrufen der isochronen Funktionen für Datenkommunikationstransaktionen herum geplant, wie bei der früher beschriebenen Methode.
  • Bei einigen Ausführungsbeispielen unterstützen die Bussteuereinrichtung, die Bussignalverteiler und die Busschnittstellen ebenfalls gemeinsam, daß die Bussteuereinrichtung einen Anschluß/eine Trennung serieller Buselemente während des Betriebs dynamisch erfaßt und die Verbindungstopologie dynamisch steuert. Für diese Ausführungsbeispiele passen die an die Bussteuereinrichtung bereitgestellten Schaltungen und Logik den datenblockbasierten Abrufplan in Echtzeit auf die gleiche weise an.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Die vorliegende Erfindung wird anhand von beispielhaften Ausführungsbeispielen, die aber keine Beschränkungen darstellen, beschrieben, welche in den zugehörigen Zeichnungen dargestellt sind, in welchen gleiche Bezugszeichen gleiche Elemente bezeichnen und wobei:
  • 1 ein beispielhaftes Computersystem darstellt, das die Lehre der vorliegenden Erfindung zum seriellen Bus einbezieht;
  • 2 ein Ausführungsbeispiel der seriellen Busanordnung gemäß 1 in weiteren Einzelheiten darstellt;
  • 3 ein Master/Slave-Modell der Ablaufsteuerung darstellt, das von der vorliegenden Erfindung für das serielle Verbinden der verbundenen Peripherieeinrichtungen mit der Systemeinheit und für das Steuern von Transaktionsabläufen eingesetzt wird;
  • 4 einen datenblockbasierten Abrufplan der vorliegenden Erfindung darstellt, der von einigen Ausführungsbeispielen zum Abrufen der Slave-„Einrichtungen" implementiert wird;
  • 5 die geografische und logische Adressierung der vorliegenden Erfindung darstellt, die von einigen Ausführungsbeispielen für die Adressierung der seriellen Buselemente und Funktionen der Busagenten implementiert wird;
  • 6 die wesentlichen Elemente der Kommunikationspakete der vorliegenden Erfindung darstellt, die von einigen Ausführungsbeispielen für die Ausführung von Transaktionen unter Einsatz des Master/Slave-Modells der Ablaufsteuerung implementiert werden;
  • 7 ein Ausführungsbeispiel der Kabel darstellt, die die seriellen Buselemente unter der vorliegenden Erfindung physikalisch verbinden;
  • 89 ein Ausführungsbeispiel der Bussteuereinrichtung der vorliegenden Erfindung, einschließlich ihrer zugeordneten Software, darstellen;
  • 1011 ein Ausführungsbeispiel des 1:n Bussignalverteilers der vorliegenden Erfindung, einschließlich seiner Port-Schaltung, darstellen;
  • 1213 ein Ausführungsbeispiel der Busschnittstelle der vorliegenden Erfindung, einschließlich ihrer Verbinderschaltung, darstellen;
  • 14 das Verfahren der geringsten Latenzzeit der vorliegenden Erfindung zur Erzeugung eines datenblockbasierten Abrufplans darstellt, der die Latenzzeiten und Bandbreiten der isochronen Funktionen garantiert;
  • 15a15c die Verfahrensschritte der vorliegenden Erfindung zur Planung des Abrufens isochroner Funktionen in einem Soft-Datenblock gemäß dem Verfahren der geringsten Latenzzeit darstellen;
  • 16 ein Ausführungsbeispiel der Verfahrensschritte der vorliegenden Erfindung zur Planung des Abrufens asynchro ner Transfers in einem oder mehreren Soft-Datenblöcken gemäß dem Verfahren der geringsten Latenzzeit darstellt;
  • 17a17c eine beispielhafte Anwendung des Verfahrens der geringsten Latenzzeit darstellen;
  • 18 das Verfahren der geringsten Latenzzeit und der kleinsten gemeinsamen Aktualisierungsrate der vorliegenden Erfindung zur Erzeugen eines datenblockbasierten Abrufplans darstellt, der die Latenzzeiten und Bandbreiten der isochronen Funktionen garantiert;
  • 19a19c die Verfahrensschritte der vorliegenden Erfindung zur Planung des Abrufens isochroner Funktionen in einem Satz von Soft-Datenblöcken gemäß dem Verfahren der geringsten Latenzzeit und der kleinsten gemeinsamen Aktualisierungsrate darstellen;
  • 20 die Verfahrensschritte der vorliegenden Erfindung zur Planung des Abrufens asynchroner Transfers in einem oder mehreren Sätzen von Soft-Datenblöcken unter dem Verfahren der geringsten Latenzzeit und der kleinsten gemeinsamen Aktualisierungsrate darstellt;
  • 21a21b eine beispielhafte Anwendung des Verfahrens der geringsten Latenzzeit und der kleinsten gemeinsamen Aktualisierungsrate darstellen.
  • DETAILLIERTE BESCHREIBUNG
  • In der folgenden Beschreibung werden zur Erläuterung spezielle Zahlen, Materialien und Konfigurationen dargelegt, um ein umfassendes Verständnis der vorliegenden Erfindung zu gewährleisten. Es wird jedoch für einen Fachmann erkennbar sein, daß die vorliegende Erfindung ohne diese speziellen Details ausgeführt werden kann. In anderen Fällen werden bekannte Systeme in grafischer oder Blockdiagrammform dargestellt, um die vorliegende Erfindung nicht zu verschleiern.
  • Hierarchische serielle Busanordnung für das serielle Verbinden isochroner und asynchroner Peripherieeinrichtungen mit einer Systemeinheit eines Computersystems
  • Es wird nun auf 1 Bezug genommen; es wird eine Blockdarstellung gezeigt, die ein beispielhaftes Computersystem darstellt, das die Lehren der vorliegenden Erfindung zum seriellen Bus einbezieht. Das beispielhafte Computersystem 10 umfaßt eine Systemeinheit 12, die eine serielle Bussteuereinrichtung 14 der vorliegenden Erfindung aufweist, 1:n Bussignalverteiler 18 der vorliegenden Erfindung, wobei jeder n + 1 Ports 24 aufweist, und die Peripherieeinrichtungen 16 mit den Busschnittstellen 22 der vorliegenden Erfindung. Die Peripherieeinrichtungen 16 sind mit der Bussteuereinrichtung 14 der Systemeinheit 12 über die 1:n Bussignalverteiler 18 und die Kabel 20 gekoppelt. Zusammen bilden die Bussteuereinrichtung 14, die Bussignalverteiler 18, die Busschnittstellen 22 und die Kabel 20 eine serielle Busanordnung 26, die die Busagenten, d. h. die Systemeinheit 12 und die Peripherieeinrichtungen 16, miteinander verbindet.
  • Die Kabel 20 sind vorzugsweise kostengünstige Zweisignalleitungskabel 48 und 50 (wie in 7 dargestellt). Jedoch sind die Kabel 20 in der Lage, Datenübertragungsgeschwindigkeiten von bis zu 5 Mbps zu unterstützen. Des Weiteren werden bei Verwendung derartiger kostengünstiger Kabel 20 elektrische Signale vorzugsweise über die Zweisignalleitungen 48 und 50 zwischen den verbundenen Einrichtungen 14, 18 und 22 auf unterschiedliche Weise verbreitet. Beispielsweise repräsentiert eine negative Spannungsdifferenz ein 1-Bit und eine positive Spannungsdifferenz repräsentiert ein 0-Bit. Für einige Ausführungsbeispiele werden die Daten und Steuerzustände ferner aus den Spannungszuständen und/oder der Dauer der elektrischen Signale abgeleitet. Eine spezielle Implementierung der elektrischen Repräsentation von Daten und Steuerzuständen mit Spannungszuständen und/oder Signaldauern wird beschrieben in dem US-Patent 5,621,901 mit dem Titel „Method And Apparatus For Serial Bus Elements Of An Hierarchical Serial Bus To Electrically Represent Data And Control States To Each Other", welches hiermit durch Bezugnahme vollständig einbezogen ist.
  • Mit Ausnahme der Bussteuereinrichtung 14 ist die Systemeinheit 12 zur Darstellung einer breiten Kategorie von Systemeinheiten von Computersystemen gedacht, deren Aufbau und Funktionen bekannt sind, und die anderweitig nicht weiter beschrieben werden. Ebenso sind – mit Ausnahme der Busschnittstellen 22 – die Peripherieeinrichtungen 16 zur Darstellung einer breiten Kategorie von Tisch-Peripherieeinrichtungen – wie beispielsweise Tastaturen, Mäuse, Monitore, Lautsprecher, Mikrofone, Telefone – gedacht, deren Aufbau und Funktionen ebenfalls bekannt sind, und die ebenfalls anderweitig nicht weiter beschrieben werden. Die Bussteuereinrichtung 14, die Bussignalverteiler 18 und die Busschnittstellen 22 werden nachstehend unter zusätzlicher Bezugnahme auf die verbleibenden Figuren detaillierter beschrieben.
  • 2 stellt ein Ausführungsbeispiel der seriellen Busanordnung von 1 detaillierter dar. Für dieses Ausführungsbeispiel beinhaltet die serielle Busanordnung 26' die Bussteuereinrichtung 14, einen unabhängigen 1:n Bussignalverteiler 18a, einen integrierten 1:n Bussignalverteiler 18b und die Busschnittstellen 22a22f. Die serielle Busanordnung 26' verbindet die Busagenten Telefon 16a, zusammengesetzte Tastatur 16b mit Tastatur-, Stift- und Maus-Funktionen, Monitorschaltung 16c eines Monitors 28, Lautsprecher 16d16e und ein Mikrofon 16f mit der Systemeinheit 12. Zusammen bilden die Systemeinheit 12, die seriellen Buselemente 14, 18a18b und 22a22f und die verbundenen Peripherieeinrichtungen 16a16f eine Hierarchie verbundener Einrichtungen.
  • Gemäß der vorliegenden Erfindung ist eine Busschnittstelle 22a22f immer ein Abschlußpunkt. Nur ein Bussignalverteiler, z. B. 18a, kann einen oder mehrere Bussignalverteiler, z. B. 18b, und/oder eine oder mehrere Busschnittstellen, z. B. 16a, haben, die stromaufwärts mit ihm gekoppelt sind. Für die Zwecke dieser Offenbarung bedeutet „stromaufwärts" „in Richtung der Bussteuereinrichtung". Somit ist es – mit Ausnahme des degenerierten Falls, wenn die serielle Busanordnung 26 nur eine Anschlußperipherieeinrichtung 16 hat – üblicherweise ein Bussignalverteiler, wie beispielsweise 18a, der stromaufwärts mit der Bussteuereinrichtung 14 verbunden ist.
  • Des weiteren kann gemäß der vorliegenden Erfindung eine Anschlußperipherieeinrichtung eine isochrone Peripherieeinrichtung sein – wie beispielsweise Telefon 16a, Lautsprecher 16d16e und Mikrofon 16f – oder eine asynchrone Peripherieeinrichtung – wie beispielsweise die zusammengesetzte Tastatur 16b und Monitor 16c. Die isochronen Peripherieeinrichtungen können mit einer Datenübertragungsgeschwindigkeit von bis zu 5 Mbps operieren, während die asynchronen Peripherieeinrichtungen mit einer Datenübertragungsgeschwindigkeit von bis zu 100 kbps operieren können. Des Weiteren kann eine Anschlußperipherieeinrichtung 16a16f eine multifunktionale Peripherieeinrichtung sein, d. h. mehrere Funktionen werden auf einen einzelnen Busverbindungspunkt abgebildet, der von einer Busschnittstelle bedient wird, z. B. 22b. Ebenso kann – obwohl nicht dargestellt – die Systemeinheit 12 mehrere Clients unterstützen.
  • 3 stellt ein Master/Slave-Modell der Ablaufsteuerung dar, das von der vorliegenden Erfindung für das serielle Verbinden der verbundenen Peripherieeinrichtungen mit der Systemeinheit und für die Steuerung des Transaktionsablaufes eingesetzt wird. Wie dargestellt, wirken die Bussteuereinrichtung 14, die Signalbusverteiler 18 und die Busschnittstellen 22 zusammen, um das Master/Slave-Modell der Ablaufsteuerung zu implementieren. Die Bussteuereinrichtung 14 dient als der Master, und die Signalbusverteiler 18 sowie die Busschnittstellen 22 verhalten sich als Slave-Einrichtungen gegenüber der Bussteuereinrichtung 14.
  • Unter dem Master/Slave-Modell stellt die Bussteuereinrichtung 14 die Ablaufsteuerung für alle Datenkommunikationstransaktionen zwischen den Busagenten bei ihren jeweiligen Betriebsgeschwindigkeiten bereit. Die Busschnittstellen 22 schalten sich in die Datenkommunikationstransaktionen im Auftrag der Funktionen der Peripherieeinrichtungen 16 ein. Aber die Busschnittstellen 22 akzeptieren oder übertragen Daten nur, wenn sie dazu von der Bussteuereinrichtung 14 autorisiert oder instruiert worden sind (auch bekannt als „abgerufen"). Die Bussignalverteiler 18 dienen ausschließlich als Signalverteiler. Sie sind lediglich transparente Leitungen, wenn von der Bussteuereinrichtung 14 und den Busschnittstellen 22 im Auftrag der Busagenten Datenkommunikationstransaktionen ausgeführt werden. Nie nehmen die Bussignalverteiler 18 daher aktiv an Datenkommunikationstransaktionen teil, akzeptieren Daten oder antworten mit Daten.
  • Die Bussteuereinrichtung 14 ruft die Funktionen der verbundenen Peripherieeinrichtungen 16 über ihre Busschnittstellen 22 für Datenübertragungstransaktionen gemäß einem Abrufplan systematisch ab, der Latenzzeiten und Bandbreiten für die isochronen Funktionen der verbundenen Peripherieeinrichtungen 16 garantiert. Das Abrufen der isochronen Funktionen der verbundenen Peripherieeinrichtungen 16 für Datenübertragungstransaktionen wird gegenüber allen anderen Abrufen priorisiert, und so oft, wie es erforderlich ist, um diese Garantie einzuhalten. Das Abrufen der asynchronen Funktionen der verbundenen Peripherieeinrichtungen 16 über ihre Busschnittstellen 22 für Datenübertragungstransaktionen wird um das Abrufen der isochronen Funktionen der verbundenen Peripherieeinrichtungen 16 für Datenübertragungstransaktionen herum geplant. Vorzugsweise wird der Abrufplan dynamisch an die tatsächlich vorhandenen, verbundenen Peripherieeinrichtungen 16 angepaßt.
  • Bei einigen Ausführungsbeispielen schalten sich die Bussteuereinrichtung 14, die Bussignalverteiler 18 und die Busschnittstellen 22 ferner in Verbindungsmanagementtransaktionen ein, wobei dasselbe Master/Slave-Modell für die Ablaufsteuerung eingesetzt wird. Ebenso stellt die Bussteuereinrichtung 14 die Ablaufsteuerung für die Ausführung von Verbindungsmanagementtransaktionen bei den entsprechenden Betriebsgeschwindigkeiten der seriellen Buselemente bereit. Die Bussignalverteiler 18 und die Busschnittstellen 22 reagieren auf die Verbindungsmanagementtransaktionen, indem sie – je nach Lage – mit Steuer-/Zustandsinformationen antworten. Während des Betriebs ruft die Bussteuereinrichtung 14 die Bussignalverteiler 18 und die Busschnittstellen 22 für derartige Transaktionen ab. Das Abrufen der Bussignalverteiler 18 und der Busschnittstellen 22 für Verbindungsmanagementtransaktionen wird ebenfalls um das Abrufen der isochronen Funktionen der verbundenen Peripherieeinrichtungen 16 für Datenkommunikationstransaktionen herum geplant. Vorzugsweise wird der erweiterte Abrufplan ebenfalls dynamisch an die tatsächlich vorhandenen seriellen Buselemente angepaßt.
  • 4 stellt eine datenblockbasierte Abrufplanung der vorliegenden Erfindung dar, die von einigen Ausführungsbeispielen zur Ausführung der verschiedenen Transaktionen unter Einsatz des Master/Slave-Modells der Ablaufsteuerung implementiert wird. Wie dargestellt, umfaßt der Abrufplan 30, der auch als Super-Datenblock bezeichnet wird, eine Reihe von Teilplänen 32, die auch als Soft-Datenblöcke bezeichnet werden. Eine isochrone Funktion 34a oder 34b einer verbundenen Peripherieeinrichtung 16 wird so oft wie nötig in einem oder mehreren Soft-Datenblöcken 32 des Super-Datenblocks 30 abgerufen, um ihre Latenzzeit und Bandbreite zu garantieren. Eine asynchrone Funktion 36a oder 36b wird jedoch nur einmal in einem Soft-Datenblock 32 des Super-Datenblocks 30 für eine Datenkommunikationstransaktion abgerufen. Ebenso wird eine verbundene Einrichtung 38a oder 38b ebenfalls nur einmal in einem Soft-Datenblock 32 des Super-Datenblocks 30 für eine Verbindungsmanagementtransaktion abgerufen.
  • Vorzugsweise werden alle isochronen Funktionen 34a34b innerhalb eines ersten Prozentanteils (P1) eines Soft-Datenblocks 32 abgerufen, um zu gewährleisten, daß Latenzzeit- und Bandbreitengarantien eingehalten werden. Isochrone Funktionen, die nicht in P1 aufgenommen werden können, werden vorzugsweise wegen unzureichender Kapazität zurückgewiesen. Das obere Begrenzungssymbol (M1) von P1 wird auch als der isochrone Höchststand bezeichnet. Ebenso werden vorzugsweise alle Abrufe in einem zweiten Prozentanteil (P2) eines Soft-Datenblocks 32 abgerufen, um die Zuverlässigkeit des Betriebs zu gewährleisten. Mehrere Soft-Datenblöcke 32 werden, sofern erforderlich, zur Ermöglichung des Abrufens aller asynchronen Funktionen und seriellen Buselemente eingesetzt. Das obere Begrenzungssymbol (M2) von P2 wird auch als der Datenblock-Höchststand bezeichnet.
  • Verschiedene Arten, auf welche ein derartiger datenblockbasierter Abrufplan dynamisch erzeugt und aktualisiert werden kann, werden nachstehend detaillierter beschrieben.
  • 5 stellt die geografische und logische Adressierung der vorliegenden Erfindung dar, die von einigen Ausführungsbeispielen für die Adressierung der seriellen Buselemente und der Funktionen der Busagenten implementiert wird. Der einfachen Erklärung halber wird dieselbe beispielhafte serielle Busanordnung von 2 verwendet. Aber die Bussteuereinrichtung 14 wird als Host, auch Hub0 bzw. Netzknoten0 genannt, bezeichnet. Die Bussignalverteiler 18a18b werden als Netzknoten1 und Netzknoten2 bezeichnet. Die Peripherieeinrichtungen 16a16f einschließlich ihrer entsprechenden Busschnittstellen 22a22f werden gemeinsam als Knoten0 bis Knoten6 bezeichnet. Die Funktionen der Peripherieeinrichtungen 16a16f werden als FN0, FN1 etc. bezeichnet.
  • Wie dargestellt, sind den seriellen Buselementen und Funktionen der Busagenten geografische sowie logische Adressen (GEO ADDR & LOG ADDR) eines geografischen und logischen Adreßraums zugewiesen. Im Einzelnen sind den Netzknoten 14, 18a18b und den Knoten 22a22f GEO ADDR zugewiesen, während den Funktionen der Knoten 16a16f LOG ADDR zugewiesen sind. Vorzugsweise können die Netzknoten-Identität sowie der stromaufwärts gelegene Port des Netzknotens aus der GEO ADDR eines Netzknotens 14 und 18a18b abgeleitet werden, und der Anschluß-Netzknoten sowie der Anschluß-Port des Anschluß-Netzknotens können aus der GEO ADDR eines Knotens 22a22f abgeleitet werden. Bei einem Ausführungsbeispiel sind die LOG ADDR den Funktionen der Knoten 16a16f chronologisch zugewiesen.
  • Beispielsweise sind in der dargestellten beispielhaften Anwendung Netzknoten1 und Netzknoten2 18a und 18b die GEO ADDR von „Netzknoten1:Port0" bzw. „Netzknoten2:Por0" zugewiesen, die die Netzknoten 18a und 18b als „Netzknoten1" bzw. „Netz knoten2" identifizieren, und in jedem Fall ist der stromaufwärts gelegene Port „Port0". Knoten1 und Knoten4 22b und 22e sind die GEO ADDR von „Netzknoten1:Port2" bzw. „Netzknoten2:Port3" zugewiesen, die die Anschluß-Netzknoten 18a und 18b als „Netzknoten1" bzw. „Netzknoten2" und die Anschluß-Ports der Anschluß-Netzknoten 18a und 18b als „Port2" bzw. „Port3" identifizieren. Den Funktionen von Knoten1 16b sind die LOG ADDR von „LA1", „LA2" und „LA3" zugewiesen, während der Funktion von Knoten4 16e die LOG ADDR von „LA6" zugewiesen ist.
  • Vorzugsweise werden die GEO ADDR und die LOG ADDR von der Bussteuereinrichtung 14 im Zusammenwirken mit den Bussignalverteilern 18 und den Busschnittstellen 22 beim Einschalten oder Reset dynamisch zugewiesen und als Reaktion auf eine direkte Trennung verbundener Einrichtungen oder einen Anschluß zusätzlicher Einrichtungen aktualisiert. Eine spezielle Implementierung eines derartigen dynamischen Verbindungsmanagements wird beschrieben in US-Patent 5,623,610 mit dem Titel „System for Assigning Geographical Addresses in a Hierarchical Serial Bus By Enabling Upstream Port and Selectively Enabling Disabled Ports at Power On/Reset".
  • Für diese Ausführungsbeispiele werden die GEO ADDR zur Ausführung von Verbindungsmanagementtransaktionen zwischen den seriellen Buselementen verwendet, während die LOG ADDR zur Ausführung von Datenkommunikationstransaktionen zwischen den Funktionen der Busagenten verwendet werden. Die Trennung der zwei Transaktionsarten in zwei separate Adreßräume ermöglicht das dynamische Verbindungsmanagement der seriellen Buselemente ohne die Notwendigkeit, die Dienste für die Funktionen der Busagenten zu unterbrechen.
  • 6 stellt die wesentlichen Elemente der Kommunikationspakete der vorliegenden Erfindung dar, die von einigen Ausführungsbeispielen für die Ausführung der verschiedenen Transaktionen unter Einsatz des Master/Slave-Modells der Ablaufsteuerung implementiert werden. Für diese Ausführungsbeispiele werden Paketidentifizierer 44 zur Unterscheidung der Steuerpakete von den Datenpaketen eingesetzt. Steuerpakete sind Pakete, die von der Bussteuereinrichtung 14 eingesetzt werden, um die Bussignalverteiler 18 und die Busschnittstellen 22 zu autorisieren oder zu instruieren, sich in Transaktionen einzuschalten. Steuerpakete können auch Pakete beinhalten, die von den Bussignalverteilern 18 und den Busschnittstellen 22 zur Bestätigung der Autorisierungen oder Instruktionen von der Bussteuereinrichtung 14 eingesetzt werden. Des weiteren werden die Adressen 46 je nach Lage zur Identifizierung der Transaktionsparteien eingesetzt. Wie deutlich wird, kann unter dem Master/Slave-Modell der Ablaufsteuerung die Bussteuereinrichtung 14 als ein Transaktionsteilnehmer häufig abgeleitet werden, und daher kann ihre Adresse weggelassen werden.
  • Vorzugsweise kann der Transaktionsablauf, wie beispielsweise von der Bussteuereinrichtung 14 zu einer Funktion, von einer ersten Funktion zu einer zweiten Funktion, von den Paketidentifizierern 44 abgeleitet werden. Vorzugsweise können entweder geografische oder logische Adressen 46, d. h. „NetzknotenX:Port:Y" oder „LAz" spezifiziert werden, um solche Ausführungsbeispiele zu ermöglichen, die Verbindungsmanagementtransaktionen unterstützen und beide Adreßtypen implementieren.
  • Eine spezielle Implementierung des Einsatzes derartiger Kommunikationspakete zur Ausführung der verschiedenen Transaktionen wird beschrieben in US-Patent 5,623,610 mit dem Titel „Method And Apparatus For Exchanging Data, Status And Commands Over An Hierarchical Serial Bus Assembly Using Communication Packets".
  • 89 stellen ein Ausführungsbeispiel der Bussteuereinrichtung der vorliegenden Erfindung dar. Bei diesem Ausführungsbeispiel beinhaltet die Bussteuereinrichtung 14 einen Steuerautomat und -schaltungen 52, ein Steuer/Zustandsregister 54, Datenpuffer 56 und Bussteuereinrichtungs-Softwaredienste 58. Die Steuer/Zustandsregister 54 werden zum Speichern der verschiedenen Steuer- und Zustandsdaten verwendet. Beispielsweise die vorhandenen seriellen Buselemente, ihre Verbindungstopologie, die Funktionen der verschiedenen verbundenen Peripherieeinrichtungen, die geografischen Adressen, die den seri ellen Buselementen zugewiesen sind, die logischen Adressen, die den Funktionen der verbundenen Peripherieeinrichtungen zugewiesen sind. Die Datenpuffer 56 werden zum Puffern der Daten der Datenkommunikationstransaktionen zwischen den Busagenten verwendet. Steuerautomat und -schaltungen 52 steuern die Hardware, indem sie Datenkommunikationstransaktionen steuern und das oben beschriebene Master/Slave-Modell der Ablaufsteuerung einsetzen, unter Programmierung der Bussteuereinrichtungs-Softwaredienste 58. Für einige Ausführungsbeispiele steuern Steuerautomat und -schaltungen 52 ferner die Hardware, indem sie die Verbindungsmanagementtransaktionen steuern, das Master/Slave-Modell der Ablaufsteuerung mit dem datenblockbasierten Abrufplan implementieren, geografische und logische Adressierung einsetzen, kommunikationspaketbasierte Transaktionen unterstützen und/oder die Ableitung von Daten und Steuerzuständen aus den Zuständen der verbreiteten elektrischen Signale. Im Einzelnen veranlassen Steuerautomat und -schaltungen 52 die Bussteuereinrichtung 14, mit den Bussignalverteilern 18 und den Busschnittstellen 22 zusammenzuwirken und die Schritte zur Erzeugung und Aufrechterhaltung des datenblockbasierten Abrufplans der vorliegenden Erfindung auszuführen, was nachstehend detaillierter beschrieben wird.
  • Die Bussteuereinrichtungs-Softwaredienste 58 programmieren Steuerautomat und -schaltungen 52, die auf das Betriebssystem 60 reagieren, und andere Software, wie beispielsweise die Einrichtungs- und Konfigurationssoftware 62 und 64 der Systemeinheit 12. Insbesondere beinhalten die Dienste das Verbindungsmanagement, wie beispielsweise die Erfassung der vorhandenen seriellen Buselemente, die Erfassung ihrer Verbindungstopologie, die Erfassung der Funktionen der verbundenen Peripherieeinrichtungen und die Zuweisung der geografischen und logischen Adressen. Die Dienste beinhalten ferner das Transaktionsmanagement, wie beispielsweise die Erzeugung und Aufrechterhaltung des Abrufplans, das Abrufen der seriellen Buselemente und der Funktionen der Busagenten, die Bestätigung bestimmter Reaktionen der seriellen Buselemente und der Funk tionen der Busagenten und den Austausch von Daten mit den Funktionen der Busagenten.
  • Für eine detailliertere Beschreibung der Bussteuereinrichtungs-Hardware und der Bussteuereinrichtungs-Softwaredienste 58 wird auf die US-Patente 5,623,610, 5,909,556 und 5,621,901 verwiesen.
  • Es sei angemerkt, daß die Zuweisung der Funktionen für die Hardware und die Softwaredienste der Bussteuereinrichtung 14 implementierungsabhängig ist. Die vorliegende Erfindung kann mit jeder beliebigen Anzahl von Zuweisungen, die von minimaler Hardwareverwendung bis zum minimalen Einsatz von Softwarediensten reichen, ausgeführt werden.
  • 1011 stellen ein Ausführungsbeispiel des Bussignalverteilers der vorliegenden Erfindung dar. Das dargestellte Ausführungsbeispiel ist ein 1:7 Bussignalverteiler 18' mit einer Steuerschaltung 66, Steuerregistern 68 und 8 Ports 24. Port 0 24 wird zur Verbindung des Bussignalverteilers 18' stromaufwärts zur Bussteuereinrichtung 14 oder einem anderen Bussignalverteiler 18 verwendet. Ports 1–7 werden zur Verbindung von insgesamt bis zu 7 Bussignalverteilern 18 und/oder Busschnittstellen 22 mit sich selbst verwendet. Die Steuerregister 68 werden zum Speichern eigener Steuer- und Zustandsinformationen – wie beispielsweise, ob ein Port 24 über eine mit ihm verbundene Busschnittstelle 22 verfügt oder nicht, und ob Port 24 EIN/AUSgeschaltet ist – verwendet. Die Steuerschaltung 66 steuert den Bussignalverteiler 18' als Reaktion auf Instruktionen von der Bussteuereinrichtung 14. Insbesondere veranlaßt die Steuerschaltung 66 den Bussignalverteiler 18, mit der Bussteuereinrichtung 14 zusammenzuwirken und die Schritte zur Erzeugung und Aufrechterhaltung des datenblockbasierten Abrufplans der vorliegenden Erfindung auszuführen, was nachstehend detaillierter beschrieben wird.
  • Bei Ausführungsbeispielen, bei welchen die kostengünstigen Zweisignalleitungskabel 20 zur Verbindung der seriellen Buselemente verwendet werden, und elektrische Signale vorzugsweise auf eine unterschiedliche Weise verbreitet werden, weist jeder Port 24 zwei Differenzverstärker 70 und 72 zur Erzeugung der Differenzsignale auf. Vorzugsweise hat jeder Port 24 ferner zwei Widerstände 74, die mit Masse verbunden sind, wie dargestellt, die die Signale auf den zwei Leitungen auf Masse ziehen, wodurch die Unterscheidbarkeit des Nichtvorhandenseins oder Vorhandenseins einer verbundenen Busschnittstelle 22 ermöglicht wird. Die entsprechenden Werte der Widerstände 74 können in Abhängigkeit von den einzelnen Implementierungen empirisch bestimmt werden.
  • Für eine detailliertere Beschreibung des Bussignalverteilers 18 wird auf US-Patent 5,623,610 verwiesen.
  • 1213 stellen ein Ausführungsbeispiel der Busschnittstellen der vorliegenden Erfindung dar. Für dieses Ausführungsbeispiel umfaßt die Busschnittstelle 22 die Steuerschaltung 80, die Steuer/Zustandsregister 82, eine Verbinderschnittstelle 84 und zwei FIFOs 76-78, ein Empfangs-FIFO 76 und ein Sende-FIFO 78. Die Empfangs- und Sende-FIFOs 76-78 werden verwendet, um die Empfangs- und Sendedaten für Datenkommunikationstransaktionen bereitzustellen. Die Steuer/Zustandsregister 68 werden zum Speichern ihrer eigenen Steuer- und Zustandsinformationen – wie beispielsweise zugewiesene geografische Adressen, Funktionen der „Host"-Peripherieeinrichtung und ihrer zugewiesenen logischen Adressen – verwendet. Die Steuerschaltung 66 steuert die Busschnittstelle 22 im Auftrag der „Host"-Peripherieeinrichtung und der Funktionen der „Host"-Peripherieeinrichtung, die auf die Autorisierungen und Instruktionen von der Bussteuereinrichtung 14 reagiert. Insbesondere veranlaßt die Steuerschaltung 66 die Busschnittstelle 22, mit der Bussteuereinrichtung 14 zusammenzuwirken und die Schritte zur Erzeugung und Aufrechterhaltung des datenblockbasierten Abrufplans der vorliegenden Erfindung auszuführen, wie nachstehend detaillierter beschrieben wird.
  • Bei Ausführungsbeispielen, bei welchen die kostengünstigen Zweisignalleitungskabel 20 zur Verbindung der seriellen Buselemente verwendet werden, und elektrische Signale vorzugsweise auf eine unterschiedliche Weise verbreitet werden, weist die Verbinderschnittstelle 84 zwei Differenzverstärker 86 und 88 zur Erzeugung der Differenzsignale auf. Vorzugsweise ent hält die Verbinderschnittstelle 84 ferner zwei Widerstände 90, die mit Vcc gekoppelt sind, wie dargestellt, die die Signale auf den zwei Leitungen auf Vcc ziehen, komplementär zur Port-Schaltung eines Anschlußbussignalverteilers 18. Die entsprechenden Werte der Widerstände 90 können ebenfalls in Abhängigkeit von den einzelnen Implementierungen empirisch bestimmt werden.
  • Für eine detailliertere Beschreibung der Busschnittstelle 22 wird auf die US-Patente 5,623,610, 5,909,556 und 5,621,901 verwiesen.
  • Erzeugung und Aufrechterhaltung des datenblockbasierten Abrufplans
  • Nachdem nun die hierarchische serielle Busanordnung 26 und die Art und Weise beschrieben wurden, auf welche ihre Elemente zur seriellen Verbindung der isochronen und asynchronen Peripherieeinrichtungen 16 mit der Systemeinheit 12 des beispielhaften Computersystems 10 zusammenwirken, werden nun die Schritte der Erzeugung und Aufrechterhaltung des datenblockbasierten Abrufplans der vorliegenden Erfindung, welche von den seriellen Buselementen ausgeführt werden, im Detail beschrieben.
  • 14 stellt das Verfahren der geringsten Latenzzeit der vorliegenden Erfindung zur Erzeugung eines datenblockbasierten Abrufplans dar, der Latenzzeiten und Bandbreiten der isochronen Funktionen garantiert. Wie dargestellt, bestimmt beim Einschalten oder beim Reset die Bussteuereinrichtung 14 im Zusammenwirken mit den anderen seriellen Buselementen die Latenzzeitanforderung jeder isochronen Funktion, Schritt 302, stellt die Größe des Soft-Datenblocks auf die geringste Latenzzeitanforderung ein, Schritt 304, berechnet den isochronen Höchststand für den Soft-Datenblock, Schritt 304, und bestimmt die Sendezeiten der isochronen Daten und aller asynchronen Transfers, Schritt 306. Die Latenzzeitanforderung einer isochronen Funktion ist von der Warteschlangentiefe und der Warteschlangenabbaurate der isochronen Peripherieeinrich tung abhängig. Üblicherweise wird auch ein Zuverlässigkeitsbereich eingesetzt.
  • Vorzugsweise werden die Latenzzeitanforderungen der isochronen Funktionen und die Sendezeiten der isochronen Daten und asynchronen Transfers von den verbundenen Peripherieeinrichtungen als ein integraler Bestandteil des Einschalt-/Reset-Initialisierungsprozesses erfaßt. Alternativ können die Latenzzeitanforderungen und die Sendezeiten nach der Initialisierung bei Verbindungsmanagementtransaktionen erfaßt werden.
  • Wenn die Größe des Soft-Datenblocks festgelegt worden ist, der isochrone Höchststand berechnet worden ist, und die Sendezeiten der isochronen Daten und der asynchronen Transfers bestimmt worden sind, plant die Bussteuereinrichtung 14 so viele Abrufe der isochronen Funktionen wie möglich in einem Soft-Datenblock, vorbehaltlich der Beschränkung, daß die kumulativen Sendezeiten der geplanten isochronen Funktionen geringer als der isochrone Höchststand sind, Schritt 308. Verbleibende isochrone Funktionen, sofern vorhanden, werden von der Bussteuereinrichtung 14 wegen der Überschreitung der Buskapazität abgelehnt. Somit wird garantiert, daß jede geplante isochrone Funktion mit einer Häufigkeit abgerufen wird, die ausreichend ist, um ihrer Latenzzeitanforderung zu entsprechen, und bei jedem Abruf wird garantiert, daß sie mit einer Bandbreite abgerufen wird, die ausreichend für ihre Sendezeit ist.
  • Der Soft-Datenblock, der zur Planung der isochronen Funktionen verwendet wird, wird auch als der Basis-Soft-Datenblock bezeichnet. Die Art und Weise, auf welche der Planungsschritt der isochronen Funktionen ausgeführt wird, wird nachstehend unter zusätzlicher Bezugnahme auf 15a15c detaillierter beschrieben.
  • Nachdem das Abrufen der isochronen Funktionen geplant worden ist, bestimmt die Bussteuereinrichtung 14 die Anzahl der benötigten asynchronen Transfers, d. h. die Anzahl der abzurufenden asynchronen Funktionen, die Anzahl der abzurufenden Verbindungsmanagementtransaktionen, um einen Anschluß/eine Trennung serieller Buselemente etc. während des Betriebs zu erfassen, Schritt 310. Die Bussteuereinrichtung 14 bestimmt ferner den Betrag der asynchronen Transferzeit, die pro Soft-Datenblock verfügbar ist, indem die kumulative Sendezeit der geplanten isochronen Funktionen von dem Anteil des Datenblock-Höchststands eines Soft-Datenblocks subtrahiert wird, Schritt 312. Schließlich plant die Bussteuereinrichtung 14 die asynchronen Transfers in einem oder mehreren Soft-Datenblöcken um das Abrufen der isochronen Funktionen herum, Schritt 314. Der verbleibende Anteil über den Datenblock-Höchststand hinaus ist reserviert, um die Zuverlässigkeit des Betriebs zu gewährleisten. Die Art und Weise, auf welche der Planungsschritt der asynchronen Transfers ausgeführt wird, wird ebenfalls nachstehend unter zusätzlicher Bezugnahme auf 16 detaillierter beschrieben.
  • Bei einigen Ausführungsbeispielen wird der oben beschriebene Prozeß bei der Erfassung eines Anschlusses/einer Trennung serieller Buselemente während des Betriebs wiederholt, womit der datenblockbasierte Abrufplan dynamisch in Echtzeit an die tatsächlich vorhandenen seriellen Buselemente angepaßt wird. Die Art und Weise, auf welche Schritt 308 ausgeführt wird, ist geringfügig anders, wenn der Prozeß als Reaktion auf einen Anschluß/eine Trennung serieller Buselemente während des Betriebs wiederholt wird. Diese Unterschiede werden deutlich werden, wenn Schritt 308 nachstehend detaillierter beschrieben wird.
  • 15a15c stellen die Verfahrensschritte der vorliegenden Erfindung zur Planung des Abrufens isochroner Funktionen in einem Soft-Datenblock gemäß dem Verfahren der geringsten Latenzzeit dar. Zu Anfang bestimmt die Bussteuereinrichtung 14, ob sie den ersten Abrufplan erzeugt, Schritt 316, d. h., ob sie beim Einschalten/Reset oder als Reaktion auf einen Anschluß/eine Trennung serieller Buselemente während des Betriebs plant. Wenn die Planung für den ersten Plan ausgeführt wird, geht die Bussteuereinrichtung 14 unverzüglich dazu über, eine der isochronen Funktionen für die Planung auszuwählen, Schritt 318. Die Auswahl kann willkürlich oder basierend auf einigen Prioritätsmodellen erfolgen. Als Nächstes bestimmt die Bussteuereinrichtung 14, ob die Planung der ausgewählten isochronen Funktion dazu führt, daß die kumulative Sendezeit der geplanten isochronen Funktionen den isochronen Höchststand überschreitet, Schritt 320. Wenn die Planung nicht dazu führen würde, daß die kumulative Sendezeit den isochronen Höchststand überschreitet, plant die Bussteuereinrichtung 14 die isochrone Funktion und addiert die Sendezeit ihrer isochronen Daten zu der kumulativen Sendezeit der geplanten isochronen Funktionen hinzu, Schritt 324.
  • Bei der Planung der isochronen Funktion prüft die Bussteuereinrichtung 14, um zu festzustellen, ob es weitere Abrufe isochroner Funktionen gibt, die geplant werden müssen, Schritt 326. Wenn weitere Abrufe isochroner Funktionen geplant werden müssen, kehrt die Bussteuereinrichtung 14 zu Schritt 318 zurück, andernfalls ist die Planung der isochronen Funktionen abgeschlossen.
  • Immer dann, wenn die Bussteuereinrichtung 14 bei Schritt 320 feststellt, daß die Planung einer ausgewählten isochronen Funktion dazu führen würde, daß die kumulative Sendezeit der geplanten isochronen Funktionen den isochronen Höchststand überschreitet, lehnt die Bussteuereinrichtung 14 die ausgewählte isochrone Funktion ab und beendet die Planung, Schritt 328. Vorzugsweise erzeugt die Bussteuereinrichtung 14 eine Fehlerbedingung, die anzeigt, daß die Buskapazität überschritten worden ist, und identifiziert alle ungeplanten isochronen Funktionen, Schritt 328.
  • Schon bei Schritt 316, wenn die Bussteuereinrichtung 14 bestimmt, daß der Prozeß nicht ausgeführt wird, um den ersten Abrufplan zu erzeugen, d. h., daß er ausgeführt wird, um den Abrufplan dynamisch anzupassen, bestimmt die Bussteuereinrichtung 14 ferner, ob die geringste Latenzzeit geringer als die Größe des „alten" Soft-Datenblocks oder gleich derselben ist, Schritt 330. Wenn die geringste Latenzzeit geringer als die Größe des „alten" Soft-Datenblocks oder gleich derselben ist, geht die Bussteuereinrichtung 14 zu Schritt 332 weiter, andernfalls setzt sie mit Schritt 352 fort.
  • Es wird nun mit 15b fortgesetzt; bei Schritt 332 löscht die Bussteuereinrichtung 14 jegliche isochronen Funk tionen, welche den Dienst des Abrufplans nicht mehr benötigen. Dann plant die Bussteuereinrichtung 14 alle verbleibenden „alten" isochronen Funktionen neu und kumuliert ihre Sendezeiten, wie früher beschrieben wurde, Schritt 334. Als Nächstes stellt die Bussteuereinrichtung 14 fest, ob der isochrone Höchststand überschritten worden ist oder nicht, Schritt 336. Wenn der isochrone Höchststand überschritten worden ist, legt die Bussteuereinrichtung 14 die Größe des Soft-Datenblocks und den entsprechenden isochrone Höchststand neu fest – mit Ausnahme der isochronen Funktion, die die geringste Latenzzeit ergeben hat, Schritt 338. Die Bussteuereinrichtung 14 wiederholt die Schritte 334338, bis sie bei Schritt 336 feststellen kann, daß alle verbleibenden alten isochronen Funktionen unter dem isochronen Höchststand eines Soft-Datenblocks erfolgreich neu geplant worden sind.
  • Die Bussteuereinrichtung 14 geht dann zu den Schritten 340350 weiter. Mit Ausnahme von Schritt 348 sind die Schritte 340350 mit den früher beschriebenen Schritten 320328 identisch. Der zusätzliche Schritt 348 wird ausgeführt, um zu veranlassen, daß die Fehlerbedingung in Schritt 350 ebenfalls für den Fall erzeugt wird, daß die „erfolgreiche" Anpassung des Abrufplans den Ausschluß einer oder mehrerer neuer isochroner Funktionen mit geringen Latenzzeiten früher bei Schritt 338 erforderlich machte, damit sich die endgültige „erfolgreiche" Größe des Soft-Datenblocks ergibt.
  • Es wird nun mit 15c fortgesetzt; es sei daran erinnert, daß die Bussteuereinrichtung 14 mit Schritt 352 fortsetzt, wenn sie schon bei Schritt 330 entschieden hat, daß die geringste Latenzzeit größer als die Größe des „alten" Soft-Datenblocks ist. Die Schritte 352 und 354 sind dieselben wie die früher beschriebenen Schritte 332 und 334. Jedoch sind bei der Neuplanung der alten isochronen Funktionen in Schritt 354 Schritte wie die früher beschriebenen Schritte 336 und 338 nicht erforderlich, da schon bei Schritt 330 festgestellt wurde, daß die geringste Latenzzeit größer als die Größe des „alten" Soft-Datenblocks ist. Somit ist es nicht möglich, daß die Bussteuereinrichtung 14 versäumt, die alten isochronen Funktionen unter dem isochronen Höchststand des Soft-Datenblocks zu planen. Dann geht die Bussteuereinrichtung 14 dazu über, die neuen isochronen Funktionen in den Schritten 356364 zu planen. Die Schritte 356364 sind mit den früher beschriebenen Schritten 318328 identisch.
  • 16 stellt ein Ausführungsbeispiel der Verfahrensschritte der vorliegenden Erfindung zur Planung des Abrufens asynchroner Transfers in einem oder mehreren Soft-Datenblöcken gemäß dem Verfahren der geringsten Latenzzeit dar. Bei diesem dargestellten Ausführungsbeispiel werden die Abrufe der asynchronen Transfers nach Gruppen geplant. Spezielle Beispiele für asynchrone Transfergruppen sind Anrufanforderungen, Managementabfragen und dergleichen. Es ist jedoch klar, daß die vorliegende Erfindung ausgeführt werden kann, ohne die Planung der asynchronen Transfers nach Gruppen auszuführen.
  • Gemäß dem dargestellten Ausführungsbeispiel wählt die Bussteuereinrichtung 14 zuerst eine bestimmte asynchrone Transfergruppe für die Planung aus, Schritt 366. Dann wählt die Bussteuereinrichtung 14 einen asynchronen Transfer für die Planung aus. Erneut kann jede Auswahl willkürlich oder unter Verwendung einiger Prioritätsmodelle erfolgen. Beim Auswählen eines asynchronen Transfers für die Planung stellt die Bussteuereinrichtung 14 fest, ob die Planung des ausgewählten asynchronen Transfers dazu führen würde, daß die kumulative Sendezeit aller geplanten Funktionen/Transfers den Datenblock-Höchststand überschreitet, Schritt 370. Wenn die Planung nicht dazu führen würde, daß der Datenblock-Höchststand überschritten wird, plant die Bussteuereinrichtung 14 den ausgewählten asynchronen Transfer, Schritt 372. Wenn andererseits die Planung dazu führen würde, daß der Datenblock-Höchststand überschritten wird, fügt die Bussteuereinrichtung 14 einen weiteren Basis-Datenblock hinzu, d. h. einen neuen Soft-Datenblock mit ähnlich geplanten isochronen Funktionen, Schritt 374, bevor der ausgewählte asynchrone Transfer geplant wird, Schritt 372.
  • Bei der Planung des ausgewählten asynchronen Transfers stellt die Bussteuereinrichtung 14 fest, ob innerhalb der aus gewählten asynchronen Transfergruppe noch weitere asynchrone Transfers zu planen sind, Schritt 376. Wenn noch weitere asynchrone Transfers zu planen sind, wiederholt die Bussteuereinrichtung 14 die Schritte 368372, bis bei Schritt 376 festgestellt wird, daß alle asynchronen Transfers in der ausgewählten asynchronen Transfergruppe geplant worden sind. Dann bestimmt die Bussteuereinrichtung 14, ob noch weitere asynchrone Transfergruppen zu planen sind, Schritt 378. Wenn noch weitere asynchrone Transfergruppen zu planen sind, wiederholt die Bussteuereinrichtung 14 die Schritte 366376, bis bei Schritt 378 festgestellt wird, daß alle asynchronen Transfergruppen geplant worden sind.
  • 17a17c stellen eine beispielhafte Anwendung des Verfahrens der geringsten Latenzzeit dar. Wie in 17a gezeigt, beinhaltet bei dieser beispielhaften Anwendung die Bustopologie den Host, einen Netzknoten, vier Knoten mit fünf Funktionen. Die fünf Funktionen enthalten drei isochrone Funktionen – d. h. CD, eine ISDN-T1-Leitung und einen Sprach-Kanal – und zwei asynchrone Funktionen – d. h. Maus und Tastatur. Zusätzlich müssen auch asynchrone Transfers für das Verbindungsmanagement (GEO-Abruf), Anrufanforderungen und Managementabfragen aufgenommen werden. Die Latenzzeiten der isochronen Funktionen und die Sendezeiten der isochronen Daten sowie der asynchronen Transfers werden in Tabelle 380 zusammengefaßt.
  • Wie in 17b gezeigt, bestimmt die Bussteuereinrichtung 14 zuerst, daß die Latenzzeiten der drei isochronen Funktionen – CD, ISDN T1 und Sprache – 364 μs, 667 μs beziehungsweise 727 μs betragen, Schritt 302a. Somit wird bestimmt, daß die geringste Latenzzeit 364 μs beträgt; die Größe des Soft-Datenblocks wird auf 364 μs eingestellt; und es wird berechnet, daß der isochrone Höchststand 273 μs beträgt (unter Verwendung einer beispielhaften Nutzungsrate von 75%), Schritt 304a. Es wird bestimmt, daß die Sendezeiten der isochronen Daten und der asynchronen Transfers 114 μs für CD Audio, 37,2 μs für ISDN-T1-Daten, 37,2 μs für Sprachdaten etc. etc. betragen, Schritt 306a. Unter Anwendung der in den 15a15c dargestellten Verfahrensschritte werden die isochronen Funktionen – CD Audio, ISDN T1 und Sprache – alle erfolgreich in einen Basis-Soft-Datenblock geplant, wie gezeigt, da die kumulative Sendezeit ihrer isochronen Daten 188,4 μs beträgt, was geringer als 273 μs – der isochrone Höchststand – ist, Schritt 308a.
  • Als Nächstes stellt die Bussteuereinrichtung 14 fest, daß Abrufe für zwei asynchrone Funktionen, fünf Verbindungsmanagementtransaktionen (GEO-Abruf), eine Anrufanforderung und drei Managementabfragen benötigt werden, Schritt 310. Ferner stellt die Bussteuereinrichtung 14 fest, daß ungefähr 130 μs pro Soft-Datenblock für asynchrone Transfers verfügbar sind (unter Verwendung einer beispielhaften Nutzungsrate von 95%), Schritt 312a. Nach der Feststellung der pro Soft-Datenblock verfügbaren Sendezeit plant die Bussteuereinrichtung 14 dann die erforderlichen asynchronen Transfers unter Verwendung von fünf Basis-Soft-Datenblöcken, wie dargestellt, Schritt 314a. Der resultierende Abrufpan für diese beispielhafte Anwendung wird in 17c gezeigt.
  • 18 stellt das Verfahren der geringsten Latenzzeit und der kleinsten gemeinsamen Aktualisierungsrate der vorliegenden Erfindung zur Erzeugen eines datenblockbasierten Abrufplans dar, der die Latenzzeiten und Bandbreiten der isochronen Funktionen garantiert. Die ersten drei Schritte, d. h. Schritte 382386, sind mit den ersten drei Schritten, den Schritten 302306, des früher beschriebenen Verfahrens der geringsten Latenzzeit identisch. Jedoch berechnet während des aktuellen Verfahrens bei der Ausführung der ersten drei Schritte die Bussteuereinrichtung 14 ferner die Aktualisierungsratenanforderungen der isochronen Funktionen, Schritt 388. Die Aktualisierungsratenanforderung jeder isochronen Funktion entspricht dem reziproken Wert ihrer Latenzzeitanforderung. Als Nächstes bestimmt die Bussteuereinrichtung 14 die kleinste gemeinsame Aktualisierungsrate der isochronen Funktionen und berechnet für jede isochrone Funktion einen Multiplizierer, um die benötigte Aktualisierungsrate der isochronen Funktion auf die kleinste gemeinsame Aktualisierungsrate multiplikativ zu erweitern, Schritt 390.
  • Nach der Ausführung der zusätzlichen Berechnungen geht die Bussteuereinrichtung 14 dann zur Planung der Abrufe der isochronen Funktionen über, Schritt 392. Schritt 392 ähnelt dem Schritt 308 des früher beschriebenen Verfahrens der geringsten Latenzzeit. Er unterscheidet sich jedoch von Schritt 308 dahingehend, daß das Abrufen der isochronen Funktionen unter Verwendung eines Satzes von Basis-Soft-Datenblöcken anstelle eines Basis-Soft-Datenblocks geplant wird. Die Planung erfolgt auch unter Verwendung der zusätzlich berechneten Multiplizierer. Schritt 392 wird nachstehend unter zusätzlicher Bezugnahme auf 19a19c detaillierter beschrieben.
  • Nach der Planung der isochronen Funktionen setzt die Bussteuereinrichtung 14 mit den Schritten 394 und 396 fort, welche den Schritten 310 und 312 des früher beschriebenen Verfahrens der geringsten Latenzzeit ähneln. Schritt 396 unterscheidet sich jedoch von Schritt 312 dahingehend, daß die Bussteuereinrichtung 14 den Betrag der verfügbaren Sendezeit in jedem Basis-Soft-Datenblock des Satzes der Basis-Soft-Datenblöcke – anstatt nur in einem Basis-Soft-Datenblock – bestimmt. Nach der Bestimmung der asynchronen Transferanforderungen und der in jedem der Basis-Soft-Datenblöcke verfügbaren Sendezeit plant die Bussteuereinrichtung 14 dann die asynchronen Transfers, Schritt 398. Schritt 398 ähnelt ebenfalls dem Schritt 314 des früher beschriebenen Verfahrens der geringsten Latenzzeit. Er unterscheidet sich jedoch von Schritt 314 dahingehend, daß die asynchronen Transfers unter Verwendung mehrerer Sätze von Soft-Datenblöcken – anstelle mehrerer Soft-Datenblöcke – geplant werden. Schritt 398 wird nachstehend unter zusätzlicher Bezugnahme auf 20 detaillierter beschrieben.
  • Bei einigen Ausführungsbeispielen wird der oben beschriebene Prozeß ebenfalls bei Erfassung eines Anschlusses/einer Trennung serieller Buselemente während des Betriebs wiederholt, wodurch der datenblockbasierte Abrufplan dynamisch in Echtzeit an die tatsächlich vorhandenen Buselemente angepaßt wird. Die Art und Weise, auf welche Schritt 392 ausgeführt wird, ist geringfügig anders, wenn der Prozeß als Reaktion auf die Erfassung eines Anschlusses/einer Trennung serieller Buselemente während des Betriebs wiederholt wird. Diese Unterschiede werden deutlich werden, wenn Schritt 392 nachfolgend detaillierter beschrieben wird.
  • 19a19c stellen die Verfahrensschritte der vorliegenden Erfindung zur Planung des Abrufens isochroner Funktionen in einem Satz von Soft-Datenblöcken unter dem Verfahren der geringsten Latenzzeit und der kleinsten gemeinsamen Aktualisierungsrate dar. Ähnlich wie bei dem Verfahren der geringsten Latenzzeit bestimmt die Bussteuereinrichtung 14 zu Anfang, ob sie den ersten Abrufplan erzeugt, Schritt 400, d. h., ob sie beim Einschalten/Reset oder als Reaktion auf einen Anschluß/eine Trennung serieller Buselemente während des Betriebs plant. Wenn die Planung für den ersten Plan ausgeführt wird, geht die Bussteuereinrichtung 14 unverzüglich dazu über, eine der isochronen Funktionen für die Planung auszuwählen, Schritt 403. Jedoch im Gegensatz zum Verfahren der geringsten Latenzzeit basiert die Auswahl auf den berechneten Multipliziererwerten der isochronen Funktionen. Genauer gesagt, es wird die ungeplante isochrone Funktion mit dem geringsten abgeschnittenen Multipliziererwert ausgewählt. Als Nächstes bestimmt die Bussteuereinrichtung 14, ob die Planung der ausgewählten isochronen Funktion dazu führt, daß die kumulative Sendezeit der geplanten isochronen Funktionen jedes Basis-Soft-Datenblocks eines Satzes von Soft-Datenblöcken den isochronen Höchststand überschreitet, Schritt 404. Die eingestellte Größe entspricht dem größten abgeschnittenen Multipliziererwert der isochronen Funktionen. Wenn die Planung nicht dazu führen würde, daß die kumulative Sendezeit den isochronen Höchststand für irgendeinen Basis-Soft-Datenblock überschreitet, plant die Bussteuereinrichtung 14 die isochrone Funktion in Übereinstimmung mit ihrem abgeschnittenen Multipliziererwert und addiert die Sendezeit ihrer isochronen Daten zu der kumulativen Sendezeit der geplanten isochronen Funktionen für jeden Basis-Soft-Datenblock hinzu, Schritt 406.
  • Ähnlich wie bei dem früher beschriebenen Verfahren der geringsten Latenzzeit prüft die Bussteuereinrichtung 14 bei der Planung der isochronen Funktion, um zu festzustellen, ob es weitere Abrufe isochroner Funktionen gibt, die geplant werden müssen, Schritt 408. Wenn weitere Abrufe isochroner Funktionen geplant werden müssen, kehrt die Bussteuereinrichtung 14 zu Schritt 402 zurück, andernfalls ist die Planung der isochronen Funktionen abgeschlossen.
  • Immer dann, wenn die Bussteuereinrichtung 14 bei Schritt 404 feststellt, daß die Planung einer ausgewählten isochronen Funktion dazu führen würde, daß die kumulative Sendezeit der geplanten isochronen Funktionen den isochronen Höchststand überschreitet, lehnt die Bussteuereinrichtung 14 – ebenfalls ähnlich wie bei dem früher beschriebenen Verfahren der geringsten Latenzzeit – die ausgewählte isochrone Funktion ab und beendet die Planung, Schritt 410. Vorzugsweise erzeugt die Bussteuereinrichtung 14 außerdem eine Fehlerbedingung, die anzeigt, daß die Buskapazität überschritten worden ist, und identifiziert alle ungeplanten isochronen Funktionen, Schritt 410.
  • Ähnlich wie bei dem früher beschriebenen Verfahren der geringsten Latenzzeit, wenn die Bussteuereinrichtung 14 schon bei Schritt 400 feststellt, daß der Prozeß nicht ausgeführt wird, um den ersten Abrufplan zu erzeugen, d. h., daß er ausgeführt wird, um den Abrufplan dynamisch anzupassen, bestimmt die Bussteuereinrichtung 14 ferner, ob die geringste Latenzzeit geringer als die Größe oder gleich der Größe des „alten" Soft-Datenblocks ist, Schritt 412. Wenn die geringste Latenzzeit geringer als die Größe oder gleich der Größe des „alten" Soft-Datenblocks ist, geht die Bussteuereinrichtung 14 zu Schritt 414 weiter, andernfalls setzt sie mit Schritt 434 fort.
  • Es wird nun mit 19b fortgesetzt; ähnlich wie bei dem früher beschriebenen Verfahren der geringsten Latenzzeit löscht die Bussteuereinrichtung 14 bei Schritt 414 jegliche isochronen Funktionen, welche den Dienst des Abrufplans nicht mehr benötigen. Dann plant die Bussteuereinrichtung 14 alle verbleibenden „alten" isochronen Funktionen in den Basis-Soft-Datenblöcken neu und kumuliert ihre Sendezeiten für alle Basis-Soft-Datenblöcke, wie früher beschrieben wurde, Schritt 416. Als Nächstes stellt die Bussteuereinrichtung 14 fest, ob irgendeiner der isochronen Höchststände der Basis-Soft-Datenblöcke überschritten worden ist oder nicht, Schritt 418. Wenn der isochrone Höchststand wenigstens eines der Basis-Soft-Datenblöcke überschritten worden ist, legt die Bussteuereinrichtung 14 die Größe des Soft-Datenblocks für die Basis-Soft-Datenblöcke und die entsprechenden isochronen Höchststände neu fest – mit Ausnahme der isochronen Funktion, die die geringste Latenzzeit ergeben hat, Schritt 420. Die Bussteuereinrichtung 14 wiederholt die Schritte 416420, bis sie bei Schritt 418 feststellen kann, daß alle verbleibenden alten isochronen Funktionen unter den isochronen Höchstständen aller Basis-Soft-Datenblöcke erfolgreich neu geplant worden sind.
  • Die Bussteuereinrichtung 14 geht dann zu den Schritten 422432 weiter. Ähnlich wie bei dem früher beschriebenen Verfahren der geringsten Latenzzeit sind mit Ausnahme von Schritt 430 die Schritte 422432 mit den früher beschriebenen Schritten 404410 identisch. Der zusätzliche Schritt 430 wird ausgeführt, um zu veranlassen, daß die Fehlerbedingung in Schritt 432 ebenfalls für den Fall erzeugt wird, daß die „erfolgreiche" Anpassung des Abrufplans den Ausschluß einer oder mehrerer neuer isochroner Funktionen mit geringen Latenzzeiten früher bei Schritt 420 erforderlich machte, damit sich die endgültige „erfolgreiche" Größe des Soft-Datenblocks für die Basis-Soft-Datenblöcke ergibt.
  • Es wird nun mit 19c fortgesetzt; es sei daran erinnert, daß die Bussteuereinrichtung 14 mit Schritt 434 fortsetzt, wenn sie schon bei Schritt 412 entschieden hat, daß die geringste Latenzzeit größer als die Größe des „alten" Soft-Datenblocks ist. Die Schritte 434 und 436 sind dieselben wie die früher beschriebenen Schritte 414 und 416. Jedoch sind bei der Neuplanung der alten isochronen Funktionen in Schritt 436 Schritte wie die früher beschriebenen Schritte 418 und 420 nicht erforderlich, da schon bei Schritt 412 festgestellt wurde, daß die geringste Latenzzeit größer als die Größe des „alten" Soft-Datenblocks ist. Somit ist es nicht möglich, daß die Bussteuereinrichtung 14 versäumt, die alten isochronen Funktionen unter den isochronen Höchstständen der Basis-Soft-Datenblöcke zu planen. Dann geht die Bussteuereinrichtung 14 dazu über, die neuen isochronen Funktionen in den Schritten 440446 zu planen. Die Schritte 440446 sind mit den früher beschriebenen Schritten 404410 identisch.
  • 20 stellt die Verfahrensschritte der vorliegenden Erfindung zur Planung des Abrufens asynchroner Transfers in einem oder mehreren Sätzen von Soft-Datenblöcken unter dem Verfahren der geringsten Latenzzeit und der kleinsten gemeinsamen Aktualisierungsrate dar. Bei diesem dargestellten Ausführungsbeispiel werden die Abrufe der asynchronen Transfers ebenfalls nach Gruppen geplant. Wie früher beschrieben, sind spezielle Beispiele für asynchrone Transfergruppen Anrufanforderungen, Managementabfragen und dergleichen. Es ist jedoch klar, daß die vorliegende Erfindung ausgeführt werden kann, ohne die Planung der asynchronen Transfers nach Gruppen auszuführen.
  • Gemäß dem dargestellten Ausführungsbeispiel wählt die Bussteuereinrichtung 14 – ähnlich wie bei dem früher beschriebenen Verfahren der geringsten Latenzzeit – zuerst eine bestimmte asynchrone Transfergruppe für die Planung aus, Schritt 448. Dann wählt die Bussteuereinrichtung 14 einen asynchronen Transfer für die Planung aus, Schritt 450. Jede Auswahl kann willkürlich oder unter Verwendung von Prioritätsmodellen erfolgen. Beim Auswählen eines asynchronen Transfers für die Planung wählt die Bussteuereinrichtung 14 den „geringsten" ungeprüften Basis-Soft-Datenblock aus, Schritt 452. Die Bussteuereinrichtung 14 stellt fest, ob die Planung des ausgewählten asynchronen Transfers dazu führen würde, daß die kumulative Sendezeit aller geplanten Funktionen/Transfers das Datenblock-Höchststand des ausgewählten Basis-Soft-Datenblocks überschreitet, Schritt 454. Wenn die Planung nicht dazu führen würde, daß der Datenblock-Höchststand des ausgewählten Basis-Soft-Datenblocks überschritten wird, plant die Bussteuereinrichtung 14 den ausgewählten asynchronen Transfer, Schritt 456. Wenn andererseits die Planung dazu führen würde, daß das Datenblock-Höchststand des ausgewählten Basis-Soft-Datenblocks überschritten wird, stellt die Bussteuereinrichtung 14 fest, ob es Basis-Soft-Datenblöcke gibt, die ungeprüft bleiben, Schritt 458. Wenn es ungeprüfte Basis-Soft-Datenblöcke gibt, kehrt die Bussteuereinrichtung 14 zu Schritt 452 zurück. Wenn jedoch alle Basis-Soft-Datenblöcke geprüft worden sind, fügt die Bussteuereinrichtung 14 einen weiteren Satz von Basis-Soft-Datenblöcken hinzu, d. h. einen neuen Satz von Soft-Datenblöcken mit ähnlich geplanten isochronen Funktionen, Schritt 460, bevor der ausgewählte asynchrone Transfer geplant wird, Schritt 456.
  • Bei der Planung des ausgewählten asynchronen Transfers stellt die Bussteuereinrichtung 14 – ähnlich wie bei dem früher beschriebenen Verfahren der geringsten Latenzzeit – fest, ob innerhalb der ausgewählten asynchronen Transfergruppe noch weitere asynchrone Transfers zu planen sind, Schritt 462. Wenn noch weitere asynchrone Transfers zu planen sind, wiederholt die Bussteuereinrichtung 14 die Schritte 450460, bis bei Schritt 462 festgestellt wird, daß alle asynchronen Transfers in der ausgewählten asynchronen Transfergruppe geplant worden sind. Dann bestimmt die Bussteuereinrichtung 14, ob noch weitere asynchrone Transfergruppen zu planen sind, Schritt 464. wenn noch weitere asynchrone Transfergruppen zu planen sind, wiederholt die Bussteuereinrichtung 14 die Schritte 448462, bis bei Schritt 464 festgestellt wird, daß alle asynchronen Transfergruppen geplant worden sind.
  • 21a21b stellen eine beispielhafte Anwendung des Verfahrens der geringsten Latenzzeit und der kleinsten gemeinsamen Aktualisierungsrate dar, wobei dieselbe Topologie und dieselben isochronen/asynchronen Transferanforderungen verwendet werden, die in 17a dargestellt sind. Wie in 21a gezeigt, bestimmt die Bussteuereinrichtung 14 zuerst, daß die Latenzzeiten der drei isochronen Funktionen – CD, ISDN T1 und Sprache – 364 μs, 667 μs beziehungsweise 727 μs betragen, Schritt 382a. Somit wird bestimmt, daß die geringste Latenzzeit 364 μs beträgt; die Größe des Soft-Datenblocks wird auf 364 μs eingestellt; und es wird berechnet, daß der isochrone Höchststand 273 μs beträgt (unter Verwendung einer beispielhaften Nutzungsrate von 75%), Schritt 384a. Es wird bestimmt, daß die Sendezeiten der isochronen Daten und der asynchronen Transfers 114 μs für CD Audio, 37,2 μs für ISDN-T1-Daten, 37,2 μs für Sprachdaten etc. etc. betragen, Schritt 386a. Es wird bestimmt, daß die Aktualisierungsraten der isochronen Funktionen 2,75 für CD Audio, 1,5 für ISDN T1 und 1,375 für Sprachdaten betragen, Schritt 388a. Es wird bestimmt, daß die kleinste gemeinsame Aktualisierungsrate 2,75 beträgt, und es wird bestimmt, daß die abgeschnittenen Multipliziererwerte der isochronen Funktionen 1 für CD Audio, 1 für ISDN T1 beziehungsweise 2 für Sprache betragen, Schritt 390a.
  • Unter Anwendung der in den 19a19c dargestellten Verfahrensschritte werden die isochronen Funktionen – CD Audio, ISDN T1 und Sprache – alle erfolgreich in einen Satz von zwei Basis-Soft-Datenblöcken geplant, wie gezeigt, da die kumulativen Sendezeiten der isochronen Daten für die zwei Basis-Soft-Datenblöcke 151,2 μs und 188,4 μs betragen, welche geringer als 273 μs – der gemeinsame isochrone Höchststand für beide Basis-Soft-Datenblöcke – sind, Schritt 392a.
  • Als Nächstes stellt die Bussteuereinrichtung 14 fest, daß Abrufe für zwei asynchrone Funktionen, fünf Verbindungsmanagementtransaktionen (GEO-Abruf), eine Anrufanforderung und drei Managementabfragen benötigt werden, Schritt 394a Ferner stellt die Bussteuereinrichtung 14 fest, daß ungefähr 167 μs und 130 μs jeweils für die zwei Basis-Soft-Datenblöcke für asynchrone Transfers verfügbar sind (unter Verwendung einer beispielhaften Nutzungsrate von 95%), Schritt 396a. Nach der Feststellung der für die zwei Basis-Soft-Datenblöcke verfügbaren Sendezeiten plant die Bussteuereinrichtung 14 dann die erforderlichen asynchronen Transfers unter Verwendung von zwei Sätzen von Basis-Soft-Datenblöcken, wie dargestellt, Schritt 398a. Der resultierende Abrufpan für diese beispielhafte Anwendung wird in 21b gezeigt.
  • Somit sind Verfahren und eine Einrichtung zum dynamischen Erzeugen und Aufrechterhalten datenblockbasierter Abrufpläne zum Abrufen isochroner und asynchroner Funktionen beschrieben worden, welche den isochronen Funktionen Latenzzeiten und Bandbreiten garantieren. Für weitere Informationen über das Verfahren und die Einrichtung der vorliegenden Erfindung wird auf die beigefügten Anhänge verwiesen.
  • Während die vorliegende Erfindung anhand der obigen Ausführungsbeispiele beschrieben worden ist, werden Fachleute erkennen, daß die Erfindung nicht auf die beschriebenen Ausführungsbeispiele beschränkt ist. Das Verfahren und die Einrichtung der vorliegenden Erfindung können mit Modifikationen und Änderungen innerhalb des Schutzbereichs der beigefügten Ansprüche ausgeführt werden. Die Beschreibung ist somit als Erläuterung und nicht als Beschränkung der vorliegenden Erfindung zu betrachten.

Claims (10)

  1. Eine Einrichtung zum Erzeugen und Aufrechterhalten rahmenbasierter Abfragezeitpläne, die Verzögerungen und Bandbreiten für isochrone Funktionen isochroner Peripherieeinrichtungen (16) garantieren, wobei die isochronen Peripherieeinrichtungen (16) zusammen mit asynchronen Peripherieeinrichtungen (16) mit einer Systemeinheit (12) eines Computersystems (10) über einen seriellen Bus gekoppelt sind, wobei die Einrichtung aufweist: erste Mittel zum Betreiben einer Mehrzahl von Konfigurationsmanagementtransaktionen zwischen der Systemeinheit (12) und den Peripherieeinrichtungen (16), isochronen ebenso wie asynchronen, um dynamisch eine Mehrzahl von Betriebscharakteristika für jede der Peripherieeinrichtungen (16), einschließlich Verzögerungsanforderungen der isochronen Funktionen und Sendezeiten der isochronen Daten sowie Transaktionsanforderungen der asynchronen Peripherieeinrichtungen und Sendezeiten der Transaktionen, zu bestimmen; zweite Mittel zum Erzeugen und Aufrechterhalten eines Abfragezeitplans für die Systemeinheit (12) zum Abfragen der Peripherieeinrichtungen, wobei der Abfragezeitplan in Übereinstimmung mit den bestimmten Betriebscharakteristika erzeugt und aufrechterhalten wird und aus einem Superrahmen (30), der eine Mehrzahl von Soft-Rahmen (32) aufweist, die Replikationen eines oder mehrerer Basisrahmen sind, besteht, wobei das Abfragen jeder der isochronen Funktionen in mehreren der Soft-Rahmen (32) eingeplant ist aufgrund der Replikationen und eines Einplanens des Abfragens der isochronen Funktionen in wenigstens einem der einen oder mehreren Basisrahmen, und wobei das Abfragen jeder der asynchronen Peripherieeinrichtungen in höchstens einem der Soft-Rahmen (32) eingeplant wird.
  2. Die Einrichtung nach Anspruch 1, wobei die ersten Mittel aufweisen: auf der Systemeinheit (12) angeordnete erste Schaltungen (66) und Ergänzungslogik zum Abfragen der isochronen und der asynchronen Peripherieeinrichtungen (16), um die Verzögerungsanforderungen der isochronen Funktionen und die Sendezeiten der isochronen Daten sowie die Transaktionsanforderungen der asynchronen Peripherieeinrichtungen und die Sendezeiten der Transaktionen zur Verfügung zu stellen.
  3. Die Einrichtung nach Anspruch 1, wobei die zweiten Mittel aufweisen: auf der Systemeinheit (12) angeordnete erste Schaltungen und Ergänzungslogik zum Bestimmen eines isochronen Höchststands für einen Basisrahmen, der eine erste obere Grenze innerhalb des Basisrahmens zum Einplanen des Abfragens isochroner Funktionen festlegt.
  4. Die Einrichtung nach Anspruch 3, wobei die zweiten Mittel ferner aufweisen: zweite Schaltungen und Ergänzungslogik zum Bestimmen einer von den isochronen Funktionen geforderten kleinsten gemeinsamen Aktualisierungsrate auf der Grundlage der jeweils von den isochronen Funktionen geforderten Aktualisierungsraten, welche aus den Verzögerungsanforderungen berechnet worden sind, zum Bestimmen einer Mehrzahl abgeschnittener Ganzzahlmultiplikatoren, jeweils einen für jede isochrone Funktion, auf der Grundlage der kleinsten gemeinsamen Aktualisierungsrate und der von den isochronen Funktionen geforderten Aktualisierungsraten, und zum Einplanen des Abfragens ausgewählter Funktionen der isochronen Funktionen in dem Basisrahmen in Übereinstimmung mit den abgeschnittenen Ganzzahlmultiplikatoren, für Datenkommunikationstransaktionen, die einer ersten Einschränkung unterworfen sind, daß die kumulativen Sendezeiten der isochronen Daten der isochronen Funktionen des Zeitplans geringer sind als der isochrone Höchststand für den Basisrahmen.
  5. Die Einrichtung nach Anspruch 4, wobei die ersten Schaltungen und Ergänzungslogik ferner verwendet werden zum Bestimmen eines Rahmen-Höchststands für jeden der Soft-Rahmen (32), um eine zweite obere Grenze innerhalb jedes der Soft-Rahmen (32) zum Einplanen des Abfragens festzulegen; und wobei die zweiten Schaltungen und Ergänzungslogik ferner verwendet werden zum Einplanen des Abfragens der isochronen Peripherieeinrichtungen (16) nach Verbindungsmanagementtransaktionen um das eingeplante Abfragen der isochronen Funktionen nach Datenkommunikationstransaktionen herum, die einer zweiten Einschränkung unterworfen sind, daß kumulative Sendezeiten der isochronen Daten der eingeplanten isochronen Funktionen und der eingeplanten Transaktionen isochroner Peripherieeinrichtungen (16) geringer sind als der Rahmen-Höchststand für jeden der Soft-Rahmen (32), wobei die zweiten Schaltungen und Ergänzungslogik den einen oder die mehreren Basisrahmen replizieren, um das Abfragen nach Verbindungsmanagementtransaktionen, sofern erforderlich, einzuplanen.
  6. Ein Verfahren in einem Computersystem mit einer Systemeinheit, einer Mehrzahl isochroner Peripherieeinrichtungen (16) und einer Mehrzahl asynchroner Peripherieeinrichtungen (16), wobei die Peripherieeinrichtungen (16), sowohl die isochronen als auch die asynchronen, mit der Systemeinheit (12) über einen seriellen Bus gekoppelt sind, zum Erzeugen und Aufrechterhalten rahmenbasierter Abfragezeitpläne, die Verzögerungen und Bandbreiten für isochrone Funktionen isochroner Peripherieeinrichtungen garantieren, wobei das Verfahren die Schritte umfaßt: a) Betreiben einer Mehrzahl von Konfigurationsmanagementtransaktionen zwischen der Systemeinheit (12) und den Peripherieeinrichtungen (16), synchronen ebenso wie asynchronen, zum dynamischen Bestimmen einer Mehrzahl von Betriebscharakteristika für jede der Peripherieeinrichtungen (16), einschließlich Verzögerungsanforderungen der isochro nen Funktionen und Sendezeiten der isochronen Daten sowie Transaktionsanforderungen für die asynchronen Peripherieeinrichtungen und Sendezeiten für Transaktionen; und b) Erzeugen und Aufrechterhalten eines Abfragezeitplans für die Systemeinheit (12) zum Abfragen der Peripherieeinrichtungen (16), wobei der Abfragezeitplan Übereinstimmung mit den bestimmten Betriebscharakteristika erzeugt und aufrechterhalten wird und aus einem Superrahmen (30) mit einer Mehrzahl von Soft-Rahmen (32), die Replikationen eines oder mehrerer Basisrahmen sind, besteht, wobei das Abfragen jeder der isochronen Funktionen in mehreren der Soft-Rahmen (32) eingeplant wird aufgrund der Replikationen und des Einplanens des Abfragens jeder der isochronen Funktionen in wenigstens einem der einen oder mehreren Basisrahmen, und wobei das Abfragen jeder der asynchronen Peripherieeinrichtungen (16) in höchstens einem der Soft-Rahmen (32) eingeplant wird.
  7. Das Verfahren nach Anspruch 6, wobei der Schritt b) das Bestimmen eines isochronen Höchststands für einen Basisrahmen umfaßt, um eine erste obere Grenze innerhalb des Basisrahmens zum Einplanen eines Abfragens der isochronen Funktionen festzulegen.
  8. Das Verfahren nach Anspruch 7, wobei der Schritt b) ferner umfaßt ein Einplanen des Abfragens der isochronen Funktionen in dem Basisrahmen für Datenkommunikationstransaktionen, was einer ersten Einschränkung unterworfen ist, daß kumulative Sendezeiten der eingeplanten isochronen Daten isochroner Funktionen geringer als der isochrone Höchststand sind.
  9. Das Verfahren nach Anspruch 8, wobei der Schritt b) ferner umfaßt: Bestimmen eines Rahmen-Höchststands für jeden der Soft-Rahmen, um eine zweite obere Grenze innerhalb jedes der Soft-Rahmen (32) zum Einplanen eines Abfragens festzulegen; und Einplanen eines Abfragens der isochronen Peripherieeinrichtungen nach Verbindungsmanagementtransaktionen um das eingeplante Abfragen der isochronen Funktionen nach Datenkommunikationstransaktionen herum, was einer zweiten Einschränkung unterworfen ist, daß kumulative Sendezeiten der eingeplanten isochronen Daten isochroner Funktionen und eingeplanten isochronen Peripherietransaktionen geringer sind als der Rahmen-Höchststand für jeden der Soft-Rahmen (32), wobei der eine oder die mehreren Basis-Soft-Rahmen (32) repliziert wird/werden, um das Abfragen nach Verbindungsmanagementtransaktionen ggf. einzuplanen.
  10. Das Verfahren nach Anspruch 8, wobei Schritt b) ferner das Bestimmen eines Rahmen-Höchststands für jeden der Soft-Rahmen (32) umfaßt, um eine zweite obere Grenze innerhalb jedes der Soft-Rahmen (32) zum Einplanen des Abfragens festzulegen, und ein Einplanen des Abfragens der asynchronen Peripherieeinrichtungen nach asynchronen und Verbindungsmanagementtransaktionen, um das eingeplante Abfragen der isochronen Funktionen für Datenkommunikationstransaktionen herum, was einer zweiten Einschränkung unterworfen ist, daß kumulative Sendezeiten der eingeplanten isochronen Daten isochroner Funktionen und der eingeplanten Transaktionen asynchroner Peripherieeinrichtungen geringer sind als der Rahmen-Höchststand jedes Soft-Rahmens, Replizieren des einen oder der mehreren Basisrahmen, um das Abfragen der asynchronen Peripherieeinrichtungen nach asynchronen und Verbindungsmanagementtransaktionen, sofern erforderlich, einzuplanen.
DE69532383T 1994-10-31 1995-10-30 Verfahren und vorrichtung zur dynamischen erzeugung und erhaltung von rahmenbasierten abfrageprogrammen für das abfragen von isochronen und asynchronen funktionen, die wartezeiten und bandbreiten für die isochronen funktionen garantieren Expired - Lifetime DE69532383T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US331727 1973-02-12
US08/331,727 US5742847A (en) 1994-10-31 1994-10-31 M&A for dynamically generating and maintaining frame based polling schedules for polling isochronous and asynchronous functions that guaranty latencies and bandwidths to the isochronous functions
PCT/US1995/014209 WO1996013777A1 (en) 1994-10-31 1995-10-30 Method and apparatus for dynamically generating and maintaining frame based polling schedules for polling isochronous and asynchronous functions that guarantee latencies and bandwidths to the isochronous functions

Publications (2)

Publication Number Publication Date
DE69532383D1 DE69532383D1 (de) 2004-02-05
DE69532383T2 true DE69532383T2 (de) 2004-12-23

Family

ID=23295126

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69532383T Expired - Lifetime DE69532383T2 (de) 1994-10-31 1995-10-30 Verfahren und vorrichtung zur dynamischen erzeugung und erhaltung von rahmenbasierten abfrageprogrammen für das abfragen von isochronen und asynchronen funktionen, die wartezeiten und bandbreiten für die isochronen funktionen garantieren

Country Status (6)

Country Link
US (1) US5742847A (de)
EP (1) EP0789879B1 (de)
AU (1) AU4019995A (de)
DE (1) DE69532383T2 (de)
HK (1) HK1002784A1 (de)
WO (1) WO1996013777A1 (de)

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5623610A (en) 1994-10-31 1997-04-22 Intel Corporation System for assigning geographical addresses in a hierarchical serial bus by enabling upstream port and selectively enabling disabled ports at power on/reset
US7690043B2 (en) * 1994-12-19 2010-03-30 Legal Igaming, Inc. System and method for connecting gaming devices to a network for remote play
US5832492A (en) * 1995-09-05 1998-11-03 Compaq Computer Corporation Method of scheduling interrupts to the linked lists of transfer descriptors scheduled at intervals on a serial bus
US6101550A (en) * 1997-03-10 2000-08-08 Sun Microsystems, Inc. Method and structure for interrupt polling signal bandwidth allocation in universal serial bus (USB) system
US6131119A (en) * 1997-04-01 2000-10-10 Sony Corporation Automatic configuration system for mapping node addresses within a bus structure to their physical location
US6272546B1 (en) 1998-03-12 2001-08-07 Sony Corporation Method of and apparatus for managing resource allocation and bandwidth overflow in a cooperative, distributed computing environment
US20030133448A1 (en) * 1998-04-03 2003-07-17 Craig R. Frink Packet protocol for encoding and decoding video data and data flow signals and devices for implementing the packet protocol
US6009533A (en) * 1998-06-02 1999-12-28 Via-Cyrix, Inc. Speculative bus cycle acknowledge for 1/2X core/bus clocking
US6202116B1 (en) 1998-06-17 2001-03-13 Advanced Micro Devices, Inc. Write only bus with whole and half bus mode operation
US6032211A (en) * 1998-06-17 2000-02-29 Advanced Micro Devices, Inc. Method of mode control in a bus optimized for personal computer data traffic
US6148357A (en) * 1998-06-17 2000-11-14 Advanced Micro Devices, Inc. Integrated CPU and memory controller utilizing a communication link having isochronous and asynchronous priority modes
US6532019B1 (en) 1998-06-17 2003-03-11 Advanced Micro Devices, Inc. Input/output integrated circuit hub incorporating a RAMDAC
US6199132B1 (en) 1998-06-17 2001-03-06 Advanced Micro Devices, Inc. Communication link with isochronous and asynchronous priority modes
US6151651A (en) * 1998-06-17 2000-11-21 Advanced Micro Devices, Inc. Communication link with isochronous and asynchronous priority modes coupling bridge circuits in a computer system
US6452915B1 (en) 1998-07-10 2002-09-17 Malibu Networks, Inc. IP-flow classification in a wireless point to multi-point (PTMP) transmission system
US6680922B1 (en) 1998-07-10 2004-01-20 Malibu Networks, Inc. Method for the recognition and operation of virtual private networks (VPNs) over a wireless point to multi-point (PtMP) transmission system
US6640248B1 (en) 1998-07-10 2003-10-28 Malibu Networks, Inc. Application-aware, quality of service (QoS) sensitive, media access control (MAC) layer
US6590885B1 (en) 1998-07-10 2003-07-08 Malibu Networks, Inc. IP-flow characterization in a wireless point to multi-point (PTMP) transmission system
US6862622B2 (en) * 1998-07-10 2005-03-01 Van Drebbel Mariner Llc Transmission control protocol/internet protocol (TCP/IP) packet-centric wireless point to multi-point (PTMP) transmission system architecture
US6628629B1 (en) 1998-07-10 2003-09-30 Malibu Networks Reservation based prioritization method for wireless transmission of latency and jitter sensitive IP-flows in a wireless point to multi-point transmission system
US6594246B1 (en) 1998-07-10 2003-07-15 Malibu Networks, Inc. IP-flow identification in a wireless point to multi-point transmission system
US6336179B1 (en) 1998-08-21 2002-01-01 Advanced Micro Devices, Inc. Dynamic scheduling mechanism for an asynchronous/isochronous integrated circuit interconnect bus
US6381647B1 (en) * 1998-09-28 2002-04-30 Raytheon Company Method and system for scheduling network communication
US20030110317A1 (en) * 1998-11-03 2003-06-12 Jasmin Ajanovic Method and apparatus for an improved interface between a memory control hub and an input/output control hub
US6175884B1 (en) 1998-11-03 2001-01-16 Intel Corporation Efficient communication of transaction types using separate and orthogonal attribute fields in packet headers transferred between hubs in a computer system
US6499079B1 (en) 1998-11-23 2002-12-24 Advanced Micro Devices, Inc. Subordinate bridge structure for a point-to-point computer interconnection bus
US6470410B1 (en) 1998-11-23 2002-10-22 Advanced Micro Devices, Inc. Target side concentrator mechanism for connecting multiple logical pipes to a single function utilizing a computer interconnection bus
US6618782B1 (en) 1998-11-23 2003-09-09 Advanced Micro Devices, Inc. Computer interconnection bus link layer
US6421751B1 (en) 1998-11-23 2002-07-16 Advanced Micro Devices, Inc. Detecting a no-tags-free condition in a computer system having multiple outstanding transactions
US6611891B1 (en) 1998-11-23 2003-08-26 Advanced Micro Devices, Inc. Computer resource configuration mechanism across a multi-pipe communication link
US6457081B1 (en) 1998-11-23 2002-09-24 Advanced Micro Devices, Inc. Packet protocol for reading an indeterminate number of data bytes across a computer interconnection bus
US6690676B1 (en) 1998-11-23 2004-02-10 Advanced Micro Devices, Inc. Non-addressed packet structure connecting dedicated end points on a multi-pipe computer interconnect bus
US6457084B1 (en) 1998-11-23 2002-09-24 Advanced Micro Devices, Inc. Target side distributor mechanism for connecting multiple functions to a single logical pipe of a computer interconnection bus
US6629186B1 (en) 1999-05-10 2003-09-30 Intel Corporation Bus controller and associated device drivers for use to control a peripheral bus having at least one store-and-forward segment
US6389501B1 (en) 1999-05-10 2002-05-14 Intel Corporation I/O peripheral device for use in a store-and-forward segment of a peripheral bus
US6546018B1 (en) 1999-05-10 2003-04-08 Intel Corporation Digital system having a peripheral bus structure with at least one store-and-forward segment
US6351783B1 (en) * 1999-05-20 2002-02-26 Intel Corporation Method and apparatus for isochronous data transport over an asynchronous bus
JP3784994B2 (ja) * 1999-05-27 2006-06-14 株式会社東芝 データ処理装置
US6600756B1 (en) * 1999-06-14 2003-07-29 Hewlett-Packard Development Company, Lp. Method of improving the performance of a bus which is asynchronous-traffic intensive
US7165252B1 (en) 1999-06-21 2007-01-16 Jia Xu Method of scheduling executions of processes with various types of timing properties and constraints
US6526464B1 (en) * 1999-07-07 2003-02-25 Micron Technology, Inc. Mechanism to expand address space of a serial bus
US6792495B1 (en) * 1999-07-27 2004-09-14 Intel Corporation Transaction scheduling for a bus system
US6629220B1 (en) * 1999-08-20 2003-09-30 Intel Corporation Method and apparatus for dynamic arbitration between a first queue and a second queue based on a high priority transaction type
US7039047B1 (en) 1999-11-03 2006-05-02 Intel Corporation Virtual wire signaling
US6415367B1 (en) 1999-12-16 2002-07-02 Intel Corporation Apparatus for reducing asynchronous service latency in a time slot-based memory arbitration scheme
US6412049B1 (en) 1999-12-16 2002-06-25 Intel Corporation Method for minimizing CPU memory latency while transferring streaming data
US6363461B1 (en) * 1999-12-16 2002-03-26 Intel Corportion Apparatus for memory resource arbitration based on dedicated time slot allocation
US6708239B1 (en) * 2000-12-08 2004-03-16 The Boeing Company Network device interface for digitally interfacing data channels to a controller via a network
US20020112070A1 (en) * 2000-12-08 2002-08-15 The Boeing Company Network controller for digitally controlling remote devices via a common bus
US8009667B1 (en) 2001-01-16 2011-08-30 Wi—LAN, Inc. Packing source data packets into transporting packets with fragmentation
US6754747B2 (en) 2001-01-25 2004-06-22 Dell Products L.P. System and method for configuring an I/O bus
WO2002088965A1 (en) * 2001-04-26 2002-11-07 The Boeing Company System and method for preloading a bus controller with command schedule
WO2002088966A1 (en) * 2001-04-26 2002-11-07 The Boeing Company Systems, methods, and bus controllers for creating an event trigger on a network bus
DE60228697D1 (de) * 2001-04-26 2008-10-16 Boeing Co System und verfahren zum aufrechterhalten des ordnungsgemässen abschlusses und einer fehlerfreien kommunikation in einem netzwerkbus
US7111100B2 (en) * 2002-04-26 2006-09-19 The Boeing Company Systems and methods for assigning an address to a network device added to an existing network
US7028124B2 (en) * 2001-09-26 2006-04-11 Intel Corporation Method and apparatus for dual queue head processing of interrupt endpoints
US6889265B2 (en) 2001-11-05 2005-05-03 Intel Corporation Apparatus and method to allow and synchronize schedule changes in a USB enhanced host controller
US7639693B1 (en) 2002-01-30 2009-12-29 Pmc - Sierra Ltd. Method and/or apparatus distributing variable-sized data units to variable destinations
US7065583B2 (en) * 2002-02-14 2006-06-20 The Boeing Company System and associated suppression assembly for limiting electromagnetic emissions in network devices communicating via a network bus
US7010621B2 (en) * 2002-02-14 2006-03-07 The Boeing Company System having a spread-spectrum clock for further suppression of electromagnetic emissions in network devices communicating via a network bus
US7478174B2 (en) * 2002-04-26 2009-01-13 The Boeing Company Systems and methods for maintaining network stability
US7082485B2 (en) * 2002-07-24 2006-07-25 The Boeing Company Systems and methods for establishing peer-to-peer communications between network devices communicating via a common bus
US9251649B2 (en) 2002-10-09 2016-02-02 Zynga Inc. System and method for connecting gaming devices to a network for remote play
US7174402B2 (en) * 2003-04-07 2007-02-06 The Boeing Company Systems, network devices and methods for highly configurable peer-to-peer communications between network devices communicating via a common bus
US7590063B2 (en) * 2003-11-10 2009-09-15 Honeywell International Inc. Real-time estimation of event-driven traffic latency distributions when layered on static schedules
US20050138251A1 (en) * 2003-12-18 2005-06-23 Fanning Blaise B. Arbitration of asynchronous and isochronous requests
CA2558286A1 (en) * 2004-03-05 2005-09-22 Nextnet Wireless, Inc. Method and apparatus for isochronous datagram delivery over contention-based data link
US7386640B2 (en) * 2004-12-28 2008-06-10 Intel Corporation Method, apparatus and system to generate an interrupt by monitoring an external interface
TWI444021B (zh) * 2007-09-17 2014-07-01 Htc Corp 解譯串列傳輸訊號之方法
US20090171163A1 (en) * 2007-12-31 2009-07-02 Mates John W Modular medical devices
US9516116B2 (en) * 2008-06-06 2016-12-06 Apple Inc. Managing notification service connections
US8995333B2 (en) 2009-07-29 2015-03-31 Qualcomm Incorporated Synchronous interface for multi-radio coexistence manager

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3245045A (en) * 1961-11-21 1966-04-05 Ibm Integrated data processing system
US3916387A (en) * 1971-04-23 1975-10-28 Ibm Directory searching method and means
US3932841A (en) * 1973-10-26 1976-01-13 Raytheon Company Bus controller for digital computer system
US4070704A (en) * 1976-05-17 1978-01-24 Honeywell Information Systems Inc. Automatic reconfiguration apparatus for input/output processor
US4092491A (en) * 1977-04-04 1978-05-30 Bell Telephone Laboratories, Incorporated Differential encoding and decoding scheme for digital transmission systems
US4409656A (en) * 1980-03-13 1983-10-11 Her Majesty The Queen, In Right Of Canada As Represented By The Minister Of National Defense Serial data bus communication system
US4689740A (en) * 1980-10-31 1987-08-25 U.S. Philips Corporation Two-wire bus-system comprising a clock wire and a data wire for interconnecting a number of stations
US4713834A (en) * 1982-09-30 1987-12-15 American Telephone And Telegraph Company, At&T Bell Laboratories Multiprocessor computing system featuring shared global control
US4660141A (en) * 1983-12-06 1987-04-21 Tri Sigma Corporation Self configuring computer network with automatic bus exchange of module identification numbers and processor assigned module numbers
JPS60134651A (ja) * 1983-12-23 1985-07-17 Fujitsu Ltd 差動信号ドライバ
US4870704A (en) * 1984-10-31 1989-09-26 Flexible Computer Corporation Multicomputer digital processing system
US4606052A (en) * 1984-12-21 1986-08-12 Advanced Micro Devices, Inc. Method for detection of line activity for Manchester-encoded signals
EP0258872B1 (de) * 1986-09-01 1994-05-04 Nec Corporation Serielles Datenübertragungssystem
JP2584647B2 (ja) * 1988-01-28 1997-02-26 株式会社リコー 通信網のノード装置
US4912633A (en) * 1988-10-24 1990-03-27 Ncr Corporation Hierarchical multiple bus computer architecture
US4914650A (en) * 1988-12-06 1990-04-03 American Telephone And Telegraph Company Bandwidth allocation and congestion control scheme for an integrated voice and data network
US5483518A (en) * 1992-06-17 1996-01-09 Texas Instruments Incorporated Addressable shadow port and protocol for serial bus networks
US5317597A (en) * 1989-08-16 1994-05-31 U.S. Philips Corporation Resistance coupled data transmission arrangement
EP0451276B1 (de) * 1989-10-25 1996-12-11 Mitsubishi Jukogyo Kabushiki Kaisha Vorrichtung zur seriellen signalübertragung und verfahren zum steuern der polaritätsfestlegung
US5001707A (en) * 1989-11-02 1991-03-19 Northern Telecom Limited Method of providing reserved bandwidth in a dual bus system
US5179670A (en) * 1989-12-01 1993-01-12 Mips Computer Systems, Inc. Slot determination mechanism using pulse counting
FR2657480B1 (fr) * 1990-01-22 1992-04-10 Alcatel Business Systems Procede de transmission d'octets mettant en óoeuvre une trame synchrone associant des cellules asynchrones a des canaux isochrones.
US5063574A (en) * 1990-03-06 1991-11-05 Moose Paul H Multi-frequency differentially encoded digital communication for high data rate transmission through unequalized channels
US5130983A (en) * 1990-03-27 1992-07-14 Heffner Iii Horace W Method of polling to determine service needs and the like
US5237690A (en) * 1990-07-06 1993-08-17 International Business Machines Corporation System for testing adaptor card upon power up and having disablement, enablement, and reconfiguration options
US5269011A (en) * 1990-09-24 1993-12-07 Emc Corporation Dynamically reconfigurable data storage system with storage system controllers selectively operable as channel adapters on storage device adapters
US5173939A (en) * 1990-09-28 1992-12-22 Digital Equipment Corporation Access control subsystem and method for distributed computer system using compound principals
US5282202A (en) * 1991-03-28 1994-01-25 Sprint International Communications Corp. Composite frame reconfiguration in integrated services networks
US5341131A (en) * 1991-03-29 1994-08-23 Hitachi, Ltd. Communications system and a system control method
JPH0821015B2 (ja) * 1992-01-20 1996-03-04 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュータならびにそのシステム再構成化装置および方法
US5341480A (en) * 1992-04-09 1994-08-23 Apple Computer, Inc. Method and apparatus for providing a two conductor serial bus
US5379384A (en) * 1992-06-05 1995-01-03 Intel Corporation Configuration data loopback in a bus bridge circuit
CA2104753C (en) * 1992-10-29 1999-02-16 Kotikalapudi Sriram Bandwidth allocation, transmission scheduling, and congestion avoidance in broadband atm networks
US5361261A (en) * 1992-11-02 1994-11-01 National Semiconductor Corporation Frame-based transmission of data
US5406559A (en) * 1992-11-02 1995-04-11 National Semiconductor Corporation Isochronous link protocol
US5544324A (en) * 1992-11-02 1996-08-06 National Semiconductor Corporation Network for transmitting isochronous-source data using a frame structure with variable number of time slots to compensate for timing variance between reference clock and data rate
US5805632A (en) * 1992-11-19 1998-09-08 Cirrus Logic, Inc. Bit rate doubler for serial data transmission or storage
US5394556A (en) * 1992-12-21 1995-02-28 Apple Computer, Inc. Method and apparatus for unique address assignment, node self-identification and topology mapping for a directed acyclic graph
US5418478A (en) * 1993-07-30 1995-05-23 Apple Computer, Inc. CMOS differential twisted-pair driver
US5528513A (en) * 1993-11-04 1996-06-18 Digital Equipment Corp. Scheduling and admission control policy for a continuous media server
US5440181A (en) * 1994-01-31 1995-08-08 Motorola, Inc. Configuration circuit for configuring a multi-board system automatically
US5463624A (en) * 1994-04-15 1995-10-31 Dsc Communications Corporation Bus arbitration method for telecommunications switching

Also Published As

Publication number Publication date
AU4019995A (en) 1996-05-23
EP0789879A4 (de) 2002-05-02
HK1002784A1 (en) 1998-09-18
WO1996013777A1 (en) 1996-05-09
EP0789879B1 (de) 2004-01-02
EP0789879A1 (de) 1997-08-20
US5742847A (en) 1998-04-21
DE69532383D1 (de) 2004-02-05

Similar Documents

Publication Publication Date Title
DE69532383T2 (de) Verfahren und vorrichtung zur dynamischen erzeugung und erhaltung von rahmenbasierten abfrageprogrammen für das abfragen von isochronen und asynchronen funktionen, die wartezeiten und bandbreiten für die isochronen funktionen garantieren
DE69535108T2 (de) Verfahren und apparat zum herstellen einer seriellen schnittstelle für isochrone und asynchrone peripheriegeräte
DE19581234B4 (de) Bussteuereinrichtung und Verfahren für eine hierarchische serielle Busanordnung unter Verwendung von Kommunikationspaketen
DE69334172T2 (de) Verfahren und Vorrichtung zur Arbitrierung auf einen acyclischen gerichteten Graph
DE60215833T2 (de) Mehrkanalschnittstelle für die kommunikation zwischen einrichtungen
DE69433377T2 (de) Leistungsverwaltungssystem fuer rechnervorrichtungszwischenverbindungsbus und verfahren hierfür
DE69637469T2 (de) Datenkommunikationsnetzwerk mit hocheffizientem abfrageverfahren
DE69332778T2 (de) Verfahren und geraet mit einzigadressenzuweisung, knotenselbstidentifizierung und topologieabbildung fuer einen gerichteten, acyclischen graph
DE69931473T3 (de) Eingang/ausgang- scanner für ein steuersystem mit peer- ermittlung
DE69731868T2 (de) Verfahren zur Selbstkonfiguration eines Kommunikationssystems
DE69836426T2 (de) Steuergerät für einen universellen seriellen Bus
DE69433047T2 (de) Verfahren und Anordnung zur Zuteilung von Systembetriebsmitteln, um die Dienstqualität zu sichern
EP1456722B1 (de) Datenübertragungsverfahren, serielles bussystem und anschalteinheit für einen passiven busteilnehmer
DE69533680T2 (de) Verfahren und Vorrichtung zur dynamischen Bestimmung und Zuteilung von Zugriffsguoten für ein gemeinsames Betriebsmittel
DE4121446C2 (de) Terminal-Server-Architektur
DE69727721T2 (de) Rechnervorrichtung und Bussteuerungsschema
DE10259327A1 (de) USB-Verbundgerät und Verfahren zum Realisieren desselben
DE102010002327B4 (de) Controller
DE69631612T2 (de) Elektronische Geräte und deren Betriebsartsteuerung
DE4426001A1 (de) Verfahren zur Überlastvermeidung bei einem Systemanlauf eines Mehrrechnersystems und Mehrrechnersystem dafür
DE60122671T2 (de) Anforderungsbedingte dynamische Schnittstellengenerierung
JPH05219090A (ja) ハイアラーキネットワーク管理システム及び該システム用コンセントレータ並びに当該ネットワーク要素
EP1370952B1 (de) Kommunikationsverfahren zur realisierung von ereigniskanälen in einem zeitgesteuerten kommunikationssystem
EP1075110B1 (de) Kombiniertes Master/Slave-Producer/Consumer-Kommunikations-verfahren für ein Netzwerk
DE69736882T2 (de) Vereinfachte Schnittstelle für ein Zeitmultiplex-Fernmeldesystem

Legal Events

Date Code Title Description
8364 No opposition during term of opposition