DE10261500B4 - Processor and method for controlling a processor - Google Patents
Processor and method for controlling a processor Download PDFInfo
- Publication number
- DE10261500B4 DE10261500B4 DE10261500A DE10261500A DE10261500B4 DE 10261500 B4 DE10261500 B4 DE 10261500B4 DE 10261500 A DE10261500 A DE 10261500A DE 10261500 A DE10261500 A DE 10261500A DE 10261500 B4 DE10261500 B4 DE 10261500B4
- Authority
- DE
- Germany
- Prior art keywords
- instructions
- processor
- control
- processing device
- program flow
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3877—Concurrent instruction execution, e.g. pipeline, look ahead using a slave processor, e.g. coprocessor
Abstract
Prozessor
mit
– einer
ersten Programmfluss-Generierungseinrichtung (PFG) zum Erzeugen
von ersten Instruktionen (iw) als Grundlage für erste Steueranweisungen für zumindest
eine Verarbeitungseinrichtung (INTU, FFT; DFP),
– einem
ersten Steuerbus (p1) zum Übertragen
der ersten Instruktionen (iw) von der ersten Programmfluss-Generierungseinrichtung
(PFG) zu einem ersten Instruktionsdekoder (IDC) zum Umsetzen der
ersten Instruktionen (iw) in Steueranweisungen (iwx),
– zumindest
einen zweiten Programmfluss-Generierungseinrichtung
(SM; PFG2) zum Erzeugen von zweiten Instruktionen (iw2) als Grundlage
für direkte
Steueranweisungen (iwx) für
zumindest eine Verarbeitungseinrichtung (INTU, FFT; DFP),
– einem
zweiten Steuerbus (p2) zum Übertragen
der zweiten Instruktionen (iw2) und
– einem zweiten Instruktionsdekoder
(IDC2; DFP) mit einer vorgeschalteten Schalteinrichtung (SW; SW*)
zum Zuführen
wahlweise der ersten Instruktionen (iw) vom ersten Steuerbus (p1)
oder der zweiten Instruktionen (iw2) vom zweiten Steuerbus (p2).Processor with
A first program flow generation device (PFG) for generating first instructions (iw) as the basis for first control statements for at least one processing device (INTU, FFT, DFP),
A first control bus (p1) for transmitting the first instructions (iw) from the first program flow generator (PFG) to a first instruction decoder (IDC) for converting the first instructions (iw) into control instructions (iwx),
At least a second program flow generation device (SM, PFG2) for generating second instructions (iw2) as a basis for direct control instructions (iwx) for at least one processing device (INTU, FFT, DFP),
A second control bus (p2) for transmitting the second instructions (iw2) and
- a second instruction decoder (IDC2, DFP) with an upstream switching device (SW, SW *) for supplying either the first instructions (iw) from the first control bus (p1) or the second instructions (iw2) from the second control bus (p2).
Description
Die Erfindung bezieht sich auf einen Prozessor und ein Verfahren zum Steuern eines solchen Prozessors.The The invention relates to a processor and a method for Controlling such a processor.
Zur
Steuerung des Ablaufs und der Datenverarbeitung in einem Prozessor
weist ein Prozessor, wie dies aus
Aktuelle digitale Signalprozessoren sind dadurch gekennzeichnet, dass sie optimierte Recheneinheiten bzw.current Digital signal processors are characterized in that they optimized arithmetic units or
Verarbeitungseinrichtungen für einen Festkomma-Datentyp oder bei aufwendigeren Varianten zusätzlich für einen Fließkomma-Datentyp aufweisen.processing facilities for one Fixed-point data type or, in the case of more complex variants, additionally for one Floating-point data type.
Ein wesentliches Optimierungskriterium und gleichzeitig ein wesentliches Merkmal für Signalprozessoren ist deren Datendurchsatz.One essential optimization criterion and at the same time an essential one Characteristic for Signal processors is their data throughput.
Ein hoher Datendurchsatz wird durch Einsatz mehrerer Datenbusse, über welche die Recheneinheiten breitbandig mit Daten versorgt werden, erreicht. Die Zuführung der Daten wird dabei durch sogenannte Adressgeneratoren parallel zu den durch einen Instruktions- bzw. Befehlssatz gesteuerten Rechenoperationen ausgeführt.One high data throughput is achieved by using multiple data buses over which the arithmetic units are supplied broadband with data achieved. The feeder The data is paralleled by so-called address generators to the arithmetic operations controlled by an instruction set executed.
Bei moderneren Signalprozessoren, z.B. TMS 32C80 von Texas Instruments et. al., ist zusätzlich die Anzahl der parallelen Recheneinheiten erhöht.at more modern signal processors, e.g. TMS 32C80 from Texas Instruments et. al., is additional increases the number of parallel arithmetic units.
Nachteilig an den bekannten Ansätzen ist jedoch, dass gleichzeitig mit der Erhöhung der Buszahl und der Recheneinheiten die Komplexität des Befehlssatzes, der zur Steuerung der Busse und Recheneinheiten erforderlich ist, stark anwächst. Dies bewirkt einerseits, dass die Programmierung dieser Prozessoren sehr schwierig wird und zum anderen, dass die Wortbreite des Befehlssatzes und damit der Speicherbedarf für die Programmierung sehr groß wird. Die entsprechende Technik ist unter VLIW (Very Long Instruction Word) bekannt. Ein weiteres Problem des beschriebenen Parallelisierungsansatzes ist die schlechte Auslastung der Recheneinheiten und Busse, die dadurch begründet ist, dass insbesondere iterative und rekursive Algorithmen nicht immer in einer starren Form parallelisierbar sind.adversely on the known approaches However, that is simultaneous with the increase in the number of buses and the computing units the complexity of the instruction set used to control the buses and arithmetic units is required, grows strongly. On the one hand, this causes the programming of these processors becomes very difficult and, secondly, that the word width of the instruction set and thus the memory requirements for the programming becomes very big. The corresponding technique is under VLIW (Very Long Instruction Word) known. Another problem of the described parallelization approach is the poor workload of the arithmetic units and buses that are causing it justified is that particular iterative and recursive algorithms are not always be parallelizable in a rigid form.
Weiterhin ziehen die Verwendung von VLIW-Befehlen Probleme der Synchronisierung nach sich, die in unterschiedlichen Ausführungszeiten für parallele Rechenoperationen begründet sind. Dies wird typischerweise durch Beschleunigung langsamer Teile durch aufwendige Techniken mit hoher Leistungsaufnahme oder durch künstliche Verzögerung schneller Teile realisiert.Farther The use of VLIW commands drag problems of synchronization by themselves, in different execution times for parallel Arithmetic operations are justified. This is typically done by accelerating slower parts through elaborate techniques with high power consumption or by artificial delay realized faster parts.
Dies bewirkt entweder eine deutliche Erhöhung der Leistungsaufnahme des Prozessors, was für batteriegetriebene Anwendungen unerwünscht ist, oder führt zu großen 'pipeline'-Verzögerungen, die sich negativ auf die erzielbare Rechenleistung auswirken.This causes either a significant increase in power consumption the processor, what for battery-powered applications is undesirable or leads to large pipeline delays have a negative impact on the achievable computing power.
Die Aufgabe der Erfindung besteht darin, einen Prozessor bzw. ein Verfahren zum Steuern eines solchen vorzuschlagen, welche eine verbesserte Gesamtleistung, insbesondere eine verbesserte Ausnutzung der. Verarbeitungseinrichtungen und Busse ermöglichen.The The object of the invention is a processor or a method to propose for controlling which has an improved Overall performance, in particular improved utilization of. processing facilities and allow buses.
Diese Aufgabe wird durch einen Prozessor mit den Merkmalen des Patentanspruchs 1 bzw. durch ein Verfahren zum Steuern eines solchen Prozessors mit den Merkmalen des Patentanspruchs 8 gelöst.These The object is achieved by a processor having the features of the patent claim 1 or by a method for controlling such a processor solved with the features of claim 8.
Vorteilhafte Ausgestaltungen sind Gegenstand von abhängigen Ansprüchen.advantageous Embodiments are the subject of dependent claims.
Vorteilhaft ist insbesondere eine Ausgestaltung mit einem solchen Prozessor mit einer ersten Programmfluss-Generierungseinrichtung zum Erzeugen von Adressen und/oder Instruktionen als Grundlage für erste Steueranweisungen, einer ersten Verarbeitungseinrichtungs-Steuereinrichtung zum Umsetzen der Instruktionen in Steueranweisungen für zumindest eine erste Verarbeitungseinrichtung zum Verarbeiten von Daten, zumindest einer weiteren Verarbeitungseinrichtung zum Verarbeiten von Daten, einer zweiten Verarbeitungseinrichtungs-Steuereinrichtung zum Umsetzen der Instruktionen in Steueranweisungen für zumindest eine zweite Verarbeitungseinrichtung und/oder eine weitere Verarbeitungseinrichtung zum Verarbeiten von Daten, zumindest einer Datenleitung, insbesondere einem Datenbus zum Übertragen der Daten von und/oder zu den Verarbeitungseinrichtungen und einem ersten Steuerbus zum Übertragen der Instruktionen zu der ersten Verarbeitungseinrichtungs-Steuereinrichtung und der weiteren Verarbeitungseinrichtung und mit zumindest einer zweiten Programmfluss-Generierungseinrichtung zum Erzeugen von Adressen und/oder Instruktionen als Grundlage für zweite Steueranweisungen und mit zumindest einer Schalteinrichtung zum Zuführen wahlweise der ersten Instruktionen oder der zweiten Instruktionen zu der ersten und/oder zweiten Verarbeitungseinrichtungs-Steuereinrichtung bzw. der weiteren Verarbeitungseinrichtung.Particularly advantageous is an embodiment with such a processor with a first program flow generation device for generating addresses and / or instructions as a basis for first control instructions, a first processing device control means for Um setting the instructions in control instructions for at least one first processing device for processing data, at least one further processing device for processing data, a second processing device control device for converting the instructions into control instructions for at least one second processing device and / or a further processing device for processing data at least one data line, in particular a data bus for transmitting the data from and / or to the processing devices and a first control bus for transmitting the instructions to the first processing device control device and the further processing device and with at least one second program flow generating device for generating addresses and or instructions as a basis for second control instructions and with at least one switching device for supplying either the first instructions or the second Instructions for the first and / or second processing device control device or the further processing device.
Vorteilhafterweise werden bei einem Prozessor einerseits die Programmfluss-Generierungseinrichtung und die Verarbeitungseinrichtungs-Steuereinrichtung zum Steuern der Ablauf- und Datenfluss-Steuerung ausgebildet. Andererseits werden die Verarbeitungseinrichtungen getrennt davon zum Verarbeiten der Daten ausgebildet. Diese Trennung ermöglicht eine Optimierung, da die Übertragung von Daten von und zu den Verarbeitungseinrichtungen sowie die Datenverarbeitung in diesen unabhängig von der Übertragung und Verarbeitung von Instruktionen und Steueranweisungen durchgeführt werden kann. Die Prozessor-Anordnung ist somit zweigeteilt in einen Ablauf- und Datenfluss-Steuerabschnitt und in einen Datenverarbeitungsabschnitt.advantageously, In the case of a processor, on the one hand, the program flow generation device and the processing device controller for controlling the drain and data flow control formed. On the other hand, the Processing facilities separate from it for processing the data educated. This separation allows an optimization, since the transmission from data to and from the processing facilities as well as the data processing in these independent of the transmission and processing of instructions and control statements. The processor arrangement is thus divided into two parts into a flow and data flow control section and a data processing section.
Gemäß einer besonders bevorzugten Ausführungsform findet eine Aufteilung mehrerer Verarbeitungseinrichtungen zum Verarbeiten von Daten zu verschiedenen Verarbeitungseinrichtungs-Steuereinrichtungen statt, wobei die Verarbeitungseinrichtungs-Steuereinrichtungen unabhängig voneinander gleichzeitig betrieben werden können. Um dies zu ermöglichen, weist zumindest ein Teil der Verarbeitungseinrichtungs-Steuereinrichtungen eine Schalteinrichtung auf, welche die Verarbeitungseinrichtungs-Steuereinrichtung entweder an eine Standard-Programmfluss-Generierungseinrichtung oder an eine getrennte Programmfluss-Generierungseinrichtung schaltet.According to one particularly preferred embodiment finds a division of several processing facilities for processing data to various processing device controllers instead, with the processing means controllers being independent of each other simultaneously can be operated. In order to make this possible, includes at least a portion of the processing device controllers a switching device comprising the processing device control device either to a standard program flow generator or to a separate program flow generator.
Um eine Entkopplung der Ablauf- und Datenflusssteuerung einerseits und der Datenverarbeitung andererseits zu optimieren, weisen die Verarbeitungseinrichtungen einerseits Anschlüsse zu Datenleitungen bzw. Datenbussen zum Austausch der Daten und andererseits Anschlüsse zu den zugeordneten Verarbeitungseinrichtungs-Steuereinrichtungen bzw. einer Schalteinrichtung zum Empfangen von Steueranweisungen auf.Around a decoupling of the flow and data flow control on the one hand and to optimize the data processing on the other hand, have the Processing facilities on the one hand connections to data lines or Data buses for the exchange of data and on the other hand connections to the assigned processing device control devices or a switching device for receiving control instructions.
In besonders bevorzugter Ausführungsform ist eine der zusätzlichen Programmfluss-Generierungseinrichtungen als Zustandsmaschine zum Erzeugen von Instruktionen für einen standardisierten Steuerablauf in der weiteren Verarbeitungseinrichtung ausgebildet. Dies ermöglicht bei einem Einsatz der weiteren Verarbeitungseinrichtung als beispielsweise Viterbi Decoder oder Fourier-Transformations-Berechnungseinrichtung für die weitere Verarbeitungseinrichtung nach dem Empfang entsprechend zu verarbeitender Daten einen automatisierten Steuerablauf zu übertragen, ohne dabei auf entsprechende Steueranweisungen der Standard-Programmfluss-Generierungseinrichtung angewiesen zu sein. Dadurch kann die Standard-Programmfluss-Generierungseinrichtung über den Steuerbus und entsprechende Verarbeitungseinrichtungs-Steuereinrichtungen parallel weitere Verarbeitungseinrichtungen ansprechen und betreiben. Es findet somit eine echte Parallelisierung von Abläufen statt, bei der lediglich die Zugriffe auf den oder die Datenbusse zu koordinieren sind, wenn die zeitaufwändige Datenverarbeitung in der weiteren Verarbeitungseinrichtung abgeschlossen ist. Eine weitere Optimierung kann durch die Übertragung von weiteren, zweiten Instruktionen zu den Verarbeitungseinrichtungs-Steuereinrichtungen durch das Bereitstellen eines weiteren Steuerbusses ermöglicht werden. Auch dies unterstützt eine Parallelisierung, wobei die Instruktionen für den weiteren Steuerbus zweckmäßigerweise von einer weiteren, zweiten Programmfluss-Generierungs-Einrichtung bereitgestellt werden. Dies macht zwar einen aufwändigeren Programmierungsalgorithmus erforderlich, da für die beiden oder mehreren Programmfluss-Generierungs-Einrichtungen deren getrennte Ansteuerung im Programmcode berücksichtigt werden muss, ermöglicht aber einen effizienteren Betrieb des Prozessors durch die parallelisierte Datenverarbeitung.In particularly preferred embodiment one of the extra Program flow generation means as state machine for Generating instructions for a standardized control process in the further processing device educated. this makes possible when using the further processing device than, for example Viterbi decoder or Fourier transform calculator for the further processing device after receiving according to processing data to transfer an automated control process, without reference to corresponding control statements of the standard program flow generation device to be instructed. As a result, the standard program flow generation device can use the Control bus and corresponding processing device controllers simultaneously address and operate other processing facilities. There is thus a real parallelization of processes, merely to coordinate the accesses to the data bus (s) are when the time consuming Data processing in the further processing device completed is. Further optimization can be achieved by transferring further, second Instructions to the Processor Controllers be made possible by providing another control bus. This also supports a parallelization, the instructions for the further control bus expediently from another, second program flow generation means provided become. This makes a more elaborate programming algorithm required, as for the two or more program flow generation devices have their separate ones Control taken into account in the program code must be possible but a more efficient operation of the processor through the parallelized data processing.
Bei dem Einsatz von Steueranweisungen aus verschiedenen Quellen, z. B. der weiteren Programmfluss-Generierungs-Einrichtung oder einer Zustandsmaschine, welche weitere Instruktionen oder Steueranweisungen erzeugen und bereitstellen, werden entsprechend Schalteinrichtungen bereitgestellt, welche einen Zugriff auf die verschiedenen Datenquellen ermöglichen. Als Schaltanweisung kann dabei vorteilhafterweise die Instruktion der Instruktionsquelle selber verwendet werden. Diesbezüglich sind verschiedene Ausführungsformen möglich, beispielsweise die Untersuchung der Instruktion bezüglich einer Adresse, auf welche die Schalteinrichtung anspricht oder auch allein das Vorliegen einer Instruktion an einem bestimmten der Eingänge der Schalteinrichtung.When using control statements from different sources, eg. As the further program flow generation means or a state machine, which generate and provide further instructions or control instructions are provided in accordance with switching devices which allow access to the various data sources. In this case, the instruction of the instruction source itself can advantageously be used as the switching instruction. In this regard, various embodiments are possible, such as examining the instruction for an address to which the switching device responds, or even the presence of an instruction at a particular one of the inputs of the switch direction.
Eine Analyse der einleitend beschriebenen Probleme des klassischen DSP-Ansatzes (DSP: Digital Signal Processing/digitale Signalverarbeitung) zeigt, dass die Verwendung einer zentralen Verarbeitungseinrichtungs-Steuereinrichtung, insbesondere Instruktionsausführungseinheit für parallele Ausführungseinheiten diese Probleme ursächlich nach sich zieht.A Analysis of the problems of the classic DSP approach described in the introduction (DSP: Digital Signal Processing), that the use of a central processing device control device, in particular instruction execution unit for parallel execution units these problems are causal pulls.
Grundidee des hier vorgestellten Prozessors sind daher ein Prozessoraufbau bzw. ein Verfahren zur Dezentralisierung der Instruktionsausführung auf mehrere parallele, locker synchronisierte Einrichtungen und Prozesse mit eigener Steuerungslogik in Form der zumindest einen Verarbeitungseinrichtungs-Steuereinrichtung.The basic idea The processor presented here is therefore a processor structure or a method for decentralizing the instruction execution to several parallel, loosely synchronized facilities and processes with own control logic in the form of at least one processing device controller.
Die erweiterbare Architektur des Digitalen Signalprozessors kombiniert vorzugsweise einen gemeinsamen RISC-Rechenkern (RISC: Reduced Instruction Set Computer/Rechner mit reduziertem Instruktionssatz) mit Datenfluß-Einheiten für verschiedenartige Datentypen.The Expandable architecture of the Digital Signal Processor combined preferably a common RISC calculation kernel (RISC: Reduced Instruction Set computer / calculator with reduced instruction set) with data flow units for different types Data types.
Dies Verfahren kennzeichnet sich durch folgende Eigenschaften:
- 1. Konsequente Aufspaltung des Prozessors und seines Instruktionssatzes in Ablauf-/Datenflusssteuerung (RISC-Teil) und Datenstrom-Verarbeitung (Datenfluss-Teil).
- 2. Minimierung bzw. Reduktion der Ausführungszeit für Operationen des RISC-Teils auf ein Minimum (typischerweise 1 Takt).
- 3. Realisierung von komplexen stark gepipelineten und datentypabhängigen Datenfluss-Operationen, wobei diese sowohl im Vordergrund, d.h. durch eine Prozessorinstruktion, als auch im Hintergrund, d. h. in einem parallelisierten Prozess, in dem der Datenfluss-Teil nach einer Initialisierung selbständig Daten anfordert und abgibt, ablaufen können.
- 1. Consistent splitting of the processor and its instruction set into flow / data flow control (RISC part) and data flow processing (data flow part).
- 2. minimize or reduce the execution time for RISC part operations to a minimum (typically 1 clock).
- 3. Realization of complex highly pipelined and data type-dependent data flow operations, these being both in the foreground, ie by a processor instruction, as well as in the background, ie in a parallelized process in which the data flow part independently requests and delivers data after an initialization, can expire.
Durch dieses Verfahren erreicht man ebenfalls eine hohe Auslastung der Recheneinheiten und Busse des Prozessors, indem die einzelnen, evtl. stark gepipelineten Datenfluss-Einheiten im Zeitmultiplex direkt über den Instruktionssatz oder im Hintergrund über insbesondere eine geeignete Speicherzugriffssteuerung, z.B. eine DMA-Steuer Logik (DMA: Direct Memory Access/Direkter Speicherzugriff) erreicht wird. Hier findet somit eine Umschaltung zwischen verschiedenen erforderlichen und vorteilhaften Verarbeitungseinrichtungen und/oder Verarbeitungsabkäufen statt.By This method also achieves a high utilization of the Arithmetic units and buses of the processor, adding the individual, possibly strong pipelined data flow units in time multiplex directly over the instruction set or in the background about in particular a suitable Memory access control, e.g. a DMA control logic (DMA: Direct Memory Access / Direct Memory Access) is achieved. Here you will find thus a switch between different required and advantageous processing facilities and / or processing purchases.
Die Separation der Ausführungseinheiten bzw. verschiedenen Einrichtungen erlaubt es, für jede der Ausführungseinheiten einfache Steuerungen zu programmieren. Die Synchronisation erfolgt über eine Buszuteilungslogik. Dies bewirkt sowohl eine Modularisierung und damit bessere Wartbarkeit/Wiederverwendbarkeit der Software, als auch eine Reduktion des Speicherbedarfs für die Programme, da vorteilhafterweise nur relativ kurze Programme für die einzelnen Blöcke abgespeichert werden müssen. Die gemäß VLWI (Very Long Instruction Word) notwendige, harte Verkopplung der verschiedenen Blöcke wird beim vorliegenden Ansatz vermieden, was bei einer begrenzten Anzahl von Datenbussen im Mittel zu einer Erhöhung des Datendurchsatzes führt.The Separation of execution units or Various facilities allow, for each of the execution units to program simple controls. The synchronization takes place via a Bus arbitration logic. This causes both a modularization and thus better maintainability / reusability of the software, as also a reduction of the memory requirements for the programs, since advantageously only relatively short programs for the individual blocks must be stored. The according to VLWI (Very Long Instruction Word), hard coupling of the various blocks is avoided in the present approach, which in a limited Number of data buses on average leads to an increase in data throughput.
Ausführungsbeispiele werden nachfolgend anhand der Zeichnung näher erläutert. Es zeigen:embodiments will be explained in more detail with reference to the drawing. Show it:
Ein
Prozessor besteht aus einer Vielzahl von einzelnen Komponenten,
insbesondere eigenständigen
oder gesteuerten Funktionseinrichtungen, von denen in den
Der
Prozessor des ersten Ausführungsbeispiels
ist, wie aus
Die einzelnen im Blockdiagramm dargestellten Baugruppen werden einschließlich ihrer kennzeichnenden Charakteristika im folgenden aufgelistet. Dabei sind die einzelnen Baugruppen bzw. Einrichtungen durch einen Steuerbus p1 zum Übertragen von Befehlen bzw. Instruktionen, einen oder mehrere Datenbusse d0, d1 und gegebenenfalls einen zusätzlichen Bus r zum Ansteuern von Schnittstellen IF, IF_1,..., IF_k als internen oder externen Schnittstellen verbunden. Auch ein zusätzlicher Adressbus kann bereitgestellt sein.The individual modules shown in the block diagram are including their Characteristic characteristics listed below. there are the individual modules or facilities by a control bus p1 to transmit of instructions, one or more data buses d0, d1 and optionally an additional one Bus r for controlling interfaces IF, IF_1, ..., IF_k as internal or external interfaces. Also an additional address bus can be provided.
Der RISC-Teil enthält folgende Komponenten bzw. erfüllt folgende Aufgaben. Diesem sind zugeordnet eine Programm-Ablaufsteuerung, eine Adressberechnung für die Datenbusse, ein schneller indirekter Speicherzugriff, z.B. ein für sich bekannter Huffman Dekoder, eine Integer-Arithmetik, eine Bitstrom-Manipulationseinrichtung und eine Register-Bank.The RISC part contains the following components or fulfills the following tasks. These are associated with a program flow control, an address calculation for the data buses, a fast indirect memory access, eg a Huffman decoder known per se, an integer arithmetic, a bit stream manipulation device and a register bank.
Der RISC-Teil ist ein wesentliches Element des Prozessor-Konzepts des ersten Ausführungsbeispiels und auch vorteilhaft bei dem Konzept des zweiten Ausführungsbeispiels einsetzbar.Of the RISC part is an essential element of the processor concept of the first embodiment and also advantageous in the concept of the second embodiment used.
Alle Operationen, die im RISC-Teil durchgeführt werden, arbeiten vorteilhafterweise auf einer Registerbank. Weiterhin werden alle Operationen des RISC-Teils im angeführten ersten Ausführungsbeispiel vorzugsweise innerhalb eines Taktes ausgeführt. Dies hat den Vorteil, dass die Latenzzeit für einen Datenspeicherzugriff entfällt und alle Operationen sowie deren Ergebnisse in einer sehr frühen Pipelinestufe vorliegen. Dadurch verkürzen sich Latenzzeiten in Programmschleifen, bei Sprüngen und bei indirekten Speicherzugriffen, was wiederum eine Vereinfachung der Programmierung und vor allem eine Erhöhung der Rechenleistung zur Folge hat.All Operations performed in the RISC part work advantageously on a register bank. Furthermore, all operations of the RISC part in the cited first embodiment preferably executed within a clock. This has the advantage that the latency for a data storage access is eliminated and all operations and their results in a very early pipeline stage available. Shorten it latencies in program loops, in jumps and in indirect memory access, which in turn simplifies programming and above all one increase the computing power results.
Die Datenfluss-Prozessierung findet in einer von vorzugsweise mehreren Datenfluss-Prozessierungseinheiten DFP statt. Die Datenfluss-Prozessierungseinheiten DFP sind dadurch gekennzeichnet, dass sie datentypabhängig sind, direkt auf mehrere Busse p1, d0, d1 zugreifen, eine eigene Ablaufsteuerung enthalten und eine längere Latenzzeit für ihre Ausführungseinheiten benötigen können.The Data flow processing takes place in one of preferably several Data flow processing units DFP instead. The data flow processing units DFPs are characterized by being data type dependent, directly access to several buses p1, d0, d1, a separate flow control included and a longer one Latency for their execution units need can.
Eine Einsatzmöglichkeit der Datenfluss-Prozessoren bzw. Prozessierungseinheiten ist in der direkten Ansteuerung der Rechenoperation durch den Instruktionssatz gegeben.A possible use the data flow processors or processing units is in the direct control of the arithmetic operation by the instruction set given.
Die Datenfluss-Prozessierungseinheiten DFP sind jedoch weiterhin auch dadurch gekennzeichnet, dass sie einmal angestoßen, zyklisch wiederholt Operationen ausführen können, die mit zugehörigen Zeigern von Addressgeneratoren des RISC-Teils auf Speicherbereiche des Hauptspeichers M zugreifen können. Dieser Datenzugriff findet dabei per direktem Speicherzugriff (DMA) sozusagen im Hintergrund statt. Im Vordergrund steht zweckmäßigerweise der Speicherzugriff durch den aktuellen Befehlssatz. Unter Hintergrund-Speicherzugriff ist dabei ein geringer priorisierter Speicherzugriff zu verstehen, der nur dann stattfindet, wenn Datenbusse frei sind.The However, data flow processing units DFP are still too characterized in that once initiated, cyclically repeats operations To run can, the associated with Pointers of address generators of the RISC part to memory areas of the main memory M can access. This data access takes place via direct memory access (DMA) in the background, so to speak. In the foreground is expediently the memory access by the current instruction set. Under background memory access is to understand a low priority memory access, which takes place only when data buses are free.
Von den hier beschriebenen Datenfluss-Prozessierungseinheiten DFP können mehrere parallel im Hintergrund betrieben werden, wobei diese natürlich untereinander beim Buszugriff zu priorisieren sind. Dadurch ist es trotz eventuell langer Ausführungspipeline möglich, die Datenbusbelegung, die das Kriterium für die Leistungsfähigkeit eines digitalen Signalprozessors ist, zu maximieren. Die Parallelisierung erfolgt dabei durch die Buszuteilungslogik im Instruktionsdekoder bzw. in der Adressgenerierungseinheit statt durch eine starre Kopplung mittels langer Instruktionsworte.From The data flow processing units DFP described here can have several operated in parallel in the background, these of course with each other to prioritize on bus access. This is despite it eventually long execution pipeline possible, the data bus occupancy, which is the criterion for performance of a digital signal processor is to maximize. The parallelization takes place through the bus arbitration logic in the instruction decoder or in the address generation unit instead of a rigid coupling by means of long instruction words.
Typische Beispiele für Datenfluss-Prozessierungseinheiten DFP sind eine Fließkomma-Einheit, ein FFT-Prozessor (FFT: Fast Fourier Transformation/schnelle Fourier-Transformation) oder ein Viterbi-Dekoder.typical examples for Data flow processing units DFP are a floating-point unit FFT processor (FFT: Fast Fourier Transformation / Fast Fourier Transformation) or a Viterbi decoder.
Besonders bevorzugte beispielhafte Anwendungsmöglichkeiten sind eine FIR-Filter-Berechnung (Finite Impulse Response/finite Impulsantwort) als ein nicht rekursives Filter, ein komplexwertiger Mischer, eine Galois-Feld-Berechnung oder ein DCT-Prozessor (DCT: Diskrete Cosinus Transfomation).Especially preferred exemplary applications are an FIR filter calculation (Finite Impulse Response / finite impulse response) as a non-recursive Filter, a complex-valued mixer, a Galois field calculation or a DCT (DCT: Discrete Cosine Transform) processor.
Die Datenfluss-Prozessierungseinheiten DFP stellen den erweiterbaren Teil der vorgeschlagenen Architektur dar und können je nach Anwendungsgebiet in unterschiedlichen Varianten in die Prozessorarchitektur integriert werden.The Data Flow Processing Units DFP make the extensible Part of the proposed architecture and may vary depending on the application integrated in different variants in the processor architecture become.
Der Vorteil dieser erweiterbaren Architektur besteht unter anderem darin, dass der Hauptteil eines Compilers, insbesondere der Teil, der die Programmablaufsteuerung und Programmstrukturierung betrifft, nur einmal realisiert zu werden braucht. Die Datenfluss-Prozessierungseinheiten bilden sich in zugehörigen Programmmentwicklungswerkzeugen typischerweise als Datentyp-Erweiterungen ab, so dass sich die Expandierbarkeit der vorgeschlagenen Prozessorarchitektur auch auf die zugehörigen Werkzeuge ausweitet.Of the One advantage of this expandable architecture is that the main part of a compiler, especially the part that the Program scheduling and program structuring concerns only needs to be realized once. The data flow processing units form in associated Program development tools typically as data type extensions so that the expandability of the proposed processor architecture also on the associated Extends tools.
Speicherblöcke Mem_0, Mem_1,... sind im angegebenen Ausführungsbeispiel dadurch gekennzeichnet, dass sie jeweils an mehrere Datenbusse d0, d1 gekoppelt sind. Dies erlaubt es, durch geschickte Speicheraufteilung bei der Programmierung oder durch gleichzeitigen Einsatz mehrerer Datenfluss-Prozessierungseinheiten DFP gleichzeitig auf mehrere Busse d0, d1 zuzugreifen, um den Datendurchsatz zu erhöhen.Memory blocks Mem_0, Mem_1, ... are characterized in the specified embodiment, that they are each coupled to a plurality of data buses d0, d1. This allows it, by clever memory allocation during programming or by simultaneously using multiple data flow processing units DFP simultaneously to access multiple buses d0, d1 to increase data throughput.
Die Schnittstellen-Module IF, IF_1,... sind für den Datentransfer zwischen Prozessorkern und externen Einheiten vorgesehen. Die Anbindung der Schnittstellen-Module kann dabei ebenfalls per Hintergrund Speicherzugriff oder durch eine Unterbrechungs-(Interrupt)-Logik erfolgen.The Interface modules IF, IF_1, ... are for data transfer between Processor core and external units provided. The connection of the interface modules can also be accessed through background memory access or through an interrupt (interrupt) logic take place.
Insbesondere ist es möglich, die Busse mit einer Schnittstelle nach außerhalb des eigentlichen Prozessors auszugestalten, so dass nachträgliche Erweiterungen um weitere solche Datenfluss-Prozessierungseinheiten DFP vorgenommen werden können.In particular, it is possible to have the buses with an interface to outside the actual Processor design so that subsequent extensions to other such data flow processing units DFP can be made.
Der Instruktionsdekoder IDC verwaltet als eine Verarbeitungseinrichtungs-Steuereinrichtung die Vordergrundbefehle des Prozessors und steuert gleichzeitig die Synchronisierung der Vordergrundaktivität mit den parallelen Hintergrundprozessen.Of the Instruction decoder IDC, as a processing device controller, manages the Foreground commands of the processor while controlling the synchronization the foreground activity with the parallel background processes.
Die hier beschriebene Prozessorarchitektur ist in folgenden Bereichen einsetzbar, insbesondere als ein Prozessor für Audiosignalverarbeitung, als ein Prozessor für hohen Datendurchsatz, z.B. für Video-Kompression/Dekompression, für digitale Modem-Anwendungen, insbesondere Radio/Funk-Modem-Anwendungen, als ein Prozessor für gemischte Controller und Signalverarbeitungsaufgaben oder als ein Signalprozessor für Anwendungen mit kompiliertem Ausführungscode, der Spezialdatentypen erfordert. Weitere Einrichtungen und Funktionen, die bei dem ersten Ausführungsbeispiel vorteilhaft umsetzbar bzw. einsetzbar sind, können aus dem zweiten Ausführungsbeispiel übernommen werden.The The processor architecture described here is in the following areas can be used, in particular as a processor for audio signal processing, as a processor for high data throughput, e.g. For Video compression / decompression, for digital modem applications, especially radio / wireless modem applications, as a mixed controller processor and signal processing tasks or as a signal processor for applications with compiled execution code, requires special data types. Other facilities and functions, that in the first embodiment can be advantageously implemented or used, can be taken from the second embodiment become.
Bei
dem zweiten Ausführungsbeispiel
weist die Prozessoranordnung, wie dies aus
Die Instruktionen iw, iw2 entsprechen dabei einem in Maschinensprache umgesetzten Programmcode, wobei die Umsetzung des Programmcodes in die Maschinensprache von den Programmfluss-Generierungseinrichtungen PFG, PFG2 durchgeführt wird. Die Instruktionen können dabei neben Instruktionsdaten auch Informations- und Adressdaten aufweisen. Bei der Programmierung einer solchen Prozessoranordnung wird in dem Programmcode entsprechend berücksichtigt, dass die verschiedenen Programm- und Generierungseinrichtungen PFG, PFG2 für eine Optimierung des Betriebs vorteilhafterweise mit separaten Programmcodeabschnitten angesteuert werden.The Instructions iw, iw2 correspond to one in machine language implemented program code, the implementation of the program code into the machine language of the program flow generation facilities PFG, PFG2 performed becomes. The instructions can besides instruction data also information and address data exhibit. In the programming of such a processor arrangement is considered in the program code accordingly, that the different Program and generation facilities PFG, PFG2 for optimization the operation advantageously with separate program code sections be controlled.
Zur allgemeinen Kontrolle des Prozessors dient insbesondere eine Steuer- und Takteinrichtung C, welche mit verschiedenen Einrichtungen des Prozessors verbunden ist, wie dies für sich genommen bekannt ist. Insbesondere kann auch eine Verbindung zu einem Adressgenerator A bestehen, welcher über einen Adressbus a verschiedene Einrichtungen, insbesondere verschiedene Verarbeitungseinrichtungen, externe Schnittstellen IF und eine oder mehrere zentrale Speichereinrichtungen M ansteuert. Die Adressansteuerung koordiniert dabei insbesondere den Zugriff verschiedener Einrichtungen auf Datenbusse d0, d1, welche zum Übertragen der eigentlichen zu verarbeitenden bzw. verarbeiteten Daten in der Prozessoranordnung ausgebildet sind, wie dies ebenfalls für sich bekannt ist.to general control of the processor is used in particular by a control and clock C, which with different facilities of the Processor is connected, as it is known on its own. In particular, it is also possible to connect to an address generator A exist, which over an address bus a different devices, in particular different Processing facilities, external interfaces IF and one or several central memory devices M drives. The address control coordinates in particular the access of various institutions on data buses d0, d1, which for transmitting the actual to be processed or processed data in the processor arrangement are formed, as is also known.
Beim dargestellten Ausführungsbeispiel werden der standardmäßigen ersten Verarbeitungseinrichtungs-Steuereinrichtung, die insbesondere als Instruktionsdecoder IDC ausgebildet ist, die ersten Instruktionen iw der standardmäßigen ersten Programmfluss-Generierungs-Einrichtung PFG zugeführt. Die Verarbeitungseinrichtungs-Steuereinrichtung IDC dient zum Umsetzen der Instruktionen iw in direkte Steueranweisungen iwx für verschiedene Verarbeitungseinrichtungen X (DFP), FPU. Die Verarbeitungseinrichtungs-Steuereinrichtung IDC weist vorteilhafterweise eine Vielzahl von Ausgängen auf, an welchen die entsprechenden verschiedenen Verarbeitungseinrichtungen X, FPU angeschlossen sind. Neben der Übersetzung der Instruktionen iw in die Steueranweisungen iwx übernimmt die Verarbeitungseinrichtungs-Steuereinrichtung IDC die Steuerung der angeschlossenen Verarbeitungseinrichtungen. Beim vorliegenden Ausführungsbeispiel ist insbesondere eine Gleit-, Berechnungseinrichtung FPU (Floating Point Unit) an der ersten Verarbeitungseinrichtungs-Steuereinrichtung IDC angeschlossen. Weiterhin ist eine zusätzliche Verarbeitungseinrichtung X für andere spezialisierte Verarbeitungszwecke oder allgemeine Verarbeitungszwecke der Daten d angeschlossen.At the illustrated embodiment become the default first Processing device controller, which is designed in particular as an instruction decoder IDC, the first instructions iw the standard first program flow generation device PFG supplied. The processing device controller IDC is used to translate the instructions iw into direct control statements iwx for various processing facilities X (DFP), FPU. The processing device controller IDC advantageously has a plurality of outputs which are the corresponding different processing devices X, FPU are connected. In addition to the translation of the instructions iw into the iwx control statements the processing device controller IDC controls the connected processing equipment. At present embodiment is in particular a sliding, calculation device FPU (Floating Point Unit) at the first processing device controller IDC connected. Furthermore, an additional processing device X for others specialized processing or general purpose processing the data d connected.
Die weiteren, zweiten Instruktionen iw2 der zweiten bzw. weiteren Programmfluss-Generierungs-Einrichtung PFG2 dienen zur parallelen Ansteuerung der zweiten Verarbeitungseinrichtungs-Steuereinrichtung IDC2. Diese setzt zugeführte Instruktionen iw, iw2 in entsprechende Steueranweisungen iwx um, welche angeschlossenen Verarbeitungseinrichtungen INTU, FFT zugeführt werden. Die speziellen Verarbeitungseinrichtungen, die an der dargestellten zweiten Verarbeitungseinrichtungs-Steuereinrichtung IDC2 beispielhaft angeschlossen sind, sind eine Berechnungseinrichtung für ganze Zahlen INTU und eine Foyer-Transformations-Berechnungs-Einrichtung FFT. Diese Verarbeitungseinrichtungen dienen somit ebenfalls speziellen Zwecken der Datenverarbeitung.The further, second instructions iw2 of the second or further program flow generation device PFG2 serve to drive the second processing device control device IDC2 in parallel. This converts supplied instructions iw, iw2 into corresponding control instructions iwx, which are supplied to connected processing devices INTU, FFT. The special processing equipment, the of the illustrated second processing device controller IDC2 are an integer-number calculating means INTU and a foyer-transformation calculating means FFT. These processing devices are thus also used for special purposes of data processing.
Der zweiten Verarbeitungseinrichtungs-Steuereinrichtung IDC2 ist eine Schalteinrichtung SW vorgeschaltet, welche je nach Schaltstellung entweder Instruktionen iw der ersten Programmfluss-Generierungs-Einrichtung PFG zuführt, wie das gemäß dem Stand der Technik für sich bekannt ist, oder Instruktionen iw2 der zweiten Programmfluss-Generierungs-Einrichtung PFG2 zuführt. Dadurch kann die zweite Verarbeitungseinrichtungs-Steuereinrichtung IDC2 wahlweise, wie für sich bekannt, betrieben werden, kann aber alternativ auch direkt parallel zu der ersten Verarbeitungseinrichtungs-Steuereinrichtung IDC betrieben werden.Of the second processing device controller IDC2 is a Switching device SW upstream, which depending on the switching position either instructions iw the first program flow generation device PFG feeds, like that according to the state the technology for is known, or instructions iw2 the second program flow generation device PFG2 supplies. As a result, the second processing device control device IDC2 optional, as it is for you be known, operated, but can alternatively also directly in parallel to the first processing device controller IDC.
Als Schaltsignal für die Schalteinrichtung SW kann vorteilhafterweise direkt eine Instruktion iw2 auf dem zweiten Steuerbus p2 verwendet werden. Bei dieser einfachen Ausführungsform schaltet die Schalteinrichtung SW2 immer dann automatisch auf den zweiten Steuerbus p2, wenn dort ein Signal bzw. Instruktionen iw2 anliegen. Alternativ schaltet die Schalteinrichtung auf den ersten Steuerbus p1.When Switching signal for the switching device SW can advantageously directly an instruction iw2 can be used on the second control bus p2. In this simple embodiment always switches the switching device SW2 automatically to the second control bus p2, if there is a signal or instructions iw2 issue. Alternatively, the switching device switches to the first Control bus p1.
Alternativ können aber auch andersartige Schaltsignale bereitgestellt werden. Beispielsweise kann die Schalteinrichtung SW stets einen der beiden Steuerbusse p1, p2 beobachten und anhand von Adressinformationen in den darauf übertragenen Instruktionen iw, iw2 bestimmen, von welchem der beiden Steuerbusse p1, p2 die Instruktionen iw, iw2 abzurufen und zu der zweiten Verarbeitungseinrichtungs-Steuereinrichtung ID2 zu führen sind.alternative can but also different types of switching signals are provided. For example, can the switching device SW always one of the two control buses p1, Observe p2 and based on address information in the transmitted Instructions iw, iw2 determine from which of the two control buses p1, p2 retrieve the instructions iw, iw2 and to the second processing device controller To run ID2 are.
Außerdem ist bei der dargestellten Prozessoranordnung eine weitere Verarbeitungseinrichtung VIT am ersten Steuerbus p1 angeschlossen, der die ersten Instruktionen iw von der ersten Programmfluss-Generierungs-Einrichtung PFG zugeführt werden. Beim dargestellten Ausführungsbeispiel soll diese weitere Verarbeitungseinrichtung VIT einen Viterbi Decoder ausbilden, welcher Daten d auf einem der Datenbusse d0, d1 abruft, verarbeitet und wieder auf einen der Datenbusse d0, d1 ausgibt.Besides that is in the illustrated processor arrangement, a further processing device VIT connected to the first control bus p1, the first instructions iw from the first program flow generation means PFG. In the illustrated embodiment this further processing device VIT is a Viterbi decoder which data d gets on one of the data buses d0, d1, processed and output again on one of the data buses d0, d1.
Diese weitere Verarbeitungseinrichtung VIT weist ebenfalls eine Schalteinrichtung SW* auf, um alternativ zu den Instruktionen iw der ersten Programmfluss-Generierungs-Einrichtung PFG weitere, zweite Instruktionen iw2 von einer eigenständigen Programmfluss-Generierungs-Einrichtung zugeführt zu bekommen, die in Form einer Zustandsmaschine SMausgebildet ist. Durch den Einsatz der weiteren Schalteinrichtung SW* können somit je nach Bedarf Steuersignale bzw. Instruktionen iw, sw2 von verschiedenen Steuersignalquellen zu der weiteren Verarbeitungseinrichtung VIT zugeführt werden.These Further processing device VIT also has a switching device SW * on, as an alternative to the instructions iw the first program flow generation means PFG further, second Instructions iw2 from a standalone program flow generation facility fed to get, which is in the form of a state machine SMausgebildet. By using the further switching device SW * can thus as required, control signals or instructions iw, sw2 from different control signal sources are supplied to the further processing device VIT.
Dies ermöglicht eine parallele Abarbeitung von Standardisierten Abläufen, wie beispielsweise der Ausführung eines Viterbi-Algorithmus, bei dem eine Vielzahl standardmäßig ablaufender Programmschritte zur Verarbeitung der Daten d abzuarbeiten ist. Während dieser Abarbeitung ist die Zuführung der Instruktionen iw der Programmfluss-Generierungs-Einrichtung PFG nicht erforderlich, so dass diese nicht entsprechend blockiert wird, sondern für die Generierung von Instruktionen iw für andere Verarbeitungseinrichtungs-Steuereinrichtungen IDC, IDC2 frei bleibt. Für die spezielle Abarbeitung werden die zweiten Instruktionen iw2 entweder direkt von der Zustandsmaschine SM erzeugt oder aus einem dieser zugeordneten integrierten oder externen Speicher abgerufen und bereitgestellt.This allows a parallel processing of standardized processes, such as for example, the execution a Viterbi algorithm, where a variety of standard expires Program steps to process the data d is to work. While this processing is the feeder the instructions iw the program flow generation device PFG not required so that it is not blocked accordingly, but for the generation of instructions iw for other processing device controllers IDC, IDC2 free remains. For the special processing will be the second iw2 instructions either generated directly from the state machine SM or one of these associated or external memory retrieved and deployed.
Vorteilhafterweise
stellt
Alternativ oder zusätzlich kann auch die erste Verarbeitungseinrichtungs-Steuereinrichtung mit einer vorgeschalteten Schalteinrichtung ausgestattet werden. Insbesondere ist es möglich, in den Schalteinrichtungen SW* und/oder den Programmfluss-Generierungs-Einrichtungen in Form eigenständiger Zustandsmaschinen SM und dergleichen entsprechende Instruktionen oder Steueranweisungen in einer Form bereitzustellen, wie sie von den nachgeschalteten Verarbeitungseinrichtungs-Steuereinrichtungen IDC2 oder weiteren Verarbeitungseinrichtungen VIT zu deren idealer Ansteuerung optimal geeignet sind.alternative or additionally may also be the first processing device controller be equipped with an upstream switching device. In particular, it is possible in the switching devices SW * and / or the program flow generation devices in the form of independent State machines SM and the like corresponding instructions or provide control statements in a form as defined by the downstream processing device controllers IDC2 or further processing devices VIT for their ideal control are optimally suitable.
Claims (8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10261500A DE10261500B4 (en) | 2001-12-21 | 2002-12-23 | Processor and method for controlling a processor |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10163694.6 | 2001-12-21 | ||
DE10163694 | 2001-12-21 | ||
DE10261500A DE10261500B4 (en) | 2001-12-21 | 2002-12-23 | Processor and method for controlling a processor |
Publications (2)
Publication Number | Publication Date |
---|---|
DE10261500A1 DE10261500A1 (en) | 2003-07-17 |
DE10261500B4 true DE10261500B4 (en) | 2005-07-21 |
Family
ID=7710677
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10261500A Expired - Fee Related DE10261500B4 (en) | 2001-12-21 | 2002-12-23 | Processor and method for controlling a processor |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE10261500B4 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5355508A (en) * | 1990-05-07 | 1994-10-11 | Mitsubishi Denki Kabushiki Kaisha | Parallel data processing system combining a SIMD unit with a MIMD unit and sharing a common bus, memory, and system controller |
-
2002
- 2002-12-23 DE DE10261500A patent/DE10261500B4/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5355508A (en) * | 1990-05-07 | 1994-10-11 | Mitsubishi Denki Kabushiki Kaisha | Parallel data processing system combining a SIMD unit with a MIMD unit and sharing a common bus, memory, and system controller |
Non-Patent Citations (2)
Title |
---|
Lyonnard, Damien,et.al.: Automatic Generation of Application-Specific Architectures for Heterogene- ous Multiprocessor System-on-Chip.In: Proceedings of the 38th Design Automation Conference,DAC 2001, Las Vegas, NV, USA, June 18-22, 2001, ACM 2001, S. 518-523 |
Lyonnard, Damien,et.al.: Automatic Generation of Application-Specific Architectures for Heterogene-ous Multiprocessor System-on-Chip.In: Proceedings of the 38th Design Automation Conference,DAC 2001,Las Vegas, NV, USA, June 18-22, 2001, ACM 2001, S. 518-523 * |
Also Published As
Publication number | Publication date |
---|---|
DE10261500A1 (en) | 2003-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE19735348B4 (en) | Vector processor for single-instruction multi-data processing using multiple banks of vector registers and associated method for operating the same | |
DE60318105T2 (en) | PIPELINE COPROCESSOR | |
EP0293517B1 (en) | Control processor | |
EP0108969B1 (en) | Dma control unit for data transmission between a data transmitter and a data receiver | |
DE69826404T2 (en) | Multi-processor data processing system sharing a register bank | |
EP0428770A1 (en) | Data controlled array processor | |
DE2747146A1 (en) | DATA PROCESSING SYSTEM | |
DE2911909C2 (en) | Digital data processing device | |
EP1117037B1 (en) | Data processing apparatus for parallel processing of independent processes (threads) | |
DE10261500B4 (en) | Processor and method for controlling a processor | |
DE19528760A1 (en) | Programmable image processing Large Scale Integrated circuit e.g. for OCR | |
DE102016100643A1 (en) | Analog-to-digital converter circuits and methods of operating the same | |
EP0110199B1 (en) | Method for the control of data transfer between a data transmitter and a data receiver on a bus, using a control unit which is connected to the bus | |
EP0409330B1 (en) | Memory access control circuit | |
DE19735349A1 (en) | Multiple data processor with single instruction combining vector and scalar operations | |
DE3435816A1 (en) | DEVICE FOR NUMERICAL SIGNAL PROCESSING | |
EP1260905B1 (en) | Program-controlled unit | |
DE60109699T2 (en) | Apparatus and method for signal group exchange between multiple parts in a digital signal processing apparatus comprising a direct memory access controller | |
EP3548975B1 (en) | Control of a technical process on a multi computing core installation | |
DE60103221T2 (en) | Device and method for signal group transmission between digital signal processors in a digital signal processing unit | |
DE60209425T2 (en) | Processor with memory device and address generator | |
DE102009037158B4 (en) | Control device for controlling an electric drive | |
EP0970439B1 (en) | Method and circuit for the production of compressed or expanded images, and printer with such circuit | |
DE2430693A1 (en) | INTERFACE CIRCUIT FOR THE CONNECTION OF A SATELLITE DATA PROCESSING SYSTEM TO A DATA TRANSFER CHANNEL | |
EP1137997A1 (en) | Multi-master bus system and method for operating the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8181 | Inventor (new situation) |
Inventor name: WITTE, FRANZ-OTTO, DR.-ING., 79331 TENINGEN, DE Inventor name: NOESKE, CARSTEN, DIPL.-ING., 79350 SEXAU, DE Inventor name: HERZ, RALF, DIPL.-ING., 79111 FREIBURG, DE |
|
8364 | No opposition during term of opposition | ||
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |
Effective date: 20110701 |