DE10017362B4 - Einrichtung und Verfahren zur Datenübergabe zwischen zwei Recheneinheiten - Google Patents

Einrichtung und Verfahren zur Datenübergabe zwischen zwei Recheneinheiten Download PDF

Info

Publication number
DE10017362B4
DE10017362B4 DE10017362A DE10017362A DE10017362B4 DE 10017362 B4 DE10017362 B4 DE 10017362B4 DE 10017362 A DE10017362 A DE 10017362A DE 10017362 A DE10017362 A DE 10017362A DE 10017362 B4 DE10017362 B4 DE 10017362B4
Authority
DE
Germany
Prior art keywords
memory
control information
input
output
arithmetic unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE10017362A
Other languages
English (en)
Other versions
DE10017362A1 (de
Inventor
Michael Schneider
Peter Jung
Jörg PLECHINGER
Peter Schmidt
Burkhard Becker
Markus Doetsch
Tideya Kella
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies 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 Infineon Technologies AG filed Critical Infineon Technologies AG
Priority to DE10017362A priority Critical patent/DE10017362B4/de
Priority to US09/829,330 priority patent/US6950884B2/en
Publication of DE10017362A1 publication Critical patent/DE10017362A1/de
Application granted granted Critical
Publication of DE10017362B4 publication Critical patent/DE10017362B4/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4265Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus
    • G06F13/4273Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus using a clocked protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Abstract

Einrichtung zur bidirektionalen Übergabe von Daten zwischen einer ersten und einer zweiten Recheneinheit (RE1, RE2), wobei der zweiten Recheneinheit (RE2) ein mehrere Speicherblöcke umfassender Eingabe-Speicher (ES) zur Entgegennahme von Ausgabedaten der ersten Recheneinheit (RE1) und ein mehrere Speicherblöcke (sub_1_10) umfassender Ausgabe-Speicher (AS) zur Bereitstellung von Eingabedaten für die erste Recheneinheit (RE1) zugeordnet sind, mit
einem Eingabe-Steuerinformationsspeicher (C_ES) zur Speicherung einer Steuerinformation (e_si_1-10) für den Eingabe-Speicher (ES),
einem Ausgabe-Steuerinformationsspeicher (C AS) zur Speicherung einer Steuerinformation (e_so_1-10) für den Ausgabe-Speicher (AS),
wenigstens einem DMA-Kanal (DMA_KAN) zum Schreiben der Ausgabedaten der ersten Recheneinheit (RE1) in den Eingabe-Speicher (ES) und zum Auslesen der Eingabedaten für die erste Recheneinheit (RE1) aus dem Ausgabe-Speicher (AS), wobei
der Zugriff auf die Eingabe- und Ausgabe-Speicher (ES, AS) derart geregelt ist,
dass der Schreibzugriff der ersten Recheneinheit (RE1) und der Lesezugriff der zweiten Recheneinheit (RE2) auf den Eingabe-Speicher (ES) in Abhängigkeit von der in dem Eingabe-Steuerinformationsspeicher (C_ES) abgelegten Steuerinformation erlaubt oder verboten wird, und
dass der Schreibzugriff der zweiten Recheneinheit (RE2) und der Lesezugriff der ersten Recheneinheit (RE1) auf den Ausgabe-Speicher (AS) in Abhängigkeit von der in dem-Ausgabe-Steuerinformationsspeicher (C_AS) abgelegten Steuerinformation erlaubt oder verboten wird, dadurch gekennzeichnet,
dass die Steuerinformation für den Eingabe-Speicher (ES) für jeden Speicherblock (sub_1-10) des Eingabe-Speichers (ES) eine binäre Steuerinformation (e_si_1-10) umfaßt, und die Steuerinformation für den Ausgabe-Speicher (AS) für jeden Speicherblock (sub_1-10) des Ausgabe Speichers (AS) eine binäre Steuerinformation (e_so_1-10) umfaßt.

Description

  • Die Erfindung betrifft eine Einrichtung und ein Verfahren zur bidirektionalen Übergabe von Daten zwischen einer ersten und einer zweiten Recheneinheit.
  • In der digitalen Schaltungstechnik wird zur Datenübergabe zwischen zwei Rechen- oder Funktionseinheiten eine Schnittstelle eingesetzt. Eine Schnittstelle umfaßt üblicherweise einen Mikroprozessor, welcher als Adreß-Generator dient und ein Programm zum Auslesen eines Speicherbereichs z.B. der ersten Recheneinheit in einen Datenzwischenspeicher der Schnittstelle und ein Programm zum Schreiben der zwischengespeicherten Daten in einen Speicherbereich der zweiten Recheneinheit ausführt. Mit parallelen Schnittstellen können höhere Datenübertragungsraten als mit seriellen Schnittstellen erreicht werden.
  • Wesentlich höhere Datenübertragungsgeschwindigkeiten als mit einer herkömmlichen Schnittstelle lassen sich mit einem DMA(Direct Memory Access-)Kanal erreichen. Bei einem DMA-Kanal wird statt des Mikroprozessors ein Zähler als Adreß-Generator eingesetzt. Zur Initialisierung wird das Adreßregister mit der Startadresse des auszulesenden Speicherbereichs geladen und dem Byte-Zählregister wird die Anzahl der zu übertragenden Bytes mitgeteilt. Im Steuerregister des DMA-Kanals wird festgelegt, ob die Adressen aufwärts oder abwärts gezählt werden sollen und ob der Speicher, auf den zugegriffen wird, beschrieben oder ausgelesen werden soll. Die Datenübertragung kann blockweise durchgeführt werden und erfolgt ohne Abarbeitung eines Programms auf der Basis des Zähltakts. Zur Übertragung eines Datenworts von dem ersten Speicherbereich in den zweiten Speicherbereich werden zwei Zähltakte (ein Zähltakt für das Auslesen eines Datenworts aus dem ersten Spei cherbereich in den Zwischenspeicher der Schnittstelle und ein Zähltakt für das Schreiben des zwischengespeicherten Datenworts in den zweiten Speicherbereich) benötigt.
  • Wenn die eine Recheneinheit eine bestimmte Rechenroutine erst starten kann, wenn von der anderen Recheneinheit ein bestimmtes Zwischenergebnis vorliegt, und andersherum, ist neben dem Gesichtspunkt der maximalen Datenübertragungsrate der Schnittstelle auch der Gesichtspunkt einer möglichst reibungslosen gegenseitigen Ablaufsteuerung der Recheneinheiten zu beachten. Auch zu diesem Zweck wird üblicherweise ein Mikroprozessor eingesetzt, der unter Abarbeitung eines geeigneten Programms die Recheneinheiten aktiviert bzw. in einen Halte-Zustand versetzt.
  • In der deutschen Offenlegungsschrift DE 34 24 587 A1 ist eine Schaltungsanordnung zur Steuerung der bidirektionalen Datenübertragung zwischen einer Recheneinheit und über Ein-/Ausgabeeinheiten angeschlossenen Übertragungsleitungen beschrieben. Die Schaltungsanordnung umfaßt einen ersten Zwischenspeicher, welcher einer Eingabeeinheit zugeordnet ist, sowie einen zweiten Zwischenspeicher, über welchen der Datentransport einer Ausgabeeinheit abgewickelt wird. Jedem der Zwischenspeicher ist eine programmierbare Schwellenlogikeinheit zugeordnet.
  • In der deutschen Patentschrift DE 31 49678 C2 ist eine Anordnung zur Zwischenspeicherung von zwischen zwei Funktionseinheiten in beiden Richtungen zu übertragenden Informationen in einem Pufferspeicher beschrieben. Der Pufferspeicher wird von einer nach dem FIFO-Prinzip arbeitenden Warteschlangensteuerung in der Weise verwaltet, daß bis zur Belegung sämtlicher Speichereinheiten des Pufferspeichers jeweils eine freie Speichereinheit einer übergeordneten Übertragungssteuerung für die Entgegennahme von Aufträgen zum Informationsaustausch zugriffsbereit zur Verfügung steht. Dies wird durch ein spezielles Steuersignal angezeigt.
  • Der Erfindung liegt die Aufgabe zugrunde, eine Einrichtung und ein Verfahren zur bidirektionalen Übergabe von Daten zwischen einer ersten und einer zweiten Recheneinheit anzugeben, die bzw. das einen schnellen bidirektionalen Datentransfer zwischen und eine flexible und verzögerungsarme Ablaufkoordinierung von zwei Recheneinheiten ermöglicht.
  • Zur Lösung der Aufgabenstellung sind die Merkmale der unabhängigen Ansprüche vorgesehen.
  • Demnach ist zum einen durch die Verwendung eines DMA-Kanals für einen schnellstmöglichen Datentransfer zwischen den beiden Recheneinheiten gesorgt. Zum anderen ermöglichen die beiden Steuerinformationsspeicher auf einfache Weise eine effiziente und zeitsparende gegenseitige Prozeßsteuerung der beiden Recheneinheiten, und zwar dadurch, daß die Zugriffe beider Recheneinheiten auf die Eingabe- und Ausgabe-Speicher in Abhängigkeit von dem Inhalt der Eingabe- und Ausgabe-Steuerinformationsspeicher koordiniert werden. Dabei umfaßt die Steuerinformation für den Eingabe-Speicher für jeden Speicherblock des Eingabe-Speichers eine binäre Steuerinformation, und die Steuerinformation für den Ausgabe-Speicher umfaßt für jeden Speicherblock des Ausgabespeichers eine binäre Steuerinformation.
  • Dadurch, daß der Schreibzugriff der ersten Recheneinheit und der Lesezugriff der zweiten Recheneinheit auf den Eingabe- Speicher in Abhängigkeit von in dem Eingabe-Steuerinformationsspeicher abgelegter Steuerinformation geregelt wird, läßt sich sowohl verhindern, daß ein Speicherblock des Eingabe-Speichers von der ersten Recheneinheit mit neuen Daten überschrieben wird, bevor er von der zweiten Recheneinheit ausgelesen wurde, als auch, daß ein Speicherblock des Eingabe-Speichers von der zweiten Recheneinheit zum zweiten Mal ausgelesen wird, ohne daß zwischenzeitlich von der ersten Recheneinheit stammende neue Daten in diesem Speicherblock abgespeichert wurden. Durch die Eliminierung dieser beiden Fälle (Überschreiben ungelesener Daten und wiederholtes Auslesen identischer Daten) wird ein reibungsloser Ablauf des Datentransports von der ersten Recheneinheit zu der zweiten Recheneinheit sichergestellt.
  • Die Prozeßsteuerung in entgegengesetzter Datentransferrichtung erfolgt analog auf der Basis der in dem Ausgabe-Steuerinformationsspeicher abgelegten Steuerinformation. Durch die erfindungsgemäße Maßnahme kann verhindert werden, daß zur Ausgabe in einem Speicherblock des Ausgabe-Speichers abgelegte Daten vor der Weitergabe an die erste Recheneinheit ungelesen überschrieben werden und daß die erste Recheneinheit wiederholt Speicherblöcke des Ausgabe-Speichers liest, bei denen sich der Dateninhalt nicht geändert hat.
  • Im Ergebnis wird eine schnelle und datenverlustfreie Kommunikation zwischen den beiden Recheneinheiten erreicht, selbst dann, wenn in einer oder beiden Recheneinheiten unvorhersehbare Schwankungen der Datenverarbeitungsgeschwindigkeit auftreten.
  • Vorzugsweise erfolgt die Steuerung des Schreibzugriffs der ersten Recheneinheit derart, daß ein Speicherblock des Eingabe-Speichers nur dann beschrieben werden kann, wenn sich die binäre Steuerinformation zu diesem Speicherblock in einem ersten Zustand (z.B. 0) befindet. Nach dem Schreiben der Daten in den Speicherblock des Eingabe-Speichers wird die zuge hörige binäre Steuerinformation in den zweiten Zustand (z.B. 1) gesetzt. Vorzugsweise ist ein Lesezugriff der zweiten Recheneinheit auf einen Speicherblock des Eingabe-Speichers nur erlaubt, sofern die binäre Steuerinformation zu diesem Speicherblock in dem zweiten Zustand (1) vorliegt.
  • Die Schreib- und Lesezugriffe auf den Ausgabe-Speicher können durch Setzen bzw. Rücksetzen der binären Steuerinformationen in dem Ausgabe-Steuerinformationsspeicher in analoger Weise geregelt werden.
  • Eine besonders bevorzugte Ausgestaltung der Erfindung kennzeichnet sich dadurch, daß die erste Recheneinheit ein digitaler Signalprozessor (DSP) und die zweite Recheneinheit eine Hardware-Logikschaltung sind. Ein solcher Aufbau ermöglicht die Auslagerung von zeitaufwendigen Berechnungsprozeduren aus dem programmgesteuerten Datenverarbeitungsablauf des Signalprozessors in die vergleichsweise schnellere Hardware-Logikschaltung. Dabei schafft die erfindungsgemäße Datenübergabeeinrichtung die Voraussetzung für ein reibungsloses Zusammenwirken dieser beiden Recheneinheiten.
  • Mit besonderem Vorteil kommt die erfindungsgemäße Datenübergabeeinrichtung in einem solcherart aufgebauten Turbo-Decodierer eines Mobilfunkempfängers zum Einsatz. Erst durch die Ermöglichung eines schnellen Datenaustausches sowie einer gegenseitigen Ablaufsteuerung zwischen dem DSP und der Hardware-Logikschaltung wird eine Decodierung von Turbo-Codes im Bereich des Mobilfunks realisierbar.
  • Die Erfindung wird nachfolgend anhand eines Ausführungsbeispiels und Varianten desselben unter Bezugnahme auf die Zeichnung erläutert; in dieser zeigt:
  • 1 ein Blockschaltbild eines Ausführungsbeispiels der erfindungsgemäßen Datenübergabeeinrichtung;
  • 2A eine schematische Darstellung eines in Speicherblöcke unterteilten Eingabe-Speichers und eines zugehörigen Steuerinformationsspeichers;
  • 2B eine schematische Darstellung eines in Speicherblöcke unterteilten Ausgabe-Speichers und eines zugehörigen Ausgabe-Steuerinformationsspeichers;
  • 3 eine schematische Blockschaltbild-Darstellung eines Turbo-Decodierers für einen Mobilfunkempfänger, in welchem zwei erfindungsgemäße Datenübergabeeinrichtungen zwischen einem digitalen Signalprozessor und einer Hardware-Schaltung eingesetzt sind;
  • 4A eine schematische Darstellung eines Beispiels für eine Speicherbelegung des Eingabe-Steuerinformationsspeichers;
  • 4B eine schematische Darstellung eines Beispiels einer Speicherbelegung des Ausgabe-Steuerinformationsspeichers;
  • 4C eine schematische Darstellung eines weiteren Beispiels einer Speicherbelegung des Eingabe-Steuerinformationsspeichers zur Erläuterung von Speicherzugriffsabläufen; und
  • 4D eine schematische Darstellung eines weiteren Beispiels für eine Speicherbelegung des Ausgabe-Informationsspeichers zur Erläuterung von Speicherzugriffsabläufen.
  • Nach 1 umfaßt eine Einrichtung zur bidirektionalen Übergabe von Daten zwischen einer ersten Recheneinheit RE1 und einer zweiten, mit einem Eingabe-Speicher ES und einem Ausgabe-Speicher AS gekoppelten Recheneinheit RE2 einen DMA-Kanal DMA_KAN und eine Schnittstelle IF.
  • Die erste und die zweite Recheneinheit RE1, RE2, der bidirektionale DMA-Kanal DMA_KAN und die Eingabe- und Ausgabe-Speicher ES, AS können in bekannter Weise ausgeführt sein. Beispielsweise kann es sich bei der ersten Recheneinheit RE1 um einen mit Firmware betriebenen DSP und bei der zweiten Recheneinheit RE2 um eine schnelle, "festverdrahtete" Logikschaltung handeln.
  • Der DMA-Kanal DMA_KAN umfaßt eine Steuerung ST, einen Datenwort-Zähler CNT und ein Adreß-Register A_REG. Die Eingabe- und Ausgabe-Speicher ES und AS weisen jeweils einen Dateneingang DE und einen Datenausgang DA auf und sind in üblicher Weise mit einer Adreß-Ansteuerung AA ausgestattet.
  • Die Schnittstelle IF umfaßt einen Adreß-Decoder AD_ES für den Eingabe-Speicher, einen Adreß-Decoder AD_AS für den Ausgabe-Speicher sowie Zwischenspeicher ZS_E und ZS_A für die beiden Datentransferrichtungen von RE1 zu RE2 bzw. von RE2 zu RE1. Ferner umfaßt die Schnittstelle IF einen dem Eingabe-Speicher ES zugeordneten Eingabe-Steuerinformationsspeicher C_ES und einen dem Ausgabe-Speicher AS zugeordneten Ausgabe-Steuerinformationsspeicher C_AS.
  • 2A zeigt in schematischer Weise den organisatorischen Aufbau des Eingabe-Speichers ES und des zugehörigen Eingabe-Steuerinformationsspeichers C ES. Der Eingabe-Speicher ES ist beispielsweise in 10 Speicherblöcke sub_1, sub_2, .., sub_10 unterteilt. Jeder Speicherblock umfaßt beispielsweise 16 Datenworte einer Wortbreite von 10 Bit.
  • Der Eingabe-Steuerinformationsspeicher C_ES ist ein Register, das eine der Anzahl der Speicherblöcke in dem Eingabe-Speicher ES entsprechende Anzahl von Binärinformation speichern kann. In dem dargestellten Beispiel ist der Eingabe-Steuerinformationsspeicher C_ES somit ein 10-Bit-Register. Die Bits des Registers sind in 2A mit dem Bezugszeichen e_si_1, e_si_2, .., e_si_10 bezeichnet.
  • Der Aufbau des Ausgabe-Speichers AS (siehe 2B) entspricht in bezug auf die blockweise Partitionierung dem Aufbau des Eingabe-Speichers ES. Demzufolge weist der Ausgabe-Speicher AS ebenfalls beispielsweise 10 Speicherblöcke sub_1, sub_2, .., sub_10 auf.
  • Der Ausgabe-Steuerinformationsspeicher C_AS ist im dargestellten Beispiel ein 10-Bit-Register der Bits e_so_1, e_so_2, .., e_so_10.
  • Die Speicherblockgröße des Eingabe-Speichers ES (z.B. 16 × 10 Bit) und die Speicherblockgröße des Ausgabe-Speichers AS (z.B. 16 × 12 Bit) können unterschiedlich sein. Darüber hinaus können die beiden Speicher auch eine unterschiedliche Anzahl an Speicherblöcken enthalten.
  • Die Funktionsweise der erfindungsgemäßen Datenübertragungseinrichtung ist wie folgt:
    Zunächst wird die Datenübertragung von der ersten Recheneinheit RE1 zu der zweiten Recheneinheit RE2 (Eingabeprozedur) beschrieben. Sobald eine Eingabe-Steuerleitung EL von der ersten Recheneinheit RE1 aktiviert wird, kann der DMA-Kanal DMA_KAN über die Datenleitung DL1, den Zwischenspeicher ZS_E und die Datenleitung DL2 Daten in den Eingabe-Speicher ES schreiben. Hierzu wird der DMA-Steuerung ST die Zählrichtung und die Anfangsadresse im Eingabe-Speicher ES mitgeteilt. Der Zähler CNT generiert dann die Zieladressen (in ES) für die abzuspeichernden Daten. Da die Daten blockweise übertragen werden, entsprechen die Zieladressen den Adressen eines oder mehrerer Speicherblöcke sub_1, sub_2, .., sub_10 in dem Eingabe-Speicher ES.
  • Die Zieladressen der zu beschreibenden Speicherblöcke werden dem Adreß-Decoder AD ES über eine Adressleitung AL1 mitgeteilt. Dieser steht mit dem Eingabe-Steuerinformationsspeicher C ES in Verbindung.
  • Beispielsweise sollen die Speicherblöcke sub_5, sub_6 und sub_7 mit neuen Daten überschrieben werden. Der Adreß-Decoder AD ES oder eine andere zu diesem Zweck in der Schnittstelle IF vorgesehene Funktionseinheit überprüft, ob die entsprechenden Bits e_si_5, e_si_6 und e_si_7 jeweils den Wert 0 oder 1 aufweisen. Weisen sämtliche Bits den Wert 0 auf, werden die genannten Speicherblöcke mit den neuen Daten überschrieben und die diesen Speicherblöcken zugeordneten Bits e_si_5, e_si_6 und e_si_7 im Eingabe-Steuerinformationsspeicher C_ES auf den Wert 1 gesetzt. Andernfalls, d.h. sofern nur eines der den zu beschreibenden Speicherblöcken zugeordneten Bits e_si_5 oder e_si_6 oder e_si_7 den Wert 1 aufweist, sind zwei Abläufe möglich: Entweder wird die Datenübertragung (unabhängig von dem Wert des ersten Bits e_si_5) z.B. durch Deaktivierung einer DMA-Schreibaufforderung REQ_W gar nicht erst aufgenommen, d.h. keiner der Speicherblöcke sub_5, sub_6 und sub_7 wird beschrieben. Die betrachteten Speicherblöcke sub_5, sub_6, sub_7 werden dann erst zu einem späteren Zeitpunkt, wenn die genannte Bedingung erfüllt ist, überschrieben. Die zweite, hier bevorzugte Möglichkeit besteht darin, daß, sofern das erste Bit e_si_5 den Wert 0 aufweist, der Schreibzugriff zunächst durch Beschreiben des Speicherblocks sub_5 begonnen und erst mit Erreichen des ersten Speicherblockes, dessen Bit im Eingabe-Steuerinformationsspeicher C_ES den Wert 1 aufweist, abgebrochen wird.
  • Das Auslesen des Eingabe-Speichers ES durch die zweite Recheneinheit RE2 wird ebenfalls blockweise durchgeführt. Zu diesem Zweck überprüft die zweite Recheneinheit RE2 mit in nicht näher dargestellten Mitteln ebenfalls den Wert derjenigen Bits des Eingabe-Steuerinformationsspeichers C_ES, die den auszulesenden Speicherblöcken zugeordnet sind. Sofern sämtliche Bits den Wert 1 aufweisen, werden der oder die Speicherblöcke über den Datenausgang DA des Eingabe-Speichers ES ausgelesen. Wenn nur ein einem der auszulesenden Speicherblöcke zugeordnetes Bit des Eingabe-Steuerinformationsspeichers C_ES den Wert 0 aufweist, wird die Leseprozedur entweder gar nicht erst aufgenommen oder bei Erreichen des Speicherblocks, dessen Bit den Wert 0 hat, abgebrochen. Da keine neuen Daten bereitstehen, wird die zweite Recheneinheit RE2 danach automatisch oder z.B. über eine Steuerleitung W01 in einen Wartezustand versetzt.
  • Wenn (nach einem erneuten Schreibzugriff des DMA-Kanals DMA_KAN) ein erstes oder sämtliche den auszulesenden Speicherblöcken zugeordneten Bits des Eingabe-Steuerinformationsspeichers C_ES den Wert 1 aufweisen, wird der Wartezustand aufgehoben und die zugehörigen Speicherblöcke des Eingabe-Speichers ES werden von RE2 über den Datenausgang DA ausgelesen.
  • Unmittelbar nach dem Auslesen eines jeden Speicherblocks sub_1, sub_2, .., sub_10 des Eingabe-Speichers ES wird das zugehörige Bit e_si_1, e_si_2, .., e_si_10 des Eingabe-Steuerinformationsspeicher C ES auf den Wert 0 zurückgesetzt. Der zugehörige Speicherblock sub_1, sub_2, .., sub_10 ist damit wieder für das Einschreiben von Daten der ersten Recheneinheit RE1 freigegeben.
  • Die Datenübergabe in entgegengesetzter Richtung erfolgt in analoger Weise. Z.B. über eine Ausgabe-Steuerleitung AL teilt die erste Recheneinheit RE1 dem DMA-Kanal DMA_KAN eine Lese-Aufforderung betreffend einen oder mehrere Speicherblöcke (z.B. sub_5, sub_6, sub_7) des Ausgabe-Speichers AS mit. Der DMA-Kanal DMA_KAN erzeugt in der bereits beschriebenen Weise die entsprechenden Datenwort- bzw. Speicherblock-Adressen. Diese werden dem Adreß-Decoder AD_AS für den Ausgabe-Speicher AS über eine Adressleitung AL2 mitgeteilt. Der Adreß-Decoder AD_AS oder eine andere Einheit in der Schnittstelle IF über prüft, ob die zugehörigen Bits des Ausgabe-Steuerinformationsspeichers C_AS (nämlich e_so_5, e_so_6, e_so_7, siehe 2B) den Wert 1 aufweisen. Ist dies der Fall, wird der DMA-Kanal DMA_KAN z.B. über Aktivierung einer DMA-Leseaufforderung REQ_R aktiviert und die Daten der genannten Speicherblöcke werden über eine Datenleitung DL3, den Zwischenspeicher ZS_A und eine Datenleitung DL4 ausgelesen. Nach Auslesen eines jeden Speicherblocks wird das dem Speicherblock zugeordnete Bit in dem Ausgabe-Steuerinformationsspeicher C_AS auf den Wert 0 zurückgesetzt.
  • Sofern eines der den auszulesenden Speicherblöcken sub_5, sub_6, sub_7 zugeordneten Register-Bits e_so_5, e_so_6, e-so-7 den Wert 0 aufweist, wird (gemäß einer der beiden bereits in Hinblick auf die Eingabe-Prozedur beschriebenen Möglichkeiten) entweder nur dieser Speicherblock oder es werden sämtliche von der Lese-Aufforderung betroffenen Speicherblöcke nicht ausgelesen. Die Recheneinheit RE1 wird dann selbsttätig oder z.B. über eine Leitung W02 in einen Wartezustand versetzt, bis das entsprechende Bit den Wert 1 aufweist, d.h. der zugehörige Speicherblock und damit ggf. auch folgende Speicherblöcke ausgelesen werden können.
  • Um das Überschreiben von noch nicht ausgelesenen Speicherblöcken sub_1, sub_2, .., sub_10 des Ausgabe-Speichers AS durch die zweite Recheneinheit RE2 auszuschließen, kann jeder Speicherblock des Ausgabe-Speichers AS nur dann beschrieben werden, wenn das zugehörige Bit des Ausgabe-Steuerinformationsspeichers C_AS den Wert 0 aufweist. Sobald ein Speicherblock sub_1, sub_2, .., sub_10 des Ausgabe-Speichers AS mit neuen Daten beschrieben ist, wird das zugehörige Bit des Ausgabe-Steuerinformationsspeichers C_AS auf den Wert 1 gesetzt. Der Speicherblock ist nun für einen Auslese-Zugriff freigegeben.
  • 3 zeigt ein Anwendungsbeispiel einer erfindungsgemäßen Datenübergabeeinrichtung in einem Turbo-Decodierer TDEC eines Mobilfunkempfängers. Der Turbo-Decodierer TDEC hat die Aufgabe, ein senderseitig mit einem Turbo-Code fehlerschutzcodiertes und über einen gestörten Kanal (Luftschnittstelle) übertragenes Funksignal zu decodieren. Funktionselemente des Turbo-Decodierers TDEC, die den in 1 dargestellten Elementen entsprechen, sind teilweise mit den gleichen Bezugszeichen wie in 1 versehen.
  • Die Erzeugung eines Turbo-Codes und Algorithmen für dessen Decodierung sind bekannt und beispielsweise in dem Buch "Analyse und Entwurf digitaler Mobilfunksysteme" von P. Jung, Stuttgart, B.G. Teubner, 1997, auf den Seiten 343 bis 368 beschrieben. Auf sie wird im folgenden nicht näher eingegangen. Generell kann jedoch gesagt werden, daß die Decodierung eines Turbo-Codes im Vergleich zu einem herkömmlichen Code einen ausgesprochen hohen Rechenaufwand erfordert und in einem Mobilfunkempfänger mit begrenzten Energieresourcen aus diesem Grunde bisher nicht realisierbar war.
  • Der in 3 dargestellte Turbo-Decodierer TDEC umfaßt einen MAP-(Maximum a-Posteriori-)Decodierer MAP_DEC, welcher ein Symbolschätzer ist, und mit dem Eingabe-Speicher ES und dem Ausgabe-Speicher AS ausgerüstet ist. Der MAP-Decodierer MAP_DEC entspricht der Recheneinheit RE2 in 1. Anstelle des MAP-Decodierers MAP_DEC kann z.B. auch ein Viterbi-Decodierer vorgesehen sein.
  • Der MAP-Decodierer MAP_DEC ist über einen bidirektionalen Bus DB mit der Schnittstelle IF verbunden. Die Schnittstelle IF steht über zwei programmierbare DMA-Kanäle DMA_KAN1 und DMA_KAN2 mit einem DSP (entspricht der ersten Recheneinheit RE1) in Datenaustauschverbindung. Jeder der beiden DMA-Kanäle DMA_KAN1 und DMA_KAN2 ist wie der in 1 dargestellte DMA-Kanal aufgebaut, jedoch nur für eine Datentransferrichtung ausgelegt. Der Datenaustausch zwischen dem DSP und den DMA-Kanälen DMA_KAN1/2 wird über eine interne DSP-Schnittstelle IFD und Datenleitungen DD bewerkstelligt. Adreß- und Steuer- Daten werden über ein in 3 mit den Bezugszeichen DA und SL gekennzeichnetes Bussystem zwischen den DMA-Kanälen DMA_KAN1/2 und dem DSP ausgetauscht. Der DSP hat ferner über die interne Schnittstelle IFD Zugriff auf einen Speicher APR_RAM, in welchem temporär Daten abgelegt werden, die über die beiden DMA-Kanäle DMA_KAN1/2 zwischen dem DSP und dem MAP-Decodierer MAP_DEC ausgetauscht werden.
  • Die Arbeitsweise des Turbo-Decodierers TDEC ist folgendermaßen. Der DSP nimmt ein von dem Mobilfunkempfänger detektiertes und demoduliertes Datensignal D in Form einer endlichen Folge aus Datensymbolen (z.B. Bits) entgegen. Die Datensymbolfolge D enthält die zu decodierenden Nutzdaten und Redundanzdaten, die bei der senderseitigen Turbo-Codierung den Nutzdaten hinzugefügt wurden. Die Aufgabe des Turbo-Decodierers TDEC besteht darin, die senderseitig codierte Nutzinformation mit möglichst hoher Erfolgsquote (d.h. geringer Bit-Fehlerrate) zu rekonstruieren. Zu diesem Zweck werden im wesentlichen drei Datenverarbeitungsschritte benötigt, nämlich eine statistische Aufbereitung der Daten (zur Berücksichtigung der erlittenen Funkübertragungs-Kanalstörungen), eine Ver- und Entschachtelung der Daten und einen Berechnungsschritt für die (nährungsweise) Schätzung der Werte der einzelnen Datensymbole (Symbolschätzung).
  • Die genannten Schritte müssen mehrfach wiederholt ausgeführt werden, um zuverlässige Schätzwerte für die zu ermittelnden Datensymbole zu bestimmen. Die Verfeinerung der Schätzwerte erfolgt im Rahmen des Iterationsprozesses. Eine Iterationsschleife umfaßt:
    • – eine erste Symbolschätzung auf der Basis eines ersten Teils von Redundanzdaten (in MAP_DEC)
    • – eine Verschachtelung der erzeugten ersten Schätzdaten (im DSP)
    • – eine statistische Aufbereitung der verschachtelten Daten (im DSP)
    • – eine zweite Symbolschätzung der statistisch aufbereiteten Daten mit einem zweiten Teil von Redundanzinformation (in MAP_DEC)
    • – eine Entschachtelung der erzeugten zweiten Schätzdaten (in DSP), und
    • – eine statistische Aufbereitung der entschachtelten Daten (in DSP).
  • Die beim Durchlaufen einer Iterationsschleife erzeugten entschachtelten zweiten Schätzdaten werden bei dem folgenden Iterationsdurchlauf als Rückkoppel-Information verwendet und beim ersten Symbolschätzschritt berücksichtigt.
  • Nach einer vorgegebenen Anzahl von Iterationsdurchläufen (beispielsweise 5) werden die zweiten Schätzdaten als Ausgabesignal U von dem DSP ausgegeben. Das erläuterte Iterationsverfahren ist bekannt und z.B. in dem genannten Buch von P. Jung beschrieben.
  • Gemäß der vorhergehenden Beschreibung müssen bei der hier vorgeschlagenen Aufteilung der Berechnungsschritte auf den DSP und den MAP-Decodierer MAP_DEC innerhalb einer Iterationsschleife vier Datenübergaben zwischen dem DSP und dem MAP-Decodierer MAP_DEC erfolgen. Der Datentransfer vom DSP zu dem MAP-Decodierer MAP_DEC wird über den ersten DMA-Kanal DMA_KAN1 abgewickelt und der Datentransfer vom MAP-Decodierer MAP_DEC zu dem DSP wird über den zweiten DMA-Kanal DMA_KAN2 abgewickelt.
  • 4A zeigt eine mögliche Belegung des Eingabe-Steuerinformationsspeichers C_ES bezüglich des DMA-Kanals DMA_KAN1 während der iterativen Turbo-Decodierung. Die den im Registerbereich Y liegenden Steuerinformationsbits zugeordneten Speicherblöcke des Eingabe-Speichers ES wurden von dem DMA-Kanal DMA_KAN1 mit neuen Daten (vom DSP) beschrieben und zur Prozessierung für den MAP-Decodierer MAP_DEC bereitgestellt. Die den in den Registerbereichen X liegenden Steuerinformations- Bits zugeordneten Speicherblöcke des Eingabe-Speichers ES sind von dem MAP-Decodierer MAP_DEC entweder bereits ausgelesen worden oder von dem DMA-Kanal DMA_KAN1 noch nicht beschrieben worden.
  • 4B zeigt eine mögliche Belegung des Ausgabe-Steuerinformationsspeichers C_AS im Zusammenhang mit dem Datentransfer über den DMA-Kanal DMA_KAN1. Die den Steuerinformationsbits in den Registerbereichen Y zugeordneten Speicherblöcke des Ausgabe-Speichers AS sind Ausgabewerte des MAP-Decodierers MAP_DEC, die zum Abruf über den DMA-Kanal DMA_KAN2 bereitstehen. Speicherblöcke des Ausgabe-Speichers AS, die den Steuerinformationsbits im Registerbereich X zugeordnet sind, wurden entweder bereits von dem DMA-Kanal DMA_KAN2 ausgelesen oder wurden von dem MAP-Decodierer MAP_DEC noch nicht berechnet und in den Ausgabe-Speicher AS geschrieben.
  • Die 4C und 4D zeigen weitere Beispiele für die Belegung der Eingabe- und Ausgabe-Steuerinformationsspeicher für einen der DMA-Kanäle DMA_KAN1/2 zur Erläuterung von Speicherzugriffsabläufen im Falle der Verwendung von zyklischen Eingabe- und Ausgabe-Speichern ES, AS. Bei zyklischen Speichern erfolgen Lese- und Schreib-Zugriffe immer in aufsteigender oder abfallender Speicherblock-Reihenfolge, wobei in Richtung aufsteigender Speicherblöcke nach Erreichen des letzten Speicherblocks sub_10 automatisch der Speicherblock sub_1 als nächster Speicherblock gelesen bzw. beschrieben wird und in Richtung abfallender Speicherblöcke nach Erreichen des ersten Speicherblocks sub_1 automatisch der Speicherblock sub_10 als nächster Speicherblock beschrieben bzw. ausgelesen wird. Die in dem Turbo-Decodierer TDEC eingesetzten Eingabe- und Ausgabe-Speicher ES, AS sind vorzugsweise solche zyklischen Speicher, da im Rahmen der Symbolschätzungen Vorwärtsrekursions- und Rückwärtsrekursionsläufe über mehrere benachbarte Datenblöcke zur Berechnung von Vorwärts- und Rückwärtsrekursions-Metrikwerten durchzuführen sind.
  • Gemäß 4C (Eingabe-Steuerinformationsspeicher C_ES) sind die Speicherblöcke sub_1 und sub_7 bis sub_10 zur Abarbeitung in dem MAP-Decodierer MAP_DEC bereit. Dabei soll sich eine Vorwärtsrekursion stets nur über einen einzigen, nämlich den i-ten Speicherblock erstrecken, während sich eine Rückwärtsrekursion ausgehend von dem i + 4-ten Speicherblock zurücklaufend bis auf den i-ten Speicherblock, d.h. über 5 Speicherblöcke, erstrecken soll.
  • Z.B. wird bei einer ersten Vorwärtsrekursion auf den dem Registerbereich YV zugeordneten Speicherblockbereich (d.h. den Speicherblock sub_7) zugegriffen. Da e_si_7 den Wert 1 hat, ist der Zugriff erfolgreich. Bei der anschließenden Rückwärtsrekursion sind die Speicherblöcke sub_1, sub_10, sub_9, sub_8 und sub_7 betroffen. Da sämtliche zugehörigen Steuerinformationsbits den Wert 1 aufweisen, ist auch der Zugriff im Rahmen der Rückwärtsrekursion erfolgreich.
  • Im nächsten Rekursionsschritt (nicht dargestellt) soll bei der Vorwärtsrekursion auf den Speicherblock sub_8 und bei der Rückwärtsrekursion auf die Speicherblöcke sub_2, sub_1, sub_10, sub_9 und sub_8 des Eingabe-Speichers ES zugegriffen werden. Während der Zugriff bei der Vorwärtsrekursion erfolgreich ist (da e_si_8 = 1), ist der Zugriff im Rahmen der Rückwärtsrekursion nicht erfolgreich, da e_si_2 = 0.
  • Folglich kann diese Rückwärtsrekursion nicht durchgeführt werden und der MAP-Decodierer MAP_DEC wird solange in einen Wartezustand versetzt, bis das Steuerinformationsbit e_si_2 auf den Wert 1 gesetzt wird.
  • Bei dem vorstehend beschriebenen Beispiel müssen die einzelnen Speicherblöcke sub_1, sub_2, .., sub_10 aufgrund der Durchführung von Vorwärts- und Rückwärtsrekursionen mehrfach auslesbar sein. Demzufolge werden die Eingabe-Steuerinformationsbits e_si_1, e_si_2, .., e_si_10 nicht bereits nach dem erstmaligen Auslesen des jeweiligen Speicherblocks, son dern erst nach Abarbeitung sämtlicher Vorwärts- und Rückwärtsrekursionen einer Metrikwerte-Berechnungsroutine auf den Wert 0 zurückgesetzt.
  • Das in 4D gezeigte Beispiel einer Speicherbelegung des Ausgabe-Steuerinformationsspeichers C_ES macht deutlich, daß der Schreib-Zugriff des MAP-Decodierers auf den Ausgabe-Speicher AS nicht mehr als 9 Speicherblöcke Vorsprung vor dem Auslese-Prozeß durch den DMA-Kanal DMA_KAN2 haben darf. Der Speicherblock sub_8 sei der nächste Speicherblock, der von dem DMA-Kanal DMA_KAN2 ausgelesen werden soll (was wegen e_so_8 = 1 möglich ist). Solange dies nicht geschehen ist, kann der MAP-Decodierer MAP_DEC zwar noch den Speicherblock sub_7, nicht jedoch den (noch ungelesenen) Speicherblock sub_8 mit neuen Daten beschreiben. Das heißt, daß der MAP-Decodierer MAP_DEC nach dem Beschreiben des Speicherblocks sub_7 in den Wartezustand versetzt wird.
  • Bei der in 4D dargestellten Speicherbelegung können die dem Registerbereich YV zugeordneten 9 Speicherblöcke sub_8 bis sub_10 sowie sub_1 bis sub_6 von dem DMA-Kanal DMA_KAN2 ausgelesen werden.
  • In entsprechender Weise ist bezüglich des Eingabe-Speichers ES sicherzustellen, daß das Einschreiben von Daten über den DMA-Kanal DMA_KAN1 mit einem Vorsprung von maximal 9 Speicherblöcken vor dem Auslesen der Speicherblöcke durch den MAP-Decodierer MAP_DEC erfolgt.

Claims (10)

  1. Einrichtung zur bidirektionalen Übergabe von Daten zwischen einer ersten und einer zweiten Recheneinheit (RE1, RE2), wobei der zweiten Recheneinheit (RE2) ein mehrere Speicherblöcke umfassender Eingabe-Speicher (ES) zur Entgegennahme von Ausgabedaten der ersten Recheneinheit (RE1) und ein mehrere Speicherblöcke (sub_1_10) umfassender Ausgabe-Speicher (AS) zur Bereitstellung von Eingabedaten für die erste Recheneinheit (RE1) zugeordnet sind, mit einem Eingabe-Steuerinformationsspeicher (C_ES) zur Speicherung einer Steuerinformation (e_si_1-10) für den Eingabe-Speicher (ES), einem Ausgabe-Steuerinformationsspeicher (C AS) zur Speicherung einer Steuerinformation (e_so_1-10) für den Ausgabe-Speicher (AS), wenigstens einem DMA-Kanal (DMA_KAN) zum Schreiben der Ausgabedaten der ersten Recheneinheit (RE1) in den Eingabe-Speicher (ES) und zum Auslesen der Eingabedaten für die erste Recheneinheit (RE1) aus dem Ausgabe-Speicher (AS), wobei der Zugriff auf die Eingabe- und Ausgabe-Speicher (ES, AS) derart geregelt ist, dass der Schreibzugriff der ersten Recheneinheit (RE1) und der Lesezugriff der zweiten Recheneinheit (RE2) auf den Eingabe-Speicher (ES) in Abhängigkeit von der in dem Eingabe-Steuerinformationsspeicher (C_ES) abgelegten Steuerinformation erlaubt oder verboten wird, und dass der Schreibzugriff der zweiten Recheneinheit (RE2) und der Lesezugriff der ersten Recheneinheit (RE1) auf den Ausgabe-Speicher (AS) in Abhängigkeit von der in dem-Ausgabe-Steuerinformationsspeicher (C_AS) abgelegten Steuerinformation erlaubt oder verboten wird, dadurch gekennzeichnet, dass die Steuerinformation für den Eingabe-Speicher (ES) für jeden Speicherblock (sub_1-10) des Eingabe-Speichers (ES) eine binäre Steuerinformation (e_si_1-10) umfaßt, und die Steuerinformation für den Ausgabe-Speicher (AS) für jeden Speicherblock (sub_1-10) des Ausgabe Speichers (AS) eine binäre Steuerinformation (e_so_1-10) umfaßt.
  2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, dass ein Schreibzugriff der ersten Recheneinheit (RE1) auf einen Speicherblock des Eingabe-Speichers (ES) nur dann erlaubt ist, wenn sich die binäre Steuerinformation zu diesem Speicherblock in einem ersten Zustand befindet.
  3. Einrichtung nach Anspruch 2, dadurch gekennzeichnet, dass ein Lesezugriff der zweiten Recheneinheit (RE2) auf einen Speicherblock des Eingabe-Speichers (ES) nur dann erlaubt ist, wenn sich die binäre Steuerinformation zu diesem Speicherblock in dem zweiten Zustand befindet.
  4. Einrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass ein Lesezugriff der ersten Recheneinheit (RE1) auf einen Speicherblock des Ausgabe-Speichers (AS) nur dann erlaubt ist, wenn sich die binäre Steuerinformation zu diesem Speicherblock in einem ersten Zustand befindet.
  5. Einrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass ein Schreibzugriff der zweiten Recheneinheit (RE2) auf einen Speicherblock des Ausgabe-Speichers (AS) nur dann erlaubt ist, wenn sich die binäre Steuerinformation zu diesem Speicherblock in dem zweiten Zustand befindet.
  6. Einrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass bei unterschiedlicher Speichergröße des Ausgabe-Speichers (AS) und des Eingabe-Speichers (ES) die Anzahl der Speicherblöcke in beiden Speichern identisch ist.
  7. Einrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Eingabe- und/oder Ausgabe-Speicher (ES, AS) zyklische Speicher sind.
  8. Einrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die erste Recheneinheit (RE1) ein digitaler Signalprozessor und die zweite Recheneinheit (RE2) eine Hardeware-Logikschaltung sind.
  9. Verwendung einer Einrichtung nach Anspruch 8 in einem Turbo-Decodierer für einen Mobilfunkempfänger.
  10. Verfahren zur bidirektionalen Übergabe von Daten zwischen einer ersten und einer zweiten Recheneinheit, wobei der zweiten Recheneinheit (RE2) ein mehrere Speicherblöcke (sub_1-10) umfassender Eingabe-Speicher (ES) zur Entgegennahme von Ausgabedaten der ersten Recheneinheit (RE1) und ein mehrere Speicherblöcke (sub_1-10) umfassender Ausgabe-Speicher (AS) zur Bereitstellung von Eingabedaten für die erste Recheneinheit (RE1) zugeordnet sind, und wobei eine Steuerinformation (e_si_1-10) für den Eingabe-Speicher (ES) in einem Eingabe-. Steuerinformationsspeicher (C_ES) speicherbar und eine Steuerinformation (e_so_1-10) für den Ausgabe-Speicher (AS) in einem einem Ausgabe-Steuerinformationsspeicher (C_AS) speicherbar sind, dadurch gekennzeichnet, dass die Steuerinformation für den Eingabe-Speicher (ES) für jeden Speicherblock (sub_1-10) des Eingabe-Speichers (ES) eine binäre Steuerinformation (e_si_1-10) umfaßt, in Abhängigkeit von welcher ein über einen DMA-Kanal (DMA_KAN) erfolgender Schreibzugriff der ersten Recheneinheit (RE1) und ein Lesezugriff der zweiten Recheneinheit (RE2) auf den Eingabe-Speicher (ES) erlaubt oder verboten wird, und – dass die Steuerinformation für den Ausgabe-Speicher (AS) für jeden Speicherblock (sub_1-10) des Ausgabe-Speichers (AS) eine binäre Steuerinformation (e_so_1-10) umfaßt, – in Abhängigkeit von welcher ein Schreibzugriff der zweiten Recheneinheit (RE2) und ein über einen DMA-Kanal (DMA_KAN) erfolgender Lesezugriff der ersten Recheneinheit (REl) auf den Ausgabe-Speicher (AS) erlaubt oder verboten wird.
DE10017362A 2000-04-07 2000-04-07 Einrichtung und Verfahren zur Datenübergabe zwischen zwei Recheneinheiten Expired - Lifetime DE10017362B4 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE10017362A DE10017362B4 (de) 2000-04-07 2000-04-07 Einrichtung und Verfahren zur Datenübergabe zwischen zwei Recheneinheiten
US09/829,330 US6950884B2 (en) 2000-04-07 2001-04-09 Device and method for bidirectional data transfer between two processors wherein DMA channel provides improved data transfer between processors

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10017362A DE10017362B4 (de) 2000-04-07 2000-04-07 Einrichtung und Verfahren zur Datenübergabe zwischen zwei Recheneinheiten

Publications (2)

Publication Number Publication Date
DE10017362A1 DE10017362A1 (de) 2001-10-18
DE10017362B4 true DE10017362B4 (de) 2004-02-12

Family

ID=7637947

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10017362A Expired - Lifetime DE10017362B4 (de) 2000-04-07 2000-04-07 Einrichtung und Verfahren zur Datenübergabe zwischen zwei Recheneinheiten

Country Status (2)

Country Link
US (1) US6950884B2 (de)
DE (1) DE10017362B4 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7899957B1 (en) * 2003-12-30 2011-03-01 Altera Corporation Memory controller having a buffer for providing beginning and end data

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3424587A1 (de) * 1984-07-04 1986-01-09 Standard Elektrik Lorenz Ag, 7000 Stuttgart Schaltungsanordnung zur steuerung der bidirektionalen datenuebertragung zwischen einer rechnereinheit und ueber ein-/ausgabeeinheiten angeschlossenen uebertragungsleitungen
DE3149478C2 (de) * 1981-04-16 1989-07-13 Laboratorios Vita, S.A., San Juan Despi, Barcelona, Es

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3149678C2 (de) 1981-12-15 1984-02-23 Siemens AG, 1000 Berlin und 8000 München Anordnung zur Zwischenspeicherung von zwischen zwei Funktionseinheiten in beiden Richtungen zu übertragenden Informationen in einem Pufferspeicher
US6237108B1 (en) * 1992-10-09 2001-05-22 Fujitsu Limited Multiprocessor system having redundant shared memory configuration
US5845130A (en) * 1996-09-11 1998-12-01 Vlsi Technology, Inc. Mailbox traffic controller

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3149478C2 (de) * 1981-04-16 1989-07-13 Laboratorios Vita, S.A., San Juan Despi, Barcelona, Es
DE3424587A1 (de) * 1984-07-04 1986-01-09 Standard Elektrik Lorenz Ag, 7000 Stuttgart Schaltungsanordnung zur steuerung der bidirektionalen datenuebertragung zwischen einer rechnereinheit und ueber ein-/ausgabeeinheiten angeschlossenen uebertragungsleitungen

Also Published As

Publication number Publication date
US6950884B2 (en) 2005-09-27
DE10017362A1 (de) 2001-10-18
US20010042144A1 (en) 2001-11-15

Similar Documents

Publication Publication Date Title
DE69328320T2 (de) Vorrichtung und Verfahren zur Datenübertragung zu und von einem Wirtrechnersystem
DE60204687T2 (de) Speicherkopierbefehl mit Angabe von Quelle und Ziel, der in der Speichersteuerung ausgeführt wird
DE69229716T2 (de) Schaltungsarchitektur zum mehrkanaligen DMA-Betrieb
DE69323790T2 (de) Verfahren und Vorrichtung für mehreren ausstehende Operationen in einem cachespeicherkohärenten Multiprozessorsystem
EP0013737A1 (de) Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem
DE19649258C2 (de) Bussystem und Verfahren zur Datenübertragung
DE4003759C2 (de) Verfahren und Anordnung zur Übertragung von Daten über einen Bus zwischen selektiv ankoppelbaren Stationen
DE3844033C2 (de) Speicherschaltung für ein Mikroprozessorsystem
DE69032723T2 (de) FIFO mit variablem Zuweisungszeiger
DE102006046417A1 (de) Datenverarbeitungssystem und Verfahren zum Extrahieren von Daten aus einem OneNAND-Flash-Speicher in ein RAM-Speicherbauelement
DE102008055892A1 (de) Abspeichern von Abschnitten eines Datenübertragungsdeskriptors in einem gecachten und einem nicht gecachten Adressbereich
DE102007004363A1 (de) Datenbaumstruktur zum automatischen Halten von Kontextinformationen
DE10164453A1 (de) Verfahren zum Verwalten von Daten
DE3841370A1 (de) Verfahren und vorrichtung fuer eine crc-berechnung
EP0651536A2 (de) Verfahren zur Wiederherstellung einer vorgegebenen Reihenfolge für ATM-Zellen
DE102014103347B4 (de) Bedingte Verkettungsglieder für Direct-Memory-Access-Controller
DE1499206C3 (de) Rechenanlage
DE69229213T2 (de) Verfahren und Cache-Speichersteuereinheit zum Holen von Daten für eine Zentraleinheit mit verringerter Wartezeit
DE1474033A1 (de) Schaltungsanordnung zum Anschluss von datenverarbeitenden Systemen an Nachrichtensysteme
EP0380509B1 (de) Messverfahren und messeinrichtung zur störungsanalyse digitaler übertragungswege
DE10017362B4 (de) Einrichtung und Verfahren zur Datenübergabe zwischen zwei Recheneinheiten
DE4114053A1 (de) Computersystem mit cachespeicher
EP0555456B1 (de) Verfahren zur datenübertragung und datenverarbeitungsanlage mit verteilten rechnerknoten
EP2294763A1 (de) Teilnehmerknoten eines kommunikationssytems mit funktional getrenntem sende-ereignisspeicher
DE68925524T2 (de) System zum Detektieren, dass Daten in einem Pufferspeicher gelöscht worden sind, insbesondere für einen Datenschalter

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R071 Expiry of right