DE19842849C2 - Verfahren und Anordnung zum Übertragen von digitalen Daten - Google Patents

Verfahren und Anordnung zum Übertragen von digitalen Daten

Info

Publication number
DE19842849C2
DE19842849C2 DE19842849A DE19842849A DE19842849C2 DE 19842849 C2 DE19842849 C2 DE 19842849C2 DE 19842849 A DE19842849 A DE 19842849A DE 19842849 A DE19842849 A DE 19842849A DE 19842849 C2 DE19842849 C2 DE 19842849C2
Authority
DE
Germany
Prior art keywords
data
memory
microprocessor
data bus
size
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE19842849A
Other languages
English (en)
Other versions
DE19842849A1 (de
Inventor
Arnim Mrasek
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Germany Holding GmbH
Original Assignee
Siemens AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Priority to DE19842849A priority Critical patent/DE19842849C2/de
Priority to US09/398,689 priority patent/US7000058B1/en
Publication of DE19842849A1 publication Critical patent/DE19842849A1/de
Application granted granted Critical
Publication of DE19842849C2 publication Critical patent/DE19842849C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0428Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
    • H04Q11/0435Details
    • H04Q11/0457Connection protocols

Description

Die Erfindung betrifft ein Verfahren zum Übertragen von digi­ talen Daten, die in Datenrahmen variabler Länge eingeteilt sind, von einem ersten Datenbus auf einen zweiten Datenbus nach den Patentansprüchen 1 und 3. Die Erfindung betrifft ferner eine Anordnung zum Übertragen von digitalen Daten nach dem Oberbegriff von Patentanspruch 5.
Das ISDN (Integrated Services Digital Network) stellt jedem Teilnehmer zwei sogenannte B-Kanäle zur Kommunikation mit an­ deren Teilnehmern zur Verfügung, sowie einen sogenannten D- Kanal, um mit dem ISDN-Netzwerk Signalisierungen bezüglich einer gewünschten Verbindung auszutauschen. Während das ISDN den Teilnehmern bei der Kommunikation in den B-Kanälen keine Datensicherung gewährleistet, erfordert das ISDN für den D- Kanal eine Datensicherung entsprechend den Anforderungen der Schicht 2 des ISO-OSI-Schichtenmodells (International Stan­ dardisation Organisation/Open Systems Interconnection Model). Bei ISDN wird hierzu das HDLC-Protokoll (High Level Data Link Control) eingesetzt.
In den Endgeräten und den Netzschnittstellen-Vorrichtungen für ISDN sind daher HDLC-Steuereinrichtungen vorgesehen, die die Datensicherungsinformation eines empfangenen D- Kanalrah­ mens prüfen und die einem zu sendenden D-Kanalrahmen eine Si­ cherungsinformation hinzufügen. Die Anmelderin vertreibt der­ artige Steuereinrichtungen unter der Produktbezeichnung PEB 2070 als integrierte Halbleiterbauelemente.
Ein eingehendes D-Kanalsignal wird einer HDLC-Empfängerlogik zugeführt, die die Sicherungsinformation des empfangenen D- Kanalsignals prüft. Das Ausgangssignal der HDLC- Empfängerlogik wird einem FIFO-Speicher fester Größe zuge­ führt. Ein Mikroprozessor entnimmt dem FIFO-Speicher block­ weise die darin enthaltenen Daten. In Senderichtung schreibt der Mikroprozessor blockweise Daten in einen FIFO- Sendespeicher. Eine HDLC-Sendelogik entnimmt dem FIFO- Sendespeicher die darin enthaltenen Daten, fügt einem voll­ ständigen D-Kanalrahmen eine Sicherungsinformation hinzu, und gibt das so erhaltene D-Kanalsignal aus.
Die prinzipiellen Vorgänge in Sende- und Empfangsrichtung bei den aus dem Stand der Technik bekannten Bauelementen sind in den Fig. 6a und 6b dargestellt. Die Fig. 6a und 6b zei­ gen den zeitlichen Ablauf von Signalen zwischen einer HDLC- Empfangsleitung, einem HDLC-Empfänger, der einen FIFO- Empfängerspeicher aufweist, einem Mikroprozessor, einem HDLC- Sender, der einen FIFO-Sendespeicher aufweist, und einer HDLC-Sendeleitung. Wenn an der HDLC-Empfangsleitung Daten eingehen, werden diese zunächst in den FIFO-Empfangsspeicher geschrieben. Wenn das Ende eines D-Kanalrahmens empfangen und in den FIFO-Empfangsspeicher eingetragen wird oder wenn der FIFO-Empfangsspeicher voll ist, sendet der HDLC-Empfänger an den Mikroprozessor ein Interrupt-Signal. Der Mikroprozessor liest daraufhin die in den FIFO-Empfangsspeicher geschriebe­ nen Daten und bestätigt dem HDLC-Empfänger diesen Vorgang mittels eines Signals Ack. Der Mikroprozessor wertet das emp­ fangene D-Kanalsignal aus und stellt ein zu sendendes D- Kanal-Antwortsignal zusammen. Der Mikroprozessor versichert sich mittels eines vom HDLC-Sender ausgegebenen Signals Stat, daß der FIFO-Sendespeicher bereit ist, Daten aufzunehmen. Der Mikroprozessor schreibt dann das D-Kanal-Antwortsignal in den FIFO-Sendespeicher. Der Mikroprozessor bestätigt dem HDLC- Sender mittels eines Signals Ack, daß die Daten vollständig sind. Der HDLC-Sender gibt daraufhin das D-Kanalantwortsignal auf die HDLC-Sendeleitung.
Fig. 6a und 6b zeigen die Abfolge von Empfangs- und Sende­ vorgängen im zeitlichen Ablauf. In Fig. 6a ist ein großer FIFO-Empfangsspeicher vorgesehen. Der HDLC-Empfänger löst beim Mikroprozessor immer dann einen Interrupt Int aus, wenn entweder der FIFO-Empfangsspeicher voll ist oder wenn die empfangenen D-Kanalsignale ein Byte aufweisen, das ein Rahmenende anzeigt. Die Länge eines D-Kanalrahmens ist varia­ bel und kann je nach Signalisierung größer oder kleiner als die Aufnahmekapazität des FIFO-Empfangsspeichers sein. Die Fig. 6a und 6b zeigen den Fall eines sehr langen D-Kanal­ rahmens, der um ein Vielfaches größer als die Kapazität des FIFO-Empfangsspeicher ist. Der Mikroprozessor wird in diesem Fall erst dann zur Übernahme der Daten aus dem FIFO- Empfangsspeicher mittels des Interrupts Int veranlaßt, wenn der FIFO-Empfangsspeicher voll ist. Da der Mikroprozessor erst dann ein Antwortsignal erzeugen kann, nachdem er die Da­ ten aus dem FIFO-Empfangsspeicher gelesen hat, dauert es die volle Länge des Lesens des ganzen FIFO-Empfangsspeichers, bis der Mikroprozessor Antwortdaten in den FIFO-Sendespeicher schreiben kann.
Die in solchen Situationen lange Antwortzeit des Mikroprozes­ sors kann in bestimmten Teilnehmerverbindungen zu Problemen führen. Dies ist insbesondere bei Datenverbindungen zwischen den Teilnehmern der Fall. Der Empfang einer D-Kanal- Signalisierung eines ersten Teilnehmers bei einem zweiten Teilnehmer muß dabei innerhalb einer vorbestimmten Zeit dem ersten Teilnehmer quittiert werden. Falls die zulässige Ant­ wortzeit überschritten wird, kommt es zu Störungen um Verbin­ dungsaufbau. Um dieses Problem zu beheben, besteht eine Lö­ sung darin, die Größe des FIFO-Empfangsspeichers zu verrin­ gern. Da auf diese Weise der FIFO-Empfangsspeicher in kürze­ ren Zeitabständen voll wird, wird der Mikroprozessor entspre­ chend früher über den Empfang eines zeitkritischen D-Kanal- Signals informiert. Die zulässige Antwortzeit kann dann ein­ gehalten werden. Ein erheblicher Nachteil dieser Lösung be­ steht jedoch darin, daß die Leistung des Mikroprozessors durch die höhere Anzahl von Interrupt-Signalen herabgesetzt wird.
Aus der DE 39 37 021 C2 ist eine Anordnung zur Datenübertra­ gung zwischen einer Zentraleinheit und mehreren Teilnehmern gemäß einem Zeitmultiplexverfahren bekannt. Die Anordnung um­ faßt einen Dual-Port-Speicher, wobei ein Bereich des Spei­ chers für Empfangsdaten und ein anderer für Sendedaten vorge­ sehen ist und die beiden Speicherbereiche durch einen von der Zentraleinheit gesteuerten Zeiger adressiert werden.
In der der EP 0 272 939 A2 wird vorgeschlagen, eine Vielzahl von Pufferspeichers zum Empfangen bzw. Senden von Daten vor­ zusehen, wobei zudem mehrere sogenannte "Idle-Pufferspeicher" vorgesehen sind, die ebenfalls zum Zwischenspeichern von Da­ ten verwendet werden können. Die jeweils zur Verfügung ste­ hende Anzahl von nichtverwendeten Idle-Pufferspeichern wird überwacht, um bei Unterschreiten eines bestimmten Grenzwerts die Verwendung der Idle-Pufferspeicher zu verwenden.
In der WO 95/06376 wird gelehrt, die von einem Sender stam­ menden Daten vor deren Weiterleitung an einen Empfänger in einem Speicher zwischen zu speichern. Die Größe der in dem Speicher zwischengespeicherten Datenpaketen entspricht je­ weils der Größe des Speichers.
Das technische Problem der Erfindung besteht daher darin, ei­ ne effiziente Anordnung und ein effizientes Verfahren zum Übertragen von digitalen Daten zwischen getrennten Bussyste­ men bereitzustellen.
Das Problem wird gelöst mit einem Verfahren mit den Merkmalen von Patentanspruch 1, einem Verfahren mit den Merkmalen von Patentanspruch 3 und einer Anordnung mit den Merkmalen von Patentanspruch 5. Bevorzugte Ausgestaltungen der Erfindung sind in den jeweiligen Unteransprüchen angegeben.
Ein Verfahren zum Übertragen von digitalen Daten, die in Da­ tenrahmen variabler Länge eingeteilt sind, von einem ersten Datenbus auf einen zweiten Datenbus, der asynchron zum ersten Datenbus betrieben wird und von einem Mikroprozessor gesteu­ ert wird, weist folgende Schritte auf: Die Daten werden vom ersten Datenbus in einen Speicher mit einstellbarer Größe ge­ schrieben. Eine Speichersteuereinheit teilt dem Mikroprozes­ sor in Form eines Interrupt mit, wenn der Speicher voll ist oder wenn das Ende eines Datenrahmens erreicht ist. Der Mi­ kroprozessor ermittelt von der Speichersteuereinheit die Men­ ge der vom Speicher zu lesenden Daten. Der Mikroprozessor liest diese Daten aus dem Speicher, stellt die Größe des Speichers ein, und bestätigt der Speichersteuereinheit den Empfang des Datenblocks.
Mit dem Schritt des Einstellens der Größe des Speichers hat der Mikroprozessor die Möglichkeit, die Größe des zu Verfü­ gung stehenden Datenspeichers einzustellen. Die Speichergröße wird dabei typischerweise anfänglich klein eingestellt, um nach dem Empfang des Beginns eines sehr langen Datenrahmens noch während der Übertragung des Datenrahmens auf die Maxi­ malgröße eingestellt zu werden. Auf diese Weise kann der Mi­ kroprozessor sehr frühzeitig und sehr kurz nach Eingang des Anfangs des langen Datenrahmens ein bestätigendes D-Kanal- Signal an den anderen Teilnehmer senden. Andererseits wird für die Übernahme der restlichen Teile des langen Datenrah­ mens eine geringere Anzahl von Interrupts beim Mikroprozessor ausgelöst, weil dieser zwischenzeitlich den zur Verfügung stehenden Speicherraum vergrößert hat. Die Leistungsfähigkeit des Mikroprozessors wird auf diese Weise nicht eingeschränkt, und es können dem anderen Teilnehmer kurze Antwortzeiten ge­ währleistet werden.
Es wird besonders bevorzugt, daß die Daten vor dem Speichern einer HDLC-Logik zugeführt werden, die prüft, ob die Daten korrekt empfangen wurden. Diese Vorgehensweise ist besonders vorteilhaft in einer Umgebung, in der die zu übertragenden Daten den Schicht-2-Anforderungen genügen müssen.
Ein anderes Verfahren zum Übertragen von digitalen Daten, die in Datenrahmen variabler Länge eingeteilt sind, von einem er­ sten Datenbus, der von einem Mikroprozessor gesteuert wird, auf einen zweiten Datenbus, der asynchron zum ersten Datenbus betrieben wird, weist die folgenden Schritte auf: Die Daten werden vom ersten Datenbus mit einstellbarer Größe geschrie­ ben. Eine Speichersteuereinheit teilt dem Mikroprozessor in der Form eines Interrupt mit, wenn der Speicher bereit ist, neue Daten vom ersten Datenbus aufzunehmen, oder der Mikro­ prozessor befragt die Speichersteuereinheit, ob der Speicher bereit ist, neue Daten vom ersten Datenbus aufzunehmen. Der Mikroprozessor schreibt Daten in den Speicher, stellt die Größe des Speichers ein, und bestätigt der Speichersteuerein­ heit das Ende der Daten. Die Daten werden dann auf den zwei­ ten Datenbus gelegt.
Dieses Verfahren ist besonders vorteilhaft einsetzbar für das Senden von Daten vom Mikroprozessor an einen Datenbus, der asynchron mit dem Mikroprozessor betrieben wird. Auch bei diesem Verfahren wird der Mikroprozessor mit einer geringeren Anzahl von Interrupt-Signalen belastet.
Es wird besonders bevorzugt, die Daten einer HDLC-Logik zuzu­ führen, bevor sie auf den zweiten Datenbus gelegt werden.
Diese HDLC-Logik fügt den vom Mikroprozessor gesendeten Daten Fehlerprüfdaten hinzu, die von einer empfangenden HDLC-Logik des fernen Verbindungsteilnehmers ausgewertet werden.
Eine Anordnung zum Übertragen von digitalen Daten, die in Da­ tenrahmen variabler Länge eingeteilt sind, von einem ersten Datenbus auf einen zweiten Datenbus, der asynchron zum ersten Datenbus betrieben wird und von einem Mikroprozessor gesteu­ ert und gelesen wird, weist einen Speicher auf, in den die vom ersten Datenbus empfangenen Daten geschrieben werden. Es ist darüber hinaus eine Steuereinrichtung vorgesehen, die die Zugriffe auf den Speicher durch den ersten Datenbus und den Mikroprozessor steuert. Die Anordnung ist dadurch gekenn­ zeichnet, daß die Größe des Speichers veränderbar ist. Dar­ über hinaus ist ein erstes Register vorgesehen, in das die Größe des Speichers eintragbar ist, und es ist ein zweites Register vorgesehen, in das die Menge der gerade in den Spei­ cher geschriebenen Daten eintragbar ist. Das erste Register ist in jedem Lesezyklus des Mikroprozessors veränderbar. Ein derartige Anordnung weist somit einen Speicher auf, der von dem Mikroprozessor zur Verfügung stehende Größe in einem er­ sten Register gespeichert ist.
Eine bevorzugte Anordnung weist eine HDLC-Logik auf, die zwi­ schen dem ersten Datenbus und den Speicher geschaltet ist. Die Anordnung ist dadurch in der Lage, Daten zu empfangen, die mit einer HDLC-Prüfinformation versehen sind.
Weitere Vorteile, Merkmale und Anwendungsmöglichkeiten der Erfindung ergeben aus der nachfolgenden Beschreibung von Aus­ führungsbeispielen in Verbindung mit der schematischen Zeich­ nung. In der Zeichnung zeigen:
Fig. 1 eine Anordnung zum Senden und Empfangen von Daten;
Fig. 2 den Ablaufplan einer Mikroprozessorroutine zum Ho­ len eines Datenblocks aus einem Empfangsspeicher;
Fig. 3 den zeitlichen Ablauf von Signalen zwi­ schen einem Mikroprozessor und einer HDLC-Sende- und Empfangsanordnung;
Fig. 4a bis 4e eine Veranschaulichung der Wirkungsweise der Erfindung;
Fig. 5 einen Ablaufplan einer Mikroprozessorrou­ tine zum Schreiben von Daten in einen Sendespeicher;
Fig. 6a und 6b den zeitlichen Verlauf von Signalübertra­ gungen zwischen einem Mikroprozessor und einem HDLC-Sender- und Empfänger nach dem Stand der Technik.
In der Anordnung von Fig. 1 ist ein Mikroprozessor 4 ge­ zeigt, der über eine Leitung RFIFO, einen Empfangsspeicher 1 in der Form eines FIFO und eine HDLC-Empfangslogik 3 D-Kanal- Signale von einer Leitung 5 empfängt. In umgekehrter Richtung sendet der Mikroprozessor 4 über eine Leitung XFIFO, einen Sendespeicher 9 in der Form einen FIFO und eine HDLC- Sendelogik 6 D-Kanal-Signale auf eine Leitung 7. Die Anord­ nung ist Teil einer ISDN-Schaltung, die B-Kanalsignale und D- Kanalsignale von einer ISDN-Schnittstelle, wie etwa einer S- oder T-Schnittstelle, sendet und empfängt, wobei der Mikro­ prozessor 4 das Empfangen, das Weiterverarbeiten und das Sen­ den von Daten steuert. Die in Fig. 1 gezeigte Anordnung dient dem Senden und Empfangen von D-Kanal-Signalen, die nach den Anforderungen des ISDN einem HDLC-Protokoll unterworfen sind. Da sowohl die Empfangsleitung 5 als auch die Sendelei­ tung 7 unabhängig vom Mikroprozessor 4 betrieben werden, ist in Empfangs- bzw. Senderichtung jeweils ein Zwischenspeicher vorgesehen, in der die gerade empfangenen Daten bis zur Wei­ terverarbeitung durch den Mikroprozessor 4 zwischengespei­ chert werden können bzw. in den der Mikroprozessor 4 Daten schreiben kann, um zu einem geeigneten Zeitpunkt auf die Sen­ deleitung 7 gelegt zu werden.
In Empfangsrichtung ist dem Empfangsspeicher 1 die HDLC- Empfangslogik 3 vorgeschaltet, in der das HDLC-Protokoll in Empfangsrichtung ausgeführt wird. In Senderichtung ist dem Sendespeicher 9 die HDLC-Sendelogik 6 nachgeschaltet, die das HDLC-Protokoll in Senderichtung ausführt. Die Zugriffe auf den Empfangsspeicher 1 und den Sendespeicher 9 werden von ei­ ner Empfangszugriffssteuerung 2 bzw. einer Sendezugriffs­ steuerung 8 gesteuert. Die Empfangszugriffssteuerung 2 tauscht Signale mit dem Empfangsspeicher 1 und dem Mikropro­ zessor 4 aus. Die Sendezugriffssteuerung 8 tauscht Signale mit dem Sendespeicher 9 dem Mikroprozessor 4 aus.
Der Empfangsspeicher 1 und der Sendespeicher 9 sind jeweils Speicherbereiche eines RAM. Der Empfangsspeicher 1 und der Sendespeicher 9 werden von der Empfangszugriffssteuerung 2 bzw. der Sendezugriffssteuerung 8 als FIFO-Speicher (first-in first-out) betrieben. Dabei ist die Größe des Empfangs-FIFO im Empfangsspeicher 1 und die größe des Sende-FIFO im Sen­ despeicher 9 jeweils einstellbar.
In Fig. 2 ist mit 21 der Anfang einer Mikroprozessorroutine "Get Block" bezeichnet, mit der der Mikroprozessor 4 Daten aus dem Empfangsspeicher 1 liest. In den Schritten 22 und 24 wird beim Mikroprozessor 4 durch die Empfangszugriffssteue­ rung 2 jeweils ein Interrupt ausgelöst. Der Interrupt RME (Receive Message End) von Schritt 22 wird dann ausgelöst, wenn der Empfangsspeicher 1 einen Eintrag enthält, der das Ende eines Datenrahmens bei der D-Kanalübertragung anzeigt. Der Interrupt RPF (Receive Pool Full) von Schritt 24 zeigt an, daß die in den Empfangs-FIFO geschriebenen Daten die mo­ mantane Größe des Empfangs-FIFO erreicht haben. Auf den Schritt 22 folgt im Schritt 23 das Lesen des Registers RBC (Receive Block Count), in dem die Anzahl der vom Mikroprozes­ sor 4 aus dem Empfangs-FIFO zu lesenden Daten eingetragen ist. Im Falle von Schritt 23 entspricht dies der Position des empfangenen ältesten Datenbytes, das das Ende eines Datenrah­ mens anzeigt. Im alternativen Fall folgt auf den Schritt 24 ein Schritt 25, in dem ebenfalls das Register RBC gelesen wird. In diesem Fall ist im Register RBC die momentane Größe des Empfangs-FIFO eingetragen.
In Schritt 26 liest der Mikroprozessor 4 den FIFO soweit aus, wie es der aus dem Register RBC gelesene Wert anzeigt. Im Falle eines Interrupts RME liest der Mikroprozessor 4 daher alle Bytes bis und einschließlich des das Rahmenende anzei­ genden Byte.
Im Falle des Interrupt RPF liest der Mikroprozessor 4 alle Bytes aus dem Empfangs-FIFO. Nachdem die Daten gelesen sind, schreibt der Mikroprozessor 4 in einem Schritt 27 in ein Re­ gister RFBS (Receive FIFO Block Size) in der Empfangszu­ griffssteuerung 2 die Größe des für den weiteren Datenempfang im Empfangsspeicher 1 zur Verfügung stehenden Empfänger-FIFO. In einem darauf folgenden Schritt 28 bestätigt der Mikropro­ zessor 4 der Empfangszugriffssteuerung 2, daß die Daten emp­ fangen sind. Dies erfolgt mit dem Signal RMC (Receive Message Complete). Die Mikroprozessorroutine von Fig. 2 endet mit dem Schritt 29.
Fig. 3 zeigt den zeitlichen Ablauf der Signale zwischen ei­ nem HDLC-Empfänger 3 und einem Mikroprozessor 4 für den Emp­ fang von Daten. Zunächst löst der HDLC-Empfänger 3 beim Mi­ kroprozessor 4 einen Interrupt Int aus. In dem in Fig. 3 dargestellten Fall ist eine sehr kleine FIFO-Größe einge­ stellt, so daß ein Interrupt in der Form eines RPF (Receive Pool Full) 24 ausgelöst wird. Nachdem der Mikroprozessor 4 in Schritt 25 die zu lesende Datenmenge ermittelt hat, liest er die Daten 31 aus dem Empfänger-FIFO des HDLC-Empfängers 3. Der Mikroprozessor 4 verarbeitet die empfangenen Daten 31, die im angegebenen Beispiel den Anfang eines D-Kanalrahmens darstellen, und erzeugt ein Antwortsignal, das an den ferner Teilnehmer gesendet werden soll. Dazu ermittelt der Mikropro­ zessor 4 den Status des HDLC-Senders 6, indem letzterer das Signal Stat an den Mikroprozessor 4 sendet. Der HDLC-Sender 6 zeigt damit an, daß er bereit ist, Daten vom Mikroprozessor 4 zu empfangen. Der Mikroprozessor 4 sendet die vorbereiteten Antwortdaten 32 an den HDLC-Sender und bestätigt dem HDLC- Sender 6 die gesendeten Daten 32 mit einem Signal Ack. Der HDLC-Sender 6 gibt dann die Sendedaten 32 auf die HDLC- Sendeleitung 7.
Nachdem der Mikroprozessor 4 die relativ kleine Datenmenge 31 eines langen D-Kanalrahmens vom HDLC-Empfänger 3 empfangen hat, befiehlt der Mikroprozessor 4 dem HDLC-Empfänger 3, die Größe des Empfänger-FIFO zu verändern. Der Mikroprozessor 4 sendet dazu den neuen Wert der Größe des Empfänger-FIFO mit­ tels des Signals RFBS. Im gezeigten Fall von Fig. 3 wird die Größe des Empfänger-FIFO auf die Maximalgröße von 32 Bytes eingestellt. Nachdem der Mikroprozessor 4 das Signal RFBS ge­ sendet hat, bestätigt er den Empfang der Daten 31 mittels ei­ nes Signal Ack, das in Fig. 2 durch das Signal RMC in Schritt 25 dargestellt ist.
Der HDLC-Empfänger 3 sendet im weiteren Verlauf ein weiteres Interrupt-Signal Int in der Form RPF, um anzuzeigen, daß der Empfänger-FIFO erneut voll ist. Der Mikroprozessor 4 liest die im Empfänger-FIFO enthaltenen Daten 33 und bestätigt das Lesen dieser Daten mit einem Signal Ack in der Form RMC. Der Mikroprozessor 4 hat nach Übernahme der Daten 33 den Schritt 27 von Fig. 2 übersprungen, weil eine Änderung der gerade eingestellten Größe des Empfänger-FIFO nicht durchgeführt werden soll.
Der Mikroprozessor 4 entscheidet anhand der bereits empfange­ nen Daten, ob eine Veränderung der Größe des Empfänger-FIFO erforderlich ist oder nicht. Typischerweise wird der Mikro­ prozessor 4 nach einer längeren Pause auf Empfängerseite die Größe des Empfänger-FIFO auf einen minimalen Wert einstellen.
Dadurch wird sichergestellt, daß ungeachtet dessen, ob der nächste empfangene D-Kanalrahmen sehr lang oder sehr kurz ist, in jedem Fall frühzeitig eine Antwort an den fernen Teilnehmer ausgegeben werden kann. Wenn die ersten Bytes ei­ nes D-Kanalrahmens beim Mikroprozessor 4 eingetroffen sind (die Länge des D-Kanalrahmens ist in den ersten Bytes des Rahmens enthalten), stellt der Mikroprozessor 4 die Größe des Empfänger-FIFO auf eine maximale Größe. Dadurch wird sicher­ gestellt, daß die verbleibenden Daten des langen D- Kanalrahmens mit einer möglichst geringen Anzahl von Inter­ rupt-Signalen an den Mikroprozessor 4 übergeben werden kön­ nen. Dies ist mit den empfangenen Datenblöcken 33 und 35 in Fig. 3 dargestellt. Sendeseitig sendet der Mikroprozessor 4 große Datenblöcke 34 und 36 an den HDLC-Sender 6.
Die Fig. 4a bis 4e veranschaulichen das Zusammenwirken des Empfangsspeichers 1 mit der Empfangszugriffssteuerung 2 und den Austausch von Signalen mit dem Mikroprozessor 4. In Fig. 4a ist eine Größe des Empfänger-FIFO von 4 Byte eingestellt. Die vom HDLC-Empfänger 3 empfangenen Daten übersteigen diese Grenze, so daß die Empfangszugriffssteuerung 2 beim Mikropro­ zessor 4 einen Interrupt in der Form des Signals RPF auslöst. Der Mikroprozessor 4 liest die vier Bytes aus dem vollen Emp­ fänger-FIFO und sendet zunächst das Signal RFBS = 16 Bytes und anschließend das Signal RMC (Receive Message Complete) an die Empfängerzugriffssteuerung 2 (dargestellt durch einen ge­ strichelten Pfeil zwischen den Fig. 4a und 4b).
Der HDLC-Empfänger 3 schreibt weitere Daten in den Empfangs­ speicher 1, so daß dieser erneut über die nun eingestellte Größe des Empfänger-FIFO von 16 Bytes gefüllt ist. Wie in Fig. 4c dargestellt, löst die Empfangszugriffssteuerung 2 er­ neut einen Interrupt RPF beim Mikroprozessor 4 aus. Der Mi­ kroprozessor 4 liest die 16 Bytes aus dem Empfänger-FIFO und bestätigt der Empfangszugriffssteuerung 2 mittels des Signals RMC den Empfang der Daten (dargestellt durch gestrichelten Pfeil zwischen den Fig. 4c und 4d).
Innerhalb der unverändert eingestellten Größe des Empfänger- FIFO von 16 Bytes befinden sich nun die Rahmenendebytes 41, 42 und 43 (siehe Fig. 4d). Die Rahmenendebytes 41, 42 und 43 zeigen jeweils das Ende eines D-Kanalrahmens an. Die Emp­ fangszugriffssteuerung 2 erkennt das Vorliegen des zuerst eingegangenen Rahmenendebytes 41 innerhalb der noch gültigen Größe des Empfänger-FIFO von 16 Bytes und löst beim Mikropro­ zessor 4 mittels des Signals RME (Receive Message End) einen Interrupt aus. Nach Empfang des D-Kanalrahmens, dessen Ende durch das Rahmenendebyte 41 angezeigt wird, löst die Emp­ fangszugriffssteuerung 2 beim Mikroprozessor 4 einen weiteren Interrupt RME aufgrund des nun vorliegenden Rahmenendebytes 42 aus. Letzteres ist in Fig. 4e dargestellt.
Fig. 5 zeigt eine Mikroprozessorroutine, um Daten in den Sende-FIFO zu schreiben. Die Routine beginnt mit dem Schritt 51. Im Schritt 52 teilt die Sendezugriffssteuerung 8 dem Mi­ kroprozessor 4 mittels eines Interupt XPR (Transmit Pool Rea­ dy) mit, daß der Sende-FIFO bereit ist, neue Daten aufzuneh­ men. Alternativ dazu kann der Mikroprozessor 4 von sich aus im Schritt 53 das Statusregister STAR lesen, um die Schreib­ berechtigung anhand des Bits XFW (Transmit FIFO Write) zu prüfen. Ist das Bit XFW auf 0 gesetzt, so können noch keine weiteren Daten geschrieben werden und die Routine verzeigt zurück an den Anfang 51. Mit dem gesetzten Bit XFW = 1 wird angezeigt, daß eine Schreibberechtigung vorliegt:
Sowohl im Falle des Interrupt XPR von Schritt 52 als auch im Falle des gesetzten Bits XFW von Schritt 54 schreibt der Mi­ kroprozessor 4 anschließend in Schritt 5 Daten in den Sende- FIFO. In Schritt 56 kann der Mikroprozessor 4 die Größe des Sende-FIFO einstellen, indem ein Register XFBS (Transmit FIFO Blocksize) entsprechend beschrieben wird. Der Schritt 56 ist, wie auch der Schritt 27 von Fig. 2 in der Empfangsrichtung, optional und kann übersprungen werden. In Schritt 57 bestä­ tigt der Mikroprozessor der Sendezugriffssteuerung 8 das Sen­ den von Daten in den Sende-FIFO mittels eines Signals XME (Transmit Message End). Die Mikroprozessorroutine von Fig. 5 endet mit dem Schritt 58.
In ähnlicher Weise wie in Empfangsrichtung kann auch in Sen­ derichtung die Größe des Sende-FIFO dargestellt werden. Dies erlaubt die Optimierung der Größe des Sende-FIFO abhängig von der Größe der zu sendenden D-Kanalrahmen. Die Anzahl ausgelö­ ster Interrupts XPR in Schritt 52 und die Anzahl erforderli­ cher Prüfungen des Bits XFW in Schritt 54 können auf diese Weise minimiert werden. Der Prozessor wird damit weiter ent­ lastet.
Eine große Zahl von Interrupts verursacht bei einem Mikropro­ zessor einen hohen Verabreitungsaufwand, da nach Eingang ei­ nes Interrupts der gerade beim Mikroprozessor vorliegende Verarbeitungstatus gesichert werden muß, um nach Bearbeitung des Interupts an dieser Stelle fortfahren zu können. Da die durch den Empfang von D-Kanaldaten ausgelösten Interrupts RME und RPF eine hohe Priorität haben, belastet eine große Anzahl solcher Interrupts die Leistungsfähigkeit des Mikroprozessor 4, der neben der D-Kanalverarbeitung noch eine Vielzahl wei­ terer Aufgaben erledigen muß. Die Erfindung erlaubt die Opti­ mierung der Größe des Empfänger-FIFO und des Sende-FIFO an­ hängig von der Größe der empfangenen D-Kanalrahmen bzw. der zu sendenden D-Kanalrahmen. Die Anzahl ausgelöster Interrupts RPF, RME bzw. XPR kann somit auf ein erforderliches Minimum reduziert werden. Gleichzeitig wird sichergestellt, daß die Erfordernisse kurzer Anwortzeiten nach Empfang des Anfangs eines D-Kanalrahmens eingehalten werden, indem vorübergehend eine entsprechend kleine Größe des Empfänger-FIFO eingestellt ist.

Claims (6)

1. Verfahren zum Übertragen von digitalen Daten, die in Da­ tenrahmen variabler Länge eingeteilt sind, von einem ersten Datenbus (5) auf einen zweiten Datenbus (7), der asynchron zum ersten Datenbus (5) betrieben wird und von einem Mikro­ prozessor (4) gesteuert wird, wobei das Verfahren die folgen­ den Schritte aufweist:
die Daten werden vom ersten Datenbus (5) in einen Speicher (1) mit einstellbarer Größe geschrieben;
eine Speichersteuereinheit (2) teilt dem Mikroprozessor (4) in der Form eines Interrupts mit, wenn der Speicher (1) voll ist (24) oder wenn der Speicher (1) einen das Ende des Daten­ rahmens anzeigenden Eintrag enthält;
der Mikroprozessor (4) ermittelt (23, 25) von der Speicher­ steuereinheit (2) die Menge der vom Speicher (1) zu lesenden Daten;
der Mikroprozessor (4) liest (26) die Daten aus dem Speicher (1);
der Mikroprozessor (4) stellt die Größe des Speichers (1) für einen anschließenden Schreibvorgang ein; und
der Mikroprozessor (4) bestätigt (28) der Speichersteuerein­ heit (2) den Empfang der aus dem Speicher (1) ausgelesenen Daten.
2. Verfahren nach Patentanspruch 1, dadurch gekennzeichnet, daß die Daten vom ersten Datenbus vor dem Schritt des Spei­ cherns einer HDLC-Logik (3) zugeführt werden, die prüft, ob die Daten korrekt empfangen wurden.
3. Verfahren zum Übertragen von digitalen Daten, die in Da­ tenrahmen variabler Länge eingeteilt sind, von einem ersten Datenbus (5), der von einem Mikroprozessor (4) gesteuert wird, auf einen zweiten Datenbus (7), der asynchron zum er­ sten Datenbus (5) betrieben wird, wobei das Verfahren die folgenden Schritte aufweist:
die Daten werden vom ersten Datenbus (5) in einen Speicher (9) mit einstellbarer Größe geschrieben;
eine Speichersteuereinheit (8) teilt dem Mikroprozessor (4) in der Form eines Interrupts mit, wenn der Speicher (9) be­ reit ist, neue Daten vom ersten Datenbus (5) aufzunehmen, oder der Mikroprozessor (4) befragt die Speichersteuereinheit (8), ob der Speicher (9) bereit ist, neue Daten vom ersten Datenbus (5) aufzunehmen;
der Mikroprozessor (4) schreibt (55) Daten in den Speicher (9);
der Mikroprozessor (4) stellt die Größe des Speichers (9) für einen anschließenden Schreibvorgang ein;
der Mikroprozessor (4) bestätigt (57) der Speichersteuerein­ heit (8) das Schreiben der Daten in den Speicher (9); und
die Daten werden auf den zweiten Datenbus (7) gelegt.
4. Verfahren nach Patentanspruch 3, dadurch gekennzeichnet, daß die Daten einer HDLC-Logik (6), die den Daten Fehlerprüf­ daten hinzufügt, zugeführt werden, bevor sie auf den zweiten Datenbus (7) gelegt werden.
5. Anordnung zum Übertragen von digitalen Daten, die in Da­ tenrahmen variabler Länge eingeteilt sind, von einem ersten Datenbus (5) auf einen zweiten Datenbus (7), der asynchron zum ersten Datenbus (5) betrieben wird und von einem Mikro­ prozessor (4) gesteuert wird, wobei die Anordnung aufweist:
einen Speicher (1), in den die vom ersten Datenbus (5) emp­ fangenen Daten geschrieben und anschließend von dem Mikropro­ zessor (4) ausgelesen werden; und
eine Steuereinrichtung (2) zum Steuern der Zugriffe auf den Speicher (1) durch den ersten Datenbus (5) und den Mikropro­ zessor (4);
dadurch gekennzeichnet,
daß ein Register (RBC) vorgesehen ist, in das die Menge der gerade in den Speicher (1) geschriebenen und von dem Mikro­ prozessor (4) auszulesenden Daten eintragbar ist;
daß die Größe des Speichers (1) veränderbar ist; und
daß ein weiteres Register (RFBS) vorgesehen ist, in das die Größe des Speichers (1) für einen anschließenden Schreibvor­ gang eintragbar ist;
wobei der Inhalt des weiteren Registers (RFBS) mit jedem Le­ sezyklus des Mikroprozessors (4) veränderbar ist.
6. Anordnung nach Patentanspruch 5, gekennzeichnet durch eine HDLC-Logik (3), die zwischen den ersten Datenbus (5) und den Speicher (1) geschaltet ist.
DE19842849A 1998-09-18 1998-09-18 Verfahren und Anordnung zum Übertragen von digitalen Daten Expired - Fee Related DE19842849C2 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE19842849A DE19842849C2 (de) 1998-09-18 1998-09-18 Verfahren und Anordnung zum Übertragen von digitalen Daten
US09/398,689 US7000058B1 (en) 1998-09-18 1999-09-20 Method and configuration for transmitting digital data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19842849A DE19842849C2 (de) 1998-09-18 1998-09-18 Verfahren und Anordnung zum Übertragen von digitalen Daten

Publications (2)

Publication Number Publication Date
DE19842849A1 DE19842849A1 (de) 2000-03-23
DE19842849C2 true DE19842849C2 (de) 2001-02-01

Family

ID=7881437

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19842849A Expired - Fee Related DE19842849C2 (de) 1998-09-18 1998-09-18 Verfahren und Anordnung zum Übertragen von digitalen Daten

Country Status (2)

Country Link
US (1) US7000058B1 (de)
DE (1) DE19842849C2 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI324305B (en) * 2006-06-14 2010-05-01 Via Tech Inc Embedded system and related buffer size determining method thereof
DE102007061724A1 (de) * 2007-12-20 2009-06-25 Robert Bosch Gmbh Verfahren zum Übertragen von Daten in einem zyklusbasierten Kommunikationssystem

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0272939A2 (de) * 1986-12-23 1988-06-29 Oki Electric Industry Company, Limited System zur dynamischen Pufferüberwachung zur Steuerung eines Datenverbindungszugriffsprotokolls
DE3937021A1 (de) * 1989-11-07 1991-05-08 Licentia Gmbh Anordnung zur datenuebertragung zwischen einer zentralen einheit und an diese ueber einen seriellen bus angeschlossenen teilnehmern
WO1995006375A1 (en) * 1993-08-26 1995-03-02 Erann Gat High-speed digital communications network

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63292747A (ja) * 1987-05-25 1988-11-30 Hitachi Ltd バツフア管理方式
US5495482A (en) * 1989-09-29 1996-02-27 Motorola Inc. Packet transmission system and method utilizing both a data bus and dedicated control lines
JPH0451735A (ja) * 1990-06-20 1992-02-20 Toshiba Corp ブリッジ装置
US5386438A (en) * 1993-09-14 1995-01-31 Intel Corporation Analog front end integrated circuit for communication applications
JP3740195B2 (ja) * 1994-09-09 2006-02-01 株式会社ルネサステクノロジ データ処理装置
US5506747A (en) * 1994-12-15 1996-04-09 Northern Telecom Limited Provision of FIFO buffer in RAM
EP0718773A1 (de) * 1994-12-19 1996-06-26 Advanced Micro Devices, Inc. Buszugriffsarbiter
US5673416A (en) * 1995-06-07 1997-09-30 Seiko Epson Corporation Memory request and control unit including a mechanism for issuing and removing requests for memory access
IL117134A (en) * 1996-02-14 2000-01-31 Galileo Technology Ltd First-in first-out (fifo) buffer
US6122717A (en) * 1996-06-17 2000-09-19 Integrated Device Technology, Inc. Methods and apparatus for a memory that supports a variable number of bytes per logical cell and a variable number of cells
US5915104A (en) * 1997-01-09 1999-06-22 Silicon Graphics, Inc. High bandwidth PCI to packet switched router bridge having minimized memory latency

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0272939A2 (de) * 1986-12-23 1988-06-29 Oki Electric Industry Company, Limited System zur dynamischen Pufferüberwachung zur Steuerung eines Datenverbindungszugriffsprotokolls
DE3937021A1 (de) * 1989-11-07 1991-05-08 Licentia Gmbh Anordnung zur datenuebertragung zwischen einer zentralen einheit und an diese ueber einen seriellen bus angeschlossenen teilnehmern
WO1995006375A1 (en) * 1993-08-26 1995-03-02 Erann Gat High-speed digital communications network

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Siemens AG:ICs for Communication, Product Overview07.96, PEB 2070, S. 107, 108 *

Also Published As

Publication number Publication date
US7000058B1 (en) 2006-02-14
DE19842849A1 (de) 2000-03-23

Similar Documents

Publication Publication Date Title
DE4440545C2 (de) Verfahren zur Verarbeitung von Rufen bei einer Telefonanlage
EP1101329B1 (de) Brückenmodul
DE3103786C2 (de) Datenübertragungsanordnung
EP0692893B1 (de) Vorrichtung zur Vermittlung in digitalen Datennetzen für asynchronen Transfermodus
DE60305560T2 (de) Eingebettetes System für die Überlastregelung von Rundfunkverkehr in einem Kommunikationsnetzwerk
DE19842849C2 (de) Verfahren und Anordnung zum Übertragen von digitalen Daten
EP0985305B1 (de) Verfahren und vorrichting zur übertragung eines kontinuierlichen datenstroms in paketierter form
WO2006056605A1 (de) Kommunikationsbausteinanordnung mit einem schnittstellenmodul und schnittstellenmodul
WO2001020416A2 (de) Serielle datenübertragung über ein bussystem
DE2803595C3 (de) Indirekt gesteuerte Vermittlungsanlage, insbesondere für Fernsprechzwecke
EP0673136A1 (de) Verfahren und Schaltungsanordnung zum Steuern der Übertragung von Nachrichtenblöcken innerhalb eines Übertragungssystems
EP0133577B1 (de) Datenübertragungsverfahren in einem digitalen Übertragungsnetzwerk und Vorrichtung zur Durchführung des Verfahrens
EP0105212B1 (de) Schaltungsanordnung zum Übertragen von Signalen zwischen Teilnehmeranschlussleitungen und wenigstens einer Übertragungsleitung einer dienstintegrierten Fernmeldeanlage
DE3003340A1 (de) Verfahren und schaltungsanordnung zur uebertragung von binaeren signalen zwischen ueber ein zentrales busleitungssystem miteinander verbundenen anschlussgeraeten
DE4417777C2 (de) Kommunikationssystem
DE69933377T2 (de) Ressourcenschnittstelleneinheit für einen fernmeldevermittlungsknoten
EP0477627B1 (de) Verfahren zum Verbinden von Kommunikationsendgeräten in diensteintegrierenden Kommunikationsnetzen
EP0010264B1 (de) Fernschreib-Nebenstellenanlage
DE4122831A1 (de) Integrierte halbleiterschaltung
DE19542715A1 (de) Verfahren zum Übertragen von binären, asynchronen Daten über einen synchronen Kanal
DE2828841C3 (de) Schaltungsanordnung für Fernmeldevermittlungsanlagen, insbesondere Fernsprechvermittlungsanlagen, mit gemeinsamen Steuerwerken und ihnen zugeordneten Speichern
DE2835131C2 (de)
DE19530783C2 (de) Verfahren zur digitalen Übertragung von nachrichtentechnischen Diensten
EP0412413B1 (de) Schaltungsanordnung für Festverbindungen in digitalen Kommunikationsnetzen
DE3011759A1 (de) Verfahren und schaltungsanordnung zum aufnehmen und abgeben von datenbloecken, insbesondere fuer eisenbahnanlagen

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: INFINEON TECHNOLOGIES AG, 85579 NEUBIBERG, DE

8327 Change in the person/name/address of the patent owner

Owner name: LANTIQ DEUTSCHLAND GMBH, 85579 NEUBIBERG, DE

R081 Change of applicant/patentee

Owner name: LANTIQ DEUTSCHLAND GMBH, DE

Free format text: FORMER OWNER: INFINEON TECHNOLOGIES AG, 85579 NEUBIBERG, DE

Effective date: 20110325

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee