DE69535108T2 - Verfahren und apparat zum herstellen einer seriellen schnittstelle für isochrone und asynchrone peripheriegeräte - Google Patents

Verfahren und apparat zum herstellen einer seriellen schnittstelle für isochrone und asynchrone peripheriegeräte Download PDF

Info

Publication number
DE69535108T2
DE69535108T2 DE69535108T DE69535108T DE69535108T2 DE 69535108 T2 DE69535108 T2 DE 69535108T2 DE 69535108 T DE69535108 T DE 69535108T DE 69535108 T DE69535108 T DE 69535108T DE 69535108 T2 DE69535108 T2 DE 69535108T2
Authority
DE
Germany
Prior art keywords
bus
interfaces
transactions
controller
serial
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
DE69535108T
Other languages
English (en)
Other versions
DE69535108D1 (de
Inventor
Shaun Portland KNOLL
Charles Jeff Boulder Creek MORRISS
Shelagh Beaverton CALLAHAN
V. Ajay El Dorado Hills BHATT
Kottal Puthiya El Dorado Hills NIZAR
M. Richard Hillsboro HASLAM
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
Publication of DE69535108D1 publication Critical patent/DE69535108D1/de
Application granted granted Critical
Publication of DE69535108T2 publication Critical patent/DE69535108T2/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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • G06F13/423Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus with synchronous protocol
    • 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/40078Bus configuration

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, die die zugehörigen Steuereinrichtungen (Controller) und Schnittstellen umfassen.
  • 2. Hintergrundinformationen
  • Eine Anzahl komplexer Überlegungen macht es wünschenswert, über einen einzelnen, relativ schnellen, bidirektionalen, isochronen, preiswerten und dynamisch konfigurierbaren seriellen Bus zum gleichzeitigen Verbinden sowohl isochroner als auch asynchroner Peripherieeinrichtungen mit der Systemeinheit eines Desktop-Computersystems zu verfügen. Isochrone Peripherieeinrichtungen sind Peripherieeinrichtungen, die elementare Echtzeitdaten erzeugen, wie zum Beispiel Sprache, bewegte Videobilder und dergleichen. Diese komplexen Überlegungen umfassen:
    Eine Verbindung des Telefons mit dem Desktop-Computer
  • Es wird erwartet, dass die Zusammenführung von EDV und Kommunikation die Grundlage der nächsten Generation leistungsfähiger Anwendungen auf Desktop-Computern sein wird. Die Verlagerung von Maschinen-orientierten und Mensch-orientierten Datenarten von einem Standort oder einer Umgebung zu einem anderen hängt von einer ubiquitären und kostengünstigen Ver bindungsmöglichkeit ab. Bedauerlicherweise haben sich die Datenverarbeitungsindustrie und die Kommunikationsindustrie unabhängig voneinander entwickelt. Demzufolge muss eine große Vielfalt von Desktop-Computer- und Telefonverbindungen unterstützt werden.
  • Benutzerfreundlichkeit
  • Der Mangel an Flexibilität bei der Neukonfiguration von Desktop-Computern wurde als ihre Achillesferse für ihre weitere Entwicklung erkannt. Die Kombination anwenderfreundlicher grafischer Schnittstellen und die mit der neuen Generation von Systembusarchitekturen verbundenen Hardware- und Softwaremechanismen haben die Neukonfiguration von Desktop-Computern weniger problematisch und einfacher gemacht. Aus Sicht des Endanwenders fehlen den I/O-Schnittstellen des Desktop-Computers, wie zum Beispiel serielle/parallele Anschlüsse, Tastatur-/Maus-/Joystickschnittstellen, jedoch immer noch die Plug-and-Play[Einstecken/Anschließen und Einschalten]-Eigenschaften oder sie sind hinsichtlich der Art der im eingeschalteten Zustand verbindbaren/trennbaren I/O-Einrichtungen zu begrenzt.
  • Anschlusserweiterung
  • Das Hinzufügen externer Peripherieeinrichtungen zu Desktop-Computern ist weiterhin durch die Anschlussverfügbarkeit eingeschränkt. Das Fehlen eines bidirektionalen, preiswerten Peripheriebusses mit einer niedrigen bis mittleren Geschwindigkeit hat die Verbreitung von Peripherieeinrichtungen wie Telefon-/Fax-/Modemadaptern, Anrufbeantwortern, Scannern, Minicomputern (PDA), Tastaturen, Mäusen etc. verzögert. Bestehende Verbindungen sind für Produkte mit ein oder zwei Funktionen optimiert. Sobald eine neuen Funktion oder Fähigkeit zum Desktop-Computer hinzugefügt wird, ist zur Behandlung dieses Erfordernisses üblicherweise eine neue Schnittstelle zu definieren.
  • Mit anderen Worten, es wird erwartet, dass dieser gewünschte serielle Bus eine preiswerte, gleichzeitige Verbindungsmöglichkeit sowohl für die interaktiven Einrichtungen mit einer relativ niedrigen Geschwindigkeit von 10–100 kbps, wie zum Beispiel eine Tastatur, eine Maus, einen Kopierstift, Peripherieeinrichtungen für Spiele, Peripherieeinrichtungen für virtuelle Realität und Monitore, als auch die isochronen Einrichtungen mit einer mittleren Geschwindigkeit von 500–5000 kbps, wie zum Beispiel ISDN, PBX, POTS und andere Audioeinrichtungen, bereitstellt. Es wird erwartet, dass eine Vielzahl beider Arten von Einrichtungen gleichzeitig verbunden und aktiv ist und dennoch die letztere Art von Einrichtungen mit garantierten Latenzzeiten und Bandbreiten bereitgestellt wird. Des weiteren wird erwartet, dass die Einrichtungen sofort anschließbar und entfernbar sind. Dabei ist die serielle Schnittstelle in der Lage, sich selbst ohne eine Unterbrechung des Betriebs des Desktop-Computersystems dynamisch neu zu konfigurieren.
  • Es gibt verschiedene Technologien, die allgemein als serielle Busse angesehen werden, zum Verbinden von Peripherieeinrichtungen mit Systemeinheiten von Computersystemen. Jeder dieser Busse ist zur Bearbeitung einer bestimmten Auswahl von Verbindungen zwischen den Systemeinheiten und den Peripherieeinrichtungen konzipiert. Spezielle Beispiele dieser Busse umfassen:
    Apple® Desktop Bus (ADB): ADB ist ein proprietärer Bus von Apple Computer Inc. Er ist ein minimalistischer, serieller Bus, der ein einfaches Lese-/Schreibprotokoll für bis zu 16 Einrichtungen bereitstellt. Für die Steuereinrichtungs- und Schnittstellen-Hardware sind nur Grundfunktionen erforderlich. Deshalb wird ein niedriger Implementierungsaufwand erwartet. ADB unterstützt jedoch nur Datenraten bis zu 90 kbps. Dies ist zur Kommunikation mit asynchronen Desktop-Einrichtungen, wie zum Beispiel Tastaturen und Mäusen, gerade ausreichend. Er ist nicht zur gleichzeitigen Unterstützung der vorstehend behandelten isochronen Einrichtungen mit mittlerer Geschwindigkeit in der Lage.
  • Access.bus (A.b): A.b wurde von der Access.bus Industry Group entwickelt. Er basiert auf der I2C-Technologie von Philips Corporation und einem Softwaremodell von Digital Equipment Corporation (DEC). A.b wurde ebenfalls vor allem für asynchrone Einrichtungen, wie zum Beispiel Tastaturen und Mäuse, konzipiert. A.b wird jedoch allgemein als vielseitiger angesehen als ADB. Das Protokoll von A.b weist eindeutig definierte Spezifikationen für einen dynamischen Anschluss, eine Zuteilungsentscheidung, Datenpakete, eine Konfiguration und eine Softwareschnittstelle auf. Für die Steuereinrichtungs- und Schnittstellen-Hardware ist ein angemessener Funktionsumfang erforderlich. Deshalb ist der Implementierungsaufwand für die gewünschte Desktop-Anwendung nur bedingt kostengünstig. Während eine Adressierung für bis zu 127 Einrichtungen bereitgestellt wird, ist die praktisch realisierbare Belastung durch Kabellängen und unter Berücksichtigung der Energieverteilung begrenzt. Revision 2.2 spezifiziert den Bus für den 100 kbps-Betrieb. Die Technologie weist jedoch eine Reserve auf, um unter Verwendung des gleichen separaten Taktgebers und Datenleitungen auf bis zu 400 kbps anzusteigen. Bei 400 kbps wird A.b jedoch noch immer nicht den Anforderungen der isochronen Einrichtungen mit einer mittleren Geschwindigkeit gerecht.
  • P1394 Serial Bus Specification [P1394 Spezifikation eines seriellen Busses] des IEEE (auch bekannt als FireWire): FireWire ist ein serieller Hochleistungsbus. Er ist hauptsächlich für Festplatten- und Videoperipherieeinrichtungen konzipiert, die eine Bus-Bandbreite von mehr als 100 Mbps erfordern können. Sein Protokoll unterstützt sowohl isochrone als auch asynchrone Übertragungen über den gleichen Satz von 4 Signalleitungen, die als unterschiedliche Paare für Takt- und Datensignale unterteilt sind. Deshalb ist er in der Lage, gleichzeitig den Anforderungen sowohl von interaktiven Einrichtungen mit einer niedrigen Geschwindigkeit als auch isochronen Einrichtungen mit einer mittleren Geschwindigkeit gerecht zu werden. Von der Steuereinrichtungs- und Schnittstellenhardware sind jedoch aufwendige Funktionen erforderlich, was FireWire für die gewünschte Desktop-Anwendung in Bezug auf die Kosten nicht wettbewerbsfähig macht. Darüber hinaus wird erst jetzt die erste Generation von auf der Spezifikation von FireWire basierenden Einrichtungen auf dem Markt verfügbar.
  • Das Concentration Highway Interface (CHI): CHI wurde von der American Telephone & Telegraph Corporation (AT&T) für Terminals und digitale Vermittlungseinrichtungen entwickelt. Sie ist eine serielle, zeitmultiplexte Vollduplex-Schnittstelle für die Übertragung digitalisierter Sprache in einem Kommunikationssystem. Das Protokoll besteht aus einer Anzahl fester Zeitfenster, die Sprachdaten und Steuerinformationen übertragen können. Die aktuelle Spezifikation unterstützt Datenübertragungsraten von bis zu 4,096 Mbps. Der CHI-Bus weist 4 Signalleitungen auf: Takt, Rahmung, Empfangsdaten und Sendedaten. Sowohl die Rahmungs- als auch die Taktsignale werden zentral erzeugt (z.B. PBX-Vermittlungseinrichtung). Deshalb ist sie ebenfalls in der Lage, gleichzeitig den Anforderungen sowohl von interaktiven Einrichtungen mit einer niedrigen Geschwindigkeit als auch isochronen Einrichtungen mit einer mittleren Geschwindigkeit gerecht zu werden. Ähnlich wie bei FireWire sind von der Steuereinrichtungs- und Schnittstellenhardware ebenfalls aufwendige Funktionen erforderlich. Als Ergebnis ist CHI für die gewünschte Desktop-Anwendung ebenfalls in Bezug auf die Kosten nicht wettbewerbsfähig.
  • Wie nachstehend ausführlicher offenbart wird, stellt die vorliegende Erfindung die gewünschte Anordnung eines seriellen Busses bereit, einschließlich ihrer zugeordneten Steuereinrichtung, den Verbindungssteckern und den Schnittstellen, die die Einschränkungen der seriellen Busse des Standes der Technik in einer neuen Art und Weise vorteilhaft überwindet.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Die vorliegende Erfindung umfasst eine Bus-Steuereinrichtung, eine Anzahl von 1:n Bussignalverteilern und eine Anzahl von Busschnittstellen, die hierarchisch miteinander verbunden eine Anordnung eines seriellen Busses zur seriellen Kopplung isochroner und asynchroner Peripherieeinrichtungen mit der Systemeinheit eines Computersystems bilden. Gemeinsam führen die Elemente des seriellen Busses, d.h. die Bus-Steuereinrichtung etc., ein Master/Slave-Modell einer Ablaufsteuerung für Datenkommunikationstransaktionen zwischen den Bus-Agenten, d.h. der Systemeinheit und den Funktionen der Peripherieeinrichtungen, aus. Ferner führen in bestimmten Ausführungsbeispielen die Elemente des seriellen Busses Verbindungsmanagementtransaktionen miteinander durch, wobei ebenfalls das Master/Slave-Modell der Ablaufsteuerung eingesetzt wird. Sie führen zur Abfrage der Funktionen der Slave[Neben]-Peripherieeinrichtungen und der seriellen Slave-Buselemente einen rahmenbasierten Abfragezeitplan aus. Sie setzen zur Ausführung der verschiedenen Transaktionen mindestens zwei Adressräume ein. Sie unterstützen zur Ausführung der Transaktionen die Verwendung von Kommunikationspaketen und/oder stellen Daten und Steuerzustände elektrisch dar.
  • Üblicherweise wird die Bus-Steuereinrichtung in der Systemeinheit angeordnet und die Busschnittstellen werden in den Verbindungsperipherieeinrichtungen angeordnet, eine Bus schnittstelle pro Verbindungsperipherieeinrichtung. Unter Verwendung eines oder mehrerer in der Systemeinheit angeordneten Bussignalverteiler, einzelner Verbindungsstecker und/oder der Verbindungsperipherieeinrichtungen sind die Peripherieeinrichtungen über ihre Busschnittstellen mit der Systemeinheit, über die Bus-Steuereinrichtung, verbunden. Eine Busschnittstelle ist immer ein Endpunkt. Nur einem Bussignalverteiler können ein oder mehrere Bussignalverteiler und/oder Busschnittstelle(n) vorgeschaltet sein. Gemeinsam bilden die Systemeinheit, die Elemente des seriellen Busses, [und] die Peripherieeinrichtungen eine Hierarchie von verbundenen Einrichtungen.
  • Vorzugsweise sind unter Verwendung preiswerter Zweisignaldrahtkabel die Bus-Steuereinrichtung, die Bussignalverteiler und die Busschnittstellen physikalisch miteinander verbunden. Vorzugsweise unterstützen sie gemeinsam eine Datenübertragungsrate von bis zu mindestens 5 Mbps. Des Weiteren werden elektrische Signale zwischen den verschiedenen verbundenen Einrichtungen über die Zweisignaldrähte vorzugsweise in einer unterschiedlichen Art und Weise verbreitet und sowohl die Daten als auch eine Anzahl der Steuerzustände werden durch verschiedene Spannungszustände und/oder -Dauern elektrisch dargestellt.
  • Eine Verbindungsperipherieeinrichtung kann eine isochrone oder eine asynchrone Peripherieeinrichtung sein. Üblicherweise arbeiten die isochronen Peripherieeinrichtungen mit Datenraten im Bereich von 500–5000 kbps, wohingegen die asynchronen Peripherieeinrichtungen mit Datenraten im Bereich von 10–100 kbps arbeiten. Des Weiteren kann eine Verbindungsperipherieeinrichtung eine Multifunktionsperipherieeinrichtung sein, d.h. mehrere Funktionen werden auf einen einzelnen Busverbindungsbus abgebildet, der von einer einzelnen Busschnittstelle bedient wird. In ähnlicher Weise kann die Sy stemeinheit mehrere „Clients" [dienstanfordernde Einrichtungen] unterstützen.
  • Die Bus-Steuereinrichtung, die Bussignalverteiler und die Busschnittstellen sind mit einer Schaltungstechnik und einer komplementären Logik ausgestattet, die das Master/Slave-Modell der Ablaufsteuerung zur seriellen Kopplung der verbundenen Peripherieeinrichtungen mit der Systemeinheit zur Unterstützung von Datenkommunikationstransaktionen zwischen den Bus-Agenten bei ihrer jeweiligen Betriebsgeschwindigkeit ausführt. Während des Betriebs fragt die Bus-Steuereinrichtung die Funktionen der verbundenen Peripherieeinrichtungen über ihre Busschnittstellen für die Datenkommunikationstransaktionen gemäß eines Abfragezeitplans, der die Latenzzeiten und Bandbreiten für die isochronen Funktionen der verbundenen Peripherieeinrichtungen gewährleistet, systematisch ab. Das Abfragen der isochronen Funktionen der verbundenen Peripherieeinrichtungen für Datenkommunikationstransaktionen ist gegenüber allen anderen Abfragen priorisiert und so häufig, wie es zur Einhaltung der Gewährleistungen erforderlich ist. Das Abfragen der asynchronen Funktionen der verbundenen Peripherieeinrichtungen über ihre Busschnittstellen für Datenkommunikationstransaktionen wird nahe der Abfrage der isochronen Funktionen der verbundenen Peripherieeinrichtungen für Datenkommunikationstransaktionen geplant. Vorzugsweise wird der Abfragezeitplan dynamisch an die tatsächlich vorhandenen verbundenen Einrichtungen angepasst.
  • Ferner führen in einigen Ausführungsbeispielen die Schaltungstechnik und die komplementäre Logik der Elemente des seriellen Busses Verbindungsmanagementtransaktionen untereinander durch, wobei ebenfalls das Master/Slave-Model zur Ablaufsteuerung eingesetzt wird. Für diese Ausführungsbeispiele fragt ferner während des Betriebs die Bus-Steuereinrichtung die Bussignalverteiler und die Busschnittstellen nach derartigen, bei der jeweiligen Betriebsgeschwindigkeit der Elemente des seriellen Busses durchgeführten Transaktionen ab. Das Abfragen der Bussignalverteiler und der Busschnittstellen für Verbindungsmanagementtransaktionen wird ebenfalls nahe der Abfrage der isochronen Funktionen der verbundenen Peripherieeinrichtungen für Datenkommunikationstransaktionen geplant.
  • In einigen Ausführungsbeispielen führen ferner diese Schaltung und die komplementäre Logik der Elemente des seriellen Busses einen rahmenbasierten Abfragezeitplan zur Abfrage der Funktionen der Slave-Peripherieeinrichtungen und der Slave-Elemente des seriellen Busses aus. Für diese Ausführungsbeispiele führt die Bus-Steuereinrichtung die Abfrage gemäß eines auch als Überrahmen [Superframe] bezeichneten Zeitplans durch, der eine Anzahl von Teilzeitplänen aufweist, die auch als flexible Rahmen [Soft frames] bezeichnet werden. Eine isochrone Funktion wird, so oft wie es zur Gewährleistung ihrer Latenzzeit und Bandbreite erforderlich ist, in einem oder mehreren flexiblen Rahmen des Überrahmens abgefragt. Eine asynchrone Funktion wird für eine Datenkommunikationstransaktion jedoch nur einmal in einem flexiblen Rahmen des Überrahmens abgefragt. In ähnlicher Weise wird für eine Verbindungsmanagementtransaktion ein Slave-Element des seriellen Busses auch nur einmal in einem flexibler Rahmen des Überrahmens abgefragt.
  • In einigen Ausführungsbeispielen implementieren ferner diese Schaltung und die komplementäre Logik der Elemente des seriellen Busses mindestens zwei Adressräume zur Durchführung der verschiedenen Transaktionen, einen geographischen Adressraum und einen logischen Adressraum. Für diese Ausführungsbeispiele werden unter Verwendung geographischer Adressen des geographischen Adressraumes die Elemente des seriellen Busses adressiert und die Funktionen der Verbindungsperipherieeinrichtungen werden unter Verwendung logischer Adressen des logischen Adressraums adressiert. Das Abfragen der isochronen und asynchronen Funktionen der verbundenen Peripherieeinrichtungen für Datenkommunikationstransaktionen erfolgt unter Verwendung logischer Adressen, wohingegen das Abfragen der Elemente des seriellen Busses für Verbindungsmanagementtransaktionen unter Verwendung geographischer Adressen erfolgt. Vorzugsweise kann die Identität eines Bussignalverteilers und seines vorgeschalteten Anschlusses (Ports) aus der geographischen Adresse des Bussignalverteilers abgeleitet werden. Des Weiteren kann der Verbindungsbussignalverteiler einer Busschnittstelle einschließlich des Verbindungsanschlusses aus der geographischen Adresse der Busschnittstelle abgeleitet werden.
  • In einigen Ausführungsbeispielen unterstützen ferner diese Schaltung und die komplementäre Logik der Elemente des seriellen Busses zur Durchführung der verschiedenen Transaktionen den Einsatz von Kommunikationspaketen. Für diese Ausführungsbeispiele werden zur Unterscheidung zwischen Steuerpaketen und Datenpaketen Paketkennungen eingesetzt und Adressen werden soweit erforderlich zur Kennzeichnung der Transaktionsteilnehmer eingesetzt. Vorzugsweise kann der Transaktionsablauf von einer Paketkennung abgeleitet werden. Vorzugsweise können entweder geographische oder logische Adressen festgelegt werden, um sich an diejenigen Ausführungsbeispielen anzupassen, die Verbindungsmanagementtransaktionen unterstützen und beide Arten von Adressen ausführen.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Die vorliegende Erfindung wird anhand von beispielhaften Ausführungsbeispielen beschrieben, die jedoch keine Einschränkungen darstellen und in den beigefügten Zeichnungen veranschaulicht sind, in denen gleiche Bezugszeichen ähnliche Elemente bezeichnen und in denen:
  • 1 ein die Lehre des seriellen Busses der vorliegenden Erfindung einschließendes beispielhaftes Computersystem veranschaulicht;
  • 2 veranschaulicht ein Ausführungsbeispiel der Anordnung des seriellen Busses von 1 in weiteren Einzelheiten;
  • 3 veranschaulicht ein Master/Slave-Modell der von der vorliegenden Erfindung eingesetzten Ablaufsteuerung zur seriellen Kopplung der verbundenen Peripherieeinrichtungen mit der Systemeinheit und zur Steuerung von Transaktionsabläufen;
  • 4 veranschaulicht einen rahmenbasierten Abfragezeitplan der vorliegenden Erfindung, der von einigen Ausführungsbeispielen zur Abfrage der Slave-„Einrichtungen" ausgeführt wird;
  • 5 veranschaulicht eine geographische und logische Adressierung der vorliegenden Erfindung, die von einigen Ausführungsbeispielen zur Adressierung der Elemente des seriellen Busses und Funktionen von Busagenten ausgeführt wird;
  • 6 veranschaulicht die wesentlichen Elemente von Kommunikationspaketen der vorliegenden Erfindung, die von einigen Ausführungsbeispielen zur Durchführung von das Master/Slave-Modell der Ablaufsteuerung einsetzenden Transaktionen ausgeführt werden;
  • 7 veranschaulicht ein Ausführungsbeispiel der Kabel, die die Elemente des seriellen Busses gemäß der vorliegenden Erfindung physikalisch verbinden;
  • 89 veranschaulichen ein Ausführungsbeispiel der Bus-Steuereinrichtung der vorliegenden Erfindung einschließlich ihrer zugeordneten Software;
  • 1011 veranschaulichen ein Ausführungsbeispiel des 1:n Bussignalverteilers der vorliegenden Erfindung einschließlich seiner Anschlussschaltungstechnik;
  • 1213 veranschaulichen ein Ausführungsbeispiel der Busschnittstelle der vorliegenden Erfindung einschließlich ihrer Verbinderschaltung.
  • DETAILLIERTE BESCHREIBUNG
  • In der folgenden Beschreibung werden zu Erklärungszwecken spezielle Zahlen, Materialien und Konfigurationen dargelegt, um ein vollständiges Verständnis der vorliegenden Erfindung bereitzustellen. Es wird jedoch für einen Fachmann ersichtlich sein, dass die vorliegende Erfindung ohne die speziellen Details umgesetzt werden kann. In anderen Fällen werden bekannte Systeme schematisch oder in Form einer Blockdarstellung gezeigt, um die vorliegende Erfindung nicht zu verdecken.
  • Es wird jetzt auf 1 Bezug genommen, in der eine Blockdarstellung gezeigt ist, die ein die Lehre des seriellen Busses der vorliegenden Erfindung einschließendes beispielhaftes Computersystem veranschaulicht. Ein beispielhaftes Computersystem 10 weist eine, eine Steuereinrichtung 14 eines seriellen Busses gemäß der vorliegenden Erfindung aufweisende Systemeinheit 12 auf, je n+1 Anschlüsse 24 aufweisende 1:n Bussignalverteiler 18 gemäß der vorliegenden Erfindung und Busschnittstellen 22 gemäß der vorliegenden Erfindung aufweisende Peripherieeinrichtungen 16. Die Peripherieeinrichtungen 16 sind über 1:n Bussignalverteiler 18 und vorzugsweise die Kabel 20 mit der Bus-Steuereinrichtung 14 der Systemeinheit 12 gekoppelt. Gemeinsam bilden die Bus-Steuereinrichtung 14, die Bussignalverteiler 18, die Busschnittstellen 22 und die Kabel 20 eine Anordnung 26 eines seriellen Busses (serielle Busan ordnung), die die Busagenten, d.h. Systemeinheit 12 und Peripherieeinrichtungen 16, miteinander verbindet.
  • Die Kabel 20 sind vorzugsweise preiswerte Zweisignaldrahtkabel 48 und 50 (wie in 7 veranschaulicht). Die Kabel 20 sind jedoch zur Unterstützung von Datentransferraten von bis zu 5 Mbps in der Lage. Des Weiteren werden, wenn derartige preiswerte Kabel 20 eingesetzt werden, elektrische Signale zwischen den verbundenen Einrichtungen 14, 18 und 22 vorzugsweise über die beiden Signalleitungen 48 und 50 als Differenz verbreitet. Zum Beispiel stellt eine negative Spannungsdifferenz ein 1-Bit dar und eine positive Spannungsdifferenz stellt ein 0-Bit dar. Für einige Ausführungsbeispiele werden ferner Daten- und Steuerzustände aus den Spannungszuständen und/oder Dauern der elektrischen Signale abgeleitet. Eine besondere Ausführung von elektrisch dargestellten Daten- und Steuerzuständen mit Spannungszuständen und/oder Signaldauern ist in der gleichzeitig eingereichten, parallel anhängigen Patentanmeldung, Aktenzeichen 08/332,337, 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" beschrieben.
  • Mit Ausnahme von Bus-Steuereinrichtung 14 ist Systemeinheit 12 zur Darstellung einer weitgefassten Kategorie von Systemeinheiten von Computersystemen bestimmt, deren Strukturen und Funktionen bekannt sind und im übrigen nicht weiter beschrieben werden. Mit Ausnahme der Bus-Schnittstellen 22 sind in ähnlicher Weise die Peripherieeinrichtungen 16 zur Darstellung einer weitgefassten Kategorie von Desktop-Peripherieeinrichtungen bestimmt, wie zum Beispiel Tastaturen, Mäuse, Monitore, Lautsprecher, Mikrophone, Telefone, deren Strukturen und Funktionen ebenfalls bekannt sind und im übrigen auch nicht weiter beschrieben werden. Die Bus-Steuereinrichtung 14, die Bussignalverteiler 18 und die Busschnittstellen 22 werden nachstehend mit zusätzlichen Bezügen auf die verbleibenden Figuren ausführlicher beschrieben.
  • 2 veranschaulicht ein Ausführungsbeispiel einer Anordnung eines seriellen Busses von 1 in weiteren Einzelheiten. Für dieses Ausführungsbeispiel umfasst die Anordnung eines seriellen Busses 26' eine serielle Bus-Steuereinrichtung 14, einen einzelnen 1:n Bussignalverteiler 18a, einen integrierten 1:n Bussignalverteiler 18b und die Busschnittstellen 22a22f. Die Anordnung eines seriellen Busses 26' verbindet ein Busagenten-Telefon 16a, eine Tastatur-, Stift- und Mausfunktionen umfassende Verbundtastatur 16b, die Monitorschaltung 16c von Monitor 28, die Lautsprecher 16d16e und das Mikrofon 16f mit Systemeinheit 12. Gemeinsam bilden die Systemeinheit 12, die Elemente des seriellen Busses 14, 18a18b und 22a22f, und die verbundenen Peripherieeinrichtungen 16a16f eine Hierarchie verbundener Einrichtungen.
  • Gemäß der vorliegenden Erfindung ist eine Busschnittstelle 22a22f immer ein Endpunkt. Nur einem Bussignalverteiler, z.B. 18a, kann bzw. können ein oder mehrere Bussignalverteiler, z.B. 18b, und/oder eine oder mehrere Busschnittstellen, z.B. 16a, vorgeschaltet sein. Für den Zweck dieser Beschreibung bedeutet vorgeschaltet „in Richtung der Bus-Steuereinrichtung". Bis auf den entarteten Fall, in dem die Anordnung eines seriellen Busses 26 nur eine Verbindungsperipherieeinrichtung 16 aufweist, ist auf diese Art und Weise üblicherweise ein Bussignalverteiler, wie zum Beispiel 18a, zur Bus-Steuereinrichtung 14 vorgeschaltet.
  • Des Weiteren kann gemäß der vorliegenden Erfindung eine Verbindungsperipherieeinrichtung eine isochrone Peripherieeinrichtung, wie zum Beispiel das Telefon 16a, die Lautsprecher 16d16e und das Mikrofon 16f, oder eine asynchrone Peripherieeinrichtungen sein, wie zum Beispiel Verbundtastatur 16b und Monitor 16c. Die isochronen Peripherieeinrichtung können mit einer Datentransferrate in Höhe von 5 Mbps arbeiten, während die asynchronen Peripherieeinrichtungen mit einer Datentransferrate in Höhe von 100 kbps arbeiten können. Des Weiteren kann eine Verbindungsperipherieeinrichtung 16a16f eine Multifunktionsperipherieeinrichtung sein, d.h. eine Multifunktions-Abbildung auf einen von einer Busschnittstelle bedienten einzelnen Busverbindungspunkt, z.B. 22b. In ähnlicher Weise kann, wenn auch nicht gezeigt, die Systemeinheit 12 mehrere Clients unterstützen.
  • 3 veranschaulicht ein Master/Slave-Modell der von der vorliegenden Erfindung eingesetzten Ablaufsteuerung zur seriellen Kopplung der verbundenen Peripherieeinrichtungen mit der Systemeinheit und zur Steuerung von Transaktionsabläufen. Wie veranschaulicht, arbeiten die Bus-Steuereinrichtung 14, die Signalbusverteiler 18 und die Busschnittstellen 22 zur Ausführung des Master/Slave-Modells der Ablaufsteuerung zusammen. Die Bus-Steuereinrichtung 14 fungiert als Master und sowohl die Signalbusverteiler 18 als auch die Busschnittstellen 22 verhalten sich zur Bus-Steuereinrichtung 14 als Slave-Einrichtungen.
  • Gemäß dem Master/Slave-Modell stellt die Bus-Steuereinrichtung 14 eine Ablaufsteuerung für alle Datenkommunikationstransaktionen zwischen den Busagenten bei ihren jeweiligen Betriebsgeschwindigkeiten bereit. Die Busschnittstellen 22 beteiligen sich im Auftrag der Funktionen der Peripherieeinrichtungen 16 an Datenkommunikationstransaktionen. Die Busschnittstellen 22 empfangen oder senden Daten jedoch nur, wenn sie von der Bus-Steuereinrichtung 14 dazu autorisiert oder angewiesen (auch bekannt als „abgefragt") wurden. Die Bussignalverteiler 18 dienen grundsätzlich als Signalverteiler. Sie sind lediglich durchlässige Kanäle, wenn von der Bus-Steuereinrichtung 14 und den Busschnittstellen 22 Datenkommunikationstransaktionen für die Busagenten durchgeführt werden. Nie beteiligen sich die Bussignalverteiler 18 daher aktiv an Datenkommunikationstransaktionen, empfangen Daten oder reagieren mit Daten.
  • Die Bus-Steuereinrichtung 14 fragt über ihre Busschnittstellen 22 für Datenkommunikationstransaktionen gemäß eines die Latenzzeiten und Bandbreiten für die isochronen Funktionen der verbundenen Peripherieeinrichtungen 16 gewährleistenden Abfragezeitplans die Funktionen der verbundenen Peripherieeinrichtungen 16 systematisch ab. Das Abfragen der isochronen Funktionen der verbundenen Peripherieeinrichtungen 16 für Datenkommunikationstransaktionen ist gegenüber allen anderen Abfragen priorisiert und so häufig, wie es zur Einhaltung der Gewährleistung erforderlich ist. Das Abfragen der asynchronen Funktionen der verbundenen Peripherieeinrichtungen 16 über ihre Busschnittstellen 22 für Datenkommunikationstransaktionen wird um das Abfragen der isochronen Funktionen der verbundenen Peripherieeinrichtungen 16 für Datenkommunikationstransaktionen herum geplant. Vorzugsweise wird der Abfragezeitplan dynamisch an die tatsächlich vorhandenen, verbundenen Peripherieeinrichtungen 16 angepasst.
  • In einigen Ausführungsbeispielen beteiligen sich ferner die Bus-Steuereinrichtung 14, die Bussignalverteiler 18 und die Busschnittstellen 22 an Verbindungsmanagementtransaktionen, die das gleiche Master/Slave-Modell zur Ablaufsteuerung einsetzen. In ähnlicher Weise stellt die Bus-Steuereinrichtung 14 eine Ablaufsteuerung zur Durchführung der Verbindungsmanagementtransaktionen bei den jeweiligen Betriebsgeschwindigkeiten der Elemente des seriellen Busses bereit. Die Bussignalverteiler 18 und die Busschnittstellen 22 reagieren auf die Verbindungsmanagementtransaktionen, indem sie soweit erforderlich mit Steuer-/Zustandsinformationen antworten. Die Bus-Steuereinrichtung 14 fragt während des Betriebs die Bussignalverteiler 18 und die Busschnittstellen 22 nach derartigen Transaktionen ab. Das Abfragen der Bussignalverteiler 18 und der Busschnittstellen 22 nach Verbindungsmanagementtransaktionen wird ebenfalls um das Abfragen der isochronen Funktionen der verbundenen Peripherieeinrichtungen 16 für Datenkommunikationstransaktionen herum geplant. Vorzugsweise wird der erweiterte Abfragezeitplan ebenfalls dynamisch an die tatsächlich vorhandenen Elemente des seriellen Busses angepasst.
  • 4 veranschaulicht eine rahmenbasierte Abfragezeitplanung der vorliegenden Erfindung, die von einigen Ausführungsbeispielen zur Durchführung der verschiedenen, das Master/Slave-Modell der Ablaufsteuerung einsetzende Transaktionen ausgeführt wird. Wie veranschaulicht, weist der auch als Überrahmen bezeichnete Abfragezeitplan 30 eine Anzahl von auch als flexible Rahmen bezeichnete Teilzeitplänen 32 auf. Eine isochrone Funktion 34a oder 34b einer verbundenen Peripherieeinrichtung 16 wird in einem oder mehreren flexiblen Rahmen 32 des Überrahmens 30 so häufig, wie zur Gewährleistung ihrer Latenzzeit und Bandbreite erforderlich ist, abgefragt. Eine asynchrone Funktion 36a oder 36b wird für eine Datenkommunikationstransaktion jedoch nur einmal in einem flexiblen Rahmen 32 des Überrahmens 30 abgefragt. In ähnlicher Weise wird eine verbundene Einrichtung 38a oder 38b für eine Verbindungsmanagementtransaktion auch nur einmal in einem flexiblen Rahmen 32 des Überrahmens 30 abgefragt.
  • Vorzugsweise werden alle isochronen Funktionen 34a34b innerhalb eines ersten prozentualen Teilbereichs (P1) eines flexiblen Rahmens 32 abgefragt, um sicherzustellen, dass die Latenzzeiten und Bandbreiten gewährleistet sind. Isochrone Funktionen, die nicht innerhalb von P1 aufgenommen werden können, werden vorzugsweise wegen einer unzureichenden Kapazität zurückgewiesen. Das obere Begrenzungszeichen (M1) von P1 wird auch als das isochrone Wasserzeichen bezeichnet. In ähnlicher Weise werden zur Sicherstellung der Betriebssicherheit vor zugsweise alle Abfragen innerhalb eines zweiten prozentualen Teilbereichs (P2) eines flexiblen Rahmens 32 ausgeführt. Wenn es für eine Aufnahme aller Abfragen einer asynchronen Funktion und eines Elements eines seriellen Busses erforderlich ist, werden mehrere flexible Rahmen 32 eingesetzt. Das obere Begrenzungszeichen (M2) von P2 wird auch als das Rahmen-Wasserzeichen (frame watermark) bezeichnet.
  • Verschiedene Art und Weisen, in denen ein derartiger rahmenbasierter Abfragezeitplan dynamisch erzeugt und aktualisiert werden kann, sind in der gleichzeitig eingereichten, parallel anhängigen Patentanmeldung, Aktenzeichen 08/331,727, mit dem Titel „Method And Apparatus For Dynamically Generating And Maintaining Frame Based Polling Schedules That Guaranty Latencies And Bandwidths To Isochronous Functions" beschrieben.
  • 5 veranschaulicht eine geographische und logische Adressierung gemäß der vorliegenden Erfindung, die von einigen Ausführungsbeispielen zur Adressierung der Elemente des seriellen Busses und der Funktionen von Busagenten ausgeführt wird. Zur Erleichterung der Erklärung wird die gleiche beispielhafte Anordnung eines seriellen Busses von 2 verwendet. Die Bus-Steuereinrichtung 14 wird jedoch als Host gekennzeichnet, auch als Hub0 bezeichnet. Die Bussignalverteiler 18a18b werden als Hub1 und Hub2 gekennzeichnet. Die Peripherieeinrichtungen 16a16f, einschließlich ihrer entsprechenden Busschnittstellen 22a22f, werden gemeinsam als Knoten0 bis Knoten6 gekennzeichnet. Die Funktionen der Peripherieeinrichtungen 16a16f werden als FN0, FN1, etc. gekennzeichnet.
  • Wie veranschaulicht, werden den Elementen des seriellen Busses und den Funktionen der Busagenten sowohl geographische als auch logische Adressen (GEO ADDR & LOG ADDR) eines geographischen und eines logischen Adressraumes zugewiesen. Konkret werden den Hubs 14, 18a18b und den Knoten 22a22f GEO ADDRen zugewiesen, wohingegen den Funktionen der Knoten 16a16f LOG ADDRen zugewiesen werden. Vorzugsweise können sowohl die Hub-Identität als auch der vorgeschaltete Anschluss des Hubs aus der GEO ADDR eines Hubs 14 und 18a18b abgeleitet werden und sowohl der Verbindungs-Hub als auch der Verbindungsanschluss des Verbindungs-Hub können aus der GEO ADDR eines Knotens 22a22f abgeleitet werden. In einem Ausführungsbeispiel werden die LOG ADDRen den Funktionen der Knoten 16a16f in einer chronologischer Art und Weise zugewiesen.
  • Zum Beispiel werden in der veranschaulichten Beispielanwendung Hub1 und Hub2 18a und 18b die GEO ADDRen „Hub1:Port0" beziehungsweise „Hub2:Port0" zugewiesen, die die Hubs 18a und 18b als „Hub1" beziehungsweise „Hub2" kennzeichnen. Der vorgeschaltete Anschluss ist jeweils „Anschluss0". Knoten1 und Knoten4, 22b und 22e, werden die GEO ADDRen „Hub1:Anschluss2" beziehungsweise „Hub2:Anschluss3" zugewiesen, die die Verbindungs-Hubs 18a und 18b als „Hub1" beziehungsweise „Hub2" und die Verbindungsanschlüsse der Verbindungs-Hubs 18a und 18b als „Anschluss2" beziehungsweise „Anschluss3" kennzeichnen. Den Funktionen von Knoten1 16b werden die LOG ADDRen „LA1", „LA2" und „LA3" zugewiesen, wohingegen der Funktion von Knoten4 16e die LOG ADDR „LA6" zugewiesen wird.
  • Vorzugsweise werden die GEO ADDRen und die LOG ADDRen beim Einschalten oder Reset [Zurücksetzen] dynamisch zugewiesen und als Reaktion auf das Trennen von verbundenen Einrichtungen oder Verbinden von zusätzlichen Einrichtungen im eingeschalteten Zustand von der Bus-Steuereinrichtung 14 unter Mitwirkung der Bussignalverteiler 18 und der Busschnittstellen 22 aktualisiert. Eine besondere Ausführung eines derartigen dynamischen Verbindungsmanagement ist in der gleichzeitig eingereichten, parallel anhängigen Patentanmeldung, Aktenzeichen 08/332,375, mit dem Titel „Method And Apparatus For Dynami cally Determining And Managing Connection Topology Of An Hierarchical Serial Bus Assembly" beschrieben.
  • Für diese Ausführungsbeispiele werden die GEO ADDRen zur Durchführung von Verbindungsmanagementtransaktionen zwischen den Elementen des seriellen Busses verwendet, wohingegen die LOG ADDRen zur Durchführung von Datenkommunikationstransaktionen zwischen den Funktionen der Busagenten verwendet werden. Die Aufteilung der beiden Arten von Transaktionen in beide getrennte Adressräume unterstützt ein dynamisches Verbindungsmanagement der Elemente des seriellen Busses ohne die Dienste für die Funktionen der Busagenten unterbrechen zu müssen.
  • 6 veranschaulicht die wesentlichen Elemente der Kommunikationspakete gemäß der vorliegenden Erfindung, die von einigen Ausführungsbeispielen zur Durchführung der verschiedenen, das Master/Slave-Modell der Ablaufsteuerung einsetzenden Transaktionen ausgeführt werden. Für diese Ausführungsbeispiele werden Paketkennungen 44 zur Unterscheidung der Steuerpakete von Datenpaketen eingesetzt. Steuerpakete sind von der Bus-Steuereinrichtung 14 zur Autorisierung und Anweisung der Bussignalverteiler 18 und der Busschnittstellen 22 zur Beteiligung an Transaktionen eingesetzte Pakete. Steuerpakete können auch Pakete umfassen, die von den Bussignalverteilern 18 und den Busschnittstellen 22 zur Bestätigung von Autorisierungen und Anweisungen von der Bus-Steuereinrichtung 14 eingesetzt werden. Des Weiteren werden, soweit erforderlich, die Adressen 46 zur Kennzeichnung der Transaktionsteilnehmer eingesetzt. Es wird verstanden werden, dass gemäß dem Master/Slave-Modell der Ablaufsteuerung oft auf die Bus-Steuereinrichtung 14 als ein Transaktionsteilnehmer geschlussfolgert werden kann und daher ihre Adresse weggelassen werden kann.
  • Vorzugsweise können Transaktionsabläufe, wie zum Beispiel von der Bus-Steuereinrichtung 14 zu einer Funktion, von einer ersten Funktion zu einer zweiten Funktion, aus den Paketkennungen 44 abgeleitet werden. Vorzugsweise können entweder geographische oder logische Adressen 46, d.h. „HubX:AnschlussY" oder „LAz", festgelegt werden, um sich denjenigen Ausführungsbeispiele anzupassen, die Verbindungsmanagementtransaktionen unterstützen und beide Arten von Adressen ausführen.
  • Eine spezielle Ausführung des Einsatzes derartiger Kommunikationspakete zur Durchführung der verschiedenen Transaktionen ist in der gleichzeitig eingereichten, parallel anhängigen Patentanmeldung, Aktenzeichen 08/332,573, mit dem Titel „Method And Apparatus For Exchanging Data, Status And Commands Over An Hierarchical Serial Bus Assembly Using Communication Packets" beschrieben.
  • 89 veranschaulichen ein Ausführungsbeispiel der Bus-Steuereinrichtung der vorliegenden Erfindung. In diesem Ausführungsbeispiel umfasst die Bus-Steuereinrichtung 14 einen Steuerautomaten und Schaltung 52, ein Steuer-/Zustandsregister 54, Datenpuffer 56 und die Softwaredienste 58 der Bus-Steuereinrichtung. Die Steuer-/Zustandsregister 54 werden zum Speichern der verschiedenen Steuer- und Zustandsdaten verwendet. Zum Beispiel die vorhandenen Elemente des seriellen Busses, ihre Verbindungstopologie, die Funktionen der verschiedenen verbundenen Peripherieeinrichtungen, die den Elementen des seriellen Busses zugewiesenen geographischen Adressen, die den Funktionen der verbundenen Peripherieeinrichtungen zugewiesenen logischen Adressen. Die Datenpuffer 56 werden zum Zwischenspeichern der Daten der Datenkommunikationstransaktionen zwischen den Busagenten verwendet. Der Steuerautomat und Schaltung 52 steuert gemäß der Programmierung der Softwaredienste 58 der Bus-Steuereinrichtung die Hardware zur Steue rung der Datenkommunikationstransaktionen und zum Einsatz des vorstehend beschriebenen Master/Slave-Modells der Ablaufsteuerung. Für einige Ausführungsbeispiele steuert der Steuerautomat und die Schaltung 52 ferner die Hardware zur Steuerung der Verbindungsmanagementtransaktionen, zur Ausführung des Master/Slave-Modells der Ablaufsteuerung mit rahmenbasiertem Abfragezeitplan, zum Einsatz einer geographischen und logischen Adressierung, zur Unterstützung kommunikationspaketbasierter Transaktionen und/oder einer Ableitung von Daten und Steuerzuständen aus Zuständen der Verbreitung elektrischer Signale.
  • Die Softwaredienste 58 der Bus-Steuereinrichtung programmieren den Steuerautomat und die Schaltung 52 in Abhängigkeit vom Betriebssystem 60 und anderer Software, wie zum Beispiel einer Einrichtungs- und Konfigurationssoftware 62 und 64 der Systemeinheit 12. Insbesondere umfassen die Dienste ein Verbindungsmanagement, wie zum Beispiel die Erfassung von vorhandenen Elementen des seriellen Busses, die Erfassung ihrer Verbindungstopologie, die Erfassung der Funktionen der verbundenen Peripherieeinrichtungen und die Zuweisung der geographischen und logischen Adressen. Die Dienste umfassen ferner ein Transaktionsmanagement, wie zum Beispiel die Erzeugung und Aufrechterhaltung des Abfragezeitplans, das Abfragen der Elemente des seriellen Busses und der Funktionen der Busagenten, die Bestätigung bestimmter Antworten der Elemente des seriellen Busses und der Funktionen der Busagenten und den Austausch von Daten mit Funktionen der Busagenten.
  • Für eine ausführlichere Beschreibung der Bus-Steuereinrichtungs-Hardware und der Softwaredienste der Bus-Steuereinrichtung 58 wird auf die parallel anhängigen Patentanmeldungen verwiesen, Aktenzeichenn 08/332,375, 08/331,727, 08/332,573 und 08/332,337. Es sei angemerkt, dass die Zuteilung von Funktionen zur Hardware und den Softwarediensten der Bus-Steuer einrichtung 14 von der Ausführung abhängig ist. Die vorliegende Erfindung kann mit jeder Anzahl von Zuteilungen umgesetzt werden, die sich von einer minimalen Hardwareverwendung bis zu einem minimalen Einsatz von Softwarediensten erstrecken.
  • 1011 veranschaulichen ein Ausführungsbeispiel des Bussignalverteilers der vorliegenden Erfindung. Das veranschaulichte Ausführungsbeispiel ist ein 1:7 Bussignalverteiler 18', der eine Steuerschaltung 66, Steuerregister 68 und 8 Anschlüsse 24 aufweist. Anschluss 0 24 wird zum Vorschalten des Bussignalverteilers 18' vor die Bus-Steuereinrichtung 14 oder einen anderen Bussignalverteiler 18 verwendet. Die Anschlüsse 1–7 werden zur gegenseitigen Verbindung von bis zu insgesamt 7 Bussignalverteilern 18 und/oder Bussignalschnittstellen 22 verwendet. Die Steuerregister 68 werden zur Speicherung ihrer eigenen Steuer- und Zustandsinformationen verwendet, wie zum Beispiel, ob ein Anschluss 24 mit einer Busschnittstelle 22 verbunden ist oder nicht und ob der Anschluss 24 EIN/AUS geschaltet ist. Die Steuerschaltungstechnik 66 bedient den Bussignalverteiler 18' in Abhängigkeit von Anweisungen von der Bus-Steuereinrichtung 14.
  • In Ausführungsbeispielen, in denen die preiswerten Zweisignaldrahtkabel 20 zum Verbinden der Elemente des seriellen Busses verwendet werden und elektrische Signale vorzugsweise in einer unterschiedlichen Art und Weise verbreitet werden, weist jeder Anschluss 24 zur Erzeugung der Differenzsignale zwei Differenzverstärker 70 und 72 auf. Vorzugsweise weist ferner jeder Anschluss 24 zum Ziehen der Signale auf beiden Leitungen auf Masse zwei Widerstände 74 auf, die wie gezeigt mit Masse gekoppelt sind, wodurch eine Erkennung des Fehlens oder des Vorhandenseins einer verbundenen Busschnittstelle 22 ermöglicht wird. Die geeigneten Werte der Wider stände 74 können in Abhängigkeit der einzelnen Ausführungen empirisch bestimmt werden.
  • Für eine ausführlichere Beschreibung des Bussignalverteilers 18 wird auf die parallel anhängige Patentanmeldung, Aktenzeichen 08/332,375 verwiesen.
  • 1213 veranschaulichen ein Ausführungsbeispiel der Busschnittstellen der vorliegenden Erfindung. Für dieses Ausführungsbeispiel weist die Busschnittstelle 22 eine Steuerschaltung 80, Steuer-/Zustandsregister 82, eine Verbinderschnittstelle 84 und zwei FIFOs 7678, einen Empfangs-FIFO 76 und einen Sende-FIFO 78, auf. Die Empfangs- und Sende-FIFOs 7678 werden zur Bereitstellung der Empfangs- und Sendedaten für Datenkommunikationstransaktionen verwendet. Die Steuer-/Zustandsregister 68 werden zur Speicherung ihrer eigenen Steuer- und Zustandsinformationen verwendet, wie zum Beispiel ihrer zugewiesenen geographischen Adresse, Funktionen ihrer „Host"-Peripherieeinrichtung und ihrer zugewiesenen logischen Adressen. Die Steuerschaltungstechnik 66 betreibt in Abhängigkeit von den Autorisierungen und Anweisungen von der Bus-Steuereinrichtung 14 die Busschnittstelle 22 im Auftrag der „Host"-Peripherieeinrichtung und der Funktionen der „Host"-Peripherieeinrichtung.
  • In Ausführungsbeispielen, in denen die preiswerten Zweisignaldrahtkabel 20 zur Verbindung der Elemente des seriellen Busses verwendet werden und elektrische Signale vorzugsweise in einer unterschiedlichen Art und Weise verbreitet werden, weist die Verbinderschnittstelle 84 zur Erzeugung der Differenzsignale zwei Differenzverstärker 86 und 88 auf. Vorzugsweise umfasst ferner die Verbinderschnittstelle 84 zum Ziehen der Signale auf beiden Leitungen auf Vcc, komplementär zur Anschlussschaltung eines Verbindungsbussignalverteilers 18, zwei Widerstände 90, die wie gezeigt mit Vcc gekoppelt sind. Die geeigneten Werte der Widerstände 90 können ebenfalls in Abhängigkeit von einzelnen Ausführungen empirisch bestimmt werden.
  • Für eine ausführlichere Beschreibung der Busschnittstelle 22 wird auf die parallel anhängigen Patentanmeldungen verwiesen, Aktenzeichenn 08/332,375, 08/331,727, 08/332,573 und 08/332,337.
  • Auf diese Weise wurden ein Verfahren und eine Einrichtung zur seriellen Kopplung isochroner und asynchroner Peripherieeinrichtungen mit der Systemeinheit eines Computersystems unter Verwendung hierarchischer Verbindungen beschrieben. Während die vorliegende Erfindung in Form der vorstehenden Ausführungsbeispiele beschrieben wurde, werden die Fachleute erkennen, dass die Erfindung nicht auf die beschriebenen Ausführungsbeispiele begrenzt ist. Die Beschreibung ist deshalb als Veranschaulichung statt als Einschränkung der vorliegenden Erfindung zu betrachten.

Claims (7)

  1. Ein Computersystem mit einer seriellen Busanordnung zum Bilden einer seriellen Schnittstelle einer oder mehrerer isochroner und/oder asynchroner Peripherieeinheiten mit einer Systemeinheit des Computersystems, wobei die serielle Busanordnung einschließt: eine oder mehrere Busschnittstellen, jeweils eine für jede Peripherieeinheit, zum Verbinden der Peripherieeinheiten mit der seriellen Busanordnung, zum Durchführen von Managementtransaktionen mit einem Bus-Master und zum Durchführen von Datentransaktionen für Funktionen der zugehörigen Peripherieeinheiten, wobei jede Peripherieeinheit eine oder mehrere Funktionen aufweist, in Abhängigkeit von aus dem Bus-Master empfangenen Autorisierungen, wobei jede Busschnittstelle ein Endpunkt der seriellen Busanordnung ist; null oder mehr Bussignalverteiler, von denen jeder eine Mehrzahl von Ports aufweist, zum Verbinden der einen oder der mehreren Busschnittstellen stromauf mit der Systemeinheit und zum Dienen als Leitkanal für Bussignalverteilungen, wobei dann, wenn null Bussignalverteiler benutzt werden, eine einzige Busschnittstelle mit dem Bus-Master gekoppelt ist, und wobei dann, wenn zumindest ein Bussignalverteiler benutzt wird, jede Busschnittstelle stromauf mit einem Bussignalverteiler verbunden ist, wobei jeder Bussignalverteiler mit Ausnahme eines Bussignalverteilers, welcher stromauf mit dem Bus-Master gekoppelt ist, wiederum stromauf mit einem weiteren Bussignalverteiler gekoppelt ist; einen Bus-Controller, der stromauf mit der Systemeinheit und stromab entweder mit einem Bussignalverteiler oder mit einer Busschnittstelle gekoppelt ist, was davon abhängt, ob wenigstens ein Signalverteiler benutzt wird, wobei der Bus-Controller als Bus-Master funktioniert, die null oder mehr Bussignalverteiler, die Busschnittstelle(n) und die Funktion(en) der Peripherieeinheit(en) zum Durchführen von Transaktionen autorisiert, Managementtransaktionen mit den null oder mehr Bussignalverteilern und der Busschnittstelle (den Busschnittstellen) durchführt und Datentransaktionen mit der Funktion (den Funktionen) der Peripherieeinheit(en) durchführt.
  2. Das Computersystem nach Anspruch 1, wobei der Bus-Controller der seriellen Busanordnung dynamisch die Verbindungstopologie zwischen dem Bus-Controller, den null oder mehr Bussignalverteilern und den Busschnittstellen dynamisch bestimmt und verfolgt.
  3. Das Computersystem nach Anspruch 1, wobei der Bus-Controller der seriellen Busanordnung dynamisch einen rahmenbasierten Abfragezeitplan erzeugt und aufrechterhält zum Abfragen von Funktionen von Peripherieeinheiten, die die Busschnittstellen für Datenkommunikationstransaktionen aufweisen (hosting).
  4. Das Computersystem nach Anspruch 3, wobei der Bus-Controller, die Bussignalverteiler und die Busschnittstellen einen logischen Adreßraum unterstützen, wobei der Bus-Controller die Funktionen der Peripherieeinheiten nach Datentransaktionen in dem logischen Adreßraum abfragt.
  5. Das Computersystem nach Anspruch 3, wobei der Bus-Controller ferner ein Abfragen der null oder mehr Bussignalverteiler und der Busschnittstellen nach Managementtransaktionen in dem dynamisch erzeugten und aufrechterhaltenen rahmenbasierten Abfragezeitplan enthält.
  6. Das Computersystem nach Anspruch 5, wobei der Bus-Controller, die Bussignalverteiler und die Busschnittstellen einen geographischen Adreßraum unterstützen, wobei der Bus-Controller die Bussignalverteiler und die Busschnittstellen nach Managementtransaktionen in dem geographischen Adreßraum abfragt.
  7. Das Computersystem nach Anspruch 1, wobei der Bus-Controller eine Anzahl von Elementpaketen mit durch Paketidentifizierer identifizierten Pakettypen benutzt zum Durchführen von Datentransaktionen mit Funktionen von Peripherieeinheiten, die die Busschnittstellen aufweisen (hosting), und zum Durchführen von Managementtransaktionen mit den Bussignalverteilern und den Busschnittstellen, wobei der Bus-Controller, die Bussignalverteiler und die Busschnittstellen ein vorgegebenes Steuerablaufprotokoll zum Austauschen der Pakete benutzen.
DE69535108T 1994-10-31 1995-10-31 Verfahren und apparat zum herstellen einer seriellen schnittstelle für isochrone und asynchrone peripheriegeräte Expired - Lifetime DE69535108T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US332255 1994-10-31
US08/332,255 US5615404A (en) 1994-10-31 1994-10-31 System having independently addressable bus interfaces coupled to serially connected multi-ported signal distributors generating and maintaining frame based polling schedule favoring isochronous peripherals
PCT/US1995/014244 WO1996013771A1 (en) 1994-10-31 1995-10-31 Method and apparatus for serially interfacing isochronous and asynchronous peripherals

Publications (2)

Publication Number Publication Date
DE69535108D1 DE69535108D1 (de) 2006-08-24
DE69535108T2 true DE69535108T2 (de) 2007-02-15

Family

ID=23297421

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69535108T Expired - Lifetime DE69535108T2 (de) 1994-10-31 1995-10-31 Verfahren und apparat zum herstellen einer seriellen schnittstelle für isochrone und asynchrone peripheriegeräte

Country Status (7)

Country Link
US (1) US5615404A (de)
EP (1) EP0789872B1 (de)
JP (1) JPH10511236A (de)
AU (1) AU688175B2 (de)
DE (1) DE69535108T2 (de)
HK (1) HK1002781A1 (de)
WO (1) WO1996013771A1 (de)

Families Citing this family (185)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5991830A (en) * 1996-01-04 1999-11-23 Compaq Computer Corp. Apparatus and method for coupling multiple peripheral devices to a single port of a computer
US5768543A (en) * 1996-02-28 1998-06-16 Paradyne Corporation Slot-token protocol
US6122749A (en) * 1996-10-23 2000-09-19 Advanced Micro Devices, Inc. Audio peripheral device having controller for power management
US5914877A (en) * 1996-10-23 1999-06-22 Advanced Micro Devices, Inc. USB based microphone system
US5818948A (en) * 1996-10-23 1998-10-06 Advanced Micro Devices, Inc. Architecture for a universal serial bus-based PC speaker controller
US6216052B1 (en) 1996-10-23 2001-04-10 Advanced Micro Devices, Inc. Noise elimination in a USB codec
KR100294259B1 (ko) * 1996-12-19 2001-07-12 윤종용 디스플레이모니터장치및그의전원제어방법
JPH10229410A (ja) * 1997-02-14 1998-08-25 Canon Inc データ処理装置、電子機器および通信システム
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
US6147890A (en) * 1997-12-30 2000-11-14 Kawasaki Steel Corporation FPGA with embedded content-addressable memory
US6085265A (en) * 1998-01-09 2000-07-04 Toshiba America Information Systems, Inc. System for handling an asynchronous interrupt a universal serial bus device
KR100285956B1 (ko) 1998-06-30 2001-04-16 윤종용 고속직렬버스에연결된동기식및비동기식장치의제어시스템과제어방법
US6438604B1 (en) 1998-10-05 2002-08-20 Canon Kabushiki Kaisha Digital video network interface
US7013354B1 (en) 1998-10-05 2006-03-14 Canon Kabushiki Kaisha Channel protocol for IEEE 1394 data transmission
US6272563B1 (en) 1998-11-03 2001-08-07 Intel Corporation Method and apparatus for communicating routing and attribute information for a transaction between hubs in a computer system
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
US6732208B1 (en) 1999-02-25 2004-05-04 Mips Technologies, Inc. Low latency system bus interface for multi-master processing environments
AU4482000A (en) 1999-04-23 2000-11-10 Sony Electronics Inc. Method of and apparatus for implementing and sending an asynchronous control mechanism packet
US6697892B1 (en) * 1999-07-08 2004-02-24 Intel Corporation Port expansion system
US6681283B1 (en) 1999-08-12 2004-01-20 Mips Technologies, Inc. Coherent data apparatus for an on-chip split transaction system bus
US6393500B1 (en) 1999-08-12 2002-05-21 Mips Technologies, Inc. Burst-configurable data bus
US6604159B1 (en) 1999-08-12 2003-08-05 Mips Technologies, Inc. Data release to reduce latency in on-chip system bus
US6490642B1 (en) 1999-08-12 2002-12-03 Mips Technologies, Inc. Locked read/write on separate address/data bus using write barrier
US6493776B1 (en) 1999-08-12 2002-12-10 Mips Technologies, Inc. Scalable on-chip system bus
US6651184B1 (en) * 1999-11-03 2003-11-18 Hewlett-Packard Development Company, L.P. Isochronous transfer mode on a universal serial bus with error correction algorithms
US6748475B1 (en) * 1999-11-05 2004-06-08 Analog Devices, Inc. Programmable serial port architecture and system
US7529799B2 (en) 1999-11-08 2009-05-05 International Business Machines Corporation Method and apparatus for transaction tag assignment and maintenance in a distributed symmetric multiprocessor system
US20020112070A1 (en) * 2000-12-08 2002-08-15 The Boeing Company Network controller for digitally controlling remote devices via a common bus
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
US7542474B2 (en) * 2001-02-26 2009-06-02 Sony Corporation Method of and apparatus for providing isochronous services over switched ethernet including a home network wall plate having a combined IEEE 1394 and ethernet modified hub
JP3795017B2 (ja) * 2001-04-26 2006-07-12 ザ・ボーイング・カンパニー ネットワークバスにおいて適切な終端処理とエラーのない通信を維持するためのシステムおよび方法
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
DE60228829D1 (de) * 2001-04-26 2008-10-23 Boeing Co System, verfahren und bussteuerungen zur erzeugung eines event-triggers auf einem netzwerkbus
EP1390856B2 (de) 2001-04-26 2020-07-22 The Boeing Company System und verfahren zum vorladen einer bussteuerung mit einem befehlsplan
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
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
GB2401207B (en) * 2003-04-30 2006-11-22 Agilent Technologies Inc Master slave arrangement
US7289528B2 (en) * 2003-08-29 2007-10-30 Motorola, Inc. Component interconnect with self-clocking data
US7466174B2 (en) 2006-03-31 2008-12-16 Intel Corporation Fast lock scheme for phase locked loops and delay locked loops
US9158667B2 (en) 2013-03-04 2015-10-13 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US8964496B2 (en) 2013-07-26 2015-02-24 Micron Technology, Inc. Apparatuses and methods for performing compare operations using sensing circuitry
US8971124B1 (en) 2013-08-08 2015-03-03 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US9153305B2 (en) 2013-08-30 2015-10-06 Micron Technology, Inc. Independently addressable memory array address spaces
US9019785B2 (en) 2013-09-19 2015-04-28 Micron Technology, Inc. Data shifting via a number of isolation devices
US9449675B2 (en) 2013-10-31 2016-09-20 Micron Technology, Inc. Apparatuses and methods for identifying an extremum value stored in an array of memory cells
US9430191B2 (en) 2013-11-08 2016-08-30 Micron Technology, Inc. Division operations for memory
US9727503B2 (en) * 2014-03-17 2017-08-08 Mellanox Technologies, Ltd. Storage system and server
US9696942B2 (en) 2014-03-17 2017-07-04 Mellanox Technologies, Ltd. Accessing remote storage devices using a local bus protocol
US9934856B2 (en) 2014-03-31 2018-04-03 Micron Technology, Inc. Apparatuses and methods for comparing data patterns in memory
US10074407B2 (en) 2014-06-05 2018-09-11 Micron Technology, Inc. Apparatuses and methods for performing invert operations using sensing circuitry
US9496023B2 (en) 2014-06-05 2016-11-15 Micron Technology, Inc. Comparison operations on logical representations of values in memory
US9830999B2 (en) 2014-06-05 2017-11-28 Micron Technology, Inc. Comparison operations in memory
US9779019B2 (en) 2014-06-05 2017-10-03 Micron Technology, Inc. Data storage layout
US9704540B2 (en) 2014-06-05 2017-07-11 Micron Technology, Inc. Apparatuses and methods for parity determination using sensing circuitry
US9910787B2 (en) 2014-06-05 2018-03-06 Micron Technology, Inc. Virtual address table
US9711207B2 (en) 2014-06-05 2017-07-18 Micron Technology, Inc. Performing logical operations using sensing circuitry
US9449674B2 (en) 2014-06-05 2016-09-20 Micron Technology, Inc. Performing logical operations using sensing circuitry
US9711206B2 (en) 2014-06-05 2017-07-18 Micron Technology, Inc. Performing logical operations using sensing circuitry
US9455020B2 (en) 2014-06-05 2016-09-27 Micron Technology, Inc. Apparatuses and methods for performing an exclusive or operation using sensing circuitry
US9786335B2 (en) 2014-06-05 2017-10-10 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US9904515B2 (en) 2014-09-03 2018-02-27 Micron Technology, Inc. Multiplication operations in memory
US9747961B2 (en) 2014-09-03 2017-08-29 Micron Technology, Inc. Division operations in memory
US9589602B2 (en) 2014-09-03 2017-03-07 Micron Technology, Inc. Comparison operations in memory
US9898252B2 (en) 2014-09-03 2018-02-20 Micron Technology, Inc. Multiplication operations in memory
US9847110B2 (en) 2014-09-03 2017-12-19 Micron Technology, Inc. Apparatuses and methods for storing a data value in multiple columns of an array corresponding to digits of a vector
US10068652B2 (en) 2014-09-03 2018-09-04 Micron Technology, Inc. Apparatuses and methods for determining population count
US9740607B2 (en) 2014-09-03 2017-08-22 Micron Technology, Inc. Swap operations in memory
US9940026B2 (en) 2014-10-03 2018-04-10 Micron Technology, Inc. Multidimensional contiguous memory allocation
US9836218B2 (en) 2014-10-03 2017-12-05 Micron Technology, Inc. Computing reduction and prefix sum operations in memory
US10163467B2 (en) 2014-10-16 2018-12-25 Micron Technology, Inc. Multiple endianness compatibility
US10147480B2 (en) 2014-10-24 2018-12-04 Micron Technology, Inc. Sort operation in memory
US9779784B2 (en) 2014-10-29 2017-10-03 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US10073635B2 (en) 2014-12-01 2018-09-11 Micron Technology, Inc. Multiple endianness compatibility
US9747960B2 (en) 2014-12-01 2017-08-29 Micron Technology, Inc. Apparatuses and methods for converting a mask to an index
US10032493B2 (en) 2015-01-07 2018-07-24 Micron Technology, Inc. Longest element length determination in memory
US10061590B2 (en) 2015-01-07 2018-08-28 Micron Technology, Inc. Generating and executing a control flow
US9583163B2 (en) 2015-02-03 2017-02-28 Micron Technology, Inc. Loop structure for operations in memory
WO2016126474A1 (en) 2015-02-06 2016-08-11 Micron Technology, Inc. Apparatuses and methods for parallel writing to multiple memory device locations
WO2016126478A1 (en) 2015-02-06 2016-08-11 Micron Technology, Inc. Apparatuses and methods for memory device as a store for program instructions
WO2016126472A1 (en) 2015-02-06 2016-08-11 Micron Technology, Inc. Apparatuses and methods for scatter and gather
WO2016144724A1 (en) 2015-03-10 2016-09-15 Micron Technology, Inc. Apparatuses and methods for shift decisions
US9741399B2 (en) 2015-03-11 2017-08-22 Micron Technology, Inc. Data shift by elements of a vector in memory
US9898253B2 (en) 2015-03-11 2018-02-20 Micron Technology, Inc. Division operations on variable length elements in memory
EP3268965A4 (de) 2015-03-12 2018-10-03 Micron Technology, INC. Vorrichtungen und verfahren zur datenverschiebung
US10146537B2 (en) 2015-03-13 2018-12-04 Micron Technology, Inc. Vector population count determination in memory
US10049054B2 (en) 2015-04-01 2018-08-14 Micron Technology, Inc. Virtual register file
US10140104B2 (en) 2015-04-14 2018-11-27 Micron Technology, Inc. Target architecture determination
US9959923B2 (en) 2015-04-16 2018-05-01 Micron Technology, Inc. Apparatuses and methods to reverse data stored in memory
US10073786B2 (en) 2015-05-28 2018-09-11 Micron Technology, Inc. Apparatuses and methods for compute enabled cache
US9704541B2 (en) 2015-06-12 2017-07-11 Micron Technology, Inc. Simulating access lines
US9921777B2 (en) 2015-06-22 2018-03-20 Micron Technology, Inc. Apparatuses and methods for data transfer from sensing circuitry to a controller
US9996479B2 (en) 2015-08-17 2018-06-12 Micron Technology, Inc. Encryption of executables in computational memory
US9905276B2 (en) 2015-12-21 2018-02-27 Micron Technology, Inc. Control of sensing components in association with performing operations
US9952925B2 (en) 2016-01-06 2018-04-24 Micron Technology, Inc. Error code calculation on sensing circuitry
US10048888B2 (en) 2016-02-10 2018-08-14 Micron Technology, Inc. Apparatuses and methods for partitioned parallel data movement
US9892767B2 (en) 2016-02-12 2018-02-13 Micron Technology, Inc. Data gathering in memory
US9971541B2 (en) 2016-02-17 2018-05-15 Micron Technology, Inc. Apparatuses and methods for data movement
US10956439B2 (en) 2016-02-19 2021-03-23 Micron Technology, Inc. Data transfer with a bit vector operation device
US9899070B2 (en) 2016-02-19 2018-02-20 Micron Technology, Inc. Modified decode for corner turn
US9697876B1 (en) 2016-03-01 2017-07-04 Micron Technology, Inc. Vertical bit vector shift in memory
US10262721B2 (en) 2016-03-10 2019-04-16 Micron Technology, Inc. Apparatuses and methods for cache invalidate
US9997232B2 (en) 2016-03-10 2018-06-12 Micron Technology, Inc. Processing in memory (PIM) capable memory device having sensing circuitry performing logic operations
US10379772B2 (en) 2016-03-16 2019-08-13 Micron Technology, Inc. Apparatuses and methods for operations using compressed and decompressed data
US9910637B2 (en) 2016-03-17 2018-03-06 Micron Technology, Inc. Signed division in memory
US10120740B2 (en) 2016-03-22 2018-11-06 Micron Technology, Inc. Apparatus and methods for debugging on a memory device
US11074988B2 (en) 2016-03-22 2021-07-27 Micron Technology, Inc. Apparatus and methods for debugging on a host and memory device
US10388393B2 (en) 2016-03-22 2019-08-20 Micron Technology, Inc. Apparatus and methods for debugging on a host and memory device
US10977033B2 (en) 2016-03-25 2021-04-13 Micron Technology, Inc. Mask patterns generated in memory from seed vectors
US10474581B2 (en) 2016-03-25 2019-11-12 Micron Technology, Inc. Apparatuses and methods for cache operations
US10430244B2 (en) 2016-03-28 2019-10-01 Micron Technology, Inc. Apparatuses and methods to determine timing of operations
US10074416B2 (en) 2016-03-28 2018-09-11 Micron Technology, Inc. Apparatuses and methods for data movement
US10453502B2 (en) 2016-04-04 2019-10-22 Micron Technology, Inc. Memory bank power coordination including concurrently performing a memory operation in a selected number of memory regions
US10607665B2 (en) 2016-04-07 2020-03-31 Micron Technology, Inc. Span mask generation
US9818459B2 (en) 2016-04-19 2017-11-14 Micron Technology, Inc. Invert operations using sensing circuitry
US10153008B2 (en) 2016-04-20 2018-12-11 Micron Technology, Inc. Apparatuses and methods for performing corner turn operations using sensing circuitry
US9659605B1 (en) 2016-04-20 2017-05-23 Micron Technology, Inc. Apparatuses and methods for performing corner turn operations using sensing circuitry
US10042608B2 (en) 2016-05-11 2018-08-07 Micron Technology, Inc. Signed division in memory
US9659610B1 (en) 2016-05-18 2017-05-23 Micron Technology, Inc. Apparatuses and methods for shifting data
US10049707B2 (en) 2016-06-03 2018-08-14 Micron Technology, Inc. Shifting data
US10387046B2 (en) 2016-06-22 2019-08-20 Micron Technology, Inc. Bank to bank data transfer
US10037785B2 (en) 2016-07-08 2018-07-31 Micron Technology, Inc. Scan chain operation in sensing circuitry
US10388360B2 (en) 2016-07-19 2019-08-20 Micron Technology, Inc. Utilization of data stored in an edge section of an array
US10733089B2 (en) 2016-07-20 2020-08-04 Micron Technology, Inc. Apparatuses and methods for write address tracking
US10387299B2 (en) 2016-07-20 2019-08-20 Micron Technology, Inc. Apparatuses and methods for transferring data
US9767864B1 (en) 2016-07-21 2017-09-19 Micron Technology, Inc. Apparatuses and methods for storing a data value in a sensing circuitry element
US9972367B2 (en) 2016-07-21 2018-05-15 Micron Technology, Inc. Shifting data in sensing circuitry
US10303632B2 (en) 2016-07-26 2019-05-28 Micron Technology, Inc. Accessing status information
US10468087B2 (en) 2016-07-28 2019-11-05 Micron Technology, Inc. Apparatuses and methods for operations in a self-refresh state
US9990181B2 (en) 2016-08-03 2018-06-05 Micron Technology, Inc. Apparatuses and methods for random number generation
US11029951B2 (en) 2016-08-15 2021-06-08 Micron Technology, Inc. Smallest or largest value element determination
US10606587B2 (en) 2016-08-24 2020-03-31 Micron Technology, Inc. Apparatus and methods related to microcode instructions indicating instruction types
US10466928B2 (en) 2016-09-15 2019-11-05 Micron Technology, Inc. Updating a register in memory
US10387058B2 (en) 2016-09-29 2019-08-20 Micron Technology, Inc. Apparatuses and methods to change data category values
US10014034B2 (en) 2016-10-06 2018-07-03 Micron Technology, Inc. Shifting data in sensing circuitry
US10529409B2 (en) 2016-10-13 2020-01-07 Micron Technology, Inc. Apparatuses and methods to perform logical operations using sensing circuitry
US9805772B1 (en) 2016-10-20 2017-10-31 Micron Technology, Inc. Apparatuses and methods to selectively perform logical operations
US10373666B2 (en) 2016-11-08 2019-08-06 Micron Technology, Inc. Apparatuses and methods for compute components formed over an array of memory cells
US10423353B2 (en) 2016-11-11 2019-09-24 Micron Technology, Inc. Apparatuses and methods for memory alignment
US9761300B1 (en) 2016-11-22 2017-09-12 Micron Technology, Inc. Data shift apparatuses and methods
US10402340B2 (en) 2017-02-21 2019-09-03 Micron Technology, Inc. Memory array page table walk
US10268389B2 (en) 2017-02-22 2019-04-23 Micron Technology, Inc. Apparatuses and methods for in-memory operations
US10403352B2 (en) 2017-02-22 2019-09-03 Micron Technology, Inc. Apparatuses and methods for compute in data path
US10838899B2 (en) 2017-03-21 2020-11-17 Micron Technology, Inc. Apparatuses and methods for in-memory data switching networks
US10185674B2 (en) 2017-03-22 2019-01-22 Micron Technology, Inc. Apparatus and methods for in data path compute operations
US11222260B2 (en) 2017-03-22 2022-01-11 Micron Technology, Inc. Apparatuses and methods for operating neural networks
US10049721B1 (en) 2017-03-27 2018-08-14 Micron Technology, Inc. Apparatuses and methods for in-memory operations
US10043570B1 (en) 2017-04-17 2018-08-07 Micron Technology, Inc. Signed element compare in memory
US10147467B2 (en) 2017-04-17 2018-12-04 Micron Technology, Inc. Element value comparison in memory
US9997212B1 (en) 2017-04-24 2018-06-12 Micron Technology, Inc. Accessing data in memory
US10942843B2 (en) 2017-04-25 2021-03-09 Micron Technology, Inc. Storing data elements of different lengths in respective adjacent rows or columns according to memory shapes
US10236038B2 (en) 2017-05-15 2019-03-19 Micron Technology, Inc. Bank to bank data transfer
US10068664B1 (en) 2017-05-19 2018-09-04 Micron Technology, Inc. Column repair in memory
US10013197B1 (en) 2017-06-01 2018-07-03 Micron Technology, Inc. Shift skip
US10262701B2 (en) 2017-06-07 2019-04-16 Micron Technology, Inc. Data transfer between subarrays in memory
US10152271B1 (en) 2017-06-07 2018-12-11 Micron Technology, Inc. Data replication
US10318168B2 (en) 2017-06-19 2019-06-11 Micron Technology, Inc. Apparatuses and methods for simultaneous in data path compute operations
JP7053671B2 (ja) 2017-06-30 2022-04-12 株式会社ミツトヨ 座標測定機用の自己構成要素識別および信号処理システム
US10162005B1 (en) 2017-08-09 2018-12-25 Micron Technology, Inc. Scan chain operations
US10534553B2 (en) 2017-08-30 2020-01-14 Micron Technology, Inc. Memory array accessibility
US10416927B2 (en) 2017-08-31 2019-09-17 Micron Technology, Inc. Processing in memory
US10346092B2 (en) 2017-08-31 2019-07-09 Micron Technology, Inc. Apparatuses and methods for in-memory operations using timing circuitry
US10741239B2 (en) 2017-08-31 2020-08-11 Micron Technology, Inc. Processing in memory device including a row address strobe manager
US10409739B2 (en) 2017-10-24 2019-09-10 Micron Technology, Inc. Command selection policy
US10522210B2 (en) 2017-12-14 2019-12-31 Micron Technology, Inc. Apparatuses and methods for subarray addressing
US10332586B1 (en) 2017-12-19 2019-06-25 Micron Technology, Inc. Apparatuses and methods for subrow addressing
US10614875B2 (en) 2018-01-30 2020-04-07 Micron Technology, Inc. Logical operations using memory cells
US10437557B2 (en) 2018-01-31 2019-10-08 Micron Technology, Inc. Determination of a match between data values stored by several arrays
US11194477B2 (en) 2018-01-31 2021-12-07 Micron Technology, Inc. Determination of a match between data values stored by three or more arrays
US10725696B2 (en) 2018-04-12 2020-07-28 Micron Technology, Inc. Command selection policy with read priority
US10440341B1 (en) 2018-06-07 2019-10-08 Micron Technology, Inc. Image processor formed in an array of memory cells
US10769071B2 (en) 2018-10-10 2020-09-08 Micron Technology, Inc. Coherent memory access
US11175915B2 (en) 2018-10-10 2021-11-16 Micron Technology, Inc. Vector registers implemented in memory
US10483978B1 (en) 2018-10-16 2019-11-19 Micron Technology, Inc. Memory device processing
US11184446B2 (en) 2018-12-05 2021-11-23 Micron Technology, Inc. Methods and apparatus for incentivizing participation in fog networks
US10867655B1 (en) 2019-07-08 2020-12-15 Micron Technology, Inc. Methods and apparatus for dynamically adjusting performance of partitioned memory
US11360768B2 (en) 2019-08-14 2022-06-14 Micron Technolgy, Inc. Bit string operations in memory
US11449577B2 (en) 2019-11-20 2022-09-20 Micron Technology, Inc. Methods and apparatus for performing video processing matrix operations within a memory array
US11853385B2 (en) 2019-12-05 2023-12-26 Micron Technology, Inc. Methods and apparatus for performing diversity matrix operations within a memory array
US11227641B1 (en) 2020-07-21 2022-01-18 Micron Technology, Inc. Arithmetic operations in memory
US11934333B2 (en) 2021-03-25 2024-03-19 Mellanox Technologies, Ltd. Storage protocol emulation in a peripheral device
US11934658B2 (en) 2021-03-25 2024-03-19 Mellanox Technologies, Ltd. Enhanced storage protocol emulation in a peripheral device
US11726666B2 (en) 2021-07-11 2023-08-15 Mellanox Technologies, Ltd. Network adapter with efficient storage-protocol emulation

Family Cites Families (40)

* 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
DE3789743T2 (de) * 1986-09-01 1994-08-18 Nec Corp 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
WO1991007034A1 (en) * 1989-10-25 1991-05-16 Mitsubishi Jukogyo Kabushiki Kaisha Serial signal transmission apparatus and method of controlling determination of polarity thereof
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
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
US5406559A (en) * 1992-11-02 1995-04-11 National Semiconductor Corporation Isochronous link protocol
US5361261A (en) * 1992-11-02 1994-11-01 National Semiconductor Corporation Frame-based transmission of data
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
US5426769A (en) * 1993-08-26 1995-06-20 Metalink Corp. System and method for producing input/output expansion for single chip microcomputers
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
JPH10511236A (ja) 1998-10-27
EP0789872A1 (de) 1997-08-20
EP0789872A4 (de) 1999-10-27
EP0789872B1 (de) 2006-07-12
AU688175B2 (en) 1998-03-05
US5615404A (en) 1997-03-25
DE69535108D1 (de) 2006-08-24
WO1996013771A1 (en) 1996-05-09
AU4100696A (en) 1996-05-23
HK1002781A1 (en) 1998-09-18

Similar Documents

Publication Publication Date Title
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
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
EP0789867B1 (de) Verfahren und vorrichtung für die dynamische bestimmung und verwaltung der verbindungstopologie einer hierarchischen seriellen busvorrichtung
EP1456722B1 (de) Datenübertragungsverfahren, serielles bussystem und anschalteinheit für einen passiven busteilnehmer
US5991831A (en) High speed serial communications link for desktop computer peripherals
DE60035882T2 (de) Protokoll einer zerteilten transaktion für ein bussystem
DE69334172T2 (de) Verfahren und Vorrichtung zur Arbitrierung auf einen acyclischen gerichteten Graph
DE69836426T2 (de) Steuergerät für einen universellen seriellen Bus
EP0789880B1 (de) Hierarchische serielle busvorrichtung
DE69829840T2 (de) Medienzugriffskontroller und Medienunabhängige Schnittstelle(MII) zum Verbinden an eine physikalische Schicht Vorrichtung
US20050165997A1 (en) Data communication system
DE10259327A1 (de) USB-Verbundgerät und Verfahren zum Realisieren desselben
DE112021003094T5 (de) System und verfahren zum planen von gemeinsam nutzbaren pcie-endpunktvorrichtungen
JPH05219090A (ja) ハイアラーキネットワーク管理システム及び該システム用コンセントレータ並びに当該ネットワーク要素
JPH0827770B2 (ja) 電気通信パケット交換装置
CN209897076U (zh) 一种用于配电终端的新型分集总线
CN108132900A (zh) 转接设备、远程通信系统以及数据传输方法
DE69725570T2 (de) Paketendeerkennung zum speichern von mehreren paketen in einem sram
CN117956012A (en) Generalized intelligent component networking transmission system
Ramamurthy et al. Comparative study of the FireWire/spl trade/IEEE-1394 protocol with the Universal Serial Bus and Ethernet
DE10062573B4 (de) USB-Endgerät
Moon Survey on Serial Busses
DE10231130B4 (de) Schaltungsanordnung zum Verarbeiten von Datenpaketen mit Sprachdaten
Kim et al. An Adaptive Universal Serial Bus (USB) Protocol for Improving the Performance of Data Communication under the Heavy Traffic

Legal Events

Date Code Title Description
8364 No opposition during term of opposition