Search Images Maps Play YouTube News Gmail Drive More »
Sign in
Screen reader users: click this link for accessible mode. Accessible mode has the same essential features but works better with your reader.

Patents

  1. Advanced Patent Search
Publication numberDE69633894 T2
Publication typeGrant
Application numberDE1996633894
Publication date24 Nov 2005
Filing date12 Sep 1996
Priority date22 Sep 1995
Also published asDE69633894D1, EP0765061A2, EP0765061A3, EP0765061B1, US5787483
Publication number1996633894, 96633894, DE 69633894 T2, DE 69633894T2, DE-T2-69633894, DE1996633894, DE69633894 T2, DE69633894T2, DE96633894
InventorsRan-Fun Chiu, Mehrban Jam
ApplicantHewlett-Packard Development Co., L.P., Houston
Export CitationBiBTeX, EndNote, RefMan
External Links: DPMA, Espacenet
Modem zur Kommunikation von Hochgeschwindigkeitsdaten Modem for communicating high speed data translated from German
DE 69633894 T2
Abstract  available in
Claims(1)  translated from German
  1. Ein digitales Hochgeschwindigkeitsmodem, das folgende Merkmale aufweist: a. eine Abstimmvorrichtung ( A high speed digital modem, comprising the following features: a. A tuner ( 303 303 ), die mit einem Übertragungsmedium verbindbar ist und abgestimmt ist, um ein erstes Signal auf einem ersten Kanal des Übertragungsmediums zu empfangen; ), Which is connectable to a transmission medium and is tuned to receive a first signal on a first channel of the transmission medium; b. b. einen Front-End-Vorprozessor ( a front-end preprocessor ( 801 801 ), der mit der Abstimmvorrichtung ( ) Connected to the tuner ( 303 303 ) verbunden ist und wirksam ist, um das erste Signal in einen ersten und einen zweiten Bitstrom umzuwandeln; ) And is operative to convert the first signal into a first and a second bit stream; c. c. eine nachgeschaltete Steuervorrichtung ( a downstream control device ( 805 805 ), die mit der Abstimmvorrichtung ( ) Connected to the tuner ( 303 303 ) verbunden ist, um den ersten Bitstrom zu empfangen, die wirksam ist, um den ersten Bitstrom syntaktisch zu analysieren, und die wirksam ist, um Steuersignale auszugeben, die Übertragungsverzögerungsinformationen umfassen, die eine für eine Übertragung zu wartende Zeitperiode anzeigen; Is) connected to receive the first bit stream, that is effective for analyzing the first bit stream syntax, and effective so as to output control signals that include transmission delay information for transmission to display a serviceable time period; d. einen Sender ( d. a transmitter ( 305 305 ), der mit dem Übertragungsmedium verbindbar ist und wirksam ist, um ein zweites Signal auf einem zweiten Kanal des Übertragungsmediums zu übertragen; ), Which is connectable to the transmission medium and is effective to transmit a second signal on a second channel of the transmission medium; und e. eine vorgeschaltete Steuervorrichtung ( and e. an upstream control device ( 809 809 ), die mit dem Sender ( ) Connected to the transmitter ( 305 305 ) verbunden ist und die mit der nachgeschalteten Steuervorrichtung ( ) Is coupled with the downstream and the control device ( 805 805 ) verbunden ist, um die Steuersignale zu empfangen, und die wirksam ist, um zu bewirken, dass der Sender nach dem Ende einer Zeitperiode, die durch die Übertragungsverzögerungsinformationen bestimmt ist, beginnt, Datenpakete zu übertragen. ) Is connected to receive the control signals and which is operative to cause the transmitter after the end of a time period which is determined by the transmission delay information, starts to transfer data packets.
Description  translated from German
  • Querverweis auf verwandte Anmeldungen CROSS-REFERENCE TO RELATED APPLICATIONS
  • [0001] [0001]
    Diese Anmeldung bezieht sich auf die ebenfalls anhängige Anmeldung EP-A-0765055 mit dem Titel „High-Speed Data Communications Network System and Method", eingereicht am 12. September 1996 beim EPO, ebenfalls mit der vorliegenden Erfindung übertragen. This application is related to co-pending application EP-A-0765055 entitled "High-Speed Data Communications Network System and Method", filed on 12 September 1996 at the EPO, also assigned with the present invention.
  • Gebiet der Erfindung Field of the Invention
  • [0002] [0002]
    Die vorliegende Erfindung bezieht sich auf eine Datenkommunikation und insbesondere auf die Zweiwegkommunikation von Daten auf einem Kabel. The present invention relates to data communication and more particularly to two-way communication of data on a cable.
  • Hintergrund der Erfindung Background of the Invention
  • [0003] [0003]
    In der Vergangenheit gehörten Computernetze zur akademischen Welt, zu großen Forschungsgemeinschaften, Unternehmen und Regierungsbehörden. In the past, computer networks belonged to the academic world, to major research communities, businesses and government agencies. Im Laufe der Zeit haben sich diese Netze dahingehend entwickelt, dass sie viel mehr Computerbenutzer und -verwendungen innerhalb ihres Bereichs enthalten. Over time, these networks have evolved to that they contain a lot more computer users and -verwendungen within their scope. Außerdem wurden die Netze in großem Maßstab verbunden („vernetzt"), um ein weltweites Netz von Computern zu bilden, das als das Internet bekannt ist, und neue Typen von Computernetzen sind verfügbar geworden. Somit ist es heute in hohem Maße wahrscheinlich, dass ein Computer mit irgendeinem Typ von Computernetz verbunden ist. In addition, the networks were connected on a large scale ("linked") to form a global network of computers known as the Internet, and new types of computer networks has become available. Thus, it is now highly likely that a computer is connected to any type of computer network.
  • [0004] [0004]
    Eine Folge dieser ständig zunehmenden Konnektivität von Computern besteht darin, dass die Menge an Informationen, die „online" verfügbar sind, enorm geworden ist. Zum Beispiel enthielt im August 1995 eine beliebte Suchmaschine von Informationen, die im Internet verfügbar sind (Lycos, http:\\www.lycos.com) einen Index von 5,6 Millionen Webseiten. In ähnlicher Weise stehen die Online-Dienste, wie z. B. America Online, Compuserve und Prodigy, miteinander im Wettbewerb auf der Basis der Menge an Informationen, die durch ihre bestimmten Dienste verfügbar sind. One consequence of this ever increasing connectivity of computers is that the amount of information that is "online" available, has become enormously For example, in August 1995 contained a popular search engine of information available on the Internet (Lycos, http.: \\ www.lycos.com) an index of 5.6 million websites. Similarly, are the online services, such. as America Online, Compuserve and Prodigy, competing on the basis of the amount of information available through their particular services.
  • [0005] [0005]
    Während Informationsverbreitung eine wichtige Verwendung von Computernetzen darstellt, liefert Computerkonnektivität viele andere wertvolle Dienste. While dissemination of information is an important use of computer networks, computer connectivity provides many other valuable services. Ein Beispiel ist die elektronische Post. One example is electronic mail. Ein weiteres ist der elektronische Geschäftsverkehr. Another is electronic commerce.
  • [0006] [0006]
    Aus all diesen Gründen ist es mittlerweile allgemein anerkannt, dass, während es in der Vergangenheit stimmte, dass es einen Wettbewerbsvorteil liefern konnte, mit einem Netz oder einem Online-Dienst verbunden zu sein, dies in der modernen Geschäftswelt und zu Bildungszwecken eine Notwendigkeit geworden ist. For all these reasons, it is now widely recognized that while it was true in the past that it could provide a competitive advantage to be connected to a network or an online service, it has become a necessity in the modern business world and for educational purposes ,
  • [0007] [0007]
    Viele Benutzer von Online-Diensten und dem Internet schließen sich an diese Netzwerke über Modems und herkömmliche Telefonleitungen an. Many users of online services and the Internet are joining these networks via modems and conventional telephone lines. Während dies für einige Verwendungen ausreichend ist, ist es für andere nicht wünschenswert. While this is adequate for some uses, it is undesirable for others. Es hat den Vorteil, eine eigens vorgesehene Verbindung zwischen einem Benutzer und einem Computer zu liefern, mit dem dieser Benutzer verbunden ist. It has the advantage of providing a specially designated connection between a user and a computer to which that user is connected. Und es nutzt eine Verbindungsleitung, die Telefonleitung, an die die meisten Haushalte und Büros bereits angeschlossen sind. And it uses a communication line, the telephone line to which most households and offices are already connected. Indem dem Benutzer eine eigens vorgesehene Verbindung bereitgestellt wird, besteht keine Notwendigkeit, Kollisionen zwischen Benutzern zu lösen, die versuchen, gleichzeitig auf das Netz zuzugreifen. By the user is provided with a specially designated connection, there is no need to resolve collisions between users who attempt to simultaneously access the network. Alle derartigen Konflikte werden an dem Computer gelöst, an den die mehreren Benutzer angeschlossen sind. All such conflicts are resolved on the computer to which multiple users are connected. (Natürlich müssen, falls dieser Computer mit anderen Computern auf gemeinschaftlich verwendeten Leitungen verbunden ist, Konflikte zwischen diesen Computern gelöst werden.) Telefonleitungen sind jedoch alles andere als die ideale Weise, Computer zu verbinden. (Of course, if need this computer is connected to other computers on communal lines used, conflicts between these computers are solved.) However, telephone lines are far from the ideal way to connect computers. Erstens besteht der offensichtliche Nachteil, dass es bei einer Heimcomputerumgebung sein kann, dass ein Haushalt nur mit einer Telefonleitung ausgestattet ist. First, there is the obvious disadvantage that it may be at a home computer environment that a household is equipped with a telephone line. Somit würde eine ausgedehnte Online-Verwendung die Telefonleitung blockieren, die zu anderen Verwendungen gebraucht werden könnte. Thus, an extensive online use would block the telephone line that could be used for other uses. Es gibt auch technische Probleme mit Telefonleitungen. There are also technical problems with telephone lines. Diese Leitungen sind für eine Sprachkommunikation vorgesehen, die eine Übertragungsbandbreite aufweist, die auf 3,2 KHz beschränkt ist. These lines are intended for voice communication having a transmission band width is limited to 3.2 KHz. Somit weist eine digitale Kommunikation über Telefonleitungen eine relativ geringe Bitrate auf. Thus, a digital communication over telephone lines to a relatively low bit rate. Normalerweise ist ein modernes Modem, das einen Personalcomputer mit einer Telefonleitung verbindet, auf 28,8 kbps beschränkt. Normally, a modern modem to connect a personal computer with a phone line, limited to 28.8 kbps.
  • [0008] [0008]
    Deshalb ist es erwünscht, alternative Technologien zum Verbinden von Heimcomputern mit Computernetzen zu liefern. Therefore, it is desirable to provide alternative technologies for connecting home computers to computer networks.
  • [0009] [0009]
    Ein Technologietyp, der die Bandbreite für Verbindungen von Heimcomputern und Kleinbürocomputern mit Computernetzen erhöht, sind ISDN-Leitungen. A type of technology that increases the bandwidth for connections from home computers and small business computers with computer networks, are ISDN lines. Dabei handelt es sich um eigens vorgesehene Leitungen, die für eine digitale Kommunikation zwischen Computern vorgesehen sind. These are specially intended to lines which are provided for digital communication between computers. ISDN weist eine viel höhere Bandbreite auf als Telefonleitungen. ISDN has a much higher bandwidth than telephone lines. Die meisten Haushalte und kleinen Büros sind jedoch nicht mit ISDN-Leitungen ausgestattet, und wenige sind bereit, die Kosten dafür auf sich zu nehmen, ISDN installieren zu lassen. Most homes and small offices are not equipped with ISDN lines, and few are willing to cover the costs on to let install ISDN.
  • [0010] [0010]
    Eine Technologie, die in die meisten Haushalte und kleinen Büros eingezogen ist, sind Kabelfernsehnetze. A technology that is drawn into most homes and small offices, have cable TV networks. Anders als Telefonnetze, die jedem Haushalt eigens vorgesehene Leitungen liefern, verwenden bei Kabelfernsehsystemen alle Teilnehmer in einer Nachbarschaft das Kabel gemeinsam. Unlike telephone networks that provide every household specially provided lines used in cable television systems, all participants in a neighborhood cable together. Es ist jedoch auf den Kabeln, die durch die meisten Kabelfernsehsysteme verwendet werden, verglichen mit Telefonleitungen eine viel größere Bandbreite verfügbar. However, it is on the cables used by most cable television systems, telephone lines as compared to a much larger bandwidth available.
  • [0011] [0011]
    Aus diesen Gründen ist es erwünscht, eine Zweiwegdatenkommunikation zwischen Heim-/Kleinbürocomputern und Computernetzen über vorhandene Kabelfernsehsysteme zu liefern. For these reasons, it is desirable to provide a Zweiwegdatenkommunikation between home / small office computers and computer networks over existing cable television systems.
  • [0012] [0012]
    Da alle Kabelfernsehteilnehmer in einer Nachbarschaft ein Kabel gemeinschaftlich verwenden, besteht eine Möglichkeit, dass mehrere Computer, die mit einem derartigen Netz verbunden sind, gleichzeitig Daten auf diesem Kabel übertragen. Since all cable television subscribers use a cable in a neighborhood joint, there is a possibility that other computers that are connected to such a network simultaneously transmit data on that cable. Eine derartige gleichzeitige Übertragung würde verstümmelte Daten zur Folge haben, und die Nachricht von keinem der Sender würde durch den beabsichtigten Empfänger erfolgreich empfangen, außer es liegt ein Mechanismus zum Vermeiden oder Lösen derartiger Konkurrenzprobleme vor. Such simultaneous transmission would have garbled data sequence and the message from any of the stations would successfully received by the intended recipient, unless there is a mechanism for avoiding or solving such problems before competition.
  • [0013] [0013]
    Das Problem, Konkurrenz auf gemeinschaftlich verwendeten Computernetzen zu vermeiden, ist in einer Vielzahl von Weisen angegangen worden. The problem to avoid competition in jointly used computer networks has been addressed in a variety of ways. Ein früher Lösungsansatz ist als das ALOHA-System bekannt. An early approach is known as the ALOHA system. ALOHA entstand an der Universität von Hawaii und wurde anfangs hauptsächlich zur Kommunikation unter Verwendung von Rundfunk verwendet. ALOHA originated at the University of Hawaii and was initially used mainly for communication using radio. Die Kommunikation über ein gemeinschaftlich verwendetes Kabel ist auch ein Rundsendesystem, bei dem alle Stationen, die an dem Kabel angeschlossen sind, jedes Signal empfangen, das über dieses Kabel übertragen wird. The communication over a shared cable is also used, a broadcast system in which all stations are connected to the cable, each signal received, which is transmitted via this cable.
  • [0014] [0014]
    ALOHA's Grundprinzip besteht darin, es jedem Benutzer, der den gemeinsamen Kanal verwendet, zu ermöglichen, eine Nachricht zu jedem beliebigen gegebenen Zeitpunkt rundzusenden. ALOHA's basic principle is to allow each user using the common channel to broadcast a message at any given time. Der sendende Benutzer hört dann dem Kanal zu und wartet auf seine eigene Nachricht. The sending user then listens to the channel and waits for its own message. Wird die Nachricht nicht empfangen (durch den Benutzer, der dieselbe gesendet hat), weiß der Benutzer, dass die Nachricht aus irgendeinem Grund vernichtet worden sein muss. (Sent by the user, the same) If the message is not received, the user knows that the message must have been destroyed for any reason. Mit hoher Wahrscheinlichkeit wurde die Nachricht durch eine andere Nachricht vernichtet, die gleichzeitig durch einen anderen Benutzer gesendet wurde. A high probability that the message was destroyed by another message that was sent concurrently by another user. Um diese Konkurrenz für den gemeinsamen Kanal zu lösen, halten sich beide Benutzer eine zufällige Zeitspanne lang zurück („back-off"), bevor dieselben die Nachricht erneut senden. Somit würden, falls zwei Benutzer versuchen, eine Nachricht zu einer Zeit t zu senden, deren jeweilige Nachrichten vernichtet. Durch ein Zurückhalten (Backing off) für zufällige Zeitspannen würde der erste Benutzer seine Nachricht bei t + r1 und der zweite Benutzer seine Nachricht bei t + r2 erneut senden. Falls r1 und r2 unterschiedlich sind (was sie normalerweise sein sollten, falls sie wirklich zufällig ausgewählt werden), sollte es beim zweiten Mal, wenn dieselben gesendet werden, keinen Konflikt zwischen den zwei Nachrichten geben. To solve this competition for the common channel, both users hold a random period of time back ("back-off") before they transmit the message again. So, would, if two users try to send at a time t to send whose respective messages through a retention (backing off) for random periods of the first user would send his message at t + r1 and the second user's message at t + r2 again. If r1 and r2 are different (which they would normally be destroyed. should, if they are really randomly selected), it should be the second time the same are sent, no conflict between the two messages.
  • [0015] [0015]
    Ein Nachteil von ALOHA besteht darin, dass die Wahrscheinlichkeit einer Konkurrenz sehr hoch ist. A disadvantage of ALOHA is that the likelihood of competition is very high. Die Kanaleffizienzrate für ALOHA beträgt lediglich 18%. The channel efficiency rate for ALOHA is only 18%.
  • [0016] [0016]
    Eine Verbesserung von ALOHA ist Schlitz-ALOHA. An improvement of ALOHA is slotted ALOHA. Bei Schlitz-ALOHA wird die Zeit in bestimmte Intervalle geteilt, und Nachrichten können nur während dieser Intervalle gesendet werden, dh keine Nachricht darf sich über Intervallgrenzen erstrecken. With slotted ALOHA, the time is divided into certain intervals, and messages can be sent only during these intervals, ie no message can extend over interval boundaries. Die Kanaleffizienz von Schlitz-ALOHA beträgt 38%. The channel efficiency of slotted ALOHA is 38%.
  • [0017] [0017]
    Für eine Erörterung von ALOHA, Schlitz-ALOHA und die Ableitung der Kanaleffizienzraten sei auf Tanenbaum, Andrew, Computer Networks, 2. Ausgabe, Prentice-Hall, S. 121–124, verwiesen. For a discussion of ALOHA, slotted ALOHA and the derivation of the channel efficiency rates is to Tanenbaum, Andrew, Computer Networks, 2nd Edition, Prentice-Hall, S. 121-124 referenced.
  • [0018] [0018]
    Derzeitige Lösungen für eine Datenkommunikation auf Kabelfernsehsystemen umfassen LANMCN-AT der Zenith Corporation und LCP der LANcity Corporation, Andover, MA. Current solutions for data communication on Cable TV systems include LANMCN-AT of Zenith Corporation and LCP of LANcity Corporation, Andover, MA. Diese Produkte haben eine gemeinsame Entwurfsphilosophie. These products have a common design philosophy. Bei beiden werden die Aufwärtsdaten, dh die Daten, die von dem Endbenutzer zu der Kabelsystemkopfstelle übertragen werden, durch das untere Band des Rundsendespektrums (unter den Frequenzbändern, die für Abwärtsdaten vorgesehen sind) übertragen. In both, the upstream data, ie the data that is transmitted from the end-user to the cable system headend (which are provided for downlink data under the frequency bands) by the lower band of the broadcast spectrum transmitted. Diese Aufwärtsdaten werden auf eine von zwei Weisen gehandhabt. This upward data will be handled in one of two ways. Die erste Alternative besteht darin, zu einem höheren Band des Spektrums frequenzzuübersetzen, und die zweite besteht darin, die Daten zu demodulieren. The first alternative is frequenzzuübersetzen to a higher band of the spectrum, and the second is to demodulate the data. Die gehandhabten Daten werden dann auf dem Oberband erneut gesendet. The managed data is then retransmitted on the upper belt. Alle Modems einschließlich des Modems an der Kopfstelle übertragen auf dem Unterband. All modems, including the modem transmitted on the sub-band at the headend. Die übertragenen Daten werden entweder frequenzübersetzt oder demoduliert. The transmitted data is either frequency translated or demodulated. Alle Modems empfangen dann auf dem Oberband. All modems received then on the upper band.
  • [0019] [0019]
    Die Aufwärtsdaten und die Abwärtsdaten weisen die gleiche Bandbreite und Datenrate auf. The upstream data and downstream data have the same bandwidth and data rate. Tatsächlich gibt es, da das Modem an der Kopfstelle wie alle anderen Modems in dem System behandelt wird, keine Unterscheidung zwischen Aufwärts- und Abwärtsdaten. Indeed, there is, because the modem is treated at the headend like all other modems in the system, no distinction between upstream and downstream data.
  • [0020] [0020]
    Bei diesem Lösungstyp für digitale Datenkommunikation auf einem Kabelfernsehkabel treten mehrere Probleme auf. In this type of solution for digital data communications on a cable television cable several problems arise. Erstens unterscheiden sich die Übertragungscharakteristika des Abwärtsbandes von denen des Aufwärtsbandes. First, the transmission characteristics of the downlink band of which the uplink band differ. Das Aufwärtsband (Unterband) weist viel mehr Rauschen auf als das Abwärtsband. The uplink band (lower band) has much more noise than the downlink band. Um bei beiden Bändern die gleiche Datenrate zu erzielen, ist das Abwärtsband hergestellt, um mit dem Aufwärtsband konform zu sein. In order to achieve the same data rate in both bands, the downstream band is made to conform to the uplink band. Somit erreicht das Verfahren nicht das volle Datenratenpotential des Abwärtsbandes. Thus, the method does not reach the full potential data rates of downward belt.
  • [0021] [0021]
    Zweitens sind die Aufwärtsdaten in den meisten Fällen für einen entfernten Server und nicht für einen Partnerendbenutzer bestimmt. Second, the upstream data in most cases for a remote server and not a Partnerendbenutzer are determined. Deshalb verschwendet ein erneutes Übertragen der Daten auf dem Abwärtsband Abwärtsbandbreite. Therefore, wasted re-transmitting the data on the downstream band downlink bandwidth.
  • [0022] [0022]
    Deshalb wäre es erwünscht, ein Hochgeschwindigkeitsdatenkommunikationssystem mit einer Hocheffizienzrate zu liefern, das ein gemeinschaftlich verwendetes Kabel verwendet und die verfügbare Bandbreite des Übertragungskabels voll ausnutzt. Therefore it would be desirable to provide a high-speed data communication system with a high efficiency rate that uses a cable jointly used and available bandwidth of the transmission cable fully exploited.
  • [0023] [0023]
    Karshmer ua, „TVNET: AN IMAGE AND DATA DELIVERY SYSTEM ...", offenbart ein System, bei dem eine Bild- und Datenlieferung konzipiert ist, um zwei Kanäle eines Standardkabelfernsehsystems zu verwenden. Eine Datenübertragung auf dem Aufwärts- und dem Abwärtskanal wird auf einer Anforderungsbasis gehandhabt, wobei Knoten, die digitale oder analoge Informationen übertragen möchten, die Möglichkeit haben, Anforderungsnachrichten an eine Kopfstelle zu senden. Anforderungen für eine Übertragung von Datenschlitzen können während einer Reservierungsunterkanalphase von den Knoten an die Kopfstelle übertragen werden, wobei das Netz für Anforderungsdatenschlitze geöffnet wird. Danach wird in der Datenphase eine Stattgabeliste auf dem Abwärtskanal von der Kopfstelle zu dem Knoten übertragen, die denselben ihre Position in der Datenübertragungsphase mitteilt. Am Ende der Stattgabeliste senden die Knoten, die die Erlaubnis für eine Übertragung empfangen haben, eine vorbestimmte Anzahl von Paketen auf dem Aufwärtskanal zu der Kopfstelle. Karshmer among other things, "TVNET: AN IMAGE AND DATA DELIVERY SYSTEM ...", discloses a system in which an image and data delivery is designed to use two channels of a standard cable television system A data transmission on the uplink and the downlink channel is on. handled a request basis, where nodes want to transmit digital or analog information, have the possibility to send request messages to a headend. requirements for transmission of data slots can be transmitted from the node to the headend during booking subchannel phase, the network request data slots is opened. Then in the data phase of a Grant list on the downstream channel from the headend is transmitted to the node that has the same position in the data transfer phase informs. At the end of the Grant List Send the nodes that have received permission for a transfer, a predetermined number of packets on the upstream channel to the headend. Die Kopfstelle überträgt die empfangenen Pakete zu dem Abwärtskanal zum Übertragen derselben an die Empfangsknoten. The headend transmits the received packets to the downstream channel for transmitting the same to the receiving node. In dem letzten Datenpaket sendet der Knoten, dem die Übertragung bewilligt ist, ein letztes Datenblockbit, um dem Empfänger mitzuteilen, dass keine weiteren Datenpakete mehr kommen, und um dem nächsten Sender in der Reservierungsliste ein Signal zu geben, mit dem Übertragen zu beginnen. In the last data packet sent by the node to which the transfer is approved, a final frame bit to tell the recipient that no further data packets arrive more, and to the next channel in the reservation list to send a signal to begin transmitting.
  • [0024] [0024]
    Die US-5,446,918 beschreibt ein interaktives Kabelnetz, bei dem Informationen von einer Kopfstelle zu einem zentralen Verteiler, der eine Mehrzahl von Kopfstellenmodems aufweist, zu einer Gruppe von Benutzermodems gesendet werden, die mit einem jeweiligen Kopfstellenmodem verbunden sind. US 5,446,918 describes an interactive cable network, are sent to a group of user modems in which information from a headend to a central manifold having a plurality of head office modem associated with a respective head-end modem. Die Verwendung innerhalb einer Teilgruppe wird abwechselnd abgefragt durch ein Befragen im Kreis, das es ermöglicht, Benutzermodems zu unterdrücken und zu aktivieren, die zu einem gegebenen Zeitpunkt nicht das Wort haben. The use within a sub-group is alternately interrogated by a questioning in a circle, making it possible to suppress user modems and activate that do not have the word at a time.
  • [0025] [0025]
    Die US-4,553,161 zeigt ein System zum Übertragen von Daten bei einem Zweiwegkabelfernsehsystem. The US 4,553,161 shows a system for transmitting data at a Zweiwegkabelfernsehsystem. Das System umfasst eine Kabelkopfstelle, die mit jedem Endgerät einer Mehrzahl von Teilnehmern über ein Fernsehkabel gekoppelt ist. The system includes a cable headend that is coupled to each terminal of a plurality of users via a television cable. Diese Teilnehmerendgeräte umfassen eine Decodiervorrichtung, die eine Abstimmvorrichtung umfasst, die auf einen codierten Kabelfernsehkanal abgestimmt ist. This user terminals include a decoding device that includes a tuner, which is matched to a coded cable television channel. Die Daten werden während des vertikalen Austastintervalls eines Abwärtsvideoprogrammiersignals geliefert, wobei eine Adresse, die den geographischen Bereich definiert, in dem das System wirksam ist, in einem x-Bit übertragen wird, und der Programmidentifikationscode, der das zugehörige Fernsehprogramm definiert, in einem y-Bit übertragen wird. The data are supplied during the vertical blanking interval of a downlink video programming signal, wherein an address that defines the geographical area in which the system is effective, is transferred in an x-bit, and the program ID code defining the corresponding television program, in a y- bit is transmitted. Die Abwärtssignale werden durch jedes der Teilnehmerendgeräte empfangen und werden decodiert, um einen Adressübereinstimmungszwischenspeicherpuls zu erzeugen, wenn eine Übereinstimmung zwischen dem empfangen y-Bitprogrammcode und dem gespeicherten Programmdecodierautorisierungsstatus angetroffen wird. The downward signals are received by each of the subscriber terminals and decoded to generate an address match latch pulse when a match between the received y Bitprogrammcode and the stored program decoding authorization status is encountered. Bei der Aufwärtsübertragung werden Datenpakete von den Ausgangsanschlussstiften eines Mikrocomputers zu einem Sender geliefert und werden auf vier getrennten Kanälen zu der Kopfstelle übertragen, derart, dass die Datenpakete mit dem Abwärtsvideosignal durch den erzeugten Adressübereinstimmungszwischenspeicherpuls synchronisiert sind. When uplink transmission data packets are supplied from the output pins of a microcomputer to a transmitter and transmitted on four separate channels to the headend, such that the data packets are synchronized to the downlink video signal by the generated address match latch pulse.
  • [0026] [0026]
    Es ist die Aufgabe der vorliegenden Erfindung, eine Datenübertragung mit einer hohen Effizienz zu liefern. It is the object of the present invention to provide a data transfer with a high efficiency.
  • [0027] [0027]
    Diese Aufgabe wird durch ein Hochgeschwindigkeitsdatenmodem gemäß Anspruch 1 gelöst. This object is achieved by a high-speed data modem according to claim 1.
  • [0028] [0028]
    Gemäß einem Ausführungsbeispiel wird ein Computernetz zur Hochgeschwindigkeitsdatenkommunikation bereitgestellt, das ein Datenübertragungskabel mit einer Wurzel und zumindest einem Blattknoten aufweist. According to an embodiment a computer network for high-speed data communication is provided, comprising a data transmission cable having a root and at least one leaf node. Ein Signalumwandlungssystem (SCS) ist an der Wurzel angeschlossen, und zumindest eine Client-Station ist an einem Blattknoten angeschlossen. A signal conversion system (SCS) attached to the root, and at least one client station is connected to a leaf node. Das SCS umfasst einen Sender, der Abwärtsdaten auf dem Kabel in einem ersten Frequenzband überträgt; The SCS includes a transmitter that transmits downlink data on the cable in a first frequency band; und einen Empfänger, der Daten von den Client-Stationen auf einem zweiten Frequenzband empfängt; and a receiver which receives data from client stations on a second frequency band; wobei die Abwärtsdaten Synchronisierungs- und Bestätigungssignale umfassen. the downlink data synchronization and acknowledgment signals comprise. Jede Client-Station weist einen Empfänger, der Daten auf dem ersten Frequenzband empfängt, und einen Sender auf, der Daten auf einem zweiten Frequenzband überträgt gemäß den auf dem ersten Frequenzband empfangenen Synchronisierungssignalen. Each client station has a receiver that receives data on the first frequency band, and a transmitter of the data on a second frequency band transmits in accordance with the synchronization signals received on the first frequency band.
  • [0029] [0029]
    Das Computernetz folgt den Schritten eines Verfahrens, das ein Abwärtsübertragen eines Steuersignals, das Synchronisierungsinformationen aufweist, auf einem ersten Frequenzband von dem Signalumwandlungssystem (SCS), ein Empfangen des Steuersignals an Client-Stationen, ein Aufwärtsübertragen von den Client-Stationen an das SCS auf einem zweiten Frequenzband, wobei die Übertragung zeitlich bezüglich der Synchronisierungsinformationen abgestimmt ist, und ein Bestätigen des erfolgreichen Empfangs der Aufwärtsübertragung auf dem ersten Frequenzband durch das SCS aufweist. The computer network follows the steps of a method, which has a downward-transmitting a control signal, the synchronization information, on a first frequency band from the signal conversion system (SCS), receiving the control signal to client stations, an uplink-transmitting by the client stations to the SCS on a second frequency band, wherein the transmission is timed with respect to the synchronization information, and a confirmation of the successful reception of the uplink transmission comprising at the first frequency band by the SCS.
  • [0030] [0030]
    Die Übertragungspakete der Client-Station können Anforderungen für reservierte Schlitze auf dem zweiten Frequenzband für nachfolgende Übertragungen umfassen, und das SCS weist einen Zeitplaner auf, der wirksam ist, um eine Startzeit für angeforderte reservierte Schlitze zu bestimmen, und überträgt die Startzeit für die angeforderten reservierten Schlitze. The transmission packets the client station may include requests for reserved slots on the second frequency band for subsequent transmissions, and the SCS has a scheduler, which is operative to determine a start time for requested reserved slots, and transmits the start time for the requested reserved slots. Eine Client-Station, die reservierte Schlitze angefordert hat, wartet mit dem Fortfahren ihrer Übertragung bis zu dieser Startzeit. A client station that requested reserved slots, waits to continue its transmission down to this start time.
  • Kurze Beschreibung der Zeichnungen Brief Description of Drawings
  • [0031] [0031]
    1 1 ist eine Darstellung eines Nachbarschaftskabelfernsehsystems, das gemäß der vorliegenden Erfindung angepasst ist, um eine Datenkommunikation zwischen einem Signalumwandlungssystem (SCS), das an der Kopfstelle angeordnet ist, und Client-Stationen, die an den Teilnehmerorten angeordnet sind, zu liefern. is an illustration of a neighborhood cable tv system adapted according to the present invention to provide a data communication between a Signal Conversion System (SCS), which is arranged at the head end and client stations located at the subscriber locations.
  • [0032] [0032]
    2 2 ist ein Schema des Signalumwandlungssystems (SCS) gemäß der vorliegenden Erfindung. is a schematic of Signal Conversion System (SCS) according to the present invention.
  • [0033] [0033]
    3 3 ist ein grobes Schema eines Kabelmodems, das gemäß dem Kabelfernsehsystem von is a rough schematic of a cable modem, in accordance with that of the cable television system 1 1 verwendet wird. is used.
  • [0034] [0034]
    4 4 ist eine Kennlinie, die ein Beispiel von Amplituden über Frequenz für einen Teil des Frequenzspektrums für ein Kabelfernsehkabel zeigt. is a graph showing an example of amplitudes versus frequency for a portion of the frequency spectrum for a cable tv cable.
  • [0035] [0035]
    5 5 ist eine Darstellung einer exemplarischen Aktivität auf dem Abwärtskanal und dem Aufwärtskanal. is an illustration of exemplary activity on the downlink channel and the uplink channel.
  • [0036] [0036]
    6(a) 6 (a) ist ein Blockdiagramm des üblichen Rahmenformats für den Abwärtssteuerkanal. is a block diagram of the common frame format for the downstream control channel.
  • [0037] [0037]
    6(b) 6 (b) ist ein Blockdiagramm des Formats eines Abwärtsbestätigungsrahmens, der auf dem Steuerkanal gesendet wird. is a block diagram of the format of a downstream acknowledgment frame, which is sent on the control channel.
  • [0038] [0038]
    6(c) 6 (c) ist ein Blockdiagramm der Abwärtsnutzdatenrahmen, die von dem SCS zu den Kabelmodems übertragen werden. is a block diagram of the Abwärtsnutzdatenrahmen, which are transmitted from the SCS to the cable modems.
  • [0039] [0039]
    7 7 ist ein Blockdiagramm eines üblichen Formats für einen Aufwärtskanalrahmen. is a block diagram of a conventional format for an upstream channel frame.
  • [0040] [0040]
    8 8 zeigt detaillierter ein Kabelmodem der vorliegenden Erfindung. shows in greater detail a cable modem of the present invention.
  • [0041] [0041]
    9 9 ist ein Blockdiagramm eines verallgemeinerten Verbindungsschemas zum Verbinden von Vorrichtungen mit der Busentscheidungs- und Prioritätsschaltung (BAPC). is a block diagram of a generalized connection scheme for connecting devices to the bus arbitration and priority circuit (BAPC).
  • [0042] [0042]
    10 10 ist ein Zeitdiagramm, das ein Beispiel einer Übertragung von Daten zwischen einer zustandsmaschinengesteuerten Vorrichtung und der BAPC zeigt. is a timing diagram showing an example of a transmission of data between a state machine controlled device and the BAPC.
  • [0043] [0043]
    11 11 ist ein Schema der Busentscheidungs- und Prioritätsschaltung (BAPC). is a schematic of the bus arbitration and priority circuit (BAPC).
  • [0044] [0044]
    12 12 ist ein Schema eines Abschnitts einer Vorrichtung, und zwar des Abschnitts, der das Bestätigungssignal empfängt, und ist eine Darstellung des Betriebs der Vorrichtung im Stoß-Modus. is a schematic of a portion of a device, namely of the portion which receives the acknowledgment signal and is a representation of the operation of the device in burst mode.
  • [0045] [0045]
    13 13 ist ein Zeitdiagramm, das einen exemplarischen Satz von Transaktionen zeigt, die durch die Busentscheidungs- und Prioritätsschaltung von is a timing diagram showing an exemplary set of transactions that of by the bus arbitration and priority circuit 11 11 verarbeitet werden. be processed.
  • [0046] [0046]
    14(a) 14 (a) ist ein grobes Schema der Master-Aller-Zeiger-(MOAP-) Struktur der Steuerschaltung des Kabelmodems, wie es in is a rough diagram of the master-Aller Pointer (MOAP-) structure of the control circuit of the cable modem as shown in 8 8 gezeigt ist. is shown.
  • [0047] [0047]
    14(b) 14 (b) ist ein Schema der allgemeinen Formate von Datenpaketen, wie diese in RAM gespeichert sind. is a schematic of the general formats of data packets as these are stored in RAM.
  • [0048] [0048]
    15 15 ist ein „Blasendiagramm" der allgemeinen Form einer ersten und einer zweiten Kategorie von Zustandsmaschinen. is a "bubble chart" of the general form of a first and a second category of state machines.
  • [0049] [0049]
    16 16 ist ein Schema des verallgemeinerten Datenpfades is a schematic of the generalized data path 1601 1601 von Adressregistern der Komponentenvorrichtungen der Steuerschaltung des Kabelmodems gemäß der vorliegenden Erfindung. of address registers of the component devices of the control circuit of the cable modem according to the present invention.
  • [0050] [0050]
    17 17 ist ein „Blasendiagramm" der Zustandsmaschine, die die vorgeschaltete Vorrichtung steuert. is a "bubble chart" of the state machine that controls the upstream apparatus.
  • [0051] [0051]
    18 18 ist ein „Blasendiagramm" der Zustandsmaschine, die die Chiffriervorrichtung steuert. is a "bubble chart" of the state machine that controls the Cipher Device.
  • Detaillierte Beschreibung der bevorzugten Ausführungsbeispiele Detailed Description of the Preferred Embodiments
  • [0052] [0052]
    1 1 ist eine Darstellung eines Nachbarschaftskabelfernsehsystems is an illustration of a neighborhood cable television system 100 100 , das gemäß der vorliegenden Erfindung angepasst ist, um eine Datenkommunikation zwischen einem Signalumwandlungssystem (SCS) Adapted according to the present invention to provide a data communication between a Signal Conversion System (SCS) 101 101 , das an einer Kopfstelle That at a headend 103 103 angeordnet ist, und Client-Stationen is disposed, and client stations 105a 105a –j, die an Teilnehmerorten angeordnet sind, zu liefern. -j, which are located at subscriber locations to provide. Jedes SCS Each SCS 101 101 ist mit einem Paketrouter is a packet router 117 117 verbunden, der Datenpakete zu und von entfernten Serverstationen leitet. connected, the data packets to and guided by remote server stations. Bei einem alternativen Verbindungsschema bildet ein SCS In an alternative connection scheme forms a SCS 101 101 , z. B. , Z. B. 101'' 101 '' , lokal oder entfernt eine Schnittstelle mit einem Schaltungsschalter , Locally or remotely interface with a circuit switch 119 119 für schaltungsgeschaltete konstante Bitratendienste. for circuit-switched constant bit rate services. Letzterer kann verwendet werden, um eine digitalisierte Sprachverbindung mit einem Telefonnetz zu liefern. The latter can be used to provide a digitized voice connection to a telephone network.
  • [0053] [0053]
    Bei vielen Kabelfernsehsystemen sind etwa 500 bis 2.000 Teilnehmer an die gleiche Kopfstelle Many cable television systems about 500 to 2,000 participants are at the same headend 103 103 angeschlossen. connected. Die Kopfstelle The head 103 103 kommuniziert mit den verschiedenen Teilnehmerorten communicates with the various subscriber locations 105 105 über optische Faserkabel via optical fiber cable 107a 107a und and 107b 107b , die mit einem Faserknoten That having a fiber node 109 109 verbunden sind. are connected. Der Faserknoten The fiber node 109 109 ist ferner über Koaxialkabel is also connected via coaxial cable 111a 111a und and 111b 111b angeschlossen. connected. Der Faserknoten The fiber node 109 109 enthält einen Mechanismus zum Umwandeln zwischen optischen und elektrischen Signalen. contains a mechanism for converting between optical and electrical signals. Die Kommunikation zwischen einem Router The communication between a router 117 117 und einem SCS and an SCS 101 101 ist digital. is digital. Die Kommunikation zwischen der Kopfstelle The communication between the headend 103 103 und den Teilnehmerorten erfolgt jedoch in analoger Form. and participating locations will be made in analog form.
  • [0054] [0054]
    Das SCS The SCS 101 101 wandelt die digitalen Kommunikationssignale zwischen den Routern converts the digital communication signals between the routers 117 117 und die analoge Kommunikation, die auf den optischen Faser- und Koaxialkabeln eines Kabelfernsehsystems stattfindet, um. and the analog communications that occur on the optic fiber and coaxial cables of a cable television system, in order.
  • [0055] [0055]
    Jede Client-Station Each client station 105 105 enthält ein Kabelmodem contains a cable modem 113 113 , das mit einem Computer Equipped with a computer 115 115 verbunden ist. is connected. Bei alternativen Ausführungsbeispielen ist der Computer In alternative embodiments, the computer 115 115 durch andere Vorrich tungen ersetzt, die von einer Datenkommunikation mit der Kopfstelle replaced by other Vorrich lines, of the data communication with the headend 103 103 über das Kabel via the cable 111 111 profitieren würden. would benefit. Beispiele für derartige Alternativen umfassen Set-Top-Boxen zum Anfordern bestimmter Kabelfernsehoperationen, z. B. Dienste nach dem Video-auf-Anfrage-Typ und interaktives Fernsehen. Examples of such alternatives include set-top boxes to request certain cable television operations, such. As services for the video-on-demand type and interactive television.
  • [0056] [0056]
    2 2 ist ein Blockdiagramm des Signalumwandlungssystems (SCS) is a block diagram of the Signal Conversion System (SCS) 101 101 . , Das Signalumwandlungssystem (SCS) The Signal Conversion System (SCS) 101 101 ist an die Faserkabel is the fiber cable 107a 107a und and 107b 107b angeschlossen. connected. Unter Verwendung eines Senders Using a transmitter 205 205 überträgt das SCS transmits the SCS 101 101 Daten auf das Faserkabel Data on the fiber cable 107a 107a unter Verwendung eines 64-QAM- (64-Bit-Quadratur-Amplitudenmodulation-) oder 256-QAM- (256-Bit-QAM-) Übertragungsformats. using a 64-QAM (64-bit quadrature Amplitudenmodulation-) or 256-QAM (256-QAM) transmission format. Unter Verwendung mehrerer Empfänger Using multiple receivers 207 207 empfängt das SCS receives the SCS 101 101 QPSK-Daten auf mehreren Kanälen auf dem Faserkabel QPSK data on multiple channels on the fiber cable 107b 107b . , Sowohl der Sender Both the transmitter 205 205 als auch der Empfänger and the receiver 207 207 sind mit einem SCS-Bus are equipped with a SCS bus 203 203 verbunden. connected.
  • [0057] [0057]
    Das SCS The SCS 101 101 enthält eine Router-Schnittstelle contains a router interface 201 201 , die mit einem Router That to a router 117 117 verbunden ist. is connected. Die ROUTER-Schnittstelle The ROUTER interface 201 201 empfängt und überträgt digitale Datenpakete, z. B. Internetprotokoll- (IP-) Pakete oder ATM-Zellen, zu dem Router receives and transmits digital data packets, for. example, Internet Protocol (IP) packets or ATM cells, to the router 117 117 . , Die ROUTER-Schnittstelle The ROUTER interface 201 201 ist mit dem internen Bus is connected to the internal bus 203 203 zum Übertragen von Daten zu und von anderen Komponenten des SCS for transferring data to and from other components of the SCS 101 101 verbunden. connected.
  • [0058] [0058]
    Eine zentrale Verarbeitungseinheit (CPU) A central processing unit (CPU) 209 209 bewerkstelligt die Umwandlung von Daten zwischen 64-QAM, QPSK und dem digitalen Paketformat der Router-Schnittstelle accomplishes the conversion of data between 64-QAM, QPSK, and the digital packet format of the router interface 201 201 . , Die CPU The CPU 209 209 leitet auch Datenverkehr auf dem Bus also directs traffic on the bus 203 203 . , Außerdem erfordern viele der Daten, die auf den Kabeln In addition, many of the data on the cables require 107a 107a und and 107b 107b übertragen und empfangen werden, ein umfangreiches Verarbeiten und Formatieren. are transmitted and received, an extensive processing and formatting. Die CPU The CPU 209 209 ist für dieses Verarbeiten und Formatieren zuständig. is responsible for this processing and formatting. Viele der Prozeduren zum Steuern des Betriebs der CPU Many of the procedures for controlling the operation of the CPU 209 209 sind in einem ROM are in a ROM 211 211 gespeichert, der mit dem Bus stored, the bus 203 203 verbunden ist. is connected. Ein RAM A RAM 213 213 zum Speichern von Daten während eines Verarbeitens und einer erneuten Übertragung ist ferner mit dem Bus for storing data during processing and retransmission is further connected to the bus 203 203 verbunden. connected. Andere Prozeduren zum Steuern des Betriebs des SCS Other procedures for controlling the operation of the SCS 101 101 und seiner Komponenten, wie z. B. der CPU and its components, such as. for example, the CPU 209 209 , sind in sekundären Speichervorrichtungen Are in secondary storage devices 213 213 und and 215 215 gespeichert, die beide über eine I/O-Einheit stored, both via an I / O unit 217 217 mit dem Bus by bus 203 203 verbunden sind. are connected.
  • [0059] [0059]
    In vielen Fällen sind Daten, die über die Kabel In many cases, data cable via the 107a 107a und and 107b 107b zu und von dem SCS übertragen werden, verschlüsselt. transferred to and from the SCS is encrypted. Die CPU The CPU 209 209 fordert eine Datenverschlüsselungsvorrichtung calls for data encryption device 219 219 auf, die Verschlüsselungs- und Entschlüsselungsaufgaben auszuführen. to perform the encryption and decryption tasks. Bei einem bevorzugten Ausführungsbeispiel verwendet das SCS den Datenverschlüsselungsstandard DES zur Verschlüsselung. In a preferred embodiment the SCS uses the Data Encryption Standard DES for encryption.
  • [0060] [0060]
    3 3 ist ein grobes schematisches Diagramm des Kabelmodems (CM) is a rough schematic diagram of the cable modem (CM) 113 113 , das mit einem Kabel Provided with a cable 111 111 und einem Personalcomputer (PC) and a personal computer (PC) 115 115 verbunden ist. is connected. Das CM The CM 113 113 empfängt Datensignale von dem Kabel in eine Abstimmvorrichtung receiving data signals from the cable into a tuner 303 303 und überträgt Datensignale auf das Kabel durch einen Sender and transmits data signals onto the cable by a transmitter 305 305 . , Bei dem bevorzugten Ausführungsbeispiel ist die Abstimmvorrichtung In the preferred embodiment, the tuning device is 303 303 ein 64-QAM-Empfänger und der Sender ist ein QPSK-Sender. a 64-QAM receiver and the transmitter is a QPSK transmitter.
  • [0061] [0061]
    Bei einer groben Beschreibung ist das CM In a rough description, the CM 113 113 für ein Filtern von Signalen, die zwischen dem PC for filtering of signals between the PC 115 115 und dem Kabel and the cable 111 111 übertragen werden, (ggf.) für ein Verschlüsseln/Entschlüsseln dieser Signale, für ein Puffern von Daten und für ein Übersetzen zwischen dem Kommunikationsprotokoll für Übertragungen auf dem Kabel und dem Kommunikationsprotokoll für Modem-zu-PC-Übertragungen zuständig. are transferred (if necessary) is responsible for encrypting / decrypting these signals, for buffering data and for translating between the communication protocol for transmissions on the cable and the communication protocol for modem-to-PC transmissions. Diese und andere Funktionen (wie es im Folgenden erörtert ist) werden durch eine Vielzahl von Komponentenschaltungen erreicht. These and other functions (as discussed below) can be achieved by a variety of component circuits. Das Herzstück des CM The heart of the CM 113 113 ist eine Steuerschaltung a control circuit 301 301 . , Die Steuerschaltung The control circuit 301 301 ist mit den anderen Komponentenschaltungen verbunden und steuert mit Hilfe eines Mikroprozessors is connected to the other component circuits and controls with the help of a microprocessor 302 302 Zeitgebung und das gemeinschaftliche Verwen den von Vorrichtungen unter den verschiedenen anderen Komponentenschaltungen. Timing and Community Verwen of the devices under various other components circuits.
  • [0062] [0062]
    Die Kommunikation zwischen dem CM The communication between the CM 113 113 und dem PC and the PC 115 115 wird durch eine Lokales-Netz- (LAN-) Sender/Empfänger-Schaltung is a local-area network (LAN) transmitter / receiver circuit 307 307 erreicht. reached. Die LAN-Schaltung ist mit der Steuerschaltung The LAN circuit is connected to the control circuit 301 301 verbunden. connected. Bei dem bevorzugten Ausführungsbeispiel verwendet die bestimmte I/O-Schnittstelle zwischen dem CM In the preferred embodiment, the specific I / O interface between the CM used 113 113 und dem PC and the PC 115 115 das 10-baseT-Protokoll, andere Modem-zu-PC-Protokolle sind jedoch annehmbare Alternativen. However, the 10-BaseT protocol other modem-to-PC protocols are acceptable alternatives. Bei alternativen Ausführungsbeispielen können andere LAN-Protokolle, wie z. B. das 100BaseVG-Protokoll der Hewlett-Packard Company, verwendet werden. In alternative embodiments, other LAN protocols such. As may be the 100BaseVG protocol of Hewlett-Packard Company used.
  • [0063] [0063]
    Informationen, die zwischen dem PC Information between the PC 115 115 und dem Kabel and the cable 111 111 übertragen werden, werden in dem Kabelmodem in einem Direktzugriffsspeicher transmitted, in the cable modem in a random access memory 309 309 gepuffert, der mit der Steuerschaltung buffered, to said control circuit 301 301 verbunden ist. is connected. Wie es im Folgenden erörtert ist, ist eine Kommunikation zwischen dem CM As discussed below, is a communication between the CM 113 113 und dem Kabelsystem einer Kollision mit Nachrichten, die durch andere Client-Stationen and the cable system of a collision with messages from other client stations 105 105 gesendet werden, ausgesetzt. be sent exposed. Außerdem werden Kollisionen durch ein Verwenden eines Reservierungssystems vermieden. Moreover, collisions are avoided by using a reservation system. Das Kollisionshandhabungs- und Reservierungssystem ist für den PC The Kollisionshandhabungs- and reservation system for the PC 115 115 transparent. transparent. Während dieselbe darauf wartet, übertragen zu werden, wird eine Nachricht deshalb in dem RAM While the same is waiting to be transmitted, a message is therefore in the RAM 309 309 gepuffert. buffered. Außerdem wird von dem CM In addition, of the CM 113 113 vor einer erneuten Übertragung an das Kabel before retransmitting the cable 111 111 bzw. den PC or PC 115 115 ein zusätzliches Verarbeiten einer ankommenden oder abgehenden Nachricht benötigt. an additional processing an incoming or outgoing message requires. Ein derartiges Verarbeiten umfasst eine Verschlüsselung und Entschlüsselung. Such processing includes encryption and decryption. Die Verschlüsselung/Entschlüsselung wird durch eine Chiffrierschaltung The encryption / decryption is an enciphering 311 311 ausgeführt, die mit der Steuerschaltung carried out with said control circuit 301 301 verbunden ist. is connected.
  • [0064] [0064]
    Eine Kommunikation über das Kabel A communication over the cable 111 111 ist durch ein Verwenden von Frequenzmultiplextechniken über einen Frequenzbereich von 5 MHz bis 750 MHz möglich. is possible by using frequency multiplexing techniques over a frequency range of 5 MHz to 750 MHz. Standardfernsehkanäle werden üblicherweise in dem Bereich über 50 MHz übertragen. Standard television channels are usually transmitted in the region above 50 MHz.
  • [0065] [0065]
    Jeder derartige Kanal ist 6 MHz breit. Each such channel is 6 MHz wide. Üblicherweise sind die Frequenzen unter 50 MHz unstrukturiert und weisen starkes Rauschen auf. Usually, the frequencies below 50 MHz and unstructured obvious noise. Bei dem bevorzugten Ausführungsbeispiel findet eine Aufwärtskommunikation (eine Kommunikation von dem CM In the preferred embodiment, an upstream communication will (communication from the CM 113 113 zu dem SCS to the SCS 101 101 ) auf einem 2 MHz breiten Frequenzband in dem Frequenzspektrum von 5 bis 42 MHz statt, und eine Abwärtskommunikation (von dem SCS ) On a 2MHz wide frequency band in the frequency range 5-42 MHz instead, and a downlink communication (from the SCS 101 101 zu dem CM to the CM 113 113 ) findet auf einem 6 MHz breiten Standardfernsehkanal in dem Bereich von 50 MHz und darüber statt und wird im Folgenden als der Abwärtskanal bezeichnet. ) Takes place on a 6 MHz wide standard television channel, rather than in the range of 50 MHz and above, and is hereinafter referred to as the downlink channel. Somit dient das Band von 5 bis 42 MHz als das Spektrum, in dem ein Kommunikationskanal von den Client-Stationen Thus, the 5-42 MHz band serves as the spectrum in which a communication channel from the client stations 105 105 zu dem SCS to the SCS 101 101 ausgewählt werden kann, und das Band über 50 MHz dient als das Spektrum, aus dem Kommunikationskanäle von dem SCS can be selected and the band above 50 MHz is used as the spectrum from which communication channels from the SCS 101 101 zu den Client-Stationen to the client stations 105 105 ausgewählt werden können. can be selected.
  • [0066] [0066]
    Alternative Ausführungsbeispiele liefern mehrere Kommunikationskanäle in jeder Richtung. Alternative embodiments provide a plurality of communication channels in each direction. Derartige Alternativen sind natürliche Erweiterungen des beschriebenen bevorzugten Ausführungsbeispiels und fallen in den Schutzbereich der vorliegenden Erfindung. Such alternatives are natural extensions of the preferred embodiment described and fall within the scope of the present invention. Zu veranschaulichenden Zwecken ist die vorliegende Erfindung in dem Zusammenhang des Ausführungsbeispiels mit einem Kanal pro Richtung beschrieben. To illustrative purposes, the present invention in the context of the exemplary embodiment is described with a channel for each direction. Ein Fachmann wird jedoch erkennen, wie die Erfindung bei den Alternativen mit mehreren Kanälen anzuwenden ist. One skilled in the art will recognize, however, how the invention is applied in the alternatives with multiple channels.
  • [0067] [0067]
    4 4 ist ein graphisches Beispiel von Signalen, die unter 50 MHz übertragen werden. is a graphical example of signals transmitted below 50MHz. Wie es aus diesem Beispiel ersichtlich ist, gibt es einige Regionen mit sehr wenig Aktivität, z. B. zwischen 8 und 12 MHz, 15 und 20 MHz, 23 und 27 MHz und 31 und 37 MHz. As is apparent from this example, there are some regions with very little activity, z. B. 8 to 12 MHz, 15 MHz and 20, 23 and 27 MHz and 31 and 37 MHz. Andere Bereiche weisen ein sehr starkes Rauschen auf. Other areas have a very strong noise. Das Signalumwandlungssystem (SCS) The Signal Conversion System (SCS) 101 101 überwacht fortlaufend das Frequenzband von 5 bis 42 MHz, um 2 MHz breite Bänder zu lokalisieren, die kein Rauschen aufweisen. continuously monitors the frequency band 5-42 MHz to 2 MHz to locate broad bands, that have no sound. Nachdem dasselbe ein derartiges Band lokalisiert hat, rundsendet das Signalumwandlungssystem (SCS) After the same band has such a localized broadcasts the signal conversion system (SCS) 101 101 die Frequenz (z. B. die Mitte oder den Beginn) des 2-MHz-Bandes an die Client-Stationen the frequency (z. B. the center or beginning) of the 2MHz band to the client stations 105 105 . , Dieses 2-MHz- Band wird durch die Client-Stationen This 2-MHz band is determined by the client stations 105 105 verwendet, um Daten an das Signalumwandlungssystem (SCS) used to transmit data to the Signal Conversion System (SCS) 101 101 zu übertragen, und wird im Folgenden als der „Aufwärtskanal" bezeichnet. Bei dem alternativen Ausführungsbeispiel mit mehreren Kanälen lokalisiert das Signalumwandlungssystem (SCS) to transfer, and is referred to as the "upstream channel" in the following. localized In the alternative embodiment having a plurality of channels, the Signal Conversion System (SCS) 101 101 mehr als ein 2 MHz breites Band mit niedriger Aktivität und rundsendet die Frequenz eines jeden derartigen Bandes. more than a 2 MHz wide band of low activity and broadcasts the frequency of each such band.
  • [0068] [0068]
    Bei dem bevorzugten Ausführungsbeispiel verwendet die Abwärtskommunikation 64-QAM. In the preferred embodiment, the downward communication uses 64-QAM. Bei 64-QAM werden sechs Bits pro Symbol von Daten gleichzeitig gesendet. For 64-QAM six bits per symbol of data are sent simultaneously. Bei der vorliegenden Erfindung wird eines dieser Bits für Steuerinformationen verwendet, und die verbleibenden fünf Bits sind Nutzdaten. In the present invention one of those bits is used for control information, and the remaining five bits are payload data. Das Steuerbit wird im Folgenden als der „Steuerkanal" bezeichnet. The control bit is referred to as the "control channel" in the following.
  • [0069] [0069]
    5 5 ist eine Darstellung einer exemplarischen Aktivität auf dem Abwärtskanal und dem Aufwärtskanal. is an illustration of exemplary activity on the downlink channel and the uplink channel. Für eine Abwärtskommunikation wird die Zeit in gleich lange Intervalle aufgeteilt, die Schlitze genannt werden. For a downlink communication, the time is divided into intervals of equal length, which are called slots. Jeder Schlitz ist durch eine Nummer identifiziert. Each slot is identified by a number. Schlitznummern sind sequentiell und reichen von 0 bis zu einem Maximal_Zählwert, wobei die Schlitznummer auf 0 rückgesetzt wird, nachdem der Maximal_Zählwert erreicht worden ist. Slot numbers are sequential and range from 0 to a Maximum_Count, the slot number is reset to 0 after the Maximum_Count has been reached. Bei dem bevorzugten Ausführungsbeispiel beträgt der Maximal_Zählwert weniger als 32. Andere Ausführungsbeispiele würden größere Maximal_Zählwert-Werte erlauben. In the preferred embodiment of the Maximum_Count is less than 32. Other embodiments would allow larger Maximum_Count values. Der Maximal_Zählwert ist durch das SCS programmierbar. The Maximum_Count is programmable by the SCS. Bei der Darstellung von In the representation of 5 5 sind 14 Schlitze (0 bis 13) durch eine Zeitlinie 14 slots (0 to 13) through a timeline 501 501 dargestellt. shown. Die Schlitzgrenzen der Zeitlinie The slot boundaries of time line 501 501 beziehen sich auf das Signalumwandlungssystem (SCS) refer to the Signal Conversion System (SCS) 101 101 . , Da Zeitverzögerungen auftreten, die mit der Fortpflanzung von Daten entlang des Kabels zusammenhängen, kommunizieren und empfangen die verschiedenen Client-Stationen Since time delays associated with the propagation of data along the cable, communicate and receive the various client stations 105 105 Daten bei unterschiedlichen Grenzen. Data at different limits.
  • [0070] [0070]
    Die Länge jedes Zeitschlitzes ist durch eine feste Anzahl von Abwärtssteuerkanalrahmen dargestellt. The length of each time slot is represented by a fixed number of downstream control channel frames. Die Anzahl von Rahmen pro Schlitz ist durch das Signalumwandlungssystem (SCS) The number of frames per slot by the Signal Conversion System (SCS) 101 101 programmierbar. programmable. Dieses Verhältnis (Rahmen/Schlitz) bleibt jedoch bis zur Rücksetzung fest. This ratio (frame / slot) remains fixed until reset. Der Zeitschlitz ist dimensioniert, um die Zeit, die erforderlich ist, um das größte zulässige Übertragungspaket während einer Konkurrenz aufwärts zu übertragen, und die Differenz bei der Umlauffortpflanzungsverzögerung zwischen der Client-Station The time slot is sized to the time required to transmit the largest allowed transmission packet upstream during contention and the difference in the current propagation delay between the client station 105 105 , die dem SCS That the SCS 101 101 am nächsten ist, und der Client-Station is closest, and the client station 105 105 , die am weitesten von dem SCS , The furthest from the SCS 101 101 entfernt ist, zu umfassen. is removed to include.
  • [0071] [0071]
    Ein Steuerrahmen ist die Grundeinheit der Kommunikation zwischen dem Signalumwandlungssystem (SCS) A control frame is the basic unit of communication between the Signal Conversion System (SCS) 101 101 und den verschiedenen Client-Stationen and the various client stations 105 105 bei dem Steuerkanal. in the control channel. Bei dem bevorzugten Ausführungsbeispiel ist ein Steuerrahmen In the preferred embodiment, a control frame 20 20 Bytes lang. Bytes long. Es gibt ein übliches Rahmenformat. There is a common frame format. 6(a) 6 (a) ist ein Blockdiagramm des üblichen Rahmenformats. is a block diagram of the common frame format. Jeder Rahmen folgt der allgemeinen Struktur, die in Each frame follows the general structure shown in 6(a) 6 (a) gezeigt ist. is shown. Jeder Rahmen beginnt mit einem Sync-Flag Each frame starts with a Sync flag 601 601 . , Die Rahmenbildung des Abwärtssteuerkanals verwendet das SYNC-Flag The framing of the downstream control channel uses the SYNC flag 601 601 , um den Beginn des Rahmens zu bezeichnen. To indicate the start of the frame. Bei dem bevorzugten Ausführungsbeispiel weist das SYNC-Flag den Wert „0110" auf, andere Bitsequenzen können jedoch durch Übereinkunft übernommen werden. In the preferred embodiment the SYNC flag has the value "0110" on, but other bit sequences may be adopted by convention.
  • [0072] [0072]
    Bei dem bevorzugten Ausführungsbeispiel gibt es vier Typen von Rahmen: Bestätigungsrahmen, Steuerrahmen, Variable-Bitrate- (VBR-) Datenrahmen und Konstante-Bitrate- (CBR-) Datenrahmen. In the preferred embodiment, there are four types of frames: acknowledgment frame, control frame, variable-bitrate (VBR) data frame, and constant-bitrate (CBR) data frame. Der Typ wird durch das Typfeld The type is the type field 603 603 identifiziert. identified. Es schließt sich ein 5-Bit-Feld an, das die Schlitz-ID für den Rahmen This is followed by a 5-bit field that contains the slot ID for the frame 605 605 angibt. specifies. Der maximale Wert für die Schlitz-ID ist durch das Signalumwandlungssystem (SCS) The maximum value for the Slot ID is by the Signal Conversion System (SCS) 101 101 programmierbar. programmable.
  • [0073] [0073]
    Schlitze werden in zwei Klassen aufgeteilt: Konkurrenzschlitze und reservierte Schlitze. Slots are divided into two classes: contention slots and reserved slots. Während eines Konkurrenzschlitzes können alle Client-Stationen During a competition slot all client stations can 105 105 oder ein Teilsatz von Client-Stationen or a subset of client stations 105 105 auf den Aufwärtskanal übertragen. transmitted to the upstream channel. Reservierte Schlitze sind für eine bestimmte Client-Station Reserved slots are for a particular client station 105 105 eigens vorgesehen, und nur dieser bestimmte Client specifically provided, and only that particular client 105 105 kann Informationspakete auf dem Aufwärtskanal übertragen. can transmit on the upstream channel information packets.
  • [0074] [0074]
    In der Darstellung von In the illustration of 5 5 konkurrieren zwei Client-Stationen compete two client stations 105a 105a und and 105b 105b um Zeit auf dem Aufwärtskanal. for time on the upstream channel. Linie Line 502 502 ist eine Darstellung der Übertragungen, die durch die Client-Station is a diagram of transmissions by the client station 105a 105a auf dem Aufwärtskanal platziert werden, Linie are placed on the upstream channel, line 504 504 ist eine Darstellung des Empfangs von Nachrichten auf dem Aufwärtskanal durch das Signalumwandlungssystem (SCS) is an illustration of the reception of messages on the upstream channel by the Signal Conversion System (SCS) 101 101 , Linie , Line 506 506 ist eine Darstellung der Übertragungen, die durch das Signalumwandlungssystem (SCS) is a diagram of transmissions by the Signal Conversion System (SCS) 101 101 auf dem Steuerkanal platziert werden, Linie are placed on the control channel, line 508 508 ist eine Darstellung des Empfangs von Nachrichten auf dem Steuerkanal durch die Client-Stationen is an illustration of the reception of messages on the control channel by the client stations 105a 105a und and 105b 105b und Linie and line 510 510 ist eine Darstellung von Nachrichten, die durch die Client-Station is a representation of messages that the client station 105b 105b auf dem Aufwärtskanal platziert werden. are placed on the upstream channel.
  • [0075] [0075]
    Die Nachrichten, die durch das Signalumwandlungssystem (SCS) The messages by the Signal Conversion System (SCS) 101 101 ausgesendet werden, legen den Takt für Aufwärtsübertragungen fest. are sent, set the clock for uplink transmissions. Während Konkurrenzschlitzen werden alle Übertragungen derart ausgeführt, dass ein Übertragungspaket in seiner Gesamtheit innerhalb eines Schlitzes übermittelt wird. During contention slots all transmissions are designed so that a transmission packet is transmitted in its entirety within a slot. Während reservierter Schlitze kann ein Datenpaket jedoch Schlitzgrenzen überschreiten. While reserved slots a data packet can, however, exceed slot boundaries. Die Client-Stationen The client stations 105 105 überwachen den Steuerkanal, um herauszufinden, wann Schlitze beginnen und enden. monitor the control channel to find out when slots begin and end. Aufgrund von Übertragungsverzögerungen werden diese Schlitzgrenzen durch die verschiedenen Client-Stationen Due to transmission delays this slot boundaries are determined by the various client stations 105 105 abhängig von der Entfernung von dem Signalumwandlungssystem (SCS) depending on the distance from the Signal Conversion System (SCS) 101 101 so wahrgenommen, dass sich dieselben bei unterschiedlichen Zeitpunkten befinden. perceived that the same are located at different points in time.
  • [0076] [0076]
    Bei Linie In line 502 502 von from 5 5 sendet die Client-Station sends the client station 105a 105a eine Anforderung a request 505 505 in dem Zeitschlitz 0. Aufgrund der Fortpflanzungsverzögerung beginnt die Client-Station in the time slot 0. Because of the propagation delay, the client station begins 105a 105a aus der Perspektive des Signalumwandlungssystems (SCS) from the perspective of the Signal Conversion System (SCS) 101 101 die Übertragung bereits ein Stück innerhalb des Zeitschlitzes 0. the transmission already a piece within the time slot 0th
  • [0077] [0077]
    Bei der folgenden Erörterung sind Datenpakete zu veranschaulichenden Zwecken so gezeigt, dass dieselben gesamte Zeitschlitze verbrauchen. In the following discussion, the data packets are for illustrative purposes only shown so that the same total time slots consume. In Wirklichkeit verbraucht ein Paket weniger als einen Zeitschlitz, und die Zeitschlitze sind dimensioniert, um Fortpflanzungsverzögerungen zu berücksichtigen. In reality a packet consumes less than a time slot, and the time slots are dimensioned to take into account propagation delays. Informationspakete sind durch ein Verwenden des gleichen Bezugszeichens, an das ein Apostroph angehängt ist, als die empfangene Version eines Pakets angezeigt, das durch eine andere Station gesendet wurde, z. B. kann eine Client-Station ein Paket Information packages by using the same reference number to which an apostrophe is appended as the received version of a package is displayed, which was sent by another station, z. B., a client station a package 505 505 senden, wenn dasselbe empfangen worden ist, wird es als ein Paket send, when the same has been received, it is used as a packet 505' 505 ' gezeigt. shown.
  • [0078] [0078]
    Linie Line 504 504 ist eine Darstellung der Ansicht des Aufwärtskanals aus der Perspektive des Signalumwandlungssystems (SCS) is a representation of the view of the upstream channel from the perspective of the Signal Conversion System (SCS) 101 101 . , Aufgrund der Fortpflanzungsverzögerung empfängt das Signalumwandlungssystem (SCS) Due to the propagation delay, the Signal Conversion System (SCS) receives 101 101 das Paket the package 505 505 wieder zu einem späteren Zeitpunkt, als dasselbe gesendet wurde, wie es durch Paket was again the same as sent at a later time, as indicated by packet 505' 505 ' angezeigt ist. is displayed. Das Signalumwandlungssystem (SCS) The Signal Conversion System (SCS) 101 101 verarbeitet dann das Paket then processes the packet 505 505 . , Ein Datenpaket, das von der Client-Station A data packet sent from the client station 105 105 gesendet wird, kann in sich geschlossen sein, dh es handelt sich dabei um eine vollständige Übermittlung von Informationen an das Signalumwandlungssystem (SCS) being sent can be self-contained, ie it involves a complete transmission of information to the Signal Conversion System (SCS) 101 101 . , Da jedoch eine Client-Station However, since a client station 105 105 manchmal mehr Informationen übertragen möchte, als in ein Paket passen, dh mehr als in einem Zeitschlitz übertragen werden kann, kann ein Anfangspaket, das von einer Client-Station sometimes you want to transmit more information than can fit in a package that is more than can be transmitted in a time slot, an initial packet from a client station 105 105 gesendet wird, eine Anforderung umfassen, zusätzliche zukünftige Schlitze für eine Übertragung des Rests der Übermittlung zu reservieren. is sent include a request to reserve additional future slots for transmission of the rest of the transmission. Bei dem Beispiel von In the example of 5 5 will die Client-Station wants the client station 105a 105a Informationen übertragen, die sich über insgesamt drei Zeitschlitze erstrecken werden. Transmit information that will cover a total of three time slots. Deshalb umfasst das Anfangspaket Therefore includes the initial packet 505 505 eine Reservierungsanforderung für zwei zusätzliche eigens vorgesehene Zeitschlitze. a reservation request for two additional specially allotted time slots.
  • [0079] [0079]
    Beim Verarbeiten der Anforderung teilt das Signalumwandlungssystem (SCS) When processing the request, divides the signal conversion system (SCS) 101 101 der Client-Station the client station 105a 105a zwei zukünftige Zeitschlitze zu. two future time slots. Linie Line 506 506 ist eine Darstellung des Steuerkanals aus der Perspektive des Signalumwandlungssystems (SCS) is an illustration of the control channel from the perspective of the Signal Conversion System (SCS) 101 101 . , Auf die Zuteilung folgend überträgt das Signalumwandlungssystem (SCS) Following the allocation transfers the Signal Conversion System (SCS) 101 101 auf dem Steuerkanal eine Bestätigungsnachricht on the control channel an acknowledgment message 507 507 an die Client-Station to the client station 105 105 . , Die Bestätigungsnachricht zeigt der Client-Station The confirmation message displays the client station 105 105 an, dass die Nachricht empfangen wurde, und in dem Fall einer Reservierungsanforderung, wie viele Zeitschlitze die Client-Station warten muss, um den Rest der Übermittlung zu übertragen. that the message was received, and in the case of a reservation request, how many time slots the client station must wait to transmit the rest of the transmission. Bei dem Beispiel von In the example of 5 5 wurden zu der Zeit, zu der das Signalumwandlungssystem (SCS) were added to the time at which the Signal Conversion System (SCS) 101 101 das Reservierungsanforderungspaket the reservation request packet 505 505 von der Client-Station from the client station 105a 105a empfängt, keine anderen Reservierungen vorgenommen, deshalb kann die Client-Station receives, made no other reservations, therefore, the client station 105a 105a auf den Empfang der Bestätigungsnachricht in Paket on receipt of the acknowledgment message in packet 507' 507 ' hin mit der Übertragung des Rests der Übermittlung beginnen. start out with the transfer of the remainder of the transmission. Demgemäß zeigt das Bestätigungsnachrichtpaket Accordingly shows the confirmation message packet 507 507 der Client-Station the client station 105a 105a an, dass die Verzögerungslänge (die Zeit, die die Client-Station in that the delay length (the time the client station 105a 105a vor dem Übertragen des Restes warten muss) Null beträgt. must wait before transmitting the rest) is zero.
  • [0080] [0080]
    Obwohl die Client-Station Although the client station 105a 105a bei Zeitschlitz 0 begonnen hat, das Paket started at time slot 0, the packet 505 505 zu übertragen, wurde dasselbe aufgrund der Fortpflanzungsverzögerung durch das Signalumwandlungssystem (SCS) transmit, was the same due to the propagation delay through the signal conversion system (SCS) 101 101 erst ein Stück innerhalb des Zeitschlitzes 2 vollständig empfangen. only a piece within the time slot 2 is fully received. Da alle Übertragungen an Zeitschlitzgrenzen ausgeführt werden, wartet das Signalumwandlungssystem (SCS) Since all transfers are performed on time slot boundaries, the Signal Conversion System waits (SCS) 101 101 bis zum Beginn von Zeitschlitz 3, bevor dasselbe beginnt, das Bestätigungspaket until the beginning of time slot 3, before the same starts, the acknowledgment packet 507 507 zu übertragen. to transmit. Linie Line 508 508 ist eine Darstellung des Steuerkanals aus der Perspektive der Client-Station is an illustration of the control channel from the perspective of client station 105a 105a . , Das Bestätigungsnachrichtpaket The confirmation message packet 507' 507 ' wird durch die Client-Station is determined by the client station 105a 105a empfangen, die aus der Nachricht erkennt, dass ihr Reservierungsanforderungspaket received, seen from the news that its reservation request packet 505 505 durch das Signalumwandlungssystem (SCS) by the Signal Conversion System (SCS) 101 101 berücksichtigt wurde, und dass ihre reser vierten Schlitze ohne Verzögerung zu übertragen sind. was taken into account, and that their reser fourth slots are to be transmitted without delay. Deshalb überträgt die Client-Station Therefore, the client station transmits 105a 105a auf dem Aufwärtskanal (wie als Linie on the uplink channel (such as a line 502 502 dargestellt) den Rest ihrer Übermittlung in Paketen shown) the rest of their transmission in packets 509a 509a und and 509b 509b . ,
  • [0081] [0081]
    Bei dem Beispiel von In the example of 5 5 will die Client-Station wants the client station 105b 105b vier Informationspakete übertragen. transmitted four packets of information. Wie es im Vorhergehenden erörtert ist, kann dieselbe ein Paket senden, das eine Reservierungsanforderung für die folgenden drei umfasst. As discussed above, the same transmit a packet that includes a reservation request for the following three. Demgemäß sendet die Client-Station Accordingly sends the client station 105b 105b ein erstes Reservierungsanforderungspaket a first reservation request packet 511 511 . , Das Anforderungsnachrichtpaket The request message packet 511 511 umfasst die Reservierungsanforderung für drei Zeitschlitze. includes the reservation request for three time slots.
  • [0082] [0082]
    Wie es in Linie As shown in line 504 504 gezeigt ist, empfängt das Signalumwandlungssystem (SCS) is shown, receives the Signal Conversion System (SCS) 101 101 die Anforderungsnachricht the request message 511' 511 ' . , Beim Verarbeiten der Anforderung für die Reservierung von drei zusätzlichen eigens vorgesehenen Zeitschlitzen erkennt das Signalumwandlungssystem (SCS), dass die Client-Station While processing the request for reservation of three additional specially designated time slots detects the signal conversion system (SCS) that the client station 105a 105a bis zu dem Zeitpunkt, wenn die Client-Station up to the time when the client station 105b 105b eine Bestätigung erhält, das erste Paket Notice is mailed, the first packet 509a 509a in dem Rest ihrer Übermittlung übertragen haben wird, aber immer noch einen zusätzlichen Zeitschlitz für das zweite Paket will have transferred to the rest of submission, but still an additional time slot for the second packet 509b 509b benötigt. required. Deshalb zeigt das Bestätigungsnachrichtpaket That's why shows the confirmation message packet 513 513 der Client-Station the client station 105b 105b an, dass ihre Reservierung angenommen worden ist und dass dieselbe, nachdem sie das Bestätigungspaket that their reservation is to have been accepted and that the same after the acknowledgment packet 513' 513 ' empfangen hat, beginnen soll, ihren Rest von Paketen nach einer Verzögerung von einem Zeitschlitz zu übertragen. has received, is to begin to transfer its remaining packets after a delay of one time slot. Diese Verzögerung ist als Zeitschlitz This delay is the time slot 515 515 angezeigt. displayed. Nach der Verzögerung überträgt die Client-Station After the delay, the client station transmits 105b 105b den Rest von drei Paketen the rest of three packets 517a 517a , . 517b 517b und and 517c 517c auf dem Aufwärtskanal on the upstream channel 510 510 . , Diese werden durch das Signalumwandlungssystem (SCS) These are produced by the Signal Conversion System (SCS) 101 101 als Pakete as packets 517a' 517a ' , . 517b' 517b ' und and 517c' 517c ' empfangen. received.
  • [0083] [0083]
    Jeder Schlitz, der nicht speziell reserviert ist, ist ein Konkurrenzschlitz. Each slot that is not specifically reserved is a contention slot. Deshalb sind bei dem Beispiel, weil der erste reservierte Schlitz Schlitz Nummer 4 ist, die Schlit ze 0 bis 3 Konkurrenzschlitze. Therefore, in the example, because the first reserved slot slot number 4 is the Schlit ze 0 to 3 contention slots. Die Schlitze 4 bis 8 wurden durch die Client-Stationen The slots 4-8 were the client stations 105a 105a und and 105b 105b reserviert. reserved. Keine Reservierungen wurden jedoch für die Schlitze 9 bis 13 vorgenommen, die deshalb Konkurrenzschlitze sind. No reservations have been made, however, for the slots 9 to 13, which therefore are contention slots.
  • [0084] [0084]
    Bei dem Beispiel von In the example of 5 5 gibt es keine Kollision während Konkurrenzschlitzen. there is no collision during contention slots. Eine Kollision zwischen den Client-Stationen A collision between the client stations 105a 105a und and 105b 105b kann zu irgendeiner Zeit vor Zeitschlitz 0 stattgefunden haben. may have occurred at any time prior time slot 0. Jeder Rahmen enthält eine Prüfsumme. Each frame contains a checksum. Die Prüfsumme ist eine zyklische Redundanzprüfung, z. B. wie durch CCITT X.25 definiert. The checksum is a cyclic redundancy check, for. Example as defined by CCITT X.25.
  • [0085] [0085]
    Wenn eine Kollision erfolgt, werden die Nachrichten verstümmelt. When a collision occurs, the messages are garbled. Deshalb schlägt die Prüfsummenberechnung fehl. Therefore, the checksum fails. Immer wenn das Signalumwandlungssystem (SCS) Whenever the Signal Conversion System (SCS) 101 101 erfasst, dass die Prüfsummenberechnung fehlgeschlagen ist, sendet dasselbe keine Bestätigungsnachricht. detects that the checksum fails, it sends a confirmation message. Somit würde keine der Client-Stationen Thus, none of the client stations would 105 105 eine Bestätigung empfangen. receive an acknowledgment. Die erwartete Zeitverzögerung zwischen dem Senden einer Nachricht und dem Empfangen der Bestätigung ist bekannt (sie beträgt die maximale Fortpflanzungsverzögerung plus Verarbeitungszeit). The expected time delay between sending a message and receiving the confirmation is known (it is the maximum propagation delay plus processing time). Wenn somit eine Client-Station Thus, when a client station 105 105 die Bestätigung nicht innerhalb dieser erwarteten Zeit empfängt, weiß dieselbe, dass die Übertragung fehlgeschlagen ist. confirmation is not received within this time expected to do the same, that the transmission failed. Da Kollisionen eine wahrscheinliche Quelle für Übertragungsfehler sind, wird der Kollisionsauflösungsmechanismus der Client-Station Since collisions are a likely source of transmission errors, the collision resolution mechanism of the client station is 105 105 aufgerufen. called.
  • [0086] [0086]
    Bei einem Ausführungsbeispiel ist der Kollisionsauflösungsmechanismus der Client-Stationen In one embodiment, the collision resolution mechanism of client stations 105 105 dem Ethernet-Schema ähnlich. the Ethernet scheme similar. Jede der kollidierenden Client-Stationen Each of the colliding client stations 105 105 hält sich eine zufällige Menge an Zeit zurück. is holding back a random amount of time. Am Ende ihrer jeweiligen zufälligen Zeitmengen versuchen die Client-Stationen At the end of their respective random amounts of time the client stations try 105 105 erneut, ihre jeweiligen Nachrichten zu übertragen. again to transfer their respective messages. Ein Zufallszahlengenerator A random number generator 313 313 , der mit der Steuerschaltung That the control circuit 301 301 verbunden ist, berechnet eine Zufallszahl, die zum Zurückhalten verwendet wird. is connected, calculates a random number that is used for retention. Bei einem Ausführungsbeispiel ist der Bereich für die Anzahl von vor einer erneuten Übertragung zu verzögernden Schlitzzeiten eine Funktion davon, wie viele Versuche zu übertragen unternommen wurden. In one embodiment, the range for the number of before a retransmission to be delayed slot times is a function of how many attempts have been transmitted. Die Anzahl von vor dem n-ten erneuten Übertragungsversuch zu verzögernden Schlitzzeiten wird als eine gleichmäßig verteilte Zufahlsganzzahl r ausgewählt in dem Bereich: The number of to be delayed before the nth retransmission attempt slot times is selected as a uniformly distributed Zufahlsganzzahl r in the range: 0 ≤ r < 2 k 0 ≤ r <2 k wobei in which
    k = min (n, 7) k = min (n, 7)
  • [0087] [0087]
    Falls eine maximal zulässige Anzahl von erneuten Übertragungsversuchen fehlschlägt, wird ein Fehlerzustand durch das CM If a maximum number of retransmission attempts fail, an error condition by the CM 113 113 berichtet. reported. Bei dem bevorzugten Ausführungsbeispiel beträgt die maximale Anzahl von erneuten Übertragungsversuchen sechzehn. In the preferred embodiment, the maximum number of retransmission attempts sixteen.
  • [0088] [0088]
    Bei einem alternativen Ausführungsbeispiel wird eine Kollisionshandhabung erreicht, indem nur von bestimmten Gruppen von Modems eine erneute Übertragung gestattet wird. In an alternative embodiment, collision handling is accomplished by re-transmission is allowed only from certain groups of modems. Bei aufeinander folgenden Neuversuchen wird einem kleineren Teilsatz von Modems eine erneute Übertragung gestattet. In successive retries a smaller subset of modem retransmission allowed. Bei diesem Ausführungsbeispiel sind die CMs In this embodiment, the CMs 113 113 in dem System in einem Binärbaum angeordnet. arranged in the system in a binary tree. Wenn das SCS When the SCS 101 101 erfasst, dass dasselbe verstümmelte Nachrichten empfängt, sendet dasselbe Nachrichten aus, um bestimmte CMs detects that the same mutilated receives messages, sends the same message out to particular CMs 113 113 abzuschalten. disable. Zuerst steigt das SCS First, the SCS increases 101 101 eine Ebene von der Wurzel des Baums hinunter und schaltet aufeinander folgend alle CMs in der ersten Hälfte des Baums ab und reaktiviert dann diese CMs und schaltet die zweite Hälfte ab. one level down from the root of the tree and successively turns all CMs in the first half of the tree and then reactivates those CMs from and turns off the second half. Falls das SCS If the SCS 101 101 weiterhin Kollisionen erfasst, steigt dasselbe eine weitere Ebene hinunter und schaltet Zweig für Zweig aufeinander folgend alle CMs in einem bestimmten Zweig auf dieser Ebene an und ab. still detects collisions, the same one more level rises and shuts down branch by branch successively all CMs on a specific branch at this level and down. Das SCS The SCS 101 101 wiederholt diese Prozedur, bis dasselbe entweder keine Kollisionen mehr erfasst oder bis dasselbe zu den Blättern des Binärbaums hinuntergestiegen ist. this process is repeated until the same is either no more collisions detected or until the same descended to the leaves of the binary tree.
  • [0089] [0089]
    6(b) 6 (b) ist ein Blockdiagramm des Formats eines Abwärtsbestätigungsrahmens is a block diagram of the format of a downstream acknowledgment frame 700 700 , der auf dem Steuerkanal gesendet wird. , Which is sent on the control channel. Wenn das Signalumwandlungssystem (SCS) When the Signal Conversion System (SCS) 101 101 erfolgreich eine Nachricht von einer der Client-Stationen successfully a message from the client stations 105 105 empfängt, wie es durch eine erfolgreiche Prüfsummenberechnung angezeigt wird, überträgt das Signalumwandlungssystem (SCS) receives, as indicated by a successful checksum calculation, transmits the signal conversion system (SCS) 101 101 einen Bestätigungsrahmen an acknowledgment frame 700 700 , wie es in As shown in 6(b) 6 (b) gezeigt ist. is shown. Der Bestätigungsrahmen The acknowledgment frame 700 700 folgt wie alle anderen Rahmen dem allgemeinen Format von Rahmen follows as all the other frames the general format of frames 600 600 von from 6(a) 6 (a) . , Als solcher enthält derselbe ein SYNC-Feld As such, the same includes a SYNC field 701 701 , ein Rahmentypfeld A frame type field 703 703 („00" im Fall eines Bestätigungsrahmens ("00" in the case of an acknowledgment frame 700 700 ), ein Schlitz-ID- ), A slot-ID 705 705 und ein Schlitzzeitgeber- and a Schlitzzeitgeber- 707 707 Feld und ein Prüfsummenfeld Field and a checksum 721 721 . , Diese Felder These fields are 701 701 , . 703 703 , . 705 705 , . 707 707 und and 721 721 entsprechen Feldern corresponding to fields 601 601 , . 603 603 , . 605 605 , . 607 607 bzw. and 611 611 . ,
  • [0090] [0090]
    Der typabhängige Inhalt The type-specific content 609 609 des Bestätigungsrahmens the acknowledgment frame 700 700 kann verwendet werden, um bis zu zwei Nachrichten von Client-Stationen may be used by up to two messages from client stations 105 105 , die auf unterschiedlichen Aufwärtskanälen übertragen, zu bestätigen. Transmitting on different upstream channels to confirm. Die Modem-MAC-Adresse der ersten dieser Client-Stationen The modem MAC address of the first of these client stations 105 105 ist in einem Feld is in a field 709 709 angegeben, und für die zweite Client-Station specified, and for the second client station 105 105 in einem Feld in a field 715 715 von einem anderen Kanal. of another channel.
  • [0091] [0091]
    Wenn eine Client-Station If a client station 105 105 eine Nachricht an das Signalumwandlungssystem (SCS) a message to the Signal Conversion System (SCS) 101 101 sendet, weist die Client-Station sends, the client station 105 105 dieser Nachricht eine Nachricht-ID zu. This message is a message ID to. Die Nachricht-ID, die bestätigt wird, wird durch das Signalumwandlungssystem (SCS) The message ID, which is confirmed, by the Signal Conversion System (SCS) 101 101 in einem Nachricht-ID-(Msg ID) Feld in a message-ID (Msg ID) field 709 709 bzw. and 717 717 an die Client-Station to the client station 105 105 zurückgesendet. sent back.
  • [0092] [0092]
    In dem Fall, dass die Nachricht, die bestätigt wird, eine Reservierungsanforderung enthält, wird die Anzahl von Schlitzen, die die Client-Station In the case that the message is confirmed, contains a reservation request, the number of slots that the client station 105 105 vor einem Senden des Rests warten muss, in den Reservierungsverzögerungsfeldern must wait before sending the rest, to the reservation delay fields 713 713 bzw. and 719 719 gesendet. sent.
  • [0093] [0093]
    Bei dem bevorzugten Ausführungsbeispiel gibt es elf Untertypen von Steuerrahmen. In the preferred embodiment there are eleven subtypes of control frames. Andere Ausführungsbeispiele umfassen zusätzliche Untertypen von Steuerrahmen. Other embodiments include additional subtypes of control frames. Dieses Steuerrahmenuntertypen sind: This control frame subtypes are:
    • – inaktiver Unterrahmen - Inactive subframe
    • – Schlitz/Kanal-Statusunterrahmen - Slot / channel status subframe
    • – Kabelmodem-Sperren/Freigeben-Anforderung - Cable modem lock / unlock request
    • – Aufwärts/Abwärtskanal-Umschalten-Anforderung - Up / down channel switching request
    • – Echoanforderung - Echo Request
    • – Parameter-Erhalten/Setzen-Anforderung - Parameter Get / Set request
    • – Schlüsselaustauscheinleitungsanforderung - Key exchange initiation request
    • – Leistungspegeleinstellungsantwort. - Power level setting response.
  • [0094] [0094]
    Jeder dieser Unterrahmentypen folgt dem allgemeinen Format, das in Each of these sub-frame types follows the general format used in 6(a) 6 (a) gegeben ist, und enthält zusätzliche Felder für seinen spezifischen Unterrahmentyp. is given, and contains additional fields for its specific subframe type. Das Typfeld The type field 603 603 ist auf den Wert „01" gesetzt, um anzuzeigen, dass der Rahmen ein Steuerrahmen ist. Nach dem Schlitzzeitgeberfeld is set to the value "01" to indicate that the frame is a control frame. According to the slot timer field 607 607 enthalten Steuerrahmen ein 2 Byte langes Unterrahmentypfeld. contain control frame a 2-byte sub-frame type field.
  • [0095] [0095]
    In Betrieb überträgt das Signalumwandlungssystem (SCS) In operation, the Signal Conversion System (SCS) transmits 101 101 fortlaufend Steuerrahmen. continuous control frame. Wenn das Signalumwandlungssystem (SCS) When the Signal Conversion System (SCS) 101 101 somit während eines bestimmten Zeitschlitzes keine Abwärtsinformationen zu senden hat, sendet das Signalumwandlungssystem (SCS) has thus not send down information during a particular time slot, sends the Signal Conversion System (SCS) 101 101 trotzdem einen Steuerrahmen. while a control frame. Dieser Rahmen enthält das Unterrahmentypfeld „00". Der Rest des Rahmens ist eine Pseudozufallssequenz. Die Pseudozufallssequenz sollte so zufällig wie möglich sein, um genug Übergänge zu liefern, damit die 64-QAM-Empfängerabstimmvorrichtung This frame contains the subframe type field "00". The rest of the frame is a pseudo-random sequence. The pseudo-random sequence should be as random as possible to provide enough transitions in order for the 64-QAM Empfängerabstimmvorrichtung 303 303 synchron zu dem Sender in synchronism with the transmitter 305 305 bleibt. remains.
  • [0096] [0096]
    Der Kanal/Schlitz-Statusunterrahmentyp wird durch das SCS The channel / slot status subframe type is determined by the SCS 101 101 als der erste Rahmen jedes Zeitschlitzes gesendet. when the first frame sent each time slot. Dieser Rahmen trägt den Belegungsstatus des nächsten Zeitschlitzes für jeden aktiven Aufwärtskanal sowie die Informationen des derzeitigen verfügbaren Aufwärts- und Abwärtskanals. This frame carries the occupancy status of the next time slot for each active upstream channel as well as the information of the current available upstream and downstream channel. Der Kanal/Schlitz-Statusunterrahmen enthält die folgenden spezifischen Felder (Tabelle 1): The channel / slot status subframe contains the following specific fields (Table 1):
  • Tabelle 1 Table 1
  • [0097] [0097]
    (Viele der Felder für den Kanal/Schlitz-Statusunterrahmentyp werden durch andere Unterrahmentypen verwendet. Deshalb nimmt die folgende Beschreibung dieser Unterrahmentypen Bezug auf Tabelle 1.) (Many of the fields for the channel / slot status subframe type is used by other sub-frame types. Therefore, the following description of this sub-frame types makes reference to Table 1.)
  • [0098] [0098]
    Der Kabelmodem-Sperren/Freigeben-Anforderung-Unterrahmentyp wird durch das Signalumwandlungssystem (SCS) The cable modem lock / unlock request subframe type is determined by the signal conversion system (SCS) 101 101 verwendet, um ein bestimmtes Kabelmodem used to a particular cable modem 113 113 an- und abzuschalten. on and off. Der Unterrahmentyp ist 0x03 für Sperren und 0x05 für Freigeben. The sub-frame type is 0x03 for locking and 0x05 for sharing. Der CM-Sperren/Freigeben-Unterrahmen ist ein Sechs-Byte-MAC-Modem-Adressfeld, das das bestimmte CM The CM-Lock / Unlock subframe is a six-byte MAC modem address field that the specific CM 113 113 , an das der Rahmen gerichtet ist, eindeutig identifiziert. , Is directed to the the frame, uniquely identified.
  • [0099] [0099]
    Der Aufwärtskanal-Umschalten-Anforderung-Unterrahmentyp wird durch das SCS Reverse channel-switching request subframe type is determined by the SCS 101 101 verwendet, um einem CM used a CM 113 113 anzuordnen, seine Aufwärtskommunikation auf einen anderen Kanal umzuschalten. to arrange to switch its upward communication to another channel. Wie es im Vorhergehenden erörtert ist, kann der Aufwärtsfrequenzbereich relativ starkes Rauschen aufweisen. As discussed above, the uplink frequency region may have relatively high noise. Deshalb kann das SCS Therefore, the SCS 101 101 von Zeit zu Zeit während des normalen Betriebs des Signalumwandlungssystems (SCS) from time to time during normal operation of the Signal Conversion System (SCS) 101 101 erfassen, dass es erwünscht ist, dass die Aufwärtskommunikation zu demselben auf einer anderen Frequenz erfolgt. detect that it is desirable that the upstream communication to the same takes place on a different frequency. Außerdem kann das Signalumwandlungssystem (SCS) Furthermore, the Signal Conversion System (SCS) 101 101 auch eine starke Verwendung eines bestimmten Aufwärtskanals und eine relativ geringe Verwendung eines anderen Aufwärtskanals erfassen, und deshalb anfordern, dass bestimmte CMs a strong use of a particular upstream channel and a relatively small use of a different upstream channel capture, and therefore request that certain CMs 113 113 die Frequenz ändern, um die Verwendung unter den verschiedenen Aufwärtskanälen auszugleichen. change the frequency to compensate for the use under the various upstream channels.
  • [0100] [0100]
    Der Aufwärtskanal-Umschalten-Anforderung-Unterrahmen enthält ein Sechs-Byte-Feld für eine Modem-MAC-Adresse, an die die Anforderung gerichtet ist. The upstream channel-switching-Request subframe contains a six-byte field for modem MAC address to which the request is directed. Der Unterrahmen enthält auch Felder, um die aktuelle Aufwärtskanalnummer (1 Byte), die aktuelle Bitanzahl pro Symbol (2 Bits, siehe Tabelle 1), die aktuelle Symbolrate (6 Bits, siehe Tabelle 1) und die Mittenfrequenz des aktuellen Aufwärtskanals (2 Bytes, siehe Tabelle 1) zu identifizieren. The subframe also contains fields to the current upstream channel number (1 byte), the current number of bits per symbol (2 bits, see Table 1), the current symbol rate (6 bits, see Table 1) and the center frequency of the current upstream channel (2 bytes, see Table 1) to identify. Zusätzlich enthält der Unterrahmen auch Felder, um die Kanalnummer des Aufwärtskanals, zu dem umgeschaltet werden soll (1 Byte), die neue Bitanzahl pro Symbol (2 Bits, siehe Tabelle 1), die neue Symbolrate (6 Bits, siehe Tabelle 1) und die Mittenfrequenz des neuen Kanals (2 Bytes, siehe Tabelle 1) zu identifizieren. In addition, the subframe also contains fields to the channel number of the uplink channel which is to be switched to the (1 byte), the new number of bits per symbol (2 bits, see Table 1), the new symbol rate (6 bits, see Table 1) and center frequency of the new channel (2 bytes, see Table 1) to identify.
  • [0101] [0101]
    Der Abwärtskanal-Umschalten-Anforderung-Unterrahmentyp wird durch das Signalumwandlungssystem (SCS) The downstream channel-switching request subframe type is determined by the signal conversion system (SCS) 101 101 gesendet, um einem CM sent to a CM 113 113 anzuordnen, seinen Empfänger umzuschalten, um zu beginnen, auf demjenigen zu empfangen, der in dem Anforderungsrahmen bezeichnet ist. to arrange to switch its receiver to begin to receive on the one that is referred to in the request context. Der Rahmen enthält ein Sechs-Byte-Feld für die Modem-MAC-Adresse und ein 1-Byte-Feld für die Abwärts-NTSC-Kanalnummer, auf die umgeschaltet werden soll. The frame contains a six-byte field for the Modem MAC address and 1-byte field for the downstream NTSC Channel number to switch to.
  • [0102] [0102]
    Der Echoanforderung-Unterrahmentyp wird durch das Signalumwandlungssystem (SCS) The Echo Request subframe type is defined by the Signal Conversion System (SCS) 101 101 gesendet. sent. Auf den Empfang der Echoanforderung hin sendet die Client-Station Upon reception of the echo request, the client station transmits 105 105 auf einem der Aufwärtskanäle eine Echoantwortnachricht (im Folgenden im Abschnitt zum Aufwärtskanalformat erörtert) an das Signalumwandlungssystem (SCS). on one of the upstream channels an Echo-Reply message (discussed below in the section on the upstream channel format) to the Signal Conversion System (SCS). Der Echoanforderung-Unterrahmentyp enthält ein Modem-MAC-Adressfeld (6 Bytes) und ein Test-ID-Feld (4 Bytes). The Echo Request subframe type contains a Modem MAC address field (6 bytes) and a Test ID field (4 bytes). Das Test-ID-Feld enthält eine Zufallszahl, die durch das Signalumwandlungssystem (SCS) The Test ID field contains a random number by the Signal Conversion System (SCS) 101 101 festgelegt ist. is fixed.
  • [0103] [0103]
    Die Parameter-Erhalten/Setzen-Anforderung-Unterrahmentypen werden hauptsächlich für SNMP (SNMP = Simple Network Management Protocol – einfaches Netzwerkverwaltungsprotokoll) verwendet. The parameter-Get / Set-Request subframe types are mainly used for SNMP (SNMP Simple Network Management Protocol - Simple Network Management Protocol) is used. Der SNMP-Proxy-Agent, der an dem Signalumwandlungssystem (SCS) The SNMP Proxy agent that at the Signal Conversion System (SCS) 101 101 angeordnet ist, verwendet die Parameter-Erhalten/Setzen-Anforderung, um Informationen über die Client-Stationen is arranged using the Get-parameters / setting request for information about the client stations 105 105 oder die CMs or the CMs 113 113 , die an den Client-Stationen That to the client stations 105 105 angeordnet sind, zu bekommen, oder um bestimmte CM/Client-Station-Parameter zu löschen oder zu setzen. are arranged to obtain, or to delete certain CM / client station parameters or set. Die Parameter-Erhalten-und-Setzen-Anforderungen werden dadurch differenziert, dass dieselben unterschiedliche Werte für das Unterrahmentypfeld aufweisen. The parameter-Got-and-set requirements are thus differentiated that the same values for the different sub-frame type field have. Die Parameter-Erhalten-und-Setzen-Anforderungen enthalten ein Modem-MAC-Adressfeld (6 Bytes) zum Identifizieren des Kabelmodems The parameter-Got-and-set requirements include a modem MAC address field (6 bytes) for identifying the cable modem 113 113 , an das die Anforderung gerichtet ist, und ein Parameter-ID-Feld (1 Byte). To which the request is directed and a Parameter ID field (1 byte). Der Setzen-Anforderung-Unterrahmentyp enthält auch ein bis zu 7 Byte langes Inhaltsfeld, das die neuen Werte für den Parameter enthält. The Set-Request subframe type contains an up to 7-byte payload field that contains the new values for the parameter. Im Folgenden sind einige der Parameter aufgeführt, die durch den Parameter-Erhalten/Setzen-Anforderung-Unterrahmen gewonnen oder gesetzt werden können: The following are some of the parameters are given, which can be obtained or set by the parameter-Get / Set-Request subframe:
    • – Nutzlastkanal-CRC-Fehlerzählwert - Channel payload CRC error count
    • – Nutzlast-Verfehlte-Puffer-Fehlerzählwert - Missed payload buffer error count
    • – Nutzlast-Empfangene-Pakete-Zählwert - Received payload packets count
    • – Steuerkanal-CRC-Fehlerzählwert - Control channel CRC error count
    • – Steuerkanal-Verfehlte-Puffer-Zählwert - Control channel Missed buffer count
    • – Steuerkanal-Empfangene-Pakete-Zählwert - Control channel received packets count
    • – Aufwärtsübertragungsneuversuchzählwert - Aufwärtsübertragungsneuversuchzählwert
    • – Aufwärts-Übertragene-Pakete-Zählwert - Up-Transmitted packets count
    • – Selbsttest (Durchführen/Berichten) - Self-Test (Performing / reports)
    • – einen bestimmten Test durchführen/sein Ergebnis berichten - Perform a specific test / report its earnings
    • – Aufwärtsverschlüsselung - Up encryption
    • – Firmware-Flag #n (Setzen/Rücksetzen/Berichten) - Firmware flag #n (set / reset / reports)
    • – Firmware-Register (Lesen/Schreiben/Berichten) - Firmware register (read / write / reports)
  • [0104] [0104]
    Der DES-Schlüsselaustausch-Unterrahmentyp wird durch das Signalumwandlungssystem (SCS) The DES key exchange subframe type is determined by the signal conversion system (SCS) 101 101 verwendet, um das CM used to the CM 113 113 anzuweisen, einen DES-Schlüssel-Handshake einzuleiten. be instructed to initiate a DES key handshake. Der Schlüsselaustausch verwendet den Diffie-Hellman-Schlüsselaustauschalgorithmus. The key exchange uses the Diffie-Hellman key exchange algorithm. Der DES-Schlüsselaustauschanforderung-Unterrahmen enthält ein Modem-MAC-Adressfeld (6 Bytes) zum Identifizieren des Kabelmodems The DES Key exchange request subframe contains a Modem MAC address field (6 bytes) for identifying the cable modem 113 113 , an das die Anforderung gerichtet ist. To which the request is directed.
  • Abwärtsnutzlastkanal Down payload channel
  • [0105] [0105]
    6(c) 6 (c) ist ein Blockdiagramm des Abwärtsnutzdatenrahmens is a block diagram of the Abwärtsnutzdatenrahmens 749 749 , der von dem SCS That of the SCS 101 101 zu den Kabelmodems to the cable modem 113 113 übertragen wird. is transmitted. Ein Feld A field 751 751 ist ein ein Byte langes Sync-Flag, das die Bitfolge „01111110" enthält. Der Rest des Rahmens ist null-eingefügt, um sicherzustellen, dass keine andere Sechs-Bit-Folge von Einsen in einem Rahmen auftritt. Wenn somit ein CM is a one byte long Sync flag containing the bit sequence "01111110". The rest of the frame is zero-inserted to ensure that there is no other six-bit string of ones occurring in a frame. Thus, if a CM 113 113 auf eine Folge von fünf Einsen, die von einer Null gefolgt sind, trifft, weiß das CM, dass dieses Null-Bit durch das SCS eingefügt worden ist und vor einem Verarbeiten der Daten verworfen werden muss. to a sequence of five ones that are followed by a zero, meets, white CM that this zero bit is inserted by the SCS and must be discarded before processing the data.
  • [0106] [0106]
    Es folgt ein Sechs-Byte-Modem-MAC-Adressfeld It is followed by a six-byte Modem MAC address field 753 753 zum Identifizieren des Empfängers des Rahmens. to identify the recipient of the frame. Für Sammelsendungspakete enthält das MAC-Adressfeld For multicast packets containing the MAC address field 753 753 die Sammelsendung (Multicast)-MAC-Adresse des Kabelmodems the multicast (multicast) -MAC address of the cable modem 113 113 der Teilnehmer. of the participants.
  • [0107] [0107]
    Feld Field 755 755 ist ein Ein-Bit-Verschlüsselungsflag, um dem CM is a one-bit encryption flag to the CM 113 113 anzuzeigen, ob die übertragenen Daten verschlüsselt (1) oder Klartext (0) sind. indicate whether the transmitted data is encrypted (1) or clear (0).
  • [0108] [0108]
    Es gibt zwei Typen von Nutzlastrahmen: solche, die Teilnehmerdaten tragen, und solche, die Modemsteuernachrichten tragen. There are two types of payload frame: those which carry user data, and those which carry modem control messages. Feld Field 757 757 ist ein Ein-Bit-Flag zum Anzeigen, ob der Rahmen Teilnehmerdaten (0) oder eine Modemsteuernachricht (1) aufweist. is a one-bit flag for indicating whether the frame is subscriber data (0) or a modem control message (1).
  • [0109] [0109]
    Feld Field 759 759 ist ein Sechs-Bit-Feld zum Identifizieren des Nachrichtentyps. is a six-bit field for identifying the message type. Die Nachrichtentypen umfassen: für Teilnehmerdaten: The message types include: Student data:
    • – Ethernetrahmen - Ethernet frame
    • – ATM-Zelle - ATM cell
  • für Modemverwaltungsnachrichten for modem management messages
    • – Sammelsendungsadresse-Hinzufügen-Anforderung - Multicast address add request
    • – Sammelsendungsadresse-Löschen-Anforderung - Multicast address deletion request
    • – DES-Schlüsselaustauschantwort - DES key exchange response
    • – Testanforderung - Test requirement
  • [0110] [0110]
    Feld Field 760 760 ist ein Drei-Bit-Feld zum Identifizieren der Auffülllänge in Anzahl von Bytes. is a three-bit field for identifying the Auffülllänge in number of bytes. Zu Verschlüsselungszwecken ist die Nutzlast ein Vielfaches von acht Byte lang. For encryption purposes, the payload is a multiple of eight bytes long. Deshalb können bis zu sieben Bytes verwendet werden, um die Länge der Nachricht aufzufüllen, um sicherzustellen, dass die Nutzlast dieses Ziel erfüllt. Therefore can be used up to seven bytes to fill the length of the message to ensure that the payload satisfies this goal. Bei einem alternativen Ausführungsbeispiel, bei dem keine Verschlüsselung erforderlich ist oder bei dem ein Verschlüsselungsstandard vorliegt, der keine Nachrichtenlänge erfordert, die ein Vielfaches von Acht ist, werden das Auffüll- und das Auffülllängenfeld nicht benötigt. In an alternative embodiment, in which no encryption is required or where an encryption standard is present which does not require message length which is a multiple of eight, the filling and the Auffülllängenfeld are not needed.
  • [0111] [0111]
    Feld Field 761 761 ist ein Fünf-Bit-Feld von nicht verwendeten Bits. is a five-bit field of unused bits. Diese Bits werden hinzugefügt, um zu verhindern, dass das Nachrichtenfeld These bits are added to prevent the message field 763 763 Bytegrenzen umwickelt. Wrapped byte boundaries. Feld Field 763 763 ist ein Feld variabler Länge (in Byte-Inkrementen) von nachrichtentypabhängigem Inhalt. is a variable length field (in byte increments) of nachrichtentypabhängigem content. Um in Einklang mit der Ethernet-MTU zu sein, wird das MTU in dem Nachrichteninhaltsfeld auf 1514 gesetzt. To be consistent with the Ethernet MTU, the MTU is set in the message content box is at 1514. Das Nachrichteninhaltsfeld The message content field 763 763 wird mit bis zu sieben Bytes aufgefüllt, um sicherzustellen, dass seine Länge in Bytes ein Vielfaches von Acht ist. is padded with up to seven bytes to ensure that its length is a multiple of eight bytes in.
  • [0112] [0112]
    Feld Field 765 765 ist eine vier Byte lange CRC-32-Prüfsumme, die das Ethernet-Polynom-Zyklische-Redundanzprüfung-Schema verwendet. is a four-byte long CRC-32 checksum that uses the Ethernet polynomial cyclic redundancy check scheme.
  • [0113] [0113]
    Bei dem bevorzugten Ausführungsbeispiel gibt es vier Typen von Modemverwaltungsnachrichten. In the preferred embodiment, there are four types of modem management messages. Zwei erste Modemverwaltungsnachrichtentypen sind die Sammelsendungsadresse-Hinzufügen-Anforderung und die Sammelsendungsadresse-Löschen-Anforderung. Two first modem management message types are the multicast address add request and the multicast address deletion request. Die Sammelsendungsadresse-Hinzufügen-Anforderung ordnet dem CM The multicast address add request assigned to the CM 113 113 , an das dieselbe gerichtet ist, an, eine Sammelsendungsadresse zu der Liste von Sammelsendungsadressen hinzuzufügen, an der dasselbe teilnimmt, und die Sammelsendungsadresse-Löschen-Anforderung ordnet dem CM Is directed to the same, to add a multicast address to the list of multicast addresses, participates in the same, and the multicast address deletion request assigned to the CM 113 113 an, eine spezifische Sammelsendungsadresse von seiner Teilnahmeliste zu löschen. to delete a specific multicast address of its participation list. Für die Sammelsendungsadresse-Hinzufügen- und -Löschen-Anforderung enthält das Inhaltsfeld For the multicast address-Add- and -Deleting request contains the Content field 763 763 ein Sechs-Byte-Feld für die Sammelsendungsadresse und ein 1-Byte-Hash-Schlüsselfeld. a six-byte field for the multicast address and a 1-byte hash key field. Der Hash-Schlüssel sind die oberen sechs Bits von CRC The hash keys are the upper six bits of CRC 32 32 der Sammelsendungsadresse. the multicast address. Die unteren sechs Bits des Hash- Schlüsselfeldes enthalten diese sechs Bits. The lower six bits of the hash key field containing these six bits. Der Hash-Schlüssel kann durch das CM The hash key, by the CM 113 113 verwendet werden, um die Sammelsendungsadresse, die gelöscht werden muss, schneller zu gewinnen. be used to win the multicast address that needs to be cleared faster.
  • [0114] [0114]
    Eine dritte Modemverwaltungsnachricht ist die DES-Schlüsselaustauschantwort, bei der es sich um eine Antwortnachricht auf eine Anforderung eines CM A third modem management message is the DES key exchange response in which it is a response message to a request from a CM 113 113 bzgl. eines Schlüsselaustauschs handelt. with respect to. a key exchange is. Die Antwort enthält zwei Zahlen N2 und N3. The response contains two numbers N2 and N3. N2 ist ein 200 bis 400 Bit langes Ergebnis von B R2 mod P, und N3 ist das Ergebnis eines verschlüsselten N1 unter dem Schlüssel K, wobei K aus N1 R2 mod P abgeleitet ist. N2 is a 200 to 400 bits long result of B R2 mod P and N3 is the result of encrypted N1 under the key K where K N1 of R2 mod P is derived. B und P sind Zahlen, die dem SCS B and P are numbers that the SCS 101 101 und allen CMs and all CMs 113 113 bekannt sind, R2 ist eine Zufallszahl, die jedes Mal, wenn dasselbe eine Schlüsselaustauschanforderung empfängt, durch das SCS are known, R2 is a random number every time when the same receives a Key Exchange request by the SCS 101 101 ausgewählt wird. is selected. Der DES-Schlüsselaustausch ist nicht verschlüsselt. The DES Key Exchange is not encrypted.
  • [0115] [0115]
    Eine vierte Modemverwaltungsnachricht ist der Testanforderungsnachrichtentyp. A fourth modem management message is the test request message type. Der Testanforderungsnachrichtentyp wird durch das SCS The test request message type is determined by the SCS 101 101 eingeleitet, um den Zustand des Weges zu einem CM introduced to the state of the path to a CM 113 113 zu verifizieren und um zu verifizieren, dass eine Verschlüsselungs-/Entschlüsselungslogik an beiden Enden korrekt ist. verify and verify that an encryption / decryption logic at both ends is correct. Das CM The CM 113 113 antwortet mit einer Testantwort. responds with a test response. Falls eine Verschlüsselung angeschaltet ist, werden die Testanforderungsnachricht und die entsprechende Testantwort verschlüsselt. If encryption is turned on, the test request message and the corresponding test response is encrypted.
  • Aufwärtskanalnachrichten Upstream Channel News
  • [0116] [0116]
    Die Aufwärtsrahmen tragen Teilnehmerdaten von Client-Stationen The upstream frames carry subscriber data from client stations 105 105 sowie Modemsteuernachrichten von den CMs and modem control messages from the CMs 113 113 . , Die Aufwärtsrahmen enthalten auch Zeitschlitzreservierungsanforderungen von den CMs The upstream frames contain time-slot reservation requests from the CMs 113 113 zum Übertragen von Paketen, die zu groß sind, um in einem Paket übermittelt zu werden. for transferring packets too large to be transmitted in a packet. 7 7 ist ein Blockdiagramm eines üblichen Formats für einen Aufwärtskanalrahmen is a block diagram of a conventional format for an upstream channel frame 773 773 . , Das erste Feld ist ein Fünf- Byte-Anfangsblock-Feld The first field is a five-byte header field 775 775 aus nur Einsen, gefolgt von einem Ein-Byte-SYNC-Flag all ones, followed by a one byte SYNC flag 777 777 , das „01010100" enthält. Die Felder That "01010100" contains. Fields 775 775 und and 777 777 bezeichnen den Anfang eines Aufwärtsrahmens. mark the beginning of an uplink frame. Rahmen werden mit einem Auffüllfeld Frames with a padding field 779 779 beendet, das sicherstellt, dass die Gesamtlänge des Rahmens nicht weniger als MinTU beträgt (die minimale Größe eines Aufwärtsdatenrahmens). terminated, which ensures that the total length of the frame is not less than Mintu (the minimum size of an upstream data frame).
  • [0117] [0117]
    Feld Field 781 781 enthält die Sechs-Byte-MAC-Adresse des CM contains the six-byte MAC address of the CM 113 113 . , Feld Field 783 783 , das Nachricht-ID-Feld, ist ein 2-Bit-Feld, das eine Nachrichtennummer enthält, die durch das CM , The message ID field is a 2-bit field that contains a message number, by the CM 113 113 zugeteilt ist. is assigned. Wenn das SCS When the SCS 101 101 eine Nachricht bestätigt, schließt es diese Nachrichtennummer mit ein. confirmed a message, it closes this message number with.
  • [0118] [0118]
    Feld Field 785 785 ist das Reservierungslängenfeld. is the reservation length field. Dieses Feld ist ein Sechs-Bit-Feld, das dem SCS This field is a six bit field that the SCS 101 101 die Anzahl von Zeitschlitzen anzeigt, die das CM the number of time slots indicating that the CM 113 113 benötigt, um ein oder mehr Pakete zu übertragen. required to transmit one or more packets. Das Reservierungslängenfeld The reservation Langenfeld 785 785 wird ignoriert, wenn dasselbe nur Nullen enthält. is ignored if the same contains only zeros. Jedes Paket, das größer ist als MaxTU, muss durch reservierte Zeitschlitze übertragen werden. Each packet that is larger than MaxTU must be transmitted through reserved time slots. Bei dem bevorzugten Ausführungsbeispiel ist eine rekursive Reservierung nicht erlaubt. In the preferred embodiment, recursive reservation is not permitted.
  • [0119] [0119]
    Das Verschlüsselungsflag The encryption flag 787 787 ist ein Ein-Bit-Flag zum Anzeigen, ob der Nachrichteninhalt verschlüsselt (1) oder Klartext (0) ist. is a one-bit flag to indicate whether the message content is encrypted (1) or clear (0). Ein Rahmentypbit A Rahmentypbit 789 789 wird verwendet, um anzuzeigen, ob es sich bei dem Nachrichteninhalt um Teilnehmerdaten (0) oder eine Modemsteuernachricht ( is used to indicate if it is the message content to subscriber data (0) or a modem control message ( 1 1 ) handelt. ) Is. Das Rahmentypbit The Rahmentypbit 789 789 ist gefolgt von einem 6-Bit-Nachrichtentypfeld is followed by a 6-bit message type field 790 790 . , Im Folgenden sind Beispiele von Nachrichtentypen aufgeführt: The following are examples of message types:
  • für Teilnehmerdaten for subscriber data
    • – Reservierungsanforderung - Reservation request
    • – Ethernetrahmen - Ethernet frame
    • – ATM-Zelle - ATM cell
  • für Modemverwaltungsnachrichten for modem management messages
    • – CM-Sperren-Antwort - CM locks response
    • – CM-Freigeben-Antwort - CM-releasing response
    • – Aufwärtskanal-Umschalten-Antwort - Upstream channel shift response
    • – Abwärtskanal-Umschalten-Antwort - Downstream channel shift response
    • – Echoantwort - Echo Reply
    • – Parameter-Erhalten-Antwort --Get-response parameters
    • – Parameter-Setzen-Antwort - Set-response parameters
    • – Sammelsendung-Hinzufügen-Antwort - Multicast addition response
    • – Sammelsendung-Löschen-Antwort - Multicast deletion response
    • – DES-Schlüsselaustauschanforderung - DES key exchange request
    • – DES-Schlüsselaustauschbestätigung - DES key exchange confirmation
    • – Leistungspegeleinstellungsanforderung - Power level setting request
    • – Testantwort - Test response
  • [0120] [0120]
    Ein Bestätigungsflag A confirmation flag 791 791 zeigt dem SCS shows the SCS 101 101 an, ob das CM whether the CM 113 113 eine Bestätigung benötigt (1) oder ob keine Bestätigung benötigt wird (0). A confirmation required (1) or if no confirmation is needed (0). Da große Pakete unter Verwendung von reservierten Schlitzen übertragen werden, wird eine Bestätigung (ACK) nicht für eine Übertragung von großen Paketen verwendet. Because large packets are transmitted using the reserved slots, an acknowledgment (ACK) is not used for transmission of large packets.
  • [0121] [0121]
    Das Nachrichtlängenfeld ist ein 15 Bit langes Feld zum Anzeigen der Anzahl von Bytes des Nutzlastnachrichtenfeldes The message length field is a 15-bit field for indicating the number of bytes of the payload message field 793 793 . , Das Nutzlastnachrichtenfeld The payload message field 793 793 enthält die tatsächliche Nachricht, die dem SCS contains the actual message that the SCS 101 101 übertragen wird, und hängt von dem Nachrichtentyp (Feld is transmitted, and depends on the message type (field 790 790 ) ab. ) From. Zu Verschlüsselungs/Entschlüsselungszwecken ist die Nachricht aufgefüllt, um sicherzustellen, dass ihre Länge ein Vielfaches von Acht ist. For encryption / decryption purposes, the message is padded to ensure that their length is a multiple of eight.
  • [0122] [0122]
    Das Rahmenformat schließt mit einem CRC-32-Prüfsummenfeld The frame format includes a CRC-32 checksum 795 795 ab, das von dem Postambel-Feld from that of the postamble field 779 779 gefolgt ist. is followed.
  • Aufwärtsmodemnachrichten Up Modem News
  • [0123] [0123]
    Tabelle 2 zeigt den Inhalt des Nutzlastnachrichtenfeldes Table 2 shows the contents of the payload message field 793 793 für die verschiedenen Nachrichtentypen: for different types of messages:
  • Tabelle 2 Table 2
  • Kabelmodem Cable Modem 113 113
  • [0124] [0124]
    8 8 zeigt detaillierter ein Kabelmodem shows in greater detail a cable modem 113 113 der vorliegenden Erfindung. of the present invention. Wie es in As shown in 3 3 gezeigt ist, besteht das Modem aus einer Steuerschaltung is shown, the modem from a control circuit 301 301 , die mit mehreren externen Vorrichtungen verbunden ist, wie z. B. einer Abstimmvorrichtung , Which is connected to several external devices, such as. For example, a tuner 303 303 , einem Sender , A transmitter 305 305 , einem RAM , A RAM 309 309 , einer Chiffrierschaltung , An enciphering 311 311 , einer LAN-Schnittstelle , A LAN interface 307 307 und einem Mikroprozessor and a microprocessor 302 302 . , Die Steuerschaltung The control circuit 301 301 ist eine Datenverarbeitungs- und Datenleitungsschaltung, die den Informationsfluss zwischen diesen verschiedenen externen Schaltungen steuert. is a data processing and data routing circuit that controls the information flow between these various external circuits.
  • [0125] [0125]
    Die Abstimm- und Demodulationsvorrichtung The tuning and demodulating 303 303 ist eine Standardrundsendungsabstimmvorrichtung, die mit einem Demodulator kombiniert ist, die ein Fernsehrundsendungssignal von dem Kabel is a Standardrundsendungsabstimmvorrichtung, which is combined with a demodulator that a television broadcast signal from the cable 111 111 empfängt und die I- und Q-Signale aus dem QAM-Datencodierformat ausgibt. and receives the I and Q signals output from the QAM Datencodierformat.
  • [0126] [0126]
    Die Steuerschaltung The control circuit 301 301 besteht aus mehreren miteinander verbundenen Funktionsvorrichtungen. consists of several interconnected functional devices. Dieser Satz von Vorrichtungen umfasst einen Front-End-Vorprozessor (FEP) This set of devices includes a front-end pre-processor (FEP) 801 801 , einen Front-End-Seriellumsetzer A Front End Serializer 803 803 , eine Abwärtssteuervorrichtung bzw. nachgeschaltete Steuervorrichtung (DCD) , A Downstream Control Device or downstream control device (DCD) 805 805 , eine Abwärtsnutzlastvorrichtung , A downward load device 807 807 , eine Aufwärtsvorrichtung (UD) A step-up device (UD) 809 809 , eine Chiffriervorrichtung (CD) A cryptographic (CD) 811 811 , eine Chiffrierchipschnittstelle (CCI) A Cipher (CCI) 813 813 , eine LAN-zu-RAM-Vorrichtung (LTR) , A LAN-to-RAM Device (LTR) 815 815 , eine LAN-Schnittstelle (LANI) A LAN interface (LANI) 817 817 , eine RAM-zu-LAN-Vorrichtung (RTL) , A RAM-to-LAN device (RTL) 819 819 , eine Senderausgangsseite (TB) A transmitter output side (TB) 821 821 , eine Senderschnittstelle (TRI) A transmitter interface (TRI) 823 823 und eine Abstimmvorrichtungsschnittstelle (TUI) and a Abstimmvorrichtungsschnittstelle (TUI) 824 824 . , Die CCI The CCI 813 813 , die LANI That LANI 817 817 , die TRI , The TRI 823 823 und die TUI and the TUI 824 824 sind alle über eine Mikroprozessorschnittstelle (MI) are all about a microprocessor interface (MI) 829 829 verbunden. connected.
  • [0127] [0127]
    Die Vorrichtungen The devices 805 805 , . 807 807 , . 809 809 , . 811 811 , . 815 815 , . 819 819 und and 823 823 sind alle über eine Busentscheidungs- und Prioritätssteuerung (BAPC) are all on a bus arbitration and priority control (BAPC) 825 825 mit dem RAM with the RAM 309 309 verbunden. connected. Die Vorrichtungen The devices 805 805 , . 807 807 , . 811 811 , . 815 815 , . 819 819 und and 823 823 sind über zwei Busse, einen Lesebus are two buses, a read bus 831 831 und einen Schreibbus and a write 833 833 , mit der BAPC With the BAPC 825 825 verbunden. connected. Eine Registerdatei, Master aller Zeiger (MOAP) A register file, master of all pointer (MOAP) 827 827 , enthält Zeiger und Versätze für Datenblocks, die in dem RAM , Contains pointers and offsets for data block in the RAM 309 309 gespeichert sind. are stored.
  • [0128] [0128]
    Eine Anmerkung zu der hier verwendeten Nomenklaturkonvention, die verschiedenen Vorrichtungen können jede als I/O-Puffer betrachtet werden, auf die geschrieben und von denen gelesen wird. A note on nomenclature convention used herein, the various devices may each be viewed as an I / O buffer, is written to and read from. Falls somit die BAPC Thus, if the BAPC 825 825 Daten zu einer Vorrichtung überträgt, „schreibt" dieselbe auf die Vorrichtung, falls die BAPC Transmits data to a device, "writes" the same to the device, if the BAPC 825 825 Daten von einer Vorrichtung überträgt, „liest" die BAPC von der Vorrichtung. Transmitting data from a device "reads" the BAPC of the device.
  • [0129] [0129]
    Jede der Vorrichtungen, die mit der BAPC Each of the devices connected to the BAPC 825 825 verbunden sind, ist gemäß einem verallgemeinerten Verbindungsschema mit der BAPC are connected, according to a generalized connection scheme with the BAPC 825 825 verbunden. connected. 9 9 ist ein Blockdiagramm dieses verallgemeinerten Verbindungsschemas zum Verbinden von Vorrichtungen mit der BAPC is a block diagram of this generalized connection scheme for connecting devices to the BAPC 825 825 . , Eine Vorrichtung An apparatus 901 901 ist eine der Vorrichtungen is one of the devices 805 805 , . 807 807 , . 809 809 , . 811 811 , . 815 815 , . 819 819 oder or 823 823 . , Demgemäß bezieht sich in der folgenden Erörterung „Vorrichtung Accordingly, in the following discussion refers to "device 901 901 " auf jede beliebige der Vorrichtungen "To any of the devices 805 805 , . 807 807 , . 809 809 , . 811 811 , . 815 815 , . 819 819 oder or 823 823 . , Die verschiedenen Vorrichtungen The various devices 901 901 weisen unterschiedliche tatsächliche Notwendigkeiten hinsichtlich der Verbindung mit dem RAM auf. have different needs in terms of actual connection with the RAM. Zum Beispiel schreibt die BAPC For example writes the BAPC 825 825 nur auf die Aufwärtsvorrichtung only to the Upstream Device 809 809 (sie liest nicht von derselben). (It does not read from the same). Andererseits wird von der Abwärtssteuervorrichtung On the other hand, the Downstream Control Device 805 805 nur gelesen (auf dieselbe wird nicht geschrieben). read-only (the same is not written). Jede Vorrichtung weist ein „REQ"-Signal (request = Anforderung), ein „SCHREIB"- („WRITE"-) Signal und einen „Adress" („Address")-Bus auf. Jede Vorrichtung empfängt ein „ACK"-Signal von der BAPC Each device has a "REQ" signal (request = request), a "WRITE" - ("WRITE" -) signal and an "address" ("Address") - bus on each device receives an "ACK" signal. of the BAPC 825 825 . , Falls eine bestimmte Vorrichtung eine Schreibfähigkeit aufweist, dann sind ein Eingangsbus, der „Schreibbus" genannt wird, und ein Eingangssignal, das DevXWE (Device X Write Enable – Vorrichtung-X-Schreibfreigabe) genannt wird, mit der Vorrichtung verbunden. Falls eine bestimmte Vorrichtung eine Lesefähigkeit aufweist, dann sind ein Ausgangsbus, der „Lesebus" genannt wird, und ein Eingangssignal, das DevXRE (Device X Read Enable – Vorrichtung-X-Lesefreigabe) genannt wird, mit der Vorrichtung verbunden. If it is called, connected to the device, a particular device - If a particular device has write capability, then an input bus, which is called "write bus", and an input signal, the DevXWE (Device X Write Enable Device X Write Enable). has a reading capability, then an output bus, which is called "read bus", and an input signal, the DevXRE (Device X Read Enable - device-X-read enable) is called, connected to the apparatus. Das X in DevXWE und DevXRE ist ein eindeutiger Identifizierer für jede bestimmte Vorrichtung. The X in DevXWE DevXRE and is a unique identifier for each particular device.
  • [0130] [0130]
    Die Chiffriervorrichtung (CD) The Cipher Device (CD) 811 811 und die LAN-zu-RAM-Vorrichtung and the LAN-to-RAM device 815 815 sind spezielle Fälle, insofern als dieselben auch durch ein Setzen der „REQ"-, „Write"- und „Address"-Signale und ein Empfangen der entsprechenden „ACK"-Signale für ihre Schnittstellenschaltungen are special cases in so far as the same also by setting the "REQ" - "Write" - and "Address" signals and receiving the corresponding "ACK" signals for their interface circuits 813 813 bzw. and 817 817 steuern. . control
  • [0131] [0131]
    Die Abwärtsnutzlastvorrichtung ist ein spezieller Fall, insofern als dieselbe zwei verschiedene Sätze von REQ-, Write- und Address-Signalen steuert und zwei entsprechende DevRE-Signale empfängt. The Downstream Payload Device is a special case, in that the same two different sets of REQ, Write, and Address signals and receives two corresponding controls devre signals.
  • Busentscheidungs- und Prioritätsschaltung Bus Arbitration and Priority Circuit
  • [0132] [0132]
    10 10 ist ein Zeitdiagramm, das ein Beispiel einer Datenübertragung zwischen der Vorrichtung is a timing diagram showing an example of a data transmission between the device 901 901 und der BAPC and the BAPC 825 825 zeigt. shows. Um eine Datenübertragung anzufordern, aktiviert die Vorrichtung To request a data transfer, the device activates 901 901 das REQ-Signal, die Adresse des RAM für die Transaktion und den Typ der Transaktion durch das WRITE-Signal (Schreiben = 1, Lesen = 0). the REQ signal, the address of the RAM for the transaction and the type of the transaction by the WRITE signal (write = 1, Read = 0). Wenn dieser Anforderung stattgegeben wird, aktiviert die BAPC das ACK-Signal. If this request is granted, the BAPC enabled the ACK signal. Die Vorrichtung kann sofort eine neue Anforderung erzeugen, wenn dieselbe die Bestätigung an der Taktkante erfasst. The apparatus may immediately generate a new request when the same detects the assertion of the clock edge. Falls diese Vorrichtung eine Schreibfähigkeit aufweist, muss dieselbe das DevWE als das Taktfreigabesignal verwenden, um den Inhalt des „Schreibbusses" in ihr internes Register zu takten. Falls diese Vorrichtung eine Lesefähigkeit aufweist, muss dieselbe das DevRE-Signal verwenden, um den Inhalt ihres internen Registers auf den „Lesebus" zu takten. If this device has a write capability, the same the DevWE must be used as the clock enable signal to clock the contents of the "write bus" in its internal registers. If this device has a reading ability, the same the Devre signal must use the contents of its internal register on the "read bus" to overclock.
  • [0133] [0133]
    11 11 ist ein Schema der Busentscheidungs- und Prioritätsschaltung (BAPC) is a schematic of the bus arbitration and priority circuit (BAPC) 825 825 . , Bei dem bevorzugten Ausführungsbeispiel gibt es acht Vorrichtungen, die Daten zu der BAPC In the preferred embodiment there are eight devices, the data to the BAPC 825 825 übertragen können. can be transferred. Somit gibt es gemäß dem Verbindungsschema von Thus, there is, according to the connection scheme of 11 11 acht getrennte REQ-Leitungen und acht getrennte Schreib- (Write-)Leitungen, jeweils eine für jede Vorrichtung. eight separate REQ lines and eight separate write (write-) lines, one for each device. Die acht REQ-Leitungen und die acht Schreibleitungen sind mit einer Prioritätscodiererschaltung The eight-REQ lines and eight write lines with a Prioritätscodiererschaltung 1101 1101 verbunden. connected. Der Prioritätscodierer bestimmt, welcher Vorrichtung als nächstes Zugriff auf den Lesebus The priority encoder determines which device the next access to the read bus 831 831 und den Schreibbus and the write 833 833 gestattet wird. is permitted. Der Prioritätscodierer The priority encoder 1101 1101 setzt das ACK-Signal hoch für die Vorrichtung höchster Priorität, die ihr REQ-Signal hoch gesetzt hat. sets the ACK signal is high for the highest device priority it REQ signal is set high. Der Priori tätscodierer The Priori tätscodierer 1101 1101 weist auch ein Höchste-Priorität-REQ-Signal für jede der Vorrichtungen 1 bis 8 auf (HiREQ1 bis HiREQ8). also has a highest-priority-REQ signal for each of the devices 1 through 8 on (HiREQ1 to HiREQ8). Der Prioritätscodierer The priority encoder 1101 1101 wählt für einen RAM-Zugriff die Vorrichtung 1 bis 8 aus, die die höchste Priorität aufweist und die ihr REQ-Signal hoch gesetzt hat. selects a RAM access the device 1 to 8, which has the highest priority and that her REQ signal is set high. Für diese Vorrichtung setzt der Prioritätscodierer For this device sets the priority encoder 1101 1101 das entsprechende HiREQ-Signal auf hoch und lässt die anderen sieben HiREQ-Signale niedrig. the corresponding HiREQ high signal on and leaves the other seven HiREQ signals low.
  • [0134] [0134]
    Eine Vorrichtung An apparatus 901 901 ist entweder in einem Einzelanforderungsmodus oder in einem Stoßmodus wirksam. is effective either in a single request mode or in a burst mode. Im Stoßmodus ist ein Zähler in der Vorrichtung auf die Anzahl von Zugriffen auf den RAM In burst mode a counter in the apparatus on the number of accesses to the RAM is 309 309 gesetzt, die die Vorrichtung set, the device, the 901 901 benötigt. required. Die Vorrichtung The device 901 901 hält das REQ-Signal hoch, bis alle diese Anforderungen bestätigt worden sind. holds the REQ signal high until all these requirements have been confirmed. 12 12 ist ein Schema eines Abschnitts der Vorrichtung is a schematic of a portion of the device 901 901 , die das ACK-Signal empfängt, und veranschaulicht den Betrieb der Vorrichtung Which receives the ACK signal and illustrates the operation of the apparatus 901 901 im Stoßmodus. in burst mode. Die Vorrichtung The device 901 901 enthält ein Zählerregister contains a counter register 1201 1201 zum Speichern der Anzahl von Speicheranforderungen, die dieselbe durchführen muss. for storing the number of memory requests must perform the same. Jede der Vorrichtungen Each of the devices 901 901 kann es wünschen, iterativ bzgl. einem Datenblock, der in dem RAM may wish to iteratively respect. a block of data in the RAM 309 309 gespeichert ist, wirksam zu sein. is stored, to be effective. Zum Beispiel verschlüsselt die Chiffriervorrichtung For example encrypts the cryptographic 811 811 iterativ ein Datenpaket, das an das Signalumwandlungssystem (SCS) iteratively a data packet addressed to the Signal Conversion System (SCS) 101 101 gesendet werden soll. should be sent. Wenn deshalb eine Vorrichtung Therefore, when a device 901 901 auf einen Datenblock zugreifen muss, ist die Anzahl von Aufzeichnungen oder Wörtern in dem Block, auf den die Vorrichtung needs to access a block of data, the number of records or words in the block to which the device 901 901 Zugriff braucht, in dem Zähler Access needs in the counter 1201 1201 gespeichert. stored.
  • [0135] [0135]
    Die Vorrichtung The device 901 901 enthält auch ein Adressregister also contains an address register 1203 1203 zum Speichern der nächsten Adresse in dem RAM for storing the next address in the RAM 309 309 , auf die die Vorrichtung To which the device 901 901 Zugriff haben will. Will have access. Das ACK-Signal wird verwendet, um den Zähler The ACK signal is used to reset the counter 1201 1201 zu dekrementieren und das Adressregister decrement and the address register 1203 1203 zu inkrementieren. to increment. Die Bits, die den Zähler bilden, werden alle in ein ODER-Gatter The bits that make up the counter are all in an OR gate 1205 1205 gespeist. fed. Wenn alle Bits in dem Zählerregister Null sind, ist die Ausgabe des ODER-Gatters When all bits in the counter register are zero, the output of the OR gate 1205 1205 Null, und somit ist das REQ-Signal der Vorrichtung Zero, and thus the REQ signal of the device 901 901 unten. below. Der Zähler The counter 1201 1201 wird auch durch ein „LADEN"- (Anforderungsstart-) Signal gesteuert. Der Zählwert von Wörtern, auf die zuzugreifen ist, wird an einer positiven Taktflanke in den Zähler geladen, wenn das LADEN-Signal hoch ist. is also a "LOAD." - controlled (Anforderungsstart-) signal, the count of words to be accessed is loaded on a positive clock edge into the counter when the LOAD signal is high.
  • [0136] [0136]
    Aus Gründen der Klarheit werden in der Erörterung der Busentscheidungs- und Prioritätsschaltung For the sake of clarity, in the discussion of the Bus Arbitration and Priority Circuit 825 825 jeder der Vorrichtungen, die mit derselben verbunden sind, Vorrichtungsnummern zugeteilt. each of the devices that are connected to the same, device numbers assigned. Welche Vorrichtungsnummer welcher bestimmten Vorrichtung entspricht, ist nicht wesentlich. Which device number corresponds to which particular device is not essential. Zu exemplarischen Zwecken soll jedoch Vorrichtung For exemplary purposes, however, apparatus is 1 1 als die Abwärtssteuervorrichtung as the Downstream Control Device 805 805 betrachtet werden; be considered; aus der Perspektive der Busentscheidungs- und Prioritätsschaltung from the perspective of bus arbitration and priority circuit 825 825 handelt es sich bei der Abwärtsnutzlastvorrichtung is it in the Downstream Payload Device 807 807 um zwei Vorrichtungen, eine für den Primärzeiger und eine für den Sekundärzeiger, deshalb seien diese als Vorrichtungen two devices, one for the primary pointer and one for the secondary pointer, therefore, be they than devices 2 2 und and 3 3 betrachtet; considered; Vorrichtung Device 4 4 sei als die Aufwärtsvorrichtung either as the Upstream Device 809 809 betrachtet; considered; die Chiffriervorrichtung the Cipher 813 813 sei als Vorrichtung whether as a device 5 5 betrachtet; considered; die LAN-zu-RAM the LAN-to-RAM 815 815 als Vorrichtung as a device 6 6 ; ; die RAM-zu-LAN als Vorrichtung the RAM-to-LAN as a device 7 7 ; ; und der Mikroprozessor and the microprocessor 302 302 (mittels der Mikroprozessorschnittstelle (Via the microprocessor interface 829 829 ) sei als Vorrichtung ) Is a device 8 8 betrachtet. considered.
  • [0137] [0137]
    Der Prioritätscodierer The priority encoder 1101 1101 weist eine Ausgangs-ACK-Signalleitung für jede der Vorrichtungen auf, die mit der Busentscheidungs- und Prioritätsschaltung verbunden sind, nämlich ACK has an output ACK signal line for each of the devices that are connected to the Bus Arbitration and Priority circuit, namely, ACK 1 1 bis ACK to ACK 8 8 . , Jede dieser Leitungen ist in Leitungen INC Each of these lines is in lines INC 1 1 bis INC to INC 8 8 aufgeteilt, die wiederum mit ihren jeweiligen Adressregistern divided, in turn, with their respective address registers 1103-1 1103-1 bis to 1103-8 1103-8 verbunden sind (die Adressregister, die den Vorrichtungen are connected (the address register, the devices to 3 3 bis to 7 7 entsprechen, sind nicht gezeigt). correspond, are not shown).
  • [0138] [0138]
    Die Busentscheidungs- und Prioritätsschaltung The bus arbitration and priority circuit 825 825 ist eine pipelineartige Vorrichtung. is a pipelined device. In anderen Worten werden Daten intern parallel in koordinierten Pipelinestufen übertragen. In other words, data is transferred internally in parallel in coordinated pipeline stages. Die Pipelinestufen für Lese- und Schreiboperationen in und aus dem RAM The pipeline stages for read and write operations to and from the RAM 309 309 sind auf der Zeitlinie are on the time line 1105 1105 gezeigt. shown.
  • [0139] [0139]
    Ein Register A register 1107 1107 ist ein Pipelineregister, das die HiREQ-Signale is a pipeline register that the signals HiREQ 1 1 bis to 8 8 und die Schreibsignale von dem Prioritätscodierer and the write signals from the priority encoder 1101 1101 aufnimmt. receives. Die Adressregister The address register 1103-1 1103-1 bis to 1103-8 1103-8 sind mit jeweiligen Pipelineregistern are connected to respective pipeline registers 1109-1 1109-1 bis to 1109-8 1109-8 verbunden. connected. Jede Vorrichtung, von der die Busentscheidungs- und Prioritätsschaltung Each device of the bus arbitration and priority circuit 825 825 liest, enthält ein Leseregister. reads, contains a read register. Die Leseregister sind in Read registers are in 11 11 als Register Register as a 1111-1 1111-1 bis to 1111-8 1111-8 gezeigt (Anmerkung: nicht alle Vorrichtungen sind Vorrichtungen, von denen gelesen wird, und somit weisen nicht alle Vorrichtungen Leseregister auf). shown (note: not all devices are devices that are read from, and thus, not all devices to read register). Die Register The Register 1107 1107 , . 1109 1109 und and 1111 1111 sind parallele Pipelineregister. are parallel pipeline registers. Somit werden Daten parallel in die und aus den Registern Thus, data in parallel into and out of the registers 1107 1107 , . 1109 1109 und and 1111 1111 getaktet. clocked.
  • [0140] [0140]
    Die erste Stufe der Pipeline für die Busentscheidungs- und Prioritätsschaltung The first stage of the pipeline for the Bus Arbitration and Priority Circuit 825 825 besteht aus dem Prioritätscodierer consists of the Priority Encoder 1101 1101 , dem Laden oder Inkrementieren der Adressregister , Loading or incrementing the address register 1103 1103 , dem Dekrementieren der Zähler , Decrementing the counter 1201 1201 und dem Vorbereiten von Daten, die in Leseregister and preparing data in the read register 1111 1111 geladen werden sollen. should be loaded.
  • [0141] [0141]
    Die zweite Stufe der Pipeline für die BAPC The second stage of the pipeline for the BAPC 825 825 besteht aus einer Lese-Schreib-Vorrichtung-Auswählschaltung consists of a read-write device selecting circuit 1113 1113 . , Die Lese-Schreib-Vorrichtung-Auswählschaltung The read-write device selecting circuit 1113 1113 ist wirksam, um auszuwählen, von welcher Vorrichtung gelesen werden soll oder auf welche Vorrichtung geschrieben werden soll. is operative to select, to be read from or which device is to be written to said device. Die Schaltung The circuit 1113 1113 nimmt als Eingabe zwei Sätze von Signalen von dem Pipelineregister takes as input two sets of signals from the pipeline register 1107 1107 auf. on. Der erste Satz von Signalen besteht aus den acht HiREQ-Leitungen, und der zweite Satz sind die acht Schreibleitungen. The first set of signals consists of eight HiREQ lines, and the second set are the eight write lines. Die Schaltung The circuit 1113 1113 weist als Ausgangsleitungen eine Chipfreigabe- (CE-) Leitung zum Freigeben des RAM has as output lines a chip enable (CE) line to release the RAM 309 309 , eine Ausgabefreigabe- (OE-) Leitung zum Setzen des RAM in Schreib- oder Lesemodus, wie es für die Anforderung durch die ausgewählte Vorrichtung geeignet ist, und eine Signalleitung zum Takten von Daten in oder aus dem RAM (DevReadE) auf. An output enable (OE) line to set the RAM in read or write mode, as is appropriate for the request by the selected device, and a signal line to clock data into or out of the RAM (DevReadE) on. Am Schluss der zweiten Stufe werden diese Signale (CE, OE, DevReadE) in ein Pipelineregister At the end of the second stage, these signals (CE, OE, DevReadE) are in a pipeline register 1119 1119 getaktet. clocked.
  • [0142] [0142]
    Zusätzlich gibt es acht Vorrichtungsschreibfreigabe-Leitungen, die von der Auswählschaltung In addition, there are eight Device Write Enable lines from the selection circuit 1113 1113 ausgegeben werden. be issued. Falls die ausgewählte Vorrichtung eine Schreibanforderung gestellt hat, wird die entsprechende Vorrichtungsschreibfreigabe-Leitung hoch gesetzt, ansonsten wird dieselbe niedrig gelassen. If the selected device has detected a write request, the corresponding device write enable line is set high, otherwise the same left low. Die Vorrichtungsschreibfreigabe-Leitungen für alle nicht ausgewählten Vorrichtungen bleiben niedrig. The Device Write Enable lines for all devices not selected remain low. Die acht Vorrichtungsschreibfreigabe-Leitungen werden in das Pipelineregister The eight Device Write Enable lines are in the pipeline register 1119 1119 getaktet. clocked.
  • [0143] [0143]
    Die Schaltung The circuit 1113 1113 weist eine Ausgangsleseauswählleitung auf, die jeder Vorrichtung mit einem Leseregister has a Ausgangsleseauswählleitung that any device with a read register 1111 1111 entspricht. corresponds. Die Leseauswählleitung, die der ausgewählten Vorrichtung entspricht, wird durch die Auswählschaltung The Leseauswählleitung, corresponding to the selected device is determined by the selection circuit 1113 1113 hoch gestellt, falls die Anforderung von der ausgewählten Vorrichtung eine Leseanforderung ist, ansonsten wird dieselbe niedrig gehalten. superscript, if the request from the selected device is a read request, otherwise is kept low the same. Alle anderen Leseauswählleitungen werden niedrig gehalten. All other Leseauswählleitungen be kept low. Die Leseauswählleitungen werden jeweils in Schalter The Leseauswählleitungen be in each switch 1115-1 1115-1 bis to 1115-8 1115-8 gespeist, die wiederum mit dem Ausgang der jeweiligen Leseregister fed, in turn, to the output of the respective read registers 1111-1 1111-1 bis to 1111-8 1111-8 verbunden sind. are connected. Die Schalter The switch 1115 1115 ermöglichen es, dass Daten aus dem Leseregister allow data from the read register 1111 1111 , mit dem dieselben verbunden sind, auf den Lesebus , Are connected to the same, on the read bus 831 831 übertragen werden. be transferred. Am Schluss der zweiten Stufe werden die Daten auf dem Lesebus At the end of the second stage the data on the read bus will 831 831 in ein Pipelineregister in a pipeline register 1117 1117 getaktet. clocked. Somit enthält das Pipelineregister Thus, the pipeline register contains 1117 1117 am Ende der zweiten Stufe für eine Leseoperation die Daten, die von der Vorrichtung gelesen wurden. at the end of the second stage for a read operation, the data that have been read by the device.
  • [0144] [0144]
    Die zweite Stufe enthält auch einen Adressmultiplexer The second stage also includes an address multiplexer 1121 1121 . , Der Adressmultiplexer The address multiplexer 1121 1121 empfängt als Eingaben die Adressen von den acht Adresspipelineregistern receives as inputs the addresses from the eight address pipeline registers 1109-1 1109-1 bis to 1109-8 1109-8 . , Diese Adressen werden durch die HiREQ-Leitungen ausgewählt. These addresses are selected by the HiREQ lines. Es wird immer nur eine HiREQ-Leitung hoch gehalten. There is always kept up only a HiREQ line. Der Adress-Mux The address mux 1121 1121 wählt die Adresse aus, die in dem entspre chenden Adressregister selects the address from which corre sponding to the address register 1109 1109 gespeichert ist. is stored. Am Ende der zweiten Pipelinestufe wird die ausgewählte Adresse von dem Mux At the end of the second pipeline stage, the selected address from MUX 1121 1121 in ein Pipelineregister in a pipeline register 1123 1123 getaktet. clocked.
  • [0145] [0145]
    Die dritte Pipelinestufe besteht aus einem Bewegen von Daten in den RAM The third pipeline stage consists of a moving data into the RAM 309 309 und aus dem RAM and from the RAM 309 309 , je nach Fall, abhängig von dem Typ (Lese- oder Schreib-) von Anforderung, die durch die ausgewählte Vorrichtung gestellt wurde. Depending on the case, depending on the type (read or write) of request that was made by the selected device.
  • [0146] [0146]
    Das Adresspipelineregister The address pipeline register 1123 1123 ist mit dem RAM is connected to the RAM 309 309 verbunden. connected. Bei einem positiven Taktübergang wird die Adresse, die in dem Register With a positive clock transition is the address in register 1123 1123 gespeichert ist, dem RAM is stored, the RAM 309 309 zugänglich gemacht, so dass der RAM auf diese bestimmte Adresse zugreifen kann. made available, so that the RAM can access that particular address.
  • [0147] [0147]
    Drei Leitungen verbinden den RAM Three lines connect the RAM 309 309 mit dem Pipelineregister with the pipeline register 1119 1119 . , Die erste von ihnen ist die Chipfreigabe- (CE-) Leitung. The first of them is the chip enable (CE) line. Falls ein RAM If a RAM 309 309 -Zugriff verarbeitet wird, setzt die Vorrichtungsauswählschaltung -Access Is processed, sets the Device Select 1113 1113 in Stufe 2 die CE-Leitung hoch, um den RAM in stage 2, the CE line high to the RAM 309 309 freizugeben. release. Da der CE-Leitungswert in dem Pipelineregister Since the CE line value in the pipeline register 1119 1119 gespeichert wird, wird der CE-Wert, der durch die Auswählschaltung is stored, the CE value is defined by the selection circuit 1113 1113 gesetzt wurde, in der dritten Stufe an den RAM was placed in the third stage of the RAM 309 309 übertragen. transmitted. Eine zweite Steuerleitung von dem Pipelineregister A second control line from the pipeline register 1119 1119 zu dem RAM ist die Ausgabefreigabe- (OE-) Leitung. to the RAM is the output enable (OE) line. Die OE-Leitung trägt ein Signal, um dem RAM mitzuteilen, ob auf denselben im Schreibmodus oder im Lesemodus zugegriffen wird. The OE line carries a signal to indicate to the RAM, if the same is being accessed in write mode or in read mode.
  • [0148] [0148]
    Eine Leitung zum Tragen des DevReadE-Signals verbindet das Pipelineregister A conduit for carrying the DevReadE signal connects the pipeline register 1119 1119 mit einem Schalter with a switch 1125 1125 , der das Lesedatenpipelineregister , The read data pipeline register 1117 1117 mit einem RAM-Bus with a RAM bus 1127 1127 verbindet. connects. Falls eine Leseoperation (dh der RAM If a read operation (ie RAM 309 309 liest von der ausgewählten Vorrichtung) unternommen wird, ist das DevReadE-Signal hoch (wie es durch die Vorrichtungsauswählschaltung reads from the selected device) is made to the DevReadE signal is high (as indicated by the Device Select 1113 1113 gesetzt ist). is set). Wenn das DevReadE-Signal hoch ist, wird es ermöglicht, dass die Daten in dem Pipelineregister If the DevReadE signal is high, it is possible that the data in the pipeline register 1117 1117 durch den Schalter through the switch 1125 1125 auf den Bus on the bus 1127 1127 übertragen werden. be transferred.
  • [0149] [0149]
    Um einen direkten Speicherzugriff auszuführen, werden das Schreibfreigabe- (WE-) und das OE-Signal für den RAM To perform a direct memory access, the write enable (WE) and OE signals for the RAM are 309 309 und die ausgewählte Vorrichtung umgekehrt. and the selected device vice versa. In anderen Worten, wenn der RAM In other words, when the RAM 309 309 „liest", „schreibt" die Vorrichtung und umgekehrt. "Read", "write", the device and vice versa. Somit ist die OE-Signalausgabe von der Vorrichtungsauswählschaltung Thus, the OE signal is output from the Device Select 1113 1113 die Inverse des DevReadE-Signals. the inverse of the DevReadE signal. Bei dem DevReadE-Signal wird auch eine NAND-Operation (über Gatter Wherein DevReadE signal and also a NAND operation (via gate 1130 1130 ) mit dem Systemtaktsignal durchgeführt, um ein Schreibfreigabesignal (WE) zu erzeugen, das von dem Gatter ) Is carried out with the system clock signal to generate a write enable signal (WE), the gate of the 1130 1130 an den RAM to the RAM 309 309 ausgegeben wird. is output. Das WE-Signal ist ein Übernahmesignal für den RAM The WE signal is a strobe for the RAM 309 309 . , Dies erweist sich als besonders nützlich, wenn zwei aufeinander folgende Schreiboperationen stattfinden. This proves especially useful when two successive write operations take place.
  • [0150] [0150]
    Am Schluss der dritten Stufe für eine Leseoperation an dem Übernahmesignal, das durch das WE-Signal geliefert wird, werden die Daten auf dem RAM-Bus At the end of the third stage for a read operation on the strobe signal, which is supplied by the WE signal, the data on the RAM bus 1127 1127 in den RAM übertragen, an der Adresse auf der RA-Leitung, die das Adresspipelineregister transferred to the RAM at the address on the RA line, the address pipeline register the 1123 1123 mit dem RAM verbindet. connects to the RAM.
  • [0151] [0151]
    Für Schreiboperationen, dh wenn der RAM For write operations, that is, when the RAM 309 309 verwendet wird, um auf eine Vorrichtung zu schreiben, werden während der dritten Stufe die Daten, die an der Adresse auf der RA-Leitung gespeichert sind, aus dem RAM is used to write to a device, during the third stage the data stored at the address on the RA line, from the RAM 309 309 auf den RAM-Bus on the RAM bus 1127 1127 übertragen. transmitted. Am Schluss der dritten Stufe werden für Schreiboperationen die Daten auf dem RAM-Bus At the end of the third stage, the data for write operations on the RAM bus 1127 1127 in das Schreibpipelineregister in the write pipeline register 1131 1131 übertragen. transmitted.
  • [0152] [0152]
    Ebenfalls während der dritten Pipelinestufe werden die Signale DevWE 1 bis 8 von den Pipelineregistern Also during the third pipeline stage, the signals DevWE 1 to 8 of the pipeline registers 1119 1119 in Pipelineregister in pipeline register 1129-1 1129-1 bis to 1129-8 1129-8 übertragen. transmitted. Diese Übertragung wird verwendet, um das Eintreffen der DevWE-Signale zeitlich mit dem Eintreffen der Daten, die in das Schreibregister der ausgewählten Vorrichtung geschrieben werden sollen, abzustimmen. This transfer is used to time the arrival of the data to be written to the write register of the selected device to coordinate the arrival of the DevWE signals.
  • [0153] [0153]
    In der vierten Stufe des Betriebs der Busentscheidungs- und Prioritätsschaltung In the fourth stage of operation of the bus arbitration and priority circuit 825 825 werden die Daten in dem Schreibpipelineregister the data in the write pipeline register 1131 1131 zuerst auf den Schreibbus first on the write bus 833 833 und dann von dem Schreibbus and then from the write bus 833 833 in das Schreibregister der ausgewählten Vorrichtung übertragen. transferred to the write register the selected device. Somit ist das Schreibpipelineregister Thus, the write pipeline register 1131 1131 mit dem Schreibbus with the write 833 833 verbunden. connected. Der Schreibbus The write bus 833 833 ist über Schalter switch is on 1133-1 1133-1 bis to 1133-8 1133-8 mit Schreibregistern with write registers 1135-1 1135-1 bis to 1135-8 1135-8 verbunden. connected. Da nicht alle Vorrichtungen Vorrichtungen sind, auf die geschrieben wird, weisen nicht alle Vorrichtung Schreibregister auf. Since not all devices are devices to which is written, do not have all the device on the write registers. Die Schalter The switch 1133 1133 sind jeweils mit einer entsprechenden DevWE-Leitung verbunden und werden durch dieselbe gesteuert, z. B. ist der Schalter are each connected to a corresponding DevWE line and are controlled by the same, for. example, the switch 1133-1 1133-1 mit DevWE1 verbunden. connected to DevWE1. Wenn die bestimmte DevWE-Leitung ein hohes Signal trägt, ermöglicht es der Schalter When the determined DevWE line carries a high signal, it allows the switch 1133 1133 , dass Daten von dem Schreibbus That data from the write 833 833 in das entsprechende Schreibregister in the corresponding write register 1135 1135 übertragen werden. be transferred. Somit enthält das Schreibregister Thus, the write register contains 1135 1135 der ausgewählten Vorrichtung für eine Schreiboperation am Schluss der vierten Stufe die Daten, die an dem Ende der dritten Stufe in dem Schreibpipelineregister the selected device for a write operation at the end of the fourth stage, the data at the end of the third stage in the write pipeline register 1131 1131 gehalten werden. be maintained.
  • [0154] [0154]
    Da die Busentscheidungs- und Prioritätsschaltung Since the bus arbitration and priority circuit 825 825 eine pipelineartige Architektur ist, kann dieselbe Lese- und Schreibanforderungen von den Vorrichtungen a pipelined architecture, the same read and write requests from the devices 901 901 mit einer Rate von einer Operation pro Taktzyklus verarbeiten. process at a rate of one operation per clock cycle. Die Latenzzeit auf der RAM-Ebene beträgt zwei Taktzyklen. The latency to the RAM plane is two clock cycles. Die Latenzzeit auf der Vorrichtungsebene beträgt drei Taktzyklen für die Schreibvorrichtungen (auf die Vorrichtung geschriebene Daten) und einen Taktzyklus für die Lesevorrichtungen (auf den RAM geschriebene Daten). The latency on the device level is three clock cycles for the write devices (written to the device data), and a clock cycle for the reading devices (written to the RAM data).
  • [0155] [0155]
    13 13 ist ein Zeitdiagramm, das einen exemplarischen Satz von Transaktionen zeigt, die durch die Busentscheidungs- und Prioritätsschaltung is a timing diagram showing an exemplary set of transactions represented by the bus arbitration and priority circuit 825 825 von from 11 11 verarbeitet werden. be processed. Das Diagramm von The graph of 13 13 zeigt den Systemtakt ( shows the system clock ( 1301 1301 ), die Address-, REQ-, Write- (~Read-) und ACK-Leitungen für eine erste Vorrichtung (Leitungen ), The Address-, REQ, Write (~ read-) and ACK lines for a first device (lines 1303 1303 ) und für eine zweite Vorrichtung (Leitungen ) And for a second device (lines 1305 1305 ), die ausgewählte Vorrichtung (Leitung ), The selected device (line 1307 1307 ) und die Werte verschiedener interner Leitungen der Schaltung, die in ) And the values of various internal lines of the circuit, which in 11 11 gezeigt ist. is shown.
  • [0156] [0156]
    Bei dem Beispiel von In the example of 13 13 bemühen sich zwei Vorrichtungen seek two devices 901-1 901-1 und and 901-2 901-2 um Zugriff auf den RAM to access to the RAM 309 309 . , Vorrichtung Device 1 1 stellt eine Schreibanforderung und Vorrichtung provides a write request and device 2 2 stellt eine Leseanforderung. provides a read request. Bei Pipelinestufe In pipeline stage 1 1 haben beide Vorrichtungen ihre jeweiligen REQ-Signale gehoben. have raised their respective REQ signals both devices. Vorrichtung Device 1 1 weist eine höhere Priorität auf als Vorrichtung has a higher priority than device 2 2 , deshalb sendet der Prioritätscodierer Therefore sends the priority encoder 1101 1101 , in den zwei hohe REQ-Signale eingegeben sind, eine Bestätigung an Vorrichtung Are entered in the two high REQ signals an acknowledgment to device 1 1 , die ihr REQ-Signal in Stufe That her REQ signal in stage 2 2 niedriger macht. makes lower. Deshalb empfängt der Prioritätscodierer Therefore, the priority encoder receives 1101 1101 in Stufe in stage 2 2 nur das REQ-Signal von Vorrichtung only the REQ signal from Device 2 2 als hoch und sendet derselben eine Bestätigung. as high and sends them a confirmation.
  • Master aller Zeiger Master all pointers
  • [0157] [0157]
    Jede der Vorrichtungen, die auf den RAM Each of the devices on the RAM 309 309 zugreifen (Vorrichtungen access (devices 805 805 , . 807 807 , . 809 809 , . 811 811 , . 813 813 , . 815 815 , . 817 817 , . 819 819 und and 829 829 ), greift immer jeweils nur auf einen bestimmten Abschnitt oder Puffer des RAM zu. ), Always accesses only to a specific section or buffer of the RAM. Während des Zeitintervalls, in dem eine Vorrichtung auf einen bestimmten Puffer zugreift, hat keine andere Vorrichtung gleichzeitigen Zugriff auf diesen Puffer. During the time interval in which a device accesses a particular buffer no other device has concurrent access to that buffer. Die Adresse, auf die eine Vorrichtung zugreift, ist in dem internen Adressregister der Vorrichtung ( The address that is accessed by a device, in the internal address register of the device ( 1203 1203 von from 12 12 ) gespeichert. ) Is stored. Diese Adresse wird durch den Mikroprozessor This address is determined by the microprocessor 302 302 initialisiert. initialized.
  • [0158] [0158]
    Die Abwärtssteuervorrichtung The Downstream Control Device 805 805 und die Abwärtsnutzlastvorrichtung and the Downstream Payload Device 807 807 sind relativ unabhängig von dem Mikroprozessor are relatively independent of the microprocessor 302 302 wirksam. effective. Die DCD The DCD 805 805 und die DPD and the DPD 807 807 schreiben beide auf definierte Puffer in dem RAM Write on both defined buffer in the RAM 309 309 . , Für sowohl die DCD For both the DCD 805 805 als auch die DPD and the DPD 807 807 ist der Pufferumfang definiert durch zwei Register in der Steuerschaltung is defined by two registers in the control circuit of the buffer circumference 301 301 , und zwar das Oberes-Pufferende- (TOB-) Register und das Unteres-Pufferende- (BOB-) Register. , Namely the Upper-Pufferende- (Tobler) register and the lower-Pufferende- (BOB) register.
  • [0159] [0159]
    Die anderen Vorrichtungen, dh die Vorrichtungen The other devices, ie, the devices 809 809 , . 811 811 , . 813 813 , . 815 815 , . 817 817 , . 819 819 und and 829 829 , sind immer jeweils bezüglich einem Datenpaket wirksam. , A data packet are always respect each statement. Der Ort dieser Pakete wird durch eine kleine Registerdatei in der Steuereinheit The location of these packets is by a small register file in the control unit 301 301 , die der Master aller Zeiger That the master of all pointer 827 827 genannt wird, verwaltet. is called managed.
  • [0160] [0160]
    Der MOAP The MOAP 827 827 ist ein 16 × 16-Bit eingebetteter Speicher, der Startadressen von unterschiedlichen Puffern in dem gemeinsamen RAM is a 16 × 16-bit embedded memory, the starting addresses of different buffers in the shared RAM 309 309 enthält. contains. Unter Verwendung der Syntax der C++ Sprache: Using the syntax of the C ++ language:
    int*addressA = new int[sizeof_block_A]; int * ADDRESSA = new int [sizeof_block_A];
    int*addressB = new int[sizeof_block_B]; int * AddressB = new int [sizeof_block_B];
    int*addressC = new int[sizeof_block_C]; int * addressC = new int [sizeof_block_C];
    int*addressD = new int[sizeof_block_D]; int * addressd = new int [sizeof_block_D]; ... ...
    int*MOAP[] = {addressA, addressB, addressC, addressD ...}; int * MOAP [] = {ADDRESSA, AddressB, addressC, addressd ...};
  • [0161] [0161]
    14(a) 14 (a) ist ein grobes Schema der Struktur des MOAP is a rough diagram of the structure of the MOAP 827 827 . , Unter Verwendung dieser Struktur ist das CM Using this structure the CM 113 113 in der Lage, Datenblöcke dynamisch zu handhaben und zu bewegen. able to handle data blocks dynamically and move.
  • [0162] [0162]
    Der Betrieb des MOAP The operation of the MOAP 827 827 wird am besten unter Verwendung eines veranschaulichenden Beispiels verstanden. is best understood using an illustrative example. Es sei angenommen, dass der Mikroprozessor It is assumed that the microprocessor 302 302 mit dem LAN-Chip to the LAN chip 307 307 kommuniziert und dadurch erfährt, dass ein Datenpaket von dem PC verfügbar ist, um aufwärts zu dem SCS communicates and thereby learns that a data packet from the PC is available to upstream to the SCS 101 101 übertragen zu werden. to be transmitted. Der Mikroprozessor The microprocessor 302 302 teilt dann einen Speicherabschnitt für dieses Paket zu, schreibt den Start dieser Adresse in den MOAP then allocates a memory section for this package to overwrite the start of this address in the MOAP 827 827 , bereitet den Kopfblock mit den Iterationszählinformationen vor und signalisiert der LTR- (LAN-zu-RAM-) Vorrichtung Prepares the head block with the Iterationszählinformationen before and signals the LTR (LAN-to-RAM) device 815 815 , dass dieser Zeiger gültig ist. That this pointer is valid. Die LTR-Vorrichtung The LTR-device 815 815 kopiert diesen MOAP copied these MOAP 827 827 -Eintrag in ihr eigenes Adressregister und beginnt, die Daten unter Verwendung des Adressregisters von dem LAN-Chip Entry in its own address register and begins the data using the address register of the LAN chip 307 307 in den RAM in the RAM 309 309 zu kopieren (natürlich unter Verwendung der BAPC copy (of course using the BAPC 825 825 , wie es im Vorhergehenden beschrieben ist). Is as described above).
  • [0163] [0163]
    Wenn das gesamte Paket zu dem RAM übertragen worden ist, signalisiert die LTR-Vorrichtung When the entire packet has been transferred to the RAM, the LTR Device signaled 815 815 dem Mikroprozessor, dass dieselbe ihre Aufgabe abgeschlossen hat. the microprocessor that the same has completed its task. Der Mikroprozessor bereitet dann den Chiffrierchip The microprocessor then prepares the Cipher 311 311 vor durch ein Auswählen oder Schreiben des richtigen Entschlüsselungsschlüssels in ein Register, das durch die Chiffriervorrichtung by before selecting or writing the correct decryption key in a register designated by the Cipher 811 811 adressierbar ist, aktualisiert den Kopfblock des Pakets mit den Iterationszählinformationen und schreibt dann die Anfangsadresse des Datenblocks in das Register des MOAP addressable, updates the header of the packet with the Iterationszählinformationen and then writes the starting address of the data block in the register of MOAP 827 827 für die Chiffriervorrichtung for the Cipher 811 811 und signalisiert der Chiffriervorrichtung and signals the Cipher Device 811 811 , die Chiffrieroperation zu beginnen. To start the encryption operation.
  • [0164] [0164]
    Die Chiffriervorrichtung The Cipher 811 811 kopiert ihren MOAP copied their MOAP 827 827 -Eintrag in ihr eigenes Adressregister und beginnt die Chiffrieroperation. Entry in its own address register and begins the cipher operation. Am Ende der Chiffrieroperation signalisiert die Chiffriervorrichtung At the end of the Cipher cipher operation signals 811 811 dem Mikroprozessor the microprocessor 302 302 . ,
  • [0165] [0165]
    An diesem Punkt ist der Datenblock bereit für die Übertragung. At this point the data block is ready for transmission. Der Mikroprozessor schreibt die Anfangsadresse dieses Datenblocks in das Register des MOAP The microprocessor writes the starting address of this data block in the register of MOAP 827 827 für die Aufwärtsvorrichtung for the Upstream Device 809 809 , bereitet den Kopfblock vor, bereitet, falls nötig, den Reservierungsblock vor und signalisiert der Aufwärtsvorrichtung , Prepares the header, prepares, if necessary, before the reservation block and signals the Upstream Device 809 809 , das Paket zu übertragen. To transmit the packet.
  • [0166] [0166]
    Die Aufwärtsvorrichtung The Upstream Device 809 809 kopiert dann ihren MOAP- then copies its MOAP- 827 827 -Eintrag in ihr eigenes Adressregister und überträgt zusammen mit der Abwärtssteuerkanalvorrichtung Entry in its own address register and transmits together with the downward control channel device 805 805 den Block. the block.
  • [0167] [0167]
    Der Vorteil der MOAP-Struktur und des durch den Mikroprozessor The advantage of MOAP-structure and by the microprocessor 302 302 gesteuerten Verfahrens zum Zugreifen auf Datenblöcke in dem RAM controlled method of accessing blocks of data in the RAM 309 309 besteht in der Flexibilität, die Aufmerksamkeit von unterschiedlichen Vorrichtungen auf einen bestimmten Block im Speicher zu konzentrieren durch ein Schreiben der Anfangsadresse dieses bestimmten Blocks in den MOAP is the flexibility, the attention of different devices to focus on a particular block in memory by a letter from the starting address of this particular block in the MOAP 827 827 -Bereich und ein Signalisieren an die Vorrichtungen, diesen Block für ihre bestimmte Verwendung zu verwenden. Region and a signaling to the devices to use that block for their particular use. Eine Entscheidung hinsichtlich der Größe von Puffern, der Anzahl von Puffern und des Orts von Puffern wird einfach zu einer Mikroprozessorentscheidung und muss nicht fest codiert werden. A decision regarding the size of buffers, the number of buffers and the location of buffers is simply a microprocessor decision and not have to be coded.
  • [0168] [0168]
    Die einzigen fest codierten Werte in einer Zustandsmaschine, die die Operationen von jeder beliebigen der Vorrichtungen steuern, ist die Adresse in dem MOAP The only hard-coded values in a state machine controlling the operations of any each of the devices is the address in the MOAP 827 827 -Eintrag, die auf den für die Zustandsmaschine interessierenden Block zeigt. Entry that points to the interest for the state machine block. Zum Beispiel ist die Vorrichtung, die bezüglich Block A in For example, the device described in respect to block A is 14(a) 14 (a) wirksam ist, fest codiert, um den Zeiger auf Block A von dem ersten Wort des MOAP effective hard-coded to the pointer to block A of the first word of MOAP 827 827 zu empfangen. to receive. Hingegen ist die Vorrichtung, die an Block B interessiert ist, fest codiert, um einen Zeiger auf Block B von dem zweiten Wort des MOAP In contrast, the device which is interested in block B, hard-coded, a pointer to block B from the second word of the MOAP 827 827 zu empfangen. to receive.
  • [0169] [0169]
    Mehrere Vorrichtungen sind gleichzeitig bezüglich mehrerer Datenblöcke innerhalb der Steuerschaltung A plurality of devices are simultaneously regarding a plurality of data blocks within the control circuit 301 301 wirksam. effective. Der Mechanismus zur Kommunikation zwischen dem Mikroprozessor The mechanism for communication between the microprocessor 302 302 und den Vorrichtungen bezüglich dieser Blöcke sind Einbitregister, die jeder Gruppe von Speicherblöcken zugeteilt sind. and the devices with respect to these blocks are single-bit register, which are allocated to each group of memory blocks. Diese Register sind sowohl durch die Vorrichtungen als auch den Mikroprozessor These registers are both the means and the microprocessor 302 302 les-/beschreibbar. readable / writable. Diese Einbitregister werden als „Prüfregister" bezeichnet und sind in This single-bit register are called "check register" and are in 14(a) 14 (a) graphisch als Elemente graphically as elements 1401a 1401a , . 1401b 1401b , . 1401c 1401c und and 1401d 1401d gezeigt. shown. Operationen bzgl. dieser Prüfregister Operations with respect. This test register 1401 1401 sind wie folgt: are as follows:
  • [0170] [0170]
    Der Mikroprozessor The microprocessor 302 302 teilt einer Vorrichtung einen Speicherblock zu, schreibt die Anfangsadresse in den MOAP divides a block of memory to a device, writes the beginning address to the MOAP 827 827 und setzt das entsprechende Prüfregister and sets the corresponding check register 1401 1401 für die Vorrichtung. for the device. Die Zustandsmaschine, die die Vorrichtung steuert, wartet normalerweise darauf, dass ihr Prüfregister The state machine that controls the device normally waits for her check register 1401 1401 gesetzt wird. is set. Wenn die Prüfung gesetzt ist, schreitet die Zustandsmaschine fort, kopiert den MOAP If the test is set, advances the state machine copies the MOAP 827 827 -Eintrag und macht das Prüfregister Entry and makes the test register 1401 1401 ungeprüft. unaudited. Wenn der Mikroprozessor When the microprocessor 302 302 das Register ungeprüft sieht, teilt der Mikroprozessor The register provides unaudited, shall notify the microprocessor 302 302 den nächsten Block zu und setzt die Prüfung erneut. the next block and sets the exam again.
  • [0171] [0171]
    Bei dem bevorzugten Ausführungsbeispiel gibt es die folgenden Einträge in den MOAP: In the preferred embodiment, there are the following entries in MOAP:
    MOAP[0] = nächster RAM-zu-LAN-Block MOAP [0] = next RAM-to-LAN block
    MOAP[1] = nächster LAN-zu-RAM-Block MOAP [1] = next LAN-to-RAM block
    MOAP[2] = nächster Chiffrierblock MOAP [2] = next cipher
    MOAP[3] = nächster Chiffrierblockversatz MOAP [3] = next Chiffrierblockversatz
    MOAP[4] = Aufwärtsanfangsblock MOAP [4] = upward header
    MOAP[5] = Aufwärtsreservierungsblock MOAP [5] = upward reservation block
    MOAP[6] = Aufwärtsreservierungsblockversatz MOAP [6] = upward reservation block offset
    MOAP[7] = nächster Aufwärtsübertragungsblock MOAP [7] = next uplink block
    MOAP[8] = nächster Aufwärtsübertragungsblockversatz MOAP [8] = next uplink block offset
  • [0172] [0172]
    Zwei Blöcke, auf die durch MOAP[0] und MOAP[1] gezeigt wird, benötigen nur die Anfangsadresse der einzelnen Pakete, um in dem MOAP spezifiziert zu sein. Two blocks to by MOAP [0] and MOAP [1] it is shown only need the start address of each packet to be specified in the MOAP. Die Pakete in diesen zwei Blöcken benötigen die Aufmerksamkeit des Mikroprozessors The packages in these two blocks require the attention of the microprocessor 302 302 einzeln und müssen immer zuerst durch den Mikroprozessor individually and must always first by the microprocessor 302 302 vorbereitet werden. be prepared. Der Mikroprozessor The microprocessor 302 302 entscheidet, welches Paket verarbeitet wird, und steuert den LAN-Chip decides which packet is processed, and controls the LAN chip 307 307 vor dem Übergeben der Steuerung des Pakets an die Vorrichtungen der Steuerschaltung before passing control of the packet to the devices of the control circuit 301 301 . ,
  • [0173] [0173]
    Es gibt zwei Einträge in dem MOAP für die Chiffriervorrichtung There are two entries in MOAP for the Cipher the 811 811 (MOAP[2], MOAP[3]). (MOAP [2], MOAP [3]). Ein Eintrag zeigt auf den Anfang des Pakets, der tatsächlich der Kopfblock zu dem Paket ist. An entry point to the beginning of the packet that is actually the header to the packet. Ein weiterer Eintrag ist der Versatz von dem Anfang des Pakets zu dem tatsächlichen zu chiffrierenden Datenblock. Another entry is the offset from the beginning of the packet to the actual data block to be encrypted. Der Grund für diese Anordnung liegt darin, dass ein Chiffrierblock einer von mehreren Pakettypen mit unterschiedlichen Datenformaten sein kann. The reason for this arrangement is that a cipher block can be one of several types of packets with different data formats. Zum Beispiel benötigt ein Abwärtsnutzlastpaket eine Entschlüsselung, wohingegen ein Aufwärtsdatenpaket eine Verschlüsselung benötigt. For example, a downlink payload packet needs decryption, whereas an upstream data packet needs encryption. Die Formate für die Aufwärts- und Abwärtspakete unterscheiden sich voneinander. The formats for the uplink and downlink packets are different. Aus diesem Grund enthält der MOAP For this reason, contains the MOAP 827 827 zusätzliche Informationen für den Versatz der Daten für jedes Paket. additional information for the offset of the data for each packet. Der Mikroprozessor The microprocessor 302 302 entscheidet, welches Paket chiffriert werden muss. decides which packet needs to be encrypted. Dann lädt der Mikroprozessor Then loads the microprocessor 302 302 den geeigneten Schlüssel, IV-Register, und setzt das Modusregister des Chiffrierchips the appropriate key, IV-register, and sets the mode register of Cipher 311 311 . , Nachdem dies ausgeführt ist, aktualisiert der Mikroprozessor After this is done, updates the microprocessor 302 302 MOAP[2] und MOAP[3] mit der richtigen Adresse und dem Versatz des Pakets. MOAP [2] and MOAP [3] with the correct address and the offset of the package.
  • [0174] [0174]
    Die Aufwärtsübertragung ist meistens ein Prozess mit zwei Schritten. The upstream transmission is mostly a two-step process. Zuerst entscheidet der Mikroprozessor First, the microprocessor decides 302 302 , welches Paket aufwärts übertragen wird. Which packet is transmitted upward. Dann berechnet der Mikroprozessor Then, the microprocessor calculates 302 302 basierend auf der Länge des Pakets und MTU (maximale Übertragungseinheiten) die Anzahl von „Schlitzen", die für die Aufwärtsübertragung zu reservieren sind. Der Mikroprozessor based on the length of the packet and MTU (maximum transmission unit) the number of "slots" that are to be reserved for the uplink transmission. The microprocessor 302 302 aktualisiert dann das Reservierungsfeld eines Reservierungspakets, bei dem es sich entweder um eine leere Schablone oder ein anderes Datenpaket handeln kann, mit „Schlitz"-Informationen und zeigt den MOAP[5, 6] auf dieses Reservierungspaket. Der Mikroprozessor then updates the reservation field of a reservation packet, which may be either a blank template or a different data packet, "Slot" information and shows the MOAP [5, 6] on this reservation package. The microprocessor 302 302 schreibt dann die Anfangsadresse und den Versatz des zu übertragenden Blocks in den MOAP[7, 8]. then writes the beginning address and offset of the block to be transmitted in the MOAP [7, 8]. Der Mikroprozessor The microprocessor 302 302 signalisiert dann der Aufwärtsvorrichtung then signals the Upstream Device 809 809 , „mit Reservierung" zu übertragen. To transfer "with reservations".
  • [0175] [0175]
    Die Aufwärtsvorrichtung The Upstream Device 809 809 überträgt zuerst den Anfangsblock in zwei Teilen, einen konstanten Strom von „1" durch Hardware und den Rest des durch MOAP[4] gezeigten Anfangsblocks, dann das Reservierungspaket über den Konkurrenzkanal unter Verwendung des vollen Protokolls für Bestätigung und Zurückhalten, wie es im Vorhergehenden beschrieben ist. first transmits the header in two parts, a constant stream of "1" by the hardware and the rest of the header shown by MOAP [4], then the reservation packet over the contention channel using the full protocol for acknowledgment and retaining, as described above is.
  • [0176] [0176]
    Die Aufwärtsvorrichtung The Upstream Device 809 809 überträgt dann den Anfangsblock und das tatsächliche Datenpaket über den Reservierungskanal ohne Bestätigung. then transmits the header and the actual data packet over the reservation channel without acknowledgment.
  • [0177] [0177]
    Es gibt mehrere Variationen dieses Schemas. There are several variations of this scheme. Zum Beispiel kann der Mikroprozessor For example, the microprocessor 302 302 entscheiden, ein Paket mit einer Länge, die geringer ist als die minimale TU (transfer unit – Übertragungseinheit), durch den Konkurrenzkanal zu senden. decide a packet with a length that is less than the minimum TU (transfer unit - transfer unit) to send through the contention channel. In diesem Fall wird nur das Paket, das durch MO-AP[7] gezeigt ist, über den Konkurrenzkanal mit der Bestätigung übertragen. In this case, only the package that is shown by MO-AP [7], transmitted over the contention channel with the acknowledgment.
  • [0178] [0178]
    In einem anderen Fall kann der Mikroprozessor entscheiden, mehrere Pakete in einen Reservierungsprozess zu gruppieren und ein Reservierungspaket zu erzeugen, das durch MOAP[5] gezeigt ist, das alle diese Pakete darstellt. In another case, the microprocessor may decide to group multiple packets into a reservation process and generate a reservation packet, which is shown by MOAP [5], that represents all these packages. Der Mikroprozessor gewährleistet dann, MOAP[7, 8] mit der Adresse des nächsten Pakets während der Übertragung des vorhergehenden Pakets zu aktualisieren, bis alle Pakete übertragen sind. The microprocessor then ensures MOAP [7, 8] to update the address of the next packet during transmission of the previous packet until all packets are transmitted.
  • [0179] [0179]
    Kein Paket sollte kürzer sein als die minimale TU (Differenz der Umlaufverzögerung zwischen dem nächstliegenden und dem entferntesten Kabelmodem). No package should be less than the minimum TU (difference between the round-trip delay between the nearest and the farthest cable modem). Der Mechanismus, ein Paket minimaler Größe unabhängig von dem Paketinhalt zu gewährleisten, ist die Größe der Postambel. The mechanism to ensure a minimum packet size regardless of the packet contents, the size of the postamble. Die Postambelgröße beträgt zumindest zwei Bytes von „bedeutungslosen" Daten (don't care data). Die Postambelmenge in Bytes ist für die Aufwärtsübertragung auf den Kopfblock geschrieben. Der Mikroprozessor The Postambelgröße is at least two bytes of "meaningless" data (do not care data). The Postambelmenge in bytes is written for the uplink transmission to the head block. The microprocessor 302 302 schreibt die Größe der Postambel für jedes Paket einschließlich dem Reservierungspaket auf den Kopfblock des Pakets. writes the size of the postamble for each packet including the reservation packet on the header of the packet.
  • Paketformate im RAM Packet formats in RAM
  • [0180] [0180]
    14(b) 14 (b) ist ein Schema der allgemeinen Formate von Paketen is a schematic of the general formats of packets 1403 1403 , wie diese in dem RAM How those in the RAM 309 309 gespeichert sind. are stored. Ein Kopfblock A head block 1405 1405 wird jedem Paket mit Status- und Zählin formationen hinzugefügt, um die Zustandsmaschinen und den Mikroprozessor is added with status and Zählin mation to the state machines and microprocessor each packet 302 302 zu unterstützen. to support. Die Größe des Kopfblocks wird durch ein Programmieren der Schieberegisterkette (KTREG[0]) verändert. The size of the head block is changed by programming the shift register chain (KTREG [0]). Acht Wörter werden als ein Kopfblock Eight words are treated as a header block 1405 1405 von Paketen, die auf dem Abwärtskanal empfangen werden, hinzugefügt. of packets that are received on the downstream channel, is added. Die ersten zwei Wörter sind allen Pakettypen gemeinsam. The first two words are common to all packet types.
  • [0181] [0181]
    Das erste Wort The first word 1407 1407 ist eine Information bezüglich der Anzahl von Iterationen, die die Zustandsmaschine, die das Paket is information relating to the number of iterations, the state machine which, the package the 1403 1403 bekommt, durchführen muss, um das Paket gets, must perform to the package 1403 1403 zu verarbeiten. to process. Das Iterationszählwort The Iterationszählwort 1407 1407 wird durch den Mikroprozessor is determined by the microprocessor 302 302 geschrieben. written. Das zweite Wort The second word 1409 1409 ist ein Firmware-Flag-Feld (FFF) und ist für den Mikroprozessor Firmware is a flag field (FFF) and the microprocessor 302 302 reserviert. reserved.
  • [0182] [0182]
    Wörter 3 bis 8 sind auftragsspezifisch und werden durch eine bestimmte Zustandsmaschine nicht unbedingt verwendet. Words 3 through 8 are specific order and are not necessarily used by a particular state machine.
  • [0183] [0183]
    Ein Beispiel der Verwendung des Kopfblocks An example of the use of the head block 1405 1405 ist der Fall von Abwärtsnutzdaten. is the case of Abwärtsnutzdaten. Die Abwärtsnutzdaten verwenden vier Wörter des Kopfblocks während ihres Weges von dem Kabel The Abwärtsnutzdaten use four words of the head block during its path from the cable 111 111 zu dem LAN-Chip to the LAN chip 307 307 . , Wenn die Pakete empfangen werden, prüft die Abwärtsnutzlastvorrichtung When the packets are received, checks the Downstream Payload Device 807 807 den Typ der ankommenden Nutzlastadresse. the type of the incoming payload address. Falls das Paket ein Sammelsendungspaket ist und es an dieses bestimmte CM If the packet is a multicast packet and specific to this CM 113 113 adressiert ist, berechnet die Abwärtsnutzlastvorrichtung is addressed, calculates the Downstream Payload Device 807 807 den Hash-Wert für diese Adresse und schreibt denselben in die Wortnummer 4 des Kopfblocks the hash value for this address and write the same word in the paragraph 4 of the head block 1405 1405 . ,
  • [0184] [0184]
    Wenn das Paket vollständig empfangen worden ist, schreibt die DPD If the packet has been received in full, writes the DPD 807 807 die Anzahl von Bytes der empfangenen Informationen einschließlich dem Mehraufwand in die Wortnummer 3 des Kopfblocks the number of bytes of the received information including the extra investment in the word number 3 of the head block 1405 1405 . ,
  • [0185] [0185]
    Der Mikroprozessor The microprocessor 302 302 berechnet die Anzahl von Iterationen für die Entschlüsselungsoperation (Vielfache von 8, inklusive der Auffüllungen, exklusive des Mehraufwands) und schreibt in die Wortnummer 1 des Kopfblocks (Iterationsfeld). calculates the number of iterations for the decryption operation (multiples of 8, including fillings, exclusive of the increased expenditure) and writes the word number 1 of the head block (Iterationsfeld). Der Mikroprozessor prüft auch das E- (Encryption – Verschlüsselung) Bit, die T- (Teilnehmernutzlast in Daten) Bits und auch Adressfelder der Nutzdaten, um den richtigen Entschlüsselungsschlüssel für die Chiffrieroperation zu bestimmen. The microprocessor also checks the E (Encryption - Encryption) bit, the bits and also address fields of the payload data to determine T (subscriber payload in data) the correct decryption key for the cipher operation. Falls es sich bei der Adresse um eine Sammelsendungsadresse handelt, verwendet der Mikroprozessor If it is a multicast address at the address used by the microprocessor 302 302 die Wortnummer 4 des Kopfblocks the word number 4 of the head block 1405 1405 (Hash-Wert), um einen schnellen, genauen Vergleich der MAC-Adresse durchzuführen. (Hash value) to perform a fast, accurate comparison of the MAC address. Der Mikroprozessor kann dann das „grüne Licht" setzen, um die Chiffriervorrichtung 811-Zustandsmaschine zu starten. The microprocessor can then set the "green light" to start the Cipher 811 state machine.
  • [0186] [0186]
    Nach der Entschlüsselung liest der Mikroprozessor After decryption, the microprocessor reads 302 302 die ursprünglichen Bytezählwerte (Wort 3 des Kopfblocks the original byte counts (word 3 of the head block 1405 1405 ), passt dieselben bezüglich des Mehraufwands an und schreibt dieselben in den LAN-Chip ), Fits the same on the added expense and writes the same in the LAN chip 307 307 . , Unter Verwendung der gleichen Informationen berechnet der Mikroprozessor Using the same information, the microprocessor calculates 302 302 die Anzahl von Wörtern, die in den LAN-Chip geschrieben werden müssen, und schreibt diesen Wert in die Wortnummer 1 des Kopfblocks the number of words that need to be written to the LAN chip, and writes this value to the word number 1 of the head block 1405 1405 (Iterationsfeld), und signalisiert der RAM-zu-LAN-Vorrichtung (Iterationsfeld), and signals the RAM-to-LAN device 819 819 , die Daten iterativ zu dem LAN-Chip , The data iteratively to the LAN Chip 307 307 zu übertragen. to transmit.
  • [0187] [0187]
    Jede Zustandsmaschine weist zumindest ein/einen 16-Bit-Register/Zähler auf, das/den dieselbe als ein Adressregister verwendet. Each state machine has at least one / a 16-bit register / counter, the / uses the same as an address register. Dieses Register ist das BASIS-Register This register is the BASE register 1410 1410 und wird normalerweise aus dem MOAP and is usually from the MOAP 827 827 geladen. Loading. Jede Zustandsmaschine weist auch ein 5-Bit-VERSATZ-Register Each state machine also has a 5 bit OFFSET register 1413 1413 auf, das aus der Schiebekette in that from the shift chain 1411 1411 geladen wird (die Schiebekette wird in dem Abschnitt mit dem Titel „Interne Register" beschrieben). Da die Chiffrierblocks entweder zur Verschlüsselung oder Entschlüsselung dienen mit unterschiedlichen Versatzwerten für jede Chiffrieroperation, lädt die Chiffriervorrichtung Loading (the shift chain is described in the section entitled "Internal Register"). Since the Chiffrierblocks either for encryption or decryption serve with different offset values for each cipher operation, the Cipher invites 813 813 ihr VERSATZ-Register her OFFSET register 1413 1413 aus dem Zeiger des MOAP from the hands of MOAP 827 827 für jedes Paket. for each packet. Um die tatsächliche Adresse eines Pakets, auf das zugegriffen werden soll, zu erhalten, wird der Inhalt des BASIS-Registers To the actual address of a packet to be accessed to obtain, the contents of the base register 1411 1411 durch einen Addierer by an adder 1415 1415 zu dem VERSATZ-Register to the OFFSET register 1413 1413 hinzugefügt. added.
  • Mikroprozessor Microprocessor
  • [0188] [0188]
    Der Mikroprozessor The microprocessor 302 302 spielt eine wichtige Rolle bei dem Verhalten des Kabelmodems plays an important role in the behavior of the cable modem 113 113 und den Operationen der Steuerschaltung and the operations of the control circuit 301 301 . , Die Steuerschaltung The control circuit 301 301 enthält eine Anzahl von Eingangs-/Ausgangsregistern (im Folgenden in dem Abschnitt „Mikroprozessorregisterbetrachtung" beschrieben). Der Mikroprozessor contains a number of input / output registers (hereinafter, the "microprocessor registers viewing" above). The microprocessor 302 302 steuert den Betrieb des Kabelmodems controls the operation of the cable modem 113 113 durch ein Setzen dieser Register. by setting this register.
  • [0189] [0189]
    Eine Anzahl von Initialisierungsaufgaben wird durch den Mikroprozessor A number of initialization is by the microprocessor 302 302 durchgeführt. carried out. Bei einer Initialisierung bestimmt der Mikroprozessor During initialisation, the microprocessor determines 302 302 die MAC-Adresse des Kabelmodems und überträgt die Informationen an die Hardwareregister der Steuerschaltung the MAC address of the cable modem and transmits the information to the hardware registers of the control circuit 301 301 . , Der Mikroprozessor The microprocessor 302 302 initialisiert auch die Steuerschaltung also initializes the control circuit 301 301 , die Abstimmvorrichtung , The tuning 303 303 und den Sender and the transmitter 305 305 . ,
  • [0190] [0190]
    Ebenfalls während der Initialisierung verhandelt der Mikroprozessor Also during initialization negotiated the microprocessor 302 302 durch den Aufwärtskanal mit der Serverstation by the upstream channel with the server station 101 101 , um eine Verschlüsselungsschlüsselberechnung und einen Schlüsselaustausch durchzuführen. To perform an encryption key calculation and key exchange. Es gibt zwei Typen von Initialisierung: die Initialisierung bei Installation und die Initialisierung eines erfolgreich installierten Kabelmodems There are two types of initialization: the initialization during installation and the initialization of a successfully installed cable modem 113 113 , das durch einen Leistungszyklus geht. That goes through a power cycle.
  • [0191] [0191]
    Bei der Installation besteht die erste Aufgabe des Kabelmodems During installation, the first task of the cable modem 301 301 darin, einen Abwärtskanal zu finden. is to find a downlink channel. Um einen Abwärtskanal zu finden, führt das Kabelmodem To find a downstream channel guides the cable modem 113 113 eine Abstimm- und Testoperation der Abstimmvorrichtung a tuning and test operation of the tuner 303 303 durch eine Kanaltabelle durch. by a channel table. Diese Tabelle ist in dem Mikroprozessor This table is in the microprocessor 302 302 -ROM gespeichert. ROM stored. Die ROM-basierte Kanalabstimmtabelle ist so angeordnet, dass das Kabelmodem The ROM-based Kanalabstimmtabelle is arranged so that the cable modem 113 113 auf Kanäle hoher Wahrscheinlichkeit abstimmt, bevor dasselbe Kanäle geringer Wahrscheinlichkeit probiert. tune to channels high probability before the same channels sampled low probability. Für jeden Eintrag in der Tabelle stimmt das Kabelmodem auf den Kanal ab und versucht, den Abwärtssteuerstrom zu empfangen. For each entry in the table the cable modem tunes to the channel and attempts to receive the downstream control stream. Falls das CM If the CM 113 113 den Abwärtssteuerstrom nicht empfängt, nimmt das CM the downward flow control does not receive, take the CM 113 113 an, dass der Kanal kein Abwärtskanal von der Serverstation in that the channel is no downstream channel from the server station 101 101 ist, und stimmt die Abstimmvorrichtung is true and the tuning 303 303 auf den nächsten Eintrag in der Tabelle ab. to the next entry in the table. Falls das Kabelmodem If the cable modem 113 113 durch die ganze Tabelle abstimmt, ohne einen Abwärtssteuerkanal zu finden, wird ein Fehlerindikator angeschaltet (z. B. eine Fehlerleuchte an dem Kabelmodem tunes through the entire table without finding a downstream control channel, an error indicator is turned on (z. B. an error light on the cable modem 113 113 ), und das Verarbeiten wird eingestellt, bis das Kabelmodem ), And the processing is adjusted until the cable modem 113 113 erneut einen Leistungszyklus durchläuft. again a power cycle passes.
  • [0192] [0192]
    Wenn das Kabelmodem If the cable modem 113 113 einen Abwärtskanal erkannt hat, speichert dasselbe die Kanalnummer in einem EEPROM und verwendet diese Abwärtskanalnummer bei nachfolgendem Einschalten. a downward channel has recognized stores the same channel number in an EEPROM and used this downward channel number on subsequent power-up.
  • [0193] [0193]
    Die Abwärtskanalnummer kann sich von Zeit zu Zeit ändern. The downward channel number may change from time to time. Der Betreiber der Serverstation The operator of the server station 101 101 verändert den Abwärtskanal durch ein Aussenden eines Abwärtskanal-Ändern-Rahmens auf dem Steuerkanal einige Zeit vor der tatsächlichen Änderung (z. B. einen oder zwei Tage). changes the downstream channel by sending out a change-downstream-channel frame on the control channel some time before the actual change (for. example, one or two days). Das Kabelmodem speichert die neue Kanalnummer in dem EEPROM. The cable modem stores the new channel number in EEPROM. Wenn das Kabelmodem If the cable modem 113 113 nicht mehr in der Lage ist, den alten Abwärtskanal zu erfassen, wechselt das Kabelmodem is no longer able to detect the old downstream channel, the cable modem alternates 113 113 automatisch auf den neuen Kanal, indem bewirkt wird, dass die Abstimmvorrichtung automatically to the new channel by causing the tuner 303 303 den Kanal wechselt, auf dem empfangen wird. to change the channel is received on the.
  • [0194] [0194]
    Wird das Kabelmodem If the cable modem 113 113 eingeschaltet, wird die Verbindung zwischen dem Kabelmodem is turned on, the connection between the cable modem 113 113 und der Serverstation and the server station 101 101 eingerichtet, indem zuerst die Abstimmvorrichtung established by first tuning the 303 303 auf den Abwärtskanal abgestimmt wird, der zuletzt in dem EEPROM gespeichert wurde. is matched to the downstream channel that was last stored in the EEPROM. Das Kabelmodem wartet dann darauf, dass die Serverstation The cable modem then waits for the server station 101 101 die Aufwärtskanäle beschreibt, die derzeit in Betrieb sind. describes the upstream channels that are currently in operation. Wenn die Aufwärtskanalnummer bekannt ist, wartet das Kabelmodem If the upstream channel number is known, waiting for the cable modem 113 113 auf einen Anmelde schlitz. slot on a registration. Anmeldeschlitze sind reserviert zum Initialisieren der Übertragungsleistungseinstellung des Kabelmodems Registration slots are reserved for initializing the transmission power adjustment of the cable modem 301 301 . , Das Kabelmodem The cable modem 113 113 überträgt zuerst bei der Durchschnittsleistungseinstellung (diese Informationen werden durch die Serverstation first transfers at the average power setting (this information is through the server station 101 101 ausgesendet) und wartet auf eine Anmeldebestätigung von der Serverstation sent) and waits for a confirmation from the server station 101 101 . , Wird keine Bestätigung empfangen, wird die Leistungseinstellung erhöht, und nachdem eine zufällige Anzahl von Anmeldeschlitzen vergangen ist, versucht es das Kabelmodem If no confirmation is received, the power setting is increased, and after a random number of slots Registration is passed, it tries the cable modem 113 113 erneut. again. Nachdem die erhöhten Leistungseinstellungen erschöpft sind, beginnt das Kabelmodem After the increased power settings are exhausted, the cable modem begins 113 113 , von der Durchschnittsleistungseinstellung zurückzugehen. To return from the average power setting.
  • [0195] [0195]
    Nachdem das Kabelmodem After the cable modem 113 113 die richtige Leistungseinstellung bestimmt hat, wird diese Leistung in dem EEPROM zur Wiederverwendung bei nachfolgenden Einschaltanmeldungen gespeichert. the correct power setting has determined this power is stored in the EEPROM for reuse in subsequent Einschaltanmeldungen. Die Serverstation The server station 101 101 kann zu jeder Zeit anfordern, dass das Kabelmodem may at any time request that the cable modem 113 113 seine Leistungseinstellung erhöht oder verringert. increases or decreases its power setting.
  • [0196] [0196]
    Nachdem die richtige Übertragungsleistungseinstellung eingerichtet worden ist, kann das Kabelmodem After the correct transmission power setting has been established, the cable modem can 113 113 mit der Serverstation with the server station 101 101 kommunizieren. communicate. Bei dieser Stufe sendet das Kabelmodem At this stage, the cable modem sends 113 113 Diffie-Hellman-Schlüsselaustauschungen, die notwendig sind, um sich selbst zu identifizieren und die DES-Verschlüsselungsschlüssel zu erhalten. Diffie-Hellman Schlüsselaustauschungen which are necessary in order to identify itself and to obtain the DES encryption keys. Der Mikroprozessor verwaltet den Schlüsselaustauschalgorithmus und speichert die ausgetauschten Schlüssel und erzeugten Zufallszahlen in Registern zur Verwendung durch die Chiffriervorrichtung The microprocessor controls the key exchange algorithm and stores the exchanged keys and random numbers generated in registers for use by the Cipher 813 813 und den Chiffrierchip and the Cipher 311 311 . ,
  • [0197] [0197]
    Während der Initialisierung initialisiert der Mikroprozessor During initialization, the microprocessor initialized 302 302 auch eine Registerdatei, die Zeiger enthält, die die Vorrichtungen ( a register file that contains pointers that the devices ( 805 805 , . 807 807 , . 809 809 , . 811 811 , . 813 813 , . 815 815 , . 817 817 , . 819 819 und and 829 829 ) verwenden, um auf den RAM Use) to the RAM 309 309 zuzugreifen. access. Der Mikroprozessor initialisiert auch die Speicherstrukturen, die in dem RAM The microprocessor initializes the memory structures in the RAM 309 309 resident sind. are resident.
  • [0198] [0198]
    Während des Betriebs des Kabelmodems During operation of the cable modem 113 113 steht der Mikroprozessor durch Register (siehe folgende Erörterung unter „Interne Register") in Wechselwirkung mit der Steuerschaltung If the microprocessor by register (see discussion below under "Internal Register") in interaction with the control circuit 301 301 und verwaltet den RAM and manages the RAM 309 309 und Puffer, die in dem RAM and buffers in the RAM 309 309 gehalten werden. be maintained.
  • [0199] [0199]
    Der Mikroprozessor bereitet auch den LAN-Chip The microprocessor also prepares the LAN chip 307 307 vor durch ein Lesen und Beschreiben der Status- und zugeordneten Steuerregister des LAN-Chips by prior reading and writing of the status and associated control register of the LAN chips 307 307 . ,
  • [0200] [0200]
    Der Mikroprozessor The microprocessor 302 302 verwaltet auch den MOAP manages the MOAP 827 827 und Steuerregister in der Steuerschaltung and control registers in the control circuit 301 301 , um die Zustandsmaschinen der Steuerschaltung To the state machine of the control circuit 301 301 zu führen, um Daten zwischen den verschiedenen Vorrichtungen der Steuerschaltung to lead to transfer data between the various devices of the control circuit 301 301 zu bewegen. to move. Die Zustandsmaschinen werden im Folgenden in dem Abschnitt mit dem Titel „Zustandsmaschinen" beschrieben. The state machines are described below in the section titled "state machines".
  • [0201] [0201]
    Der Mikroprozessor The microprocessor 302 302 verarbeitet auch Befehle, die das Kabelmodem processed commands that the cable modem 113 113 auf dem Abwärtssteuerkanal und dem Nutzlastkanal empfängt, und führt diese Befehle aus. receives on the downlink control channel and the payload channel, and executes commands.
  • [0202] [0202]
    Außerdem bestimmt der Mikroprozessor In addition, the microprocessor determines 302 302 die Dauer eines Zeitgebungsschlitzes aus Statusregistern in der Mikroprozessorschnittstelle the duration of a Zeitgebungsschlitzes of status registers in the microprocessor interface 829 829 der Steuerschaltung the control circuit 301 301 und liefert diese Informationen an die Aufwärtskanalvorrichtung and delivers this information to the Upstream Channel Device 809 809 . , Außerdem verwaltet der Mikroprozessor In addition, the microprocessor manages 302 302 den Aufbau und die Zeitplanung der Übertragung von „Reservierungsanforderungspaketen", wenn die Paketlänge einer Aufwärtsübertragung größer ist als eine aktuelle Schlitzlänge. Der Mikroprozessor liefert auch eine Unterstützung für die Aufwärtskanalvorrichtung the structure and timing of the transfer of "reservation request packets", if the packet length of an upstream transmission is greater than a current slot length. The microprocessor also provides support for the Upstream Channel Device 809 809 durch ein Setzen der internen Register der Steuerschaltung für Übertragungsfunktionen nach Bedarf. by setting the internal register of the control circuit for transmission functions as necessary.
  • Interne Register Internal registers
  • [0203] [0203]
    Alle Transaktionen des Mikroprozessors All transactions of the microprocessor 302 302 bezüglich Komponenten des CM with respect to the components of the CM 113 113 einschließlich der Steuerschaltung including the control circuit 301 301 sind durch die I/O-Register. are through the I / O register. Jeder Vorrichtung ist ein zusammenhängender I/O-Raum zugeteilt. Each device is assigned a contiguous I / O space. Zum Beispiel werden dem LAN-Chip For example, the LAN chip 307 307 „N" 16-Bit-Register mit der Startadresse von LNBSE zugeteilt. Der gemeinsame RAM "N" 16-bit registers assigned with the start address of LNBSE. The common RAM 309 309 der Steuerschaltung the control circuit 301 301 wird virtualisiert, um als ein zusammenhängendes 64-K-Array von Wortregistern zu erscheinen. is virtualized to appear as a continuous 64-K array of word registers. Es gibt sechs I/O-Räume in dem Kabelmodem There are six I / O spaces in Cable Modem 113 113 , einschließlich dem gemeinsamen RAM Including the common RAM 309 309 -I/O. -I / O. Die Basisadresse für diese I/O-Räume ist: The base address for these I / O space is:
    LAN LAN 307 307 LNBSE LNBSE
    CHIFFRIER Cipher 311 311 CIBSE CIBSE
    ABSTIMMVORRICHTUNG Tuning 303 303 TUBSE (Abstimmvorrichtung und Unterstützungsschaltungsanordnung) TUBSE (tuner and support circuitry)
    SENDER TRANSMITTER 305 305 TRBSE TRBSE
    Steuerschaltung Control circuit 301 301 KTREG (Registerraum) KTREG (register space)
    Steuerschaltung Control circuit 301 301 KTRAM (gemeinsamer RAM KTRAM (shared RAM 309 309 -Raum) -space)
    Steuerschaltung Control circuit 301 301 KTMOAP (MOAP-Registerdatei) KTMOAP (MOAP register file)
  • [0204] [0204]
    Die Register der Steuerschaltung The registers of the control circuit 301 301 sind im Folgenden beschrieben: are described below:
  • [0205] [0205]
    Es gibt viele Register in der Steuerschaltung There are many registers in the control circuit 301 301 , die nur einmal initialisiert werden und deren Werte sich nicht oft verändern. Which are initialized only once, and whose values do not change often. Diese Register sind miteinander verkettet und auf dieselben wird als ein langes Schieberegister zugegriffen. These registers are chained together and to the same is being accessed as a long shift register. Die Daten an dem Ende der Schiebekette erscheinen auf Bit 0, wenn Register 0 gelesen wird. The data at the end of the shift chain appear to bit 0 when register is read 0. Um ein einzelnes Datenbit in die Schiebekette zu verschieben, sind zwei Schreiboperationen erforderlich. To move a single data bit in the shift chain, two write operations are required. Zuerst wird Bit 0 = Datenbit und Bit 1 = 1 in das Register 0 geschrieben. First bit is 0 = data bit and bit 1 = 1 is written to register 0.. Dann wird Bit 0 = gleiches Datenbit, Bit 1 = 0 in das Register 0 geschrieben. Then bit 0 = same data bit, bit 1 = 0 is written to the register 0. Daten werden an der abfallenden Flanke des Bits 1 in die Schiebekette verschoben. Data is shifted on the falling edge of the bit 1 in the shift chain. Ein Lesen der Schiebekette ist ein zerstörendes Lesen. A reading of the shift chain is a destructive read. Um den Inhalt der Schiebekette zu bewahren, wenn die Kette gelesen wird, liest der Mikroprozessor To preserve the contents of the shift chain when the chain is being read, the microprocessor reads 302 302 zuerst Bit 0, dann schiebt er das Bit zurück in die Schiebekette, wie es im Vorhergehenden beschrieben ist. first bit 0, then shifts the bit back into the shift chain as described above. Der Mikroprozessor The microprocessor 302 302 muss die gesamte Schiebekette lesen oder schreiben. needs to read or write the entire shift chain. Im Folgenden ist der Inhalt der Schieberegister aufgeführt: The following is the contents of the shift register is shown below:
    Meine MAC-Adresse My MAC Address 48 Bits 48 bits
    Nutzlastzustandsmaschinenversatz Payload state machine offset 5 Bits 5 bits
    LAN-zu-RAM-Zustandsmaschinenversatz LAN-to-RAM state machine offset 5 Bits 5 bits
    RAM-zu-LAN-Zustandsmaschinenversatz RAM-to-LAN state machines offset 5 Bits 5 bits
    Nutzlast-Oberes-Pufferende (PTOB) Payload Top of buffer (PTOB) 16 Bits 16 bits
    Nutzlast-Unteres-Pufferende (PBOB) Payload Bottom of buffer (PBOB) 16 Bits 16 bits
    Abwärtssteuerung-Oberes-Pufferende (DSCTOB) Top-down control of buffer (DSCTOB) 16 Bits 16 bits
    Abwärtssteuerung-Unteres-Pufferende (DSCBOB) Lower-down control of buffer (DSCBOB) 16 Bits 16 bits
    Anfangsblockgröße Header size 4 Bits 4 bits
    Anfangsblockanfangseinsengröße Header beginning one size 3 Bits 3 bits
    Zurückhaltealgorithmusparameter Hold algorithm parameters 4 Bits 4 bits
    Q256-Signal zu Front-End-Vorprozessor Q256 signal to front end preprocessor 1 Bit 1 bit
  • [0206] [0206]
    Bei alternativen Ausführungsbeispielen sind die Register in der Schiebekette Direktzugriffsregister. In alternative embodiments, the registers are random access registers in the shift chain.
  • [0207] [0207]
    Meine MAC-Adresse ist die 6-Byte-MAC-Adresse, mit der das Kabelmodem dargestellt ist. My MAC address is the 6 byte MAC address which the cable modem is shown. Sie ist die MAC-Adresse des Kabelmodems It is the MAC address of the cable modems 113 113 . ,
  • [0208] [0208]
    Der Versatz für Pakete, die in dem RAM The offset for packets stored in the RAM 309 309 liegen, für die RAM-zu-LAN are, for the RAM-to-LAN 819 819 -, LAN-zu-RAM - LAN-to-RAM 815 815 - und Nutzlast - And payload 807 807 -Zustandsmaschinen wird unter Verwendung von Versatzregistern gesetzt. State machines is set using offset registers. Pakete, die in dem RAM Packets stored in the RAM 309 309 resident sind, sind im Vorhergehenden in Verbindung mit are resident are above in connection with 14(b) 14 (b) beschrieben. described. Ein Verändern des Werts des Versatzregisters verändert die Größe des Kopfblocks. A change in the value of the offset register changes the size of the head block.
  • [0209] [0209]
    PTOB, PBOB und DSCTOB, DSCBOB sind oberes Pufferende, unteres Pufferende für die Nutzlast- und Abwärtssteuerpuffer und werden in dem Abschnitt mit dem Titel „Pufferverwaltung" erörtert. PTOB, PBOB and DSCTOB, DSCBOB are upper end of the buffer, on the lower end of buffer for the payload and down control buffer and are discussed in the section entitled "buffer management".
  • [0210] [0210]
    Die Anfangsblockgröße ist die Größe (in Wörtern) des festen Teils des Aufwärtsanfangsblocks, der vor jedem Aufwärtsblock übertragen wird. The initial block size is the size (in words) of the fixed part of the up-header, which is transmitted before each block upward. Der Anfangsblock enthält eine Kabelmodem-MAC-Adresse, Sync und einen Teil des fünf Byte langen Nur-1-Flags. The header contains a cable modem MAC address, sync, and part of the five-byte-only 1 flag.
  • [0211] [0211]
    Die Anfangsblockanfangseinsengröße ist die Größe des Anfangsblock-Nur-1-Anfangsflags, in Wörtern, das durch die Hardware übertragen wird, bevor der Rest des Anfangsblocks von dem RAM The header beginning one size is the size of the header only 1 start flags, in words, which is transmitted by the hardware before the rest of the header of the RAM 309 309 übertragen wird. is transmitted. Der Zurückhaltealgorithmusparameter ist eine Zahl zwischen 6 bis 10, die basierend auf der Installation und Topologie des Netzes bestimmt wird. The retaining algorithm parameter is a number between 6-10, which is determined based on the installation and topology of the network. Dieser Parameter bestimmt die Effizienz des Zurückhaltealgorithmus. This parameter determines the efficiency of the retaining algorithm.
  • [0212] [0212]
    KTREG+1 ist ein Hardwareprüfregister, in dem die einzelnen Bits durch den Mikroprozessor KTREG + 1 is a Hardwareprüfregister, in which the individual bits by the microprocessor 302 302 gesetzt werden. be set. Diese einzelnen Bits signalisieren den Hardwarezustandsmaschinen, ihre bestimmten Aufgaben durchzuführen. These individual bits indicate the hardware state machines to perform their specific tasks. Wenn dieselben den Befehl empfangen, löschen die Zustandsmaschinen diese Bits. If the same received orders to clear the state machines these bits. Das Löschen der Bits durch die Zustandsmaschinen fungiert als ein Senden einer Bestätigung an den Mikroprozessor Deleting the bits by the state machines works as a sending an acknowledgment to the microprocessor 302 302 . , Da Register-1-Bits durch den Mikroprozessor Since register 1 bits by the microprocessor 302 302 gesetzt werden, wird keine Unterbrechung erzeugt, wenn diese Flags gesetzt werden. are set, no interrupt is generated when these flags are set.
  • [0213] [0213]
    Eine Aufwärtsübertragung ist eine komplizierte Operation des Kabelmodems An uplink transmission is a complex operation of the cable modem 113 113 und wird im allgemeinen in zwei Schritten abgeschlossen. and steps are completed generally in two. Der erste Schritt ist die Reservierung und der nächste Schritt ist die Übertragung des Datenpakets. The first step is the reservation, and the next step is the transmission of the data packet. Jeder Schritt muss auch mit einer engen Zeitgebungszusammenarbeit mit dem Abwärtssteuerkanal wirksam sein. Each step must also be effective with a narrow Zeitgebungszusammenarbeit the down control channel. Es gibt drei Fälle eines Übertragens eines Aufwärtspakets. There are three cases of transmitting an uplink packet.
  • [0214] [0214]
    Fall 1 liegt vor, wenn der Mikroprozessor Case 1 is when the microprocessor 302 302 entscheidet, ein einzelnes Datenpaket durch den Reservierungskanal zu übertragen. decides to transmit a single data packet through the reservation channel. In diesem Fall muss der Mikroprozessor In this case, the microprocessor must 302 302 die erforderliche Anzahl von Reservierungsschlitzen basierend auf MTU berechnen und die Reservierungsstruktur in dem gemeinsamen RAM calculate the required number of reservation slots based on MTU and the reservation structure in the shared RAM 309 309 aktualisieren. . Update Der Mikroprozessor The microprocessor 302 302 setzt dann das USTR RSV-Bit. then sets the USTR RSV-bit. Die UD The UD 809 809 überträgt zuerst das Reservierungspaket durch den Konkurrenzkanal und überträgt dann das Datenpaket durch den Reservierungskanal. first transmits the reservation packet through the contention channel and then transmits the data packet through the reservation channel.
  • [0215] [0215]
    Fall 2 liegt vor, wenn der Mikroprozessor Case 2 is when the microprocessor 302 302 entscheidet, mehrere Aufwärtspakete für eine Übertragung durch den Reservierungskanal zu gruppieren. decides to group multiple uplink packets for transmission through the reservation channel. In diesem Fall berechnet der Mikroprozessor In this case, the microprocessor calculates 302 302 die erforderliche Anzahl von Reservierungsschlitzen basierend auf MTU, einzelner und Gesamtlänge der Aufwärtspakete, und aktualisiert die Reservierungspaketschablone in dem gemeinsamen RAM the required number of reservation slots based on MTU, individual and total length of the upstream packets and updates the reservation packet template in the shared RAM 309 309 . , Der Mikroprozessor The microprocessor 302 302 setzt dann das USTR RSV-Bit für das erste Paket. then sets the USTR RSV-bit for the first packet. Der Mikroprozessor The microprocessor 302 302 überwacht dann das USTR RSV-Bit. then monitors the USTR RSV-bit. Wenn dieses Bit durch die UD When this bit by UD 809 809 gelöscht wird, zeigt dies an, dass das erste Paket übertragen wird. is deleted, this indicates that the first packet is transmitted. Der Mikroprozessor The microprocessor 302 302 muss dann das nächste Paket vorbereiten und das USTR NC-Bit setzen, um der Zustandsmaschine zu signalisieren, dass das nächste Paket ein Teil einer Reihe von Paketen ist, die an einem Reservierungsschema beteiligt sind, und zu Beginn des ersten verfügbaren Zeitschlitzes übertragen werden muss. then must prepare the next packet and the USTR NC bit set to indicate the state machine that the next packet is part of a series of packets that are involved in a reservation scheme, and must be transmitted at the beginning of the first available time slot. Der Mikroprozessor The microprocessor 302 302 überwacht dann und setzt USTR NC-Bits für die verbleibenden Pakete, wenn das vorhergehende Paket übertragen wird. then monitors and sets USTR NC-bits for the remaining packets as the previous packet is transmitted.
  • [0216] [0216]
    Fall 3 ist der Fall, bei dem der Mikroprozessor Case 3 is the case where the microprocessor 302 302 entscheidet, dass ein Paket, das kürzer ist als MTU, über den Konkurrenzkanal übertragen werden muss. decides that a packet is shorter than MTU must be transmitted over the contention channel. In diesem Fall bereitet derselbe das Paket vor und setzt das USTR C-Bit. In this case, the same prepares the packet and sets the USTR C bit. Die Zustandsmaschine überträgt dann das Datenpaket nur durch den Konkurrenzkanal. The state machine then transmits that data packet only through the contention channel.
  • [0217] [0217]
    Zustandsmaschinen sind konzipiert, um das KTREG+1-Bit 14, „SMRTIASAP, Zustandsmaschinen kehren zu inaktivem ASAP zurück", häufig zu überwachen und zu einem Ruhezustand zurückzukehren, wenn dieselben erkennen, dass dieses Bit auf „1" gesetzt ist. State machines are designed around the KTREG + 1 bit 14, "SMRTIASAP, state machines return to inactive ASAP back" to frequently monitor and return to a rest condition when the same seen that this bit is set to "1". Dies ist eine praktische Weise, um alle Aktionen in dem Kabelmodem This is a convenient way to see all the actions in the cable modem 113 113 anzuhalten. to stop. Für das beste Ergebnis müssen alle anderen Bits von KTREG+1 auf 0 gesetzt werden. For best results, all other bits of KTREG + 1 must be set to 0.
  • [0218] [0218]
    Jedes der KTREG-Register (z. B. KTREG+1) ist kein einzelnes Mehrbitregister. Each of the KTREG registers (z. B. KTREG + 1) is not a single multi-bit register. Jedes KTREG-Register ist tatsächlich mehrere unabhängige 1-Bit-Register. Each KTREG register is actually several independent 1-bit register. Unabhängige Bitregister zu haben verhindert eine Wettlaufbedingung, wenn der Mikroprozessor To have independent bit registers prevents a race condition when microprocessor 302 302 versucht, ein Bit zu lesen und zu modifizieren, während die Steuerschaltung tries to read and modify a bit while the control circuit 301 301 versucht, ein anderes Bit zu löschen. attempted to erase another bit. Um ein Bit auf 1 zu setzen, wird eine 1 in die entsprechende Bitposition geschrieben, wobei Bit 15 auch auf 1 gesetzt wird. To set a bit to 1, write a 1 in the corresponding bit position with bit 15 also set to one. Um ein Bit auf 0 rückzusetzen, wird eine 1 in die entsprechende Bitposition geschrieben, wobei das Bit 15 auf 0 gesetzt wird. One bit reset to 0, write a 1 to the corresponding bit position where bit 15 is set to 0. Zum Beispiel setzt ein Schreiben eines Wertes von 0x8005 in KTREG+1 das PLFC und das RTL auf 1, ohne die anderen Bits zu beeinflussen, ein Schreiben eines Wertes von 0x000A in KTREG+1 löscht die CIPH- und DSCC-Bits, ohne die anderen Bits zu beeinflussen. For example uses writing a value of 0x8005 in KTREG + 1 is the PLFC and the RTL to 1 without affecting the other bits, a letter from a value of 0x000A in KTREG + 1 deletes the CIPH- and DSCC bits without the other affecting bits.
  • [0219] [0219]
    Die Bits des KTREG+2-Registers werden durch die Hardwarezustandsmaschinen gesetzt und teilen dem Mikroprozessor The bits of the KTREG + 2 register are set by the hardware state machines and share the microprocessor 302 302 im allgemeinen den Fortschrittsstatus der Zustandsmaschinen und der Hardware mit. in general, the progress status of the state machines and hardware. Der Mikroprozessor The microprocessor 302 302 kann die Bits löschen und auf die nächste Veränderungsbedingung bei jedem Bit warten. can delete the bits and wait for the next change of condition at each bit. Ein Setzen eines beliebigen dieser Registerbits erzeugt eine Mikroprozessor A setting of any of these register bits produces a microprocessor 302 302 -Unterbrechung. Interrupt. Unterbrechungen können durch ein Schreiben in KTREG+3 freigegeben oder gesperrt werden. Interrupts can be enabled or disabled by writing to KTREG + 3. Es liegt an dem Mikroprozessor It is up to the microprocessor 302 302 , zu entscheiden, die Unterbrechungen abhängig von verwendeten Algorithmen und der Unterbrechungslatenzzeit des Mikroprozessors zu verwenden. To decide to use the interrupts depending on algorithms used and the interrupt latency of the microprocessor.
  • [0220] [0220]
    Bit 2 bis 7 werden durch die Zustandsmaschinen gelöscht, wenn dieselben die Adresse des nächsten Blocks aus dem MOAP erfassen, und werden gesetzt, wenn das Paket ausgeführt ist. Bits 2 to 7 are cleared by the state machines, when the same record the address of the next block from the MOAP and are set when the packet is performed. Diese Bits verbleiben gesetzt, bis dieselben entweder durch den Mikroprozessor These bits remain set until the same either by the microprocessor 302 302 rückgesetzt werden oder bis der nächste Block verarbeitet zu werden beginnt. be reset or start to be processed until the next block. Dies erfolgt, um eine Notwendigkeit einer konstanten Aufmerksamkeit des Mikroprozessors This is done to a need for constant attention of the microprocessor 302 302 zu verhindern. to prevent. Der Mikroprozessor The microprocessor 302 302 kann die entsprechenden Bits von Register 1 überwachen und mehrere Pakete anordnen, die eines nach dem anderen verarbeitet werden sollen, sobald die Zustandsmaschine die Adresse des Blocks aus dem MOAP erfasst und das Flag löscht. to monitor the corresponding bits of register 1 and arrange multiple packets to be processed one after the other, when the state machine detects the address of the block from the MOAP and clears the flag. Ein Löschen des Flags durch die Zustandsmaschinen bedeutet, dass der vorhergehende Block ausgeführt ist. Clearing the flag by the state machines means the previous block is carried out. Deshalb besteht keine Notwendigkeit, die entsprechenden Bits von KTREG+2 zu prüfen und zu löschen. Therefore, there is no need to check the corresponding bits of KTREG + 2 and delete them. Da die Zustandsmaschinen auch die entsprechenden Bits des KTREG+2 löschen, stellen diese Bits den Zustand des letzten Pakets dar, das verarbeitet wird, unabhängig davon, ob ein anderes Paket in der Warteschlange steht oder nicht. Since the state machines delete the corresponding bits of the KTREG + 2, these bits have the state of the last packet is being processed, regardless of whether another packet is queued or not.
  • [0221] [0221]
    Bit 15 ist genauso wirksam wie Bit 15 von KTREG+1. Bit 15 is as effective as bit 15 of KTREG + 1st
    KTREG+3 KTREG + 3 Unterbrechungsmaskenregister W Interrupt mask register W
  • [0222] [0222]
    KTREG+3 weist ein Bit entsprechend jedem Bit des obigen KTREG+2 auf. KTREG + 3 has a bit corresponding to each bit of the above KTREG + 2. Wenn eine „1" in diese Bitposition geschrieben wird, ist die entsprechende Unterbrechung freigegeben. If a "1" is written in this bit position, the corresponding interrupt is enabled.
    KTREG+4 KTREG + 4 Fehler (Nutzlast) R/W Error (payload) R / W
    Bits 7:0 Bits 7: 0 Zählwert Nutzlast-CRC-Fehler Payload CRC error count
    Bits 15:8 Bits 15: 8 Zählwert Nutzlast-Verfehlter-Puffer-Fehler Count of failed payload buffer error
    KTREG+5 KTREG + 5 Status (Nutzlast) R/W Status (payload) R / W
    Bits 15:0 Bits 15: 0 Zählwert empfangene Nutzlastpakete Count of received packets payload
    KTREG+6 KTREG + 6 Fehler und Status (Abwärtssteuerung) R/W Error and Status (down control) R / W
    Bits 7:0 Bits 7: 0 Zählwert Abwärtssteuerung-CRC-Fehler Count down control CRC error
    Bits 15:8 Bits 15: 8 Zählwert Abwärtssteuerung-Verfehlter-Puffer-Fehler Count down control-misguided-buffer error
    KTREG+7 KTREG + 7 Fehler und Status (Abwärtssteuerung) R/W Error and Status (down control) R / W
    Bits 15:0 Bits 15: 0 Zählwert empfangene Abwärtssteuerpakete Count received downlink control packets
    KTREG+8 KTREG + 8 Fehler und Status (aufwärts) R/W Error and status (up) R / W
    Bits 15:0 Bits 15: 0 Zählwert Aufwärtsneuübertragungsfehler Count Aufwärtsneuübertragungsfehler
    KTREG+9 KTREG + 9 Fehler und Status (aufwärts) R/W Error and status (up) R / W
    Bits 7:0 Bits 7: 0 Zählwert fallengelassene Aufwärtspakete aufgrund eines Backoff-Fehlers Count dropped packets due to a back-up error
    KTREG+10 KTREG + 10 Status (aufwärts) R/W Status (up) R / W
    Bits 15:0 Bits 15: 0 Zählwert übertragene Aufwärtspakete Count of transmitted packets up
    KTREG+11 KTREG + 11 Pufferverwaltung (Nutzlast) W Buffer Management (payload) W
    Bits 15:0 Bits 15: 0 Nutzlastfirmwarelesezeiger Payload firmware read pointer
    KTREG+12 KTREG + 12 Pufferverwaltung (Nutzlast) R/W Buffer Management (payload) R / W
    Bits 15:0 Bits 15: 0 Nutzlaststeuerschaltung 301-Schreibzeiger (Nutzlastbasisregister) Payload control circuit 301 write pointer (payload base register)
    KTREG+13 KTREG + 13 Pufferverwaltung (Abwärtssteuerung) W Buffer management (down control) W
    Bits 15:0 Bits 15: 0 Abwärtssteuerungfirmwarelesezeiger Down control firmware read pointer
    KTREG+14 KTREG + 14 Pufferverwaltung (Abwärtssteuerung) R/W Buffer management (down control) R / W
    Bits 15:0 Bits 15: 0 Abwärtssteuerschaltung 301-Schreibzeiger (Abwärtssteuerbasisregister) Down control circuit 301 write pointer (down tax base register)
    KTREG+15 KTREG + 15 Fehler- und Statusüberrollregister R/W Error and Status rollover register R / W
  • [0223] [0223]
    Jedes Bit in KTREG+15 ist ein Flag, das das Überrollen (Rollover – Rücksprung auf Null) eines bestimmten Zählers anzeigt. Each bit in KTREG + 15 is a flag that the rollover (rollover - return to zero) indicates a specific counter.
    Bit 0 Bit 0 Überrollen Nutzlast-CRC-Fehlerzähler Via rollers payload CRC error counter
    Bit 1 Bit 1 Überrollen Nutzlast-Verfehlter-Puffer-Fehlerzähler About roles payload misguided buffer error counter
    Bit 2 Bit 2 Überrollen Empfangene-Nutzlastpaketezähler About roles Received payload packets counter
    Bit 3 Bit 3 Überrollen Abwärtssteuerung-CRC-Fehlerzähler About rolls down control CRC error counter
    Bit 4 Bit 4 Überrollen Abwärtssteuerung-Verfehlter-Puffer-Fehlerzähler About roles-down control of missed buffer error counter
    Bit 5 Bit 5 Überrollen Empfangene-Abwärtssteuerpaketezähler About roles Received-down control packets counter
    Bit 6 Bit 6 Überrollen Aufwärtsneuübertragungsfehlerzähler Rolling over Aufwärtsneuübertragungsfehlerzähler
    Bit 7 Bit 7 Überrollen Fallengelassene-Aufwärtspaketezähler Rolling over Dropped packets counter-Up
    Bit 8 Bit 8 Überrollen Übertragene-Aufwärtspaketezähler Rolling over Transmitted packets counter-Up
  • [0224] [0224]
    Der Mikroprozessor The microprocessor 302 302 kann nur obige Bits rücksetzen. can reset just above bits. Ein Schreiben einer „1" in einer beliebigen Bitposition „setzt nur dieses Bit auf 0 zurück" und beeinflusst nicht die anderen Bits. A writing a "1" in any bit position "only sets this bit to 0" and does not affect the other bits. Zum Beispiel setzt ein Schreiben von 0x0003 in dieses Register nur Bits 0 und 1 auf „0" und beeinflusst nicht andere Bits. For example, is a letter from 0x0003 to this register only bits 0 and 1 to "0" and does not affect other bits.
  • [0225] [0225]
    Die obigen Bits bleiben nach dem Überrollen gesetzt, bis die Hälfte des maximalen Zählwerts in dem nächsten Zählzyklus erreicht ist. The above bits remain set until half the maximum count is reached in the next counting cycle after the rollover. Zum Beispiel wird Bit 2 auf „1" gesetzt, wenn KTREG[5] von 0xffff auf 0x0000 überrollt, und bleibt bei „1", bis der Zählwert 0x8000 in dem nächsten Zählzyklus erreicht. For example, bit 2 is set to "1" when KTREG overrun [5] of 0xffff to 0x0000 and stays at "1" until the count reaches 0x8000 into the next counting cycle. Dies gibt dem Mikroprozessor This gives the microprocessor 302 302 genug Zeit, das Bit zu löschen und die Gesamtzählwerte zu akkumulieren. enough time to clear the bit and to accumulate the total counts.
  • [0226] [0226]
    Eine Unterbrechung wird erzeugt, wenn irgendeines dieser Bits gesetzt wird. An interrupt is generated when any of these bits is set.
    KTREG+16 KTREG + 16 Unterbrechungsmaskenregister für obiges KTREG+14 R/W Interrupt mask register for the above KTREG + 14 R / W
  • [0227] [0227]
    Ein Schreiben einer „1" in eine beliebige Bitposition gibt die Unterbrechung von dem entsprechenden Bit von KTREG[15] frei. Demgemäß sperrt eine „0" die Unterbrechung. Writing a "1" in any bit position is the interruption of the corresponding bit of KTREG [15]-free. Accordingly locks a "0", the interruption.
    KTREG+17 bis 20 KTREG + 17 to 20 Sammelsendungsadressen-Logische-Adresse-Filter- (LAF-)Register W Multicast address Logical address-filter (LAF) register W
    KTREG[17]15:0 KTREG [17] 15: 0 LAF(15:0) LAF (15: 0)
    KTREG[18]15:0 KTREG [18] 15: 0 LAF(31:16) LAF (31:16)
    KTREG[19]15:0 KTREG [19] 15: 0 LAF(47:32) LAF (47:32)
    KTREG[20]15:0 KTREG [20] 15: 0 LAF(48:63) LAF (48:63)
    KTREG[21] KTREG [21] Hardwarerücksetzregister W Hardware reset register W
    Bit 0 Bit 0 Steuerschaltung 301-Hardwarerücksetzung Control circuit 301 hardware reset
    Bit 1 Bit 1 Abstimmvorrichtungshardwarerücksetzung Abstimmvorrichtungshardwarerücksetzung
    Bit 2 Bit 2 Chiffrierchiphardwarerücksetzung Chiffrierchiphardwarerücksetzung
    Bit 3 Bit 3 LAN-Hardwarerücksetzung LAN hardware reset
    Bit 4 Bit 4 Senderhardwarerücksetzung Transmitter hardware reset
    Bit 5 Bit 5 Mikroprozessorhardwarerücksetzung Microprocessor hardware reset
  • [0228] [0228]
    Ein Schreiben einer 1 in eine beliebige Bitposition sendet ein Rücksetzsignal auf der Hardwarerücksetzleitung der entsprechenden Vorrichtung. A writing a 1 in bit position any sends a reset signal on the hardware reset line of the corresponding device. Ein Senden eines Rücksetzsignals auf der Hardwarerücksetzleitung der Steuerschaltung Sending a reset signal on the hardware reset line of the control circuit 301 301 löscht ALLE internen Register. deletes ALL internal registers.
  • [0229] [0229]
    Bit 5, Mikroprozessorhardwarerücksetzung, wird durch den Mikroprozessor Bit 5, microprocessor hardware reset is by the microprocessor 302 302 verwendet, um sich selbst eine Rücksetzung aufzuzwingen, die derselbe durchführt durch ein Schreiben einer 1 in Bit 5. Nach einer kurzen Anfangsverzögerung wird ein kurzer Rücksetzpuls erzeugt. used self-impose a reset, the same is carried out by writing a 1 to a bit 5. After a short initial delay a short reset pulse is generated. Der Grund für eine Hardwarerücksetzung anstatt einer Softwarerücksetzung liegt darin, dass Erstere einen reinen Anfangshardwarezustand liefert, einschließlich aufgefrischter Cacheregister. The reason for a hardware reset instead of a software reset is that the former provides a pure initial hardware condition, including freshened cache register.
    KTREG[22] KTREG [22] Maske und Konfiguration W Mask and configuration W
    Bits[5:0] Bits [5: 0] Front-End-CBR-Maske Front-end CBR mask
    Bits[9:6] Bits [9: 6] Kabelmodemaufwärtskanalnummer Cable modem upstream channel number
  • [0230] [0230]
    Die CBR-Maske dient dazu, CBR-Bits, die von dem Steuerkanal empfangen werden, zu maskieren/demaskieren. The CBR mask serves CBR bits received from the control channel to mask / unmask. Eine QAM-Symbol-Verwendungsbitmap, die auf einer Abwärtskanalnummer in KTREG[36] Bits [7:0] basiert, wird verwendet, um die Maskenstruktur zu bestimmen. A QAM symbol usage bitmap, the [7: 0] on a downstream channel number in KTREG [36] bits based, is used to determine the mask pattern. Die Aufwärtskanalnummer wird durch den Abwärtssteuerkanal zugeteilt. The upstream channel number is assigned by the down control channel. Der Abwärtssteuer kanal erzeugt die „Statusbitmap" für diesen Kanal und gibt dieselbe dem Aufwärtsübertragungsblock. The downlink control channel generates the "Status Bitmap" for that channel and outputs the same to the uplink transmission block.
    KTREG+32 KTREG + 32 Zeitgebungs- und Steuerparameter R Timing and control parameters R
    Bits 15:0 Bits 15: 0 Frequenz verfügbarer Aufwärtskanal Frequency of available upstream channel
    KTREG+33 KTREG + 33 Zeitgebungs- und Steuerparameter R Timing and control parameters R
    Bits 7:0 Bits 7: 0 Nummer verfügbarer Aufwärtskanal Number of available upstream channel
    Bits 9:8 Bits 9: 8 Bits pro Symbol verfügbarer Aufwärtskanal Bits per symbol of available upstream channel
    Bits 15:10 Bits 15:10 Symbolrate verfügbarer Aufwärtskanal Symbol rate available upstream channel
    KTREG+34 KTREG + 34 Zeitgebungs- und Steuerparameter R Timing and control parameters R
    Bits 15:0 Bits 15: 0 Schlitz-MaxTU Slot MaxTU
    KTREG+35 KTREG + 35 Zeitgebungs- und Steuerparameter R Timing and control parameters R
    Bits 3:0 Bits 3: 0 Version Version
    Bits 7:4 Bits 7: 4 Kanaltyp Channel type
    Bits 14:8 Bits 14: 8 Schlitzzeitgeberlänge Slot timer length
    Bit 15 Bit 15 gültig (Zeitgebungs- und Steuerparameterregister, KTREG[32-37] weisen gültige Inhalte auf valid (timing and control parameter register, KTREG [32-37] have valid contents
    KTREG+36 KTREG + 36 Zeitgebungs- und Steuerparameter W Timing and control parameters W
    Bits 7:0 Bits 7: 0 meine Abwärtskanalnummer my downward channel number
    Bits 15:8 Bits 15: 8 Anzahl von Nutzlastbits in Abwärtskanal basierend auf KTREG[37]-QAM-Symbol-Verwendungsbitmap. Number of payload bits in the downlink channel based on KTREG [37] QAM symbol usage bitmap. Voreinstellung ist 5 in einer 64-QAM-Konfiguration. Default is 5 in a 64-QAM configuration.
    KTREG+37 KTREG + 37 Zeitgebungs- und Steuerparameter R Timing and control parameters R
    Bits 15:0 Bits 15: 0 QAM-Symbol-Verwendungsbitmap basierend auf Abwärtskanalnummer in KTREG[36] Bits [7:0] QAM symbol usage bitmap based on downstream channel number in KTREG [36] bits [7: 0]
  • [0231] [0231]
    Zeitgebungs- und Steuerparameter sind die Informationen, die in einem Steuerrahmen mit dem Teilcode 0x8001 enthalten sind. Timing and control parameters are the information contained in a control frame having the subcode 0x8001. Mehrere Felder werden nicht direkt durch den Teilcode 0x8001 gesendet und werden entweder durch die Hardware erzeugt oder werden durch irgendeine Verarbeitung an dem Teilcode-0x8001-Rahmen erhalten. Several fields are not sent directly by the part code 0x8001 and are produced by either the hardware or obtained by any processing on the part code 0x8001 frame.
  • [0232] [0232]
    KTREG[35], Bits 14:8 (Schlitzzeitgeberlänge), wird durch die DCD KTREG [35], bits 14: 8 (slot timer length) is determined by the DCD 805 805 bestimmt. determined. Es ist der maximale Zählwert des Schlitzzeitgeberfeldes. It is the maximum count of the slot timer field.
  • [0233] [0233]
    KTREG[36], Bits 7:0 (Kabelmodemabwärtskanal #), KTREG[36], Bits 15:8 (Anzahl von Nutzlastbits), und KTREG[37], Bits 15:0 (QAM-Symbol-Verwendung), werden miteinander verbunden, um einem gemeinsamen Zweck zu dienen. KTREG [36], bits 7: 0 (cable modem downstream channel #) KTREG [36], bits 15: 8 (number of payload bits), and KTREG [37], bits 15: 0 (QAM symbol usage) are connected to each other to serve a common purpose. Dieser Zweck besteht darin, die Anzahl von Nutzlastbits innerhalb eines jeden Symbols zu bestimmen. That purpose is to determine the number of payload bits within each symbol. Zum Beispiel empfängt das Kabelmodem For example, receives the cable modem 113 113 , wenn dasselbe 64-QAM verwendet, sechs Bits bei jedem Symbol. When the same 64-QAM used, six bits for each symbol. Ein Bit ist der Steuerkanal und fünf Bits sind die Nutzdaten. One bit is the control channel, and five bits are payload data. Bei einem alternativen Ausführungsbeispiel kann es ein Steuerbit, zwei Bits Nicht-Nutzdaten und drei Bits Nutzdaten bei jedem Symbol geben. In an alternative embodiment there may be at each symbol a control bit, two bits of non-user data and three bits of user data.
  • [0234] [0234]
    Ein Steuerrahmen, der den Teilcode 0x8001 aufweist, überträgt eine QAM-Symbol-Verwendungsbitmap, die jedem Abwärtskanal zugeordnet ist. A control frame having the subcode 0x8001 transmits a QAM symbol usage bitmap associated with each downstream channel. Der Mikroprozessor The microprocessor 302 302 bestimmt den Abwärtskanal und schreibt denselben in KTREG+36[7:0]. determines the forward channel and writes the same in KTREG + 36 [7: 0]. Die Steuerschaltung The control circuit 301 301 filtert Informationen und liefert die QAM-Symbol-Verwendungsbitmap, die dem Abwärtskanal zugeordnet ist, bei KTREG+37[15:0]. filters information and provides the QAM symbol usage bitmap associated with the downstream channel at KTREG + 37 [15: 0]. Der Mikroprozessor The microprocessor 302 302 liest KTREG+37 und bestimmt die Anzahl von Nutzlastbits. read KTREG + 37 and determines the number of payload bits. Der Mikroprozessor The microprocessor 302 302 schreibt dann die Anzahl von Nutzlastbits in KTREG+36[15:8]. then writes the number of payload bits in KTREG + 36 [15: 8]. Der Voreinstellungswert für 64-QAM beträgt 5 (1 Bit Steuerung, 5 Bits Nutzdaten, 0 Bits Nicht-Nutzdaten). The default value for 64-QAM is 5 (1-bit control, 5 bits of user data, 0 bits non payload).
  • [0235] [0235]
    KTREG+35 Bit KTREG + 35 bit 15 15 ist das Gültigkeitsprüfungsbit für alle „Zeitgebungs- und Steuerparameter". Der Steuerkanal stellt sicher, dass alle Daten auf KTREG[32-37] gültig sind, dann kennzeichnet derselbe sie mit einer „1" auf KTREG+35[15]. is the Gültigkeitsprüfungsbit for all "timing and control parameters". The control channel ensures that all data on KTREG [32-37] are valid, then it indicates the same with a "1" on KTREG + 35 [15]. Der Mikroprozessor The microprocessor 302 302 prüft dieses Bit immer einmal unmittelbar vor und einmal unmittelbar nach dem Lesen irgendei nes der oben erörterten Parameter. checks this bit always once immediately before and once immediately after reading irgendei nes the parameters discussed above. Dies verhindert, dass ein ungültiger Parameter gelesen und verwendet wird. This prevents an invalid parameter is read and used.
  • Zustandsmaschinen State machines
  • [0236] [0236]
    Jede Vorrichtung wird durch eine eigens vorgesehene Zustandsmaschine gesteuert. Each device is controlled by a specially provided for state machine. Der Mikroprozessor The microprocessor 302 302 steuert die Zustandsmaschinen durch ein Steuern von Hardware-Flags in der Steuerschaltung controls the state machines by controlling hardware flags in the control circuit 301 301 . , Die verschiedenen Vorrichtungszustandsmaschinen übermitteln ihren Status auch an den Mikroprozessor The various device state machines transmit their status also to the microprocessor 302 302 durch ein Steuern von Hardware-Flags. by controlling hardware flags. Diese Hardware-Flags werden in Registern in der Steuerschaltung These hardware flags are in registers in the control circuit 301 301 gespeichert. stored. Alle Zustandsmaschinen laufen gleichzeitig. All state machines running simultaneously. Jede Zustandsmaschine wartet auf ein „Grünes-Licht"-Steuerflag von der Firmware. Es gibt zwei allgemeine Kategorien von Zustandsmaschinen, die die verschiedenen Vorrichtungen steuern, die mit dem RAM Each state machine waits for a "green light" -Steuerflag by the firmware. There are two general categories of state machines controlling the various devices connected to the RAM 309 309 durch die BAPC by the BAPC 825 825 der Steuerschaltung the control circuit 301 301 in Wechselwirkung stehen. interact. Die erste Kategorie von Zustandsmaschinen führen ein Verarbeiten an einem einzelnen Datenpaket durch und kehren zu ihrem Ruhezustand zurück und warten auf das nächste Grünes-Licht-Signal, um an dem nächsten Paket wirksam zu werden. The first category of state machines perform a processing on a single data packet through and return to their rest and wait for the next green light signal to be effective on the next packet. Bei der Zustandsmaschine in der ersten Kategorie handelt es sich um die Chiffrierzustandsmaschine (für die CD When the state machine in the first category is the Chiffrierzustandsmaschine (for CD 811 811 ), die Aufwärtszustandsmaschine (für die UD ), The uplink state machine (for the UD 809 809 ), die RAM-zu-LAN-Zustandsmaschine (für RTL ), The RAM-to-LAN state machine (for RTL 819 819 ) und die LAN-zu-RAM-Zustandsmaschine (für die LTR ) And the LAN to RAM state machine (for the LTR 815 815 ). ). Die zweite Kategorie von Zustandsmaschinen sind unabhängig bzgl. mehrerer Pakete in Sequenz mit geringem Eingreifen von dem Mikroprozessor The second category of state machines regarding independent. More packets in sequence with little intervention from the microprocessor 302 302 wirksam. effective. Bei den Zustandsmaschinen in dieser Kategorie handelt es sich um die Abwärtsnutzlastzustandsmaschine (für die DPD In the case of state machines in this category is the downward payload state machine (for DPD 807 807 ) und die Abwärtssteuerzustandsmaschine (für die DCD ) And the down-control state machine (for the DCD 805 805 ). ). Bei der ersten Kategorie führt die Zustandsmaschine, wenn das „grüne Licht" gegeben ist, ihre einzige Aufgabe aus und kehrt zu dem Wartezustand auf das nächste „grüne Licht" zurück. In the first category, the state machine when the "green light" is given, their only task and returns to the wait state to the next "green light" back. Einige Zustandsmaschinen sind ferner aus mehreren anderen parallelen Zustandsmaschinen gebildet. Some state machines are also formed from several other parallel state machines.
  • [0237] [0237]
    Eine Hauptzustandsmaschine steuert andere Unterzustandsmaschinen, um die Teilaufgaben der Hauptaufgabe durchzuführen, die dieser Zustandsmaschine zugeteilt ist. One main state machine controls other sub state machines to perform the sub tasks of the main task, which is assigned to this state machine.
  • [0238] [0238]
    15 15 ist ein „Blasen"-Diagramm der allgemeinen Form von erster und zweiter Kategorie von Zustandsmaschinen. Die Zustandsmaschine wartet darauf, dass der Mikroprozessor is a "bubble" diagram of the general form of first and second category of state machines. The state machine waits for the microprocessor 302 302 ihr ein Freigabe- oder ein „Grünes-Licht"-Signal gibt, Zustand signal gives her a release or a "green light" condition 1501 1501 . , Dies zeigt normalerweise an, dass ein Puffer in dem gemeinsamen RAM This usually indicates that a buffer in the shared RAM 309 309 bereit ist, um verwendet zu werden, und der MOAP is ready to be used and the MOAP 827 827 -Eintrag für diesen Puffer gültig ist. Entry for this buffer is valid.
  • [0239] [0239]
    16 16 ist ein Schema des verallgemeinerten Datenwegs is a schematic of the generalized data path 1601 1601 von Adressregistern der Vorrichtungen of address registers of devices 805 805 , . 807 807 , . 809 809 , . 811 811 , . 813 813 , . 815 815 , . 817 817 und and 819 819 . , Nicht alle Vorrichtungen benötigen die gesamte Struktur von Not all devices require the entire structure of 16 16 . , Ein Primärzeiger A primary pointer 1603 1603 und ein Sekundärzeiger and a secondary pointer 1605 1605 speichern Adressen zu dem nächsten Ort in dem RAM Save addresses to the next location in the RAM 309 309 , der durch die Vorrichtung verarbeitet werden soll. That is to be processed by the device. Die Zeiger The pointer 1603 1603 und and 1605 1605 werden drei Operationen unterzogen: Halten, Laden und Inkrementieren. undergo three operations: Hold, loading and incrementing.
  • [0240] [0240]
    Im Allgemeinen werden die Zeiger In general, the pointers are 1603 1603 und and 1605 1605 aus einer Addition durch einen Addierer/Subtrahierer from an addition by an adder / subtractor 1609 1609 eines Basisregisters (oder Basiszeigers) a base register (or base pointer) 1607 1607 und einem Versatz and an offset 1611 1611 geladen. Loading. Der Basiszeiger The base pointer 1607 1607 wird entweder aus dem MOAP either from the MOAP 827 827 -Register für die Vorrichtung geladen oder, in dem Fall von Vorrichtungen, die keine Basiszeiger in dem MOAP Loaded is selected for the device or, in the case of devices that do not have base pointers in the MOAP 827 827 aufweisen, aus den Schiebekettenregistern oder aus dem Primärzeiger have, from the shift registers or chain from the primary pointer 1603 1603 . , Der Fall eines Ladens aus dem Primärzeiger The case of a store from the primary pointer 1603 1603 ist z. B. gegeben, wenn ein CRC-Fehler gefunden wird und der Primärzeiger z is given. B., if a CRC error is encountered and the primary pointer 1603 1603 auf den Anfang des Pakets, das durch den Basiszeiger to the beginning of the packet by the base pointer 1607 1607 gezeigt wird, rückgesetzt werden muss, wodurch das Paket wirksam verworfen wird. is shown to be reset, so the package is effectively discarded. Der Addierer/Subtrahierer The adder / subtracter 1609 1609 liegt für den Fall der Chiffriervorrichtung is for the case of the cryptographic 811 811 vor, die den Zeiger für eine Leseoperation vier Wörter zurück bewegt. before moving the pointer for a read operation four words back.
  • [0241] [0241]
    Alternativ dazu wird das gleiche Ergebnis erreicht, indem kein Addierer, Subtrahierer und zugeordneter Multiplexer verwendet wird, indem der Ausgang des Basiszeigers direkt mit dem Eingang des PP Alternatively, the same result is achieved by no adders, subtractors and associated multiplexer is used by the output of the base pointer directly to the input of the PP 1603 1603 und des SP and SP 1605 1605 verbunden wird und eine Dekrementieroperation zu dem PP is connected and a decrement to the PP 1603 1603 und dem SP and the SP 1605 1605 hinzugefügt wird. is added. Bei dieser Alternative kann die Zustandsmaschine Inkrementier- (inc) und Dekrementier- (dec) Anweisungen an den PP In this alternative, the state machine increment (INC), and decrement (DEC) instructions to the PP 1603 1603 und den SP and the SP 1605 1605 ausgeben und das gleiche Ergebnis erzielen. spend and achieve the same result. Die letztere Alternative benötigt jedoch eine größere Anzahl von Taktzyklen als das Ausführungsbeispiel, das in However, the latter alternative requires more number of clock cycles than the embodiment in 16 16 gezeigt ist. is shown.
  • [0242] [0242]
    Um auf In order to 15 15 zurückzukommen, fährt die Zustandsmaschine auf ein Empfangen des „Grünes-Licht"-Signals hin mit dem nächsten Schritt fort, der im allgemeinen darin besteht, darauf zu warten, dass ihr eigenes Aufgaben-Flag gültig wird, Zustand return, the state machine moves to receiving the "green light" signal back with the next step, which consists in general is to wait for their own task flag is valid state 1503 1503 . , Zum Beispiel wartet eine Zustandsmaschine, die die Nutzlast von dem Kabel herunterlädt, hier darauf, dass ein neues Nutzlastpaket verfügbar wird, bevor dieselbe weiter fortfährt. For example, waiting for a state machine which downloads the payload from the cable, here to the fact that a new payload packet to become available before the same continues further. Einige Zustandsmaschinen übergehen diesen Schritt und gehen direkt zum nächsten Schritt über. Some state machines skip this step and go directly to the next step. Zum Beispiel muss die Chiffrierzustandsmaschine hier nicht auf ihr eigenes Aufgaben-Flag warten, da das „grüne Licht" von dem Mikroprozessor For example, the Chiffrierzustandsmaschine must not wait for their own task flag here, because the "green light" from the microprocessor 302 302 sowohl einen gültigen Puffer als auch eine gültige Aufgabe anzeigt. both a valid buffer as well as a valid object displays. Der erste Schritt beim Durchführen einer bestimmten Aufgabe besteht darin, die Anfangsadresse des Puffers aus dem MOAP The first step in performing a particular task is the start address of the buffer from the MOAP 827 827 in das Basisregister der Zustandsmaschine zu kopieren, das „Grünes-Licht"-Signal zu löschen, um dem Mikroprozessor To copy to the base register of the state machine, delete the "green light" signal to the microprocessor 302 302 mitzuteilen, dass dieselbe die Adresse des Pakets erfasst hat, so dass der Mikroprozessor communicate that the same has detected the address of the packet so that the microprocessor 302 302 fortfahren und die Adresse eines neuen Pakets in MOAP continue and the address of a new packet in MOAP 827 827 kopieren kann, und das ERLEDIGT-Bit (DONE bit) für das Paket zu löschen, Aufgabe can copy, and delete the DONE bit (DONE bit) for the package task 1505 1505 . , Das Löschen des Erledigt-Bits ist eine sehr wichtige Handshake-Aufgabe zwischen dem Mikroprozessor und der Vorrichtung. The deletion of the done bits is a very important task handshake between the microprocessor and the device. Der Mikroprozessor kann den Prozess von aufeinander folgenden Paketen überwachen durch ein Setzen und Überwachen des „Grünes-Licht"-Flags in der ersten Kategorie von Zustandsmaschinen. Wenn die Zustandsmaschine das Flag löscht, bedeutet dies, dass dieselbe ihre Verarbeitung des vorhergehenden Pakets abgeschlossen hat und an dem aktuellen Paket arbeitet. Deshalb muss der Mikroprozessor The microprocessor can monitor the process of consecutive packets by setting and monitoring the "Green light" flag in the first category of state machines. When the state machine clears the flag, it means that the same has completed its processing of the previous packet and working on the current packet. Therefore, the microprocessor must 302 302 das ERLEDIGT-Flag nicht überprüfen. by checking the DONE flag. Falls der Mikroprozessor If the microprocessor 302 302 kein neues Paket anordnen will, kann derselbe einfach das ERLEDIGT-Bit überwachen, um herauszufinden, wann das Verarbeiten an dem letzten Paket abgeschlossen ist. will arrange no new package, the same can easily monitor the DONE bit to find out when the processing is completed on the last packet.
  • [0243] [0243]
    Die nächste Aufgabe besteht darin, den Basiszeiger auf den Primärzeiger zu kopieren, Aufgabe The next task is to copy the base pointer to the primary pointer task 1507 1507 , und mit der spezifischen Aufgabe der Zustandsmaschine fortzufahren, Zustand And proceed with the specific task of the state machine state 1509 1509 . , Der Grund, warum der Wert des Basiszeigers behalten wird, liegt darin, dass es sein kann, dass das CM The reason why the value of the base pointer is retained, is that it may be that the CM 113 113 den aktuellen Auftrag aufgrund irgendeines Fehlers abbrechen muss. must cancel the current job due to some error. In diesem Fall kann das CM In this case, the CM 113 113 immer zu dem Anfang des Pakets zurückkehren und den Puffer wiederverwenden. always return to the beginning of the packet and reuse the buffer. Diese Bedingung ist als „Von-Vorne-Anfangen-Bedingung"-Übergang in This condition is known as "front-of-Start condition" transition in 16 16 gezeigt. shown. Auch muss die Zustandsmaschine für einige Aufgaben vom Anfang des Kopfblocks neu anfangen und einige neue Informationen in den Kopfblock hinzufügen. The state machine for some tasks from the beginning of the head block must start over and add some new information in the header. Dies wird durchgeführt durch ein Kopieren des Basiszeigers in den Sekundärzeiger und ein Verwenden des Sekundärzeigers. This is done by copying the base pointer into the secondary pointer and using the secondary pointer. Ein typischer Fall ist der Fall der Abwärtsnutzlastzustandsmaschine A typical case is the case of the Downstream Payload state machine 807 807 , die den Hash-Wert der Sammelsendungsadresse des Pakets in den Kopfblock schreibt, während dieselbe den Rest des Pakets empfängt. Which writes the hash value of the multicast address of the packet in the head block, while it receives the rest of the package. Auch schreibt, wenn eine Vorrichtung beginnt, ein neues Paket zu verarbeiten, dieselbe den Bytezählwert des vorhergehenden Pakets in seinen Kopfblock. Also writes, when a device starts to process a new packet the same byte count of the previous packet in its header.
  • [0244] [0244]
    Die Zustandsmaschine geht dann zu dem nächsten Schritt über, der darin besteht, ihre eigene spezifische Aufgabe durchzuführen, was in The state machine then goes to the next step, which is to carry out its own specific task, which in 15 15 als überlappende Zustände as overlapping states 1511 1511 , . 1513 1513 , . 1515 1515 , . 1517 1517 gezeigt ist. is shown. Während der Ausführung dieser Aufgabe kann die Zustandsmaschine ihren Fortschritt dem Mikroprozessor durch ein Setzen von Status-Flags mit teilen. While performing this task, the state machine can share their progress to the microprocessor by a set of status flags with. Auch kann die Zustandsmaschine auch andere Unterzustandsmaschinen aktivieren, um einige Teilaufgaben parallel durchzuführen. Also, the state machine may also activate other sub state machines to perform some sub tasks in parallel. Im Allgemeinen setzt die Zustandsmaschine, wenn eine Aufgabe erledigt ist, ein „ERLEDIGT"-Flag, Zustand In general, the state machine when a task is completed, a "DONE" flag state 1519 1519 und Aufgabe and task 1521 1521 , und kehrt zu dem Wartezustand auf die neue Aufgabe zurück, Übergang „Zurückkehren". And returns to the wait state to the new task back transition "Return".
  • Front-End-Vorprozessor Front End Preprocessor
  • [0245] [0245]
    Um auf In order to 8 8 zurückzukommen, werden die I- und Q-Signale in den Front-End-Vorprozessor (FEP) to come back to the I and Q signals are in the front-end preprocessor (FEP) 801 801 der Steuerschaltung the control circuit 301 301 eingegeben. entered. Der FEP The FEP 801 801 decodiert die I- und Q-QAM-Signale und decodiert diese zu einem Symbolvektor, der von dem FEP decodes the I and Q QAM signals and decodes these into a symbol vector output from the FEP 801 801 zu einem Front-End-Seriellumsetzer (FES) a Front End Serializer (FES) 803 803 übertragen wird. is transmitted. Der Symboldatenweg von dem FEP The Symboldatenweg of the FEP 801 801 zu dem FES to the FES 803 803 ist ein Acht-Bit-Datenweg. is an eight-bit data path.
  • [0246] [0246]
    Der FEP The FEP 801 801 kann entweder 64-QAM- oder 256-QAM-Signale aufnehmen. can be either 64-QAM or 256-QAM signals to record. Ein Flag-Bit Q256 wird in den FEP A flag bit Q256 is in the FEP 801 801 eingegeben, um zu steuern, ob der FEP input to control whether the FEP 801 801 die I- und Q-Signale als 64-QAM oder als 256-QAM behandelt. the I and Q signals treated as 64-QAM or as 256-QAM. Bei 64-QAM werden drei Bits der I- und Q-Signale, Bits 0 bis 2, verwendet, und der Symbolvektor zu FES For 64-QAM, three bits of the I and Q signals, bits 0 to 2 are used and the Symbol vector to FES 803 803 ist ein Sechs-Bit-Vektor, der Bit 7 und Bits 4 bis 0 der Symbolleitung entspricht. is a six-bit vector, the bit 7 and bits 4 to 0 of the Symbol line corresponds. Bei 256-QAM werden vier Bits der I- und Q-Signale durch den FEP At 256-QAM, four bits of the I and Q signals through the FEP 801 801 verarbeitet, und der Symbolvektor ist ein Acht-Bit-Vektor. processed and the symbol vector is an eight-bit vector. Bei sowohl 64-QAM als auch 256-QAM ist Bit 7 das Steuerkanalbit. In both 64-QAM and 256-QAM bit seven is the Steuerkanalbit.
  • [0247] [0247]
    Der FEP The FEP 801 801 gibt auch einen Baud-Puls aus. also outputs a pulse baud. Der Baud-Puls ist ein einen Taktzyklus breiter Puls, der einmal pro Symbol erzeugt wird. The baud-pulse is a one clock cycle wide pulse generated once per symbol. Bei dem bevorzugten Ausführungsbeispiel werden die Symbole mit einer Rate von 5 M Symbolen/Sekunde empfangen, und der Baud-Puls (baud_pulse) weist eine Dauer von 25 Nanosekunden auf. In the preferred embodiment, the symbols at a rate of 5 M symbols / second are received, and the baud-pulse (baud_pulse) has a duration of 25 nanoseconds.
  • Front-End-Seriellumsetzer Front End Serializer
  • [0248] [0248]
    Der Front-End-Seriellumsetzer (FES) The Front End Serializer (FES) 803 803 empfängt den Symbol- und Baud-Puls von dem Front-End-Vorprozessor receives the Symbol and Baud Pulse from the Front End Preprocessor 801 801 und partitioniert den Symbolvektor in zwei serielle Ströme. and partitions the symbol vector in two serial streams. Symbolbit 7 ist der Steuerstrom („Cont_Out"). Der Cont_Out-Strom wird ausgetaktet und an die Abwärtssteuervorrichtung Symbolbit 7 is the control current ("Cont_Out"). The Cont_Out stream is clocked out and down to the control device 805 805 mit der Symbolrate (baud_pulse = 5 M Bits/Sekunde) angelegt. applied at the symbol rate (baud_pulse = 5 M bits / second).
  • [0249] [0249]
    Der zweite Strom ist der Strom mit Nutzdaten. The second current is the current payload. Dieser Strom „Pl_Dat" wird von Symbol [0:4] bei 64-QAM und von Symbol [0:6] bei 256-QAM abgeleitet. Der Pl_Dat-Strom wird mit einer Rate von 40 Mbits/sec in die Abwärtsnutzlastvorrichtung This current "pl_dat" is Symbol [0: 4] for 64-QAM and from Symbol [0: 6]. The deduced 256-QAM pl_dat stream is at a rate of 40 Mbits / sec into the Downstream Payload Device 807 807 übertragen. transmitted. Der Pl_Dat-Strom ist mit dem Signal „plse" (Nutzlastschiebefreigabe) gekennzeichnet, das auch in die Abwärtsnutzlastvorrichtung gespeist wird. Indem der Pl_Dat-Strom so gekennzeichnet wird, werden nur die Bits, die Nutzlast sind, in die Abwärtsnutzlastvorrichtung The pl_dat current is connected to the signal "plse" in (payload shift enable) which is also fed into the Downstream Payload Device. By the pl_dat flow is in only the bits of the payload are in the Downstream Payload Device 807 807 verschoben. moved.
  • [0250] [0250]
    Der Front-End-Seriellumsetzer The Front End Serializer 803 803 enthält auch eine Schaltungsanordnung zum Entwürfeln des Nutzlaststroms, bevor der Nutzlaststrom zu der Abwärtssteuervorrichtung also contains circuitry for descrambling the payload stream prior to the payload stream to the Downstream Control Device 805 805 übertragen wird. is transmitted.
  • Abwärtssteuervorrichtung Downstream Control Device
  • [0251] [0251]
    Die Abwärtssteuervorrichtung The Downstream Control Device 805 805 ist eine zustandsmaschinengesteuerte Vorrichtung, die die folgenden Funktionen liefert. is a state machine controlled device that provides the following functions. Sie verwaltet ihren eigenen Puffer in dem RAM It manages its own buffer in the RAM 309 309 . , Der Umfang ihres Pufferbereichs wird durch den Mikroprozessor The scope of its buffer area is determined by the microprocessor 302 302 bestimmt, der DSCTOB- und DSCBOB-Register setzt. determines the DSCTOB- and DSCBOB register sets. Wenn die Abwärtssteuervorrichtung Daten in den RAM When the downward control device data in the RAM 309 309 -Puffer schreibt, hält dieselbe ein Schreibzeiger-DSCWP-Register aufrecht, das ihren aktuellen Ort anzeigt. Buffer writes, the same holds a write pointer DSCWP register maintained that displays your current location. Der Mikroprozessor The microprocessor 302 302 hält einen Lesezeiger DSCRP aufrecht, der anzeigt, wohin derselbe gelesen hat. maintains a read pointer DSCRP indicating where the same has read.
  • [0252] [0252]
    Die Abwärtssteuervorrichtung The Downstream Control Device 805 805 schreibt fortlaufend in den Puffer, bis der DSCWP das Ende des Puffers erreicht, wie es durch das DSCBOB-Register angezeigt ist. continuously writes into the buffer until the DSCWP reaches the end of the buffer, as indicated by the DSCBOB register. Die Abwärtssteuervorrichtung The Downstream Control Device 805 805 schreibt dann am Anfang des Puffers weiter, setzt ein Flag DSCWRAP, um anzuzeigen, dass dieselbe dies gemacht hat. then writes the beginning of the buffer continues, sets a flag DSCWRAP to indicate that the same has made this. Die Abwärtssteuervorrichtung The Downstream Control Device 805 805 fährt fort, in den Puffer zu schreiben, bis der DSCWP gleich dem DSCRP ist, was anzeigt, dass dieselbe im Begriff ist, noch nicht verarbeitete Pakete zu überschreiben. continues to write to the buffer until the DSCWP the DSCRP is the same, indicating that the same is about to overwrite backlogged packets.
  • [0253] [0253]
    Die Abwärtssteuervorrichtung The Downstream Control Device 805 805 ist mit der Aufwärtsvorrichtung with the Upstream Device 809 809 und der Senderausgangsseite and the transmitter output side 821 821 verbunden und liefert diesen Vorrichtungen Bestätigungs- und Zeitgebungssignale. connected and delivers these devices confirmation and timing signals. Bei vielen Aufwärtsnachrichten sendet die Aufwärtsvorrichtung In many upstream messages the device sends up 809 809 die Nachricht erneut, wenn keine Bestätigung von dem SCS the message again, if no acknowledgment of the SCS 101 101 empfangen wird. is received. Die Abwärtssteuervorrichtung The Downstream Control Device 805 805 analysiert derartige Bestätigungen aus dem cont_out-Strom syntaktisch aus und überträgt die Bestätigung an die Aufwärtsvorrichtung analyzed such acknowledgments from the cont_out stream from syntactically and transmits the acknowledgment to the Upstream Device 809 809 . , Die Abwärtssteuervorrichtung The Downstream Control Device 805 805 erfasst auf dem cont_out-Strom die SYNC-Felder, die einen Anfang von Schlitzen und Rahmen anzeigen. recorded on the cont_out current SYNC fields indicating a beginning of slots and frames. Die Abwärtssteuervorrichtung The Downstream Control Device 805 805 erfasst auch, wenn Zeitschlitze auf dem Aufwärtskanal Konkurrenzschlitze sind, und sendet diese Information an die Aufwärtsvorrichtung also detects when time slots on the upstream channel are contention slots and sends that information to the Upstream Device 809 809 . ,
  • [0254] [0254]
    Die Abwärtssteuervorrichtung The Downstream Control Device 805 805 liefert auch Reservierungsinformationen an die Aufwärtsvorrichtung also provides reservation information to the Upstream Device 809 809 . , Wenn somit die Aufwärtsvorrichtung Thus, if the Upstream Device 809 809 beauftragt worden ist, ein Paket zu senden, das länger ist als MaxTU, muss dieselbe auf eine Reservierung von dem SCS has been directed to send a packet that is longer than MaxTU, must be the same on a reservation of the SCS 101 101 warten. . wait Die Abwärtssteuervorrichtung The Downstream Control Device 805 805 analysiert die Reservierungsstattgabe und die Anzahl von Zeitschlitzen, die vor einem Übertragen zu warten sind, aus dem cont_out-Strom syntak tisch aus und liefert diese Informationen an die Aufwärtsvorrichtung analyzes the reservation Grant and the number of time slots to wait before transmitting, from the current syntactic cont_out from table and provides this information to the Upstream Device 809 809 . ,
  • [0255] [0255]
    Zusätzliche Aufgaben für die Abwärtssteuervorrichtung Additional tasks for the Downstream Control Device 805 805 umfassen: include:
    eine Abwärtsverwendungsbitmap für den Abwärtskanal liefern. provide a downward using bitmap for the downlink channel.
  • [0256] [0256]
    Statusinformationen an den Mikroprozessor liefern. Provide status information to the microprocessor.
  • [0257] [0257]
    Status- und Fehlerinformationen für den Mikroprozessor aufrechterhalten. Maintained status and error information for the microprocessor.
  • [0258] [0258]
    Abwärtsbefehle an den gemeinsamen RAM speichern, damit eine Verarbeitung erst nach einer Verifizierung, dass der Befehl für das Kabelmodem bestimmt ist, erfolgt. Save down commands to the shared RAM so that processing only after verifying that the command applies to the cable modem, takes place.
  • Abwärtsnutzlastvorrichtung Downstream Payload Device
  • [0259] [0259]
    Die Abwärtsnutzlastvorrichtung The Downstream Payload Device 807 807 ist eine zustandsmaschinengesteuerte Vorrichtung zum Übertragen von Abwärtsnutzdatenpaketen von dem Front-End-Seriellumsetzer is a state machine controlled device for transferring Abwärtsnutzdatenpaketen from the front End Serializer 803 803 in den RAM in the RAM 309 309 . , Die DPD The DPD 807 807 wird durch den Mikroprozessor durch interne Register, wie z. B. oberes Pufferende (PTOB), unteres Pufferende (PBOB), Lese- und Schreibzeiger, gesteuert. is determined by the microprocessor internal registers such. B. upper end of buffer (PTOB), on the lower end of buffer (PBOB), read and write pointers controlled. Die DPD The DPD 807 807 verwaltet ihren eigenen Puffer unter Verwendung der Technik, die im Vorhergehenden für die Abwärtssteuervorrichtung manages its own buffer using the technique, the above for the Downstream Control Device 805 805 erörtert ist. is discussed.
  • [0260] [0260]
    Die Abwärtsnutzlastvorrichtung The Downstream Payload Device 807 807 ist mit dem Front-End-Seriellumsetzer is connected to the front End Serializer 803 803 durch zwei Leitungen, die pl_dat-Leitung und die plse-Leitung, verbunden. by two lines pl_dat line and the plse-line connected. Die pl_dat-Leitung ist ein serieller Datenstrom, der die Nutzdaten enthält. The pl_dat line is a serial data stream containing the payload data. Der Datenstrom auf der pl_dat-Leitung wird in die DPD The data stream on the pl_dat line is in the DPD 807 807 verschoben unter Verwendung eines Ein-Puls/Bit-Pulses auf der plse-Leitung. moved using a one pulse / bit pulse on the plse line.
  • [0261] [0261]
    Der Mikroprozessor The microprocessor 302 302 gibt der DPD gives the DPD 807 807 sein „grünes Licht" durch ein Setzen eines Internregisterflags. Indem derselbe der DPD be "green light" by setting an inter-register flags. By the same DPD 807 807 ein grünes Licht gibt, zeigt der Mikroprozessor is a green light that shows the microprocessor 302 302 der DPD DPD 807 807 an, dass die Pufferregister (PTOB, PBOB, PRP und PWP) für die DPD in that the buffer register (PTOB, PBOB, PRP and PWP) for the DPD 807 807 gesetzt worden sind, und dass die DPD have been set, and that the DPD 807 807 beginnen kann, Daten in den RAM zu übertragen. can begin to transmit data in the RAM.
  • [0262] [0262]
    Die Abwärtsnutzlastvorrichtung The Downstream Payload Device 807 807 prüft dann den pl_dat-Datenstrom auf ein SYNC-Flag. then checks the pl_dat data stream on a SYNC flag. Nutzdatenpakete halten das Rahmenformat, das in User data packets keep the frame format in 6(c) 6 (c) gezeigt ist, ein. there is shown a. Das erste Feld The first field 751 751 in einem Nutzlastrahmen ist ein Ein-Byte-SYNC-Flag, das das Bitmuster „01111110" aufweist (sechs Einsen, die durch zwei Nullen eingerahmt sind). Wenn auf dem Nutzlastkanal keine zu übertragenden Daten vorliegen, überträgt das SCS in a payload frame is a one-byte SYNC flag that the bit pattern "01111110" having (six ones which are framed by two zeros). If no channel present on the payload data to be transmitted, transmits the SCS 101 101 eine fortlaufende Reihe von SYNC-Flags. a continuous series of SYNC flags. Deshalb weiß die DPD Why do the DPD 807 807 , dass dieselbe, wenn sie ein SYNC-Flag gefolgt von einem SYNC-Flag empfängt, keine echten Nutzdaten empfängt. That the same, when it receives a SYNC flag followed by a SYNC flag, not real user data receives.
  • [0263] [0263]
    Wenn die DPD If the DPD 807 807 ein echtes Nutzdatenpaket erfasst hat, beginnt dieselbe, den Datenrahmen unter Verwendung der BAPC a true payload data packet is detected, starts the same, the data frame using the BAPC 825 825 in den RAM in the RAM 309 309 zu kopieren. copy. Die DPD The DPD 807 807 hält zwei Zeiger in den RAM maintains two pointers into RAM 309 309 aufrecht: einen Primärzeiger PP und einen Sekundärzeiger SP. upright: a primary pointer PP and a secondary pointer SP.
  • [0264] [0264]
    Das zweite Feld des Nutzdatenpakets ist die Modem-MAC-Adresse The second field of the user data packet is the modem MAC address 753 753 . , Bei dieser Adresse This address 753 753 kann es sich um eine Sammelsendungsadresse handeln. it can be a multicast address. Falls die Adresse eine Sammelsendungsadresse ist, stimmt sie mit einem der gespeicherten Hash-Werte des CM If the address is a multicast address it matches one of the stored hash values of the CM 113 113 für eine Sammelsendungsadresse überein, an der das CM for a multicast address match, where the CM 113 113 teilnimmt. participates. Die DPD The DPD 807 807 führt die Hash-Berechnung der MAC-Adresse parallel zu einem Schreiben von Paketen in einen elastischen Puffer, der bezüglich der DPD performs the hash calculation of the MAC address in parallel with a writing packets into an elastic buffer with respect to the DPD 807 807 intern ist, aus. is internal from. Die DPD The DPD 807 807 schreibt den Hash-codierten Wert in einen Ort des RAM writes the hashed value into a place of RAM 309 309 in einem Paketkopfblock in a packet header 1405 1405 , auf den durch den SP gezeigt wird. , Is pointed to by the SP. Die DPD The DPD 807 807 beginnt nach einer MAC-Adressen-Verifizierung, die Nutzdaten von dem elastischen Puffer in den RAM begins after a verification MAC address, the payload data from the elastic buffer to the RAM 309 309 zu schreiben. to write.
  • [0265] [0265]
    Die DPD The DPD 807 807 enthält auch ein internes Vorausschauschieberegister, in dem dieselbe den pl_dat-Datenstrom empfängt. also contains an internal look-ahead shift register in which it receives the pl_dat data stream. Die DPD The DPD 807 807 überträgt Daten von dem pl_dat-Datenstrom in das Vorausschauschieberegister, das immer mehrere Datenbytes hält. transmits data from the data stream in pl_dat the look-ahead shift register which holds several bytes of data always. Indem immer einige Datenbytes in dem Vorausschauschieberegister gespeichert sind, ist die DPD By few bytes of data are always stored in the look-ahead shift register, the DPD 807 807 in der Lage, „vorauszuschauen", bevor dieselbe in den elastischen Puffer und schließlich in den RAM able to "look ahead" before the same into the elastic buffer and eventually to the RAM 309 309 schreibt. writes.
  • [0266] [0266]
    Die Vorausschau ist nützlich, um die Länge des Pakets zu bestimmen. The estimate is useful to determine the length of the packet. Ein Nutzdatenpaket kann eine nicht spezifizierte Länge aufweisen. A payload data packet may have an unspecified length. Während dieselbe das Nachrichtenfeld During the same message box 763 763 empfängt, führt die DPD receives performs DPD 807 807 eine Zählung durch, wie viele Bytes dieselbe empfangen hat. a count of the number of bytes received the same. Die Nachrichtenlänge ist erst bekannt, nachdem das Ende des Pakets empfangen wurde. The message length is not known until after the end of the packet was received. Durch ein Vorausschauen kann die DPD By looking ahead, the DPD 807 807 das SYNC-Flag des nächsten Pakets erfassen und dadurch die Länge erfahren. detect the SYNC flag of the next packet and thereby learn the length. Diese Paketlänge wird durch die DPD This packet length is determined by the DPD 807 807 durch ein Verwenden des SP gespeichert, während es ermöglicht wird, dass der PP verwendet wird, um das nächste Paket zu speichern. stored by using the SP while allowing the PP is used to store the next packet.
  • [0267] [0267]
    Wenn das SYNC-Flag erfasst worden ist, weiß die DPD außerdem, dass das CRC-Feld When the SYNC flag has been detected, the DPD knows also that the CRC field 765 765 gerade empfangen wurde. has just been received. Die DPD vergleicht dann die zyklische Redundanzprüfung, um zu bestimmen, ob das Paket fehlerfrei empfangen wurde. The DPD then compares the cyclic redundancy check to determine whether the packet was received without error. Wenn die CRC-Prüfung fehlschlägt, setzt die DPD ein Fehler-Flag für den Mikroprozessor If the CRC check fails, the DPD sets an error flag for the microprocessor 302 302 . ,
  • Aufwärtsvorrichtung Upstream Device
  • [0268] [0268]
    Die Aufwärtsvorrichtung The Upstream Device 809 809 ist eine zustandsmaschinengesteuerte Vorrichtung, die für das Senden von Paketen auf dem Aufwärtskanal zuständig ist. is a state machine controlled device in charge of sending packets on the upstream channel. Die Aufwärtsvorrichtung The Upstream Device 809 809 ist mit der Senderausgangsseite is connected to the transmitter output side 821 821 verbunden. connected. Datenbits werden aus der UD Data bits from the UD 809 809 in die Senderausgangsseite in the transmitter output side 821 821 immer jeweils ein Bit auf einmal ausgetaktet auf einen Bitanforderungspuls hin, der der UD always one bit at a time clocked out on a Bitanforderungspuls out of the UD 809 809 durch die Senderausgangsseite by the transmitter output side 821 821 geliefert wird. is supplied.
  • [0269] [0269]
    Der Mikroprozessor The microprocessor 302 302 leitet die Aktivität der UD directs the activity of the UD 809 809 ein durch ein Setzen des entsprechenden „Grünes-Licht"-Registers und durch ein Platzieren der RAM a by setting the corresponding "Green Light" register and by placing the RAM 309 309 -Paketadresse in dem MOAP -Paketadresse In the MOAP 827 827 -Register für die UD Is selected for the UD 809 809 . , Die UD The UD 809 809 kann in einem von drei Modi übertragen: „Mit Reservierung Übertragen", „Auf Nicht-Konkurrenz-Kanal Übertragen" und „Auf Konkurrenz-Kanal Übertragen". Für jeden gibt es ein entsprechendes „Grünes-Licht"-Register. can be transferred to one of three modes: "With reservation Transfer", "On non-competition-channel transmit" and "competition on Channel Transmit" Everyone has a corresponding "Green Light" tab..
  • [0270] [0270]
    17 17 ist ein „Blasendiagramm" der Zustandsmaschine für die Aufwärtsvorrichtung is a "bubble chart" of the state machine for the Upstream Device 809 809 . , Zustand Condition 1701 1701 ist ein Ruhezustand, in dem die UD is a resting state in which the UD 809 809 auf eine Anweisung wartet, eine Nachricht in einem der drei Modi zu senden: „Mit Reservierung Übertragen", „Auf Nicht-Konkurrenz-Kanal Übertragen" und „Auf Konkurrenz-Kanal Übertragen". Für jeden von ihnen gibt es einen Zweig in der Zustandsmaschine. waiting for an instruction to send a message in one of three modes: "With reservation Transfer", "On non-competition-channel transmit" and "On competition-channel Transmit" For each of them there is a branch in the state machine. ,
  • [0271] [0271]
    Der Zweig „Mit Reservierung Übertragen" beginnt mit einem Warten auf die Verfügbarkeit des bestimmten Aufwärtskanals, auf dem das CM The branch "With reservation Transfer" starts with a wait for the availability of the particular upstream channel on which the CM 113 113 überträgt, Zustand transmits, Condition 1703 1703 . , Ein Rahmen in dem Steuerkanal für jeden Zeitschlitz enthält einen Kanal/Schlitz-Status-Unterrahmentyprahmen. A frame in the control channel for each time slot contains a channel / slot status subframe type frame. Dieser Rahmen umfasst eine Kanalbelegungsbitmap (siehe Tabelle 1). This framework includes a channel allocation bitmap (see Table 1). Die Kanalbelegungsbitmap wird von der DCD The channel assignment bitmap from the DCD 805 805 zu der UD to the UD 809 809 übertragen. transmitted. Wenn die UD If the UD 809 809 erfasst, dass ihr Kanal in dem nächsten Schlitz frei ist, geht sie über zu einem Warten darauf, dass dieser nächste Schlitz beginnt, Zustand detects that its channel in the next slot is free, it goes to a wait that this next slot begins condition 1705 1705 . ,
  • [0272] [0272]
    Von Zustand Of state 1705 1705 geht die UD is the UD 809 809 , wenn die UD When the UD 809 809 den nächsten Schlitz erfasst hat, wie es durch einen Schlitzpuls von der DCD has detected the next slot, as indicated by a slot pulse from the DCD 805 805 angezeigt ist, dazu über, die Daten zu übertragen, indem dieselbe in Wechselwirkung mit der Senderausgangsseite is displayed, to about transferring the data by the same interacts with the transmitter output side 821 821 tritt, und wartet darauf, dass die Übertragung abgeschlossen ist, Zustand occurs, and waits for the transfer is completed, state 1707 1707 , und wartet auf eine Bestätigung von dem SCS , And waits for an acknowledgment from the SCS 101 101 , Zustand , State 1709 1709 . , Die Bestätigung wird auch auf dem Steuerkanal empfangen und wird zu der UD The acknowledgment is also received on the control channel and is transmitted to the UD 809 809 von der DCD from the DCD 805 805 übertragen. transmitted.
  • [0273] [0273]
    Die UD The UD 809 809 hat ein Limit gesetzt, wie lange dieselbe auf eine Bestätigung wartet. has set how long the same waits for an acknowledgment, a limit. Die erwartete Latenzzeit zwischen dem Senden einer Nachricht und dem Empfangen einer Bestätigung ist eine Funktion der Entfernung zwischen dem CM The expected latency time between sending a message and receiving an acknowledgment is a function of the distance between the CM 113 113 und dem SCS and the SCS 101 101 . , Bei der Installation ist diese Latenzzeit unbekannt. During the installation of this latency is unknown. Deshalb wartet das CM Therefore, waiting for the CM 113 113 beim ersten Mal, wenn dasselbe versucht, ein Paket zu senden, eine Millisekunde, was eine mehr als ausreichende Zeitmenge dafür ist, dass das SCS at the first time when the same tries to send a packet, a millisecond, which is a more than adequate amount of time that the SCS 101 101 einen erfolgreichen Empfang eines Datenpakets bestätigt. confirming successful reception of a data packet. Wenn das CM When the CM 113 113 diese erste Bestätigung empfängt, speichert dasselbe diese Latenzzeit in dem EEPROM sowie in einem internen Register. receives that first acknowledgment, it stores the same latency in the EEPROM as well as in an internal register. Bei nachfolgenden Übertragungen wartet die UD Subsequent transfers the UD waiting 809 809 diese bekannte erwartete Latenzzeit lang. this known expected latency time.
  • [0274] [0274]
    Falls die UD If the UD 809 809 die Bestätigung nicht innerhalb des Zeitlimits empfängt, versucht dieselbe die Übertragung entweder erneut oder bricht ab, Zustand confirmation is not received within the time limit, tried the same transmission either again or breaks off state 1711 1711 . , Es gibt eine feste Anzahl von zulässigen Neuversuchen, bei der es sich um einen programmierbaren Parameter handelt. There are a fixed number of allowed retries, wherein it is a programmable parameter. Falls die UD If the UD 809 809 dieses Limit nicht überschritten hat, hält sie sich zunächst zurück, um eine weitere Kollision zu vermeiden, Zustand this limit has not been exceeded, she is reluctant at first to avoid another collision, state 1714 1714 , und überträgt dann erneut, Zustand , And then retransmits, state 1707 1707 . ,
  • [0275] [0275]
    Falls die UD If the UD 809 809 ihr oberes Limit für Neuversuche erreicht hat, bricht dieselbe ab und setzt das Erledigt-Flag, um dem Mikroprozessor has reached its upper limit for retries, breaking the same, and sets the Done flag to the microprocessor 302 302 anzuzeigen, dass dieselbe das Verarbei ten abgeschlossen hat und auf eine weitere Anweisung wartet, Zustand indicate that the same proces has ten completed and waiting for another statement, state 1713 1713 . , Die UD The UD 809 809 setzt auch ein Fehler-Flag, um den Übertragungsfehler anzuzeigen. also sets an error flag to indicate the transmission error. Dadurch wird ermöglicht, dass der Mikroprozessor eine geeignete Maßnahme ergreift, z. B. eine Änderung des Aufwärtskanals einleitet oder einen Fehlerbericht an den PC This allows the microprocessor to take appropriate action, eg. As initiating a change in the upstream channel or a bug report to the PC 115 115 ausgibt. outputs.
  • [0276] [0276]
    Wenn die Bestätigung in dem Zweig „Mit Reservierung Übertragen" empfangen worden ist, zeigt die Bestätigung die zu wartende Anzahl von Zeitschlitzen an. In dem Zustand If the acknowledgment is received in the branch "With reservation Transfer", the acknowledgment indicates the serviceable number of time slots. In the state 1715 1715 wartet die UD waiting for the UD 809 809 diese Anzahl von Schlitzen lang, Zustand this number of slots long, state 1715 1715 , beginnt mit der Übertragung (durch ein Aufrufen einer Hauptübertragungszustandsmaschine, nicht gezeigt) des reservierten Datenpakets und wartet darauf, dass die Übertragung abgeschlossen ist, Zustand , Begins with the transmission (by invoking a main transmission state machine, not shown) of the reserved data packet and waits for the transfer is completed, state 1717 1717 , und setzt das Erledigt-Flag, Zustand , And sets the Done flag, state 1719 1719 , und kehrt zu dem Ruhezustand And returns to the idle state 1701 1701 zurück. back.
  • [0277] [0277]
    Ein zweiter Zweig der UD A second branch of the UD 809 809 -Zustandsmaschine ist der Zweig „Auf Konkurrenz Übertragen". Der zweite Zweig ist im wesentlichen ein Teilsatz des ersten Zweiges mit einigen kleineren Unterschieden. Die Zustände des zweiten Zweiges, die Zuständen in dem ersten Zweig entsprechen, sind angezeigt, indem die gleichen Bezugszeichen mit einem hinzugefügten Apostroph verwendet werden. Nur Unterschiede zwischen den beiden werden erörtert. -Zustandsmaschine Is the branch "On competition Transfer". The second branch is essentially a subset of the first branch with some minor differences. The states of the second branch, which correspond to states in the first branch are indicated by the same reference numerals with a added apostrophe can be used. Only differences between the two are discussed.
  • [0278] [0278]
    Zustand Condition 1707' 1707 ' unterscheidet sich von Zustand differs from state 1707 1707 darin, dass ein Paket ohne eine Reservierungsanforderung gesendet wird. that a packet is sent without a reservation request. Zustand Condition 1709' 1709 ' unterscheidet sich von Zustand differs from state 1709 1709 darin, dass die UD that the UD 809 809 auf ein Empfangen einer Bestätigung hin direkt von Zustand straight towards receiving a confirmation of state 1709' 1709 ' zu Zustand to state 1719' 1719 ' übergeht. passes over.
  • [0279] [0279]
    Der dritte Zweig der Zustandsmaschine für die UD The third branch of the state machine for the UD 809 809 ist der Zweig „Nicht-Konkurrenz Übertragen". Wenn das CM is the branch of "non-competition Transfer". When the CM 113 113 weiß, dass dasselbe eine Anzahl von unterbrochenen Datenpaketen übertragen muss, die insgesamt die MaxTU-Länge überschreiten, kann das CM knows that the same has to transmit a number of discontinuous data packets that in total exceed the MaxTU-length, the CM 113 113 eine Reservierung für die Ge samtanzahl von Zeitschlitzen vornehmen, die benötigt wird, um diese Sammlung von Datenpaketen zu übertragen. make a reservation for the Ge samtanzahl of time slots required to transmit this collection of data packets. Dazu führt dasselbe zunächst einen Zweig „Mit Reservierung Übertragen" der Zustandsmaschine für die UD Given the same first performs a branch "With reservation transferring" the state machine for the UD 809 809 aus. from. Bei seinem Abschluss senkt die UD In his conclusion, the UD lowers 809 809 das „grüne Licht", was es ermöglicht, dass der Mikroprozessor the "green light" which allows the microprocessor 302 302 die MOAP-Zeiger für die UD rücksetzt. the MOAP-pointer for the UD resets. Wenn derselbe dies erledigt hat, gibt der Mikroprozessor If the same has done this, the microprocessor 302 302 eine Anweisung „Nicht-Konkurrenz Übertragen" aus, da derselbe weiß, dass noch Zeitschlitze auf der Anfangsreservierung verbleiben. Sobald die UD a statement "non-competition Transfer", since the same knows that even time slots remain on the initial reservation. Once the UD 809 809 von dem Zustand from the state 1719 1719 in den Ruhezustand into hibernation 1701 1701 übergeht, bemerkt dieselbe die Anweisung „Nicht-Konkurrenz Übertragen" und geht in den entsprechenden Zweig über, nämlich bei Zustand transferred is noted the same instruction "transmit-no-contention" and transitions to the corresponding branch, namely at state 1705'' 1705 '' . , Zustand Condition 1705'' 1705 '' ist wie Zustand as state 1705 1705 . , Nachdem dieselbe den Schlitzpuls empfangen hat, sendet die UD After having received the same slot pulse, sends the UD 809 809 das Datenpaket, Zustand the data packet, state 1717'' 1717 '' , wartet jedoch nicht auf eine Bestätigung. , But does not wait for an acknowledgment. Nachdem die Übertragung des Datenpakets abgeschlossen ist, setzt die UD After the transmission of the data packet is completed, sets the UD 809 809 das Erledigt-Flag, Zustand the Done flag, state 1719'' 1719 '' . ,
  • Chiffriervorrichtung Cipher
  • [0280] [0280]
    Die Chiffriervorrichtung The Cipher 811 811 ist eine zustandsmaschinengesteuerte Vorrichtung, die mit dem MOAP is a state machine controlled device connected to the MOAP 827 827 , der Busentscheidungs- und Prioritätsschaltung , The bus arbitration and priority circuit 825 825 und über die Chiffrierchipschnittstelle and via the Cipher Chip Interface 813 813 mit dem Chiffrierchip with the Cipher 311 311 verbunden ist. is connected. Die Chiffriervorrichtung The Cipher 811 811 gewinnt über die BAPC wins over the BAPC 825 825 Datenpakete aus dem RAM Data packets from the RAM 309 309 , leitet diese zu dem Chiffrierchip , This leads to the Cipher 311 311 (über die CCI (Via the CCI 813 813 ) zur Verschlüsselung oder Entschlüsselung (je nachdem), empfängt die verarbeiteten Daten von dem Chiffrierchip ) For encryption or decryption (as applicable), receives the processed data from the Cipher Chip 311 311 und bewirkt, dass die sich ergebenden verschlüsselten/entschlüsselten Daten in den RAM and causes the resulting encrypted / decrypted data in the RAM 309 309 zurückgespeichert werden. be restored.
  • [0281] [0281]
    18 18 ist ein „Blasendiagramm" der Zustandsmaschine, die die Chiffriervorrichtung is a "bubble chart" of the state machine, the Cipher the 811 811 steuert. controls. In einem ersten Zustand, Zustand In a first state, state 1801 1801 , ist die Chiffriervorrichtung Is the Cipher 811 811 inaktiv und wartet auf das grüne Licht von dem Mikroprozessor inactive and waiting for the green light from the microprocessor 302 302 . , Der Mikroprozessor setzt auf ein Erfassen des Bedarfs, ein Datenpaket zu verschlüsseln oder zu entschlüsseln, z. B. auf die Anweisung des Endbenutzerprogramms, das auf dem PC The microprocessor continues to detecting the need to encrypt or decrypt a data packet, for. Example, on the statement of the Endbenutzerprogramms that on the PC 115 115 läuft, oder wie durch das E-Bit running, or as indicated by the E bit 755 755 angezeigt, die MOAP indicated that MOAP 827 827 -Zeiger für die Chiffriervorrichtung Pointer for the Cipher 811 811 , um auf das Datenpaket in dem RAM To the data packet in the RAM 309 309 zu zeigen. to show. Ein MOAP A MOAP 827 827 -Register 2 zeigt auf das Iterationszählwort Tab 2 shows the Iterationszählwort 1407 1407 in dem Paketkopfblock, das die Anzahl von Acht-Byte-Datenblöcken anzeigt, die in dem Paket enthalten sind, und ein MOAP in the packet header, which indicates the number of eight-byte data blocks contained in the packet, and MOAP a 827 827 -Register 3 zeigt auf den Anfang von zu verschlüsselnden oder zu entschlüsselnden Datenblöcken. Tab 3 points to the beginning of to be enciphered or deciphered data blocks.
  • [0282] [0282]
    Wenn die Chiffriervorrichtung If the Cipher 811 811 das grüne Licht empfängt, was dadurch angezeigt ist, dass der Mikroprozessor receives the green light, which is indicated by the fact that the microprocessor 302 302 das Prüfregister the check register 1401 1401 , das der Chiffriervorrichtung That the cryptographic 811 811 entspricht, setzt, leitet die Chiffriervorrichtung corresponding sets, directs the Cipher 811 811 die Initialisierungsprozedur des Chiffrierchips the initialization of the Cipher 311 311 ein, Zustand a, state 1803 1803 . , Die Chiffriervorrichtung wartet nicht darauf, dass die Initialisierung abgeschlossen ist. The Cipher is not waiting that the initialization is complete. Die Chiffriervorrichtung The Cipher 811 811 kopiert dann die MOAP then copies the MOAP 827 827 -Zeiger in interne Register der Chiffriervorrichtung Pointer into internal registers of the cryptographic 811 811 , Zustand , State 1805 1805 , und wartet dann darauf, dass die Initialisierung des Chiffrierchips , And then waits for the initialization of the Cipher Chip 311 311 abgeschlossen ist, Zustand is completed, state 1807 1807 . , Wenn der Chiffrierchip If the Cipher 311 311 initialisiert ist, gewinnt die Chiffriervorrichtung is initialized, the Cipher Device wins 811 811 den Iterationszählwert aus dem RAM, Zustand the iteration count from the RAM, state 1809 1809 , und bewegt ihren Primärzeiger, um auf den Anfang des Datenpakets zu zeigen, Zustand , And moves its primary pointer to point to the beginning of the data packet, state 1811 1811 . ,
  • [0283] [0283]
    Um eine gute Verschlüsselung zu erhalten, werden immer mehrere Wörter gleichzeitig verschlüsselt. In order to obtain a good encryption, several words are always encrypted. Bei dem bevorzugten Ausführungsbeispiel ist der Chiffrierchip In the preferred embodiment, the Cipher Chip is 311 311 immer an Vier-Wort- (Acht-Byte-) Datenblöcken wirksam. always to four word (eight-byte) blocks of data loss. Deshalb richtet die Chiffriervorrichtung Therefore directed the Cipher 811 811 im Zustand in the state 1813 1813 ihr Adressregister her address register 1203 1203 und ihr Zählerregister and their counter register 1201 1201 für einen Stoßmoduszugriff des RAM for a burst mode access the RAM 309 309 ein, und im Zustand , and in the state 1815 1815 greift die Chiffriervorrichtung engages the Cipher 811 811 über die BAPC on the BAPC 825 825 viermal auf den RAM four times to the RAM 309 309 zu, um vier Datenwörter von dem Paket in den Chiffrierchip to four data words from the packet in the Cipher 311 311 zu leiten. to conduct.
  • [0284] [0284]
    In Zustand In state 1817 1817 dekrementiert die Chiffriervorrichtung decrements the Cipher 811 811 den Iterationszählwert. the iteration count. In Zustand In state 1819 1819 wartet die Chiffriervorrichtung waiting for the Cipher 811 811 darauf, dass die Verschlüsselung/Entschlüsselung durch den Chiffrierchip that the encryption / decryption by the Cipher Chip 311 311 abgeschlossen wird. is completed. Anschließend veranlasst die Chiffriervorrichtung Then causes the Cipher 811 811 die Übertragung des Datenblocks von dem Chiffrierchip the transmission of the data block from the Cipher Chip 311 311 zu dem RAM to the RAM 309 309 und wartet dann darauf, dass der Chiffrierchip and then waits for the Cipher Chip 311 311 die Übertragung der vier verschlüsselten/entschlüsselten Wörter zurück zu dem RAM the transfer of the four encrypted / decrypted words back to the RAM 309 309 abschließt, Zustand concludes, state 1821 1821 . ,
  • [0285] [0285]
    Nachdem die verschlüsselten/entschlüsselten Daten zurück in den RAM After the encrypted / decrypted data back to the RAM 309 309 geschrieben worden sind, bewirkt die Chiffriervorrichtung have been written, causes the Cipher 811 811 , falls der Iterationszählwert größer ist als Null, dass die gleiche Operation bei dem nächsten Vier-Wort-Block wiederholt wird durch ein Zurückkehren zu Zustand If the iteration count is greater than zero, that the same operation on the next four-word block is repeated by a return to state 1813 1813 . , Falls der Iterationszählwert Null ist, setzt die Chiffriervorrichtung das Erledigt-Flag, Zustand If the iteration count is zero, sets the Cipher the Done flag, state 1825 1825 , und wartet wieder auf das nächste grüne Flag von dem Mikroprozessor , And waits again for the next green flag from the microprocessor 302 302 . ,
  • LAN-zu-RAM LAN-to-RAM
  • [0286] [0286]
    Die LAN-zu-RAM-Vorrichtung (LTR) The LAN-to-RAM Device (LTR) 815 815 ist mit dem MOAP is the MOAP 827 827 , der Busentscheidungs- und Prioritätsschaltung , The bus arbitration and priority circuit 825 825 und über die LAN-Schnittstelle and via the LAN interface 817 817 mit dem LAN-Chip to the LAN chip 307 307 verbunden. connected. Die LTR The LTR 815 815 bewirkt die Übertragung von Datenpaketen von dem LAN-Chip causes the transfer of data packets from the LAN Chip 307 307 zu dem RAM to the RAM 309 309 . , Wenn der LAN-Chip If the LAN chip 307 307 Daten zu übertragen hat, erhebt der LAN-Chip Has data to transmit, rises the LAN chip 307 307