DE10195203B3 - Verfahren zur Erzeugung einer Konfiguration für ein konfigurierbares Kommunikationsgerät sowie elektronisches Gerät und computerlesbares Medium - Google Patents

Verfahren zur Erzeugung einer Konfiguration für ein konfigurierbares Kommunikationsgerät sowie elektronisches Gerät und computerlesbares Medium Download PDF

Info

Publication number
DE10195203B3
DE10195203B3 DE10195203.1T DE10195203T DE10195203B3 DE 10195203 B3 DE10195203 B3 DE 10195203B3 DE 10195203 T DE10195203 T DE 10195203T DE 10195203 B3 DE10195203 B3 DE 10195203B3
Authority
DE
Germany
Prior art keywords
communication device
computer
configurable communication
configurable
operations
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
DE10195203.1T
Other languages
English (en)
Other versions
DE10195203T1 (de
Inventor
Ravi Subramanian
Christopher Woodthorpe
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
Publication of DE10195203T1 publication Critical patent/DE10195203T1/de
Application granted granted Critical
Publication of DE10195203B3 publication Critical patent/DE10195203B3/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/69Spread spectrum techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/0003Software-defined radio [SDR] systems, i.e. systems wherein components typically implemented in hardware, e.g. filters or modulators/demodulators, are implented using software, e.g. by involving an AD or DA conversion stage such that at least part of the signal processing is performed in the digital domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/69Spread spectrum techniques
    • H04B1/707Spread spectrum techniques using direct sequence modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B2201/00Indexing scheme relating to details of transmission systems not covered by a single group of H04B3/00 - H04B13/00
    • H04B2201/69Orthogonal indexing scheme relating to spread spectrum techniques in general
    • H04B2201/707Orthogonal indexing scheme relating to spread spectrum techniques in general relating to direct sequence modulation
    • H04B2201/70707Efficiency-related aspects
    • H04B2201/7071Efficiency-related aspects with dynamic control of receiver resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B2201/00Indexing scheme relating to details of transmission systems not covered by a single group of H04B3/00 - H04B13/00
    • H04B2201/69Orthogonal indexing scheme relating to spread spectrum techniques in general
    • H04B2201/707Orthogonal indexing scheme relating to spread spectrum techniques in general relating to direct sequence modulation
    • H04B2201/70707Efficiency-related aspects
    • H04B2201/7071Efficiency-related aspects with dynamic control of receiver resources
    • H04B2201/70711Efficiency-related aspects with dynamic control of receiver resources with modular structure

Abstract

Verfahren zur Erzeugung einer Konfiguration für ein konfigurierbares Kommunikationsgerät zur Realisierung einer gewünschten Funktion in einem Computer mit einem Prozessor und einem computerlesbaren Speicher, die miteinander gekoppelt sind, wobei das Verfahren die Schritte umfasst: a) Empfangen einer Eingangsinformation an dem Computer, die eine gewünschte Operation identifiziert, die durch das konfigurierbare Kommunikationsgerät realisiert werden soll, b) Erzeugen eines Signalflusspfads der gewünschten Operation auf dem Computer und c) Abbilden der gewünschten Operation auf ein Rechenelement innerhalb des konfigurierbaren Kommunikationsgeräts über den Computer, wobei das Rechenelement eine lokale Steuerung aufweist und funktionsspezifisch ist.

Description

  • Die vorliegende Erfindung bezieht sich auf das Gebiet der Kommunikationstechnik. Im Besonderen bezieht sich die vorliegende beanspruchte Erfindung auf ein Verfahren zur Konfiguration eines konfigurierbaren Kommunikationsgeräts sowie auf ein elektronisches Gerät und auf ein computerlesbares Medium elektronischen Geräts.
  • Die WO 99/23762 A1 beschreibt ein System und ein Verfahren zum Bereitstellen eines digitalen, feldkonfigurierbaren Hochfrequenz-Kommunikationssystems, das in einem Sender oder einem Empfänger konfiguriert werden kann, um mit einer Vielzahl von Signalisierungsschemata zu funktionieren, z. B. AM, AME, A3E, H3E, J3E, CW, SSB, M-PSK, QAM, ASK, Winkelmodulation, einschließlich FM, PM, FSK, CMP, MSK, CPFSK usw. Das System enthält einen nicht-flüchtigen Speicher, der zum Empfangen und Speichern von Anweisungen zum Konfigurieren des Systems angepasst ist. Ein Benutzer wählt die Betriebsart und das Signalisierungsschema, und Anweisungen und Software werden aus dem Speicher in das System geladen und konfigurieren das System entsprechend der Auswahl des Benutzers.
  • Die drahtlose Kommunikation hat vielfältige Anwendungen in privaten 20 und industriellen Märkten. Spread-Spektrum-Techniken gewinnen als ein Verfahren zur Übertragung in einem drahtlosen Kommunikationssystem zunehmend an Bedeutung. Unter den vielen Spread-Spektrum-Kommunikations-Anwendungen/-Systemen sind: Stationäre drahtlose Anwendungen (fixed wireless), nicht lizenzierter drahtloser Mobilfunk der Bundeskommission für das Nachrichtenwesen (FCC), lokale Netzwerke (LAN), schnurlose Telefonie, persönliche Basisstationen, Telemetrie, Mobilfunk und andere digitale Datenverarbeitungsanwendungen. Währen jede dieser Anwendungen Spread-Spektrum-Kommunikation benutzt, benutzen sie im Allgemeinen spezielle und inkompatible Protokolle für verschiedene Signalverarbeitungsoperationen, beispielsweise Codierung und Decodierung, Modulation und Demodulation etc.. Diese speziellen und inkompatiblen Protokolle benötigen häufig spezielle Hardware, Software und Verfahren für das Kommunikationsprotokoll. Diese Vorgehensweise kann in Bezug auf Design, Test, Herstellung und infrastrukturelle Ressourcen kostspielig sein.
  • Neben den Unterschieden zwischen Spread-Spektrum-Kommunikationsanwendungen, treten wesentliche Veränderungen innerhalb einer vorgegebenen Spread-Spektrum-Kommunikationsanwendung mit der Zeit auf. Beispielsweise innerhalb der zellulären, drahtlosen ”code division multiple access” (CDMA)-Spread-Spektrum-Anwendung sind wesentliche Veränderungen mit der Zeit aufgetreten. Diese Veränderungen treten in Form einer Vielzahl von unterschiedlichen Versionen und Leistungsstufen, z. B. Zwischenstandard-95 (IS-95)-CDMA, Breitband-CDMA (WCDMA), 3GPP, etc. Und die Geschwindigkeit mit der Verbesserungen und neue Standards entstehen nimmt zu, da mehr industrielle Ressourcen auf den Bedarf und die Möglichkeiten innerhalb der drahtlosen Kommunikation zusammengezogen werden. Unglücklicherweise führen all diese Faktoren zu einer minimalen Gleichförmigkeit auf der Welt zu jeglichem Zeitpunkt. Beispielsweise benutzen unterschiedliche Länder und unterschiedliche Dienstanbieter häufig Systeme, die speziell auf ihre spezifische Version eines Kommunikationsprotokolls angepasst sind.
  • Wenn ein einzelnes Gerät in der Lage wäre, die Abweichungen innerhalb eines Spread-Spektrum-Kommunikationsprotokolls und die Abweichungen über der Zeit innerhalb jedes Protokolls zu überwinden, könnte es eine gemeinsame Lösung zur Verfügung stellen. Solch ein Gerät müsste im wesentlichen allgemeingütiger Natur sein, um sich solch einer breiten Vielfalt an Funktionen und Anwendungen anzupassen. Solch ein universelles Gerät würde jedoch typischerweise nicht in der Lage sein, irgendeine der verschiedenen Anwendungen alleine auszuführen, beispielsweise in seinem Herstellungszustand. Dies ist ein vollständig erwarteter Nachteil von Allgemeingültigkeit im Entwurf für Vielseitigkeit in einer möglichen Anwendung. Folglich entsteht eine Notwendigkeit für ein Verfahren zur Überwindung der Beschränkungen eines universellen Spread-Spektrum-Geräts, um eine spezifische Spread-Spektrum-Anwendung auszuführen.
  • Bei gegebener innerer Vieldeutigkeit eines universellen Spread-Spektrum-Geräts, wird eine wesentliche Menge an externer Steuerungsinformation verfügbar sein, um es auf eine spezifische Anwendung anzupassen. Während ein Benutzer externe Steuerungsinformation für das universelle Spread-Spektrum-Gerät manuell zur Verfügung stellen könnte, wäre dies zeitaufwendig und ineffizient. Weiterhin, in Anbetracht der Komplexität eines universellen Geräts, die benötigt würde, um es dem Gerät zu ermöglichen einen weiten Bereich von komplizierten und rechenintensiven algorithmischer Datenverarbeitungsoperationen auszuführen, wäre der Erfolg eines solchen manuellen Vorgangs unwahrscheinlich. Folglich entsteht die Notwendigkeit für ein Verfahren zur Überwindung der Beschränkungen des manuellen Programmierens eines universellen Spread-Spektrum-Geräts.
  • Weiterhin, bei der großen Menge von Variablen und Subkomponenten in einem solchen Gerät, wären viele unterschiedliche Kombinationen und Permutationen von Hardware-Verbindungen und Variabelenzuweisungen möglich. Folglich wäre es hoch wahrscheinlich, dass Fehler, Störimpulse, Fehlfunktion oder sogar fehlende Betriebsfähigkeit auftreten würden. Weiterhin wären andere komplizierte Themen, wie sauberes Zeitverhalten und Sequenzieren, Speicheradressierung und das Anpassen von algorithmischen Zuweisungen für ein universelles Spread-Spektrum-Gerät aufwändige Aufgaben. Folglich entsteht die Notwendigkeit für ein Verfahren zur Überwindung der Probleme des Arbeitens mit einem vollständigen Satz von möglichen Kombinationen und Permutationen von Hardware-Sequenzierung und Variablenzuordnungen.
  • Selbst wenn es möglich wäre, das universelle Gerät erfolgreich für eine spezifische Anwendung einzustellen, könnte die Verifikation der Einstellungen schwierig sein. Beispielsweise könnte ein Gerät mit einem Satz von Variablen akzeptierbar arbeiten. Diese Leistung jedoch kann nicht garantieren, dass das Gerät in einem anderen Szenario erfolgreich funktioniert. Folglich entsteht die Notwendigkeit für ein Verfahren und eine Vorrichtung zur Verifikation und Simulation des Betriebs universellen Geräts, das externe Steuerinformationen für eine spezifische Anwendung empfängt.
  • Zusammenfassung der Erfindung
  • Die vorliegende Erfindung stellt ein Verfahren und eine Vorrichtung zur Verfügung, welche die Beschränkungen eines universellen Spread-Spektrum-Geräts überwinden, um eine spezifische Spread-Spektrum-Anwendung auszuführen. Weiterhin stellt die vorliegende Erfindung ein Verfahren zur Verfügung, welches effizient externe Steuerinformationen eines universellen Spread-Spektrum-Geräts verwaltet, so dass es eine spezifische Anwendung ausführen kann. Des weiteren stellt die vorliegende Erfindung eine Lösung zur Verfügung, welche die Probleme des Arbeitens mit einem vollständigen Satz von möglichen Kombinationen und Permutationen von Hardware-Sequenzen und Variablenzuweisungen für das universelle Spread-Spektrum-Gerät überwindet. Die vorliegende Erfindung stellt auch ein Verfahren und eine Vorrichtung zum Verifizieren und Simulieren des Betriebs des universellen Geräts zur Verfügung, welches externe Steuerinformationen für eine spezifische Anwendung empfangen hat.
  • Im Besonderen stellt die vorliegende Erfindung eine Vorrichtung und ein Verfahren zur Verfügung, die eine Konfiguration für ein konfigurierbares Spread-Spektrum-Gerät erzeugen. Das Verfahren, das auf einem Computer mit einem Prozessor und einem computerlesbaren Speicher realisiert ist, beginnt mit einem ersten Schritt des Empfangs einer Eingangsinformation, die eine gewünschte Funktion und eine gewünschte Operation innerhalb der gewünschten Funktion identifiziert, die durch ein konfigurierbares Kommunikations-Gerät realisiert werden sollen. In einem nachfolgenden Schritt wird ein Signalflusspfad für die gewünschte Operation durch den Computer erzeugt. Nächstens wird die gewünschte Operation auf ein Rechenelement oder auf einen Satz von Rechenelementen innerhalb des konfigurierbaren Kommunikationsgeräts abgebildet. Das Rechenelement in der vorliegenden Ausführungsform weist eine lokale Steuerlogik auf und ist funktionsspezifisch. Die vorher erwähnten Schritte werden wiederholt, um mehrere Operationen bereitzustellen, die benötigt werden, um die gewünschte Funktion zu ermöglichen. Nächstens wird eine konfigurierbare Verbindungseinheit des konfigurierbaren elektronischen Geräts konfiguriert, um den Signalflusspfad und Abbildungsoperationen zwischen einem Rechenelement für jede der mehreren Operationen freizugeben, die zusammen die gewünschte Funktion ermöglichen.
  • Eine zweite Ausführungsform der vorliegenden Erfindung stellt ein elektronisches Gerät mit einem Prozessor und einem computerlesbaren Speicher zur Verfügung, der mit dem Prozessor gekoppelt ist. Das elektronische Gerät beinhaltet Befehle und Daten, die auf dem computerlesbaren Speicher gespeichert sind, die wenn sie unter Verwendung des Prozessors ausgeführt werden, das zuvor erwähnte Verfahren der ersten Ausführungsform ermöglichen. Das Verfahren und die Vorrichtung zur Bereitstellung von Konfigurationsinformation an ein konfigurierbares Kommunikationsgerät wird in einer Ausführungsform als eine Programmierschnittstelle bezeichnet.
  • Diese und andere Ziele und Vorteile der vorliegenden Erfindung werden dem Fachmann klar, nachdem er die folgende detaillierte Beschreibung der bevorzugten Ausführungsform gelesen hat, die auch in den verschiedenen Zeichnungen dargestellt sind.
  • Kurze Beschreibung der Zeichnungen
  • Die hierin enthaltenen Zeichnungen werden in diese Spezifikation mit aufgenommen und bilden einen Teil von ihr. Die Zeichnungen illustrieren Ausführungsformen der Erfindung und dienen zusammen mit der Beschreibung der Erklärung der Prinzipien der Erfindung. Es ist offensichtlich, dass die Zeichnungen auf die in dieser Beschreibung Bezug genommen wird nicht skaliert sind, es sei denn, dass sie ausdrücklich so bezeichnet sind.
  • 1A ist ein Blockschaltbild eines Konfigurationssystems gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 1B ist ein Blockschaltbild von konfigurationserzeugenden Funktionen, die durch einen externen Prozessor ausgeführt werden gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 2 ist ein Blockschaltbild eines externen Prozessorgeräts zur Erzeugung einer Konfiguration für ein konfigurierbares Kommunikationsgerät gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 3 ist ein Flussdiagramm des Prozesses, der für den Entwurf einer Konfiguration eines konfigurierbaren elektronischen Spread-Spektrum-Kommunikationsgeräts verwendet wird gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Detaillierte Beschreibung der Erfindung
  • Im Folgenden wird detailliert auf die bevorzugten Ausführungsformen der Erfindung Bezug genommen. Beispiele der bevorzugten Ausführungsformen werden in den begleitenden Zeichnungen illustriert. Während die Erfindung in Verbindung mit den bevorzugten Ausführungsformen beschrieben wird, ist es selbstverständlich, dass diese nicht dazu gedacht sind, die Erfindung auf diese Ausführungsformen zu beschränken. Die Erfindung ist eher dazu gedacht Alternativen, Modifikationen und Äquivalente abzudecken, die innerhalb des Geistes und des Bereichs der Erfindung eingeschlossen sind, wie sie durch die beigefügten Ansprüche definiert sind. Weiterhin wird in der folgenden detaillierten Beschreibung der vorliegenden Erfindung mehrere spezifische Details vorgestellt, um ein tiefes Verständnis der vorliegenden Erfindung zu geben. Es wird jedoch dem Fachmann klar sein, dass die vorliegende Erfindung ohne diese spezifischen Details ausgeführt werden kann. In anderen Fällen wurden bekannte Verfahren, Prozeduren, Komponenten und Schaltkreise nicht im Detail beschrieben, um Aspekte der vorliegenden Erfindung nicht unnötigerweise zu verschleiern.
  • Die vorliegende Erfindung kann innerhalb einer breiten Vielfalt von digitalen drahtlosen Spread-Spektrum-Kommunikationssystemen oder -techniken realisiert werden, die Codesequenzen verwenden. Codesequenzen werden innerhalb der drahtlosen Kommunikation für viele Funktionen verwendet, unter anderem: Filtern, Suchen, Modulation und Demodulation. Die Systeme oder Techniken, die Codesequenzen benutzen, umfassen unter anderem stationäre drahtlose Anwendungen (fixed wireless), nicht lizenzierter drahtloser Mobilfunk der Bundeskommission für das Nachrichtenwesen (FCC), drahtlose lokale Netzwerke (W-LAN), schnurlose Telefonie, zelluläre Telefonie, persönliche Basisstationen, Telemetrie und andere digitale Datenverarbeitungsanwendungen. Die vorliegende Erfindung kann sowohl auf Sender, beispielsweise eine Basisstation, als auch auf Empfänger, beispielsweise ein Terminal für ”fixed wireless”, W-LAN, zelluläre Telefonie und persönliche Basisstations-Anwendungen, angewendet werden.
  • Eine ”fixed wireless”-Anwendung, auf welche die vorliegende Erfindung insbesondere angewendet werden kann, ist ein ”metropolitan multipoint distribution system” (MMDS). Beispiele beinhalten drahtlose Kabelübertragungen oder zweiwege ”wireless local loop” (WLL)-Systeme. Einige Beispiele eines W-LAN, das digitalisierte Audio- und Datenpakete übertragen kann, für welche die vorliegende Erfindung angewendet werden kann, umfassen ”Open Air” und die Spezifikation 802.11b des ”Institute of Electrical and Electronics Engineers” (IEEE). In noch einer anderen Anwendung, einem spezifischen Beispiel einer Anwendung des nicht lizenzierten drahtlosen Mobilfunks der Bundeskommission für das Nachrichtenwesen FCC, für welche die vorliegende Erfindung verwendet werden kann, beinhaltet ”Industrial, Scientific and Medical” (ISM)-Band-Geräte, die schnurlose Telefonie-Produkte umfassen können. Persönliche Basisstationen können entweder schnurlose oder zelluläre Drahtlostelefonie-Kommunikationsstandards verwenden. Im letzteren Fall beinhalten die zellulären Telefonie-Systeme, in denen die vorliegende Erfindung unter anderem angewendet werden kann IS-95, IS2000, ARIB, 3GPP-FDD, 3GPP-TDD, 3GPP2, 1EXTREME oder andere benutzerdefinierte Protokolle. Der Bereich von Codesequenzen, die in den exemplarischen Spread-Spektrum-Anwendungen verwendet werden, die hierin offenbart sind, ist nützlich, um die Klasse von Funktionen zu definieren, für die die vorliegende konfigurierbare Codegeneratoreinheit anwendbar ist.
  • Konfigurationssystem
  • Bezugnehmend jetzt auf 1A, ist ein Blockschaltbild eines Konfigurationssystems gemäß einer Ausführungsform der vorliegenden Erfindung gezeigt. Ein Konfigurationssystem (oder ein Programmierschnittstellensystem) 100a beinhaltet ein externes Prozessorgerät 102 und ein konfigurierbares Kommunikationsgerät 104. Das externe Prozessorgerät 102 beinhaltet Konfigurationsinformation 103, die in einem Speicher für das konfigurierbare Kommunikationsgerät gespeichert ist. Das externe Prozessorgerät ist in einer Ausführungsform eine Workstation.
  • Das konfigurierbare Kommunikationsgerät beinhaltet in der vorliegenden Ausführungsform zwei Rechenelemente 106 und 108, die durch eine Leitung 107 gekoppelt sind. Die Leitung 107 ist in einer Ausführungsform eine konfigurierbare Verbindungseinheit, welche selektiv die Elemente 106 und 108 oder Teile davon koppeln kann. Ein beispielhaftes konfigurierbares Kommunikationsgerät 104 ist in der mitangemeldeten US-Patentanmeldung mit der Seriennummer_______, mit dem Titel „A wireless spread Spektrum communication platform using dynamically reconfigurable logic”, mit dem Anwaltsbezugszeichen 9824-0035-999 gezeigt. Diese verwandte Anmeldung ist gemeinsam angemeldet und wird hierdurch durch Bezugnahme zum Inhalt der Anmeldung gemacht.
  • Die Konfigurationsinformation 103 von dem externen Prozessorgerät 102 wird durch eine Schnittstelle 109 zu dem konfigurierbaren Kommunikationsgerät übertragen. Die Schnittstelle 109 ist eine verdrahtete Kommunikationsverbindung, die das externe Prozessorgerät 102 und das konfigurierbare Kommunikationsgerät 104 in einer Ausführungsform koppelt. In einer anderen Ausführungsform jedoch ist die Schnittstelle 109 ein elektronisches Speichermedium, beispielsweise eine CD-ROM und Wirtsgerät, die Konfigurationsinformation 103 für das konfigurierbare Kommunikationsgerät zur Verfügung stellen. In noch einer anderen Ausführungsform ist die Schnittstelle 109 eine drahtlose Übertragung von dem externen Prozessorgerät 102 oder einem anderen Kommunikationsgerät, beispielsweise eine drahtlose Basisstation oder eine drahtlose Testplattform.
  • In einem anderen Aspekt der vorliegenden Erfindung wird für die vorliegende Ausführungsform Konfigurationsinformation zu dem Zeitpunkt zur Verfügung gestellt, an dem das konfigurierbare Konfigurationsgerät 104 hergestellt und/oder erstmalig zum Betrieb im Feld programmiert wird. In einer anderen Ausführungsform jedoch wird Konfigurationsinformation dynamisch zu einem Zeitpunkt zur Verfügung gestellt, an dem das konfigurierbare Kommunikationsgerät 104 im Feld in Betrieb ist.
  • Externes Rechengerät
  • Bezugnehmend jetzt auf 1B, ist ein Blockschaltbild von konfigurationserzeugenden Funktionen gezeigt, die von einem externen Prozessorgerät gemäß einer Ausführungsform der vorliegenden Erfindung ausgeführt werden. Das Blockschaltbild 100b stellt eine beispielhafte funktionale Basis zur Erzeugung von Konfigurationsinformationen 103 von 1A zur Verfügung, die ultimativ dazu bestimmt ist, das konfigurierbare Kommunikationsgerät 104 zu konfigurieren.
  • Das funktionale Blockschaltbild 100b beinhaltet einen konfigurationserzeugenden Funktionsblock 110, der in der Lage ist, Daten- und Befehlsinformationen zu empfangen und Konfigurations-Ausgangsinformationen zur Verfügung zu stellen. Insbesondere beziehen sich die Dateninformationen auf die vom Benutzer gewünschte Konfiguration des konfigurierbaren Kommunikationsgeräts 104 von 1A. Im Unterschied hierzu sind Befehlseingangsinformationen Anweisungen für eine oder mehrere Anwendungen, die durch das konfigurierbare Kommunikationsgerät 104 realisiert werden sollen. Ein Beispiel für solche Befehlseingangsinformationen sind Industriestandards, Kommunikationsprotokolle etc.. In ergänzender Weise können Dateneingangsinformationen, die von einem Benutzer zur Verfügung gestellt werden, proprietäre Algorithmen und Verfahren beinhalten, die innerhalb der Grenzen eines Anwendungsprotokolls arbeiten und durch dessen Spielraum gedeckt sind. Schließlich beziehen sich die Konfigurationsausgangsinformation auf die Konfigurationsinformation, die durch den konfigurationserzeugenden Funktionsblock 110 erzeugt werden, die es dem konfigurierbaren Kommunikationsgerät 104 von 1A ermöglichen, gemäß den Eingangsdaten und den Befehlsdaten des Benutzers für die Anwendung zu arbeiten.
  • Die Dateneingänge der vorliegenden Ausführungsform umfassen unter anderem: 1) gewünschte Anwendung 114a des konfigurierbaren Kommunikationsgeräts 104, 2) gewünschte Funktion 114b, die durch das konfigurierbare Kommunikationsgerät 104 ausgeführt werden soll, 3) gewünschte erwartete Eingangsinformation 114c, die von dem konfigurieren Kommunikationsgerät 104 empfangen werden soll, 4) gewünschte Ausgangsinformation 114d, die durch das konfigurierbare Kommunikationsgerät 104 erzeugt werden soll, 5) gewünschte Parameter 114e innerhalb des konfigurierbaren Kommunikationsgeräts, die Benutzerdefinierbare proprietäre und nicht-proprietäre Verfahren umfassen können.
  • Als ein Beispiel für vom Benutzer zur Verfügung gestellte Dateneingänge, könnte ein Benutzer eine gewünschte Anwendungseingangsinformation 114a als ein ”wireless local loop” (WLL) zur Verfügung stellen, für welche das konfigurierbare Kommunikationsgerät konfiguriert werden soll. In ähnlicher Weise kann die gewünschte Funktionseingangsinformation 114b durch einen Benutzer als eine Modulationsfunktion definiert werden, für die Konfigurationsinformation bestimmt werden muss, um das universelle konfigurierbare Kommunikationsgerät 104 zu betreiben. Die gewünschte Eingangsinformation 114c kann sich auf das Format beziehen, in dem Daten erwartet werden, die an dem Rechenelement, das zur Modulation innerhalb des konfigurierbaren Kommunikationsgeräts konfiguriert ist, erwartet werden. Dieses Eingabeformat kann andere proprietäre oder eindeutige Benutzerdefinierte Datenverarbeitungsverfahren widerspiegeln, welche die Daten für die nachfolgende Modulationsfunktion vorbereiten und formatieren. Die gewünschten Ausgangsinformationen 114d entsprechen dem vom Benutzer gewünschten Format der Ausgangsdaten. Während ein Kommunikationsprotokoll gewissermaßen das Format und das Verfahren eng definiert, durch die Daten zwischen mehreren Geräten übertragen werden, ist das Format und das Verfahren zur Verarbeitung von Daten innerhalb eines Geräts dem Benutzer selbst überlassen (beispielsweise dem Geräteentwickler). In dieser Weise kann ein Benutzer benutzerdefinierte proprietäre und nichtproprietäre Algorithmen und Operationen entwickeln und realisieren, die auf die Bedürfnisse des Benutzers angepasst sind, beispielsweise Finden eines Kompromisses aus ”quality of service” (QOS), Stromverbrauch etc..
  • Die Befehlseingangsinformationen, die dem konfigurationserzeugenden Funktionsblock 110 zur Verfügung gestellt werden, beinhalten unter anderem: 1) eine Bibliothek von Funktionseingangsinformationen 116a, 2) eine Rechenressourceneingangsinformation 116b für das konfigurierbare Kommunikationsgerät und 3) eine Protokollformateingangsinformation 116c. Ein Beispiel einer Bibliothek von Funktionen würde Standardkonfigurationen oder -funktionen beinhalten, die durch das konfigurierbare Kommunikationsgerät 104 angepasst werden. In einer Ausführungsform kann die Bibliothek von Funktionseingangsinformationen 116a Funktionen beinhalten, die mehreren Anwendungen gemeinsam sind, und folglich eine enge Anpassung durch einen Benutzer ermöglichen. Ein Beispiel einer Rechenressourceneingangsinformation 116b kann die Anzahl der verfügbaren Rechenelemente (beispielsweise die Rechenelemente 106 und 108 von 1A), die Flexibilität von jeder konfigurierbaren Verbindungseinheit (beispielsweise die konfigurierbare Verbindungseinheit 107 von 1A) etc. für ein gegebenes konfigurierbares Kommunikationsgerät, beispielsweise Gerät 104 von 1A, beinhalten. Zuletzt kann ein Beispiel einer Protokollformateingangsinformation 116c Regeln und Definitionen beinhalten, die durch ein Protokoll vorgeschrieben werden, dem das konfigurierbare Kommunikationsgerät kraft Benutzerwunsch entsprechen soll, beispielsweise Regeln für die Syntax, das Format, Zeitverhalten etc..
  • Ausgangsinformationen, die von dem konfigurationserzeugenden Funktionsblock 110 erzeugt werden, beinhalten unter anderem: 1) Konfigurationsabbildung 118a, 2) Timing-Sequenz 118b, 3) Verbindungskonfiguration 118c und 4) Taktraten 118d. Ein Beispiel einer Konfigurationsabbildung 118a, die von einem konfigurationserzeugenden Funktionsblock 110 erzeugt wird, beinhaltet Einstellung für selektive Verbindungseinheiten, Bit-Wörter zur Freigabe konfigurierbarer Geräte, Schwellwerte für logische Funktionen etc.. Diese Information wird für Rechenelemente, beispielsweise 106 und 108 von 1A, wie auch für ihre Unterkomponenten zur Verfügung gestellt. Weiterhin wird diese Information für diese Elemente und Unterkomponenten zu unterschiedlichen Zeitpunkten eines Verarbeitungszyklus zur Verfügung gestellt. Die Ausgangsinformationen für Timing–Sequenzen 118b beinhaltet Informationen, beispielsweise wann bestimmte Rechenelemente eine spezifische Konfiguration realisieren, wann bestimmte Rechenelemente selektiv gekoppelt werden und wann bestimmte Rechenelemente freigeschaltet werden, um ihre Operationen und Funktionen durchzuführen. Letztlich beinhaltet ein Beispiel einer Verbindungskonfiguration 118c Informationen, die definieren, welche Rechenelemente miteinander gekoppelt sind und welche Subkomponenten von Rechenelementen miteinander gekoppelt sind. Beispielhafte benutzerdefinierbare Dateneingänge 114a bis 114e, Befehlseingänge 116a bis 116c und Konfigurationsausgänge 118a bis 118d werden im Bereich der detaillierten Beschreibung und im Anhang A der Patentanmeldung „A WIRELESS SPREAD SPEKTRUM COMMUNICATION PLATFORM USING DYNAMICALLY RECONFIGURABLE LOGIC” zur Verfügung gestellt, die durch Bezugnahme zum Inhalt gemacht wird.
  • Bezugnehmend jetzt auf 2, wird ein Blockschaltbild eines Computersystems gezeigt, das dazu benutzt wird, einen Benutzer mit einem konfigurierbaren heterogenen Multiprozessorgerät gemäß einer Ausführungsform der vorliegenden Erfindung zu verbinden. Ein Computersystem 120a stellt eine beispielhafte Realisierung des externen Prozessorgeräts 102 von 1A zur Verfügung, das den konfigurationserzeugenden Funktionsblock 110 von 1B ermöglicht.
  • Das Computersystem 120a beinhaltet eine Kernrecheneinheit 220, die einen Steuer-/Datenbus 202 zur Übertragung von Information beinhaltet, eine zentrale Recheneinheit 204, zur Verarbeitung von Information und Befehlen, die mit dem Bus 202 gekoppelt ist und eine Speichereinheit 206, zur Speicherung von Information und Befehlen, die mit dem Bus 202 gekoppelt ist. Die Speichereinheit 206 kann eine Speicherkonfiguration umfassen, beispielsweise ”random access memory” (RAM), zur Speicherung von temporären Informationen und Befehlen für die zentrale Prozessoreinheit 204. In Ergänzung kann ein nichtflüchtiger Speicher 208 eine Speicherkonfiguration umfassen, die aus ”read only memory” (ROM) besteht, zur Speicherung von statischer Information und Befehlen für die zentrale Prozessoreinheit 204. Eine Datenspeichereinheit 210 kann Programmbefehle und umfangreiche Information vom Datenbasis-Typ speichern.
  • Das Computersystem 120a beinhaltet auch ein optionales Anzeigegerät 218. Das Anzeigegerät 218 kann jegliche Art von Anzeige sein, beispielsweise eine analoge oder digitale Anzeigeeinheit. Das Computersystem 120a beinhaltet auch ein optionales Eingabegerät 216, das mit dem Bus 202 gekoppelt ist. Das optionale Eingabegerät 216 kann jegliches Eingabegerät umfassen, beispielsweise ein alphanumerisches Eingabegerät, wie eine Tastatur oder ein Zeigerelement, wie eine Maus etc.. Eine optionale Eingangs-/Ausgangs-Signaleinheit 212 stellt eine Kommunikationsschnittstelle des Computersystems 120a zur Verfügung, beispielsweise eine serielle Schnittstelle etc..
  • Der Bus 202 stellt eine beispielhafte Kopplungskonfiguration von Geräten im Computersystem 120a zur Verfügung. Der Bus 202 wird aus Gründen der Klarheit als eine einzelne Busleitung gezeigt. Für den Fachmann ist offensichtlich, dass der Bus 202 Subkomponenten von spezifischen Datenleitungen und/oder Steuerleitungen für die Übertragung von Befehlen und Daten zwischen entsprechenden Geräten beinhalten kann. Es ist für den Fachmann weiter offensichtlich, dass das Bus 202 in einer parallelen Konfiguration oder einer seriellen Konfiguration ausgebildet sein kann und dass der Bus 202 Verbindungseinheiten, Gateways und/oder Übersetzer beinhalten kann, wie dies für eine gegebene Anwendung passend ist.
  • Es ist auch offensichtlich, dass das Computersystem 120a nur beispielhaft ist und dass die vorliegende Erfindung innerhalb einer Anzahl von unterschiedlichen Systemen betrieben werden kann, so wie in einem Mehrzweckcomputersystem, einer dedizierten Workstation, einem eingebetteten System etc.. Des weiteren ist die vorliegende Erfindung gut geeignet, einen Wirt von intelligenten Geräten zu benutzen, die ähnliche Komponenten aufweisen, wie das beispielhafte Computersystem 120a.
  • Realisierung von Prozessen in Flussdiagrammen
  • Bezugnehmend jetzt auf 3, wird ein Flussdiagramm des Prozesses gezeigt, der verwendet wird, um eine Konfiguration eines konfigurierbaren elektronischen Spread-Spektrum Kommunikationsgeräts gemäß einer Ausführungsform der vorliegenden Erfindung zu entwerfen. Ein Flussdiagramm 3000 stellt beispielhafte Schritte und eine beispielhafte Aneinanderreihung von Schritten zur Verfügung, durch die das Konfigurationssystem 100a, das funktionale Bockschaltbild 100b und das Computersystem 120a harmonisch betrieben werden können, um die vorliegende Erfindung zu ermöglichen. Das vorliegende Flussdiagramm stellt effiziente, robuste und zeitgerecht konfigurierbare Operationen für ein konfigurierbares Kommunikationsgerät zur Verfügung. Das Flussdiagramm 3000 ist im allgemeinen so realisiert, dass es die unmittelbar vorhergehenden Figuren verwendet.
  • Das Flussdiagramm 3000 beginnt mit dem Schritt 3002. Im Schritt 3002 der vorliegenden Ausführungsform wird eine Eingangsinformation an einem Computer empfangen, die eine gewünschte Funktion identifiziert, die das konfigurierbare Gerät ausführen soll. In einer Ausführungsform ist es beispielsweise möglich, dass ein Benutzer eine Kommunikations-(oder Arithmetik-)Funktion auswählen muss, so wie Modulation, Demodulation, Codierung oder Decodierung, wie in 1B gezeigt. Die vorliegende Erfindung ist jedoch gut geeignet, jeglichen Typ von Funktion innerhalb des Betriebbereichs der konfigurierbaren Hardware zu realisieren. Der Schritt 3002 ist in einer Ausführungsform durch den Eingang 114a von 1B realisiert, der dem Computersystem 120a von 2 zur Verfügung gestellt wird, wobei ein Benutzer Eingangsdaten über ein optionales Eingabegerät 216, oder von den Speichereinheiten 206, 208 oder 210 des Computersystems 120a in 2 zur Verfügung stellt. Ein Benutzer kann in einer Ausführungsform jegliche gewünschte Funktion für den Schritt 3002 eingeben, die in einer Softwarebibliothek von Funktionen 116a zur Verfügung steht, beispielsweise Java, die Programmiersprache C etc..
  • Insbesondere kann ein Benutzer Vorteile aus dem hierarchischen Ansatz der Schnittstelle ziehen, unter Einbeziehung des Gedankens der erweiterbaren Datentypen, um die der Architektur innewohnende Flexibilität auszunutzen. Die gewünschte Funktion kann eine ”high-level”-Funktion, beispielsweise eine Modulation, sein, die weiter in diskretere Unterfunktionen aufgeteilt werden kann, abhängig vom Grad der Programmierung, der für eine Anwendung gewünscht und in der Bibliothek von Funktionseingangsinformationen 116a verfügbar ist. Anhang A der Patentanmeldung ”A WIRELESS SPREAD SPEKTRUM COMMUNICATION PLATFORM USING DYNAMICALLY RECONFIGURABLE LOGIC”, die durch Bezugnahme zum Inhalt der Anmeldung wird, stellt eine beispielhafte Liste von Modem- und Codier/Decodier-Funktionen und Programmierhilfsmittel zur Verfügung, für die Hardware-Kerne (oder Rechenelemente) 106 und 108 von 1A für eine beispielhafte Spread-Spektrum-Anwendung konfiguriert werden können. Die vorliegende Erfindung ist gut für einen weiten Bereich von Datenverarbeitungsfunktionen und Kerne geeignet, die durch den Schritt 3002 programmiert werden können. Der Schritt 3002 kann eine Liste dieser Unterfunktionen oder Operationen für den Benutzer über eine graphische Benutzerschnittstelle (GUI) auf der optionalen Anzeigeeinheit 218 von 2 zur Verwendung in nachfolgenden Schritten des Flussdiagramms 3000 zur Verfügung stellen.
  • In der vorliegenden Ausführungsform stellt die Liste von Funktionen eine eins-zu-eins-Zuordnung zu den Rechenelementen 106 und 108 von 1A her und ist folglich darauf beschränkt. Die vorliegende Erfindung ist jedoch gut geeignet, den Schritt 3002 mit verschiedenen Graden von funktionaler Granularität zu realisieren. In einer typischen WCDMA-Anwendung beispielsweise sind die bestimmenden Berechnungen um fünf hauptsächliche Signalverarbeitungsfunktionen zentriert: ”Chip matched filtering”, ”code-epoch search”, Chip-Demodulation/Despreading, Symbolratenverarbeitung und Kanaldecodierung. Ein Benutzer hat die Möglichkeit, die Verbindung zwischen diesen Gruppen vollständig zu verändern oder die Gruppe(n) über die Benutzung einer Schnittstelle in dem konfigurierbaren Kommunikationsgerät zu umgehen. Auf diese Art und Weise kann die Fähigkeit der datenflussspezifischen konfigurierbaren Verbindungseinheiten zwischen Inseln von Rechenkernen voll ausgenutzt werden. Im Flussdiagramm 3000 folgt auf den Schritt 3002 der Schritt 3004.
  • Im Schritt 3004 der vorliegenden Ausführungsform wird eine Eingabeinformation an einem Computer empfangen, die eine gewünschte Unterfunktion innerhalb der gegebenen Funktion oder eine gewünschte Operation innerhalb einer gegebenen Unterfunktion zur Ausführung auf dem konfigurierbaren Gerät identifiziert. Der Schritt 3004 ist in einer Ausführungsform in der gleichen Weise implementiert wie der Schritt 3002. Ein Benutzer kann jede gewünschte, oder keine, Unterfunktion eingeben, die in einer Programmiervorlage vorhanden ist, die als Bibliothek von Funktionseingangsinformationen 116a von 1B zur Verfügung gestellt wird. Die Programmiervorlage kann jede Art von passender Programmiersprache sein. In einer Ausführungsform der vorliegenden Erfindung beispielsweise wird eine Liste von den Funktionen in einer Datenkernspezifikationsliste zur Verfügung gestellt, aus der ein Benutzer Demodulations- und Codier/Decodier-Funktionen auswählen kann. Die Datenkernspezifikationsliste ist im Anhang A der mitangemeldeten Anmeldung ”A WIRELESS SPREAD SPEKTRUM COMMUNICATION PLATFORM USING DYNAMICALLY RECONFIGURABLE LOGIC”, beschrieben, die hiermit durch Bezugnahme zum Inhalt gemacht wird. Beispielsweise kann ein Benutzer eine Unterfunktion von Codemodulation innerhalb der größeren Funktion der Modulation auswählen. Im Flussdiagramm 3000 folgt auf den Schritt 3004 der Schritt 3006.
  • Im Schritt 3006 der vorliegenden Ausführungsform wird eine Eingabeinformation empfangen, die gewünschte Einstellungen für eine gewünschte Funktion identifiziert. Eingabeinformationen zum Schritt 3006 beinhalten unter anderem: Eingangs- und Ausgangs-(IO)-Parameter 3006a, bestimmt von und für eine Funktion, die in einem Rechenelement realisiert wird, beispielsweise den Elementen 106 und 108 von 1B. In ähnlicher Weise beinhaltet die Eingabeinformationen zum Schritt 3006 auch Parameter und Formateingaben 3006b, um interne Betriebsparameter für die Funktion vorzugeben, die durch Rechenelemente eines konfigurierbaren Geräts 104 von 1A realisiert werden. Eine Spezifikationsliste kann unterschiedliche Eingaben, Ausgaben und Parameter zur Verfügung stellen, die für den Entwurf einer benutzerspezifischen Konfiguration eines konfigurierbaren Geräts verfügbar sind. Während die vorliegende Ausführungsform spezifische Auswahlen von Eingabeinformationen, Ausgabeinformationen und Parametern zur Verfügung stellt, ist die vorliegende Erfindung gut dafür geeignet, einen weiten Bereich von Optionen zu benutzen, wie dies für eine gegebene Anwendung gewünscht wird. Ein Satz von verfügbaren Ressourcen {Ri} als Eingabeinformationen 3006c wird dem Schritt 3006 ebenfalls zur Berechnung zur Verfügung gestellt. Die Eingabeinformation 3006c repräsentiert den Satz von grundlegenden Rechenkern-Primitiven, beispielsweise das Rechenelement 106 von 1A, welches sich im konfigurierbaren Kommunikationsgerät 104 befindet. Die verfügbaren Ressourcen {Ri} werden im Entwurf des Kommunikationsgeräts zur Verfügung gestellt, basierend auf erwarteten Funktionen, Unterfunktionen und Operationen, die für Protokollabweichungen, mögliche algorithmische Flexibilitätsnotwendigkeiten, projektiertes zukünftiges algorithmisches und protokollbezogenes Wachstum und unbestimmte Posten zur Verfügung gestellt. In einer Ausführungsform können die Ressourcen eines gegebenen konfigurierbaren Geräts statisch in einem Speicher eines Computersystems 120a von 2 zur Verfügung gestellt werden. Alternativ können die Ressourcen eines gegebenen konfigurierbaren Geräts dynamisch durch abrufende Komponenten eines konfigurierbaren Geräts bestimmt werden, beispielsweise das Kommunikationsgerät 100a, über eine Kopplungsanordnung (drahtlos oder serielle-/Bus-Hardware) zum Computersystem 120a. Im Flussdiagramm 3000 folgt auf den Schritt 3006 der Schritt 3008.
  • Im Schritt 3008 der vorliegenden Ausführungsform wird ein Signalflusspfad (oder Diagramm) der gewünschten Betriebsart erzeugt. Ein Signalflusspfad ist eine Liste der Schnittstellen, beispielsweise der ausgewählten Eingangs- und Ausgangs-Typen und Formate für eine gegebene Funktion. Der Schritt 3008 wird in einer Ausführungsform durch den Prozessor 204 von 2 realisiert, der selektiv die gewünschten Verbindungen zwischen konfigurierbaren Elementen (beispielsweise die Elemente 106 und 108 von 1A) auf die erlaubten Verbindungen abbildet, die in einem gegebenen konfigurierbaren Kommunikationsgerät zur Verfügung stehen. Folglich wird eine Eingangsinformation 3008a eines Satzes von erlaubten Verbindungen {Ci} dem Schritt 3008 zur Berechnung zur Verfügung gestellt. In der vorliegenden Ausführungsform wird der erlaubte Satz von Verbindungen {Ci}, beispielsweise hierarchische Verbindungskonfigurationen des konfigurierbaren Geräts, durch eine Programmiervorschrift zur Verfügung gestellt, beispielsweise die Bibliothek von Funktionen 116a von 1B. Die Eingabeinformation 3008a repräsentiert die Menge an Rekonfigurierbarkeit, die innerhalb eines Hardware-Kerns und zwischen Hardware-Kernen zur Verfügung gestellt wird, beispielsweise über die rekonfigurierbare Verbindungseinheit 107 von 1A.
  • Der Schritt 3008 beinhaltet die Erzeugung eines ursprünglichen System-Datenflusses. Der ursprüngliche System-Datenfluss kann aus einer geschriebenen Spezifikation und Systemsimulation erzeugt werden. Aus dem ursprünglichen System-Datenfluss werden spezifische algorithmische Programmfäden identifiziert. Die spezifischen Programmfäden werden in der vorliegenden Ausführungsform durch eine Rangordnung der rechnerischen Komplexität identifiziert. Eine Ausführungsform der Rangordnung in einer typischen WCDMA-Anwendung, bei der die wesentlichen Berechnungen um fünf wesentliche Signalverarbeitungs-Funktionen zentriert sind, beinhalten: 1) ”chip matched filtering”, ”codeepoch search”, ”chip Demodulation/Despreading”, Kanaldecodierung und Symbolratenverarbeitung. Diese algorithmischen Programmfäden benötigen typischerweise Algorithmen die aus Millionen von Operationen pro Sekunde (MOPS) bestehen. Eine beispielhafte Spread-Spektrum-Anwendung kann diese Algorithmen in fünf Kategorien, basierend auf ihren MOPs, gruppieren. Diese Gruppen beinhalten: 1) eine Chipratenprozessorgruppe, eine Symbolsequenzprozessorgruppe, 3) eine Parameterschätz-Prozessorgruppe, 4) ein Kanalelement-(Mehrfinger)-Prozessorgruppe und 5) eine Eingangsprozessorgruppe. Ein Benutzer hat die Möglichkeit eine Prozessorgruppe über den Bypass-Mechanismus und/oder die Coprozessor-Schnittstelle zu umgehen. Unter Verwendung des Begriffs der hierarchischen Verbindung bietet die vorliegende Erfindung ein hohes Maß an Flexibilität in der Benutzerdefinition der bevorzugten Aufteilungsgrenzen zwischen Hardware und Software. In der vorliegenden Ausführungsform kann sich diese Grenze tatsächlich mit der Zeit verändern, basierend auf dem Typ, der Kapazität, der Leistung und rechnerischen Effizienz des Wirtsrechners, beispielsweise der Prozessor 120a von 2, und vom konfigurierbaren Kommunikationsgerät, beispielsweise das konfigurierbare Gerät 104 von 1A.
  • Die erlaubten Verbindungen im Schritt 3008 werden in der Entwurfsphase des Kommunikationsgerätes zur Verfügung gestellt, basierend auf einer angenommenen Flexibilität aufgrund von Protokollveränderungen, möglichen algorithmischen Flexibilitätsnotwendigkeiten, projektiertem zukünftigem algorithmischem und protokollbezogenem Wachstum und unbestimmten Posten. In einer Ausführungsform können die erlaubten Verbindungen {Ci} für ein gegebenes konfigurierbares Gerät statisch in einem Speicher des Computers 120a zur Verfügung gestellt werden. Alternativ können die erlaubten Verbindungen {Ci} für ein gegebenes konfigurierbares Gerät dynamisch durch eine abrufende Komponente eines konfigurierbaren Geräts bestimmt werden, beispielsweise dem Kommunikationsgerät 100a, über eine Kopplungs-Anordnung (Drahtlos oder Seriell/Bus-Hardware) durch das Computersystem 120a. Der Schritt 3008 steuert einen Satz von Kommunikations-Primitiven, die mit den in Schritt 3008 validierten Verbindungen korrespondieren, zum Implementierungsdatei-Ausgang 3007 bei. Die Implementierungsdatei 3007 beschreibt, wie eine Funktion aus dem Satz von Basisdaten und Steuerstrukturen in den Hardware-Kernen gebildet wird. Insbesondere umfasst der Schritt 3008 die Bildung einer Abstraktion der Datenpfad-Konfiguration durch die Funktionen für den Implementierungsdatei-Ausgang 3007.
  • Durch Bereitstellen eines Diagramms dieser Schnittstellen, beispielsweise in einer Liste, Zustandsmaschine oder Tabelle, kann die Kompatibilität von Datentypen zwischen sequenziellen Funktionen und Hardware-Realisierungen wenn nötig überprüft und korrigiert werden. Folglich stellt der Schritt 3008 ein Verfahren zur Qualitätskontrolle für die realisierten Funktionen zur Verfügung und garantiert ein Maß an Betriebssicherheit und Effizienz. Durch intelligentes Verfolgen der Schnittstellen von Funktionen und Unterfunktionen kann der Computer eine ungeordnete, vom Benutzer ausgewählte Liste von Funktionen oder Unterfunktionen sauber verfolgen. Der Schritt 3008 wird in einer Ausführungsform durch Speicherung von Datentypen im Speicher eines Speichermediums, beispielsweise die Blöcke 206, 208 oder 210 des Computersystems 120a in 2, und Abbilden der Schnittstellen über den Prozessor 204 realisiert. Im Flussdiagramm 3000 folgt auf den Schritt 3008 ein Schritt 3010.
  • Im Schritt 3010 der vorliegenden Ausführungsform wird die gewünschte Operation auf ein funktionsspezifisches Rechenelement mit lokaler Steuerung abgebildet. Der Schritt 3010 ist in einer Ausführungsform durch den Prozessor 204 realisiert, der die gewünschten Funktionen und/oder Unterfunktionen und Operationen, die in den Schritten 3002 und 3004 ausgewählt werden, auf die verfügbaren Hardwareressourcen eines gegebenen konfigurierbaren Geräts abbildet.
  • Der Abbildungsschritt 3010 verbindet im Wesentlichen eine Funktion mit einem Hardware-Kern mit einer passenden Architektur. Insbesondere konfigurieren die im Schritt 3006 ausgewählten Parameter den Hardware-Kern weitergehend für die spezifische Unterfunktion oder Operation innerhalb einer Klasse von möglichen Unterfunktionen oder Operationen. Dieses Szenario tritt für die vielen unterschiedlichen mathematischen, rechnerischen und logischen Kategorisierungen für die unterschiedlichen Funktionen auf, die in einer gegebenen Anwendung und dem Bereich der Rekonfigurierbarkeit verwendet werden, für die individuelle Hardware-Kerne entworfen werden können.
  • In einer beispielhaften Ausführungsform können die Schritte 3002 bis 3012 für eine Klasse von Despreading- und Equalization-Funktionen mit unterschiedlichen Parametern angepasst werden, die zu unterschiedlichen Kommunikationsprotokollen gehören, denen sie zugehören. Diese Ausführungsform stellt einen Hardware-Kern (oder Rechenelement) mit ausreichender Rekonfigurierbarkeit zur Verfügung, der sich den Unterschieden der Despreading- und Equalization-Funktionen zwischen den Protokollen anpassen kann. Folglich werden die Parameter der Rekonfigurierbarkeit einem Benutzer zur gewünschten Auswahl zur Verfügung gestellt.
  • Der Schritt 3010 steuert einen Satz von erweiterbaren Datentypen, die zu den Hardware-Kernen und ihren konfigurierbaren Eigenschaften gehören, zum Implementierungsdatei-Ausgang 3007 durch geeignete Spezifikation der verfügbaren Ressourcen bei, um eine gewünschte Funktion und/oder Unterfunktion zu erfüllen. Andere Eingabeinformationen, außer den verfügbaren Ressourcen, können für den Schritt 3010 in Betracht gezogen werden. Beispielsweise kann die Flexibilität eines lokalen Controllers (nicht gezeigt) eines Rechenelements 106 ebenfalls für den Schritt 3010 in Betracht gezogen werden. Besonders komplementär ist die Abbildung von gewünschten Funktionen auf verfügbare Ressourcen in einem Multiprozessor-Gerät mit spezifischen Komponenten für Algorithmen, da die Hardwarekomponenten (beispielsweise die Rechenelemente 106 und 108 von 1A) im Wesentlichen lokal gesteuerte, objektorientierte Geräte sind.
  • Als ein kurzes Beispiel, angewendet auf die Schritte 3002 bis 3010, wählt ein Benutzer eine Modulationsfunktion in Schritt 3002 und eine Integrations- und Speicherausdruck-Unterfunktion für den Schritt 3004 aus. Als ein Ergebnis dieser Eingabeinformationen, wird die Variation von Integrationslängen aus dem Satz {4, 8, 16, 32, 64, 128, 256} als mögliche Parameterauswahl zur Verfügung gestellt. Wenn der Benutzer einen 3GPP-Standard realisiert, würde eine beispielhafte Parameterauswahl, die für den Schritt 3006 eingegeben wird, eine 64-Bit Integrationslänge sein, wie dies durch den Standard für eine spezifische Betriebsart erforderlich ist. Nachfolgend wird ein Signalflusspfad über den Schritt 3010 zur Verfügung gestellt und der Kern, der für die Integrations- und Ausgabe-Klasse von Funktionen entworfen ist, wird über den Schritt 3008 auf die entsprechenden Parametereinstellungen abgebildet. Während das vorliegende Beispiel auf eine spezifische Funktion und Parametervariation angewendet wird, ist die vorliegende Erfindung gut für einen weiten Bereich von Anwendungen, Funktionen und Unterfunktionen geeignet. Im Flussdiagramm 3000 folgt dem Schritt 3010 der Schritt 3012.
  • Im Schritt 3012 der vorliegenden Ausführungsform bestimmt eine Abfrage, ob zusätzliche Unterfunktionen oder Operationen gewünscht sind. Wenn keine zusätzlichen Funktionen oder Unterfunktionen gewünscht sind, fährt das Flussdiagramm 3000 mit dem Schritt 3016 fort. Wenn jedoch zusätzliche Unterfunktionen oder Operationen gewünscht sind, fährt das Flussdiagramm 3006 mit dem Schritt 3013 fort. Der Schritt 3012 stellt die Logik zur Verfügung, um die Menge und Typen von Unterfunktionen und Operationen iterativ aufzubauen, die notwendig sind, um eine vollständige Funktion innerhalb des konfigurierbaren Gerätes bereit zu stellen, beispielsweise um eine Modemfunktion innerhalb eines Kommunikationsgeräts aufzubauen.
  • Der Schritt 3013 wird notwendig, wenn zusätzliche Funktionen oder Operationen im Schritt 3012 gewünscht sind. Im Schritt 3013 der vorliegenden Ausführungsform bestimmt eine Abfrage, ob die zeitliche Schachtelung (time sharing) von Ressourcen gewünscht ist. Das heißt, abhängig von der gewünschten Unterfunktion oder Operation und ihrer Rechenratenanforderung und abhängig von der Rechenrate einer gegebenen Komponente eines konfigurierbaren Geräts, kann die Komponente Leerlaufszeiten innerhalb eines Systemzykluses aufweisen, um zusätzliche Operationen aufzunehmen. Beispielsweise kann das Rechenelement 106 von 1A direkt von einem Wirtsprozessor (nicht gezeigt) des konfigurierbaren Kommunikationsgeräts 104 konfiguriert werden, um in unterschiedlichen Modi zu arbeiten, abhängig von makroskopischen Parametern, wie dem Standard, und mikroskopischen Parametern, wie dem Integrationsfenster für einen Such-Korrelator. Eine beispielhafte Ablaufsteuerung der Modem- und Codier/Decodier-Funktionen (beschrieben im Anhang A der mitangemeldeten Anmeldung ”A WIRELESS SPREAD SPEKTRUM COMMUNICATION PLATFORM USING DYNAMICALLY RECONFIGURABLE LOGIC”, durch Bezugnahme hiermit beinhaltet) realisiert eine Vielzahl von Sender/Empfänger-Signalpfaden durch Konfiguration der Hardware-Kerne und Verbindungen gemäß der gewünschten Typen von Operationen und Datenflüssen. Im Flussdiagramm 3000 folgt auf den Schritt 3013 der Schritt 3014.
  • Im Schritt 3014 der vorliegenden Ausführungsform wird der Zeitbereich der Ressourcen für mehrere Verwendungen aufgeteilt. Der Schritt 3014 wird durch Erfassung der Fähigkeiten der Komponenten in einem konfigurierbaren Gerät realisiert, wie in Schritt 3013 beschrieben. Der Aufteilungsprozess kann unter Verwendung des Prozessors 204 von 2 zusammen mit der Rechenressourceneingangsinformation 116b von 1B realisiert werden, die im Speicher 206, 208 oder 210 von 2 gespeichert werden kann. In Kürze, die Komponenten 106 und 108 des konfigurierbaren Kommunikationsgeräts 104 von 1A werden als Hardware-Rechenressourcen behandelt, die auf einen einzelnen Rechenprozess angewendet werden können, beispielsweise einen ”multipath” eines gegebenen Kanals in einer Ausführungsform. In der vorliegenden Ausführungsform jedoch kann die Rechenressource, die durch die exemplarischen Komponenten 106 und 108 des konfigurierbaren Kommunikationsgerätes 104 zur Verfügung gestellt wird, dadurch verbessert werden, dass sie mit einer höheren Taktrate betrieben wird, als die von einem Prozess benötigte, beispielsweise höher als die Datenrate für ein Kommunikationsprotokoll. In dieser Weise können Ressourcen von individuellen Rechenkomponenten, beispielsweise eines konfigurierbaren Demodulators, zeitlich zwischen mehreren Rechenprozessen geschachtelt (oder aufgeteilt) werden, beispielsweise einige ”multipath” und/oder mehrere Kanäle. Konfigurations- und Zustandsdaten für jede der zeitlich geschachtelten Ressourcen des konfigurierbaren Geräts werden durch das Flussdiagramms 3000 zur Verfügung gestellt. Zusätzliche Information über den Entwurf und die Realisierung von Konfigurationen eines konfigurierbaren Kommunikationsgerätes werden in der mitangemeldeten US-Patentanmeldung mit der Nummer 09/492,634, mit dem Titel „IMPROVED APPARATUS AND METHOD FOR MULTITHREADED SIGNAL PROCESSING” von Ravi Subramanian et al., Anwaltsdokumentennummer MORP-P002 zur Verfügung gestellt. Diese zugehörige Anmeldung ist gemeinsam angemeldet und wird hiermit durch Bezugnahme zum Inhalt gemacht. Im Anschluss an den Schritt 3014 kehrt das Flussdiagramm 3000 zu den Schritten 3006 bis 3010 zurück, in denen die zeitlich geschachtelte Ressource in den Signalflusspfad und die Abbildungsoperation eingefügt werden kann.
  • Der Schritt 3016 wird notwendig, wenn keine zusätzlichen Funktionen oder Operationen im Schritt 3012 gewünscht sind. Der Schritt 3016 ist für den Zustand verantwortlich, bei dem eine gewünschte Konfiguration für ein konfigurierbares Gerät für aktuelle Realisierungen auf dem konfigurierbaren Gerät über die nachfolgenden Schritte im Wesentlichen festgelegt wird. Im Schritt 3016 der vorliegenden Ausführungsform wird eine Konfiguration für die konfigurierbare Verbindungseinheit erzeugt, um den Abbildungsschritt 3010 zu erfüllen. Folglich ist der Schritt 3016 für alle die einzelnen Eingangs-/Ausgangs-Datenleitungen (nicht gezeigt) der Hardware-Kerne verantwortlich, beispielsweise das Rechenelement 106 bzw. 108 von 1A.
  • Der Schritt 3016 bildet auch die Begrenzungen innerhalb der rekonfigurierbaren Verbindungseinheit ab, die in einer Ausführungsform beschränkte Verbindungsmöglichkeiten zwischen all den unterschiedlichen konfigurierbaren Hardware-Kernen aufweist. In einer Ausführungsform erzeugt der Schritt 3016 einen Satz von Regeln, der die Konfiguration der konfigurierbaren Verbindungseinheit aufstellt, mit digitalen Anweisungen, die elektronische Geräte der Verbindungseinheit anschalten, beispielsweise Transistoren, und folglich die entsprechenden Verbindungen herstellt. Der Schritt 3016 ist in einer Ausführungsform durch Speicherung der Konfiguration oder des Satzes von Regeln im Speicher realisiert, auf den die rekonfigurierbare Verbindungseinheit Zugriff hat. Die vorliegende Erfindung ist jedoch gut dazu geeignet, den Schritt 3016 unter Verwendung alternativer Speichertechniken zu realisieren. Des weiteren, wenn Hardware-Kern-Ressourcen zeitlich geschachtelt sind, kann mehr als ein Satz von Regeln einer konfigurierbaren Verbindungseinheit oder Konfiguration existieren und wird folglich zwischen den mehreren Sätzen von Regeln rekonfigurierbar. Die Periodizität der Konfiguration einer konfigurierbaren Verbindungseinheit kann einen weiten Bereich umfassen, beispielsweise von Millisekunden bis Monaten, abhängig von der Anwendung. Im Flussdiagramm 3000 folgt auf den Schritt 3016 der Schritt 3018. Im Schritt 3018 der vorliegenden Ausführungsform wird eine zeitliche Reihenfolge für die Konfiguration der konfigurierbaren Verbindungseinheit und für die Hardware-Kerne definiert. Im Schritt 3018 der vorliegenden Ausführungsform wird eine Eingangsinformation von einem Computer empfangen, welche eine gewünschte Funktion identifiziert, die das konfigurierbare Gerät ausführen soll. Der Schritt 3018 ist in einer Ausführungsform durch einen Benutzer realisiert, der eine Dateneingabe über das optionale Eingabegerät 216 oder aus dem Speichermedium 206, 208 oder 210 des Computersystems 120a in 2 zur Verfügung stellt. Ein Benutzer kann jede gewünschte Funktion eingeben, die in einer Programmierhilfe, beispielsweise der Funktionsbibliothek 116a von 1B enthalten ist. Die vorliegende Erfindung ist jedoch gut für jegliche Typen von Funktionen geeignet, wie sie in dem konfigurierbaren Gerät zur Verfügung gestellt werden.
  • Die im Schritt 3018 gewünschte Funktion kann eine höhere Funktion sein, beispielsweise eine Modulation, die weiter in diskretere Unterfunktionen aufgeteilt werden kann. Der Schritt 3018 kann eine Liste dieser Unterfunktionen oder Operationen dem Benutzer über eine graphische Benutzerschnittstelle (GUI) zur Nutzung in nachfolgenden Schritten des Flussdiagramms 3000 zur Verfügung stellen. In der vorliegenden Ausführungsform stellt die Liste von Funktionen eine eins-zu-eins-Zuordnung zu den Rechenelementen her, beispielsweise den Rechenelementen 106 und 108 von 1A, und wird folglich durch diese beschränkt. Die vorliegende Erfindung ist gut dafür geeignet, den Schritt 3018 mit unterschiedlichen Graden an funktionaler Granulariät zu realisieren. Insbesondere ist die für die konfigurierbare Architektur entworfene Konfiguration aufgrund der lokal gesteuerten, autonomen Hardware-Kerne für Datenraten skalierbar. Dies bedeutet, dass die Erhöhung der Taktrate die Geschwindigkeit des ganzen Kommunikationsgeräts, beispielsweise 100a, erhöhen kann. Im Flussdiagramm 3000 folgt auf den Schritt 3018 der Schritt 3020.
  • Im Schritt 3020 der vorliegenden Ausführungsform wird die heruntergeladene Konfiguration an die mehreren Rechenelemente verteilt. Der Schritt 3020 dient der Verteilung von Konfigurationsdaten für eine zeitlich geschachtelte Hardware-Kern-Ressource, deren Konfiguration sich ändert. Beispielsweise können zwei Kommunikationskanäle unterschiedliche Konfigurationen von Integrations- und Speicherausgabefunktionen benötigen, beispielsweise IS-95 für einen Kanal und CDMA 2000 für einen anderen Kanal oder japanisches ARIE WCDMA und ETSI 3GPP WCDMA, die konkurrierend in einer Basisstation betrieben werden. Für einen gegebenen funktionsspezifischen Kern, der die Despread-Funktion unterstützt, muss sich die Konfiguration für den entsprechenden Kanal ändern. Die Veränderung der Konfiguration hängt von der Frequenz des Zugriffs auf die Despread-Funktion ab, beispielsweise kann die Frequenz bei einer Vielfachen der Chip-Taktrate, einer Chip-Taktrate oder jeder für die Anwendung passenden Periode auftreten. In diesen Szenario ist der Hardware-Kern auf einer sehr effizienten Basis rekonfigurierbar. Anmerkend sei erwähnt, dass wenn der gegebene funktionsspezifische Kern zeitgeschachtelt verwendet wird, aber die gleiche Konfiguration benutzt, beispielsweise beide Kanäle benutzen IS-95, muss keine unterschiedliche Konfiguration für den Wechsel verteilt werden. Eine letzte Ausgabeinformation des Flussdiagramms 3000 stellt die Konfigurationsabbildung 118a, den zeitlichen Ablauf 118b, die Verbindungskonfiguration 118c und Taktraten 118d zur Verfügung. Das Flussdiagramm 3000 endet nach dem Schritt 3020.
  • Ein Beispiel eines Computerprogramms, welches das Flussdiagramm 3000 für eine gewünschte Funktion realisiert, als Finger bezeichnet, ist im Anhang B der mitangemeldeten Anmeldung ”A WIRELESS SPREAD SPEKTRUM COMMUNICATION PLATFORM USING DYNAMICALLY RECONFIGURABLE LOGIC” gezeigt, die durch Bezugnahme zum Inhalt der Anmeldung gemacht wird. Ein Benutzer definiert die Finger-Funktion über eine Implementierungsdatei, beispielsweise die Datei 3007, durch Definition: der Abfolge von Operationen, der Parameter, die den Datenfluss steuern und der Parameter, welche die Einleitung und Beendigung der Funktion steuern. So wird ein spezifisches Finger-Verhalten nachfolgend durch Bilden des Fingers unter Verwendung des Prinzips eines erweiterbaren Datentyps realisiert. Die Abfolge von Operationen, die einen Finger definieren, werden durch den Benutzer bestimmt und dann als der Finger-Typ deklariert. Der Benutzer deklariert dann die Parameter, die den Datenfluss kontrollieren und definiert dann die Einleitungs- und Abschlussbedingungen. Es wird vorausgesetzt, dass ein Fachmann die computersprachenspezifische Syntax interpretieren kann, die in diesem Beispiel verwendet wird. Dieses Beispiel zeigt, wie der Benutzer ein spezifisches Maß an Kontrolle der über die Hardware-Kerne realisierten Funktionen erreichen kann. Folglich können Kontrollierbarkeit, Beobachtbarkeit und neue Konfigurationen und Verhaltensweisen über die Benutzung der erweiterbaren Datentypen der vorliegenden Erfindung realisiert werden. Folglich überwindet die vorliegende Erfindung die Begrenzungen, die mit herkömmlichen Konfigurationen einhergehen.
  • Unter Verwendung des Flussdiagramms 3000 ermöglicht es die vorliegende Ausführungsform, dass die Struktur von jedem Kanalelement vollständig unter der Kontrolle des Benutzers/Programmierers ist. Dies bedeutet, dass der ganze Datenfluss, der Kontrollfluss und die Verbindungskonfigurierbarkeit während des Betriebs verändert werden kann, was die Erzeugung von vollständig neuen Datenfluss- oder Kontrollflussverarbeitungsketten für ein gegebenes Kanalelement ermöglicht. Dieses Maß an Flexibilität ermöglicht eine wesentliche Menge an Kontrolle, Leistungseffizienz und Unterscheidbarkeit in Bezug auf Kommunikationssystemarchitekturen. Das Flussdiagramm 3000 bildet auch einen hierarchischen Aspekt in Bezug auf die konfigurationserzeugende Funktion 110 von 1B ab, wobei die Steuerung und Schnittstellen sich iterativ zwischen der Sprachfunktionsbibliothek 116a auf Benutzerebene und Befehlen auf Maschinenebene für das Kommunikationsgerät aufspannen, beispielsweise der Konfigurationsabbildungsausgang 118a. Das Flussdiagramm 3000 kann beispielsweise verwendet werden, um eine Datenflussmaschine zu programmieren, beispielsweise das Kornmunikationsgerät 100a, um als ein drahtloses Spread-Spektrum-Sender/Empfänger-Modem für die folgenden Standards über Software zu arbeiten, die von einem System-Entwickler entwickelt wird:
    • – IS-95B
    • – IS-95C
    • – IS-2000 (1xRTT, 3xRTT)
    • – 3GPP 3.84 Direct Spread Mode (FDD)
    • – ARIB 4.096 Mcps WCDMA.
  • Jedes Kanalelement kann spezifisch vom Benutzer aus dem Satz von rekonfigurierbaren Kernen aufgebaut werden, um einen rekonfigurierbaren digitalen Mehrkanal-CDMA-Basisband-Modemsignalpfad zu erzeugen, der vollständig die digitale Modulation-Demodulation ebenso wie die Kanalcodierung-Decodierung durchführt, die pro logischem Kanal für alle Schmalband- und Breitband-CDMA-Standards benötigt wird. Einige mögliche Konfigurationen, die ein Benutzer durch Konfiguration der Hardware-Kerne und der konfigurierbaren Verbindungseinheit in dem Kommunikationsgerät realisieren kann, sind unten zusammengefasst, für die Vorwärts(Downlink)- und Rückwärts(Uplink)-Verbindungen:
    • • Vorwärtsverbindung
    • • 1xRTT evolution (IS-95B, IS-95C, IS-2000) alle Funkkonfigurationen wie in TIA/EIA IS2000.2 beschrieben
    • • 3xRTT Mehrträgermodus
    • • 3GPP 3.84 MHz Direct-Spread Mode (FDD)
    • • ARIB 4.096 Mcps WCDMA
    • • Rückwärtsverbindung
    • • 1xRTT evolution (IS-95B, IS-95C, IS-2000) alle Funkkonfigurationen wie in TIA/EIA IS2000.2 beschrieben
    • • 3GPP 3.84 MHz Direct-Spread Mode (FDD)
    • • ARIB 4.096 Mcps WCDMA
  • Die vorliegende Erfindung ist zur Nutzung eines breiten Bereichs von Sprach- und Datenkanalkombinationen gut geeignet, die für eine spezifische Anwendung ausgewählt und entworfen werden. Diese Plattform ist entworfen, um eine Vielfalt von Kanalraten zu unterstützen, die von der durch den Benutzer über das Flussdiagramm 3000 ausgewählten Service- und Funkkonfiguration abhängen. Mehrere beispielhafte Computerprogrammrealisierungen des Flussdiagramms 3000a für Spread-Spektrum-Systeme sind im Anhang A der mitangemeldeten Anmeldung ”A WIRELESS SPREAD SPEKTRUM COMMUNICATION PLATFORM USING DYNAMICALLY RECONFIGURABLE LOGIC” zur Verfügung gestellt, die durch Bezugnahme zum Inhalt der Anmeldung gemacht wird. Insbesondere stellt der Anhang B die spezifische Anwendung einer drahtlosen Basis-Sender/Empfänger-Station für eine CDMA-Anwendung zur Verfügung. Die vorliegende Erfindung ist jedoch gut für einen weiten Bereich von Kommunikationsanwendungen geeignet. Es wird angenommen, dass der Fachmann die computersprachenspezifische Syntax interpretieren kann, die in diesen Beispielen gezeigt wird.
  • Die vorliegende Ausführungsform wendet das Flussdiagramm 3000 auf ein digitales drahtloses Kommunikationssystem an. Die vorliegende Erfindung kann jedoch auf einen weiten Bereich von Anwendungen und einen weiten Bereich von Gerätekonfigurationen angewendet werden. Innerhalb des drahtlosen Kommunikationssystems, das in der vorliegenden Ausführungsform beschrieben wird, ist die vorliegende Erfindung auf mobile Einheiten, Basisstationen und Testplattformen anwendbar.
  • Während das Flussdiagramm 3000 der vorliegenden Ausführungsform eine spezifische Sequenz und Menge an Schritten zeigt, ist die vorliegende Erfindung für alternative Ausführungsform geeignet. Beispielsweise sind nicht alle Schritte, die im Flussdiagramm 3000 bereitgestellt werden, für die vorliegende Erfindung notwendig. Insbesondere weist das Flussdiagramm 3000 die Schritte 3013 und 3020 für ein Zeitscheiben-Szenario der Programmierung einer Konfiguration für Hardware-Kerne auf. Das Zeit-Szenario wird jedoch von der vorliegenden Erfindung nicht benötigt und folglich können diese Schritte in einer Ausführungsform entfallen. In gleicher Weise können andere Schritte in Abhängigkeit von der Anwendung entfallen. Im Gegensatz hierzu, ist die vorliegende Erfindung gut dazu geeignet, weitere Schritte zu den vorliegenden hinzuzunehmen, wie dies von einer Anwendung benötigt oder für Abänderungen in dem Prozess gewünscht wird. Letztlich kann die Sequenz der Schritte für das Flussdiagramm 3000 in Abhängigkeit der Anwendung modifiziert werden. Folglich, während das Flussdiagramm 3000 als ein einzelner serieller Prozess gezeigt ist, können sie auch als ein kontinuierlicher oder paralleler Prozess realisiert werden.
  • Viele der Befehle für die Schritte und die Dateneingabe und -ausgabe von den Schritten des Flussdiagramms 3000 benutzen Speicher- und Prozessorhardware-Komponenten auf einer Workstation, beispielsweise den Speicher 206 und 208 bzw. den Prozessor 204 der 2. Das Speichermedium, das benutzt wird, um die Schritte des Flussdiagramms in der vorliegenden Ausführungsform zu realisieren, kann entweder nichtflüchtig, so wie nur Lesespeicher (ROM), oder flüchtiger Speicher sein, so wie Schreiblesespeicher (RAM). Das Speichermedium kann gleichfalls jeder beliebige Typ von Speichermedium sein, der in der Lage ist, Programmbefehle zu speichern, so wie eine Festplatte, eine CD-ROM oder Flash-Speicher. In gleicher Weise kann der Prozessor, der zur Realisierung der Schritte des Flussdiagramms verwendet wird, entweder ein dedizierter Controller, ein vorliegender Systemprozessor oder ein dedizierter digitaler Signalprozessor (DSP) sein, wie dies für den Typ des Schritts geeignet ist. Alternativ können die Befehle unter Verwendung einer Form einer Zustandsmaschine realisiert sein.
  • Einige Teile der detaillierten Beschreibung, beispielsweise der Prozesse, werden in Begriffen von Prozeduren, logischen Blöcken, Verarbeitung und anderen symbolischen Repräsentationen von Operationen auf Datenbits innerhalb eines Computers oder digitalen Systemspeichers oder auf Signalen innerhalb eines Kommunikationsgeräts dargestellt. Diese Beschreibungen und Repräsentationen sind die vom Fachmann in der digitalen Kommunikation und Computerarchitektur verwendeten Mittel, um am effektivsten das Wesentliche ihrer Arbeit anderen Fachleuten mitzuteilen. Eine Prozedur, ein logischer Block, ein Prozess etc. ist hierbei und im allgemeinen als eine selbstkonsistente Sequenz von Schritten oder Befehlen zu verstehen, die zu einem gewünschten Ergebnis führt. Die Schritte sind diejenigen Vorgänge, welche physikalische Manipulationen von physikalischen Größen erfordern. Üblicherweise aber nicht notwendigerweise nehmen diese physikalischen Manipulationen die Form von elektrischen oder magnetischen Signalen an, die gespeichert, übertragen, kombiniert, verglichen und in anderer Art und Weise in einem Kommunikationsgerät oder einem Prozessor manipuliert werden können. Aus Gründen der Konvention und unter Bezug auf deren allgemeine Verwendung, werden diese Signale als Bits, Werte, Elemente, Symbole, Buchstaben, Terme, Zahlen oder ähnliches innerhalb der vorliegenden Erfindung bezeichnet.
  • Es sollte jedoch klar sein, dass all diese Begriffe als Referenzen für physikalische Manipulationen und Größen interpretiert werden müssen und hauptsächlich gebräuchliche Bezeichner darstellen, die im Sinne von allgemein üblichen Begriffen weiter zu interpretieren sind. Es sei denn, dass es spezifisch so ausgedrückt ist, ansonsten wie aus der folgenden Diskussion ersichtlich, ist es offensichtlich, dass innerhalb der Diskussion der vorliegenden Erfindung Begriffe wie ”Empfangen”, ”Erzeugen”, ”Abbilden”, ”Wiederholen”, ”Übersetzen”, ”Konfigurieren”, ”Teilen”, ”Definieren”, ”zeitlich Verschachteln”, ”Verteilen”, ”Zuweisen”, ”Erzeugen”, ”Kategorisieren”, ”Identifizieren” oder entsprechende sich auf die Aktionen und Prozesse eines Kommunikationsgerätes oder eines ähnlichen elektronischen Rechengeräts beziehen, das Daten manipuliert und transformiert. Die Daten werden als physikalische (elektronische) Größen innerhalb der Kommunikationsgerätekomponenten oder der Register und Speicher des Computersystems repräsentiert und in andere Daten transformiert, die in ähnlicher Weise als physikalische Größen innerhalb der Kommunikationsgerätekomponenten oder der Speicher oder der Register des Computersystems oder anderer solcher Informationsspeicher oder Übertragungs- oder Anzeigeeinheiten repräsentiert.
  • Im Hinblick auf die hier ausgeführten Ausführungsformen, stellt die vorliegende Erfindung in effektiver Weise ein Verfahren und eine Vorrichtung zur Verfügung, die die Beschränkungen eines universellen Spread-Spektrum-Geräts überwinden, um eine spezifische Spread-Spektrum-Anwendung auszuführen. Zusätzlich illustriert die hierin enthaltene Beschreibung, wie die vorliegende Erfindung effizient die externe Steuerung eines universellen Spread-Spektrum-Geräts kontrolliert, so dass es eine spezifische Anwendung ausführen kann. Des weiteren wurde gezeigt, wie die vorliegende Erfindung eine Lösung zur Verfügung stellt, die den Mangel an Struktur adressiert, wenn Hardware-Sequenzierung und Variablenzuordnung für das universelle Spread-Spektrum-Gerät gewählt werden. Und letztlich wurde beschrieben, wie die vorliegende Erfindung den Betrieb eines universellen Geräts ermöglicht, verifiziert und simuliert, das externe Steuerinformation für eine spezifische Anwendung empfangen hat.
  • Die vorangegangene Beschreibungen von spezifischen Ausführungsformen der vorliegenden Erfindung wurden aus Gründen der Illustration und Beschreibung ausgeführt. Sie sind nicht als erschöpfend oder als Beschränkung der Erfindung auf die konkreten offenbarten Ausführungsformen zu verstehen und selbstverständlich sind viele Modifikationen und Variationen im Sinne der Ausführungen möglich. Die Ausführungsformen wurden gewählt und beschrieben, um die Prinzipien der Erfindung und ihre praktische Anwendung am besten zu erklären, um dadurch den Fachmann in die Lage zu versetzen, die Erfindung und viele Ausführungsformen mit vielen Modifikationen am besten zu benutzen, wie es zu dem bestimmten Anwendungsfall am besten passt. Es ist beabsichtigt, dass der Bereich der Erfindung durch die hieran angefügten Ansprüche und ihre Äquivalente definiert wird.

Claims (45)

  1. Verfahren zur Erzeugung einer Konfiguration für ein konfigurierbares Kommunikationsgerät zur Realisierung einer gewünschten Funktion in einem Computer mit einem Prozessor und einem computerlesbaren Speicher, die miteinander gekoppelt sind, wobei das Verfahren die Schritte umfasst: a) Empfangen einer Eingangsinformation an dem Computer, die eine gewünschte Operation identifiziert, die durch das konfigurierbare Kommunikationsgerät realisiert werden soll, b) Erzeugen eines Signalflusspfads der gewünschten Operation auf dem Computer und c) Abbilden der gewünschten Operation auf ein Rechenelement innerhalb des konfigurierbaren Kommunikationsgeräts über den Computer, wobei das Rechenelement eine lokale Steuerung aufweist und funktionsspezifisch ist.
  2. Verfahren nach Anspruch 1, mit dem weiteren Schritt: d) Wiederholen des Schritts c für jedes von mehreren Rechenelementen innerhalb des konfigurierbaren Kommunikationsgeräts, das in der Lage ist, die gewünschte Operation auszuführen.
  3. Verfahren nach Anspruch 1, mit dem weiteren Schritt: d) Wiederholen der Schritte a bis c soweit notwendig, um mehrere Operationen zu erfüllen, welche die gewünschte Funktion ermöglichen.
  4. Verfahren nach Anspruch 3, mit dem weiteren Schritt: e) Übersetzen des Signalflusspfads in Konfigurationsabbildungen für jedes Rechenelement, welches verwendet wird, um mehrere Operationen für die gewünschte Funktion zu realisieren.
  5. Verfahren nach Anspruch 4, mit dem weiteren Schritt: f) Konfigurieren einer konfigurierbaren Verbindungseinheit des konfigurierbaren Kommunikationsgeräts, um den Signalflusspfad zwischen Rechenelementen für jede der mehreren Operationen zu ermöglichen, welche die gewünschte Funktion ermöglichen.
  6. Verfahren nach Anspruch 1, mit dem weiteren Schritt: d) Empfangen der gewünschten Funktion an dem Computer, die auf dem konfigurierbaren Kommunikationsgerät ausgeführt werden soll, und e) Aufteilen der Funktion in einen Satz von diskreten Operationen, die auf mindestens einem der mehreren Rechenelemente des konfigurierbaren Kommunikationsgeräts ausgeführt werden können.
  7. Verfahren nach Anspruch 6, mit dem weiteren Schritt: f) Wiederholen des Empfangsschritts d und des Aufteilungsschritts e soweit notwendig, um mehrere Funktionen zu erfüllen, die für die Anwendung benötigt werden.
  8. Verfahren nach Anspruch 1, mit dem weiteren Schritt: d) Definieren einer zeitlichen Reihenfolge zur Aktivierung jedes der mehreren Rechenelemente, die benötigt werden, um die gewünschte Operation zu erfüllen.
  9. Verfahren nach Anspruch 1, mit dem weiteren Schritt: d) zeitliches Verschachteln der Ressourcen des Rechenelementes, um mehrere Operationen aufzunehmen.
  10. Verfahren nach Anspruch 9, mit dem weiteren Schritt: e) Verteilen der Konfiguration an die Rechenelemente des konfigurierbaren Kommunikationsgeräts, basierend auf dem Zeitschachtelungsschritt d.
  11. Verfahren nach Anspruch 9, wobei der Zeitschachtelungsschritt d Ressourcen zwischen mehreren Kanälen in einer drahtlosen Kommunikationsanwendung teilt.
  12. Verfahren nach Anspruch 9, wobei der Zeitschachtelungsschritt d die folgenden Schritte umfasst: d1) Identifizieren mehrerer Operationen, die innerhalb eines gegebenen Systemzyklus auftreten sollen, d2) Aufteilen des Systemzyklus in mehrere Sektionen und d3) Zuweisen jeder der mehreren Operationen zu einer entsprechenden Sektion der mehreren Sektionen des Systemzyklus.
  13. Verfahren nach Anspruch 3, wobei der Abbildungsschritt c die folgenden Unterschritte umfasst: c1) Erzeugen eines originalen Systemdatenflusses, c2) Identifizieren eines spezifischen Algorithmusprogrammfadens, c3) Identifizieren eines Bereichs und von Typen von Operationen, die in dem Algorithmusprogrammfaden enthalten sind und c4) Kategorisieren und Abbilden der Operationen auf mehrere Prozessorgruppen, wobei die Prozessorgruppen Hauptinseln des Datenflusses in der rekonfigurierbaren Architektur repräsentieren.
  14. Verfahren nach Anspruch 13, wobei der Datenfluss, der Kotrollfluss oder die Verbindungskonfiguration so konfiguriert ist, dass sie sich dynamisch ändert, während das konfigurierbare Kommunikationsgerät in Betrieb ist.
  15. Verfahren nach Anspruch 1, wobei das konfigurierbare Kommunikationsgerät auf Spread-Spektrum-Protokolle anwendbar ist.
  16. Elektronisches Gerät zum Konfigurieren eines konfigurierbaren Kommunikationsgeräts mit: – einem computerlesbaren Speicher, – einem Prozessor, der mit dem computerlesbaren Speicher gekoppelt ist, welcher Befehle und Daten beinhaltet, die, wenn sie auf dem Prozessor ausgeführt werden, ein Verfahren zur Konfiguration des konfigurierbaren Kommunikationsgeräts realisieren, wobei das Verfahren die Schritte umfasst: a) Empfangen einer Eingangsinformation an dem Computer, die eine gewünschte Operation identifiziert, die durch das konfigurierbare Kommunikationsgerät realisiert werden soll, b) Erzeugen eines Signalflusspfads der gewünschten Operation auf dem Computer und c) Abbilden der gewünschten Operation auf ein Rechenelement innerhalb des konfigurierbaren Kommunikationsgeräts über den Computer, wobei das Rechenelement eine lokale Steuereinheit aufweist und funktionsspezifisch ist.
  17. Elektronisches Gerät nach Anspruch 16, mit dem weiteren Schritt: d) Wiederholen des Schritts c für jedes der mehreren Rechenelemente innerhalb des konfigurierbaren Kommunikationsgeräts, welches die gewünschte Operation ausführen kann.
  18. Elektronisches Gerät nach Anspruch 16, mit dem weiteren Schritt: d) Wiederholen der Schritte a bis c wie erforderlich, um mehrere Operationen zu realisieren, die eine gewünschte Funktion ermöglichen.
  19. Elektronisches Gerät nach Anspruch 18, mit dem weiteren Schritt: e) Übersetzen des Signalflusspfads in Konfigurationsabbildungen für jedes der Rechenelemente, die für die Realisierung der mehreren Operationen für die gewünschte Funktion verwendet werden.
  20. Elektronisches Gerät nach Anspruch 19, mit dem weiteren Schritt: f) Konfigurieren einer konfigurierbaren Verbindungseinheit des konfigurierbaren Kommunikationsgeräts, um den Signalflusspfad zwischen Rechenelementen für jede der mehreren Operationen zu ermöglichen, welche die gewünschte Funktion ermöglichen.
  21. Elektronisches Gerät nach Anspruch 16, mit dem weiteren Schritt: d) Empfangen der gewünschten Funktion, die auf dem konfigurierbaren Kommunikationsgerät ausgeführt werden soll, an dem Computer und e) Aufteilen der Funktion in einen Satz von diskreten Operationen, die auf mindestens einem der mehreren Rechenelemente des konfigurierbaren Kommunikationsgeräts ausgeführt werden können.
  22. Elektronisches Gerät nach Anspruch 21, mit dem weiteren Schritt: f) Wiederholen des Empfangsschritt d) und des Aufteilungsschritts e) wie erforderlich, um mehrere Funktionen zu erfüllen, welche für die Anwendung benötigt werden.
  23. Elektronisches Gerät nach Anspruch 16, mit dem weiteren Schritt: d) Definieren einer zeitlichen Abfolge zur Aktivierung jedes der mehreren Rechenelemente, die benötigt werden, um die gewünschte Operation zu realisieren.
  24. Elektronisches Gerät nach Anspruch 16, mit dem weiteren Schritt: d) Zeitschachteln der Ressourcen des Rechenelementes, um mehrere Operationen aufzunehmen.
  25. Elektronisches Gerät nach Anspruch 24, mit dem weiteren Schritt: e) Verteilen der Konfiguration an die Rechenelemente des konfigurierbaren Kommunikationsgeräts basierend auf dem Zeitschachtelungsschritt d.
  26. Elektronisches Gerät nach Anspruch 24, wobei der Zeitschachtelungsschritt d) Ressourcen zwischen mehreren Kanälen in einer drahtlosen Kommunikationsanwendung teilt.
  27. Elektronisches Gerät nach Anspruch 24, wobei die Zeitschachtelung im Zeitschachtelungsschritt d) die folgende Schritte umfasst: d1) Identifizieren mehrerer Operationen, die innerhalb eines gegebenen Systemzyklus auftreten sollen, d2) Aufteilen des Systemzyklus in mehrere Sektionen und d3) Zuweisen jeder der mehreren Operationen an eine entsprechende Sektion der mehreren Sektionen des Systemzyklus.
  28. Elektronisches Gerät nach Anspruch 27, mit dem weiteren Schritt: Der Abbildungsschritt c) umfasst die folgenden Unterschritte: c1) Erzeugen eines originalen Systemdatenflusses, c2) Identifizieren eines spezifischen Algorithmus-Programmfadens, c3) Identifizieren eines Bereichs und von Typen von Operationen, die im Algorithmus-Programmfaden enthalten sind und c4) Kategorisieren und Abbilden der Operationen auf mehrere Prozessor-Gruppen, wobei die Prozessor-Gruppen Hauptinseln des Datenflusses in der rekonfigurierbaren Architektur repräsentieren.
  29. Elektronisches Gerät nach Anspruch 24, wobei der Datenfluss, der Kontrollfluss oder die Verbindungskonfiguration so konfiguriert sind, dass sie sich dynamisch ändern, während das konfigurierbare Kommunikationsgerät in Betrieb ist.
  30. Elektronisches Gerät nach Anspruch 16, wobei das konfigurierbare Kommunikationsgerät auf ein Spread-Spektrum-Protokoll anwendbar ist.
  31. Computerlesbares Medium mit darin enthaltenen computerlesbaren Codes, die ein elektronisches Gerät in die Lage versetzen, ein Verfahren zum Konfigurieren eines konfigurierbaren Kommunikationsgeräts zu realisieren, wobei das Verfahren die Schritte umfasst: a) Empfangen einer Eingangsinformation an dem Computer, die eine gewünschte Operation identifiziert, die durch das konfigurierbare Kommunikationsgerät ausgeführt werden soll, b) Erzeugen eines Signalflusspfads der gewünschten Operation auf den Computer und c) Abbilden der gewünschten Operation auf ein Rechenelement innerhalb des konfigurierbaren Kommunikationsgeräts über den Computer, wobei das Rechenelement eine lokale Steuereinheit aufweist und funktionsspezifisch ist.
  32. Computerlesbares Medium nach Anspruch 31, mit dem weiteren Schritt: d) Wiederholen des Schritts c für jedes der mehreren Rechenelemente innerhalb des konfigurierbaren Kommunikationsgeräts, welches in der Lage ist, die gewünschte Funktion auszuführen.
  33. Computerlesbares Medium nach Anspruch 31, mit dem weiteren Schritt: d) Wiederholen der Schritte a bis c soweit notwendig, um mehrere Operationen zu erfüllen, die eine gewünschte Funktion ermöglichen.
  34. Computerlesbares Medium nach Anspruch 33, mit dem weiteren Schritt: e) Übersetzen des Signalflusspfads in eine Konfigurationsabbildung für jedes der Rechenelemente, die verwendet werden, um die mehreren Operationen für die gewünschte Funktion zu realisieren.
  35. Computerlesbares Medium nach Anspruch 34, mit dem weiteren Schritt: f) Konfigurieren einer konfigurierbaren Verbindungseinheit des konfigurierbaren Kommunikationsgeräts, um einen Signalflusspfad zwischen Rechenelementen für jede der mehreren Operationen zu ermöglichen, die die gewünschte Funktion ermöglichen.
  36. Computerlesbares Medium nach Anspruch 31, mit dem weiteren Schritt: d) Empfangen der gewünschten Funktion an dem Computer, die auf dem konfigurierbaren Kommunikationsgerät ausgeführt werden soll und e) Aufteilen der Funktion in einen Satz von diskreten Operationen, die auf mindestens einem der mehreren Rechenelemente des konfigurierbaren Kommunikationsgeräts ausgeführt werden können.
  37. Computerlesbares Medium nach Anspruch 36, mit dem weiteren Schritt: f) Wiederholen des Empfangsschritts d) und des Aufteilungsschritts e) wie notwendig, um mehrere für die Anwendung benötigte Funktionen zu realisieren.
  38. Computerlesbares Medium nach Anspruch 31, mit dem weiteren Schritt: d) Definieren einer zeitlichen Abfolge zur Aktivierung jedes der mehreren Rechenelemente, die benötigt werden, um die gewünschte Operation zu realisieren.
  39. Computerlesbares Medium nach Anspruch 31, mit dem weiteren Schritt: d) Zeitschachteln der Ressourcen des Rechenelementes, um mehrere Operationen aufzunehmen.
  40. Computerlesbares Medium nach Anspruch 39, mit dem weiteren Schritt: e) Verteilen der Konfiguration an die Rechenelemente des konfigurierbaren Kommunikationsgeräts basierend auf dem Zeitschachtelungsschritt d.
  41. Computerlesbares Medium nach Anspruch 39, wobei der Zeitschachtelungsschritt d Ressourcen zwischen mehreren Kanälen in einer drahtlosen Kommunikationsanwendung teilt.
  42. Computerlesbares Medium nach Anspruch 39, wobei das Zeitschachteln des Zeitschachtelungsschritts d die folgende Schritte umfasst: d1) Identifizierung mehrerer Operationen, die innerhalb eines gegebenen Systemzyklus auftreten sollen, d2) Aufteilen des Systemzyklus in mehrere Sektionen und d3) Zuweisen jeder der mehreren Operationen zu einer entsprechenden Sektion der mehreren Sektionen des Systemzyklus.
  43. Computerlesbares Medium nach Anspruch 33, wobei der Abbildungsschritt c die folgenden Unterschritte umfasst: c1) Erzeugen eines originalen Systemdatenflusses, c2) Identifizierung eines spezifischen Algorithmusprogrammfadens, c3) Identifizierung eines Bereichs und von Typen von Informationen, die in dem Algorithmusprogrammfaden enthalten sind und c4) Kategorisieren und Abbilden der Operationen auf mehreren Prozessorgruppen, wobei die Prozessorgruppen Hauptinseln des Datenflusses in der rekonfigurierbaren Architektur repräsentieren.
  44. Computerlesbares Medium nach Anspruch 43, wobei der Datenfluss, der Kontrollfluss oder die Verbindungskonfiguration so konfiguriert ist, dass sie sich dynamisch ändert, während das konfigurierbare Kommunikationsgerät in Betrieb ist.
  45. Computerlesbares Medium nach Anspruch 31, wobei das konfigurierbare Kommunikationsgerät auf Spread-Spektrum-Protokolle anwendbar ist.
DE10195203.1T 2000-01-28 2001-01-29 Verfahren zur Erzeugung einer Konfiguration für ein konfigurierbares Kommunikationsgerät sowie elektronisches Gerät und computerlesbares Medium Expired - Fee Related DE10195203B3 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17882800P 2000-01-28 2000-01-28
US60/178,828 2000-01-28
PCT/US2001/003020 WO2001055864A1 (en) 2000-01-28 2001-01-29 A method of generating a configuration for a configurable spread spectrum communication device

Publications (2)

Publication Number Publication Date
DE10195203T1 DE10195203T1 (de) 2002-12-19
DE10195203B3 true DE10195203B3 (de) 2014-01-02

Family

ID=22654084

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10195203.1T Expired - Fee Related DE10195203B3 (de) 2000-01-28 2001-01-29 Verfahren zur Erzeugung einer Konfiguration für ein konfigurierbares Kommunikationsgerät sowie elektronisches Gerät und computerlesbares Medium

Country Status (6)

Country Link
US (4) US20020031166A1 (de)
JP (1) JP5075313B2 (de)
KR (1) KR100682736B1 (de)
AU (2) AU2001231244A1 (de)
DE (1) DE10195203B3 (de)
WO (2) WO2001055864A1 (de)

Families Citing this family (148)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7266725B2 (en) 2001-09-03 2007-09-04 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
DE19651075A1 (de) 1996-12-09 1998-06-10 Pact Inf Tech Gmbh Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen
US6338106B1 (en) * 1996-12-20 2002-01-08 Pact Gmbh I/O and memory bus system for DFPS and units with two or multi-dimensional programmable cell architectures
DE19654595A1 (de) 1996-12-20 1998-07-02 Pact Inf Tech Gmbh I0- und Speicherbussystem für DFPs sowie Bausteinen mit zwei- oder mehrdimensionaler programmierbaren Zellstrukturen
ATE243390T1 (de) 1996-12-27 2003-07-15 Pact Inf Tech Gmbh Verfahren zum selbständigen dynamischen umladen von datenflussprozessoren (dfps) sowie bausteinen mit zwei- oder mehrdimensionalen programmierbaren zellstrukturen (fpgas, dpgas, o.dgl.)
US6542998B1 (en) 1997-02-08 2003-04-01 Pact Gmbh Method of self-synchronization of configurable elements of a programmable module
US8686549B2 (en) 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
DE19861088A1 (de) 1997-12-22 2000-02-10 Pact Inf Tech Gmbh Verfahren zur Reparatur von integrierten Schaltkreisen
US6226318B1 (en) * 1998-03-31 2001-05-01 Zenith Electronics Corporation Detection of code vectors in single frequency, multiple transmitter networks
US8230411B1 (en) 1999-06-10 2012-07-24 Martin Vorbach Method for interleaving a program over a plurality of cells
US6484025B1 (en) * 2000-01-07 2002-11-19 Conexant Systems, Inc. Method and apparatus for establishing compatibility between cordless telephone applications and physical hardware of the cordless telephone
US6965960B2 (en) 2000-03-01 2005-11-15 Realtek Semiconductor Corporation xDSL symbol processor and method of operating same
GB2360674A (en) * 2000-03-21 2001-09-26 Inmarsat Ltd Concurrent use of multiple TDMA Protocols
US20010025363A1 (en) * 2000-03-24 2001-09-27 Cary Ussery Designer configurable multi-processor system
US8020176B2 (en) * 2000-04-06 2011-09-13 Infineon Technologies Ag Virtual machine interface for hardware reconfigurable and software programmable processors
EP2226732A3 (de) 2000-06-13 2016-04-06 PACT XPP Technologies AG Cachehierarchie für einen Multicore-Prozessor
US6990548B1 (en) * 2000-06-15 2006-01-24 Hewlett-Packard Development Company, L.P. Methods and arrangements for configuring a printer over a wireless communication link using a wireless communication device
US7233810B2 (en) 2000-08-03 2007-06-19 Infineon Technologies Ag Dynamically reconfigurable universal transmitter system
ATE422739T1 (de) 2000-08-03 2009-02-15 Infineon Technologies Ag Flexible tdma systemarchitektur
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
DE10052392A1 (de) * 2000-10-20 2002-05-02 Alcatel Sa Basisstation eines funkbetriebenen Kommunikationssystems
EP2627008A3 (de) * 2000-12-29 2013-09-11 Intel Mobile Communications GmbH Für mehrere drahtlose Kommunikationsstandards konfigurierbarer Kanal-Codec-Prozessor
US7844796B2 (en) 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
US7444531B2 (en) 2001-03-05 2008-10-28 Pact Xpp Technologies Ag Methods and devices for treating and processing data
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements
US7142882B2 (en) * 2001-03-09 2006-11-28 Schmidt Dominik J Single chip wireless communication integrated circuit
US7210062B2 (en) * 2001-03-14 2007-04-24 Mercury Computer Systems, Inc. Wireless communications systems and methods for nonvolatile storage of operating parameters for multiple processor based multiple user detection
US6836839B2 (en) 2001-03-22 2004-12-28 Quicksilver Technology, Inc. Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements
US7752419B1 (en) 2001-03-22 2010-07-06 Qst Holdings, Llc Method and system for managing hardware resources to implement system functions using an adaptive computing architecture
US7249242B2 (en) 2002-10-28 2007-07-24 Nvidia Corporation Input pipeline registers for a node in an adaptive computing engine
US7653710B2 (en) 2002-06-25 2010-01-26 Qst Holdings, Llc. Hardware task manager
US7962716B2 (en) 2001-03-22 2011-06-14 Qst Holdings, Inc. Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements
US7400668B2 (en) * 2001-03-22 2008-07-15 Qst Holdings, Llc Method and system for implementing a system acquisition function for use with a communication device
US6577678B2 (en) 2001-05-08 2003-06-10 Quicksilver Technology Method and system for reconfigurable channel coding
US7245725B1 (en) * 2001-05-17 2007-07-17 Cypress Semiconductor Corp. Dual processor framer
EP1402382B1 (de) 2001-06-20 2010-08-18 Richter, Thomas Verfahren zur bearbeitung von daten
US20030026237A1 (en) * 2001-08-06 2003-02-06 Mohebbi Behzad Barjesteh Cellular base station architecture with soft partitioning
US7996827B2 (en) 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
US7434191B2 (en) 2001-09-03 2008-10-07 Pact Xpp Technologies Ag Router
US8686475B2 (en) 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
US7187663B2 (en) * 2001-10-09 2007-03-06 Schmidt Dominik J Flexible processing system
US7433389B2 (en) 2001-11-20 2008-10-07 Mediatek Inc. Methods and apparatus for spread spectrum signal processing using a reconfigurable coprocessor
US7046635B2 (en) 2001-11-28 2006-05-16 Quicksilver Technology, Inc. System for authorizing functionality in adaptable hardware devices
US6986021B2 (en) 2001-11-30 2006-01-10 Quick Silver Technology, Inc. Apparatus, method, system and executable module for configuration and operation of adaptive integrated circuitry having fixed, application specific computational elements
US8412915B2 (en) * 2001-11-30 2013-04-02 Altera Corporation Apparatus, system and method for configuration of adaptive integrated circuitry having heterogeneous computational elements
US7215701B2 (en) 2001-12-12 2007-05-08 Sharad Sambhwani Low I/O bandwidth method and system for implementing detection and identification of scrambling codes
US7403981B2 (en) 2002-01-04 2008-07-22 Quicksilver Technology, Inc. Apparatus and method for adaptive multimedia reception and transmission in communication environments
AU2003208266A1 (en) 2002-01-19 2003-07-30 Pact Xpp Technologies Ag Reconfigurable processor
GB2385498A (en) * 2002-02-13 2003-08-20 Pa Consulting Services Adjustable baseband processing of telecommunications signals
WO2003071432A2 (de) 2002-02-18 2003-08-28 Pact Xpp Technologies Ag Bussysteme und rekonfigurationsverfahren
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
EP1347581A3 (de) * 2002-03-22 2004-11-17 Kabushiki Kaisha Toshiba Funkkommunikationsgerät und Verfahren dafür
TW590340U (en) * 2002-04-15 2004-06-01 Interdigital Tech Corp User equipment capable of operating in both time division duplex and frequency division modes of wideband code division multiple access
US7493375B2 (en) * 2002-04-29 2009-02-17 Qst Holding, Llc Storage and delivery of device features
US7103091B2 (en) * 2002-05-07 2006-09-05 Stmicroelectronics, Inc. Common data path rake receiver for a CDMA demodulator circuit
US7660984B1 (en) 2003-05-13 2010-02-09 Quicksilver Technology Method and system for achieving individualized protected space in an operating system
US7328414B1 (en) 2003-05-13 2008-02-05 Qst Holdings, Llc Method and system for creating and programming an adaptive computing engine
US8090928B2 (en) * 2002-06-28 2012-01-03 Intellectual Ventures I Llc Methods and apparatus for processing scalar and vector instructions
AU2003286131A1 (en) 2002-08-07 2004-03-19 Pact Xpp Technologies Ag Method and device for processing data
US7657861B2 (en) 2002-08-07 2010-02-02 Pact Xpp Technologies Ag Method and device for processing data
US8108656B2 (en) 2002-08-29 2012-01-31 Qst Holdings, Llc Task definition for specifying resource requirements
US7394284B2 (en) 2002-09-06 2008-07-01 Pact Xpp Technologies Ag Reconfigurable sequencer structure
KR100504804B1 (ko) * 2002-09-28 2005-08-01 엘지전자 주식회사 Wcdma시스템의 역채널화방법
US7937591B1 (en) * 2002-10-25 2011-05-03 Qst Holdings, Llc Method and system for providing a device which can be adapted on an ongoing basis
US8276135B2 (en) 2002-11-07 2012-09-25 Qst Holdings Llc Profiling of software and circuit designs utilizing data operation analyses
US8005918B2 (en) 2002-11-12 2011-08-23 Rateze Remote Mgmt. L.L.C. Data storage devices having IP capable partitions
EP1561159A4 (de) 2002-11-12 2007-08-29 Zetera Corp Elektrische einrichtungen mit verbesserter kommunikation
US7649880B2 (en) 2002-11-12 2010-01-19 Mark Adams Systems and methods for deriving storage area commands
US7170890B2 (en) * 2002-12-16 2007-01-30 Zetera Corporation Electrical devices with improved communication
US7372928B1 (en) 2002-11-15 2008-05-13 Cypress Semiconductor Corporation Method and system of cycle slip framing in a deserializer
US7225301B2 (en) 2002-11-22 2007-05-29 Quicksilver Technologies External memory controller node
US7088950B2 (en) 2002-11-26 2006-08-08 Nokia Corporation Method and apparatus for controlling integrated receiver operation in a communications terminal
US7380151B1 (en) 2002-12-11 2008-05-27 National Semiconductor Corporation Apparatus and method for asynchronously clocking the processing of a wireless communication signal by multiple processors
US7016695B1 (en) 2002-12-11 2006-03-21 National Semiconductor Corporation Apparatus and method for processing a deterministic data flow associated with a wireless communication signal
US20040160975A1 (en) * 2003-01-21 2004-08-19 Charles Frank Multicast communication protocols, systems and methods
KR20040083872A (ko) * 2003-03-25 2004-10-06 유티스타콤코리아 유한회사 더블유-시디엠에이용 에이티엠 스위치
EP1471524A1 (de) * 2003-04-22 2004-10-27 Thomson Licensing S.A. Verfahren zur Dekodierung von Daten aus einer Datenquelle mittels hardware-konfigurationsdaten aus derselben Datenquelle
EP1471520A1 (de) * 2003-04-22 2004-10-27 Deutsche Thomson-Brandt Gmbh Verfahren zur Dekodierung von Daten aus einer Datenquelle mittels Hardware-Konfigurationsdaten aus derselben Datenquelle
US20040255230A1 (en) * 2003-06-10 2004-12-16 Inching Chen Configurable decoder
EP1676208A2 (de) 2003-08-28 2006-07-05 PACT XPP Technologies AG Datenverarbeitungseinrichtung und verfahren
US7328033B2 (en) * 2003-10-01 2008-02-05 Rappaport Theodore S Wireless network system and method
US8423007B2 (en) * 2004-03-19 2013-04-16 Brightpoint, Inc. Multi-phone programming application
KR100621571B1 (ko) * 2004-06-25 2006-09-14 삼성전자주식회사 네트워크 중계장치 및 중계 방법
US7568059B2 (en) * 2004-07-08 2009-07-28 Asocs Ltd. Low-power reconfigurable architecture for simultaneous implementation of distinct communication standards
US7483963B2 (en) * 2004-08-20 2009-01-27 Research In Motion Limited Method and system for configuring a client on host devices by utilizing an interface between a configuration application and host device drivers on a configuring device
US20060095732A1 (en) * 2004-08-30 2006-05-04 Tran Thang M Processes, circuits, devices, and systems for scoreboard and other processor improvements
US7752426B2 (en) * 2004-08-30 2010-07-06 Texas Instruments Incorporated Processes, circuits, devices, and systems for branch prediction and other processor improvements
US7890735B2 (en) * 2004-08-30 2011-02-15 Texas Instruments Incorporated Multi-threading processors, integrated circuit devices, systems, and processes of operation and manufacture
US7328332B2 (en) * 2004-08-30 2008-02-05 Texas Instruments Incorporated Branch prediction and other processor improvements using FIFO for bypassing certain processor pipeline stages
US8612772B1 (en) * 2004-09-10 2013-12-17 Altera Corporation Security core using soft key
US8566616B1 (en) * 2004-09-10 2013-10-22 Altera Corporation Method and apparatus for protecting designs in SRAM-based programmable logic devices and the like
CN101052976A (zh) * 2004-11-03 2007-10-10 皇家飞利浦电子股份有限公司 利用存储频谱机会参数的标签配置频谱捷变装置
US7545764B1 (en) 2004-11-19 2009-06-09 Cypress Semiconductor Corporation Synchronized code recognition
KR100594943B1 (ko) * 2004-11-30 2006-06-30 리전츠 오브 더 유니버스티 오브 미네소타 원칩시스템에서 데이터 변복조 방법
US8408459B1 (en) 2005-01-14 2013-04-02 Brightpoint, Inc. 4PL system and method
US7769912B2 (en) * 2005-02-17 2010-08-03 Samsung Electronics Co., Ltd. Multistandard SDR architecture using context-based operation reconfigurable instruction set processors
US20090327546A1 (en) * 2005-03-03 2009-12-31 Gaby Guri System for and method of hand-off between different communication standards
US7702850B2 (en) 2005-03-14 2010-04-20 Thomas Earl Ludwig Topology independent storage arrays and methods
US8565721B2 (en) 2006-10-20 2013-10-22 T-Mobile Usa, Inc. System and method for rating an IP-based wireless telecommunications based on access point
US7886311B2 (en) 2005-03-29 2011-02-08 Microsoft Corporation Synchronous RIL proxy
US7821974B2 (en) * 2005-03-29 2010-10-26 Microsoft Corporation UMTS RIL extension
US7620981B2 (en) 2005-05-26 2009-11-17 Charles William Frank Virtual devices and virtual bus tunnels, modules and methods
US7797610B1 (en) * 2005-07-19 2010-09-14 Xilinx, Inc. Method and apparatus for virtual quad-port random access memory
US7725609B2 (en) * 2005-08-05 2010-05-25 Qimonda Ag System memory device having a dual port
US7743214B2 (en) * 2005-08-16 2010-06-22 Mark Adams Generating storage system commands
US8819092B2 (en) 2005-08-16 2014-08-26 Rateze Remote Mgmt. L.L.C. Disaggregated resources and access methods
US9270532B2 (en) 2005-10-06 2016-02-23 Rateze Remote Mgmt. L.L.C. Resource command messages and methods
CA2619639C (en) * 2005-10-12 2014-12-30 T-Mobile Usa, Inc. System and method for billing ip-based wireless telecommunications in a converged network
JP4870088B2 (ja) * 2005-11-11 2012-02-08 株式会社エヌ・ティ・ティ・ドコモ 移動通信システム、移動局および基地局並びに制御チャネル割り当て方法
US7698543B2 (en) * 2005-11-15 2010-04-13 Microsoft Corporation User interface for specifying desired configurations
EP1974265A1 (de) 2006-01-18 2008-10-01 PACT XPP Technologies AG Hardwaredefinitionsverfahren
JP4685682B2 (ja) * 2006-03-31 2011-05-18 富士通株式会社 半導体装置
US7924881B2 (en) 2006-04-10 2011-04-12 Rateze Remote Mgmt. L.L.C. Datagram identifier management
US8755675B2 (en) * 2006-04-20 2014-06-17 Texas Instruments Incorporated Flexible and efficient memory utilization for high bandwidth receivers, integrated circuits, systems, methods and processes of manufacture
US8136102B2 (en) 2006-06-20 2012-03-13 Google Inc. Systems and methods for compiling an application for a parallel-processing computer system
US8375368B2 (en) * 2006-06-20 2013-02-12 Google Inc. Systems and methods for profiling an application running on a parallel-processing computer system
US7814486B2 (en) * 2006-06-20 2010-10-12 Google Inc. Multi-thread runtime system
US8146066B2 (en) 2006-06-20 2012-03-27 Google Inc. Systems and methods for caching compute kernels for an application running on a parallel-processing computer system
US8024708B2 (en) 2006-06-20 2011-09-20 Google Inc. Systems and methods for debugging an application running on a parallel-processing computer system
US8261270B2 (en) 2006-06-20 2012-09-04 Google Inc. Systems and methods for generating reference results using a parallel-processing computer system
US8443348B2 (en) * 2006-06-20 2013-05-14 Google Inc. Application program interface of a parallel-processing computer system that supports multiple programming languages
US8136104B2 (en) 2006-06-20 2012-03-13 Google Inc. Systems and methods for determining compute kernels for an application in a parallel-processing computer system
US8381202B2 (en) * 2006-06-20 2013-02-19 Google Inc. Runtime system for executing an application in a parallel-processing computer system
US8108844B2 (en) 2006-06-20 2012-01-31 Google Inc. Systems and methods for dynamically choosing a processing element for a compute kernel
EP1881661A1 (de) * 2006-07-20 2008-01-23 Abilis Systems Sarl Verfahren und Vorrichtung zur Verarbeitung eines analogen Empfangssignals und zum daraus Extrahieren von digitalen Daten nach verschiedene Protokollen
US7788471B2 (en) * 2006-09-18 2010-08-31 Freescale Semiconductor, Inc. Data processor and methods thereof
US8351420B2 (en) * 2006-10-23 2013-01-08 T-Mobile Usa, Inc. Maintenance of subscriber history for service support applications in an IP-based telecommunications system
US7786996B2 (en) 2006-10-24 2010-08-31 Sony Corporation System and method for object oriented hardware including cross-point switch interconnecting modules with I/O
US8050708B2 (en) * 2007-04-12 2011-11-01 Harris Corporation Option management in a software-defined radio
US8131387B2 (en) * 2007-08-09 2012-03-06 Teradyne, Inc. Integrated high-efficiency microwave sourcing control process
US20090119441A1 (en) * 2007-11-06 2009-05-07 Hewlett-Packard Development Company, L.P. Heterogeneous Parallel Bus Switch
US20090161647A1 (en) * 2007-12-20 2009-06-25 Russ Mestechkin Td-scdma uplink processing
US8094641B2 (en) * 2007-12-20 2012-01-10 Mediatek Inc. TD-SCDMA uplink processing
US8391267B2 (en) * 2007-12-20 2013-03-05 Mediatek Inc. TD-SCDMA uplink processing for synchronization of signals at base station receiver
US8078326B2 (en) * 2008-09-19 2011-12-13 Johnson Controls Technology Company HVAC system controller configuration
US20110058518A1 (en) * 2009-09-09 2011-03-10 Comtech Ef Data Corp. Multi-Channel Single Carrier Per Channel (SCPC) Systems and Related Methods
EP2526494B1 (de) 2010-01-21 2020-01-15 SVIRAL, Inc. Verfahren und vorrichtung für ein mehrzweck- und multikern-system zur implementierung von berechnungen auf stream-basis
RU2010111027A (ru) * 2010-03-24 2011-09-27 ЭлЭсАй Корпорейшн (US) Устройство и способ для высокоскоростного расчета таблиц перемежения для нескольких стандартов беспроводной связи
WO2012154612A1 (en) * 2011-05-06 2012-11-15 Xcelemor, Inc. Computing system with hardware scheduled reconfiguration mechanism and method of operation thereof
US8799750B1 (en) * 2011-05-09 2014-08-05 Xilinx, Inc. Convolutional interleaver for bursty memory access
US8693601B2 (en) 2012-01-03 2014-04-08 Intel Corporation Self-correcting multirate filter
CN104124987B (zh) * 2013-04-28 2016-06-08 国际商业机器公司 用于并行处理数据的方法和装置
WO2014190512A1 (zh) * 2013-05-29 2014-12-04 华为技术有限公司 数据传输的方法、装置、设备及基站
EP3376691B1 (de) * 2017-03-14 2019-05-08 Rohde & Schwarz GmbH & Co. KG Testvorrichtung und testverfahren
WO2018195120A1 (en) * 2017-04-17 2018-10-25 Oshea Timothy James Placement and scheduling of radio signal processing dataflow operations
CN107807547B (zh) * 2017-09-22 2020-04-21 上海卫星工程研究所 卫星服务单元控制器
US20230026248A1 (en) * 2021-07-20 2023-01-26 EdgeQ, Inc. Systems and methods for hybrid hardware and software implementation of multiple wireless standards
CN114442529A (zh) * 2022-01-18 2022-05-06 深圳市显控科技股份有限公司 I/o口扩展电路及工控系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999023762A1 (en) * 1997-11-03 1999-05-14 Harris Corporation Reconfigurable radio system architecture

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4096732A (en) * 1977-08-19 1978-06-27 Springer Barry R Camera testing methods and apparatus
US4481583A (en) * 1981-10-30 1984-11-06 At&T Bell Laboratories Method for distributing resources in a time-shared system
JP3323950B2 (ja) * 1992-03-17 2002-09-09 サン・マイクロシステムズ・インコーポレーテッド デジタル画像処理システムでidctを実施する方法及びそのためのidctプロセッサ
US5483647A (en) * 1992-12-17 1996-01-09 Bull Hn Information Systems Inc. System for switching between two different operating systems by invoking the server to determine physical conditions to initiate a physical connection transparent to the user
US6067008A (en) * 1993-05-25 2000-05-23 Intellectual Property Development Associates Of Connecticut, Inc. Methods and apparatus for inputting messages, including advertisements, to a vehicle
AU671781B2 (en) 1993-10-28 1996-09-05 Motorola, Inc. Demodulator logic unit adaptable to multiple data protocols
US5621705A (en) * 1994-05-02 1997-04-15 Colorado Seminary Programmable timing unit for generating multiple coherent timing signals
US5568475A (en) 1994-12-21 1996-10-22 Lucent Technologies Inc. ATM network architecture employing an out-of-band signaling network
US6072994A (en) * 1995-08-31 2000-06-06 Northrop Grumman Corporation Digitally programmable multifunction radio system architecture
US5872810A (en) * 1996-01-26 1999-02-16 Imec Co. Programmable modem apparatus for transmitting and receiving digital data, design method and use method for said modem
US5790880A (en) * 1996-01-04 1998-08-04 Advanced Micro Devices Microprocessor configured to dynamically connect processing elements according to data dependencies
US6058114A (en) * 1996-05-20 2000-05-02 Cisco Systems, Inc. Unified network cell scheduler and flow controller
CA2257996A1 (en) * 1996-06-10 1997-12-18 Mark R. Cummings Method and apparatus for compiling one circuit in a sequence of circuits within a programmable gate array
US5907580A (en) * 1996-06-10 1999-05-25 Morphics Technology, Inc Method and apparatus for communicating information
US6128639A (en) * 1996-06-28 2000-10-03 Cray Research, Inc. Array address and loop alignment calculations
US5940438A (en) * 1997-02-18 1999-08-17 Mitsubishi Electric Information Technology Center America, Inc (Ita) Universal modem for digital video, audio and data communications
US6167525A (en) * 1997-02-26 2000-12-26 Pirelli Cavi E Sistemi S.P.A. Method and system for analysis of electric power transmission link status
US5877766A (en) * 1997-08-15 1999-03-02 International Business Machines Corporation Multi-node user interface component and method thereof for use in accessing a plurality of linked records
US5974049A (en) * 1997-08-29 1999-10-26 International Business Machines Corporation Internet protocol assists for high performance LAN connections
US6026117A (en) * 1997-10-23 2000-02-15 Interdigital Technology Corporation Method and apparatus for generating complex four-phase sequences for a CDMA communication system
US6185418B1 (en) * 1997-11-07 2001-02-06 Lucent Technologies Inc. Adaptive digital radio communication system
US6148006A (en) * 1997-11-12 2000-11-14 Nortel Networks Limited Communication system architecture, exchange having a plurality of broadband modems and method of supporting broadband operation on a one to one basis
US5999990A (en) * 1998-05-18 1999-12-07 Motorola, Inc. Communicator having reconfigurable resources
US6237054B1 (en) * 1998-09-14 2001-05-22 Advanced Micro Devices, Inc. Network interface unit including a microcontroller having multiple configurable logic blocks, with a test/program bus for performing a plurality of selected functions
US6052600A (en) * 1998-11-23 2000-04-18 Motorola, Inc. Software programmable radio and method for configuring
US6456611B1 (en) * 1998-12-04 2002-09-24 Nortel Networks Limited CDMA modem using common block architecture
WO2000069086A1 (en) * 1999-05-10 2000-11-16 Sirius Communications N.V. Method and apparatus for high-speed software reconfigurable code division multiple access communication
US6587448B1 (en) * 1999-10-18 2003-07-01 Lucent Technologies Inc. Reconfigurable wireless system base station

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999023762A1 (en) * 1997-11-03 1999-05-14 Harris Corporation Reconfigurable radio system architecture

Also Published As

Publication number Publication date
JP2003521203A (ja) 2003-07-08
WO2001055866A1 (en) 2001-08-02
US20020031166A1 (en) 2002-03-14
US6701431B2 (en) 2004-03-02
AU2001231244A1 (en) 2001-08-07
US7254649B2 (en) 2007-08-07
KR20020079813A (ko) 2002-10-19
JP5075313B2 (ja) 2012-11-21
US20050282534A1 (en) 2005-12-22
KR100682736B1 (ko) 2007-02-15
US20060003757A1 (en) 2006-01-05
US20010034227A1 (en) 2001-10-25
DE10195203T1 (de) 2002-12-19
AU2001233150A1 (en) 2001-08-07
WO2001055864A1 (en) 2001-08-02

Similar Documents

Publication Publication Date Title
DE10195203B3 (de) Verfahren zur Erzeugung einer Konfiguration für ein konfigurierbares Kommunikationsgerät sowie elektronisches Gerät und computerlesbares Medium
DE60302826T2 (de) Auswahl eines geeigneten Übertragungsmechanismus für die Übertragung eines Objektes
DE19815865B4 (de) Kompiliersystem und Verfahren zum rekonfigurierbaren Rechnen
DE69733767T2 (de) Sekundäre kanäle unter verwendung von kodeverletzungen
DE69737641T2 (de) Zuweisung von Betriebsmitteln in einem Mehrträger-Mobilfunksystem mit mehreren Benutzern
DE60131717T2 (de) Drahtlose Zwei-Moden Datenübertragung
DE60215990T2 (de) Dynamisches Dienstmerkmal in einem mobilen Kommunikationsgerät oder einer SIM-Karte zum Empfang und zur Ausführung von dynamischen Dienstskripten in Form kurzer Textnachrichten, beispielsweise SMS
DE602005001394T2 (de) Integrationsvorrichtung und -verfahren für eine militärische datenverbindung
DE69838922T2 (de) Mehrkanaliger Viterbi-Dekoder
DE102020116075B4 (de) Kommunikationssystem mit einer konfigurierbaren modulationsordnung und zugehöriges verfahren und vorrichtung
DE69837452T2 (de) Verfahren und Einrichtung zum Erzeugen von komplexen Vierphasenfolgen für ein CDMA-Übertragungssystem
CN104980932B (zh) 多模基站的频谱分配方法及装置
DE60019469T2 (de) Effizienter spreizer für spreizspektrum-übertragungssysteme
DE102007046570A1 (de) Verfahren und Vorrichtung zum Erzeugen von Zeitplänen zur Ausführung von Funktionen in einem Prozesssteuerungssystem
DE102008039148A1 (de) Sender/Empfänger, HF-Sender/Empfänger, Kommunikationssystem und Verfahren zum Übertragen von Steuerpaketen
DE102016109416A1 (de) Adaptives frequenzspringen (afh) mit kanalsperrung (ci) für bluetooth
DE102013207825A1 (de) Vorrichtung und verfahren zum verarbeiten eines eingangssignals
EP3550903B1 (de) Ressourcenplanungsverfahren, -vorrichtung und -system
DE102014107993A1 (de) Reduzieren des Übertragungssignal-Artefaktabstandes
DE102022125814A1 (de) Geteiltes mehrlenker-system
DE10216240A1 (de) Verfahren und Vorrichtung zur Berechnung eines iterierten Zustands einer rückgekoppelten Schieberegisteranordnung
DE102004057766B4 (de) Funkschnittstellensteuerung auf Grundlage einer Ereignislistenspezifikation
CH716941B1 (de) FDMA-Kommunikationsverfahren mit Verwendung einer Grundfrequenz und deren Harmonischen.
DE102018209206A1 (de) Software-rekonfigurierbare mobile vorrichtungen und verfahren
CN110532070B (zh) 用于方法调用的方法、存储介质、设备及系统

Legal Events

Date Code Title Description
8127 New person/name/address of the applicant

Owner name: INFINEON TECHNOLOGIES AG, 81669 MUENCHEN, DE

8110 Request for examination paragraph 44
8125 Change of the main classification

Ipc: H04B 1/69 AFI20051017BHDE

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R020 Patent grant now final

Effective date: 20141003

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