-
Die
vorliegende Erfindung bezieht sich auf ein Verfahren und auf eine
Bus-Schnittstelle mit einem Speicher in einer integrierten Schaltung,
die dazu dient, einen Bus mit einer durch den Bus zu steuernden
Anwendungsvorrichtung zu verknüpfen.
-
Hintergrund
-
Der
IEEE1394-Bus ist ein preisgünstiger
serieller Hochleistungsbus. Er hat eine Lese/Schreib-Speicher-Architektur
und ein hoch ausgefeiltes Kommunikationsprotokoll. Datenraten von 100,
200 oder 400 Mbit/s können
nahezu in Echtzeit übertragen
werden. Gleichzeitig können
Daten in beiden Richtungen übertragen
werden. Die ersten zehn Bits von übertragenen Adresswerten beziehen
sich auf 1023 mögliche
IEEE1394-Bus-Cluster. Die folgenden sechs Bits der übertragenen
Adresswerte beziehen sich innerhalb eines spezifischen Clusters auf
ein bis zu 63 Knoten, denen eine Anwendung oder ein Gerät zugeordnet
ist. Daten können
zwischen den Knoten ohne Wechselwirkung mit einer Host-Steuereinheit
ausgetauscht werden. Geräte können jederzeit
an das Netzwerk angeschlossen oder von diesem getrennt werden, so
dass ein Plug-and-Play-Verhalten möglich ist.
-
Die
genormte Kabelverbindung für
die Knoten hat eine Länge
von 4,5 m und enthält
drei verdrillte Kabelpaare, von denen zwei zur Übertragung von Daten und Steuerinformationen
dienen und das dritte Paar Versorgungsspannungen von 8 V bis 40
V führt. Es
wird eine dreistufige Kodierung verwendet: HOCH (H), NIEDRIG (L)
und HOHE IMPEDANZ (Z). H hat Vorrang vor L, L hat Vorrang vor Z.
Der Wellenwiderstand ist 110 Ohm. Es gibt auch eine Version IEEE1394-1995
der Bus-Spezifikation,
die nur zwei verdrillte Kabelpaare enthält, an denen keine Stromversorgungsspannung
vorhanden ist. Das Kommunikationsprotokoll hat drei Schichten: Bit- Übertragungsschicht (physical
layer), Verbindungsschicht (link layer) und Transaktionsschicht. Üblicherweise wird
die Transaktionsschicht durch Firmware realisiert, während die
anderen Schichten unter Verwendung von Chip-Gruppen ausgeführt werden.
-
Die
Bit-Übertragungsschicht
enthält
analoge Transceiver und eine digitale State-Machine. Sie handhabt
Bus-Auto-Konfiguration
und Hot-Plug. Sie taktet um, regeneriert und wiederholt alle Pakete
und leitet alle Pakete zu der örtlichen
Verbindungsschicht. Sie führt
Out-Packet-Framing, z.B. Kurz-Code, Präfix und Paket-End-Aufbau. Sie
bestimmt und überträgt Pakete
von der örtlichen
Verbindungsschicht. Verfügbare
IC-Typen sind zum Beispiel TSB11C01, TSB11LV01, TSB21LV03 und TSV41LV03
von Texas Instruments, MB86611 von Fujitsu und 21S750 von IBM.
-
Die
Verbindungsschicht führt
die gesamte digitale Logik aus. Sie erkennt an die Knoten adressierte
Pakete durch Adressen-Erkennung und dekodiert die Paket-Header.
Sie liefert Pakete an höhere Schichten
und erzeugt Pakete aus höheren
Schichten. Sie arbeitet entweder isochron für AV-Daten-Verwendung oder asynchron für Steuerdaten-Verwendung.
Bei dem isochronen Betrieb wird ein Kanal mit einer garantierten
Bandbreite errichtet. Es gibt eine definierte Latenzzeit. Die Übertragung
wird in 125 μs Zeitschlitzen
oder Zyklen ausgeführt.
Header und Datenblöcke
eines Pakets haben getrennte CRCs (zyklische Redundanzprüfung). Diese
Betriebsart hat eine höhere
Priorität
als die asynchrone Datenübertragungs-Betriebsart.
-
Die
asynchrone Betriebsart ist nicht zeitkritisch, aber sicher. Sie
arbeitet als ein bestätigter Dienst
mit einem Belegs- und Wiederholungsprotokoll. Es werden feste Adressen
verwendet. Die Übertragung
findet statt, wenn der Bus in Ruhe ist. Die asynchrone Betriebsart
handhabt Lese-Anforderung/Reaktion,
Schreib-Anforderung/Reaktion und Sperr-Anforderung/Reaktion. Sie
führt die
Zyklussteuerung, die CRC-Erzeugung und die Validisierung aus. Verfügbare Verbinungsschicht-IC-Typen
sind zum Beispiel TS312C01A, TSB12LV21, TSB12LV31 und TSB12LV41
von Texas Instruments und PDI1394L11 von Philips.
-
Die
Transaktionsschicht führt
asynchrone Bus-Transaktionen durch:
- – Lese-Anforderung/Lese-Reaktion
- – Schreib-Anforderung/Schreib-Reaktion
- – Sperr-Anforderung/Sperr-Reaktion.
-
Wie
oben erwähnt
wurde, kann dies durch einen mit Software arbeitenden Mikro-Controller
ausgeführt
werden, z.B. dem i960 von SparcLite. Es kann auch eine AV-(Audio-Video)-Schicht sein, die die
Gerätesteuerung,
das Verbindungs-Management,
die Zeitstempelung und die Paketisierung ausführt.
-
In
IEEE1394-Systemen arbeitet die Verbindungsschicht als Schnittstelle
zwischen einer externen Anwendung und dem IEEE1394-Bus (über die Bit-Übertragungsschicht).
-
Die
externe Anwendung kann zum Beispiel ein Verbrauchergerät, wie eine
Set-Top-Box oder ein VCR oder ein DVD-Spieler sein, das latenzkritische isochrone
Daten oder nicht-latenzkritische
asynchrone Daten liefert/empfängt.
Die asynchronen Datenpakete dienen für die Steuerungsoperationen
oder für
Register-Lese/Schreib/Verriegelungs-Operationen. Isochrone Datenpakete
enthalten Informationseinzelheiten wie Video-/Audio-Daten.
-
Aus
EP-A-0 804 033 sind Basisinformationen über eine IEEE1394-Bus-Schnittstelle
bekannt. Das Dokument beschreibt auch die CRC-Erzeugung und die
Auswertung für
den Header und das Nutzdatenfeld eines 1394-Bus-Pakets.
-
Der
Aufsatz von Bloks R.H.J. „The IEEE-1394
High Speed Serial Bus" in
Philips Journal of Research, Bd. 30, Nr. 1, 1. Januar 1996, Seiten 209–216, gibt
einen Überblick über die IEEE1394-Bus-Technologie
mit spezieller Betonung des Transports von MPEG2-Daten.
-
Erfindung:
-
Für die Timing-Entkopplung
von dem IEEE1394-Bus und der Anwendung wird ein Ein-Chip-Speicher
verwendet. Wegen der stark eingeschränkten Speicherkapazität des IC-Ein-Chip-Speichers ist es
wichtig, Raum einzusparen, wenn mit diesem Speicher verarbeitet
wird. Für
den Fall einer ASIC-Lösung
für den
Verbindungsschicht-IC kann ein FIFO (First-in-first-out-Speicher) verwendet werden,
um den IEEE1394-Bus mit der Anwendungsvorrichtung zu verbinden und
die Handhabung der asynchronen und isochronen Pakete zu organisieren.
Es ist möglich,
die Speicherkapazität
in feste Bereiche für
asynchrone und isochrone Daten zu trennen. Es ist jedoch vorteilhaft,
die Speicherkapazität
in flexibler Weise aufzuspalten, um Erfordernisse für jeden
spezifischen Dienst zu erfüllen.
Dann muss die für
andere Dienste verbleibende Speicherkapazität leistungsfähig verwaltet
werden, um die Geschwindigkeits- und Adressenanforderungen zu erfüllen. Ein
Problem ist die leistungsfähige
Verwaltung von latenzkritischen isochronen Daten und von nicht-latenzkritischen
asynchronen Daten innerhalb des Ein-Chip-Speichers.
-
Gemäß der Erfindung
wird der Ein-Chip-Speicher während
der Übertragung
(on the fly) daran gehindert, Pakete zu speichern, die Übertragungsfehler
enthalten. Dieses Merkmal gilt für
alle asynchronen Datenpakete und in speziellen Fällen auch für isochrone Datenpakete. Insbesondere
wird der FIFO-Speicher des Verbindungsschicht-Chips in drei Be reiche
unterteilt: asynchroner Empfangsbereich, asynchroner Übertragungsbereich
und isochroner Datenpaket-Bereich. Bei der asynchronen Betriebsart
wird der Empfang und die Übertragung von
IEEE1394-Bus-Datenpaketen in unabhängiger Weise ausgeführt, während bei
der isochronen Betriebsart der Empfang und die Übertragung eines Datenpakets
in sequentieller Weise erfolgt, wobei Zugriff zu demselben Speicherbereich
genommen wird.
-
Beim
Empfangsbetrieb werden die von dem IEEE1394-Bus kommenden Datenpakete
Wort für Wort
in den entsprechenden Speicherbereich geschrieben. Gemäß der IEEE1394-Bus-Spezifikation wird
der erste Teil eines Datenpakets als Paket-Header definiert, dem
Paket (Benutzer) Daten in dem zweiten Teil folgen.
-
Es
gibt zwei CRC-Prüfworte
(zyklische Redundanzprüfung)
in einem asynchronen IEEE1394-Datenpaket. Das erste ist an den Paket-Header
angehängt,
und das zweite ist an die Paket- oder
Nutzdaten angehängt.
Aufgrund dieses spezifischen Ortes der CRC-Prüfworte innerhalb des empfangenen
Paket-Datenstroms
ist es nicht möglich,
die CRC-Prüfworte
zu verarbeiten, bevor ein Datenpaket in den Speicher geschrieben
wird. Es gibt wenigstens drei Wege, um ein asynchrones Datenpaket
zu verarbeiten:
- a) Schreiben des gesamten Datenpaketes
in den Speicher ohne CRC-Prüfung.
Beim Lesen der Datenpakete aus dem Speicher führt die Anwendungsvorrichtung
die Header-CRC-Prüfung und die
Paketdaten-CRC-Prüfung
bei allen Datenpaketen aus und überspringt
die fehlerhaften Datenpakete;
- b) in jedem Fall ein vollständiges
Datenpaket in den Speicher schreiben und dadurch eine sofortige
CRC-Prüfung dieses
Datenpakets ausführen und
es als fehlerhaft zu markieren, wenn dies für die Header-CRC- Prüfung und/oder
die Paketdaten-CRC-Prüfung
zutrifft. Beim Lesen der Datenpakete aus dem Speicher prüft die Anwendungsvorrichtung
die Markierung aller Datenpakete und überspringt die fehlerhaften
Datenpakete;
- c) in jedem Fall während
der Übertragung
(on the fly) Ausführen
einer Header-CRC-Prüfung
und einer Paketdaten-CRC-Prüfung
bei dem ankommenden Datenpaket unter Verwendung einer zugeeigneten
CRC-Prüfeinheit
und ihres Registers (ihrer Register), und kein Einschreiben des
ankommenden Datenpakets oder seiner Paketdaten in den Speicher,
wenn die Header- und/oder die Paketdaten fehlerhaft sind. Dann – ausgelöst durch
das erste Header-Daten-Byte – Überschreiben
des fehlerhaften Datenpakets bzw. der Paketdaten mit dem nächsten ankommenden
Datenpaket oder den Paketdaten.
-
Vorteilhafterweise
wird die Alternative c) ausgeführt,
weil sie so viel Speicherraum wie möglich einspart.
-
Isochrone
Datenpakete haben eine ähnliche Struktur.
Dem Paket-Header folgt ein Header-CRC-Prüfwort, dem seinerseits ein
Nutzdatenfeld folgt, dem ein Daten-CRC-Prüfwort angefügt ist. Das Nutzdatenfeld oder
Datenfeld enthält
am Beginn ein Informationsfeld, das als gemeinsamer isochroner Paket-(CIP)-Header
bezeichnet wird, der die Struktur der folgenden Daten beschreibt.
Diese Informations-Einzelheit
wird nicht notwendigerweise in den Speicher geschrieben.
-
Quellen-Datenpakete
können
Datengruppen enthalten, die eine vorbekannte feste Datenlänge haben,
die nicht zu der Datenlänge
des IEEE1394-Nutzdatenfeldes passt. Z.B. haben MPEG-Transportpakete
eine genormte Länge
von 188 Bytes, die sich von der Länge von 104 Bytes des IEEE1394-Nutzdatenfeldes unterscheidet.
Daher kann ein MPEG-Transportpaket
teilweise in einem, zwei, vier oder acht nachfolgenden IEEE1394-Nutzdatenfeldern übertragen
werden. Es gibt wenigstens sechs Wege, um ein isochrones Datenpaket
zu verarbeiten:
- d) wenn erkannt wird, dass
ein Datenpaket an die Anwendungsvorrichtung adressiert ist, wird
es in jedem Fall vollständig
in den Speicher ohne Header-CRC-Prüfung und Datenfeld-CRC-Prüfung eingeschrieben.
Beim Lesen der Datenpakete aus dem Speicher führt die Anwendungsvorrichtung beide
Arten von CRC-Prüfungen
bei allen Datenpaketen aus und überspringt
die fehlerhaften Datenpakete;
- e) in jedem Fall ein vollständiges
Datenpaket in den Speicher schreiben, eine sofortige Header-CRC-Prüfung und/oder
Datenfeld-CRC-Prüfung
bei diesem Paket ausführen
und es als fehlerhaft markieren, wenn dies für den Header und/oder das Datenfeld
zutrifft. Beim Lesen der Datenpakete aus dem Speicher prüft die Anwendungsvorrichtung
die Markierungen aller Datenpakete und überspringt die fehlerhaften
Header und/oder Datenfelder. In einigen Fällen kann es möglich sein,
dass ein Teil eines Datenpakets benutzt werden kann, obwohl der
andere Teil fehlerhaft ist;
- f) in jedem Fall Ausführen
einer Header-CRC-Prüfung
bei dem ankommenden Paket während
der Übertragung
(on the fly) unter Verwendung einer zugeeigneten CRC-Prüfeinheit
und ihres Registers (ihrer Register). Das ankommende Datenpaket
nicht in den Speicher einschreiben, wenn der Header fehlerhaft ist.
Andernfalls entweder den Header direkt auswerten und das Datenfeld
einschließlich
der Datenfeld-CRC in den Speicher schreiben, oder den Header und
das Datenfeld einschließlich
der Datenfeld-CRC in den Speicher schreiben. Die Datenfeld-CRC-Prüfung wird
später
ausgeführt;
- g) in jedem Fall Ausführen
einer Header-CRC-Prüfung
bei dem ankommenden Datenpaket während
der Übertragung
(on the fly) unter Verwendung einer zugeeigneten CRC-Prüfeinheit und
ihres Registers (ihrer Register). Das ankommende Datenpaket nicht
in den Speicher schreiben, wenn der Header fehlerhaft ist. Andernfalls entweder
den Header direkt auswerten und das Datenfeld einschließlich der
Daten-CRC in den Speicher schreiben und dadurch die Datenfeld-CRC-Prüfung ausführen, oder
den Header und das Datenfeld in den Speicher schreiben und dadurch
die Datenfeld-CRC-Prüfung
ausführen und
das Datenfeld als fehlerhaft markieren, wenn dies zutrifft. Die
Markierung kann in dem Speicher zusammen mit dem Datenfeld gespeichert
werden. Beim Lesen des Nutzdatenfeldes oder des Headers und des
Nutzdatenfeldes aus dem Speicher prüft die Anwendungsvorrichtung
die Markierung und überspringt
die fehlerhaften Nutzdatenfelder bzw. Header;
- h) in jedem Fall Ausführen
einer Header-CRC-Prüfung
bei dem ankommenden Datenfeld bei der Übertragung (on the fly) unter
Verwendung einer zugeeigneten CRC-Prüfeinheit
und ihres Registers (ihrer Register). Das ankommende Datenpaket
nicht in den Speicher schreiben. Wenn der Header und/oder das Datenfeld
fehlerhaft ist;
- i) in jedem Fall Ausführen
einer Header-CRC-Prüfung
bei dem ankommenden Datenfeld bei der Übertragung (on the fly) unter
Verwendung einer zugeeigneten CRC-Prüfeinheit
und ihres Registers (ihrer Register). Das ankommende Datenpaket
nicht in den Speicher einschreiben, wenn der Header fehlerhaft ist.
Andernfalls entweder den Header direkt auswerten und die Quellen-Paketdaten aus dem
Datenfeld in den Speicher schreiben und dadurch die Datenfeld-CRC-Prüfung ausführen, oder
den Header und das Datenfeld in den Speicher schreiben und dadurch
die Datenfeld-CRC-Prüfung
ausführen
und Quellen-Paketdaten bzw. das Datenfeld als fehlerhaft markieren, wenn
dies zutrifft. Zusätzlich
wird die oben beschriebene Datenlänge geprüft. Falls die vorbekannte Datenlänge eines
Quellen-Paketes nicht erreicht wird, kann dieses Quellen-Paket als
fehlerhaft markiert werden. Dieses Paket wird von dem nächsten Paket überschrieben.
Beim Lesen des Headers und des Nutzdatenfeldes aus dem Speicher
prüft die
Anwendungsvorrichtung die Markierung und überspringt die fehlerhaften
Nutzdatenfelder bzw. Header.
-
Vorteilhafterweise
wird die Alternative i) ausgeführt,
weil sie so viel Speicherraum wie möglich spart und weil sie erlaubt,
nicht nur Übertragungsfehler
festzustellen, sondern auch Quellen-Paket-Erzeugungsfehler.
-
Der
Erfindung liegt die Aufgabe zugrunde, ein Verfahren zur Verwendung
eines Speichers in einer integrierten Schaltung zu verwenden, die
dazu dient, einen Bus mit einer Anwendungsvorrichtung zu verknüpfen, die
von dem Bus gesteuert werden soll, wobei die benötigte Speicherkapazität minimiert
wird. Diese Aufgabe wird durch das im Anspruch 1 offenbarte Verfahren
gelöst.
-
Es
ist eine weitere Aufgabe der Erfindung, eine Vorrichtung zu offenbaren,
die das erfindungsgemäße Verfahren
verwendet. Diese Aufgabe wird durch die im Anspruch 8 offenbarte
Vorrichtung gelöst.
-
Vorteilhafte
weitere Ausführungsformen
des erfindungsgemäßen Verfahrens
und der erfindungsgemäßen Vorrichtung
sind in den entsprechenden Unteransprüchen offenbart.
-
Vorteilhafte
weitere Ausführungsformen
der erfindungsgemäßen Vorrichtung
sind in den entsprechenden Unteransprüchen offenbart.
-
Zeichnungen
-
Ausführungsformen
der Erfindung werden unter Bezugnahme auf die beigefügten Zeichnungen beschrieben.
In den Zeichnungen stellen dar:
-
1 einen
IEEE1394-Doppelknoten für zweiseitige
Echtzeit-Video-Anwendungen;
-
2 mit
einem IEEE1394-Bus verbundene Set-Top-Box, VCR und DVD-Spieler;
-
3 eine
CRC-Prüfeinheit,
die Adressen des Ein-Chip-Speichers
steuert;
-
4 einen
Ein-Chip-Speicher, in dem eine erste Datenmenge gespeichert wird,
bevor zuvor gespeicherte Daten überschrieben
werden;
-
5 einen
Ein-Chip-Speicher, in dem eine zweite Datenmenge gespeichert wird,
bevor zuvor gespeicherte Daten überschrieben
werden.
-
Ausführungsbeispiele
-
In 1 ist
eine Bit-Übertragungsschicht-IC PLI
mit einem IEEE1394-Buskabel B verbunden. PLI ist an der anderen
Seite einem Verbindungsschicht-IC LLI für den Dateneingang und/oder
Datenausgang zugeordnet. LLI ist eine Anwendungsvorrichtung APP
zugeordnet. LLI und PLI über
LLI werden durch einen Mikro-Controller μP gesteuert. Die Anwendungsvorrichtung
kann auch durch den μP
gesteuert werden. Alternativ kann PLI und/oder APP durch einen getrennten
Mikro-Controller
gesteuert werden. Der μP
kann die oben beschriebenen CRC-Prüfungen durchführen.
-
Die
Erfindung kann zum Beispiel für
eine in 2 dargestellte Anwendung benutzt
werden. Eine Set-Top-Box STB mit einer Empfangseinheit RU, einem
MPEG-Dekodierer MDEC und einer IEEE1394-Schnittstelle 1394S empfängt ein
digitales TV-Programm über
Satellit oder Kabel. Das Ausgangssignal der Empfangseinheit wird über den IEEE1394-Bus
zwechs Aufzeichnung zu einem Videorecorder VCRR übertragen, der auch eine IEEE1304-Schnittstelle
1394V enthält.
Gleichzeitig spielt ein DVD-Spieler DVDP eine DVD-Disk ab, und die
DVD-Daten werden
auch über
eine IEEE1394-Bus-Schnittstelle 1394D zu der IEEE1394-Bus-Schnittstelle
1394S der Set-Top-Box transportiert,
um durch den MPEG-Dekodierer MDEC dekodiert und auf dem Bildschirm
eines Fernsehempfängers
TV angezeigt zu werden. Der Fernsehempfänger TV kann noch eine analoge
Signalverbindung mit der Set-Top-Box haben, aber er kann auch mit
STB durch eine IEEE1394-Bus-Schnittstelle verbunden werden. Somit
benötigt
der Set-Top-Box-IEEE1394-Busknoten
1394S eine zweiseitige Funktionalität.
-
In 3 sind
eine CRC-Prüfeinheit
CRC CHU und ein Ein-Chip-Speicher
RAM mit IEEE1394-Bus-Daten 1394DAT versehen. Dieser Speicher speichert
asynchrone und isochrone Paketdaten. Nach der CRC-Prüfung sendet
CRC CHU gemäß dem CRC-Prüfergebnis
entsprechende Steuerinformationen CTRL an eine Speicheradressen-Erzeugungseinheit
MADGU. MADGU versorgt den Speicher RAM mit entsprechenden Adressenwerten, die
zum Beispiel dazu dienen, ein bereits gespeichertes fehlerhaftes
Datenpaket zu überschreiben.
-
4 zeigt
den Inhalt eines Speichers RAM in Verbindung mit der Header- und
der Daten-CRC-Prüfung.
Als Beispiel enthält
der RAM:
- – den
Header HPO des Pakets #0;
- – den
CRC-Code HRCCPO für
diesen Header, dessen Status ,ok' ist,
d. h. die Header-Daten sind fehlerfrei empfangen worden;
- – die
Daten DATPO des Pakets #0;
- – den
CRC-Code DATCRCPO für
die Daten dieses Pakets, dessen Status ,ok' ist, d. h. die Daten sind fehlerfrei
empfangen worden;
- – den
Header HP1 des Pakets #1;
- – den
CRC-Code HCRCP1 für
diesen Header, dessen Status ,fehlerhaft' ist, d. h. fehlerhafte Header-Daten
sind empfangen worden. Als Ergebnis werden die Daten des Pakets
#1 nicht in den RAM geschrieben, und HPRCP1 wird durch die Header-Daten
des Pakets #2 überschrieben.
-
5 zeigt
den Inhalt des Speichers RAM in Verbindung mit Header- und Daten-CRC-Prüfung. Als
Beispiel enthält
der RAM:
- – den
Header HPO des Pakets #0;
- – den
CRC-Code HCRCPO für
diesen Header, dessen Status ,ok' ist,
d. h. die Header-Daten sind fehlerfrei empfangen worden;
- – die
Daten DATPO des Pakets #0;
- – den
CRC-Code DATCRCPO für
die Daten dieses Pakets, dessen Status ,ok' ist, d. h. die Daten sind fehlerfrei
empfangen worden;
- – den
Header HP1 des Pakets #1;
- – den
CRC-Code HCRCP1 für
diesen Header, dessen Status ,ok' ist,
d. h. die Header-Daten sind fehlerfrei empfangen worden;
- – die
Daten DATP1 des Pakets #1;
- – den
CRC-Code DATCRPC1 für
die Daten dieses Pakets, dessen Status fehlerhaft ist, d. h. es sind
fehlerhafte Daten empfangen worden. Als Ergebnis werden die Header-Daten
des Pakets #2 nicht hinter DATCRCP1 in den RAM geschrieben, sondern
sie überschreiben
die Header-Daten HP1 des Pakets #1, gesteuert durch MADGU.
-
Falls
fehlerfreie Header-Daten nicht in den Speicher geschrieben werden,
werden sie ausgewertet, bevor und/oder während die entsprechenden Nutzdaten
in den Speicher geschrieben werden.
-
Die
Erfindung bietet die folgenden Vorteile für den Empfang von asynchronen
Datenpaketen:
- – es ist keine Verarbeitungsleistung
der Anwendungsvorrichtung erforderlich, da die CRC-Prüfungen durch
eine zugeeignete Prüfungseinheit auf
dem Chip ausgeführt
werden können;
- – die
Verwendung des Ein-Chip-Speichers ist optimal, weil fehlerhafte
Paketdaten überschrieben werden.
-
Die
Erfindung bietet die folgenden Vorteile für den Empfang von isochronen
Datenpaketen;
- – es ist keine Verarbeitungsleistung
der Anwendungsvorrichtung erforderlich, weil die CRC-Prüfungen durch
eine zugeeignete CRC-Prüfeinheit auf
dem Chip ausgeführt
werden können;
- – die
Anwendungsvorrichtung kann entscheiden, von Datenpaketen mit Datenfeld-CRC-Fehlern aber
richtiger Paketlänge
Gebrauch zu machen, z.B. um Audio-/Video-Daten synchronisiert zu halten, die
einen festen zeitlichen Ort zueinander haben;
- – diese
Entscheidung ist durch Software steuerbar;
- – die
Verwendung eines Ein-Chip-Speichers ist optimal, da fehlerhafte
Paketdaten überschrieben werden.
-
Anstatt
eines IEEE1394-Busses kann jeder andere Bus wie Ethernet oder Internet
verwendet werden. Anstatt des CRC-Fehlerschutz-Codes können alle anderen Fehlerschutz-Codes
wie zum Beispiel Reed Solomon- oder Paritäts-Bits verwendet werden.