DE69935065T2 - Datenübertragungssteuerinrichtung und elektronisches gerät - Google Patents

Datenübertragungssteuerinrichtung und elektronisches gerät Download PDF

Info

Publication number
DE69935065T2
DE69935065T2 DE69935065T DE69935065T DE69935065T2 DE 69935065 T2 DE69935065 T2 DE 69935065T2 DE 69935065 T DE69935065 T DE 69935065T DE 69935065 T DE69935065 T DE 69935065T DE 69935065 T2 DE69935065 T2 DE 69935065T2
Authority
DE
Germany
Prior art keywords
packet
data
information
bus
data transfer
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
DE69935065T
Other languages
English (en)
Other versions
DE69935065D1 (de
Inventor
Takuya Suwa-shi Ishida
Yoshiyuki Suwa-shi Kamihara
Fumitoshi Suwa-shi WADA
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Publication of DE69935065D1 publication Critical patent/DE69935065D1/de
Application granted granted Critical
Publication of DE69935065T2 publication Critical patent/DE69935065T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9042Separate storage for different parts of the packet, e.g. header and payload
    • 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/40071Packet processing; Packet format
    • 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/40091Bus bridging
    • 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/40117Interconnection of audio or video/imaging devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/901Buffering arrangements using storage descriptor, e.g. read or write pointers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9063Intermediate storage in different physical parts of a node or terminal
    • H04L49/9068Intermediate storage in different physical parts of a node or terminal in the network interface card
    • H04L49/9073Early interruption upon arrival of a fraction of a packet
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Erfindung betrifft eine Datenübertragungssteuereinrichtung und ein diese umfassendes elektronisches Gerät.
  • TECHNISCHER HINTERGRUND
  • Eine als IEEE 1394 bezeichneter Schnittstellenstandard hat kürzlich viel Aufmerksamkeit auf sich gezogen. Dieser IEEE 1394 hat standardisierte serielle Hochgeschwindigkeits-Busschnittstellen, die die nächste Generation von Multimedia-Geräten handhaben können. IEEE 1394 macht es möglich, Daten zu handhaben, die Echtzeitfähigkeiten haben müssen, wie etwa bewegte Bilder. Ein Bus gemäß IEEE 1394 kann nicht nur mit Peripheriegeräten für Computer wie etwa Druckern, Scannern, CD-R-Laufwerken und Festplattenlaufwerken verbunden werden, sondern auch mit Hausgeräten wie etwa Videokameras, Videokassettenrecordern und Fernsehgeräten. Es wird daher erwartet, dass dieser Standard eine dramatische Beschleunigung der Digitalisierung elektronischer Geräte mit sich bringt.
  • Das Konzept von IEEE 1394 ist in diversen Veröffentlichungen offenbart, wie etwa "An outline of the IEEE 1394 High Performance Serial Bus" (Interface, April 1996, Seiten 1–10), "Bus Standards for PC Peripheral Equipment" (Interface, Januar 1997, Seiten 106–116) und "Real-Time Transfer Modes and Multimedia-Capable Protocols for IEEE 1394–1995" (Interface, Januar 1997, Seiten 136–146). TSB12 LV31 von Texas Instruments ist bekannt als eine Datenübertragungssteuervorrichtung, die IEEE 1394 entspricht.
  • Wie nachfolgend beschrieben, sind jedoch einige technische Probleme im Zusammenhang mit einer Datenübertragungssteuereinrichtung nach IEEE 1394 identifiziert worden.
  • Das heißt, der gegenwärtige IEEE 1394-Standard ermöglicht es, Übertragungsgeschwindigkeiten bis zu einem Maximum von 400 Mbps zu implementieren. In der Praxis muss aufgrund des Vorhandenseins von Verarbeitungs-Overhead die tatsächliche Übertragungsgeschwindigkeit des gesamten Systems wesentlich niedriger sein. Mit anderen Warten benötigen die auf einer CPU laufende Firmware und Anwendungssoftware große Mengen an Zeit für Prozesse wie etwa die Vorbereitung für die Übertragung von Daten und das Einlesen von empfangenen Daten, was bedeutet, dass es nicht möglich ist, eine Datenübertragung mit insgesamt hoher Geschwindigkeit zu implementieren, egal, wie schnell die Daten über die IEEE 1394-Busse übertragen werden können.
  • Ein besonderes Problem liegt in der Tatsache, dass eine im Peripheriegerät eingebaute CPU eine niedrigere Verarbeitungskapazität hat als die in das Hostsystem wie etwa einen Personalcomputer eingebaute CPU. Dies macht das Problem der Verarbeitungsoverheads in Firmware und Anwen dungssoftware sehr ernst. Es ist daher wünschenswert, Techniken bereit zu stellen, die in der Lage sind, dieses Overheadproblem effizient zu lösen.
  • EP-A-0 833 485 beschreibt das sogenannte Adressenauflösungsprotokoll (Adress Resolution Protocol, ARP) und das umgekehrte Adressenauflösungsprotokoll (Reverse Adress Resolution Protocol, RARP), die verwendet werden können, um Kommunikationen in einem Netzwerk von zwei oder mehr über einen elektronischen Bus verbundenen Netzwerkknoten zu implementieren. Insbesondere kann ARP verwendet werden, wenn ein erster Netzwerkcomputer mit einem zweiten Netzwerkcomputer kommunizieren will, die physikalische Adresse des zweiten Computers aber nicht kennt. Gemäß ARP verbreitet der erste Computer eine "ARP-Anforderung" über den Netzwerkbus, das heißt an alle Knoten am Netzwerk. Die Anforderung umfasst die IP-Adresse des zweiten Computers. Durch Überprüfen der IP-Adresse der Anforderung erkennt der zweite Computer, dass er der beabsichtigte Empfänger der Anforderung ist und sendet dann eine "ARP-Antwort", die an den ersten Computer adressiert wird und die physikalische Adresse des zweiten Computers enthält. Das ARP-Anforderungspaket umfasst u. a. einen Verbreitungs-Busindikator, der angibt, welcher Bus oder welche Busse in dem Netz das Anforderungspaket empfangen sollten, sowie Fehlerprüfbits.
  • Eine Datenübertragungssteuereinrichtung nach dem Oberbegriff der Ansprüche 1, 4, 5, 7 und 8 ist aus WO-A-98/44400 bekannt. Das Dokument betrifft den IEEE 1394-Standard und beschreibt die Erzeugung, nach einer Selbstidentifikations-(Self-ID)-Sequenz, einer Zonentopologiekarte, die zusätzlich zu den von den angeschlossenen Vorrichtungen empfangenen Selbstidentifikationspaketen eine Länge, CRC etc. enthält. Jedes Self-ID-Paket in der Topologiekarte enthält alle in einem IEEE 1394-Self-ID-Paket enthaltene Information. Die Zonentopologiekarte wird in Speicher geschrieben.
  • OFFENBARUNG DER ERFINDUNG
  • Die vorliegende Erfindung wurde erdacht in Anbetracht des oben beschriebenen technischen Problems und hat als ein Ziel, eine Datenübertragungssteuereinrichtung und diese verwendendes elektronisches Gerät zu schaffen, die in der Lage sind, die Verarbeitungsoverheads von Firmware und Anwendungssoftware zu reduzieren und so Hochgeschwindigkeitsdatenübertragung in einer kompakten Hardwarekonfiguration zu implementieren.
  • Dieses Ziel wird erreicht durch eine Datenübertragungssteuereinrichtung nach Anspruch 1, 4, 5, 7 bzw. 8. Bevorzugte Ausgestaltungen der Erfindung sind Gegenstand der abhängigen Ansprüche.
  • In dieser Erfindung nimmt das Paketformungs-(umformungs)-mittel den Datenzeiger, der vom Paketaufteilungsmittel übergeben worden ist, und hängt ihn an die Steuerinformation des Paketes an. Die Steuerinformation des Paketes, an die der Datenzeiger angehängt wird, wird in das Steuerinformationsgebiet des Speichermittels geschrieben, und das Datenpaket wird in dessen Datengebiet geschrieben. Diese Anordnung ermöglicht es, die Verarbeitungslast der oberen Schichten wie etwa Firmware oder Anwendungssoftware zu verringern und so die tatsächliche Übertragungsgeschwindigkeit des gesamten Systems zu verbessern, indem die Steuerinformation in das Steuerinformationsgebiet und die Daten in das Datengebiet geschrieben werden. Für eine obere Schicht wie etwa die Firmware ist es einfach, den Datenzeiger zu verwenden, um die Daten, die der Steuerinformation des Paketes entsprechen, aus dem Datengebiet zu lesen. Da der Datenzeiger durch das Paketformungsmittel angehängt wird, so dass es für das Paketaufteilungsmittel unnötig ist, daran teilzunehmen, kann die Konfiguration des Paketaufteilungsmittels und die Verarbeitung des Schreibens in das Speichermittel vereinfacht werden.
  • Das Paketformungsmittel kann Etiketteninformation erzeugen, um wenigstens zwischen Steuerinformation und Daten eines Paketes zu unterscheiden, und kann auch die so erzeugte Etiketteninformation mit dem Paket verknüpfen; das Paketaufteilungsmittel kann Steuerinformation des Paketes in das Steuerinformationsgebiet und Daten des Paketes in das Datengebiet basierend auf der mit dem Paket verknüpften Etiketteninformation schreiben. Diese Anordnung ermöglicht es, Steuerinformation des Paketes in dem Steuerinformationsgebiet und Daten in dem Datengebiet mit einer einfachen Hardwarekonfiguration zu speichern.
  • Das Paketaufteilungsmittel kann einen Steuerinformationszeiger, der eine Adresse von in das Steuerinformationsgebiet geschriebener Steuerinformation angibt, aktualisieren, wenn aus der mit dem Paket verknüpfen Etiketteninformation festgestellt wird, dass Steuerinformation des Paketes geschrieben werden soll, oder es kann einen Datenzeiger, der eine Adresse von in das Datengebiet geschriebenen Daten angibt, aktualisieren, wenn aus der mit dem Paket verknüpften Etiketteninformation festgelegt wird, dass Daten des Paketes geschrieben werden sollen. Diese Anordnung ermöglicht es, die Etiketteninformation zu verwenden, um zwischen Aktualisierung des Steuerinformationszeigers und Aktualisierung des Datenzeigers umzuschalten und so das Paket in Steuerinformation und Daten aufzuteilen. Dies hilft, die Paketaufteilungsverarbeitung zu vereinfachen.
  • Eine Datenübertragungssteuervorrichtung nach der vorliegenden Erfindung zum Übertragen von Daten zwischen einer Mehrzahl von Knoten, die mit einem Bus verbunden sind, umfasst: Paketformungsmittel zum Formen jedes Paketes, das von einem Knoten übertragen worden ist, in eine durch eine obere Schicht verwendbare Form, und Schreibmittel zum Schreiben des so geformten Paketes in ein Speichermittel, wobei das Paketformungsmittel eine Verbreitungsinformation, die angibt, ob das Paket an alle mit dem Bus verbundenen Knoten gesendet worden ist oder nicht, nimmt und die Verbreitungsinformation an Steuerinformation des Paketes anhängt.
  • Diese Erfindung ermöglicht es einer oberen Schicht wie etwa der Firmware, festzustellen, ob ein Paket, das zu verarbeiten ist, verbreitet worden ist, indem einfach die Verbreitungsinformation geprüft wird. Diese Anordnung ermöglicht es, eine Verarbeitung wie etwa das Decodieren von anderer Information zu überspringen und so die Verarbeitungslast auf oberen Schichten wie etwa der Firmware zu verringern.
  • Eine Datenübertragungssteuervorrichtung nach der vorliegenden Erfindung zum Übertragen von Daten zwischen einer Mehrzahl von Knoten, die mit einem Bus verbunden sind, umfasst: Paketformungsmittel zum Formen jedes Paketes, das von einem Knoten übertragen worden ist, in eine Form, die von einer oberen Schicht verwendet werden kann, und Schreibmittel zum Schreiben des so geformten Paketes in ein Speichermittel, wobei das Paketformungsmittel Fehlerstatusinformation, die angibt, ob ein Fehler in dem Paket vorgelegen hat oder nicht, nimmt und die Fehlerstatusinformation an Steuerinformation des Paketes anhängt. Diese Erfindung ermöglicht es einer oberen Schicht wie etwa der Firmware, festzustellen, ob ein Fehler in einem zu verarbeitenden Paket vorliegt oder nicht, indem einfach die Fehlerstatusinformation geprüft wird. Diese Anordnung ermöglicht es, eine Verarbeitung wie etwa die Decodierung anderer Information zu überspringen und so die Verarbeitungslast auf oberen Schichten wie etwa der Firmware zu verringern.
  • Die Datenübertragungssteuereinrichtung kann ferner Paketaufteilungsmittel zum Schreiben von Steuerinformation des so geformten Paketes in ein Steuerinformationsgebiet des Speichermittels und Daten des so geformten Paketes in ein Datengebiet des Speichermittels umfassen, und Daten eines Paketes, das in das Datengebiet geschrieben worden ist, können ungültig gemacht werden, wenn festgestellt wird, dass ein Fehler in dem Paket vorliegt. Diese Konfiguration gewährleistet, dass nur korrekte Daten kontinuierlich in dem Datengebiet gespeichert werden können, was es einer oberen Schicht wie etwa einer Anwendungssoftware ermöglicht, nur korrekte Daten sequentiell aus dem Datengebiet zu lesen. Dies hilft, die Schnittstelle zu oberen Schichten zu vereinfachen.
  • Eine Datenübertragungssteuereinrichtung nach der vorliegenden Erfindung zum Übertragen von Daten zwischen einer Mehrzahl von Knoten, die mit einem Bus verbunden sind, umfasst: Paketformungsmittel zum Formen jedes Paketes, das von einem Knoten übertragen worden ist, in eine Form, die von einer oberen Schicht verwendet werden kann, und Schreibmittel zum Schreiben des so geformten Paketes in ein Speichermittel, wobei das Paketformungsmittel Information, die angibt, ob das Paket während einer Selbstidentifikationsperiode empfangen wurde oder nicht, nimmt und die Information an Steuerinformation des Paketes anhängt.
  • Diese Erfindung ermöglicht es einer oberen Schicht wie etwa der Firmware, festzustellen, ob ein zu verarbeitendes Paket während der Selbstidentifikationsperiode empfangen wurde oder nicht, indem einfach die an die Steuerinformation des Paketes angehängte Information geprüft wird. Es ist daher einfach, ein zum Beispiel durch Umpacken einer Mehrzahl von Selbstidentifikationspaketen erhaltenes Paket von einer anderen Art von Paket zu unterscheiden.
  • Eine Datenübertragungssteuereinrichtung nach der vorliegenden Erfindung zum Übertragen von Daten zwischen einer Mehrzahl von Knoten, die mit einem Bus verbunden sind, umfasst: Paketformungsmittel zum Formen jedes Paketes, das von einem Knoten übertragen worden ist, in eine Form, die von einer oberen Schicht verwendet werden kann, und Schreibmittel zum Schreiben des so geformten Paketes in ein Speichermittel, wobei das Paketformungsmittel gegebene Information an das hinterste Ende eines jeden Paketes in einer zeitlichen Folge anhängt, das von jedem Knoten übertragen worden ist, und das Schreibmittel die gegebene Information an das vorderste Ende von Steuerinformation des Paketes in dem Speichermittel schreibt.
  • Mit dieser Erfindung wird Information, die an das hinterste Ende eines Paketes in zeitlicher Folge angehängt worden ist, an das vorderste Ende der Steuerinformation des Paketes im Speichermittel geschrieben. Daher kann eine obere Schicht wie etwa die Firmware diese Information auf einfache Weise, ohne andere Information zu decodieren, bestätigen/überprüfen. Infolgedessen ist es möglich, die Verarbeitungslast auf oberen Schichten wie etwa der Firmware stark zu verringern.
  • Man beachte, dass die gegebene Information eine oder mehrere der folgenden sein kann: Bestätigungsinformation, die an den Übertragungsursprung des Paketes gesendet worden ist, Geschwindigkeitscodeinformation zum Spezifizieren der Geschwindigkeit der Datenübertragung; Verbreitungsinformation, die angibt, ob das Paket an alle mit dem Bus verbundenen Knoten gesendet worden ist oder nicht; Information, die angibt, ob das Paket während einer Selbstidentifikationsperiode empfangen wurde oder nicht; und Fehlerstatusinformation, die angibt, ob ein Fehler in dem Paket vorlag oder nicht.
  • Die Datenübertragungssteuereinrichtung kann ferner umfassen: einen ersten Bus, der mit einer Anwendung nächster Stufe verbunden ist; einen zweiten Bus zum Steuern der Datenübertragungssteuereinrichtung; einen dritten Bus, der elektrisch mit einer Einrichtung der physikalischen Schicht verbunden ist; einen vierten Bus, der elektrisch mit dem Speichermittel verbunden ist; und Arbitrierungsmittel zum Durchführung von Arbitrierung zum Herstellen eines Datenweges zwischen einem beliebigen der ersten, zweiten und dritten Busse und dem vierten Bus.
  • Dies schafft voneinander getrennte erste, zweite und dritte Busse. Die von dem Arbitrierungsmittel durchgeführte Arbitrierung stellt einen Datenweg zwischen einem unter erstem, zweitem und drittem Bus und dem vierten Bus des wahlfrei zugänglichen Speichermittels her. Diese Anordnung ermöglicht es, Pakete, die von einem anderen Knoten über eine Einrichtung der physikalischen Schicht empfangen worden sind, in beliebiger Anordnung in dem Speichermittel zu speichern. Außerdem erfolgt das Lesen und Schreiben von Steuerinformation des Paketes unter Verwendung des zweiten Busses, so dass der erste Bus zum Lesen und Schreiben der Daten in den Paketen verwendet werden kann. Dies ermöglicht eine Verringerung der Verarbeitungslast auf den oberen Schichten wie etwa der Transaktionsschicht und der Anwendungsschicht. Es ermöglicht auch die Verwendung von Bussen niedriger Geschwindigkeit als ersten und zweiten Bus und einer langsamen, preiswerten Einrichtung als Einrichtung zum Steuern der Datenübertragungssteuereinrichtung. Dadurch kann die Datenübertragungssteuereinrichtung kompakter und preiswerter gemacht werden.
  • Man beachte, dass es ausreichend ist, den ersten, zweiten, dritten und vierten Bus elektrisch mit der Anwendung, einer Einrichtung zum Steuern der Datenübertragungssteuereinrichtung, einer Einrichtung der physikalischen Schicht bzw. RAM zu verbinden, und andere Einrichtungen können an diesen Bussen vorhanden sein.
  • Die Datenübertragungssteuervorrichtung kann ferner ein FIFO zwischen dem Paketformungsmittel und dem Speichermittel umfassen.
  • Zusätzlich kann Datenübertragung gemäß dem IEEE 1394-Standard durchgeführt werden.
  • Ein elektronisches Gerät gemäß dieser Erfindung umfasst eine beliebige der oben beschriebenen Datenübertragungssteuereinrichtungen; eine Einrichtung zum Durchführen einer gegebenen Verarbeitung an Daten, die von einem anderen Knoten über die Datenübertragungssteuereinrichtung und den Bus empfangen worden sind; und eine Einrichtung zum Ausgeben oder Speichern von Daten, die dieser Verarbeitung unterzogen worden sind. Ein anderes elektronisches Gerät gemäß dieser Erfindung umfasst: eine beliebige der oben beschriebenen Datenübertragungssteuereinrichtungen; eine Einrichtung zum Durchführen einer gegebenen Verarbeitung an Daten, die an einen anderen Knoten über die Datenübertragungssteuereinrichtung und den Bus gesendet werden sollen, und eine Einrichtung zum Holen von dieser Verarbeitung zu unterziehenden Daten.
  • Gemäß dieser Erfindung ist es möglich, die Verarbeitung zum Ausgeben oder Speichern von Daten, die von einem anderen Knoten an das elektronische Gerät übertragen worden sind, oder die Verarbeitung zum Übertragen von von dem elektronischen Gerät geholten Daten an einen anderen Knoten zu beschleunigen. Diese Erfindung ermöglicht es, die Datenübertragungssteuereinrichtung kompakter zu machen und auch die Verarbeitungslasten auf die Datenübertragung steuernder Firmware zu verringern, wodurch ein elektronisches Gerät produziert werden kann, das preiswerter und kompakter ist.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1A, 1B und 1C dienen zur Veranschaulichung der Konzepte von asynchroner und isochroner Übertragung.
  • 2A und 2B dienen zur Veranschaulichung des Konzeptes von Baumidentifikation.
  • 3 dient zur Veranschaulichung des Konzeptes von Selbstidentifikation.
  • 4A, 4B, 4C und 4D zeigen die Formate von diversen Paketen der physikalischen Schicht wie etwa eines Self-ID-Paketes.
  • 5 dient der Veranschaulichung der IEEE 1394-Protokollkonfiguration.
  • 6 zeigt ein Strukturbeispiel der Datenübertragungssteuereinrichtung nach einer Ausgestaltung der Erfindung.
  • 7 veranschaulicht die Trennung zwischen Header-(Steuerinformations-)gebiet und Datengebiet.
  • 8 zeigt die Struktur eines Vergleichsbeispiels für diese Ausgestaltung.
  • 9 veranschaulicht das Verfahren zur Datenübertragung, das durch die Konfiguration von 8 verwendet wird.
  • 10 veranschaulicht ein anderes Verfahren zur Datenübertragung.
  • 11 veranschaulicht das Verfahren zur Datenübertragung, das von dieser Ausgestaltung der Erfindung verwendet wird.
  • 12 veranschaulicht ein Verfahren, bei dem Header und Daten eines Empfangspaketes getrennt werden und in einem Headergebiet und einem Datengebiet im RAM gespeichert werden.
  • 13 veranschaulicht ein Verfahren, bei dem ein Datenzeiger in einem im Headergebiet gespeicherten Header enthalten ist.
  • 14 veranschaulicht ein Verfahren, bei dem eine Paketformungsschaltung einen von der Paketaufteilungsschaltung übertragenen Datenzeiger nimmt und diesen Datenzeiger an den Header eines Paketes anhängt.
  • 15 veranschaulicht Etiketten.
  • 16 veranschaulicht ein Verfahren zum Steuern der Größe jedes Gebietes im RAM in variabler Weise.
  • 17A, 17B, 17C und 17D veranschaulichen ein Verfahren zum Anhängen von Verbreitungsinformation an einen Paket-Trailer.
  • 18A und 18B veranschaulichen ein Verfahren zum Anhängen von Fehlerstatusinformation an den Trailer eines Paketes sowie zum Ungültigmachen von Daten im RAM, wenn ein Fehler in dem Paket vorhanden ist.
  • 19 veranschaulicht den Self-ID-Zeitraum.
  • 20A und 20B veranschaulichen ein Verfahren zum Nehmen von Information, die angibt, ob ein Paket während des Self-ID-Zeitraumes empfangen wurde oder nicht, und Anhängen dieser Information an den Trailer eines Paketes.
  • 21A und 21B veranschaulichen ein Verfahren zum Nehmen von Information, die an das hinterste Ende eines Paketes in einer Zeitreihe während der Paketformung angehängt wurde und Schreiben dieser Information an das vorderste Ende eines Headers eines Paketes im RAM.
  • 22 zeigt ein Beispiel der Konfiguration auf der Empfängerseite.
  • 23 ist ein Zeitverlaufswellenformdiagramm, das den Betrieb der Empfangsseite veranschaulicht.
  • 24A zeigt das Format eines asynchronen Paketes gemäß dem IEEE 1394-Standard, und 24B zeigt das Format des Headerabschnittes eines asynchronen Empfangspaketes, der im Headergebiet des RAM gespeichert ist.
  • 25A, 25B, 25C und 25D veranschaulichen die Aktualisierung des Headerzeigers und des Datenzeigers.
  • 26A zeigt das Format des Headerabschnittes, wenn ein Paket ein Self-ID-Paket ist, und 26B zeigt das Format des Headerabschnittes, wenn ein Paket ein PHY-Paket ist, das kein Self-ID-Paket ist.
  • 27A, 27B und 27C zeigen Beispiele interner Blockdiagramme diverser Arten von elektronischem Gerät.
  • 28A, 28B und 28C zeigen Außenansichten diverser Arten von elektronischem Gerät.
  • BESTE ART, DIE ERFINDUNG AUSZUFÜHREN
  • Bevorzugte Ausgestaltungen dieser Erfindung werden nachfolgend mit Bezug auf die beigefügten Zeichnungen beschrieben.
  • 1. IEEE 1394
  • Die Beschreibung betrifft zunächst einen Abriss von IEEE 1394.
  • 1.1 Datenübertragungsgeschwindigkeit und Verbindungstopologie
  • Der IEEE 1394-Standard (IEEE 1394–1995, P1394.a) ermöglicht Hochgeschwindigkeitsdatenübertragung bei 100 bis 400 Mbps (P1394.b betrifft 800 bis 3200 Mbps). Er ermöglicht auch die Verbindung von Knoten mit unterschiedlichen Übertragungsgeschwindigkeiten mit dem gleichen Bus.
  • Die Knoten sind in einer Baumkonfiguration verbunden, in der ein Maximum von 63 Knoten mit einem Bus verbunden sein kann. Man beachte, dass die Verwendung von Busbrücken die Verbindung von ca. 64000 Knoten ermöglicht.
  • Wenn Energie eingeschaltet wird oder Vorrichtungen bei eingeschalteter Energie abgetrennt oder verbunden worden sind, findet ein Bus-Reset statt, wodurch alle Information, die die Verbindungstopologie betrifft, gelöscht wird. Nach dem Bus-Reset werden Baum-Identifikation (Bestimmung des Wurzelknotens) und Selbstidentifikation durchgeführt. Anschließend werden die Knoten festgelegt, die als Verwaltungsknoten wirken sollen, wie etwa der isochrone Ressourcenverwalter, Zyklus-Master und Busverwalter. Dann beginnt gewöhnliche Paketübertragung.
  • 1.2 Übertragungsverfahren
  • IEEE 1394 sieht asynchrone Übertragung (geeignet für Datenübertragungen, bei denen Zuverlässigkeit erforderlich ist) und isochrone Übertragung (geeignet für Übertragungen von Daten wie etwa bewegten Bildern und Audio, bei denen Echtzeitfähigkeiten erforderlich sind) sowie Paketübertragungsverfahren vor.
  • Ein Beispiel einer asynchronen Subaktion ist in 1A gezeigt. Eine Subaktion besteht aus Arbitrierung, Paketübertragung und Bestätigung. Mit anderen Worten hat Datenübertragung Vorrang, doch zuallererst findet Arbitrierung betreffend das Recht, den Bus zu nutzen, statt. Dann wird ein Paket vom Quellknoten (dem Ursprung der Übertragung) an den Zielknoten (das Ziel der Übertragung) übertragen. Eine Quell-ID und Ziel-ID sind im Header dieses Paketes enthalten. Der Zielknoten liest diese Ziel-ID und stellt fest, ob das Paket an ihn adressiert ist oder nicht. Wenn der Zielknoten das Paket akzeptiert, sendet er ein Bestätigungspaket (ACK) zurück an den Quellknoten.
  • Zwischen der Paketübertragung und dem ACK-Paket besteht eine Bestätigungslücke. Es gibt auch eine Subaktionslücke zwischen einer Subaktion und der nächsten Subaktion. Arbitrierung für die nächste Subaktion kann nicht stattfinden, solange nicht eine feste Bus-Müßigzeit verstrichen ist, die dieser Subaktionslücke äquivalent ist. Dies verhindert Kollisionen zwischen Subaktionen.
  • Ein Beispiel einer isochronen Subaktion ist in 1B gezeigt. Da eine isochrone Übertragung als Verbreitung (Übertragung an alle mit dem Bus verbundenen Knoten) durchgeführt wird, wird kein ACK zurückgesendet, wenn ein Paket empfangen wird. Bei isochroner Übertragung wird Paketübertragung unter Verwendung von Kanalnummern, nicht Knoten-IDs, durchgeführt. Man beachte, dass es eine isochrone Lücke zwischen Subaktionen gibt.
  • Der Zustand des Busses während der Datenübertragung ist in 1C gezeigt. Isochrone Übertragung beginnt, wann immer der Zyklus-Master in festen Intervallen ein Zyklus-Startpaket erzeugt. Dadurch wird für einen Kanal alle 125 μs die Übertragung von wenigstens einem Paket frei gegeben. Dies ermöglicht die Übertragung von Daten, die Echtzeitfähigkeiten erfordern, wie etwa von bewegten Bildern oder Audio.
  • Asynchrone Übertragung findet in Intervallen zwischen isochronen Übertragungen statt. Mit anderen Worten hat isochrone Übertragung eine höhere Priorität als asynchrone Übertragung. Dies wird implementiert, indem die Länge einer isochronen Lücke kürzer als die Länge einer Subaktionslücke während asynchroner Übertragung gemacht wird, wie in 1C gezeigt.
  • 1.3 Baumidentifikation
  • Baumidentifikation wird nach einem Bus-Reset durchgeführt. Während dieser Baum-Identifikation werden die Eltern-Kind-Beziehungen zwischen Knoten und dem Wurzelknoten festgelegt.
  • Zunächst sendet jeder Blattknoten (ein Knoten, der mit nur einem anderen Knoten verbunden ist) eine "Elternbenachrichtigung" (Parent Notification, PN) an den benachbarten Knoten. Wenn Knoten A, B, C, D und E wie zum Beispiel in 2A verbunden sind, wird eine Elternbenachrichtigung vom Knoten A an Knoten B und von den Knoten D und E an Knoten C geschickt.
  • Ein Knoten, der eine Elternbenachrichtigung akzeptiert hat, erkennt, dass der Ursprungsknoten sein eigenes Kind ist. Er sendet dann eine "Kindbenachrichtigung" (Child Notification, CN) an diesen Knoten. In dem in 2A gezeigten Beispiel wird eine Kindbenachrichtigung von Knoten B an Knoten A und von Knoten C an Knoten D und E geschickt. Dies bestimmt die Eltern-Kind-Beziehungen zwischen Knoten B und A, Knoten C und D und Knoten C und E.
  • Die Eltern-Kind-Beziehung zwischen den Knoten B und C wird dadurch festgelegt, welcher von ihnen zuerst eine Elternbenachrichtigung sendet. Wenn zum Beispiel der Knoten C die Elternbenachrichtigung zuerst sendet, wird Knoten B zum Elter und Knoten C zum Kind, wie in 2B gezeigt. Ein Knoten, bei dem alle an dessen Anschlüsse angeschlossenen Knoten eigene Kinder sind, wird zur Wurzel. In 2B ist Knoten B zur Wurzel geworden. Man beachte, dass IEEE 1394 die Möglichkeit zulässt, dass jeder Knoten Wurzel wird.
  • 1.4 Selbstidentifikation
  • Nach der Baumidentifikation wird Selbstidentifikation durchgeführt. Während der Selbstidentifikation werden Self-ID-Pakete der Reihe nach beginnend mit den in der Verbindungstopologie am weitesten von der Wurzel entfernten Knoten übertragen.
  • Genauer gesagt verbreitet der Knoten A, der mit Anschluss 1 (dem Anschluss mit der kleineren Nummer) des Wurzelknotens B in der in 3 exemplarisch gezeigten Konfiguration verbunden ist, ein Self-ID-Paket (Selbstidentifikationspaket) an alle Knoten.
  • Knoten C, der mit Anschluss 2 (dem Knoten mit der größeren Nummer) des Wurzelknotens B verbunden ist, wird dann gewählt, und der Knoten D, der mit dem Anschluss 1 (dem Anschluss mit der kleineren Nummer) des Knotens C verbunden ist, verbreitet ein Self-ID-Paket. Knoten E, der mit dem Anschluss 2 (dem Anschluss mit der größeren Nummer) des Knotens C verbunden ist, verbreitet dann ein Self-ID-Paket, gefolgt von Knoten C. Schließlich verbreitet Knoten B, der die Wurzel ist, ein Self-ID-Paket, und die Selbstidentifikation ist vollständig.
  • Die ID jedes Knotens ist in dem Self-ID-Paket dieses Knotens enthalten. Die ID dieses Knotens ist die Gesamtzahl von Self-ID-Paketen, die von anderen Knoten bis zu dem Zeitpunkt empfangen worden sind, an dem dieser Knoten sein eigenes Self-ID-Paket verbreitet. Betrachtet man das in 3 gezeigte Beispiel, so hat an dem Zeitpunkt, an dem Knoten A verbreitet, noch kein Knoten ein Self-ID-Paket verbreitet, so dass die ID des Knotens A zu 0 wird. Knoten A verbreitet ein Self-ID-Paket, das die ID mit Wert 0 enthält. Wenn Knoten D verbreitet, hat nur Knoten A ein Self-ID-Paket ausgegeben. Daher wird die ID des Knotens D zu 1. In ähnlicher Weise werden die IDs der Knoten E, C und B zu 2, 3 bzw. 4.
  • Das Format eines Self-ID-Paketes ist in 4A gezeigt. Wie in dieser Figur gezeigt, ist in den Self-ID-Paketen Grundinformation über die Knoten enthalten. Genauer gesagt sind darin Information wie etwa die ID jedes Knotens (PHY_ID), ob die Verknüpfungsschicht aktiv ist oder nicht (L), die Lückenzählung (gap_cnt), die Übertragungsgeschwindigkeit (sp), ob der Knoten die Fähigkeit hat, isochroner Ressourcenverwalter zu werden oder nicht (C), den Ein-/Ausschaltzustand (pwr) und die Anschlusszustände (p0, p1, p2) enthalten.
  • Man beachte, dass 4B das Format von Self-ID-Paketen #1, #2 und #3 zeigt, die verwendet werden, wenn ein Knoten vier oder mehr Anschlüsse hat. Wenn ein Knoten zwischen 4 und 11 Anschlüssen hat, werden Self-ID-Pakete #0 (4A) und #1 verwendet; wenn ein Knoten zwischen 12 und 19 Anschlüssen hat, werden Self-ID-Pakete #0, #1 und #2 verwendet; und wenn ein Knoten zwischen 20 und 27 Anschlüssen hat, werden Self-ID-Pakete #0, #1, #2 und #3 verwendet.
  • Die Formate eines Verknüpfung-Ein-Paketes (Link-on-Paket) und eines PHY-Konfigurationspaketes, die in ähnlicher Weise wie die Self-ID-Pakete Pakete der physikalischen Schicht (PHY-Pakete) sind, sind in 4C und 4D gezeigt.
  • 1.5 Isochroner Ressourcenverwalter
  • Der isochrone Ressourcenverwalter (IRM) hat die nachfolgend beschriebenen Verwaltungsfunktionen.
  • Zunächst stellt er die diversen für isochrone Übertragung notwendigen Ressourcen bereit. Zum Beispiel liefert er ein Kanalnummernregister und ein Bandbreitenregister. Zweitens liefert er ein Register, das die ID des Busverwalters angibt. Drittens übernimmt er manche der Busverwaltungsfunktionen, wenn es keinen anderen Busverwalter gibt.
  • Unter den Knoten, die die Fähigkeit haben, isochroner Ressourcenverwalter (IRM) zu werden (die in der Lage sind, isochrone Ressourcen zu verwalten), und die außerdem in einem betriebsbereiten Zustand (mit aktiver Verknüpfungsschicht) sind, das heißt unter den Knoten, die qualifiziert sind, IRM zu werden, wird derjenige Knoten zum IRM, der der Wurzel am nächsten liegt (der Knoten mit der höchsten ID). Genauer gesagt wird unter den Knoten, die Self-ID-Pakete (siehe 4A) haben, bei denen das C-(contender)Bit, das angibt, ob dieser Knoten IRM-Fähigkeit hat oder nicht, und das L-(Link_active)Bit, das angibt, ob die Verknüpfungsschicht aktiv ist oder nicht, beide 1 sind, der der Wurzel am nächsten liegende Knoten (der Knoten mit der größten PHY_ID) zum IRM. Wenn das C-Bit und das L-Bit des Wurzelknotens beide 1 sind, wird zum Beispiel der Wurzelknoten zum IRM.
  • 1.6 Zyklusmaster und Busverwalter
  • Der Zyklusmaster hat die Funktion, das in 1C gezeigte Zyklusstartpaket auszugeben, und der Wurzelknoten wird zum Zyklusmaster.
  • Der Busverwalter führt Aufgaben wie etwa die Erzeugung einer Topologiekarte (die Verbindungszustände aller Knoten), die Erzeugung einer Geschwindigkeitskarte, die Verwaltung von Energie für den Bus, die Festlegung des Zyklus-Masters und die Optimierung der Lückenzählung aus.
  • 1.7 Protokollkonfiguration
  • Die Beschreibung wendet sich nun der Protokollkonfiguration (Schichtstruktur) des IEEE 1394 mit Bezug auf 5 zu. Das IEEE 1394-Protokoll umfasst eine physikalische Schicht, eine Verknüpfungsschicht und eine Transaktionsschicht. Die serielle Busverwaltungsfunktion überwacht und steuert die physikalische Schicht, die Verknüpfungsschicht und die Transaktionsschicht und liefert diverse Funktionen zum Steuern von Knoten und Verwalten von Busressourcen.
  • Die physikalische Schicht wandelt die von der Verknüpfungsschicht verwendeten logischen Symbole in elektrische Signale um, führt Busarbitrierung aus und definiert die physikalische Busschnittstelle.
  • Die Verknüpfungsschicht stellt Funktionen wie etwa Adressierung, Datenprüfung, Datenrahmung und Zykluskontrolle bereit.
  • Die Transaktionsschicht definiert das Protokoll für Transaktionen wie etwa Lesen, Schreiben und Verriegeln.
  • Die physikalische Schicht und die Verknüpfungsschicht sind üblicherweise durch Hardware wie etwa eine Datenübertragungssteuereinrichtung (Schnittstellenchip) implementiert. Die Transaktionsschicht ist entweder durch Firmware, die auf der CPU läuft, oder Hardware implementiert.
  • 2. Gesamtkonfiguration
  • Die Gesamtkonfiguration dieser Ausgestaltung wird nachfolgend mit Bezug auf 6 beschrieben.
  • In 6 ist eine PHY-Schnittstelle 10 eine Schaltung, die eine Schnittstelle mit einem PHY-Chip bildet, der das Protokoll der physikalischen Schicht implementiert.
  • Ein Verknüpfungskern 20 (Verknüpfungsmittel) ist eine Schaltung, die einen Teil des Verknüpfungsschichtprotokolls und des Transaktionsschichtprotokolls implementiert; er stellt diverse Dienste bereit, die die Paketübertragung zwischen Knoten betreffen. Ein Register 22 ist vorgesehen, um den Verknüpfungskern 20, der diese Protokolle implementiert, zu steuern.
  • Ein FIFO(ATF) 30, FIFO(ITF) 32 und FIFO(RF) 34 sind FIFOs für asynchrone Übertragung, isochrone Übertragung bzw. Empfang, wobei jeder durch Hardwaremittel wie etwa Register oder Halbleiterspeicher implementiert ist. Bei dieser Ausgestaltung haben diese FIFOs 30, 32 und 34 eine sehr kleine Zahl von Stufen. Zum Beispiel ist die Zahl von Stufen pro FIFO vorzugsweise nicht mehr als drei und besonders bevorzugt nicht mehr als zwei.
  • DMACs 40, 42 und 44 sind DMA-Controller für ATF, ITF bzw. RF. Die Verwendung dieser DMACs 40, 42 und 44 ermöglicht es, Daten zwischen einem RAM 80 und dem Verknüpfungskern 20 zu übertragen, ohne über eine CPU 66 zu laufen. Man beachte, dass ein Register 46 Kontrolle etwa über die DMACs 40, 42 und 44 gibt.
  • Eine Anschlussschnittstelle 50 ist eine Schaltung, die eine Schnittstelle zu Anwendungsschichteinrichtungen (wie zum Beispiel Druckertreibern) herstellt. Bei dieser Ausgestaltung der Erfindung macht es die Verwendung dieser Anschlussschnittstelle 50 zum Beispiel möglich, 8-Bit-Daten zu übertragen.
  • Ein FIFO(PF) 52 ist ein FIFO, das zur Übertragung von Daten zwischen einer Anwendungsschichteinrichtung verwendet wird, und ein DMAC 54 ist ein DMA-Controller für PF. Ein Register 56 gibt Kontrolle über die Anschlussschnittstelle 50 und den DMAC 54.
  • Eine CPU-Schnittstelle 60 stellt eine Schnittstelle zur CPU 66 her, die die Datenübertragungssteuereinrichtung kontrolliert. Die CPU-Schnittstelle 60 umfasst einen Adressdecoder 62, einen Datensynchronisierer 63 und einen Interupt-Controller 64. Ein Taktcontroller 68 steuert die von dieser Ausgestaltung verwendeten Taktsignale, und ein vom PHY-Chip gesendetes SCLK-Signal und ein einen Master-Takt darstellendes HCLK-Signal werden darin eingegeben.
  • Ein Pufferverwalter 70 ist eine Schaltung, die die Schnittstelle zum RAM 80 verwaltet. Der Pufferverwalter 70 umfasst ein Register 72 zum Steuern des Pufferverwalters, eine Arbitrierungsschaltung 74, die die Busverbindung zum RAM 80 arbitriert, und einen Sequenzierer 76, der diverse Steuersignale erzeugt.
  • Das RAM 80 wirkt als ein Paketspeichermittel mit wahlfreiem Zugriff, wobei diese Funktion durch SRAM oder DRAM o. dgl. implementiert ist. In dieser Ausgestaltung der Erfindung ist das RAM 80 unterteilt in ein Headergebiet (allgemein gesagt ein Steuerinformationsgebiet) und ein Datengebiet, wie in 7 gezeigt. Der Header eines Paketes (allgemein gesprochen, Steuerinformation) wird im Headergebiet von 7 gespeichert, und die Daten des Paketes werden in deren Datengebiet gespeichert.
  • Man beachte, dass das RAM 80 vorzugsweise in der Datenübertragungssteuereinrichtung dieser Ausgestaltung untergebracht ist. Es ist jedoch auch möglich, das ganze RAM 80 oder einen Teil davon extern anzuschließen.
  • Ein Bus 90 (oder Busse 92 und 94) dienen für Verbindungen zu Anwendungen, wie etwa ein erster Bus. Ein anderer Bus 96 (oder Bus 98) dient zum Steuern der Datenübertragungssteuervorrichtung als ein zweiter Bus, der elektrisch mit einer Einrichtung (wie etwa einer CPU) verbunden ist, die die Datenübertragungssteuereinrichtung steuert. Noch ein weiterer Bus 100 (oder Busse 102, 104, 105, 106, 107, 108 und 109) dienen für elektrische Verbindungen zu Einrichtungen der physikalischen Schicht (wie etwa dem PHY-Chip) als ein dritter Bus. Ein weiterer Bus 110 (ein vierter Bus) dient für elektrische Verbindungen mit einem RAM, das als Speichermittel mit wahlfreiem Zugriff wirkt.
  • Die Arbitrierungsschaltung 74 im Pufferverwalter 70 arbitriert Buszugriffsanforderungen vom DMAC 40, dem DMAC 42, dem DMAC 44, der CPU-Schnittstelle 60 und dem DMAC 54. Basierend auf den Ergebnissen dieser Arbitrierung wird ein Datenweg zwischen einem der Busse 105, 107, 109, 98 und 94 und dem Bus 110 des RAM 80 hergestellt (das heißt, ein Datenweg wird zwischen einem unter erstem, zweitem und drittem Bus und dem vierten Bus hergestellt).
  • Ein Merkmal dieser Ausgestaltung ist die Art und Weise, wie sie mit dem RAM 80 ausgestattet ist, das Pakete in wahlfrei zugänglicher Weise speichert, sowie die gegenseitig unabhängigen Busse 90, 96 und 100 sowie die Arbitrierungsschaltung 74 zum Verbinden eines dieser Busse mit dem Bus 110 des RAM 80.
  • Eine Datenübertragungssteuereinrichtung, die eine andere Konfiguration als diejenige dieser Ausgestaltung hat, ist in 8 beispielhaft gezeigt. Bei dieser Datenübertragungssteuervorrichtung ist ein Verknüpfungskern 902 mit einem PHY-Chip durch eine PHY-Schnittstelle und einen Bus 922 verbunden. Der Verknüpfungskern 902 ist mit einer CPU 912 durch FIFOs 904, 906 und 908, eine CPU-Schnittstelle 910 und einen Bus 920 verbunden. Die CPU 912 ist außerdem mit einem RAM 914, das lokaler Speicher in der CPU ist, durch einen Bus 924 verbunden.
  • Man beachte, dass die FIFOs 904, 906 und 908 von den FIFOs 30, 32 und 34 von 6 darin unterschieden sind, dass sie eine extrem große Zahl von Stufen (wie etwa 16 Stufen pro FIFO) haben.
  • Das Verfahren zur Datenübertragung, das mit der wie in 8 gezeigt konfigurierten Datenübertragungssteuereinrichtung eingesetzt wird, wird nun mit Bezug auf 9 beschrieben. Ein von einem anderen Knoten über einen PHY-Chip 930 gesendetes Empfangspaket passiert über den Bus 922, eine Datenübertragungssteuervorrichtung 932 und den Bus 920 und wird dann von der CPU 912 akzeptiert. Die CPU 912 schreibt das akzeptierte Empfangspaket über den Bus 924 in das RAM 914. Die CPU 912 verarbeitet das Empfangspaket in eine Form, die von der Anwendungsschicht verarbeitet werden kann und überträgt sie dann an eine Anwendungsschichteinrichtung 934 über einen Bus 926.
  • Wenn die Anwendungsschichteinrichtung 934 Daten überträgt, schreibt andererseits die CPU 912 diese Daten in das RAM 914. Ein Header wird an die Daten im RAM 914 angehängt, um ein Paket zu erzeugen, das IEEE 1394 entspricht. Das so erzeugte Paket wird an einen anderen Knoten über den die Datenübertragungssteuereinrichtung 932 und den PHY-Chip 30 umfassenden Pfad gesendet.
  • Allerdings ist, wenn dieses Datenübertragungsverfahren verwendet wird, die Verarbeitungslast auf der CPU 912 extrem hoch. Dies bedeutet, dass selbst wenn es eine hohe Übertragungsgeschwindigkeit über den seriellen Bus, der die Knoten verbindet, gibt, die tatsächliche Übertragungsgeschwindigkeit des gesamten Systems durch Faktoren wie etwa Verarbeitungsoverheads der CPU 912 verringert wird, so dass es letztlich nicht möglich ist, Hochgeschwindigkeitsdatenübertragung zu implementieren.
  • Ein Verfahren, das zum Lösen dieses Problems in Betracht gezogen werden kann, verwendet Hardware-DMA, um Datenübertragung zwischen der Datenübertragungssteuereinrichtung 932 und dem RAM 914 und Datenübertragung zwischen dem RAM 914 und der Anwendungsschichteinrichtung 934 zu implementieren, wie in 10 gezeigt. Allerdings muss bei diesem Verfahren ein CPU-Bus 928 für Datenübertragungen zwischen der Datenübertragungssteuereinrichtung 932 und dem RAM 914, zwischen dem RAM 914 und der CPU 912 und zwischen dem RAM 914 und der Anwendungsschichteinrichtung 934 verwendet werden. Dies bedeutet, dass wenn ein Versuch gemacht wird, die Geschwindigkeit der Datenübertragungen in dem gesamten System zu erhöhen, ein Hochgeschwindigkeitsbus wie etwa ein PCI-Bus als CPU-Bus 928 verwendet werden muss, was zu einer Steigerung der Kosten von diese Datenübertragungssteuervorrichtung verwendenden elektronischen Geräten führt.
  • Im Gegensatz dazu gewährleistet diese Ausgestaltung der Erfindung, dass der Bus 90 zwischen einer Datenübertragungssteuereinrichtung 120 und einer Anwendungsschicht 124, der CPU-Bus 96 und der Bus 110 zwischen der Datenübertragungssteuereinrichtung 120 und dem RAM 80 voneinander wie in 11 gezeigt getrennt sind. Die Konfiguration ist daher derart, dass der CPU-Bus 96 allein zum Steuern der Datenübertragung genutzt werden kann. Zusätzlich ist der Bus 90 dediziert, so dass er für Datenübertragung zwischen der Datenübertragungssteuereinrichtung 120 und der Anwendungsschicht 124 verwendet werden kann. Wenn zum Beispiel das elektronische Gerät, in dem die Datenübertragungssteuereinrichtung 120 eingebaut ist, ein Drucker ist, kann der Bus 90 für die ausschließliche Übertragung von Druckdaten verwendet werden. Als Ergebnis kann die Verarbeitungslast der CPU 66 verringert und die tatsächliche Übertragungsgeschwindigkeit des gesamten Systems erhöht werden. Zusätzlich kann eine preiswerte Einrichtung als CPU 66 verwendet werden, und es ist auch nicht mehr notwendig, einen Hochgeschwindigkeitsbus wie etwa den CPU-Bus 96 zu verwenden. Dies gewährleistet, dass das elektronische Gerät noch preiswerter und kompakter gefertigt werden kann.
  • 3. Empfangspaketformat
  • 3.1 Merkmale dieser Ausgestaltung
  • In dieser Ausgestaltung der Erfindung ist das Speichergebiet im RAM 80 unterteilt in ein Headergebiet (allgemein gesprochen ein Steuerinformationsgebiet), in dem Paketheader (allgemein gesprochen, Steuerinformation) gespeichert sind, und ein Datengebiet, in dem Paketdaten gespeichert sind, wie in 7 gezeigt.
  • In dem beispielhaft in 8 gezeigten Vergleichsbeispiel muss die CPU 912 Pakete von den FIFOs 904 und 906 in der Reihenfolge akzeptieren, in der sie empfangen wurden. Daher muss die CPU 912, wenn versucht wird, Header und Daten jedes Empfangspaketes zu trennen, erst das aus dem FIFO 908 ausgelesene Empfangspaket zeitweilig im RAM 914 speichern, das ein lokaler Speicher ist, und dann das Empfangspaket aus dem RAM 914 lesen, um Header und Daten zu trennen. Daher ist die Verarbeitungslast auf der CPU 912 sehr hoch, was letztlich zu einer Beeinträchtigung der tatsächlichen Übertragungsgeschwindigkeit des gesamten Systems führt.
  • Im Gegensatz dazu ist der Speicherbereich des RAM 80 in der in 6 gezeigten Ausgestaltung in ein Headergebiet und ein Datengebiet unterteilt. Genauer gesagt werden Header und Daten jedes Empfangspaketes durch die Hardware getrennt, wobei der Header im Headergebiet und die Daten im Datengebiet gespeichert werden, wie in 12 gezeigt. Dies gewährleistet, dass die Verarbeitungslast auf der CPU 66 im Vergleich zur Konfiguration von 8 sehr klein ist, was die tatsächliche Übertragungsgeschwindigkeit des gesamten Systems verbessern kann. Da es außerdem möglich ist, eine preiswerte Einrichtung als CPU 66 zu verwenden und es auch ausreicht, einen langsamen Bus für die Verbindung zur CPU 66 zu verwenden, können die Datenübertragungssteuereinrichtung und elektronisches Gerät bei niedrigeren Kosten kompakter gemacht werden.
  • Bei dieser Ausgestaltung der Erfindung werden Header zusammen im Headergebiet und Daten zusammen im Datengebiet gespeichert. Es ist daher möglich, die Lese- und Schreibverarbeitung von Headern und Daten zu vereinfachen und dadurch eine Verringerung des Verarbeitungsoverheads zu ermöglichen. Betrachtet man zum Beispiel Datenübertragung nach dem Verfahren von 11, so kann die Datenübertragung gesteuert werden, indem die CPU 66 lediglich Zugang zum Headergebiet über den CPU-Bus 96 hat, um Header zu lesen und zu schreiben. Die Anwendungsschichteinrichtung 124 kann auch die Daten aus dem Datengebiet kontinuierlich über den Bus 90 lesen, sowie Daten in das Datengebiet kontinuierlich schreiben.
  • Bei dieser Ausgestaltung der Erfindung ist eine Entsprechung zwischen jedem im Header-Gebiet gespeicherten Header und den im Datengebiet gespeicherten Daten durch einen in dem Header enthaltenen Datenzeiger hergestellt, wie in 13 gezeigt. Die Anhängung dieses Datenzeigers wird wie nachfolgend beschrieben implementiert.
  • Mit anderen Worten umfasst der Verknüpfungskern 20 dieser Ausgestaltung der Erfindung eine Paketformungs-(umformungs)schaltung 160, und der DMAC 44 (allgemein gesprochen das Schreibmittel) umfasst eine Paketaufteilungsschaltung 180 wie in 14 gezeigt. In diesem Fall formt die Paketformungsschaltung 160 jedes von einem anderen Knoten her übertragene Paket in eine Form, die von einer oberen Schicht wie etwa der Transaktionsschicht oder der Anwendungsschicht verarbeitet werden kann. Die Paketaufteilungsschaltung 180 teilt jedes Paket auf und führt dann eine Verarbeitung zum Schreiben von Header und Trailer (Footer) dieses Paketes in das Headergebiet des RAM 80 und der Daten des Paketes in das Datengebiet des RAM 80 aus.
  • Die Paketaufteilungsschaltung 180 übergibt an die Paketformungsschaltung 160 einen Datenzeiger, der die Adresse (Startadresse) von in das Datengebiet geschriebenen Daten angibt. Die Paketformungs-(umformungs)schaltung 160, die den Datenzeiger empfangen hat, hängt dann diesen Datenzeiger an den Header des Paketes an (bettet ihn darin ein). Der Header, an den der Datenzeiger angehängt worden ist, wird in dem in 13 gezeigten Headergebiet gespeichert, und die von dem Datenzeiger bezeichneten Daten werden im Datengebiet gespeichert. In diesem Fall wird die Schreibadresse WADR von Header und Daten durch die Paketaufteilungsschaltung 180 erzeugt.
  • Diese Konfiguration macht es für die Firmware o. dgl., die einen Header aus dem Headergebiet liest, einfach, die Speicheradresse der diesem Header entsprechenden Daten im Datengebiet festzustellen. Zusätzlich wird der Datenzeiger von der Paketformungsschaltung 160 angehängt, so dass es für den DMAC 44 (die Paketaufteilungsschaltung 180) nicht notwendig ist, sich daran zu beteiligen. Der DMAC 44 kann sich daher auf das Schreiben von Daten in das RAM 80 konzentrieren, was die Schaltungskonfiguration und die Verarbeitung des DMAC 44 vereinfacht.
  • Bei dieser Ausgestaltung der Erfindung werden die in 15 erzeugten Etiketten erzeugt, um zwischen Start (Spitze des Headers), Header, Daten und Trailer jedes Empfangspaketes zu unterscheiden, und diese Etiketten werden mit dem Empfangspaket verknüpft. Genauer gesagt gibt der Verknüpfungskern 20, wenn er den Anfang (die Spitze des Headers), Header, Daten und Trailer eines Empfangspaketes an den FIFO 34 überträgt, gleichzeitig die in 15 gezeigten 2-Bit-Etiketten an das FIFO 34 aus. Bei dieser Ausgestaltung werden diese Etiketten, die mit jedem Empfangspaket verknüpft worden sind, verwendet, um Header und Daten des Empfangspaketes zu trennen und sie, wie in 12 gezeigt, jeweils im Header-Gebiet bzw. dem Datengebiet zu speichern. Genauer gesagt legt die Paketaufteilungsschaltung 180 des DMAC 44 die DTAG-Codes (Etiketten) fest, die von dem FIFO 34 zusammen mit dem Empfangspaket ausgegeben werden, um Header und Daten des Empfangspaketes zu trennen und sie basierend auf dem Ergebnis in das RAM 80 zu schreiben. Man beachte, dass die Etiketten alles Mögliche sein können, was wenigstens den Header und die Daten voneinander unterscheidet.
  • Ein Beispiel eines Verfahrens, das Header und Daten eines Empfangspaketes ohne Verwendung von Etiketten trennt, ist ein Verfahren, das einen Tcode (Transaktionscode) innerhalb jedes Headers verwendet. Mit anderen Worten wird der Tcode decodiert, um die Größe des Headers zu prüfen, ein dieser Größe entsprechender Teil des Empfangspaketes wird im Header-Gebiet gespeichert, und der Rest wird im Datengebiet gespeichert.
  • Dieses Verfahren erfordert jedoch eine Schaltung zum Decodieren des Tcode, so dass die Schaltungen umfangreicher werden.
  • Wenn stattdessen Etiketten verwendet werden, kann der DMAC 44 Header und Daten eines Empfangspaketes durch einfache Betrachtung der Etiketten unterscheiden. Es ist daher möglich, den Header und die Daten jedes Empfangspaketes durch einen einfachen Prozess zu trennen, ohne den Umfang der Schaltungen wesentlich zu erhöhen.
  • Man beachte, dass das Header-Gebiet des RAM 80 nach dieser Ausgestaltung vorzugsweise in getrennte Gebiete für Empfang und Übertragung unterteilt ist, wie in 16 gezeigt. Entsprechend könnte das Datengebiet in Gebiete für Empfang und Senden sowie in Gebiete für isochrone Übertragung und asynchrone Übertragung unterteilt werden. Zusätzlich zum Header-Gebiet und Datengebiet ist es auch bevorzugt, Arbeitsgebiet für die CPU 66 bereitzustellen, das von diesen Gebieten getrennt ist.
  • Wenn das Speichergebiet des RAM 80 in eine Mehrzahl von Gebieten unterteilt ist, ist es außerdem bevorzugt, dass die Größe eines jeden Gebietes variabel gesteuert werden kann. Genauer gesagt können Zeiger P1 bis P6, welche die Adressen der Grenzen der Gebiete angeben, variabel gesteuert werden, wie in 16 gezeigt. Dies macht es möglich, für jede Anwendung die optimale Gebietsaufteilung zu implementieren. In diesem Fall ist es bevorzugt, dass die Größe jedes Gebietes im RAM 80 nach dem Einschalten dynamisch und variabel gesteuert werden kann. Dies macht es möglich, während Empfangsverarbeitung das Gebiet für den Empfang zu vergrößern oder während Sendeverarbeitung das Gebiet für das Senden zu vergrößern, was die effiziente Nutzung begrenzter Ressourcen ermöglicht.
  • Bei dieser Ausgestaltung der Erfindung wird BC (allgemein gesagt, Verbreitungsinformation (Broadcast information)), die angibt, ob das Paket an alle mit dem Bus verbundenen Knoten gesendet worden ist oder nicht, an einen Teil des Paketes wie etwa den Trailer (allgemein gesprochen, Steuerinformation) während der Paketformung angehängt, wie in 17A gezeigt.
  • Mit anderen Worten umfasst asynchrone Übertragung gemäß IEEE 1394 eine dem Paket zugeordnete 16-Bit-Ziel-ID (DestID) zum Spezifizieren des Knotens, der dessen Übertragungsziel ist. Die Konfiguration ist derart, dass der Verknüpfungskern (Verknüpfungsschicht) die obere Schicht wie etwa die Firmware (die Transaktionsschicht) nicht informiert, wenn das Paket an einen anderen Knoten adressiert ist, wie in 17B gezeigt. Dies erlaubt es, eine unnötige Verarbeitung der Firmware wie etwa Decodieren der 16-Bit-DestID, zu verhindern.
  • Wenn die in einem Paket enthaltene DestID 0 × 3F ist, ist dieses Paket an alle Knoten übertragen worden. Daher überträgt der Verknüpfungskern dieses Paket an die obere Schicht. Die Firmware muss daher die DestID dieses Paketes ggf. decodieren, um festzustellen, ob es verbreitet worden ist oder nicht.
  • Wenn die DestID 0 × 3F ist, wird die Verbreitungsinformation BC gemäß dieser Ausgestaltung der Erfindung auf 1 gesetzt, wie in 17C gezeigt. Wenn die DestID nicht 0 × 3F ist, wird hingegen BC gleich 0 gesetzt, wie in 17D gezeigt. Diese Konfiguration macht es möglich, festzulegen, ob ein Paket verbreitet worden ist oder nicht, indem einfach der Wert des einen Bits BC geprüft wird. Mit anderen Worten kann die Firmware feststellen, ob das Paket verbreitet worden ist oder nicht, ohne die 16-Bit-Ziel-ID decodieren zu müssen. Dies bedeutet, dass die Firmware die Ziel-ID nicht decodieren muss, was die Verarbeitungslast auf der Firmware reduziert. Im Ergebnis kann die tatsächliche Übertragungsgeschwindigkeit des gesamten Systems verbessert werden.
  • Diese Ausgestaltung der Erfindung hängt HCE, die angibt, ob im Header oder einem anderen Teil des Paketes ein Fehler enthalten ist (allgemein gesagt, Fehlerstatusinformation), an ein anderes Teil des Paketes wie etwa den Trailer (allgemein gesagt, Steuerinformation) während der Paketformung an, wie in 18A gezeigt.
  • Diese Ausgestaltung macht es der Firmware möglich, festzustellen, ob ein Fehler in dem Paket vorgelegen hat oder nicht, indem einfach der Wert des 1-Bit-HCE überprüft wird. Mit anderen Worten kann die Firmware feststellen, ob ein Fehler in dem Paket vorgelegen hat oder nicht, ohne den 32-Bit-Header-CRC zu kontrollieren. Als Ergebnis kann die Verarbeitungslast auf der Firmware verringert werden, was eine Verbesserung in der tatsächlichen Übertragungsgeschwindigkeit des gesamten Systems darstellt.
  • Man beachte, dass es bevorzugt ist, die Daten eines in das Datengebiet geschriebenen Paketes ungültig zu machen, wenn festgestellt wird, dass ein Fehler in dem Paket vorhanden ist. Genauer gesagt kehrt, wenn festgestellt wird, dass ein Fehler in einem Paket, das in 18B Daten 3 umfasst (wenn HCE = 1 ist), der Datenzeiger DP an die Anfangsadresse des Gebietes zurück, in dem Daten 3 gespeichert sind. Dies ermöglicht es, die Kontinuität von Daten in dem Datengebiet zu wahren. Mit anderen Worten wird es möglich, ausschließlich korrekte Daten in dem Datengebiet kontinuierlich zu speichern, wodurch es der Anwendungssoftware ermöglicht wird, nur korrekte Daten in Folge aus dem Datengebiet zu lesen.
  • Außerdem kann die Firmware aus HCE wissen, ob ein Fehler in dem Paket vorgelegen hat oder nicht, so dass die Firmware anfordern kann, dass ein geeigneter Knoten das Paket neu überträgt. Die so konfigurierte Ausgestaltung der Erfindung ermöglicht es, die Verarbeitungslast auf der Firmware und der Anwendungssoftware zu verringern, was eine Verbesserung in der Gesamtübertragungsgeschwindigkeit des gesamten Systems ermöglicht.
  • Man beachte, dass an Stelle eines Header-CRC-Fehlers auch ein beliebiger anderer Fehler wie etwa ein Daten-CRC-Fehler als Fehlerstatusinformation angesehen werden könnte.
  • Während eines Self-ID-Zeitraumes werden Self-ID-Pakete von allen an den Bus angeschlossenen Knoten wie in 19 gezeigt gesendet. Das erste Quadlet eines jeden Self-ID-Paketes stellt die Daten selbst (Körper) dar und umfasst Grundinformation wie etwa die Knoten-ID, und das zweite Quadlet ist Paritätsinformation (Fehlerprüfinformation), die das Inverse des ersten Quadlets ist (für Details siehe 4A).
  • Mit einer Datenübertragungssteuereinrichtung der in 8 als Beispiel gezeigten Konfiguration wird eine Reihe von Self-ID-Paketen wie in 20A gezeigt geformt. Mit anderen Worten wird jedes Self-ID-Paket, das ein Paket der physikalischen Schicht ist, durch Anschluss eines Headers geformt, der eine Schnittstelle zu einer oberen Schicht (Transaktionsschicht oder Anwendungsschicht) bildet. Das so geformte Paket wird im RAM 914 gespeichert, das der lokale Speicher für die CPU 912 ist.
  • Es ist jedoch notwendig, über die gleiche Anzahl von Self-ID-Paketen zu verfügen, wie der Anzahl von Knoten entspricht, so dass, wenn zum Beispiel 63 Knoten an den Bus angeschlossen sind, ein Minimum von 63 Self-ID-Paketen beibehalten werden muss. Mit anderen Worten gibt es üblicherweise eine extreme Anzahl von Self-ID-Paketen. Wenn ein Header an jedes Self-ID-Paket angehängt wird und die resultierenden Pakete unverändert im RAM gespeichert werden, wird daher die freie RAM-Kapazität verringert, und es wird unmöglich, die Ressourcen jedes Knotens effizient zu nutzen. Außerdem muss die Firmware die notwendige Verarbeitung für die Annahme jedes einzelnen dieser Self-ID-Pakete ausführen. Daher nimmt mit zunehmender Anzahl der Self-ID-Pakete auch die Verarbeitungslast auf der Firmware zu. Außerdem muss die Arbeit des Formens dieser akzeptierten Self-ID-Pakete erledigt werden, nachdem der Self-ID-Zeitraum geendet hat, mit anderen Worten, nachdem ein Bus-Reset aufgetreten ist und dann eine anfängliche Arbitrierungs-Resetlücke aufgetreten ist. Daher nimmt mit zunehmender Zahl der Self-ID-Pakete auch die mit der Formung dieser Pakete zusammenhängende Verarbeitungslast zu.
  • Bei dieser Ausgestaltung der Erfindung wird eine Folge von Paketen, die eingesendet werden, zu einem Paket geformt, das einen aus einem Header (allgemein gesprochen aus Steuerinformation) bestehenden Rahmen und Daten aus dieser Reihe von Self-ID-Paketen umfasst, wie in 20B gezeigt. Mit anderen Worten wird die Folge von Self-ID-Paketen umgepackt in ein einziges Paket, und ein einziger Header wird an dieses umgepackte Paket angehängt, um eine Schnittstelle zu oberen Schichten zu bilden.
  • Diese Konfiguration beseitigt erfolgreich die Situation, bei der die freie Kapazität des RAM (des RAM 80 von 6), welches das Paketspeichermittel ist, verringert wird. Zusätzlich gewährleistet diese Ausgestaltung der Erfindung, dass nur ein umgepacktes Paket verwendet wird, auch wenn N Self-ID-Pakete vorhanden sind. Es ist daher ausreichend, einen einzigen Paketlesevorgang auszuführen, um dieses umgepackte Paket in das RAM zu lesen. Dies bedeutet, dass die Verarbeitungslast auf der Firmware dramatisch verringert werden kann.
  • Außerdem hängt diese Ausgestaltung der Erfindung BR, was Statusinformation ist, die angibt, ob das Paket während des Self-ID-Zeitraumes empfangen wurde, an den Trailer (allgemein gesprochen an Steuerinformation) jedes Paketes an, wie in 20B gezeigt. Mit anderen Worten enthalten von der physikalischen Schicht gehandhabte PHY-Pakete zusätzlich zu Self-IF-Paketen Link-on-Pakete und PHY-Konfigurationspakete, wie in 4A bis 4D gezeigt. Bei dieser Ausgestaltung der Erfindung ist bevorzugt, dass die Firmware zwischen Self-ID-Paketen und anderen PHY-Paketen (Link-on-Paketen und PHY-Konfigurationspaketen) auf einfache Weise unterscheiden kann. Dies liegt daran, dass an das Self-ID-Paket ein Datenzeiger angehängt wird, so dass die Firmware das Self-ID-Paket anders als andere PHY-Pakete handhabt.
  • Es ist jedoch nicht möglich, zu unterscheiden, welcher Typ von PHY-Paket zu verarbeiten ist, auch wenn Tcode, der durch IEEE 1394 standardisiert worden ist, als Information zum Unterscheiden des Pakettyps verwendet wird.
  • Bei dieser Ausgestaltung der Erfindung wird BR, der angibt, ob das Paket während des Self-ID-Zeitraumes empfangen wurde, an den Trailer jedes Paketes angehängt, wie in 20B gezeigt. Dies ermöglicht es der Firmware o. dgl., auf einfache Weise zu unterscheiden, ob ein Paket ein Self-ID-Paket oder ein anderes PHY-Paket ist, wodurch die Verarbeitungslast verringert wird.
  • Man beachte, dass diese Ausgestaltung der vorliegenden Erfindung vorzugsweise die Paritätsinformation im zweiten Quadlet jedes Self-ID-Paketes löscht und den Datenabschnitt des umgepackten Paketes formt, indem es die Self-ID-Pakete ohne die gelöschten Paritäten (die Daten der Self-ID-Pakete) verknüpft. Dies ermöglicht es, die Größe des umgepackten Paketes auf etwa die Hälfte eines durch Nicht-Löschen der Paritäten gebildeten Paketes zu verringern, was eine weitere Verringerung der Kapazität des RAM ermöglicht, die zum Speichern des Self-ID-Paketes erforderlich ist.
  • Wenn ein Zielknoten ein Paket durch asynchrone Übertragung empfängt, sendet der Ziel-(Übertragungsziel)Knoten ein ACK an den Quell-(Übertragungsursprungs-)Knoten, wie mit Bezug auf 1A beschrieben. Gleichzeitig nimmt der Verknüpfungskern des Zielknotens das an den Quellknoten gesendete ACK und hängt es an das empfangene Paket an. Dies macht es möglich, das an den Quellknoten gesendete ACK an eine obere Schicht wie etwa die Firmware zu übertragen. Genauer gesagt hängt die Paketformungsschaltung 160 von 14 das ACK an den Trailer an, wie in 21A gezeigt. Dieses ACK ist ein 4-Bit-Code, der verwendet werden kann, um einen Zustand wie etwa Bestätigung komplett, Bestätigung anhängig, Bestätigung beschäftigt oder Bestätigungsfehler anzuzeigen.
  • Allerdings wird das ACK an den Trailer angehängt, der das hinterste Ende einer zeitlichen Folge während der Paketformung ist, und das ACK wird an das hinterste Ende des Headers im RAM geschrieben, wie in 21A gezeigt. Dies bedeutet, dass die nachfolgend beschriebene Verarbeitung durchgeführt werden muss, wenn die Firmware das ACK bestätigt. Zunächst decodiert die Firmware den 4-Bit-Tcode am vordersten Ende des Headers, um die Größe des Headers zu überprüfen. Dann berechnet sie basierend auf dieser Headergröße die Adresse, an der das ACK (Trailer) gespeichert ist, und liest das ACK. Die Verarbeitung zur Bestätigung des ACK ist daher eine hohe Last auf der Firmware, die jegliche Verbesserung der tatsächlichen Übertragungsgeschwindigkeit des gesamten Systems verhindert. Insbesondere wenn es einen Bestätigungsfehler o. dgl. gibt, ist die Verarbeitung zur Bestätigung des ACK völlig vergeblich.
  • Bei dieser Ausgestaltung der Erfindung könnte die gegebene Information wie etwa das ACK, die an das hinterste Ende des Paketes in zeitlicher Reihenfolge während der Paketformung angehängt wird, an das vorderste Ende des Headers des Paketes (zum Beispiel in das allererste Quadlet) im RAM geschrieben werden, wie in 21B gezeigt. Dies würde es der Firmware ermöglichen, die gegebene Information wie etwa das ACK zu bestätigen, ohne den Tcode zu decodieren. Dies liegt daran, dass das ACK o. dgl. am vordersten Ende des Headers gespeichert ist und es daher nicht notwendig ist, Details wie etwa die Größe des Headers aus dem Tcode zu überprüfen.
  • Man beachte, dass es auch möglich ist, die Headerlänge (Headergröße) festzulegen und die gegebene Information wie etwa das ACK in das Header-Gebiet zu schreiben. Wenn die Headerlänge auf diese Weise festgelegt ist, kann die Firmware auf die gegebene Information in einfacher Weise zugreifen, unabhängig davon, welches Quadlet in welchem Header fester Länge innerhalb des Header-Gebietes die gegebene Information wie etwa das ACK enthält. In einem solchen Falle ist es bevorzugter, diese gegebene Information im anfänglichen oder abschließenden Quadlet eines beliebigen Headers fester Länge innerhalb des Header-Gebietes zu schreiben. Diese Konfiguration macht es möglich, die Kontinuität von Daten im Header besser aufrecht zu erhalten, als wenn die gegebene Information anderswo als im anfänglichen oder abschließenden Quadlet des Headers fester Länge gespeichert ist.
  • Zusätzlich zu dem ACK (an den Quellknoten gesendete Bestätigungsinformation) könnten andere Arten von Information als die oben beschriebene gegebene Information betrachtet werden, zum Beispiel spd (Geschwindigkeitscodeinformation zum Spezifizieren der Geschwindigkeit der Datenübertragung), BC (Verbreitungsinformation, die angibt, ob das Paket an alle an den Bus angeschlossenen Knoten gesendet worden ist oder nicht), BR (Information, die angibt, ob das Paket während des Self-ID-Zeitraumes empfangen wurde oder nicht) oder HCE (Fehlerstatusinformation, die angibt, ob es einen Fehler in dem Paket gegeben hat oder nicht).
  • 3.2 Konfiguration
  • Ein detailliertes Beispiel der Konfiguration des Verknüpfungskernes 20, des FIFO 34 und des DMAC 44 ist in 22 gezeigt. Der Verknüpfungskern 20 umfasst eine Busüberwachungsschaltung 130, eine Seriell-Parallel-Umwandlungsschaltung 132 und eine Paketformungsschaltung 160. Die Paketformungsschaltung 160 umfasst eine Paketdiagnoseschaltung 142, einen Sequenzierer 167, einen Puffer 168 und einen Selektor 170, und die Paketdiagnoseschaltung 142 umfasst eine Etikettenerzeugungsschaltung 162, eine Header/Trailer-Erzeugungsschaltung 164 und eine Fehlerprüfschaltung 166.
  • Die Busüberwachungsschaltung 130 überwacht den 8-Bit-Datenbus D und den 2-Bit-Steuerbus CTL, die durch die PHY-Schnittstelle 10 mit dem PHY-Chip verbunden sind.
  • Die Seriell-Parallel-Umwandlungsschaltung 132 wandelt die Daten auf dem Datenbus D in 32-Bit-Daten um. Wenn zum Beispiel die Übertragungsgeschwindigkeit 400 Mbps ist, werden 8-Bit-Daten in 32-Bit-Daten umgewandelt; wenn die Übertragungsgeschwindigkeit 200 Mbps ist, werden 4-Bit-Daten in 32-Bit-Daten umgewandelt; und wenn die Übertragungsgeschwindigkeit 100 Mbps ist, werden 2-Bit-Daten in 32-Bit-Daten umgewandelt.
  • Die Paketdiagnoseschaltung 142 ist eine Schaltung, die Pakete diagnostiziert. Die Etikettenerzeugungsschaltung 162 erzeugt Etiketten zum Begrenzen von Header, Daten, Trailer etc., und die Header/Trailer-Erzeugungsschaltung 164 erzeugt Header und Trailer (Footer). Die Fehlerprüfschaltung 166 untersucht Fehlerprüfinformation wie etwa Paritätsinformation, die in jedem Paket enthalten ist, um Fehler darin zu erfassen.
  • Der Sequenzierer 167 erzeugt diverse Steuersignale. Der Puffer 168 und der Selektor 170 wählen unter DI von der Seriell-Parallel-Umwandlungsschaltung 132, einem Header und Trailer von der Paketdiagnoseschaltung 142 oder Datenzeigern von DMAC 44 unter Verwendung eines SEL-Signals von der Paketdiagnoseschaltung 142 eines aus.
  • Der FIFO 34 wirkt als ein Puffer zum Anpassen der Phase von RD (Ausgabedaten vom Verknüpfungskern 20) und der Phase von WDATA (in das RAM 80 zu schreibende Daten), und er umfasst eine FIFO-Zustandsbeurteilungsschaltung 35. Die FIFO-Zustandsbeurteilungsschaltung 35 setzt ein EMPTY-Signal auf aktiv, wenn der FIFO leer ist, und ein FULL-Signal auf aktiv, wenn der FIFO voll ist.
  • Der DMAC 44 (Schreibmittel) umfasst eine Paketaufteilungsschaltung 180, eine Zugriffsanforderungsausführungsschaltung 190 und eine Zugriffsanforderungserzeugungsschaltung 192.
  • Die Paketaufteilungsschaltung 180 ist eine Schaltung, die Pakete, die von der Paketformungsschaltung 160 geformt worden sind, aufteilt und dann die Header und Trailer in das Header-Gebiet des RAM 80 und die Daten in dessen Datengebiet schreibt (siehe 12). Die Paketaufteilungsschaltung 180 umfasst eine Etikettenbestimmungsschaltung 182, eine Zeigeraktualisierungsschaltung 184 und eine Adressenerzeugungsschaltung 188.
  • Die Etikettenbestimmungsschaltung 182 identifiziert die von der Etikettenerzeugungsschaltung 162 erzeugten Etiketten (DTAG).
  • Die Zeigeraktualisierungsschaltung 184 empfängt eine Ausgabe von der Etikettenbestimmungsschaltung 182 und aktualisiert den Headerzeiger (allgemein gesprochen, einen Steuerinformationszeiger) und einen Datenzeiger zum Schreiben des Headers und der Daten in das RAM 80.
  • Die Adressenerzeugungsschaltung 188 empfängt eine Ausgabe von der Zeigeraktualisierungsschaltung 184 und gibt eine Schreibadresse WADR an das RAM 80 aus.
  • Die Zugriffsanforderungsausführungsschaltung 190 führt Zugriffsanforderungen vom Verknüpfungskern 20 aus. Wenn das FULL-Signal von der FIFO-Zustandsbeurteilungsschaltung 35 aktiv ist, setzt die Zugriffsanforderungsausführungsschaltung 190 ein FFULL-Signal auf aktiv. Der Sequenzierer 167 in der Paketformungsschaltung 160 setzt RDS, das ein RD-(R × Data)-Impulssignal ist, auf aktiv, wenn FFULL nicht aktiv ist. Man beachte, dass RFAIL ein Signal ist, das vom Sequenzierer 167 verwendet wird, um die Zugriffsanforderungsausführungsschaltung 190 zu informieren, dass ein Empfang fehlgeschlagen ist.
  • Die Zugriffsanforderungserzeugungsschaltung 192 gibt eine Zugriffsanforderung an das RAM 80 aus. Die Zugriffsanforderungserzeugungsschaltung 192 empfängt WACK (eine Schreibbestätigung vom Pufferverwalter 70) und EMPTY von der FIFO-Zustandsbeurteilungsschaltung 35 und gibt WREQ (eine Schreibanforderung) an den Pufferverwalter 70 aus.
  • 3.3 Empfangsseitiger Betrieb
  • Der Betrieb dieser Ausgestaltung wird nun mit Bezug auf das Zeitablaufswellenformdiagramm von 23 beschrieben.
  • Die Beschreibung betrifft zunächst den Betrieb des Verknüpfungskernes 20.
  • Wenn ein Paket von einem anderen Knoten über den PHY-Chip empfangen wird, diagnostiziert die Paketdiagnoseschaltung 142 dieses Paket. Dann erzeugt (formt) die Header/Trailer-Erzeugungs schaltung 164 einen Header. Dieser Header wird über den Puffer 168 in den Selektor 170 eingegeben, und der Selektor 170 wählt diesen Header auf Grundlage des SEL-Signals von der Paketdiagnoseschaltung 142. Dies gewährleistet, dass der Header (H0 bis H4) als RD an das FIFO 34 ausgegeben wird, wie bei A1 in 23 gezeigt.
  • Man beachte, dass das Format eines über den seriellen Bus (die IEEE 1394-Norm) übertragenes asynchrones Paket in 24A gezeigt ist. Das Format des Header-Abschnittes des asynchronen Empfangspaketes, der im Header-Gebiet des RAM 80 gespeichert ist, ist in 24B gezeigt (der schraffierte Abschnitt in dieser Figur stellt den Trailer dar). In der wie oben konfigurierten Ausgestaltung wird ein Paket im Format von 24A zu einem Paket im Format von 24B geformt, um zu gewährleisten, dass es von einer oberen Schicht wie etwa Firmware verwendet werden kann.
  • Bei dieser Ausgestaltung der Erfindung wird das vierte Quadlet H4 des Headers (bei A2 in 23) ein Datenzeiger zum Holen von Daten aus dem Datengebiet, wie in 24B gezeigt. Dieser Datenzeiger (H4) wird aus dem DMAC 44 (der Zeigeraktualisierungsschaltung 184) in den Selektor 170 über den Puffer 168 eingegeben, und der Selektor 170 wählt diesen. Auf diese Weise akzeptiert die Paketformungsschaltung 160 den Datenzeiger vom DMAC 44, und dieser Datenzeiger wird in den Header eingebettet, der in das RAM 80 geschrieben wird.
  • Der Datenabschnitt des Paketes wird dann vom PHY-Chip über den Datenbus D gesendet. Die Seriell-Parallel-Umwandlungsschaltung 132 wandelt diesen Datenabschnitt in 32-Bit-Daten DI und gibt sie an die Paketdiagnoseschaltung 142 und den Puffer 168 aus.
  • Man beachte, dass DIE ein Signal ist, das angibt, ob DI freigegeben oder gesperrt ist, und DIS ein Signal zum Bestimmen der Zeitlage zum Abholen von DI ist.
  • Das DI-Signal aus der Seriell-Parallel-Umwandlungsschaltung 132 wird über den Puffer 168 in den Selektor 170 eingegeben, und der Selektor 170 wählt es. Dies bewirkt, dass Daten D0 bis Dn als RD an das FIFO 34 ausgegeben werden, wie unter A3 gezeigt.
  • Ein Trailer aus der Header/Trailer-Erzeugungsschaltung 164 wird dann über den Puffer 168 in den Selektor 170 eingegeben, und der Selektor 170 wählt diesen. Dies bewirkt, dass der Trailer (H5, der in 24B schraffiert dargestellte Abschnitt) als RD an das FIFO 34 ausgegeben wird, wie bei A4 dargestellt.
  • Die Etikettenerzeugungsschaltung 162 erzeugt Etiketten zum Begrenzen der als RD ausgegebenen Information. In dieser Ausgestaltung der Erfindung hat jedes Etikett zwei Bits, wie in 15 gezeigt, wobei (00), (01), (10) und (11) Header, Trailer, Daten bzw. Start (Spitze des Headers) bezeichnen. Daher ändern sich die in 23 beispielhaft gezeigten Etiketten in der Reihenfolgen: (11), (00), ..., (10), ..., (01). Die Konfiguration ist derart, dass 34-Bit-Daten, die aus diesen 2-Bit-Etiketten und dem 32-Bit-RD bestehen, in das FIFO 34 eingegeben werden.
  • Die Beschreibung wendet sich nun dem Betrieb des FIFO 34 zu.
  • Das FIFO 34 empfängt Etiketten und RD vom Verknüpfungskern 20 und gibt diese als DTAG und WDATA aus, wie bei A5 und A6 dargestellt.
  • Die FIFO-Zustandsbeurteilungsschaltung 35 innerhalb des FIFO 34 verwendet einen internen Zähler, um die Anzahl von Datenobjekten (FIFO-Zählung) im FIFO 34 zu zählen. Wenn das FIFO 34 voll wird (wenn die Anzahl von Datenobjekten 2 ist), geht FULL auf aktiv (hoch), wie bei A7 in 23 gezeigt. Wenn das FIFO 35 leer wird (wenn die Anzahl von Datenobjekten 0 ist), wird EMPTY aktiv, wie bei A8 gezeigt. Die Tatsache, dass das FIFO 34 voll ist, wird durch FULL und FFULL der Zugriffsanforderungsausführungsschaltung 190 im DMAC 44 und dem Sequenzierer 167 im Verknüpfungskern 20 signalisiert. Die Tatsache, dass das FIFO 34 leer ist, wird durch EMPTY der Zugriffsanforderungserzeugungsschaltung 192 im DMAC 44 signalisiert.
  • Die Beschreibung wendet sich nun dem Betrieb des DMAC 44 zu.
  • Die Zugriffsanforderungserzeugungsschaltung 152 setzt WREQ auf aktiv, wie bei A10 dargestellt, wenn EMPTY inaktiv (niedrig) ist, wie bei A9 gezeigt (was anzeigt, dass das FIFO 34 nicht leer ist). Wenn WACK vom Pufferverwalter 70 akzeptiert wird, geht WREQ auf inaktiv.
  • Bei dieser Ausgestaltung der Erfindung haben Zugriffsanforderungen vom DMAC 44 die höchste Priorität bei der Busarbitrierung für den Empfang. Daher hat WREQ Priorität, wenn es einen Konflikt zwischen WREQ von DMAC 44 und Other WREQ von der CPU-Schnittstelle 60 und dem DMAC 54 für Anschlüsse gibt, wie bei A10 und A11 gezeigt. Mit anderen Worten wird WACK vor Other WACK aktiv, wie bei A12 und A13 gezeigt. Der Grund, weshalb WREQ auf diese Weise Priorität bekommt, wenn ein Konflikt zwischen WREQ und Other WREQ vorliegt, wird nachfolgend diskutiert. Unter IEEE 1394 werden, anders als bei SCSI und anderen derartigen Standards, Pakete von anderen Knoten der Reihe nach, synchronisiert mit dem Übertragungstakt, übertragen. Es ist daher notwendig, den übertragenen Paketen Priorität zu geben und sie der Reihe nach, ohne zu pausieren, in dem RAM 80 zu speichern.
  • Bei dieser Ausgestaltung der Erfindung wird eine Zugriffsanforderung vom DMAC 44 nur eine gegebene Zeit lang zwischen der Annahme von Zugriffsanforderungen von der CPU-Schnittstelle 60 und dem DMAC 54 für Anschlüsse warten gelassen, wie bei A14 gezeigt. Dies bedeutet, dass RD vom Verknüpfungskern 20 und WDATA zum Pufferverwalter 70 nicht synchronisiert sind. Aus diesem Grund ist diese Ausgestaltung der Erfindung mit dem FIFO 34 zum Anpassen der Phasen von RD und WDATA ausgestattet. In diesem Fall könnte das FIFO 34 mit der minimal notwendigen Zahl von Stufen für die Phasenanpassung (vorzugsweise nicht mehr als drei Stufen, besonders bevorzugt nicht mehr als zwei Stufen) ausgestattet sein.
  • Die Etikettenbestimmungsschaltung 182, die in der Paketaufteilungsschaltung 180 enthalten ist, legt jedes DTAG, das vom FIFO 34 zusammen mit WDATA ausgegeben wird, fest, um zu identifizieren, ob WDATA sich auf den Start (Spitze des Headers), den Header, die Daten oder den Trailer bezieht. Die Zeigeraktualisierungsschaltung 184 aktualisiert den Headerzeiger und den Datenzeiger basierend auf diesem Ergebnis. Die Adressenerzeugungsschaltung 188 erzeugt dann WADR (die Schreibadresse für WDATA) basierend auf dem aktualisierten Headerzeiger und Datenzeiger.
  • Genauer gesagt inkrementiert (allgemeiner gesprochen: aktualisiert), wenn anhand des DTAG festgelegt wird, dass WDATA zum Beispiel der Start des Headers ist, die Zeigeraktualisierungsschaltung 184 den Headerzeiger HP, wie in 25 gezeigt. Die Adressenerzeugungsschaltung 188 gibt WADR entsprechend dem so inkrementierten Headerzeiger aus, wie bei A15 in 23 gezeigt.
  • Wenn aus dem DTAG festgelegt worden ist, dass WDATA Daten ist, inkrementiert die Zeigeraktualisierungsschaltung 184 den Datenzeiger DP, wie in 25B gezeigt. Dieser Datenzeiger DP ist äquivalent zu H4, was in das vierte Quadlet des Headers durch die Paketformungsschaltung 160 eingebettet worden ist. Die Adressenerzeugungsschaltung 188 gibt WADR entsprechend dem so inkrementierten Datenzeiger aus, wie bei A16 in 23 dargestellt.
  • Wenn aus dem DTAG bestimmt worden ist, dass WDATA ein Trailer ist, inkrementiert die Zeigeraktualisierungsschaltung 184 den Headerzeiger, wie in 25C gezeigt. Die Adressenerzeugungsschaltung 188 gibt WADR entsprechend dem so inkrementierten Headerzeiger aus, wie bei A17 in 23 gezeigt.
  • Man beachte, dass der Headerzeiger zuletzt die untere Grenze des Headerabschnittes des Paketes, das verarbeitet worden ist (die obere Grenze des Headerabschnittes des nächsten Paketes) anzeigt, wie in 25D gezeigt. Der Headerzeiger wird gesetzt, um die untere Grenze des Datenabschnittes des Paketes (die obere Grenze des Datenabschnittes des nächsten Paketes) anzuzeigen. Die Endpositionen des Headerzeigers und des Datenzeigers werden auf ein Headerzeigereinstellregister und ein Datenzeigereinstellregister in dem Register 46 von 6 rückgeschrieben, sofern der Empfang nicht gescheitert ist (RFAIL inaktiv ist).
  • Wie oben beschrieben, ist es möglich, das Paket aufzuteilen und den Inhalt in angemessener Weise in das Header-Gebiet und das Datengebiet zu schreiben.
  • Man beachte, dass die Einstellungen der Grenzen, die das Gebiet des RAM 80 unterteilen, wie etwa die Grenze zwischen dem Header-Gebiet und dem Datengebiet (P1 bis P6 in 16) implementiert werden, indem die CPU 66 (Firmware o. dgl.) Zeiger setzt, die die Adressen der Grenzen bezeichnen, und sie über die CPU-Schnittstelle 60 in die Zeigereinstellregister in dem Register 46 sendet.
  • Wenn das Datengebiet in eine Mehrzahl von Gebieten unterteilt ist (wenn es in Gebiete für isochrone Übertragung und anisochrone Übertragung unterteilt ist, wie zum Beispiel in 16 gezeigt, oder in Gebiete für erste und zweite asynchrone Übertragungen), ist es bevorzugt, dass Paketdaten in eines dieser mehreren Gebiete basierend auf Steuerinformation des Paketes wie etwa zum Beispiel Tcode geschrieben werden.
  • Genauer gesagt sei angenommen, dass der DMAC 44 eine Mehrzahl von Datenzeigern wie etwa erste und zweite Datenzeiger an die Paketformungsschaltung 160 übergibt (es ist auch möglich, drei oder mehr Datenzeiger auf diese Weise zu übergeben), wie in 22 gezeigt. Die Paketformungsschaltung 160 wählt den ersten Datenzeiger von DMAC 44 während isochroner Übertragung (oder während der zweiten asynchronen Übertragung) oder den zweiten Datenzeiger von DMAC 44 während asynchroner Übertragung (oder während der ersten asynchronen Übertragung, wenn es mehr als eine gibt). Mit anderen Worten legt die Paketdiagnoseschaltung 142 in der Paketformungsschaltung 160 basierend auf Steuerinformation des Paketes wie etwa Tcode fest, ob es sich um eine isochrone Übertragung oder eine anisochrone Übertragung handelt (oder ob es die zweite asynchrone Übertragung oder die erste asynchrone Übertragung ist), und steuert basierend auf diesem Festlegungsergebnis das SEL-Signal. Die Konfiguration ist derart, dass von erstem und zweitem Datenzeiger, die über den Puffer 168 in den Selektor 170 eingegeben werden, einer durch diesen gewählt wird. Dieses bewirkt die Einbettung des ersten Datenzeigers in ein Paket für isochrone Übertragung (oder zweite asynchrone Übertragung) und des zweiten Datenzeigers in ein Paket für asynchrone Übertragung (oder erste asynchrone Übertragung, wenn es mehr als eine gibt). Als Ergebnis ist es möglich, Daten in einem spezifischen Gebiet innerhalb des Datengebietes kontinuierlich zu speichern. Mit anderen Worten können Bewegtbilddaten von einer Digitalkamera kontinuierlich in dem Datengebiet für isochrone Übertragung und Druckdaten für einen Drucker kontinuierlich in dem zweiten Datengebiet für asynchrone Übertragung gespeichert werden (Speicherung von Steuerdaten wie etwa Befehlsdaten und Statusdaten im ersten Datengebiet für asynchrone Übertragung).
  • Bei dieser Ausgestaltung der Erfindung wird spd (Geschwindigkeitscodeinformation zum Spezifizieren der Geschwindigkeit der Datenübertragung), BC (Verbreitungsinformation, die angibt, ob das Paket an alle an den Bus angeschlossenen Knoten gesendet worden ist oder nicht), HCE (Fehlerstatusinformation, die angibt, ob in dem Paket ein Fehler aufgetreten ist oder nicht) oder ACK (Bestätigungsinformation, die an den Quellknoten gesendet worden ist) an das hinterste Ende des Headers angehängt, wie in 24B gezeigt. Diese Objekte spd, BC, HCE und ACK werden von der Header/Trailer-Erzeugungsschaltung 164 innerhalb des Verknüpfungskernes 20 von 22 erzeugt und durch die Funktionen des Puffers 168 und des Selektors 170 angehängt.
  • Die Fehlerprüfschaltung 166 von 22 prüft den Header-CRC des Empfangspaketes, und wenn sie einen Fehler in dem Header des Empfangspaketes findet, setzt sie HCE auf 1. Wenn HCE auf 1 gesetzt ist, geht RFAIL auf aktiv. Wenn RFAIL auf aktiv geht, wird die Endposition des Datenzeigers (H4 + (n + 1) in 25D) nicht in den Datenzeigereinstellregister innerhalb des Registers 46 von 6 rückgeschrieben. Dies implementiert eine Verarbeitung, die den Datenzeiger DP an die Quelle zurückgibt und Daten 3 ungültig macht, wie mit Bezug auf 18B beschrieben.
  • Das Format des Headerabschnittes, der in dem Headergebiet des RAM 80 gespeichert wird, wenn das Paket ein Self-ID-Paket ist, ist in 26A gezeigt, und das Format des Headerabschnittes, der in dem Header-Gebiet gespeichert wird, wenn das Paket ein anderes PHY-Paket als ein Self-ID-Paket ist, ist in 26B gezeigt.
  • Wenn ein Paket ein in dem Self-ID-Zeitraum gesendetes Self-ID-Paket ist, wird BR, das angibt, ob das Paket in dem Self-ID-Zeitraum empfangen wurde oder nicht, auf 1 gesetzt, wie in 26A gezeigt. Wenn das Paket ein Link-on-Paket oder ein PHY-Konfigurationspaket ist, das außerhalb des Self-ID-Zeitraumes gesendet wurde, wird BR auf 0 gesetzt, wie in 26B gezeigt. Dies ermöglicht es der Firmware, zwischen diesen Paketen zu unterscheiden, auch wenn der Tcode 0 × E derselbe ist.
  • Man beachte, dass spd, BC, HCE, ACK und BR in 24B, 26A und 26B am hintersten Ende des Headers angehängt dargestellt sind, dass aber spd, BC, HCE, ACK und BR genauso gut am vordersten Ende des Headers angehängt sein könnten, wie mit Bezug auf 21B beschrieben wurde.
  • 4. Elektronisches Gerät
  • Die Beschreibung wendet sich nun Beispielen von elektronischem Gerät zu, das die Datenübertragungssteuereinrichtung nach dieser Ausgestaltung enthält.
  • Ein internes Blockdiagramm eines Druckers, der ein Beispiel eines solchen elektronischen Gerätes ist, ist in 27A gezeigt, wobei eine Außenansicht desselben in 28A gezeigt ist. Eine CPU (Mikrocomputer) 510 hat diverse Funktionen, darunter die, das gesamte System zu steuern. Ein Betriebsabschnitt 511 ist konstruiert, um dem Benutzer zu ermöglichen, den Drucker zu betreiben. Daten wie etwa ein Steuerprogramm und Zeichensätze sind in einem ROM 516 gespeichert, und ein RAM 518 wirkt als Arbeitsbereich für die CPU 510. Ein Anzeigeschirm 519 ist ausgelegt, um den Benutzer über den Betriebszustand des Druckers zu informieren.
  • Druckdaten, die von einem anderen Knoten wie etwa einem Personalcomputer über einen PHY-Chip 502 und eine Datenübertragungssteuereinrichtung 500 gesendet wurden, werden direkt an einen Druckverarbeitungsabschnitt 512 über einen Bus 504 gesendet. Die Druckdaten werden einer gegebenen Verarbeitung durch den Druckverarbeitungsabschnitt 512 unterzogen und zum Drucken auf Papier durch einen Druckabschnitt (eine Einrichtung zur Datenausgabe) 514 ausgegeben.
  • Ein internes Blockdiagramm eines Scanners, der ein anderes Beispiel eines elektronischen Gerätes ist, ist in 27B gezeigt, wobei eine Außenansicht desselben in 28B gezeigt ist. Eine CPU 520 hat diverse Funktionen, darunter die, das gesamte System zu steuern. Ein Betriebsabschnitt 521 ist ausgelegt, um dem Benutzer zu ermöglichen, den Scanner zu betreiben. Daten wie etwa ein Steuerprogramm sind in einem ROM 526 gespeichert, und ein RAM 528 dient als Arbeitsbereich für die CPU 520.
  • Ein Bild eines Dokumentes wird durch einen Bildleseabschnitt (eine Einrichtung zum Holen von Daten) 522 eingelesen, die Komponenten wie etwa eine Lichtquelle und einen optoelektrischen Wandler umfasst, und Daten des eingelesenen Bildes werden von einem Bildverarbeitungsabschnitt 524 verarbeitet. Die verarbeiteten Bilddaten werden direkt über einen Bus 505 an die Datenübertragungssteuereinrichtung 500 gesendet. Die Datenübertragungssteuereinrichtung 500 erzeugt Pakete durch Anfügen von Headern u. dgl. an diese Bilddaten und sendet dann diese Pakete über den PHY-Chip 502 an einen anderen Knoten wie etwa einen Personalcomputer.
  • Ein internes Blockdiagramm eines CD-R-Laufwerkes, das ein weiteres Beispiel eines elektronischen Gerätes ist, ist in 27C gezeigt, wobei eine Außenansicht desselben in 28C gezeigt ist. Eine CPU 530 hat diverse Funktionen, darunter die, das gesamte System zu steuern. Ein Betriebsabschnitt 531 ist ausgelegt, um dem Benutzer zu ermöglichen, das CD-R-Laufwerk zu betreiben. Daten wie etwa ein Steuerprogramm sind in einem ROM 536 gespeichert, und ein RAM 538 wirkt als Arbeitsbereich für die CPU 530. Daten, die aus einer CD-R 532 durch einen Schreib/Leseabschnitt (eine Vorrichtung zum Holen von Daten oder eine Vorrichtung zum Speichern von Daten) 533 ausgelesen worden sind, die Komponenten wie etwa einen Laser, einen Motor und ein optisches System umfasst, werden in einen Signalverarbeitungsabschnitt 534 eingegeben, wo sie einer gegebenen Signalverarbeitung wie etwa Fehlerkorrektur unterzogen werden. Die Daten, die dieser Signalverarbeitung unterzogen worden sind, werden direkt über einen Bus 506 an die Datenübertragungssteuereinrichtung 500 gesendet. Die Datenübertragungssteuereinrichtung 500 erzeugt Pakete durch Anfügen von Headern und dergl. an diese Daten und sendet dann diese Pakete über den PHY-Chip 502 an einen anderen Knoten wie etwa einen Personalcomputer.
  • Daten, die von einem anderen Knoten über den PHY-Chip 502 und die Datenübertragungssteuereinrichtung 500 eingesendet worden sind, werden hingegen direkt über den Bus 506 an den Signalverarbeitungsabschnitt 534 gesendet. Die Daten werden dann einer gegebenen Signalverarbeitung durch den Signalverarbeitungsabschnitt 534 unterzogen und dann durch einen Schreib-/Leseabschnitt 533 auf der CD-R 532 gespeichert.
  • Man beachte, dass eine andere CPU für die Datenübertragungssteuerung durch die Datenübertragungssteuereinrichtung 500 zusätzlich zu der CPU 510, 520 oder 530 von 27A, 27B oder 27C vorgesehen sein könnte.
  • Die Verwendung der Datenübertragungssteuereinrichtung dieser Ausgestaltung in einem elektronischen Gerät ermöglicht es, Hochgeschwindigkeitsdatenübertragung durchzuführen. Daher kann, wenn ein Benutzer einen Ausdruck von einem Personalcomputer o. dgl. ausführen will, der Ausdruck mit einer kleinen Zeitverzögerung vollendet werden. Entsprechend kann ein Benutzer ein gescanntes Bild mit nur kurzer Zeitverzögerung nach dem Anweisen des Scanners zum Aufnehmen eines Bildes sehen. Es ist auch möglich, mit hoher Geschwindigkeit Daten von einer CD-R zu lesen oder Daten auf eine CD-R zu schreiben. Die vorliegende Erfindung macht es auch einfach, mehrere mit einem Hostsystem verbundene elektronische Geräte oder eine Mehrzahl von mit mehreren Hostsystemen verbundenen elektronischen Geräten zu benutzen.
  • Die Verwendung der Datenübertragungssteuereinrichtung nach dieser Ausgestaltung in elektronischem Gerät verringert auch die Verarbeitungslast auf auf der CPU laufender Firmware, was es ermöglicht, eine preiswerte CPU und langsame Busse zu verwenden, was Verringerungen von Kosten und Größe der Datenübertragungssteuereinrichtung ermöglicht und so Kosten und Größe des elektronischen Gerätes verringert.
  • Man beachte, dass das elektronische Gerät, das eine Datenübertragungssteuereinrichtung gemäß der vorliegenden Erfindung verwenden kann, nicht auf die oben beschriebenen Ausgestaltungen beschränkt ist, und dass diverse andere Beispiele in Betracht gezogen werden können, wie etwa diverse Typen von optischen Plattenlaufwerken (CD-ROM oder DVD), magnetooptische Plattenlaufwerke (MO), Festplattenlaufwerke, Fernseher, Videorecorder, Videokameras, Audiogeräte, Telefone, Projektoren, Personalcomputer, elektronische Datenbücher und dedizierte Wortprozessoren.
  • Man beachte ferner, dass die vorliegende Erfindung nicht auf die hier beschriebenen Ausgestaltungen beschränkt ist und diverse Abwandlungen im Umfang der Erfindung, wie durch die hier dargelegten Ansprüche definiert, möglich sind.
  • Zum Beispiel ist die Konfiguration der Datenübertragungssteuereinrichtung gemäß der vorliegenden Erfindung vorzugsweise die in 6 gezeigte, ist aber nicht hierauf beschränkt. Insbesondere ist die Erfindung, die oben beschrieben wurde als bezogen auf Verbreitungsinformation, Fehlerstatusinformation oder Information, die angibt, ob ein Paket während eines Selbstidentifikationszeitraumes empfangen wurde oder nicht, wobei diese Information an Steuerinformation des Paketes angehängt wird oder gegebene Information, die am hintersten Ende einer zeitlichen Folge ist, an das vorderste Ende der Steuerinformation des Paketes geschrieben wird, nicht auf die Konfiguration der 6 beschränkt, sondern es können diverse andere Konfigurationen hierfür verwendet werden, wie etwa die in 8 gezeigte.

Claims (14)

  1. Datenübertragungssteuereinrichtung zum Übertragen von Daten zwischen einer Mehrzahl von mit einem Bus verbundenen Knoten, wobei die Datenübertragungssteuereinrichtung umfasst: Paketformungsmittel (160) zum Formen jedes Paketes, das von einem Knoten übertragen worden ist, in eine Form, die von einer oberen Schicht verwendet werden kann; gekennzeichnet durch: Paketaufteilungsmittel (180) zum Schreiben von Steuerinformation des so geformten Paketes in ein Steuerinformationsgebiet eines wahlfrei zugreifbaren Speichermittels (80) und von Daten des so geformten Paketes in ein Datengebiet des Speichermittels (80); wobei das Paketaufteilungsmittel (180) eingerichtet ist, an das Paketformungsmittel (160) einen Datenzeiger zu übergeben, der eine Adresse von in das Datengebiet geschriebenen Daten anzeigt; und wobei das Paketformungsmittel (160) eingerichtet ist, den von dem Paketaufteilungsmittel (180) übergebenen Datenzeiger zu nehmen und den Datenzeiger an Steuerinformation des Paketes anzuhängen, und diese in das Steuerinformationsgebiet des Speichermittels (80) schreibt.
  2. Datenübertragungssteuereinrichtung nach Anspruch 1, bei dem das Paketformungsmittel (160) eingerichtet ist, Etiketteninformation zum Unterscheiden zwischen wenigstens Steuerinformation und Daten eines Paketes zu erzeugen, und außerdem, die so erzeugte Etiketteninformation mit dem Paket zu verknüpfen; und das Paketaufteilungsmittel (180) eingerichtet ist, Steuerinformation des Paketes in das Steuerinformationsgebiet und Daten des Paketes in das Datengebiet basierend auf der mit dem Paket verknüpften Etiketteninformation zu schreiben.
  3. Datenübertragungssteuereinrichtung nach Anspruch 2, bei der das Paketaufteilungsmittel (180) eingerichtet ist, einen Steuerinformationszeiger, der eine Adresse von in das Steuerinformationsgebiet geschriebener Steuerinformation angibt, zu aktualisieren, wenn aus der mit dem Paket verknüpften Etiketteninformation festgestellt wird, dass Steuerinformation des Paketes geschrieben werden soll, oder einen Datenzeiger, der eine Adresse von in das Datengebiet geschriebenen Daten anzeigt, zu aktualisieren, wenn aus der mit dem Paket verknüpften Etiketteninformation festgestellt wird, dass Daten des Paketes geschrieben werden sollen.
  4. Datenübertragungssteuereinrichtung zum Übertragen von Daten zwischen einer Mehrzahl von mit einem Bus verbundenen Knoten, wobei die Datenübertragungssteuereinrichtung umfasst: Paketformungsmittel (160) zum Formen jedes Paketes, das von einem Knoten her übertragen worden ist, in eine Form, die von einer oberen Schicht verwendet werden kann; und Schreibmitteln zum Schreiben des so geformten Paketes in ein Speichermittel (80); dadurch gekennzeichnet, dass das Paketformungsmittel (160) eingerichtet ist, Verbreitungsinformation, die angibt, ob das Paket an alle mit dem Bus verbundenen Knoten gesendet worden ist oder nicht, zu nehmen, und die Verbreitungsinformation an Steuerinformation des Paketes anhängt.
  5. Datenübertragungssteuereinrichtung zum Übertragen von Daten zwischen einer Mehrzahl von mit einem Bus verbundenen Knoten, wobei die Datenübertragungssteuereinrichtung umfasst: Paketformungsmittel (160) zum Formen jedes Paketes, das von einem Knoten her übertragen worden ist, in eine Form, die von einer oberen Schicht verwendet werden kann; und Schreibmitteln zum Schreiben des so geformten Paketes in ein Speichermittel (80); dadurch gekennzeichnet, dass das Paketformungsmittel (160) eingerichtet ist, Fehlerstatusinformation, die angibt, ob ein Fehler in dem Paket vorgelegen hat oder nicht, zu nehmen und die Fehlerstatusinformation an Steuerinformation des Paketes anzuhängen.
  6. Datenübertragungssteuereinrichtung nach Anspruch 5, ferner mit: Paketaufteilungsmitteln (180) zum Schreiben von Steuerinformation des so geformten Paketes in ein Steuerinformationsgebiet des Speichermittels (80) und von Daten des so geformten Paketes in ein Datengebiet des Speichermittels (80); wobei Daten eines Paketes, die in das Datengebiet geschrieben wurden, ungültig gemacht werden, wenn festgestellt wird, dass ein Fehler in dem Paket vorliegt.
  7. Datenübertragungssteuereinrichtung zum Übertragen von Daten zwischen einer Mehrzahl von mit einem Bus verbundenen Knoten, wobei die Datenübertragungssteuervorrichtung umfasst: Paketformungsmittel (160) zum Formen jedes Paketes, das von einem Knoten her übertragen worden ist, in eine Form, die von einer oberen Schicht verwendet werden kann; und Schreibmittel zum Schreiben des so geformten Paketes in ein Speichermittel (80); dadurch gekennzeichnet, dass das Paketformungsmittel (160) eingerichtet ist, Information, die angibt, ob das Paket während eines Selbstidentifikationszeitraumes empfangen wurde oder nicht, zu nehmen und diese Information an Steuerinformation des Paketes anzuhängen.
  8. Datenübertragungssteuervorrichtung zum Übertragen von Daten zwischen einer Mehrzahl von mit einem Bus verbundenen Knoten, wobei die Datenübertragungssteuereinrichtung umfasst: Paketformungsmittel (160) zum Formen jedes Paketes, das von einem Knoten her übertragen worden ist, in eine Form, die von einer oberen Schicht verwendet werden kann; und Schreibmittel zum Schreiben des so geformten Paketes in ein Speichermittel (80); dadurch gekennzeichnet, dass das Paketformungsmittel (160) eingerichtet ist, gegebene Information an das hinterste Ende jedes Paketes in einer zeitlichen Folge anzuhängen, die von jedem Knoten übertragen worden ist, und das Schreibmittel eingerichtet ist, die gegebene Information an das vorderste Ende von Steuerinformation des Paketes in dem Speichermittel (80) zu schreiben.
  9. Datenübertragungssteuervorrichtung nach Anspruch 8, bei der die gegebene Information wenigstens eine der folgenden ist: Bestätigungsinformation, die an den Übertragungsursprung des Paketes gesendet worden ist; Geschwindigkeitscodeinformation zum Spezifizieren der Geschwindigkeit der Datenübertragung; Verbreitungsinformation, die angibt, ob das Paket an alle mit dem Bus verbundenen Knoten gesendet worden ist oder nicht; Information, die angibt, ob das Paket während eines Selbstidentifikationszeitraumes empfangen wurde oder nicht; und Fehlerstatusinformation, die angibt, ob ein Fehler in dem Paket vorlag oder nicht.
  10. Datenübertragungssteuervorrichtung nach einem der Ansprüche 1, 4, 5, 7 und 8, ferner mit: einem ersten Bus, der mit einer Anwendung nächster Stufe verbunden ist; einem zweiten Bus zum Steuern der Datenübertragungssteuervorrichtung; einem dritten Bus, der elektrisch mit einer Einrichtung der physikalischen Schicht verbunden ist; einem vierten Bus, der elektrisch mit dem Speichermittel (80) verbunden ist; und Arbitrierungsmitteln zum Durchführen von Arbitrierung zum Einrichten eines Datenweges zwischen einem beliebigen unter erstem, zweitem und drittem Bus und dem vierten Bus.
  11. Datenübertragungssteuereinrichtung nach einem der Ansprüche 1, 4, 5, 7 und 8, ferner mit: einem FIFO zwischen dem Paketformungsmittel (160) und dem Speichermittel (80).
  12. Datenübertragungssteuereinrichtung nach einem der Ansprüche 1, 4, 5, 7 und 8, bei der Datenübertragung gemäß dem IEEE 1394-Standard durchgeführt wird.
  13. Elektronisches Gerät mit: einer Datenübertragungssteuereinrichtung nach einem der Ansprüche 1 bis 12; einer Vorrichtung zum Durchführen einer gegebenen Verarbeitung an Daten, die von einem anderen Knoten über die Datenübertragungssteuereinrichtung und den Bus empfangen worden sind; und einer Vorrichtung zum Ausgeben oder Speichern von Daten, die dieser Verarbeitung unterzogen worden sind.
  14. Elektronisches Gerät mit: einer Datenübertragungssteuereinrichtung nach einem der Ansprüche 1 bis 12; einer Vorrichtung zum Durchführen einer gegebenen Verarbeitung an Daten, die an einen anderen Knoten über die Datenübertragungssteuereinrichtung und den Bus gesendet werden sollen; und einer Einrichtung zum Holen von der Verarbeitung zu unterziehenden Daten.
DE69935065T 1998-10-27 1999-10-26 Datenübertragungssteuerinrichtung und elektronisches gerät Expired - Lifetime DE69935065T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP32148898A JP3543647B2 (ja) 1998-10-27 1998-10-27 データ転送制御装置及び電子機器
JP32148898 1998-10-27
PCT/JP1999/005902 WO2000025215A1 (fr) 1998-10-27 1999-10-26 Controleur de transfert de donnees et dispositif electronique

Publications (2)

Publication Number Publication Date
DE69935065D1 DE69935065D1 (de) 2007-03-22
DE69935065T2 true DE69935065T2 (de) 2007-06-28

Family

ID=18133129

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69935065T Expired - Lifetime DE69935065T2 (de) 1998-10-27 1999-10-26 Datenübertragungssteuerinrichtung und elektronisches gerät

Country Status (8)

Country Link
US (1) US6839347B1 (de)
EP (1) EP1049019B1 (de)
JP (1) JP3543647B2 (de)
KR (1) KR100464468B1 (de)
CN (1) CN1146798C (de)
DE (1) DE69935065T2 (de)
TW (1) TW449696B (de)
WO (1) WO2000025215A1 (de)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3608441B2 (ja) * 1999-07-15 2005-01-12 セイコーエプソン株式会社 データ転送制御装置及び電子機器
JP3539287B2 (ja) 1999-07-15 2004-07-07 セイコーエプソン株式会社 データ転送制御装置及び電子機器
US6639918B1 (en) * 2000-01-18 2003-10-28 Apple Computer, Inc. Method and apparatus for border node behavior on a full-duplex bus
JP4505985B2 (ja) * 2000-12-04 2010-07-21 ソニー株式会社 データ転送方法、データ転送装置、通信インターフェース方法および通信インターフェース装置
JP4166956B2 (ja) * 2001-01-12 2008-10-15 パイオニア株式会社 データ伝送システム、コネクション確立方法及び情報伝送装置
JP3870717B2 (ja) * 2001-05-14 2007-01-24 セイコーエプソン株式会社 データ転送制御装置及び電子機器
US7324220B1 (en) * 2001-07-09 2008-01-29 Lexmark International, Inc. Print performance under the windows® operating system
US9836424B2 (en) 2001-08-24 2017-12-05 Intel Corporation General input/output architecture, protocol and related methods to implement flow control
US20030115513A1 (en) 2001-08-24 2003-06-19 David Harriman Error forwarding in an enhanced general input/output architecture and related methods
WO2003019394A1 (en) 2001-08-24 2003-03-06 Intel Corporation A general input/output architecture, protocol and related methods to support legacy interrupts
US7177971B2 (en) 2001-08-24 2007-02-13 Intel Corporation General input/output architecture, protocol and related methods to provide isochronous channels
US7734812B2 (en) * 2002-06-06 2010-06-08 International Business Machines Corporation Method and apparatus for processing outgoing internet protocol packets
JP2004056376A (ja) * 2002-07-18 2004-02-19 Fujitsu Ltd 半導体装置及びデータ転送制御方法
DE10302363A1 (de) * 2003-01-22 2004-08-05 Deutsche Thomson-Brandt Gmbh Verfahren zum Betreiben eines Netzwerks von Schnittstellenknoten und Schnittstelleneinrichtung
US7512695B2 (en) * 2003-05-07 2009-03-31 Avago Technologies General Ip (Singapore) Pte. Ltd. Method and system to control the communication of data between a plurality of interconnect devices
US7443785B2 (en) * 2004-03-17 2008-10-28 Sony Ericsson Mobile Communications Ab Selective error correction for ad hoc networks having multiple communication modes
US7826457B2 (en) * 2004-05-11 2010-11-02 Broadcom Corp. Method and system for handling out-of-order segments in a wireless system via direct data placement
US20060176895A1 (en) * 2005-02-07 2006-08-10 Yakov Kamen Data delivery pipeline optimized by cell-based data cascade technology
US7996583B2 (en) * 2006-08-31 2011-08-09 Cisco Technology, Inc. Multiple context single logic virtual host channel adapter supporting multiple transport protocols
US7870306B2 (en) * 2006-08-31 2011-01-11 Cisco Technology, Inc. Shared memory message switch and cache
DE102017208824B4 (de) * 2017-05-24 2022-12-29 Wago Verwaltungsgesellschaft Mbh Busumsetzer
KR101988171B1 (ko) * 2018-04-27 2019-06-11 벨로넥트 인코퍼레이션 접속된 노드들에 향상된 속도의 버스를 제공하기 위한 기기
DE102018115100A1 (de) * 2018-06-22 2019-12-24 Krohne Messtechnik Gmbh Verfahren zur Fehlerbehandlung bei Buskommunikation und Buskommunikationssystem
TW202203048A (zh) * 2020-07-10 2022-01-16 日商索尼半導體解決方案公司 通信裝置及通信方法、以及程式

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3152667B2 (ja) 1991-03-06 2001-04-03 日本放送協会 データチャンネル受信装置
US5815678A (en) * 1995-07-14 1998-09-29 Adaptec, Inc. Method and apparatus for implementing an application programming interface for a communications bus
EP0803821A3 (de) * 1996-04-26 1998-01-28 Texas Instruments Incorporated DMA-Kanalzuordnung in einem Datenpaketübertragungsgerät
JPH1040211A (ja) 1996-04-30 1998-02-13 Texas Instr Inc <Ti> パケット化されたデータ通信インタフェース機器内での直接メモリアクセス優先順位を割り当てるための方法ならびにdmaチャンネル回路
JPH1023101A (ja) * 1996-07-02 1998-01-23 Fujitsu Ltd データ転送インタフェース回路及びデータ転送方法
JP3731263B2 (ja) * 1996-09-11 2006-01-05 ソニー株式会社 通信方法及び電子機器
JPH1117773A (ja) * 1997-06-20 1999-01-22 Sony Corp シリアルインタフェース回路
US6324178B1 (en) * 1998-05-26 2001-11-27 3Com Corporation Method for efficient data transfers between domains of differing data formats

Also Published As

Publication number Publication date
JP3543647B2 (ja) 2004-07-14
EP1049019A1 (de) 2000-11-02
KR100464468B1 (ko) 2004-12-31
WO2000025215A1 (fr) 2000-05-04
CN1292121A (zh) 2001-04-18
TW449696B (en) 2001-08-11
JP2000134229A (ja) 2000-05-12
KR20010024814A (ko) 2001-03-26
DE69935065D1 (de) 2007-03-22
CN1146798C (zh) 2004-04-21
EP1049019A4 (de) 2002-05-29
EP1049019B1 (de) 2007-02-07
US6839347B1 (en) 2005-01-04

Similar Documents

Publication Publication Date Title
DE69935065T2 (de) Datenübertragungssteuerinrichtung und elektronisches gerät
DE60035882T2 (de) Protokoll einer zerteilten transaktion für ein bussystem
DE60212190T2 (de) Übermittlung von transaktionstypen zwischen agenten in einem computersystem durch verwendung von paketkopfteilen mit einem erweiterten typen-/längenerweiterungsfeld
DE112020002496T5 (de) System und verfahren zur erleichterung eines effizienten host-speicherzugriffs von einer netzwerkschnittstellensteuerung (nic)
DE4426094C2 (de) Datenreduktion für Buskoppler
DE19581234B4 (de) Bussteuereinrichtung und Verfahren für eine hierarchische serielle Busanordnung unter Verwendung von Kommunikationspaketen
DE60205809T2 (de) Datensteueranlage, elektronisches Gerät und Datenübertragungssteuerverfahren
DE60219047T2 (de) Eine allgemeine eingabe-/ausgabearchitektur und entsprechende verfahren zum aufbau virtueller kanäle darin
DE69829987T2 (de) E/a bus mit schnellen 16-bit zerteilten transaktionen
DE69918053T2 (de) Datenübertragungs-steuervorrichtung und elektronische vorrichtung
DE69836426T2 (de) Steuergerät für einen universellen seriellen Bus
DE19900345B4 (de) Schnittstellenmodul für einen Universellen Seriellen Bus (USB) zur Verbindung mit einem USB über eine Programmierschnittstelle für eine USB-Funktion und Vorrichtung zum Anschluß an einen universellen seriellen Bus
DE19900245A1 (de) Vorrichtung und Verfahren zum Senden und Empfangen von USB-Isochrondaten
DE19900369A9 (de) Vorrichtung und Verfahren zur Ausführung einer Steuerübertragung auf einem Universal Serial Bus
DE19900290A9 (de) Verfahren zum Betreiben einer universellen seriellen Buseinrichtung und universelle serielle Buseinrichtung
DE112008000598T5 (de) Relaisschaltungseinheit für ein Fahrzeug
DE60038264T2 (de) Verfahren zur Vorverarbeitung von Datenpaketen in einer Busschnittstelle
DE10234934A1 (de) Antwortreihenwiederherstellungsmechanismus
JP3543649B2 (ja) データ転送制御装置及び電子機器
DE60205531T2 (de) Datentransfersteueranlage, elektronisches Gerät und Datentransfersteuerverfahren
DE102005048581B4 (de) Teilnehmerschnittstelle zwischen einem FlexRay-Kommunikationsbaustein und einem FlexRay-Teilnehmer und Verfahren zur Übertragung von Botschaften über eine solche Schnittstelle
DE69935940T2 (de) Zielknoten, Datenkommunikationssystem, Kontrollverfahren eines Zielknotens und Verfahren zum Betreiben eines Datenkommunikationssystems
DE10065656A1 (de) Faserkanalschnittstellensteuerungseinrichtung, die eine nicht blockierende Ausgabe und Eingabe von Faserkanaldatenrahmen und Quittierungsrahmen in und von einem Faserkanal durchführt
DE60303119T2 (de) Echtzeitdatenströmung von antworten auf lesezugriffe in einer verbindung zwischen zwei datenknoten
DE112004002043T5 (de) Verfahren, System und Programm zum Aufbau eines Pakets

Legal Events

Date Code Title Description
8364 No opposition during term of opposition