DE10195203B3 - A method of creating a configuration for a configurable communication device and electronic device and computer readable medium - Google Patents

A method of creating a configuration for a configurable communication device and electronic device and computer readable 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
German (de)
Other versions
DE10195203T1 (en
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/en
Application granted granted Critical
Publication of DE10195203B3 publication Critical patent/DE10195203B3/en
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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Transceivers (AREA)

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.A method for generating a configuration for a configurable communication device for realizing a desired function in a computer with a processor and a computer-readable memory, which are coupled to one another, the method comprising the steps of: a) receiving an input information on the computer that a desired operation identified, which is to be realized by the configurable communication device, b) generating a signal flow path of the desired operation on the computer and c) mapping the desired operation onto a computing element within the configurable communication device via the computer, the computing element having local control and being function-specific ,

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.The present invention relates to the field of communication technology. More particularly, the present claimed invention relates to a method of configuring a configurable communication device and to an electronic device and to a computer-readable medium of electronic device.

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.The WO 99/23762 A1 describes a system and method for providing a digital, radio frequency, field-configurable communication system that may be configured in a transmitter or a receiver to function with a variety of signaling schemes, e.g. AM, AME, A3E, H3E, J3E, CW, SSB, M-PSK, QAM, ASK, angle modulation, including FM, PM, FSK, CMP, MSK, CPFSK, etc. The system includes nonvolatile memory adapted to receive and store instructions for configuring the system. A user selects the mode of operation and the signaling scheme, and instructions and software are loaded from memory into the system and configure the system according to the user's choice.

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.Wireless communication has many applications in private and industrial markets. Spread spectrum techniques are becoming increasingly important as a method of transmission in a wireless communication system. Among the many spread spectrum communication applications / systems are: fixed wireless, unlicensed wireless communications from the Federal Communications Commission (FCC), local area networks (LAN), cordless telephony, personal base stations, telemetry, Mobile and other digital computing applications. While each of these applications uses spread spectrum communication, they generally use special and incompatible protocols for various signal processing operations, such as encoding and decoding, modulation and demodulation, etc. These specialized and incompatible protocols often require special hardware, software, and communication protocol techniques , This approach can be costly in terms of design, testing, manufacturing, and infrastructural resources.

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.In addition to the differences between spread spectrum communication applications, significant changes within a given spread spectrum communication application occur over time. For example, within the cellular, code division multiple access (CDMA) spread spectrum application, significant changes have occurred over time. These changes occur in the form of a variety of different versions and performance levels, eg. Inter-standard 95 (IS-95) CDMA, broadband CDMA (WCDMA), 3GPP, etc. And the speed with which improvements and new standards are emerging is increasing as more industrial resources meet the needs and opportunities within the wireless Be contracted together. Unfortunately, all of these factors lead to minimal uniformity in the world at any one time. For example, different countries and different service providers often use systems that are specifically adapted to their specific version of a communication protocol.

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.If a single device were able to overcome the deviations within a spread spectrum communication protocol and the deviations over time within each protocol, it could provide a common solution. Such a device would have to be of a generally generic nature to accommodate such a wide variety of functions and applications. However, such a universal device would typically not be able to perform any of the various applications alone, for example in its manufacturing state. This is a fully expected drawback of generality in the design for versatility in a potential application. Thus, a need arises for a method of overcoming the limitations of a universal spread spectrum device to perform a specific spread spectrum application.

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.Given the internal ambiguity of a universal spread spectrum device, a substantial amount of external control information will be available to adapt to a specific application. While a user could manually provide external control information to the spread spectrum universal device, this would be time consuming and inefficient. Furthermore, given the complexity of a universal device that would be required to allow the device to perform a wide range of complicated and compute-intensive algorithmic data processing operations, the success of such a manual operation would be unlikely. Consequently, there is a need for a method to overcome the limitations of manually programming a universal spread spectrum device.

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.Furthermore, with the large amount of variables and subcomponents in such a device, there would be many different combinations and permutations of hardware connections and Variable assignments possible. Consequently, it would be highly probable that errors, glitches, malfunction or even inability to operate would occur. Furthermore, other complicated issues, such as clean timing and sequencing, memory addressing, and adapting algorithmic assignments for a universal spread spectrum device would be cumbersome tasks. Consequently, there is a need for a method for overcoming the problems of working with a full set of possible combinations and permutations of hardware sequencing and variable assignments.

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.Even if it were possible to successfully set the universal device for a specific application, verification of the settings could be difficult. For example, a device could operate acceptably with a set of variables. However, this performance can not guarantee that the device will work successfully in another scenario. Consequently, the need arises for a method and apparatus for verifying and simulating the operation of the general purpose device that receives external control information for a specific application.

Zusammenfassung der ErfindungSummary of the invention

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.The present invention provides a method and apparatus that overcomes the limitations of a universal spread spectrum device to perform a specific spread spectrum application. Further, the present invention provides a method that efficiently manages external control information of a universal spread spectrum device so that it can execute a specific application. Furthermore, the present invention provides a solution that overcomes the problems of working with a complete set of possible combinations and permutations of hardware sequences and variable allocations for the universal spread spectrum device. The present invention also provides a method and apparatus for verifying and simulating the operation of the universal device that has received external control information for a specific application.

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.In particular, the present invention provides an apparatus and method that produce a configuration for a configurable spread spectrum device. The method implemented on a computer having a processor and a computer-readable memory begins with a first step of receiving input information identifying a desired function and operation within the desired function realized by a configurable communication device should. In a subsequent step, a signal flow path for the desired operation is generated by the computer. Next, the desired operation is mapped to a computing element or set of computing elements within the configurable communications device. The computing element in the present embodiment has local control logic and is function specific. The aforementioned steps are repeated to provide multiple operations needed to accomplish the desired function. Next, a configurable connection unit of the configurable electronic device is configured to enable the signal flow path and mapping operations between a computing element for each of the multiple operations that together provide the desired function.

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.A second embodiment of the present invention provides an electronic device having a processor and computer readable memory coupled to the processor. The electronic device includes commands and data stored on the computer-readable memory that, when executed using the processor, enable the aforementioned method of the first embodiment. The method and apparatus for providing configuration information to a configurable communication device is referred to in one embodiment as a programming interface.

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.These and other objects and advantages of the present invention will become apparent to those skilled in the art after having read the following detailed description of the preferred embodiment, which is also illustrated in the various drawings.

Kurze Beschreibung der ZeichnungenBrief description of the drawings

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.The drawings contained herein are incorporated in and constitute a part of this specification. The drawings illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention. It is obvious that the drawings referred to in this specification are not scaled unless expressly so designated.

1A ist ein Blockschaltbild eines Konfigurationssystems gemäß einer Ausführungsform der vorliegenden Erfindung. 1A FIG. 12 is a block diagram of a configuration system according to an embodiment of the present invention. FIG.

1B ist ein Blockschaltbild von konfigurationserzeugenden Funktionen, die durch einen externen Prozessor ausgeführt werden gemäß einer Ausführungsform der vorliegenden Erfindung. 1B FIG. 12 is a block diagram of configuration generating functions performed by a external processor are executed according to an embodiment of the present invention.

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. 2 FIG. 10 is a block diagram of an external processor device for creating a configuration for a configurable communication device according to an embodiment of the present invention.

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. 3 FIG. 10 is a flowchart of the process used to design a configuration of a configurable electronic spread spectrum communication device in accordance with an embodiment of the present invention. FIG.

Detaillierte Beschreibung der ErfindungDetailed description of the invention

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.In the following, reference will be made in detail to the preferred embodiments of the invention. Examples of the preferred embodiments are illustrated in the accompanying drawings. While the invention will be described in conjunction with the preferred embodiments, it is to be understood that these are not intended to limit the invention to those embodiments. The invention is intended more broadly to cover alternatives, modifications, and equivalents, which are included within the spirit and scope of the invention as defined by the appended claims. Furthermore, in the following detailed description of the present invention, several specific details are set forth in order to provide a thorough understanding of the present invention. However, it will be apparent to those skilled in the art that the present invention may be practiced without these specific details. In other instances, well-known methods, procedures, components, and circuits have not been described in detail so as not to unnecessarily obscure aspects of the present invention.

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.The present invention can be practiced within a wide variety of digital spread spectrum wireless communication systems or techniques that use code sequences. Code sequences are used in wireless communication for many functions, including: filtering, searching, modulation and demodulation. The systems or techniques that utilize code sequences include, but are not limited to, stationary wireless applications, unlicensed wireless communications from the Federal Communications Commission (FCC), wireless local area networks (W-LAN), cordless telephony, cellular telephony, personal base stations , Telemetry and other digital computing applications. The present invention can be applied to both transmitters such as a base station and to receivers such as a fixed wireless terminal, W-LAN, cellular telephony and personal base station applications.

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.A "fixed wireless" application to which the present invention is particularly applicable is a "metropolitan multipoint distribution system" (MMDS). Examples include wireless cable transmissions or two-way wireless local loop (WLL) systems. Some examples of a W-LAN that can transmit digitized audio and data packets to which the present invention may be applied include "Open Air" and the 802.11b specification of the Institute of Electrical and Electronics Engineers (IEEE). In yet another application, a specific example of an application of the unlicensed wireless communication service of the Federal Commission for Communications FCC, for which the present invention may be used, includes "Industrial, Scientific and Medical" (ISM) band devices, the wireless May include telephony products. Personal base stations may use either wireless or cellular wireless telephony communication standards. In the latter case, the cellular telephony systems in which the present invention may be applied inter alia include IS-95, IS2000, ARIB, 3GPP-FDD, 3GPP-TDD, 3GPP2, 1EXTREME or other custom protocols. The range of code sequences used in the exemplary spread spectrum applications disclosed herein is useful for defining the class of functions for which the present configurable code generator unit is applicable.

Konfigurationssystemconfiguration system

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.Referring now to 1A 13, a block diagram of a configuration system according to an embodiment of the present invention is shown. A configuration system (or a programming interface system) 100a includes an external processor device 102 and a configurable communication device 104 , The external processor device 102 includes configuration information 103 stored in a memory for the configurable communication device. The external processor device is a workstation in one embodiment.

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.The configurable communication device includes two computing elements in the present embodiment 106 and 108 passing through a line 107 are coupled. The administration 107 In one embodiment, it is a configurable connection unit that selectively selects the elements 106 and 108 or parts of it. An exemplary configurable communication device 104 is incorporated in co-pending U.S. Patent Application Serial No._______, entitled "A wireless spread Spektrum communication platform using dynamically reconfigurable logic ", with the lawyer's reference 9824-0035-999 shown. This related application is co-pending and is hereby incorporated by reference into the content of the application.

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.The configuration information 103 from the external processor device 102 is through an interface 109 transmitted to the configurable communication device. the interface 109 is a wired communication connection that is the external processor device 102 and the configurable communication device 104 coupled in one embodiment. In another embodiment, however, the interface is 109 an electronic storage medium, such as a CD-ROM and host, the configuration information 103 for the configurable communication device. In yet another embodiment, the interface is 109 a wireless transmission from the external processor device 102 or another communication device, for example a wireless base station or a wireless test platform.

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.In another aspect of the present invention, configuration information is provided for the present embodiment at the time that the configurable configuration device 104 produced and / or programmed for the first time for operation in the field. In another embodiment, however, configuration information is dynamically provided at a time at which the configurable communication device 104 in the field is in operation.

Externes RechengerätExternal computing device

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.Referring now to 1B 13, there is shown a block diagram of configuration generating functions performed by an external processor device according to one embodiment of the present invention. The block diagram 100b provides an exemplary functional basis for generating configuration information 103 from 1A Ultimately, this is the configurable communication device 104 to configure.

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.The functional block diagram 100b includes a configuration generating function block 110 which is able to receive data and command information and provide configuration output information. In particular, the data information relates to the user-desired configuration of the configurable communication device 104 from 1A , In contrast, command input information is instructions for one or more applications through the configurable communication device 104 to be realized. An example of such command input information is industry standards, communication protocols, etc. In addition, data input information provided by a user may include proprietary algorithms and methods that operate within the limitations of an application protocol and are covered by its latitude. Finally, the configuration output information relates to the configuration information provided by the configuration generating function block 110 which are the configurable communication device 104 from 1A allow you to work according to the user's input data and command data for the application.

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.The data inputs of the present embodiment include, among others: 1) desired application 114a the configurable communication device 104 , 2) desired function 114b through the configurable communication device 104 3) desired expected input information 114c that configure from the communication device 104 4) desired output information 114d through the configurable communication device 104 to be generated, 5) desired parameters 114e within the configurable communication device, which may include customizable proprietary and non-proprietary methods.

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..As an example of user-provided data inputs, a user could provide desired application input information 114a as a "wireless local loop" (WLL) for which the configurable communication device is to be configured. Similarly, the desired functional input information 114b be defined by a user as a modulation function for which configuration information must be determined to be the universal configurable communication device 104 to operate. The desired input information 114c may refer to the format in which data awaiting the computational element configured for modulation within the configurable communication device is expected. This input format may reflect other proprietary or unique custom data processing techniques that prepare and format the data for the subsequent modulation function. The desired output information 114d correspond to the user-requested format of the output data. While a communication protocol, so to speak, tightly defines the format and method by which data is transferred between multiple devices, the format and method of processing data within a device is up to the user ( for example the device developer). In this way, a user can develop and implement custom proprietary and non-proprietary algorithms and operations adapted to the user's needs, such as finding a compromise of quality of service (QOS), power consumption, 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..The command input information to the configuration generating function block 110 include, among others: 1) a library of functional input information 116a . 2 ) a calculation resource input information 116b for the configurable communication device and 3) protocol format input information 116c , An example of a library of functions would include standard configurations or functions provided by the configurable communication device 104 be adjusted. In one embodiment, the library may include functional input information 116a Include functions that are common to multiple applications, thus allowing for close customization by a user. An example of a calculation resource input information 116b can be the number of available computing elements (for example, the computing elements 106 and 108 from 1A ), the flexibility of each configurable connection unit (for example, the configurable connection unit 107 from 1A etc. etc. for a given configurable communication device, such as a device 104 from 1A , include. Lastly, an example of protocol format input information 116c Include rules and definitions dictated by a protocol to which the configurable communication device is intended to conform, such as rules for syntax, format, timing, 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.Output information provided by the configuration generating function block 110 generated include, among other things: 1) configuration map 118a , 2) timing sequence 118b , 3) connection configuration 118c and 4) clock rates 118d , An example of a configuration image 118a generated by a configuration-generating function block 110 includes setting for selective connection units, bit words for enabling configurable devices, thresholds for logical functions, etc. This information is for computing elements, for example 106 and 108 from 1A as well as provided for their subcomponents. Furthermore, this information is provided for these elements and sub-components at different times of a processing cycle. The output information for timing sequences 118b includes information, such as when certain computational elements realize a specific configuration, when certain computational elements are selectively coupled, and when certain computational elements are enabled to perform their operations and functions. Finally, an example of a connection configuration is included 118c Information that defines which computational elements are coupled together and which subcomponents of computational elements are coupled together. Example user-definable data inputs 114a to 114e , Command inputs 116a to 116c and configuration outputs 118a to 118d are provided in the scope of the detailed description and in Appendix A of the patent application "A WIRELESS SPREAD SPECTRUM COMMUNICATION PLATFORM USING DYNAMICALLY RECONFIGURABLE LOGIC", which is incorporated by reference.

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.Referring now to 2 13, there is shown a block diagram of a computer system used to connect a user to a configurable heterogeneous multiprocessor device according to an embodiment of the present invention. A computer system 120a Fig. 3 illustrates an example implementation of the external processor device 102 from 1A available, which is the configuration-generating function block 110 from 1B allows.

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.The computer system 120a includes a nuclear unit 220 that have a control / data bus 202 for transmitting information, a central processing unit 204 to process information and commands by bus 202 is coupled and a storage unit 206 to store information and commands by bus 202 is coupled. The storage unit 206 may include a memory configuration, such as random access memory (RAM), for storing temporary information and instructions to the central processing unit 204 , In addition, a non-volatile memory 208 comprise a memory configuration consisting of "read only memory" (ROM) for storing static information and commands for the central processing unit 204 , A data storage unit 210 can store program commands and extensive database type information.

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..The computer system 120a Also includes an optional display device 218 , The display device 218 may be any type of display, such as an analog or digital display unit. The computer system 120a also includes an optional input device 216 that by bus 202 is coupled. The optional input device 216 may include any input device, such as an alphanumeric input device, such as a keyboard or pointing element, such as a mouse, etc. An optional input / output signal unit 212 provides a communication interface of the computer Systems 120a available, for example a serial interface 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.The bus 202 FIG. 10 illustrates an exemplary docking configuration of devices in the computer system 120a to disposal. The bus 202 is shown as a single bus line for the sake of clarity. It is obvious to the person skilled in the art that the bus 202 Subcomponents of specific data lines and / or control lines for the transmission of commands and data between corresponding devices may include. It is further obvious to the skilled person that the bus 202 may be formed in a parallel configuration or a serial configuration and that the bus 202 Connection units, gateways and / or translators, as appropriate for a given application.

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.It is also obvious that the computer system 120a by way of example only, and that the present invention may be practiced within a number of different systems, such as in a general purpose computer system, a dedicated workstation, an embedded system, etc. Furthermore, the present invention is well suited to use a host of smart devices having similar components as the example computer system 120a ,

Realisierung von Prozessen in FlussdiagrammenRealization of processes in flowcharts

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.Referring now to 3 13, there is shown a flowchart of the process used to design a configuration of a configurable electronic spread spectrum communication device according to one embodiment of the present invention. A flowchart 3000 provides example steps and an exemplary sequence of steps by which the configuration system 100a , the functional block diagram 100b and the computer system 120a can be operated harmonically to enable the present invention. The present flowchart provides efficient, robust and timely configurable operations for a configurable communication device. The flowchart 3000 is generally realized to use the immediately preceding figures.

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..The flowchart 3000 starts with the step 3002 , In step 3002 In the present embodiment, input information is received at a computer identifying a desired function that the configurable device is to perform. For example, in one embodiment, it is possible for a user to select a communication (or arithmetic) function, such as modulation, demodulation, encoding, or decoding, as in FIG 1B shown. However, the present invention is well-suited to realize any type of function within the operating range of the configurable hardware. The step 3002 is in one embodiment through the entrance 114a from 1B realized that the computer system 120a from 2 is provided, wherein a user input data via an optional input device 216 , or from the storage units 206 . 208 or 210 of the computer system 120a in 2 provides. A user may, in one embodiment, perform any desired function for the step 3002 enter in a software library of functions 116a is available, for example Java, the programming language 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 particular, a user may benefit from the hierarchical approach of the interface, including the idea of extensible data types, to take advantage of the inherent flexibility of the architecture. The desired function may be a "high-level" function, such as a modulation, which may be further divided into more discrete sub-functions, depending on the degree of programming desired for an application and in the library of functional input information 116a is available. Appendix A of the patent application "A WIRELESS SPREAD SPECTRUM COMMUNICATION PLATFORM USING DYNAMICALLY RECONFIGURABLE LOGIC", which is incorporated herein by reference, provides an exemplary list of modem and encode / decode functions and programming tools for which hardware cores ( or computing elements) 106 and 108 from 1A can be configured for an example spread spectrum application. The present invention is well suited to a wide range of data processing functions and cores that are passed through the step 3002 can be programmed. The step 3002 For example, a list of these subfunctions or operations may be provided to the user via a graphical user interface (GUI) on the optional display unit 218 from 2 for use in subsequent steps of the flowchart 3000 provide.

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.In the present embodiment, the list of functions provides a one-to-one mapping to the computing elements 106 and 108 from 1A and is therefore limited to it. However, the present invention is well suited to the step 3002 to realize with different degrees of functional granularity. For example, in a typical WCDMA application, the determining computations are centered around five major signal processing functions: "chip matched filtering", "code epoch search", chip demodulation / despreading, symbol rate processing, and Channel decoding. A user has the possibility to completely change the connection between these groups or to bypass the group (s) via the use of an interface in the configurable communication device. In this way, the ability of the data flow-specific configurable connection units between islands of compute cores can be fully exploited. In the flowchart 3000 follow the step 3002 the step 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.In step 3004 In the present embodiment, input information is received at a computer identifying a desired sub-function within the given function or a desired operation within a given sub-function for execution on the configurable device. The step 3004 In one embodiment, it is implemented in the same way as the step 3002 , A user can enter any desired, or none, sub-function present in a programming template that serves as a library of function input information 116a from 1B is made available. The programming template can be any type of appropriate programming language. For example, in one embodiment of the present invention, a list is provided of the functions in a data core specification list from which a user can select demodulation and encoding / decoding functions. The data core specification list is described in Appendix A of the co-pending application "A WIRELESS SPREAD SPECTRUM COMMUNICATION PLATFORM USING DYNAMICALLY RECONFIGURABLE LOGIC", which is hereby incorporated by reference. For example, a user may select a sub-function of code modulation within the larger function of the modulation. In the flowchart 3000 follow the step 3004 the step 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.In step 3006 In the present embodiment, input information is received identifying desired settings for a desired function. Input information for the step 3006 include, among other things: input and output (IO) parameters 3006a , determined by and for a function that is realized in a computing element, for example the elements 106 and 108 from 1B , Similarly, the input information includes the step 3006 also parameters and format inputs 3006B to specify internal operating parameters for the function by the computing elements of a configurable device 104 from 1A will be realized. A specification list may provide different inputs, outputs, and parameters available for designing a user-configurable device configuration. While the present embodiment provides specific selections of input information, output information, and parameters, the present invention is well-suited to use a wide range of options as desired for a given application. A set of available resources {Ri} as input information 3006C becomes the step 3006 also provided for the calculation. The input information 3006C represents the set of basic primitives, such as the computational element 106 from 1A , which is located in the configurable communication device 104 located. The available resources {Ri} are provided in the communication device design based on expected functions, subfunctions, and operations provided for protocol deviations, possible algorithmic flexibility needs, projected future algorithmic and protocol-related growth, and indefinite items. In one embodiment, the resources of a given configurable device may be stored statically in a memory of a computer system 120a from 2 to provide. Alternatively, the resources of a given configurable device may be determined dynamically by calling components of a configurable device, such as the communication device 100a , via a coupling arrangement (wireless or serial / bus hardware) to the computer system 120a , In the flowchart 3000 follow the step 3006 the step 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.In step 3008 In the present embodiment, a signal flow path (or diagram) of the desired mode of operation is generated. A signal flow path is a list of interfaces, such as the selected input and output types and formats, for a given function. The step 3008 In one embodiment, this is done by the processor 204 from 2 realized, which selectively the desired connections between configurable elements (for example, the elements 106 and 108 from 1A ) maps to the allowed connections that are available in a given configurable communication device. Consequently, input information becomes 3008a of a set of allowed connections {Ci} to the step 3008 provided for the calculation. In the present embodiment, the allowed set of connections {Ci}, for example hierarchical connection configurations of the configurable device, are provided by a programming rule, for example the library of functions 116a from 1B , The input information 3008a represents the amount of reconfigurability that is provided within a hardware core and between hardware cores, for example via the reconfigurable connection unit 107 from 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. The step 3008 involves the creation of an original system data flow. The original system data flow can be generated from a written specification and system simulation. Specific algorithmic threads are identified from the original system data flow. The specific program threads are identified by a ranking of computational complexity in the present embodiment. One embodiment of the hierarchy in a typical WCDMA application where the essential calculations are centered around five major signal processing functions include: 1) "chip matched filtering", "code search", "chip demodulation / despreading", channel decoding and symbol rate processing , These algorithmic threads typically require algorithms consisting of millions of operations per second (MOPS). An exemplary spread spectrum application may group these algorithms into five categories based on their MOPs. These groups include: 1) a chip rate processor group, a symbol sequence processor group, 3) a parameter estimation processor group, 4) a channel element (multi-finger) processor group, and 5) an input processor group. A user has the option to bypass a processor group via the bypass mechanism and / or the coprocessor interface. Using the term hierarchical connection, the present invention offers a high degree of flexibility in user definition of the preferred sharing boundaries between hardware and software. In the present embodiment, this limit may actually change over time based on the type, capacity, performance, and computational efficiency of the host computer, such as the processor 120a from 2 , and the configurable communication device, such as the configurable device 104 from 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.The allowed connections in the step 3008 are provided in the design phase of the communication device, based on an assumed flexibility due to protocol changes, possible algorithmic flexibility needs, projected future algorithmic and protocol-related growth, and indefinite postings. In one embodiment, the allowed connections {Ci} for a given configurable device may be static in a memory of the computer 120a to provide. Alternatively, the allowed connections {Ci} for a given configurable device may be determined dynamically by a calling component of a configurable device, such as the communication device 100a , via a coupling arrangement (wireless or serial / bus hardware) by the computer system 120a , The step 3008 controls a set of communication primitives that match those in step 3008 Validated connections correspond to the implementation file output 3007 at. The implementation file 3007 describes how a function is formed from the set of basic data and control structures in the hardware cores. In particular, the step comprises 3008 the formation of an abstraction of the data path configuration by the implementation file output functions 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.By providing a diagram of these interfaces, for example in a list, state machine or table, the compatibility of data types between sequential functions and hardware implementations can be checked and corrected if necessary. Consequently, the step represents 3008 A quality control procedure is provided for the functions implemented, guaranteeing a level of operational safety and efficiency. By intelligently tracking the interfaces of functions and sub-functions, the computer can keep track of a disordered, user-selected list of functions or sub-functions. The step 3008 In one embodiment, storage of data types in memory of a storage medium, such as the blocks, for example 206 . 208 or 210 of the computer system 120a in 2 , and mapping the interfaces through the processor 204 realized. In the flowchart 3000 follow the step 3008 a step 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.In step 3010 In the present embodiment, the desired operation is mapped to a function-specific computing element with local control. The step 3010 In one embodiment, this is by the processor 204 Realizes the desired functions and / or sub-functions and operations in the steps 3002 and 3004 which maps to the available hardware resources of a given configurable device.

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.The imaging step 3010 essentially combines a function with a hardware core with a matching architecture. In particular, configure the in step 3006 selected parameters propagate the hardware kernel for the specific subfunction or operation within a class of possible subfunctions or operations. This scenario occurs for the many different mathematical, computational, and logical categorizations for the different functions used in a given application and the reconfigurability area for which individual hardware cores can be designed.

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.In an exemplary embodiment, the steps 3002 to 3012 for a class of Despreading and equalization functions are adapted with different parameters that belong to different communication protocols to which they belong. This embodiment provides a hardware core (or computational element) with sufficient reconfigurability that can accommodate the differences in despreading and equalization functions between the protocols. Consequently, the reconfigurability parameters are provided to a user for the desired selection.

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.The step 3010 controls a set of extensible data types that belong to the hardware cores and their configurable properties to the implementation file output 3007 by appropriate specification of available resources to perform a desired function and / or sub-function. Other input information, other than the available resources, can be used for the step 3010 be considered. For example, the flexibility of a local controller (not shown) of a computing element 106 also for the step 3010 be considered. Particularly complementary is the mapping of desired functions to available resources in a multiprocessor device with specific components for algorithms, since the hardware components (e.g. 106 and 108 from 1A ) are essentially locally controlled, object-oriented devices.

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.As a short example, applied to the steps 3002 to 3010 , a user selects a modulation function in step 3002 and an integration and memory expression subfunction for the step 3004 out. As a result of this input information, the variation of integration lengths from the set {4, 8, 16, 32, 64, 128, 256} is provided as a possible parameter selection. If the user implements a 3GPP standard, an exemplary parameter selection corresponding to the step 3006 is a 64-bit integration length, as required by the standard for a specific mode of operation. Below is a signal flow path through the step 3010 is provided and the kernel designed for the integration and output class of functions is passed through the step 3008 is mapped to the corresponding parameter settings. While the present example is applied to a specific function and parameter variation, the present invention is well suited to a wide range of applications, functions, and subfunctions. In the flowchart 3000 follow the step 3010 the step 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.In step 3012 In the present embodiment, a query determines whether additional sub-functions or operations are desired. If no additional functions or sub-functions are desired, the flowchart moves 3000 with the step 3016 continued. However, if additional sub-functions or operations are desired, the flowchart proceeds 3006 with the step 3013 continued. The step 3012 provides the logic to iteratively build the set and types of subfunctions and operations necessary to provide full functionality within the configurable device, for example to establish a modem function within a communication device.

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.The step 3013 becomes necessary when additional functions or operations in step 3012 are desired. In step 3013 In the present embodiment, a query determines whether time sharing of resources is desired. That is, depending on the desired subfunction or operation and its computational rate requirement, and depending on the computational rate of a given component of a configurable device, the component may have idle times within a system cycle to accommodate additional operations. For example, the computing element 106 from 1A directly from a host processor (not shown) of the configurable communication device 104 be configured to operate in different modes, depending on macroscopic parameters, such as the standard, and microscopic parameters, such as the integration window for a search correlator. Exemplary scheduling of the modem and encode / decode functions (described in appendix A of the co-pending application "A WIRELESS SPREAD SPECTRUM COMMUNICATION PLATFORM USING DYNAMICALLY RECONFIGURABLE LOGIC", incorporated herein by reference) realizes a plurality of transceiver signal paths by configuring the Hardware cores and connections according to the desired types of operations and data flows. In the flowchart 3000 follow the step 3013 the step 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.In step 3014 In the present embodiment, the time range of resources for multiple uses is divided. The step 3014 is realized by capturing the capabilities of the components in a configurable device, as in step 3013 described. The splitting process can be done using the processor 204 from 2 together with the calculation resource input information 116b from 1B to be realized in the store 206 . 208 or 210 from 2 can be stored. Coming soon, the components 106 and 108 the configurable communication device 104 from 1A are treated as hardware computational resources that can be applied to a single computational process, for example a "multipath" of a given channel in one embodiment. However, in the present embodiment, the computational resource provided by the example components may be the same 106 and 108 of the configurable communication device 104 can be improved by operating at a higher clock rate than that required by a process, for example higher than the data rate for a communication protocol. In this way, resources of individual computational components, such as a configurable demodulator, may be nested (or split) in time between multiple computational processes, for example, some "multipath" and / or multiple channels. Configuration and state data for each of the temporally nested resources of the configurable device is given by the flowchart 3000 made available. Additional information about designing and implementing configurations of a configurable communication device is provided in co-pending U.S. Patent Application Serial No. 09 / 492,634, entitled "IMPROVED APPARATUS AND METHOD FOR MULTITHREADED SIGNAL PROCESSING" by Ravi Subramanian et al., Attorney Docket Number MORP- P002 provided. This related application is filed jointly and is hereby incorporated by reference. Following the step 3014 the flowchart returns 3000 to the steps 3006 to 3010 back in which the temporally nested resource can be inserted into the signal flow path and the mapping operation.

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.The step 3016 becomes necessary if no additional functions or operations in step 3012 are desired. The step 3016 is responsible for the condition in which a desired configuration for a configurable device for current implementations on the configurable device is essentially determined by the following steps. In step 3016 In the present embodiment, a configuration for the configurable connection unit is generated to perform the mapping step 3010 to fulfill. Hence, the step is 3016 responsible for all the individual input / output data lines (not shown) of the hardware cores, for example the computing element 106 respectively. 108 from 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.The step 3016 also maps the boundaries within the reconfigurable connection unit, which in one embodiment has limited connectivity between all the different configurable hardware cores. In one embodiment, the step generates 3016 a set of rules that sets up the configuration of the configurable connection unit with digital instructions that turn on electronic devices of the connection unit, such as transistors, and thus make the appropriate connections. The step 3016 In one embodiment, it is implemented by storing the configuration or set of rules in memory to which the reconfigurable connection unit has access. However, the present invention is well suited to the step 3016 using alternative storage techniques. Furthermore, when hardware core resources are time-nested, more than one set of configurable connection unit or configuration rules may exist, and thus become reconfigurable between the multiple sets of rules. The periodicity of the configuration of a configurable connection unit may include a wide range, for example, from milliseconds to months, depending on the application. In the flowchart 3000 follow the step 3016 the step 3018 , In step 3018 In the present embodiment, a temporal order is defined for the configuration of the configurable connection unit and for the hardware cores. In step 3018 In the present embodiment, input information is received from a computer identifying a desired function that the configurable device is to perform. The step 3018 In one embodiment, it is implemented by a user entering data via the optional input device 216 or from the storage medium 206 . 208 or 210 of the computer system 120a in 2 provides. A user can enter any desired function in a programming aid, such as the function library 116a from 1B is included. However, the present invention is well suited for any types of functions as provided in the configurable device.

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.The in step 3018 desired function may be a higher function, for example, a modulation that can be further divided into more discrete sub-functions. The step 3018 For example, a list of these subfunctions or operations may be provided to the user via a graphical user interface (GUI) for use in subsequent steps of the flowchart 3000 provide. In the present embodiment, the list of functions establishes a one-to-one association with the computing elements, such as the computing elements 106 and 108 from 1A , and is consequently limited by these. The present invention is well suited to the step 3018 to realize with different degrees of functional granularity. In particular, the configuration designed for the configurable architecture is scalable for data rates due to the locally controlled, autonomous hardware cores. This means that increasing the clock rate is the speed of the whole communication device, for example 100a . can increase. In the flowchart 3000 follow the step 3018 the step 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.In step 3020 In the present embodiment, the downloaded configuration is distributed to the plurality of computing elements. The step 3020 is used to distribute configuration data for a time-shared hardware core resource whose configuration is changing. For example, two communication channels may require different configurations of integration and memory output functions, for example IS-95 for one channel and CDMA 2000 for another channel, or Japanese ARIE WCDMA and ETSI 3GPP WCDMA, which are concurrently operated in a base station. For a given function-specific kernel that supports the despread function, the configuration for the corresponding channel must change. The change in configuration depends on the frequency of access to the despread function, for example, the frequency may occur at a multiple of the chip clock rate, a chip clock rate, or any period appropriate to the application. In this scenario, the hardware core is reconfigurable on a very efficient basis. Note that if the given function-specific kernel is time-shared, but uses the same configuration, for example, both channels use IS-95, then no different configuration needs to be distributed for the switch. A final output information of the flowchart 3000 represents the configuration picture 118a , the timing 118b , the connection configuration 118c and clock rates 118d to disposal. The flowchart 3000 ends after the step 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.An example of a computer program showing the flowchart 3000 realized for a desired function, referred to as a finger, is shown in Appendix B of the co-pending application "A WIRELESS SPREAD SPECTRUM COMMUNICATION PLATFORM USING DYNAMICALLY RECONFIGURABLE LOGIC", which is incorporated herein by reference. A user defines the finger function through an implementation file, such as the file 3007 by definition: the sequence of operations, the parameters that control the flow of data, and the parameters that control the initiation and termination of the function. Thus, a specific finger behavior is subsequently realized by forming the finger using the principle of an expandable data type. The sequence of operations defining a finger are determined by the user and then declared as the finger type. The user then declares the parameters that control the data flow and then defines the initiation and completion conditions. It is assumed that one skilled in the art can interpret the computer-language-specific syntax used in this example. This example shows how the user can achieve a specific level of control over the functions performed on the hardware cores. Thus, controllability, observability, and new configurations and behaviors may be realized through the use of the extensible data types of the present invention. As a result, the present invention overcomes the limitations associated with conventional configurations.

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.
Using the flowchart 3000 For example, the present embodiment allows the structure of each channel element to be completely under the control of the user / programmer. This means that all data flow, control flow, and connectivity configurability can be changed during operation, allowing the creation of completely new data flow or control flow processing chains for a given channel element. This level of flexibility allows for a substantial amount of control, power efficiency, and distinctiveness in communications system architectures. The flowchart 3000 also forms a hierarchical aspect with respect to the configuration generating function 110 from 1B The control and interfaces are iteratively between the language function library 116a at the user level and machine-level commands for the communication device, such as the configuration mapping output 118a , The flowchart 3000 For example, it may be used to program a data flow machine, such as the Kornmunikationsgerät 100a to work as a wireless spread spectrum transceiver modem for the following standards via software developed by a system developer:
  • - 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
Each channel element may be specifically constructed by the user of the set of reconfigurable cores to produce a reconfigurable digital multichannel CDMA baseband modem signal path that completely performs the digital modulation-demodulation as well as the channel-coding decoding, per logical channel for all Narrowband and wideband CDMA standards is needed. Some possible configurations that a user can realize by configuring the hardware cores and the configurable connection unit in the communication device are summarized below, for the Forward (downlink) and reverse (uplink) connections:
  • • forward link
  • • 1xRTT evolution (IS-95B, IS-95C, IS-2000) all wireless configurations as described in TIA / EIA IS2000.2
  • • 3xRTT multi-carrier mode
  • • 3GPP 3.84MHz Direct Spread Mode (FDD)
  • • ARIB 4.096 Mcps WCDMA
  • • reverse connection
  • • 1xRTT evolution (IS-95B, IS-95C, IS-2000) all wireless configurations as described in TIA / EIA IS2000.2
  • • 3GPP 3.84MHz 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.The present invention is well-suited for utilizing a wide range of voice and data channel combinations that are selected and designed for a specific application. This platform is designed to support a variety of channel rates, by the user through the flowchart 3000 depend on the selected service and radio configuration. Several exemplary computer program implementations of the flowchart 3000a for spread spectrum systems, Appendix A of the co-pending application provides "A WIRELESS SPREAD SPECTRUM COMMUNICATION PLATFORM USING DYNAMICALLY RECONFIGURABLE LOGIC" which is incorporated herein by reference. In particular, Appendix B provides the specific application of a wireless base transceiver station for a CDMA application. However, the present invention is well suited to a wide range of communications applications. It is believed that those skilled in the art can interpret the computer-language-specific syntax shown in these examples.

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.The present embodiment applies the flowchart 3000 on a digital wireless communication system. However, the present invention can be applied to a wide range of applications and a wide range of device configurations. Within the wireless communication system described in the present embodiment, the present invention is applicable to mobile units, base stations and test platforms.

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.While the flowchart 3000 In the present embodiment, a specific sequence and amount of steps are shown, the present invention is suitable for alternative embodiments. For example, not all steps are in the flowchart 3000 be provided for the present invention necessary. In particular, the flowchart shows 3000 the steps 3013 and 3020 for a time-slices scenario of programming a configuration for hardware cores. However, the time scenario is not needed by the present invention, and thus these steps may be omitted in one embodiment. Likewise, other steps may be eliminated depending on the application. In contrast, the present invention is well suited to add further steps to the present as required by an application or desired for modifications in the process. Ultimately, the sequence of steps for the flowchart 3000 be modified depending on the application. Consequently, while the flowchart 3000 shown as a single serial process, they can also be realized as a continuous or parallel process.

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.Many of the commands for the steps and the data input and output from the steps of the flowchart 3000 use memory and processor hardware components on a workstation, such as the memory 206 and 208 or the processor 204 of the 2 , The storage medium used to implement the steps of the flowchart in the present embodiment may be either non-volatile, such as read-only memory (ROM), or volatile memory, such as random access memory (RAM). The storage medium may also be any type of storage medium capable of storing program instructions, such as a hard disk, CD-ROM or flash memory. Likewise, the processor used to implement the steps of the flowchart may be either a dedicated controller, a present system processor, or a dedicated digital signal processor (DSP), as appropriate for the type of step. Alternatively, the instructions may be implemented using a form of a state machine.

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.Some portions of the detailed description, such as the processes, are presented in terms of procedures, logical blocks, processing, and other symbolic representations of operations on data bits within a computer or digital system memory or on signals within a communication device. These descriptions and representations are the means used by those skilled in digital communication and computer architecture to most effectively communicate the essence of their work to other professionals. A procedure, a logical block, a process, etc. is hereby and generally understood to be a self-consistent sequence of steps or instructions leading to a desired result. The steps are those processes that require physical manipulations of physical quantities. Usually, but not necessarily, these physical manipulations take the form of electrical or magnetic signals that can be stored, transferred, combined, compared, and otherwise manipulated in a communication device or processor. For purposes of convention, and with reference to the general usage thereof, these signals are referred to as bits, values, elements, symbols, letters, terms, numbers or the like within the present invention.

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.It should be understood, however, that all of these terms must be interpreted as references to physical manipulations and sizes, and are primarily common identifiers to be further interpreted in terms of common terms. Unless specifically stated otherwise, as will be apparent from the following discussion, it is apparent that within the discussion of the present invention, terms such as "receive," "generate," "map," "repeat," "translate , Configure, Split, Define, Interleave, Distribute, Assign, Generate, Categorize, Identify or match the actions and processes of a communication device or device related electronic computing device that manipulates and transforms data. The data is represented as physical (electronic) quantities within the communication device components or the registers and memories of the computer system and transformed into other data, similarly as physical quantities within the communication device components or the memory or registers of the computer system or other such information storage or transmission - Represented or display units.

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.In view of the embodiments set forth herein, the present invention effectively provides a method and apparatus that overcomes the limitations of a universal spread spectrum device to perform a specific spread spectrum application. In addition, the description contained herein illustrates how the present invention efficiently controls the external control of a universal spread spectrum device so that it can execute a specific application. It has also been shown how the present invention provides a solution that addresses the lack of structure when choosing hardware sequencing and variable allocation for the universal spread spectrum device. And finally, it has been described how the present invention enables, verifies and simulates the operation of a universal device that has received external control information for a specific application.

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.The foregoing descriptions of specific embodiments of the present invention have been presented for purposes of illustration and description. They are not intended to be exhaustive or to limit the invention to the specific embodiments disclosed, and obviously many modifications and variations are possible in the sense of the embodiments. The embodiments have been chosen and described in order to best explain the principles of the invention and its practical application, thereby enabling one skilled in the art to best utilize the invention and many many modification embodiments as directed to the particular application fits the best. It is intended that the scope of the invention be defined by the claims appended hereto and their equivalents.

Claims (45)

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.A method of generating a configuration for a configurable communication device for realizing a desired function in a computer having a processor and a computer-readable memory coupled together, the method comprising the steps of: a) receiving input information to the computer identifying a desired operation to be implemented by the configurable communication device, b) generating a signal flow path of the desired operation on the computer and c) mapping the desired operation to a computing element within the configurable communication device via the computer, the computing element having local control and being functionally specific. 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.Method according to claim 1, with the further step: d) repeating step c for each of a plurality of computing elements within the configurable communication device that is capable of performing the desired operation. 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.Method according to claim 1, with the further step: d) repeating steps a to c as necessary to accomplish a number of operations enabling the desired function. 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.Method according to claim 3, with the further step: e) translating the signal flow path into configuration maps for each computing element used to implement a plurality of operations for the desired function. 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. The method of claim 4, further comprising the step of: f) configuring a configurable connection unit of the configurable communication device to enable the signal flow path between computing elements for each of the plurality of operations enabling the desired function. 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.Method according to claim 1, with the further step: d) receiving the desired function on the computer to be executed on the configurable communication device, and e) dividing the function into a set of discrete operations that may be performed on at least one of the plurality of computing elements of the configurable communication device. 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.Method according to claim 6, with the further step: f) repeating the receiving step d and the dividing step e as necessary to perform a plurality of functions needed for the application. 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.Method according to claim 1, with the further step: d) defining a timing order for activating each of the plurality of computing elements needed to perform the desired operation. Verfahren nach Anspruch 1, mit dem weiteren Schritt: d) zeitliches Verschachteln der Ressourcen des Rechenelementes, um mehrere Operationen aufzunehmen.Method according to claim 1, with the further step: d) time-interleaving the resources of the compute element to accommodate multiple operations. Verfahren nach Anspruch 9, mit dem weiteren Schritt: e) Verteilen der Konfiguration an die Rechenelemente des konfigurierbaren Kommunikationsgeräts, basierend auf dem Zeitschachtelungsschritt d.Method according to claim 9, with the further step: e) Distributing the configuration to the computing elements of the configurable communication device based on the time-nesting step d. Verfahren nach Anspruch 9, wobei der Zeitschachtelungsschritt d Ressourcen zwischen mehreren Kanälen in einer drahtlosen Kommunikationsanwendung teilt.The method of claim 9, wherein the time nesting step d shares resources between multiple channels in a wireless communication application. 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.The method of claim 9, wherein the time nesting step d comprises the steps of: d1) identifying multiple operations to occur within a given system cycle, d2) dividing the system cycle into several sections and d3) assigning each of the multiple operations to a corresponding section of the multiple sections of the system cycle. 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.The method of claim 3, wherein the mapping step c comprises the following substeps: c1) generating an original system data flow, c2) identifying a specific algorithm thread, c3) identifying a range and types of operations contained in the algorithm program thread and c4) categorizing and mapping operations to multiple processor groups, wherein the processor groups represent main islands of data flow in the reconfigurable architecture. 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.The method of claim 13, wherein the data flow, the Kotrollfluss or the connection configuration is configured to change dynamically while the configurable communication device is in operation. Verfahren nach Anspruch 1, wobei das konfigurierbare Kommunikationsgerät auf Spread-Spektrum-Protokolle anwendbar ist.The method of claim 1, wherein the configurable communication device is applicable to spread spectrum protocols. 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.Electronic device for configuring a configurable communication device with: - a computer-readable memory, A processor coupled to the computer readable memory including instructions and data that, when executed on the processor, implement a method of configuring the configurable communication device, the method comprising the steps of: a) receiving input information to the computer identifying a desired operation to be implemented by the configurable communication device, b) generating a signal flow path of the desired operation on the computer and c) mapping the desired operation to a computing element within the configurable communication device via the computer, the computing element having a local controller and being functionally specific. 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.Electronic device according to claim 16, with the further step: d) repeating step c for each of the plurality of computing elements within the configurable communications device that can perform the desired operation. 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.Electronic device according to claim 16, with the further step: d) repeating steps a to c as necessary to realize a plurality of operations enabling a desired function. 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.Electronic device according to claim 18, with the further step: e) translating the signal flow path into configuration maps for each of the computing elements used to implement the plurality of operations for the desired function. 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.Electronic device according to claim 19, with the further step: f) configuring a configurable connection unit of the configurable communication device to enable the signal flow path between computing elements for each of the multiple operations enabling the desired function. 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.Electronic device according to claim 16, with the further step: d) receiving the desired function to be executed on the configurable communication device at the computer and e) dividing the function into a set of discrete operations that may be performed on at least one of the plurality of computing elements of the configurable communication device. 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.Electronic device according to claim 21, with the further step: f) repeating the receiving step d) and the dividing step e) as necessary to fulfill a plurality of functions needed for the application. 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.Electronic device according to claim 16, with the further step: d) defining a timing sequence for activating each of the plurality of computing elements needed to implement the desired operation. Elektronisches Gerät nach Anspruch 16, mit dem weiteren Schritt: d) Zeitschachteln der Ressourcen des Rechenelementes, um mehrere Operationen aufzunehmen.Electronic device according to claim 16, with the further step: d) time boxes of computational resource resources to accommodate multiple operations. 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.Electronic device according to claim 24, with the further step: e) Distributing the configuration to the computing elements of the configurable communication device based on the time-nesting step d. Elektronisches Gerät nach Anspruch 24, wobei der Zeitschachtelungsschritt d) Ressourcen zwischen mehreren Kanälen in einer drahtlosen Kommunikationsanwendung teilt.The electronic device of claim 24, wherein the time stamping step d) shares resources between multiple channels in a wireless communication application. 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.The electronic device of claim 24, wherein the time nesting in the time stamping step d) comprises the steps of: d1) identifying multiple operations to occur within a given system cycle, d2) dividing the system cycle into several sections and d3) assigning each of the multiple operations to a corresponding section of the multiple sections of the system cycle. 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.Electronic device according to claim 27, with the further step: The imaging step c) comprises the following substeps: c1) generating an original system data flow, c2) identifying a specific algorithm thread, c3) identifying an area and types of operations contained in the algorithm thread and c4) categorizing and mapping the operations to multiple processor groups, wherein the processor groups represent main islands of data flow in the reconfigurable architecture. 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.The electronic device of claim 24, wherein the data flow, control flow or connection configuration is configured to dynamically change while the configurable communication device is operating. Elektronisches Gerät nach Anspruch 16, wobei das konfigurierbare Kommunikationsgerät auf ein Spread-Spektrum-Protokoll anwendbar ist.The electronic device of claim 16, wherein the configurable communication device is applicable to a spread spectrum protocol. 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.A computer readable medium having computer readable codes therein for enabling an electronic device to implement a method of configuring a configurable communication device, the method comprising the steps of: a) receiving input information to the computer identifying a desired operation to be performed by the configurable communication device, b) generating a signal flow path of the desired operation on the computer and c) mapping the desired operation to a computing element within the configurable communication device via the computer, the computing element having a local controller and being functionally specific. 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.The computer-readable medium of claim 31, further comprising the step: d) repeating step c for each of the plurality of computing elements within the configurable communication device that is capable of performing the desired function. 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.The computer-readable medium of claim 31, further comprising the step: d) repeating steps a to c as necessary to perform a plurality of operations enabling a desired function. 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. The computer readable medium of claim 33, further comprising the step of: e) translating the signal flow path into a configuration map for each of the computing elements used to implement the plurality of operations for the desired function. 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.The computer readable medium of claim 34, further comprising the step of: f) configuring a configurable connection unit of the configurable communication device to enable a signal flow path between computing elements for each of the multiple operations enabling the desired function. 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.The computer-readable medium of claim 31, further comprising the step: d) receiving the desired function on the computer to be executed on the configurable communication device and e) dividing the function into a set of discrete operations that may be performed on at least one of the plurality of computing elements of the configurable communication device. 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.The computer readable medium of claim 36, further comprising the step: f) repeating the receiving step d) and the dividing step e) as necessary to realize a plurality of functions required for the application. 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.The computer-readable medium of claim 31, further comprising the step: d) defining a timing sequence for activating each of the plurality of computing elements needed to implement the desired operation. Computerlesbares Medium nach Anspruch 31, mit dem weiteren Schritt: d) Zeitschachteln der Ressourcen des Rechenelementes, um mehrere Operationen aufzunehmen.The computer-readable medium of claim 31, further comprising the step: d) time boxes of computational resource resources to accommodate multiple operations. 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.The computer-readable medium of claim 39, further comprising the step of: e) Distributing the configuration to the computing elements of the configurable communication device based on the time-nesting step d. Computerlesbares Medium nach Anspruch 39, wobei der Zeitschachtelungsschritt d Ressourcen zwischen mehreren Kanälen in einer drahtlosen Kommunikationsanwendung teilt.The computer-readable medium of claim 39, wherein the time-nesting step d shares resources between multiple channels in a wireless communication application. 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.The computer-readable medium of claim 39, wherein the time-nesting of the time-nesting step d comprises the steps of: d1) identifying multiple operations to occur within a given system cycle d2) dividing the system cycle into several sections and d3) assigning each of the multiple operations to a corresponding section of the multiple sections of the system cycle. 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.The computer-readable medium of claim 33, wherein the imaging step c comprises the following substeps: c1) generating an original system data flow, c2) identification of a specific algorithm thread, c3) identifying an area and types of information contained in the algorithm program thread and c4) categorizing and mapping the operations on multiple processor groups, wherein the processor groups represent main islands of data flow in the reconfigurable architecture. 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.The computer-readable medium of claim 43, wherein the data flow, the control flow, or the connection configuration is configured to dynamically change while the configurable communication device is operating. Computerlesbares Medium nach Anspruch 31, wobei das konfigurierbare Kommunikationsgerät auf Spread-Spektrum-Protokolle anwendbar ist.The computer readable medium of claim 31, wherein the configurable communication device is applicable to spread spectrum protocols.
DE10195203.1T 2000-01-28 2001-01-29 A method of creating a configuration for a configurable communication device and electronic device and computer readable medium Expired - Fee Related DE10195203B3 (en)

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 (en) 2002-12-19
DE10195203B3 true DE10195203B3 (en) 2014-01-02

Family

ID=22654084

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10195203.1T Expired - Fee Related DE10195203B3 (en) 2000-01-28 2001-01-29 A method of creating a configuration for a configurable communication device and electronic device and computer readable medium

Country Status (6)

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

Families Citing this family (154)

* 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 (en) 1996-12-09 1998-06-10 Pact Inf Tech Gmbh Unit for processing numerical and logical operations, for use in processors (CPU's), multi-computer systems, data flow processors (DFP's), digital signal processors (DSP's) or the like
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 (en) 1996-12-20 1998-07-02 Pact Inf Tech Gmbh I0 and memory bus system for DFPs as well as building blocks with two- or multi-dimensional programmable cell structures
ATE243390T1 (en) 1996-12-27 2003-07-15 Pact Inf Tech Gmbh METHOD FOR INDEPENDENT DYNAMIC LOADING OF DATA FLOW PROCESSORS (DFPS) AND COMPONENTS WITH TWO- OR MULTI-DIMENSIONAL PROGRAMMABLE CELL STRUCTURES (FPGAS, DPGAS, O.L.)
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 (en) 1997-12-22 2000-02-10 Pact Inf Tech Gmbh Repairing integrated circuits by replacing subassemblies with substitutes
US6226318B1 (en) * 1998-03-31 2001-05-01 Zenith Electronics Corporation Detection of code vectors in single frequency, multiple transmitter networks
US7003660B2 (en) 2000-06-13 2006-02-21 Pact Xpp Technologies Ag Pipeline configuration unit protocols and communication
DE10081643D2 (en) 1999-06-10 2002-05-29 Pact Inf Tech Gmbh Sequence partitioning on cell structures
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
US7085285B2 (en) 2000-03-01 2006-08-01 Realtek Semiconductor Corp. xDSL communications systems using shared/multi-function task blocks
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
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
EP1540848B1 (en) 2000-08-03 2009-02-11 Infineon Technologies AG Flexible tdma system architecture
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
AU2002220600A1 (en) 2000-10-06 2002-04-15 Pact Informationstechnologie Gmbh Cell system with segmented intermediate cell structure
DE10052392A1 (en) * 2000-10-20 2002-05-02 Alcatel Sa Base station of a radio-operated communication system
US7230978B2 (en) * 2000-12-29 2007-06-12 Infineon Technologies Ag Channel CODEC processor configurable for multiple wireless communications standards
US7844796B2 (en) 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements
US7444531B2 (en) 2001-03-05 2008-10-28 Pact Xpp Technologies Ag Methods and devices for treating and processing data
US7142882B2 (en) * 2001-03-09 2006-11-28 Schmidt Dominik J Single chip wireless communication integrated circuit
US7110431B2 (en) * 2001-03-14 2006-09-19 Mercury Computer Systems, Inc. Hardware and software for performing computations in a short-code spread-spectrum communications system
US7489779B2 (en) 2001-03-22 2009-02-10 Qstholdings, Llc Hardware implementation of the secure hash standard
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
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
US7249242B2 (en) 2002-10-28 2007-07-24 Nvidia Corporation Input pipeline registers for a node in an adaptive computing engine
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
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
US7653710B2 (en) 2002-06-25 2010-01-26 Qst Holdings, Llc. Hardware task manager
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
WO2002103532A2 (en) 2001-06-20 2002-12-27 Pact Xpp Technologies Ag Data processing method
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
EP1446893B1 (en) 2001-11-20 2009-01-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
US8412915B2 (en) * 2001-11-30 2013-04-02 Altera Corporation Apparatus, system and method for configuration of adaptive integrated circuitry having heterogeneous computational elements
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
US7602740B2 (en) 2001-12-10 2009-10-13 Qst Holdings, Inc. System for adapting device standards after manufacture
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
US7577822B2 (en) 2001-12-14 2009-08-18 Pact Xpp Technologies Ag Parallel task operation in processor and reconfigurable coprocessor configured based on information in link list including termination information for synchronization
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 (en) 2002-02-18 2003-08-28 Pact Xpp Technologies Ag Bus systems and method for reconfiguration
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
EP1347581A3 (en) * 2002-03-22 2004-11-17 Kabushiki Kaisha Toshiba Radio communication apparatus and method
TW200807982A (en) * 2002-04-15 2008-02-01 Interdigital Tech Corp Software parameterizable control blocks for use in physical layer processing
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
WO2004038599A1 (en) 2002-09-06 2004-05-06 Pact Xpp Technologies Ag Reconfigurable sequencer structure
KR100504804B1 (en) * 2002-09-28 2005-08-01 엘지전자 주식회사 De-channelization method of wcdma system
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
US7478031B2 (en) 2002-11-07 2009-01-13 Qst Holdings, Llc Method, system and program for developing and scheduling adaptive integrated circuity and corresponding control or configuration information
US7170890B2 (en) * 2002-12-16 2007-01-30 Zetera Corporation Electrical devices with improved communication
US8005918B2 (en) 2002-11-12 2011-08-23 Rateze Remote Mgmt. L.L.C. Data storage devices having IP capable partitions
JP2006506846A (en) 2002-11-12 2006-02-23 ゼテーラ・コーポレイシヨン Electrical device with improved communication function
US7649880B2 (en) 2002-11-12 2010-01-19 Mark Adams Systems and methods for deriving storage area commands
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 (en) * 2003-03-25 2004-10-06 유티스타콤코리아 유한회사 W-CDMA ATM switch
EP1471524A1 (en) * 2003-04-22 2004-10-27 Thomson Licensing S.A. Method for decoding data received from a data source using hardware configuration data received from the same data source
EP1471520A1 (en) * 2003-04-22 2004-10-27 Deutsche Thomson-Brandt Gmbh Method for decoding data received from a data source using hardware configuration data received from the same data source
US20040255230A1 (en) * 2003-06-10 2004-12-16 Inching Chen Configurable decoder
US7609297B2 (en) 2003-06-25 2009-10-27 Qst Holdings, Inc. Configurable hardware based digital imaging apparatus
JP4700611B2 (en) 2003-08-28 2011-06-15 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト Data processing apparatus and data processing method
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 (en) * 2004-06-25 2006-09-14 삼성전자주식회사 Network repeater and relay method
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
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
US7752426B2 (en) * 2004-08-30 2010-07-06 Texas Instruments Incorporated Processes, circuits, devices, and systems for branch prediction and other processor improvements
US20060095732A1 (en) * 2004-08-30 2006-05-04 Tran Thang M Processes, circuits, devices, and systems for scoreboard and other processor improvements
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
US8612772B1 (en) * 2004-09-10 2013-12-17 Altera Corporation Security core using soft key
JP2008521072A (en) * 2004-11-03 2008-06-19 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Spectral quick device with means of labels for storing spectral opportunity parameters
US7545764B1 (en) 2004-11-19 2009-06-09 Cypress Semiconductor Corporation Synchronized code recognition
KR100594943B1 (en) * 2004-11-30 2006-06-30 리전츠 오브 더 유니버스티 오브 미네소타 Data modulation and demodulation method in one chip system
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
US7821974B2 (en) * 2005-03-29 2010-10-26 Microsoft Corporation UMTS RIL extension
US7886311B2 (en) 2005-03-29 2011-02-08 Microsoft Corporation Synchronous RIL proxy
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
US8819092B2 (en) 2005-08-16 2014-08-26 Rateze Remote Mgmt. L.L.C. Disaggregated resources and access methods
US7743214B2 (en) * 2005-08-16 2010-06-22 Mark Adams Generating storage system commands
US9270532B2 (en) 2005-10-06 2016-02-23 Rateze Remote Mgmt. L.L.C. Resource command messages and methods
EP1949572B1 (en) * 2005-10-12 2018-07-25 T-Mobile, USA, Inc System and method for billing ip-based wireless telecommunications in a converged network
KR101205799B1 (en) * 2005-11-11 2012-11-28 가부시키가이샤 엔티티 도코모 Mobile communication system, mobile station, base station, and control channel allocation method
US7698543B2 (en) * 2005-11-15 2010-04-13 Microsoft Corporation User interface for specifying desired configurations
WO2007082730A1 (en) 2006-01-18 2007-07-26 Pact Xpp Technologies Ag Hardware definition method
JP4685682B2 (en) * 2006-03-31 2011-05-18 富士通株式会社 Semiconductor device
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
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
US8261270B2 (en) * 2006-06-20 2012-09-04 Google Inc. Systems and methods for generating reference results using 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
US8381202B2 (en) * 2006-06-20 2013-02-19 Google Inc. Runtime system for executing an application in a parallel-processing computer system
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
US8375368B2 (en) * 2006-06-20 2013-02-12 Google Inc. Systems and methods for profiling an application running on 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
US8443348B2 (en) 2006-06-20 2013-05-14 Google Inc. Application program interface of a parallel-processing computer system that supports multiple programming languages
US8136102B2 (en) 2006-06-20 2012-03-13 Google Inc. Systems and methods for compiling an application for a parallel-processing computer system
EP1881661A1 (en) * 2006-07-20 2008-01-23 Abilis Systems Sarl Method and device to process a received analog signal and to extract digital data there from according to a plurality of protocols
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
KR101814221B1 (en) 2010-01-21 2018-01-02 스비랄 인크 A method and apparatus for a general-purpose, multiple-core system for implementing stream-based computations
RU2010111027A (en) * 2010-03-24 2011-09-27 ЭлЭсАй Корпорейшн (US) DEVICE AND METHOD FOR HIGH-SPEED CALCULATION OF MOVEMENT TABLES FOR MULTIPLE WIRELESS COMMUNICATION STANDARDS
US8756548B2 (en) * 2011-05-06 2014-06-17 Xcelemor, Inc. Computing system with hardware 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 (en) * 2013-04-28 2016-06-08 国际商业机器公司 For method and the device of parallel data processing
WO2014190512A1 (en) * 2013-05-29 2014-12-04 华为技术有限公司 Data transmission method, device, apparatus and base station
EP3376691B1 (en) * 2017-03-14 2019-05-08 Rohde & Schwarz GmbH & Co. KG Test device and test method
US10200875B2 (en) 2017-04-17 2019-02-05 DeepSig Inc. Placement and scheduling of radio signal processing dataflow operations
CN107807547B (en) * 2017-09-22 2020-04-21 上海卫星工程研究所 Satellite service unit controller
US12108319B2 (en) * 2021-07-20 2024-10-01 EdgeQ, Inc. Systems and methods for hybrid hardware and software implementation of multiple wireless standards
CN114442529B (en) * 2022-01-18 2024-05-24 深圳市显控科技股份有限公司 I/O port expansion circuit and industrial control system

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 (en) * 1992-03-17 2002-09-09 サン・マイクロシステムズ・インコーポレーテッド Method of performing IDCT in a digital image processing system and IDCT processor therefor
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
CA2150938C (en) 1993-10-28 1999-09-07 Ricardo Lim 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
US5907580A (en) * 1996-06-10 1999-05-25 Morphics Technology, Inc Method and apparatus for communicating information
KR20000016513A (en) * 1996-06-10 2000-03-25 콜린 엘. 엠. 멕넵 Method and apparatus for compiling one circuit in a sequence of circuits within a programmable gate array
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
EP1175734A1 (en) * 1999-05-10 2002-01-30 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
WO2001055866A1 (en) 2001-08-02
US20060003757A1 (en) 2006-01-05
US20010034227A1 (en) 2001-10-25
JP5075313B2 (en) 2012-11-21
AU2001233150A1 (en) 2001-08-07
US7254649B2 (en) 2007-08-07
DE10195203T1 (en) 2002-12-19
US20050282534A1 (en) 2005-12-22
KR100682736B1 (en) 2007-02-15
US20020031166A1 (en) 2002-03-14
JP2003521203A (en) 2003-07-08
US6701431B2 (en) 2004-03-02
WO2001055864A1 (en) 2001-08-02
AU2001231244A1 (en) 2001-08-07
KR20020079813A (en) 2002-10-19

Similar Documents

Publication Publication Date Title
DE10195203B3 (en) A method of creating a configuration for a configurable communication device and electronic device and computer readable medium
DE60310905T2 (en) SOFTWARE-PARAMETRIZABLE CONTROL BLOCKS FOR USE IN THE PROCESSING OF THE PHYSICAL LAYER
DE60302826T2 (en) Selection of a suitable transmission mechanism for the transmission of an object
DE60211163T2 (en) Computer system with the modem driver in privileged mode
DE19815865B4 (en) Compilation system and method for reconfigurable computing
DE69737641T2 (en) Assignment of Resources in a Multi-Carrier Mobile Radio System with Multiple Users
DE60215990T2 (en) Dynamic service feature in a mobile communication device or a SIM card for receiving and executing dynamic service scripts in the form of short text messages, for example SMS
DE69837452T2 (en) Method and apparatus for generating complex four-phase sequences for a CDMA transmission system
DE102008039148A1 (en) Transceiver, RF transceiver, communication system and method for transmitting control packets
DE102016109416A1 (en) ADAPTIVE FREQUENCY SPRING (AFH) WITH CHANNEL LOCKING (CI) FOR BLUETOOTH
DE102020116075A1 (en) COMMUNICATION SYSTEM WITH A CONFIGURABLE MODULATION ORDER AND ASSOCIATED PROCEDURE AND DEVICE
DE60033705T2 (en) Efficient spreader for spread spectrum transmission systems
DE102007046570A1 (en) Method and apparatus for generating schedules for executing functions in a process control system
DE60124722T2 (en) METHOD FOR TRANSMITTING A MOBILE AGENT IN A NETWORK; TRANSMITTER, RECEIVER AND ASSOCIATED MOBILE AGENT
DE112019007372T5 (en) NETWORK REQUEST SCHEDULING SYSTEMS, METHODS AND DEVICES
DE102013207825A1 (en) DEVICE AND METHOD FOR PROCESSING AN INPUT SIGNAL
DE102023109157A1 (en) DYNAMIC SPECTRUM SHARING
DE602005001394T2 (en) INTEGRATION DEVICE AND METHOD FOR A MILITARY DATA CONNECTION
DE102014107993A1 (en) Reduce the transmission signal artifact distance
EP3550903B1 (en) Resource scheduling method, apparatus, and system
CN105426197A (en) Hierarchical design method for embedded product
Freund et al. 5G-Datentransport mit Höchstgeschwindigkeit: Mehr Daten, mehr Tempo, mehr Sicherheit
CH716941B1 (en) FDMA communication method using a fundamental frequency and its harmonics.
DE10216240A1 (en) Method and device for calculating an iterated state of a feedback shift register arrangement
DE102004057766B4 (en) Radio interface control based on an event list specification

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