DE19704728A1 - Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines - Google Patents

Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines

Info

Publication number
DE19704728A1
DE19704728A1 DE19704728A DE19704728A DE19704728A1 DE 19704728 A1 DE19704728 A1 DE 19704728A1 DE 19704728 A DE19704728 A DE 19704728A DE 19704728 A DE19704728 A DE 19704728A DE 19704728 A1 DE19704728 A1 DE 19704728A1
Authority
DE
Germany
Prior art keywords
synchronization
configurable
elements
register
data
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.)
Withdrawn
Application number
DE19704728A
Other languages
English (en)
Inventor
Martin Vorbach
Robert Muench
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.)
PACT INF TECH GmbH
Original Assignee
PACT INF TECH GmbH
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=7819640&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE19704728(A1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by PACT INF TECH GmbH filed Critical PACT INF TECH GmbH
Priority to DE19704728A priority Critical patent/DE19704728A1/de
Priority to US08/946,812 priority patent/US6081903A/en
Priority to AT98909346T priority patent/ATE298907T1/de
Priority to CN98803968A priority patent/CN1252144A/zh
Priority to DE19880129T priority patent/DE19880129D2/de
Priority to EA199900653A priority patent/EA001823B1/ru
Priority to DE59812895T priority patent/DE59812895D1/de
Priority to CA002279917A priority patent/CA2279917A1/en
Priority to EP98909346A priority patent/EP0961980B1/de
Priority to JP53356398A priority patent/JP4146519B2/ja
Priority to AU63918/98A priority patent/AU740243B2/en
Priority to PCT/DE1998/000334 priority patent/WO1998035299A2/de
Priority to EP05008631A priority patent/EP1669885A3/de
Publication of DE19704728A1 publication Critical patent/DE19704728A1/de
Priority to US09/369,653 priority patent/US6542998B1/en
Priority to US09/537,932 priority patent/US6526520B1/en
Priority to US10/373,595 priority patent/US6968452B2/en
Priority to US10/379,403 priority patent/US7036036B2/en
Priority to US12/109,280 priority patent/USRE44383E1/en
Priority to US12/909,150 priority patent/USRE45223E1/en
Priority to US12/909,203 priority patent/USRE45109E1/en
Priority to US12/909,061 priority patent/USRE44365E1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture

Description

1 Hintergrund der Erfindung 1.1 Stand der Technik 1.2 Probleme
Bei heutigen Bausteinen (FPGA, DPGA etc.) wird die Synchronisation der konfigu­ rierbaren Elemente meistens durch den Takt des Bausteines hergestellt. Diese Art der zeitlich gesteuerten Synchronisation bereitet viele Probleme, da oft nicht im Vorhinein bekannt ist, wie lange eine Aufgabe benötigt, bis ein gültiges Ergebnis bereit steht. Ein weiteres Problem der zeitgesteuerten Synchronisation ist, daß das Ereignis auf welches die Synchronisation erfolgt nicht von dem zu synchronisierenden Element selbst aus­ gelöst wird, sondern von einem unabhängigem Element. In diesem Fall sind nun zwei verschiedene Elemente an der Synchronisation beteiligt. Dies führt zu einem erheblich höherem Verwaltungsaufwand.
1.3 Verbesserung durch die Erfindung
Durch die Erfindung wird ein Verfahren beschrieben, welches es gestattet, daß die Syn­ chronisation von zu synchronisierenden Elementen selbst ausgeht. Die Synchronisation ist nicht mehr durch eine zentrale Instanz implementiert und wird auch nicht mehr durch eine zentrale Instanz verwaltet. Durch die Verlegung der Synchronisation in jedes Element können auch viel mehr Synchronisationsaufgaben gleichzeitig durchgeführt wer­ den, da unabhängige Elemente sich nicht mehr gegenseitig beim Zugriff auf die zentrale Synchronisations-Instanz behindern. Die Einzelheiten und besondere Ausgestaltungen, sowie Merkmale des erfindungsgemäßen Synchronisationsverfahrens sind Gegenstand der Patentansprüche.
2 Beschreibung der Erfindung 2.1 Übersicht über die Erfindung, Abstrakt
In einem Baustein mit zwei- oder mehrdimensional angeordneter, programmierbarer Zell­ struktur (DFP, DPGA) kann jedes konfigurierbare Element über eine Vernetzungsstruk­ tur auf die Konfigurations- und Statusregister der anderen konfigurierbaren Elemente zugreifen und damit deren Funktion und Arbeitsweise aktiv beeinflussen. Die Konfigu­ ration kann somit zusätzlich zu der üblichen Methode durch eine Ladelogik aus dem ProcessingArray (PA vgl. PACT02) heraus erfolgen.
2.2 Detailbeschreibung der Erfindung
Es wird von einem frei zur Laufzeit programmierbaren Baustein ausgegangen, welcher zusätzlich zur Laufzeit rekonfiguriert werden kann. Die auf dem Chip enthaltenen konfi­ gurierbaren Elemente besitzen ein oder mehrere Konfigurationsregister für verschiedene Aufgaben. Auf diese Konfigurationsregister kann lesend wie schreibend zugegriffen wer­ den. In dem beschriebenen Verfahren wird davon ausgegangen, daß für folgende Infor­ mationen eine Konfiguration in einem zu konfigurierenden Element eingestellt werden kann.
  • - Vernetzungs-Register. In diesem Register wird die Art der Verbindung zu anderen Zellen eingestellt.
  • - Befehls-Register. In diesem Register wird die auszuführende Funktion des konfi­ gurierbaren Elements eingetragen.
  • - Status-Register. In diesem Register speichert die Zelle ihren aktuellen Zustand. Dieser Zustand gibt anderen Elementen des Bausteins Auskunft darüber, in wel­ chem Verarbeitungszyklus sich die Zelle befindet.
Eine Zelle wird durch einen Befehl konfiguriert, welcher die Funktion der Zelle bestimmt, die ausgeführt werden soll. Weiterhin werden Konfigurationsdaten eingetragen um die Vernetzung mit anderen Zellen und den Inhalt des Status-Registers einzustellen. Nach diesem Vorgang ist die Zelle betriebsbereit.
Um eine flexible und dynamische Zusammenarbeit vieler Zellen zu ermöglichen, kann jede Zelle auf alle Konfigurationsregister einer anderen Zelle lesend oder schreibend zugreifen. Auf welches der vielen Konfigurationsregister lesend oder schreibend zuge­ griffen wird, wird durch die Art des Befehls, mit welchem die Zelle konfiguriert wurde, festgelegt. Jeder Befehl den die Zelle ausführen kann, existiert in soviel verschiedenen Adressierungsarten, wie es verschiedene, voneinander unabhängige Konfigurationsregi­ ster, in einem zu konfigurierenden Element gibt.
Beispiel: Eine Zelle besitzt die oben angegebenen Konfigurationsregister (Vernet­ zung, Befehl und Status) und soll den Befehl ADD, welcher eine Addition durchführt ausführen. Durch die verschiedenen Arten des ADD Befehls kann nun selektiert werden, wohin das Ergebnis dieser Funktion übertragen wird.
  • - ADD-A. Das Ergebnis wird an das Operand-Register-A der Zielzelle übertragen.
  • - ADD-B. Das Ergebnis wird an das Operand-Register-B der Zielzelle übertragen.
  • - ADD-V. Das Ergebnis wird an das Vernetzungs-Register der Zielzelle übertragen.
  • - ADD-S. Das Ergebnis wird an das Status-Register der Zielzelle übertragen.
  • - ADD-C. Das Ergebnis wird an das Befehls-Register der Zielzelle übertragen.
Neben dem Ergebnis kann jede Zelle eine Menge an Trigger-Signalen erzeugen. Die Trigger-Signale müssen nicht notwendigerweise an die gleiche Zielzelle übertragen wer­ den, wie das Ergebnis der Verarbeitung des konfigurierten Befehles. Ein Trigger-Signal oder erst die Kombination mehrerer Trigger-Signale, löst bei der Zielzelle eine bestimm­ te Aktion aus oder setzt die Zelle in einen bestimmten Zustand. Eine Beschreibung der Zustände ist weiter unten im Text zu finden. Folgende Trigger-Signale gibt es:
  • - GO-Trigger. Der GO-Trigger setzt die Zielzelle in den Zustand READY.
  • - RECONFIG-Trigger. Der RECONFIG-Trigger setzt die Zielzelle in den Zustand RECONFIG, so daß die Zelle umprogrammiert werden kann. Besonders in Zusam­ menarbeit mit Switching-Tabellen ist dieser Trigger sehr sinnvoll. Geht man davon aus, daß zu verarbeitenden Daten mit der steigenden Taktflanke in die Operanden- Register geladen werden, in der Zeitspanne des H-Level verarbeitet werden und mit der fallenden Flanke in das Ausgangsregister geschrieben werden, so ist eine Rekonfigurierung der Zelle mit der fallenden Flanke möglich. Mit der fallenden Flanke werden die neuen Konfigurationsdaten in das Befehls-Register geschrie­ ben. Die Zeitspanne des L-Level ist ausreichend genug, um die Rekonfigurierung erfolgreich abzuschließen.
  • - STEP-Trigger. Der STEP-Trigger löst bei der Zielzelle, welche sich im Zustand WAIT befindet, die einmalige Ausführung des konfigurierten Befehls aus.
  • - STOP-Trigger. Der STOP-Trigger hält die Zielzelle an, in dem die Zelle in den Zustand STOP gesetzt wird.
Durch die Möglichkeit in der verarbeitenden Zelle anzugeben, in welches Register der Zielzelle das Ergebnis eingetragen werden soll und welche Art von Trigger-Signal erzeugt werden soll, kann aus einem Datenstrom eine Menge an Verwaltungsdaten erzeugt wer­ den. Diese Verwaltungsdaten stellen kein Ergebnis der eigentlichen Aufgabe dar, welche durch den Chip abgearbeitet werden soll, sondern dienen allein der Verwaltung, Syn­ chronistion, Optimierung etc. des internen Zustands.
Jede Zelle kann folgende Zustände annehmen, welche durch eine geeignete Kodierung im Status-Register dargestellt werden.
  • - READY. Die Zelle ist mit einem gültigen Befehl konfiguriert worden und kann Daten verarbeiten. Die Verarbeitung findet mit jedem Taktzyklus statt. Die Daten werden auf Grund der Adressierungsart der datenschickenden Zelle in die Register der Zielzelle eingelesen.
  • - WAIT. Die Zelle ist mit einem gültigen Befehl konfiguriert worden und kann Daten verarbeiten. Die Verarbeitung findet mit auf Grund eines Trigger-Signals statt, welches durch andere Elemente des Bausteins erzeugt werden können. Die Daten werden auf Grund der Adressierungsart der datenschickenden Zelle in die Register der Zielzelle eingelesen.
  • - CONFIG. Die Zelle ist nicht mit einem gültigen Befehl konfiguriert. Das Datenpa­ ket, welches mit dem nächsten Taktzyklus an die Zelle gesandt wird, wird in das Befehls-Register eingelesen. Das Datenpaket wird auf jeden Fall in das Befehls- Register eingelesen, egal welche Adressierungsart von der datenschickenden Zelle benutzt wurde.
  • - CONFIG-WAIT. Die Zelle ist nicht mit einem gültigen Befehl konfiguriert. Ein Da­ tenpaket, wird mit dem nächsten Trigger-Signal, welches durch andere Elemente des Bausteins erzeugt werden kann, eingelesen und in das Befehls-Register ge­ schrieben. Das Datenpaket wird auf jeden Fall in das Befehls-Register eingelesen, egal welche Adressierungsart von der datenschickenden Zelle benutzt wurde.
  • - RECONFIG. Die Zelle ist mit einem gültigen Befehl konfiguriert, verarbeitet aber keine weiteren Daten, nimmt die Daten auch nicht an. Die Zelle kann durch ein anderes Element des Bausteins umkonfiguriert werden.
  • - STOP. Die Zelle ist mit einem gültigen Befehl konfiguriert, verarbeitet aber mo­ mentan keine Daten. Die Daten werden von der Zelle angenommen (in die Ein­ gangsregister übertragen), aber nicht weiterverarbeitet.
Durch diese verschiedenen Zustände und der Möglichkeit auf die verschiedene Register einer Zelle schreibend und lesend zuzugreifen, kann jede Zelle eine aktive Verwaltungs­ rolle einnehmen. Im Gegensatz dazu besitzen alle existierenden Bausteine dieser Art eine zentrale Verwaltungsinstanz, welche immer den gesamten Zustand des Bausteins kennen und handhaben muß.
Um eine weitere Flexibilität zu erreichen gibt es eine weitere Klasse an Befehlen, die nach der ersten Ausführung ihre. Art wechseln. Bezogen auf des Beispiel des ADD- Befehls sieht ein Befehl dann so aus:
  • - ADD-C-A. Das Ergebnis der ADD Funktion wird bei der ersten Ausführung des Befehls in das Befehls-Register der Zielzelle geschrieben. Bei jeder weiteren Ausführung wird das Ergebnis in das Operand-Register-A geschrieben.
Diese Möglichkeit kann beliebig erweitert werden, so daß auch Befehle der Art ADD- C-V-A-C-. . .-B denkbar sind. Jeder Befehl kann alle permutierten Kombinationen der verschiedenen Adressierungs- und Trigger-Arten annehmen.
2.3 Erweiterung der Hardware gegenüber PACT02 2.3.1 Zusätzliche Register
Zu den in PACT02 beschriebenen Register kommt ein Statusregister und ein Konfi­ gurationsregister hinzu. Beide Register werden vom PLU-Bus angesteuert und haben Verbindung zur Zustandsmaschine der SM-UNIT (PACT02 Fig. 2 0213).
2.3.2 Veränderung des PLU-Busses
In PACT02 werden die Konfigurierbaren Register M-/F-PLUREG ausschließlich über den PLU-Bus (PACT02 Fig. 2 0210) verwaltet. Um die erfindungsgemäße Funktion zu gewährleisten muß nunmehr eine zusätzliche Zugriffsmöglichkeit durch den normalen Systembus (PACT02 Fig. 2 0201) möglich sein. Dasselbe gilt für die neuen Status- und Konfigurationsregister.
Dabei ist nur der Teil des Systembusses für die Register relevant, der über die BM-UNIT (PACT02 Fig. 2 0210) mit der PAE vernetzt ist. Daher wird der Bus von der BM-UNIT an die Register weitergeleitet, wo vorgeschaltete Multiplexer oder vorgeschaltete Tore die Umschaltung zwischen dem PLU-Bus und dem für die PAE relevanten Systembus übernehmen.
Dabei sind die Multiplexer oder Tore so geschaltet, daß sie immer den für die PAE re­ levanten Systembus durchschalten, außer nach einem Rücksetzen des Bausteines (RE­ SET) oder wenn das ReConfig-Signal (PACT02 Fig. 3 0306) aktiv ist.
2.3.3 Erweiterungen des Systembusses
Der Systembus (PACT02 Fig. 2 0201) wird dahingehend erweitert, daß zusammen mit den Daten die Informationen über die Zielregister übertragen werden. Das bedeutet, eine Adresse wird mitgeschickt, die beim Datenempfänger das gewünschte Register selektiert.
3 Kurzbeschreibung der Diagramme
Fig. 1 Diese Figur zeigt, wie durch den Einsatz von Triggern ein Schleifenkon­ strukt implementiert werden kann.
Fig. 2 Diese Figur zeigt, wie durch den Einsatz mehrerer Trigger ein Vergleichs­ konstrukt implementiert werden kann.
Fig. 3 Diese Figur zeigt, wie durch den Einsatz mehrerer Trigger und deren Ver­ schachtelung ein Vergleichskonstrukt mit mehreren Ausgängen implemen­ tiert werden kann.
Fig. 4 zeigt die notwendigen Erweiterungen gegenüber PACT02.
4 Detailbeschreibung der Diagramme und Ausführungsbeispiele
Fig. 1 Das Makro 0103 soll in diesem Beispiel 70 mal ausgeführt werden. Eine Ausführung des Makros benötigt 26 Taktzyklen. Das bedeutet, daß nur alle 26 Taktzy­ klen der Zähler 0101 um eins verringert werden darf. Ein Problem bei frei programmierba­ ren Bausteinen ist nun, daß nicht immer garantiert werden kann, daß auch wirklich nach 26 Takten die Abarbeitung des Makros 0103 abgeschlossen ist. Eine Verzögerung kann zum Beispiel dadurch entstehen, daß ein Makro, welches die Eingangsdaten für Makro 0103 liefern soll, plötzlich 10 Taktzyklen länger benötigt. Aus diesem Grund sendet die Zelle in Makro 0103 ein Trigger Signal an den Zähler 0101, durch welche das Ergebnis der Berechnung an ein weiteres Makro gesandt wird. Gleichzeitig wird die Verarbeitung des Makros 0103 durch die gleiche Zelle gestoppt. Diese Zelle 'weis' genau, daß die Bedingung für die Beendigung einer Berechnung erreicht wurde.
Das gesendete Trigger-Signal ist in diesem Fall ein STEP-Trigger, welcher veranlaßt, daß der Zähler 0101 einmal seine konfigurierte Funktion ausführt. Der Zähler zählt seinen Zählerwert um eine herunter und vergleicht, ob er den Wert 0 erreicht hat. Ist dies nicht der Fall, wird ein GO-Trigger an das Makro 0103 abgeschickt. Dieses GO-Trigger-Signal veranlaßt das Makro 0103 seine Funktion wieder aufzunehmen.
Dieser Vorgang wiederholt sich solange, bis der Zähler 0101 den Wert 0 erreicht hat. In diesem Fall wird ein Trigger-Signal an das Makro 0102 geschickt und löst dort eine Funktion aus.
Durch dieses Zusammenspiel von Triggern kann eine sehr feingranulare Synchronisation erreicht werden.
Fig. 2 Fig. 2 entspricht der Grundidee her Fig. 1. Die Funktion in Element 0202 ist diesesmal jedoch kein Zähler sondern ein Vergleicher. Das Makro 0201 schickt nach jedem Verarbeitungsdurchlauf einen Vergleichswert mit an den Vergleicher 0202. Je nach Ausgang des Vergleichs, werden wiederum verschiedene Trigger angesteuert um zum Beispiel eine Aktion in den Makros 0203 zu veranlassen. Das in Fig. 2 implementierte Konstrukt entspricht dem einer IF-Abfrage in einer Progammiersprache.
Fig. 3 Wie in Fig. 2 werden hier mehrere Vergleicher 0301, 0302 eingesetzt, um die Konstruktion eines IF-ELSE-ELSE Konstruktes (oder einer Mehrfachauswahl) zu implementieren. Durch die Verwendung verschiedenster Arten von Triggern und Ver­ bindungen dieser Trigger zu den Makros 0303, 0304 können sehr komplexe Abläufe einfach implementiert werden.
Fig. 4 zeigt die Unterschiede zu PACT02 Fig. 2. Dabei sind die Unterschiede schat­ tiert eingetragen. Das Konfigurationsregister (0401) und das Statusregister (0402) ha­ ben über den Bus (0407) Verbindung zur SM-UNIT. Die Register 0401, 0402, F- und M-PLUREG sind über einen internen Bus 0206 mit einem Tor 0403 verbunden. Dieses verbindet den internen Bus (0406) je nach Stellung mit dem PLU-Bus 0405 um eine Konfiguration durch die PLU zu ermöglichen oder über einen Bus 0408 mit dem BM- UNIT. Diese schaltet je nach Adressierung auf dem Datenbus 0404 die Daten zu den O-REG weiter oder zu dem adressierten Register 0401, 0402, F- oder M-PLUREG.
6 Begriffsdefinition
BM-UNIT Einheit zum Aufschalten der Daten auf die Bussysteme außerhalb der PAE. Das Aufschalten geschieht über Multiplexer für die Daten­ eingänge und Tore für die Datenausgänge. oACK-Leitungen sind als Open-Kollektor-Treiber implementiert. Die BM-UNIT wird durch das M-PLUREG gesteuert.
Datenempfänger Die Einheit(en), die Ergebnisse der PAE weiterverarbeitet/arbeiten
Datensender Die Einheit(en), die Daten für die PAE als Operanden zur Verfügung stellt/stellen
Datenwort Ein Datenwort besteht aus einer beliebig langen Bit-Reihe. Diese Bit-Reihe stellt eine Verarbeitungseinheit für eine Anlage dar. In einem Datenwort können sowohl Befehle für Prozessoren o. ä. Bau­ steine sowie rein Daten kodiert werden.
DFP Datenflußprozessor nach Patent/Offenlegung DE 44 16 881
DPGA Dynamisch konfigurierbare FPGAs. Stand der Technik
EALU Erweiterte arithmetisch logische Einheit. ALU, die um Sonderfunk­ tionen, die zum Betrieb einer Datenverarbeitungseinrichtung gemäß DE 44 16 881 A1 benötigt werden oder sinnvoll sind erweitert wur­ de. Dies sind ins besondere Zähler.
Elemente Sammelbegriff für alle Arten von in sich abgeschlossenen Einhei­ ten, welche als Stück in einem elektronischen Baustein zum Einsatz kommen können. Elemente sind also:
  • - Konfigurierbare Zellen aller Art
  • - Cluster
  • - RAM-Blöcke
  • - Logik
  • - Rechenwerke
  • - Register
  • - Multiplexer
  • - I/O Pins eines Chips
Ereignis Ein Ereignis kann durch ein Hardwareelement in irgendeiner zur Anwendung passenden Art und Weise ausgewertet werden und als Reaktion auf diese Auswertung eine bedingte Aktion auslösen. Er­ eignisse sind somit zum Beispiel:
  • - Taktzyklus einer Rechenanlage.
  • - internes oder externes Interrupt-Signal.
  • - Trigger-Signal von anderen Elementen innerhalb des Baustei­ nes.
  • - Vergleich eines Datenstroms und/oder eines Befehlsstroms mit einem Wert.
  • - Input/Output Ereignisse.
  • - Ablaufen, überlaufen, neusetzen etc. eines Zählers.
  • - Auswerten eines Vergleichs.
FPGA Programmierbarer Logikbaustein. Stand der Technik.
F-PLUREG Register in dem die Funktion der PAE gesetzt wird. Ebenfalls wird der OneShot- und Sleep-Mode gesetzt. Das Register wird von der PLU beschrieben.
H-Pegel Logisch 1 Pegel, abhängig von der verwendeten Technologie
konfigurierbares Element Ein konfigurierbares Element stellt eine Einheit eines Logik-Bausteines dar, welche durch ein Konfigurationswort für eine spezielle Funktion eingestellt werden kann. Konfigurierbare Elemen­ te sind somit, alle Arten von RAM-Zellen, Multiplexer, Arithme­ tische logische Einheiten, Register und alle Arten von interner und externer Vernetzungsbeschreibung etc.
konfigurierbare Zelle Siehe Logikzellen
Konfigurieren Einstellen der Funktion und Vernetzung einer logischen Einheit, ei­ ner (FPGA)-Zelle oder einer PAE (vgl. umkonfigurieren).
Konfigurationsdaten Beliebige Menge von Konfigurationsworten.
Konfigurationsspeicher Der Konfigurationspeicher enthält ein oder mehrere Konfi­ gurationsworte.
Konfigurationswort Ein Konfigurationswort besteht aus einer beliebig langen Bit- Reihe. Diese Bit-Reihe stellt eine gültige Einstellung für das zu konfigurierende Element dar, so daß eine funktionsfähige Einheit entsteht.
Ladelogik Einheit zum Konfigurieren und Umkonfigurieren der PAE. Ausge­ staltet durch einen speziell an seine Aufgabe angepaßten Mikrokon­ troller.
Logikzellen Bei DFPs, FPGAs, DPGAs verwendete konfigurierbare Zellen, die einfache logische oder arithmetische Aufgaben gemäß ihrer Konfi­ guration erfüllen.
L-Pegel Logisch 0 Pegel, abhängig von der verwendeten Technologie
M-PLUREG Register in dem die Vernetzung der PAE gesetzt wird. Das Register wird von der PLU beschrieben.
O-REG Operandenregister zur Speicherung der Operanden der EALU. Ermöglicht die zeitliche und funktionelle Unabhängigkeit der PAE von den Datensendern. Dadurch wird der Transfer der Daten verein­ facht, da er asynchron oder paketorientiert stattfinden kann. Gleich­ zeitig wird die Möglichkeit geschaffen die Datensender unabhängig von der PAE oder die PAE unabhängig von den Datensendern um­ zukonfigurieren.
PLU Einheit zum Konfigurieren und Umkonfigurieren der PAE. Ausge­ staltet durch einen speziell an seine Aufgabe angepaßten Mikrokon­ troller.
SM-UNIT StateMachine-UNIT. Zustandsmaschine, die die EALU steuert.
Switching-Tabelle Eine Switching-Tabelle ist ein Ring-Speicher, welcher durch eine Steuerung angesprochen wird. Die Einträge einer Switching-Tabelle können beliebige Konfigurationswörter aufnehmen. Die Steuerung kann Befehle durchführen. Die Switching-Tabelle reagiert auf Trig­ gersignale und konfiguriert konfigurierbare Elemente anhand eines Eintrages in einem Ringspeicher um.
Umkonfigurieren Neues Konfigurieren von einer beliebigen Menge von PAEs während eine beliebige Restmenge von PAEs ihre eigenen Funk­ tionen fortsetzen (vgl. konfigurieren).
Verarbeitungszyklus Ein Verarbeitungszyklus beschreibt die Dauer, welche von einer Einheit benötigt wird, um von einem definierten und/oder gültigen Zustand in den nächsten definierten und/oder gültigen Zustand, zu gelangen.
Zellen Synonym für konfigurierbare Elemente
7 Konventionen 7.1 Namenskonvention
Baugruppe -UNIT
Betriebsart -MODE
Multiplexer -MUX
Negiertes Signal not-
Register für PLU sichtbar -PLUREG
Register intern -REG
Schieberegisters -sft
7.2 Funktionskonvention

Claims (7)

1. Verfahren zur Synchronisation und Umkonfiguration von konfigurierbaren Ele­ menten in Bausteinen mit zwei- oder mehrdimensionaler programmierbarer Zell­ struktur (DFP, FPGA, DPGA), dadurch gekennzeichnet, daß
  • 1. Synchronisationssignal während der Verarbeitung innerhalb des Datenstro­ mes von den verarbeitenden konfigurierbaren Elementen generiert werden und an weitere Elemente zur Synchronisation über den Datenbus gesandt werden,
  • 2. aus dem Datenstrom heraus anhand entsprechender Befehle Konfigura­ tionswörter innerhalb eines programmierbaren Elementes generiert wer­ den und über den Datenbus zusammen mit der Adresse des anzuspre­ chenden Registers an ein weiteres konfigurierbares Element übertragen werden, wobei dieses dadurch ohne den Einfluß einer externen Ladelogik (um)konfiguriert wird.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß bei der Synchronisation durch einen Trigger ein konfigurierbares Element zur Ausführung einer einzigen Operation angeregt werden kann.
3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß bei der Synchronisation durch einen Trigger ein konfigurierbares Element zur Ausführung einer Vielzahl Operation angeregt werden kann.
4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß bei der Synchronisation durch einen Trigger die Ausführung eines konfigurierba­ ren Elements angehalten werden kann.
5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß bei der Synchronisation durch einen Trigger ein konfigurierbares Element zur Umkonfiguration freigegeben werden kann.
6. Verfahren nach Anspruch 1-5, dadurch gekennzeichnet, daß das konfigurierbare Element seinen momentanen Status in einem Statusregister anzeigt.
7. Verfahren nach Anspruch 1-6, dadurch gekennzeichnet, daß die Angabe der anzusteuernden Register in Befehlen kodiert ist und über den Datenbus übertragen wird.
DE19704728A 1997-02-08 1997-02-08 Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines Withdrawn DE19704728A1 (de)

Priority Applications (21)

Application Number Priority Date Filing Date Title
DE19704728A DE19704728A1 (de) 1997-02-08 1997-02-08 Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines
US08/946,812 US6081903A (en) 1997-02-08 1997-10-08 Method of the self-synchronization of configurable elements of a programmable unit
EP05008631A EP1669885A3 (de) 1997-02-08 1998-02-07 Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines
JP53356398A JP4146519B2 (ja) 1997-02-08 1998-02-07 プログラミング可能なコンポーネントにおけるコンフィグレーション可能な各エレメントの自己同期を確立する方法
PCT/DE1998/000334 WO1998035299A2 (de) 1997-02-08 1998-02-07 Verfahren zur selbstsynchronisation von konfigurierbaren elementen eines programmierbaren bausteines
CN98803968A CN1252144A (zh) 1997-02-08 1998-02-07 一可编程组件中可构元件的自同步方法
DE19880129T DE19880129D2 (de) 1997-02-08 1998-02-07 Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines
EA199900653A EA001823B1 (ru) 1997-02-08 1998-02-07 Способ самосинхронизации конфигурируемых элементов программируемой микросхемы
DE59812895T DE59812895D1 (de) 1997-02-08 1998-02-07 Verfahren zur selbstsynchronisation von konfigurierbaren elementen eines programmierbaren bausteines
CA002279917A CA2279917A1 (en) 1997-02-08 1998-02-07 Method for self-synchronization of configurable elements of a programmable component
EP98909346A EP0961980B1 (de) 1997-02-08 1998-02-07 Verfahren zur selbstsynchronisation von konfigurierbaren elementen eines programmierbaren bausteines
AT98909346T ATE298907T1 (de) 1997-02-08 1998-02-07 Verfahren zur selbstsynchronisation von konfigurierbaren elementen eines programmierbaren bausteines
AU63918/98A AU740243B2 (en) 1997-02-08 1998-02-07 Method of self-synchronization of configurable elements of a programmable component
US09/369,653 US6542998B1 (en) 1997-02-08 1999-08-06 Method of self-synchronization of configurable elements of a programmable module
US09/537,932 US6526520B1 (en) 1997-02-08 2000-03-29 Method of self-synchronization of configurable elements of a programmable unit
US10/373,595 US6968452B2 (en) 1997-02-08 2003-02-24 Method of self-synchronization of configurable elements of a programmable unit
US10/379,403 US7036036B2 (en) 1997-02-08 2003-03-04 Method of self-synchronization of configurable elements of a programmable module
US12/109,280 USRE44383E1 (en) 1997-02-08 2008-04-24 Method of self-synchronization of configurable elements of a programmable module
US12/909,150 USRE45223E1 (en) 1997-02-08 2010-10-21 Method of self-synchronization of configurable elements of a programmable module
US12/909,203 USRE45109E1 (en) 1997-02-08 2010-10-21 Method of self-synchronization of configurable elements of a programmable module
US12/909,061 USRE44365E1 (en) 1997-02-08 2010-10-21 Method of self-synchronization of configurable elements of a programmable module

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19704728A DE19704728A1 (de) 1997-02-08 1997-02-08 Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines

Publications (1)

Publication Number Publication Date
DE19704728A1 true DE19704728A1 (de) 1998-08-13

Family

ID=7819640

Family Applications (3)

Application Number Title Priority Date Filing Date
DE19704728A Withdrawn DE19704728A1 (de) 1997-02-08 1997-02-08 Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines
DE19880129T Expired - Lifetime DE19880129D2 (de) 1997-02-08 1998-02-07 Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines
DE59812895T Expired - Lifetime DE59812895D1 (de) 1997-02-08 1998-02-07 Verfahren zur selbstsynchronisation von konfigurierbaren elementen eines programmierbaren bausteines

Family Applications After (2)

Application Number Title Priority Date Filing Date
DE19880129T Expired - Lifetime DE19880129D2 (de) 1997-02-08 1998-02-07 Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines
DE59812895T Expired - Lifetime DE59812895D1 (de) 1997-02-08 1998-02-07 Verfahren zur selbstsynchronisation von konfigurierbaren elementen eines programmierbaren bausteines

Country Status (10)

Country Link
US (3) US6081903A (de)
EP (2) EP0961980B1 (de)
JP (1) JP4146519B2 (de)
CN (1) CN1252144A (de)
AT (1) ATE298907T1 (de)
AU (1) AU740243B2 (de)
CA (1) CA2279917A1 (de)
DE (3) DE19704728A1 (de)
EA (1) EA001823B1 (de)
WO (1) WO1998035299A2 (de)

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
WO2002013000A2 (de) * 2000-06-13 2002-02-14 Pact Informationstechnologie Gmbh Pipeline ct-protokolle und -kommunikation
US6425068B1 (en) 1996-12-09 2002-07-23 Pact Gmbh Unit for processing numeric and logic operations for use in central processing units (cpus), multiprocessor systems, data-flow processors (dsps), systolic processors and field programmable gate arrays (epgas)
US6480937B1 (en) 1998-02-25 2002-11-12 Pact Informationstechnologie Gmbh Method for hierarchical caching of configuration data having dataflow processors and modules having two-or multidimensional programmable cell structure (FPGAs, DPGAs, etc.)--
US6526520B1 (en) 1997-02-08 2003-02-25 Pact Gmbh Method of self-synchronization of configurable elements of a programmable unit
WO2003025781A2 (de) 2001-09-19 2003-03-27 Pact Xpp Technologies Ag Verfahren zur konfiguration der verbindung zwischen datenverarbeitungszellen
US6542998B1 (en) 1997-02-08 2003-04-01 Pact Gmbh Method of self-synchronization of configurable elements of a programmable module
US7650448B2 (en) 1996-12-20 2010-01-19 Pact Xpp Technologies Ag I/O and memory bus system for DFPS and units with two- or multi-dimensional programmable cell architectures
US7657877B2 (en) 2001-06-20 2010-02-02 Pact Xpp Technologies Ag Method for processing data
US7657861B2 (en) 2002-08-07 2010-02-02 Pact Xpp Technologies Ag Method and device for processing data
US7782087B2 (en) 2002-09-06 2010-08-24 Martin Vorbach Reconfigurable sequencer structure
US7822881B2 (en) 1996-12-27 2010-10-26 Martin Vorbach Process for automatic dynamic reloading of data flow processors (DFPs) and units with two- or three-dimensional programmable cell architectures (FPGAs, DPGAs, and the like)
US7840842B2 (en) 2001-09-03 2010-11-23 Martin Vorbach Method for debugging reconfigurable architectures
US7844796B2 (en) 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
US7996827B2 (en) 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
US8099618B2 (en) 2001-03-05 2012-01-17 Martin Vorbach Methods and devices for treating and processing data
US8127061B2 (en) 2002-02-18 2012-02-28 Martin Vorbach Bus systems and reconfiguration methods
CZ303068B6 (cs) * 2000-11-29 2012-03-21 Heidelberger Druckmaschinen Ag Zarízení pro synchronizaci procesu, probíhajících na více jednotkách a zpusob této synchronizace
US8156284B2 (en) 2002-08-07 2012-04-10 Martin Vorbach Data processing method and device
US8209653B2 (en) 2001-09-03 2012-06-26 Martin Vorbach Router
US8230411B1 (en) 1999-06-10 2012-07-24 Martin Vorbach Method for interleaving a program over a plurality of cells
US8250503B2 (en) 2006-01-18 2012-08-21 Martin Vorbach Hardware definition method including determining whether to implement a function as hardware or software
US8281108B2 (en) 2002-01-19 2012-10-02 Martin Vorbach Reconfigurable general purpose processor having time restricted configurations
US8686549B2 (en) 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
US8686475B2 (en) 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
US8812820B2 (en) 2003-08-28 2014-08-19 Pact Xpp Technologies Ag Data processing device and method
US8819505B2 (en) 1997-12-22 2014-08-26 Pact Xpp Technologies Ag Data processor having disabled cores
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19654846A1 (de) * 1996-12-27 1998-07-09 Pact Inf Tech Gmbh Verfahren zum selbständigen dynamischen Umladen von Datenflußprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o. dgl.)
DE19704742A1 (de) * 1997-02-11 1998-09-24 Pact Inf Tech Gmbh Internes Bussystem für DFPs, sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen, zur Bewältigung großer Datenmengen mit hohem Vernetzungsaufwand
US6243836B1 (en) * 1998-08-17 2001-06-05 Lucent Technologies, Inc. Apparatus and method for circular buffering on an on-chip discontinuity trace
US20040015899A1 (en) * 2000-10-06 2004-01-22 Frank May Method for processing data
US6990555B2 (en) * 2001-01-09 2006-01-24 Pact Xpp Technologies Ag Method of hierarchical caching of configuration data having dataflow processors and modules having two- or multidimensional programmable cell structure (FPGAs, DPGAs, etc.)
AU2002257615A1 (en) * 2001-03-05 2002-09-19 Pact Informationstechnologie Gmbh Methods and devices for treating and/or processing data
US7210129B2 (en) * 2001-08-16 2007-04-24 Pact Xpp Technologies Ag Method for translating programs for reconfigurable architectures
US20090210653A1 (en) * 2001-03-05 2009-08-20 Pact Xpp Technologies Ag Method and device for treating and processing data
US20090300262A1 (en) * 2001-03-05 2009-12-03 Martin Vorbach Methods and devices for treating and/or processing data
US7624204B2 (en) * 2001-03-22 2009-11-24 Nvidia Corporation Input/output controller node in an adaptable computing environment
US10031733B2 (en) * 2001-06-20 2018-07-24 Scientia Sol Mentis Ag Method for processing data
US7594229B2 (en) * 2001-10-09 2009-09-22 Nvidia Corp. Predictive resource allocation in computing systems
US7644279B2 (en) * 2001-12-05 2010-01-05 Nvidia Corporation Consumer product distribution in the embedded system market
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
AU2003214046A1 (en) * 2002-01-18 2003-09-09 Pact Xpp Technologies Ag Method and device for partitioning large computer programs
WO2003081454A2 (de) * 2002-03-21 2003-10-02 Pact Xpp Technologies Ag Verfahren und vorrichtung zur datenverarbeitung
US7093255B1 (en) * 2002-05-31 2006-08-15 Quicksilver Technology, Inc. Method for estimating cost when placing operations within a modulo scheduler when scheduling for processors with a large number of function units or reconfigurable data paths
US7620678B1 (en) 2002-06-12 2009-11-17 Nvidia Corporation Method and system for reducing the time-to-market concerns for embedded system design
US7802108B1 (en) 2002-07-18 2010-09-21 Nvidia Corporation Secure storage of program code for an embedded system
US20110238948A1 (en) * 2002-08-07 2011-09-29 Martin Vorbach Method and device for coupling a data processing unit and a data processing array
US7502915B2 (en) * 2002-09-30 2009-03-10 Nvidia Corporation System and method using embedded microprocessor as a node in an adaptable computing machine
US8949576B2 (en) * 2002-11-01 2015-02-03 Nvidia Corporation Arithmetic node including general digital signal processing functions for an adaptive computing machine
US7617100B1 (en) 2003-01-10 2009-11-10 Nvidia Corporation Method and system for providing an excitation-pattern based audio coding scheme
DE112004000026D2 (de) * 2003-04-04 2006-06-14 Pact Xpp Technologies Ag Verfahren und Vorrichtung für die Datenverarbeitung
WO2006082091A2 (en) * 2005-02-07 2006-08-10 Pact Xpp Technologies Ag Low latency massive parallel data processing device
US8296764B2 (en) * 2003-08-14 2012-10-23 Nvidia Corporation Internal synchronization control for adaptive integrated circuitry
US8130825B2 (en) * 2004-05-10 2012-03-06 Nvidia Corporation Processor for video data encoding/decoding
US8018463B2 (en) * 2004-05-10 2011-09-13 Nvidia Corporation Processor for video data
JP2006011705A (ja) * 2004-06-24 2006-01-12 Fujitsu Ltd プロセッサおよび半導体装置
TWI256013B (en) * 2004-10-12 2006-06-01 Uli Electronics Inc Sound-effect processing circuit
US7281942B2 (en) * 2005-11-18 2007-10-16 Ideal Industries, Inc. Releasable wire connector
US7999820B1 (en) 2006-10-23 2011-08-16 Nvidia Corporation Methods and systems for reusing memory addresses in a graphics system
US20080111923A1 (en) * 2006-11-09 2008-05-15 Scheuermann W James Processor for video data
EP1930823A3 (de) * 2006-12-04 2011-06-08 Fujitsu Limited Vorrichtung zur Unterstutzung von Schaltungsentwurf, Verfahren zur Unterstutzung von Schaltungsentwurf, Computerprogramm und Herstellungsverfahren für einen gedruckten Schaltkreis
US8169789B1 (en) 2007-04-10 2012-05-01 Nvidia Corporation Graphics processing unit stiffening frame
US7987065B1 (en) 2007-04-17 2011-07-26 Nvidia Corporation Automatic quality testing of multimedia rendering by software drivers
US8572598B1 (en) 2007-04-18 2013-10-29 Nvidia Corporation Method and system for upgrading software in a computing device
US8726283B1 (en) 2007-06-04 2014-05-13 Nvidia Corporation Deadlock avoidance skid buffer
US7948500B2 (en) * 2007-06-07 2011-05-24 Nvidia Corporation Extrapolation of nonresident mipmap data using resident mipmap data
US7944453B1 (en) 2007-06-07 2011-05-17 Nvidia Corporation Extrapolation texture filtering for nonresident mipmaps
US7932227B1 (en) 2007-09-17 2011-04-26 University Of Virginia Patent Foundation Lacritin-syndecan fusion proteins
US8438522B1 (en) 2008-09-24 2013-05-07 Iowa State University Research Foundation, Inc. Logic element architecture for generic logic chains in programmable devices
US8661394B1 (en) 2008-09-24 2014-02-25 Iowa State University Research Foundation, Inc. Depth-optimal mapping of logic chains in reconfigurable fabrics
CN101616175B (zh) * 2009-07-24 2013-01-09 中国科学院上海技术物理研究所 用于分布式多dsp系统的网络拓扑结构获取方法和装置
EP3117210A4 (de) 2014-03-12 2017-11-01 University Of Virginia Patent Foundation Zusammensetzungen und verfahren zur behandlung von auegeninfektionen und -erkrankungen
CN104967783B (zh) * 2015-07-01 2018-01-09 西北工业大学 面向微纳星的多路微图像采集系统

Family Cites Families (214)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US34363A (en) * 1862-02-11 Improvement in machinery for cleaning cotton
US2067477A (en) 1931-03-20 1937-01-12 Allis Chalmers Mfg Co Gearing
GB971191A (en) 1962-05-28 1964-09-30 Wolf Electric Tools Ltd Improvements relating to electrically driven equipment
US3681572A (en) 1970-08-11 1972-08-01 Siegfried Johannes Gerathewohl Air traveler's rest period calculator
DE2057312A1 (de) 1970-11-21 1972-05-25 Bhs Bayerische Berg Planetenradgetriebe mit Lastdruckausgleich
US3855577A (en) 1973-06-11 1974-12-17 Texas Instruments Inc Power saving circuit for calculator system
US4498134A (en) 1982-01-26 1985-02-05 Hughes Aircraft Company Segregator functional plane for use in a modular array processor
US4489857A (en) 1982-03-22 1984-12-25 Bobrick Washroom Equipment, Inc. Liquid dispenser
JPS5936857A (ja) 1982-08-25 1984-02-29 Nec Corp プロセツサユニツト
US4663706A (en) 1982-10-28 1987-05-05 Tandem Computers Incorporated Multiprocessor multisystem communications network
US4739474A (en) * 1983-03-10 1988-04-19 Martin Marietta Corporation Geometric-arithmetic parallel processor
US4566102A (en) 1983-04-18 1986-01-21 International Business Machines Corporation Parallel-shift error reconfiguration
US5123109A (en) * 1983-05-31 1992-06-16 Thinking Machines Corporation Parallel processor including a processor array with plural data transfer arrangements including (1) a global router and (2) a proximate-neighbor transfer system
US4870302A (en) * 1984-03-12 1989-09-26 Xilinx, Inc. Configurable electrical circuit having configurable logic elements and configurable interconnects
USRE34363E (en) 1984-03-12 1993-08-31 Xilinx, Inc. Configurable electrical circuit having configurable logic elements and configurable interconnects
US4761755A (en) * 1984-07-11 1988-08-02 Prime Computer, Inc. Data processing system and method having an improved arithmetic unit
US4682284A (en) 1984-12-06 1987-07-21 American Telephone & Telegraph Co., At&T Bell Lab. Queue administration method and apparatus
EP0190813B1 (de) 1985-01-29 1991-09-18 The Secretary of State for Defence in Her Britannic Majesty's Government of the United Kingdom of Great Britain and Verarbeitungszelle für fehlertolerante Matrixanordnungen
US5023775A (en) * 1985-02-14 1991-06-11 Intel Corporation Software programmable logic array utilizing "and" and "or" gates
US5247689A (en) * 1985-02-25 1993-09-21 Ewert Alfred P Parallel digital processor including lateral transfer buses with interrupt switches to form bus interconnection segments
US4706216A (en) * 1985-02-27 1987-11-10 Xilinx, Inc. Configurable logic element
US5225719A (en) * 1985-03-29 1993-07-06 Advanced Micro Devices, Inc. Family of multiple segmented programmable logic blocks interconnected by a high speed centralized switch matrix
US5015884A (en) * 1985-03-29 1991-05-14 Advanced Micro Devices, Inc. Multiple array high performance programmable logic device family
US4967340A (en) * 1985-06-12 1990-10-30 E-Systems, Inc. Adaptive processing system having an array of individually configurable processing components
US4720780A (en) 1985-09-17 1988-01-19 The Johns Hopkins University Memory-linked wavefront array processor
EP0221360B1 (de) * 1985-11-04 1992-12-30 International Business Machines Corporation Digitale Nachrichtenübertragungsnetzwerke und Aufbau von Übertragungswegen in diesen Netzwerken
US4852048A (en) 1985-12-12 1989-07-25 Itt Corporation Single instruction multiple data (SIMD) cellular array processing apparatus employing a common bus where a first number of bits manifest a first bus portion and a second number of bits manifest a second bus portion
US5021947A (en) * 1986-03-31 1991-06-04 Hughes Aircraft Company Data-flow multiprocessor architecture with three dimensional multistage interconnection network for efficient signal and data processing
GB8612396D0 (en) 1986-05-21 1986-06-25 Hewlett Packard Ltd Chain-configured interface bus system
US4860201A (en) 1986-09-02 1989-08-22 The Trustees Of Columbia University In The City Of New York Binary tree parallel processor
US4910665A (en) 1986-09-02 1990-03-20 General Electric Company Distributed processing system including reconfigurable elements
US5367208A (en) * 1986-09-19 1994-11-22 Actel Corporation Reconfigurable programmable interconnect architecture
FR2606184B1 (fr) 1986-10-31 1991-11-29 Thomson Csf Dispositif de calcul reconfigurable
US4811214A (en) * 1986-11-14 1989-03-07 Princeton University Multinode reconfigurable pipeline computer
US5226122A (en) * 1987-08-21 1993-07-06 Compaq Computer Corp. Programmable logic system for filtering commands to a microprocessor
US5115510A (en) 1987-10-20 1992-05-19 Sharp Kabushiki Kaisha Multistage data flow processor with instruction packet, fetch, storage transmission and address generation controlled by destination information
US5113498A (en) 1987-11-10 1992-05-12 Echelon Corporation Input/output section for an intelligent cell which provides sensing, bidirectional communications and control
US4918690A (en) 1987-11-10 1990-04-17 Echelon Systems Corp. Network and intelligent cell for providing sensing, bidirectional communications and control
US5303172A (en) * 1988-02-16 1994-04-12 Array Microsystems Pipelined combination and vector signal processor
JPH06101043B2 (ja) 1988-06-30 1994-12-12 三菱電機株式会社 マイクロコンピュータ
US5204935A (en) * 1988-08-19 1993-04-20 Fuji Xerox Co., Ltd. Programmable fuzzy logic circuits
US4901268A (en) * 1988-08-19 1990-02-13 General Electric Company Multiple function data processor
US5353432A (en) 1988-09-09 1994-10-04 Compaq Computer Corporation Interactive method for configuration of computer system and circuit boards with user specification of system resources and computer resolution of resource conflicts
EP0363631B1 (de) 1988-09-22 1993-12-15 Siemens Aktiengesellschaft Schaltungsanordnung für Fernmeldevermittlungsanlagen, insbesondere PCM-Zeitmultiplex-Fernsprechvermittlungsanlagen mit Zentralkoppelfeld und angeschlossenen Teilkoppelfeldern
WO1990004235A1 (en) * 1988-10-07 1990-04-19 Martin Marietta Corporation Parallel data processor
US5014193A (en) * 1988-10-14 1991-05-07 Compaq Computer Corporation Dynamically configurable portable computer system
US5136717A (en) * 1988-11-23 1992-08-04 Flavors Technology Inc. Realtime systolic, multiple-instruction, single-data parallel computer system
US5081375A (en) * 1989-01-19 1992-01-14 National Semiconductor Corp. Method for operating a multiple page programmable logic device
GB8906145D0 (en) * 1989-03-17 1989-05-04 Algotronix Ltd Configurable cellular array
US5203005A (en) * 1989-05-02 1993-04-13 Horst Robert W Cell structure for linear array wafer scale integration architecture with capability to open boundary i/o bus without neighbor acknowledgement
US5109503A (en) * 1989-05-22 1992-04-28 Ge Fanuc Automation North America, Inc. Apparatus with reconfigurable counter includes memory for storing plurality of counter configuration files which respectively define plurality of predetermined counters
JP2584673B2 (ja) 1989-06-09 1997-02-26 株式会社日立製作所 テストデータ変更回路を有する論理回路テスト装置
CA2021192A1 (en) 1989-07-28 1991-01-29 Malcolm A. Mumme Simplified synchronous mesh processor
US5233539A (en) 1989-08-15 1993-08-03 Advanced Micro Devices, Inc. Programmable gate array with improved interconnect structure, input/output structure and configurable logic block
US5212652A (en) * 1989-08-15 1993-05-18 Advanced Micro Devices, Inc. Programmable gate array with improved interconnect structure
US5489857A (en) * 1992-08-03 1996-02-06 Advanced Micro Devices, Inc. Flexible synchronous/asynchronous cell structure for a high density programmable logic device
US5128559A (en) * 1989-09-29 1992-07-07 Sgs-Thomson Microelectronics, Inc. Logic block for programmable logic devices
JP2968289B2 (ja) * 1989-11-08 1999-10-25 株式会社リコー 中央演算処理装置
GB8925721D0 (en) * 1989-11-14 1990-01-04 Amt Holdings Processor array system
US5522083A (en) * 1989-11-17 1996-05-28 Texas Instruments Incorporated Reconfigurable multi-processor operating in SIMD mode with one processor fetching instructions for use by remaining processors
DE58908974D1 (de) 1989-11-21 1995-03-16 Itt Ind Gmbh Deutsche Datengesteuerter Arrayprozessor.
US5125801A (en) * 1990-02-02 1992-06-30 Isco, Inc. Pumping system
US5142469A (en) * 1990-03-29 1992-08-25 Ge Fanuc Automation North America, Inc. Method for converting a programmable logic controller hardware configuration and corresponding control program for use on a first programmable logic controller to use on a second programmable logic controller
US5198705A (en) * 1990-05-11 1993-03-30 Actel Corporation Logic module with configurable combinational and sequential blocks
US5483620A (en) * 1990-05-22 1996-01-09 International Business Machines Corp. Learning machine synapse processor system apparatus
US5193202A (en) 1990-05-29 1993-03-09 Wavetracer, Inc. Processor array with relocated operand physical address generator capable of data transfer to distant physical processor for each virtual processor while simulating dimensionally larger array processor
US5111079A (en) * 1990-06-29 1992-05-05 Sgs-Thomson Microelectronics, Inc. Power reduction circuit for programmable logic device
SE9002558D0 (sv) * 1990-08-02 1990-08-02 Carlstedt Elektronik Ab Processor
US5274593A (en) 1990-09-28 1993-12-28 Intergraph Corporation High speed redundant rows and columns for semiconductor memories
US5144166A (en) 1990-11-02 1992-09-01 Concurrent Logic, Inc. Programmable logic cell and array
US5765011A (en) 1990-11-13 1998-06-09 International Business Machines Corporation Parallel processing system having a synchronous SIMD processing with processing elements emulating SIMD operation using individual instruction streams
US5734921A (en) 1990-11-13 1998-03-31 International Business Machines Corporation Advanced parallel array processor computer package
US5588152A (en) * 1990-11-13 1996-12-24 International Business Machines Corporation Advanced parallel processor including advanced support hardware
US5794059A (en) 1990-11-13 1998-08-11 International Business Machines Corporation N-dimensional modified hypercube
US5590345A (en) * 1990-11-13 1996-12-31 International Business Machines Corporation Advanced parallel array processor(APAP)
US5713037A (en) 1990-11-13 1998-01-27 International Business Machines Corporation Slide bus communication functions for SIMD/MIMD array processor
US5301284A (en) 1991-01-16 1994-04-05 Walker-Estes Corporation Mixed-resolution, N-dimensional object space method and apparatus
US5301344A (en) * 1991-01-29 1994-04-05 Analogic Corporation Multibus sequential processor to perform in parallel a plurality of reconfigurable logic operations on a plurality of data sets
EP0499695B1 (de) * 1991-02-22 1996-05-01 Siemens Aktiengesellschaft Speicherprogrammierbare Steuerung
JPH04290155A (ja) * 1991-03-19 1992-10-14 Fujitsu Ltd 並列データ処理方式
JPH04293151A (ja) * 1991-03-20 1992-10-16 Fujitsu Ltd 並列データ処理方式
US5617547A (en) 1991-03-29 1997-04-01 International Business Machines Corporation Switch network extension of bus architecture
WO1992018935A1 (en) * 1991-04-09 1992-10-29 Fujitsu Limited Data processor and data processing method
US5551033A (en) * 1991-05-17 1996-08-27 Zenith Data Systems Corporation Apparatus for maintaining one interrupt mask register in conformity with another in a manner invisible to an executing program
JPH06507990A (ja) * 1991-05-24 1994-09-08 ブリティッシュ・テクノロジー・グループ・ユーエスエイ・インコーポレーテッド コンピュータのための最適化コンパイラ
US5287344A (en) * 1991-06-05 1994-02-15 At&T Bell Laboratories Transferring lines in a digital loop carrier transmission system
US5659797A (en) 1991-06-24 1997-08-19 U.S. Philips Corporation Sparc RISC based computer system including a single chip processor with memory management and DMA units coupled to a DRAM interface
US5347639A (en) 1991-07-15 1994-09-13 International Business Machines Corporation Self-parallelizing computer system and method
US5317209A (en) * 1991-08-29 1994-05-31 National Semiconductor Corporation Dynamic three-state bussing capability in a configurable logic array
US5260610A (en) * 1991-09-03 1993-11-09 Altera Corporation Programmable logic element interconnections for programmable logic array integrated circuits
FR2681791B1 (fr) 1991-09-27 1994-05-06 Salomon Sa Dispositif d'amortissement des vibrations pour club de golf.
US5223539A (en) * 1991-11-22 1993-06-29 G. D. Searle & Co. N,n-di-alkyl(phenoxy)benzamide derivatives
CA2073516A1 (en) 1991-11-27 1993-05-28 Peter Michael Kogge Dynamic multi-mode parallel processor array architecture computer system
WO1993011503A1 (en) 1991-12-06 1993-06-10 Norman Richard S Massively-parallel direct output processor array
US5208491A (en) * 1992-01-07 1993-05-04 Washington Research Foundation Field programmable gate array
FR2686175B1 (fr) 1992-01-14 1996-12-20 Andre Thepaut Systeme de traitement de donnees multiprocesseur.
JP2791243B2 (ja) * 1992-03-13 1998-08-27 株式会社東芝 階層間同期化システムおよびこれを用いた大規模集積回路
US5452401A (en) 1992-03-31 1995-09-19 Seiko Epson Corporation Selective power-down for high performance CPU/system
US5611049A (en) * 1992-06-03 1997-03-11 Pitts; William M. System for accessing distributed data cache channel at each network node to pass requests and data
WO1993024895A2 (en) * 1992-06-04 1993-12-09 Xilinx, Inc. Timing driven method for laying out a user's circuit onto a programmable integrated circuit device
US5475803A (en) * 1992-07-10 1995-12-12 Lsi Logic Corporation Method for 2-D affine transformation of images
US5590348A (en) 1992-07-28 1996-12-31 International Business Machines Corporation Status predictor for combined shifter-rotate/merge unit
US5581778A (en) * 1992-08-05 1996-12-03 David Sarnoff Researach Center Advanced massively parallel computer using a field of the instruction to selectively enable the profiling counter to increase its value in response to the system clock
US5425036A (en) 1992-09-18 1995-06-13 Quickturn Design Systems, Inc. Method and apparatus for debugging reconfigurable emulation systems
JPH06180653A (ja) 1992-10-02 1994-06-28 Hudson Soft Co Ltd 割り込み処理方法および装置
US5329179A (en) * 1992-10-05 1994-07-12 Lattice Semiconductor Corporation Arrangement for parallel programming of in-system programmable IC logical devices
US5497498A (en) * 1992-11-05 1996-03-05 Giga Operations Corporation Video processing module using a second programmable logic device which reconfigures a first programmable logic device for data transformation
US5392437A (en) 1992-11-06 1995-02-21 Intel Corporation Method and apparatus for independently stopping and restarting functional units
US5361373A (en) * 1992-12-11 1994-11-01 Gilson Kent L Integrated circuit computing device comprising a dynamically configurable gate array having a microprocessor and reconfigurable instruction execution means and method therefor
US5428526A (en) 1993-02-03 1995-06-27 Flood; Mark A. Programmable controller with time periodic communication
GB9303084D0 (en) * 1993-02-16 1993-03-31 Inmos Ltd Programmable logic circuit
JPH06276086A (ja) * 1993-03-18 1994-09-30 Fuji Xerox Co Ltd フィールドプログラマブルゲートアレイ
US5548773A (en) * 1993-03-30 1996-08-20 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Digital parallel processor array for optimum path planning
US5596742A (en) 1993-04-02 1997-01-21 Massachusetts Institute Of Technology Virtual interconnections for reconfigurable logic systems
US5473266A (en) * 1993-04-19 1995-12-05 Altera Corporation Programmable logic device having fast programmable logic array blocks and a central global interconnect array
DE4416881C2 (de) * 1993-05-13 1998-03-19 Pact Inf Tech Gmbh Verfahren zum Betrieb einer Datenverarbeitungseinrichtung
US5349193A (en) 1993-05-20 1994-09-20 Princeton Gamma Tech, Inc. Highly sensitive nuclear spectrometer apparatus and method
US5444394A (en) * 1993-07-08 1995-08-22 Altera Corporation PLD with selective inputs from local and global conductors
JPH0736858A (ja) * 1993-07-21 1995-02-07 Hitachi Ltd 信号処理プロセッサ
US5457644A (en) * 1993-08-20 1995-10-10 Actel Corporation Field programmable digital signal processing array integrated circuit
US5440538A (en) 1993-09-23 1995-08-08 Massachusetts Institute Of Technology Communication system with redundant links and data bit time multiplexing
US5455525A (en) * 1993-12-06 1995-10-03 Intelligent Logic Systems, Inc. Hierarchically-structured programmable logic array and system for interconnecting logic elements in the logic array
US5535406A (en) * 1993-12-29 1996-07-09 Kolchinsky; Alexander Virtual processor module including a reconfigurable programmable matrix
AU700629B2 (en) 1994-03-22 1999-01-07 Hyperchip Inc. Efficient direct cell replacement fault tolerant architecture supporting completely integrated systems with means for direct communication with system operator
US5561738A (en) * 1994-03-25 1996-10-01 Motorola, Inc. Data processor for executing a fuzzy logic operation and method therefor
US5761484A (en) 1994-04-01 1998-06-02 Massachusetts Institute Of Technology Virtual interconnections for reconfigurable logic systems
US5430687A (en) * 1994-04-01 1995-07-04 Xilinx, Inc. Programmable logic device including a parallel input device for loading memory cells
US5896551A (en) * 1994-04-15 1999-04-20 Micron Technology, Inc. Initializing and reprogramming circuitry for state independent memory array burst operations control
US5426378A (en) * 1994-04-20 1995-06-20 Xilinx, Inc. Programmable logic device which stores more than one configuration and means for switching configurations
US5532693A (en) * 1994-06-13 1996-07-02 Advanced Hardware Architectures Adaptive data compression system with systolic string matching logic
US5513366A (en) * 1994-09-28 1996-04-30 International Business Machines Corporation Method and system for dynamically reconfiguring a register file in a vector processor
US5530946A (en) 1994-10-28 1996-06-25 Dell Usa, L.P. Processor failure detection and recovery circuit in a dual processor computer system and method of operation thereof
EP0721157A1 (de) * 1994-12-12 1996-07-10 Advanced Micro Devices, Inc. Mikroprozessor mit auswählbarer Taktfrequenz
US5493239A (en) * 1995-01-31 1996-02-20 Motorola, Inc. Circuit and method of configuring a field programmable gate array
US5532957A (en) * 1995-01-31 1996-07-02 Texas Instruments Incorporated Field reconfigurable logic/memory array
US5742180A (en) 1995-02-10 1998-04-21 Massachusetts Institute Of Technology Dynamically programmable gate array with multiple contexts
US6052773A (en) 1995-02-10 2000-04-18 Massachusetts Institute Of Technology DPGA-coupled microprocessors
US5659785A (en) * 1995-02-10 1997-08-19 International Business Machines Corporation Array processor communication architecture with broadcast processor instructions
US5537057A (en) * 1995-02-14 1996-07-16 Altera Corporation Programmable logic array device with grouped logic regions and three types of conductors
US5892961A (en) 1995-02-17 1999-04-06 Xilinx, Inc. Field programmable gate array having programming instructions in the configuration bitstream
US5570040A (en) * 1995-03-22 1996-10-29 Altera Corporation Programmable logic array integrated circuit incorporating a first-in first-out memory
US5541530A (en) * 1995-05-17 1996-07-30 Altera Corporation Programmable logic array integrated circuits with blocks of logic regions grouped into super-blocks
US5646544A (en) * 1995-06-05 1997-07-08 International Business Machines Corporation System and method for dynamically reconfiguring a programmable gate array
US5889982A (en) * 1995-07-01 1999-03-30 Intel Corporation Method and apparatus for generating event handler vectors based on both operating mode and event type
US5559450A (en) * 1995-07-27 1996-09-24 Lucent Technologies Inc. Field programmable gate array with multi-port RAM
US5649176A (en) * 1995-08-10 1997-07-15 Virtual Machine Works, Inc. Transition analysis and circuit resynthesis method and device for digital circuit modeling
US5583450A (en) * 1995-08-18 1996-12-10 Xilinx, Inc. Sequencer for a time multiplexed programmable logic device
US5778439A (en) * 1995-08-18 1998-07-07 Xilinx, Inc. Programmable logic device with hierarchical confiquration and state storage
US5652894A (en) 1995-09-29 1997-07-29 Intel Corporation Method and apparatus for providing power saving modes to a pipelined processor
US5943242A (en) * 1995-11-17 1999-08-24 Pact Gmbh Dynamically reconfigurable data processing system
US5732209A (en) * 1995-11-29 1998-03-24 Exponential Technology, Inc. Self-testing multi-processor die with internal compare points
US7266725B2 (en) * 2001-09-03 2007-09-04 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
US5854918A (en) * 1996-01-24 1998-12-29 Ricoh Company Ltd. Apparatus and method for self-timed algorithmic execution
US5936424A (en) 1996-02-02 1999-08-10 Xilinx, Inc. High speed bus with tree structure for selecting bus driver
US6020758A (en) * 1996-03-11 2000-02-01 Altera Corporation Partially reconfigurable programmable logic device
US6173434B1 (en) * 1996-04-22 2001-01-09 Brigham Young University Dynamically-configurable digital processor using method for relocating logic array modules
US5894565A (en) 1996-05-20 1999-04-13 Atmel Corporation Field programmable gate array with distributed RAM and increased cell utilization
JP2000513523A (ja) * 1996-06-21 2000-10-10 オーガニック システムズ インコーポレイテッド プロセスの即時制御を行う動的に再構成可能なハードウェアシステム
US5892370A (en) * 1996-06-21 1999-04-06 Quicklogic Corporation Clock network for field programmable gate array
US6023742A (en) * 1996-07-18 2000-02-08 University Of Washington Reconfigurable computing architecture for providing pipelined data paths
US6023564A (en) * 1996-07-19 2000-02-08 Xilinx, Inc. Data processing system using a flash reconfigurable logic device as a dynamic execution unit for a sequence of instructions
US5838165A (en) 1996-08-21 1998-11-17 Chatter; Mukesh High performance self modifying on-the-fly alterable logic FPGA, architecture and method
US5859544A (en) * 1996-09-05 1999-01-12 Altera Corporation Dynamic configurable elements for programmable logic devices
US5828858A (en) * 1996-09-16 1998-10-27 Virginia Tech Intellectual Properties, Inc. Worm-hole run-time reconfigurable processor field programmable gate array (FPGA)
US6005410A (en) 1996-12-05 1999-12-21 International Business Machines Corporation Interconnect structure between heterogeneous core regions in a programmable array
DE19651075A1 (de) * 1996-12-09 1998-06-10 Pact Inf Tech Gmbh Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen
US6338106B1 (en) * 1996-12-20 2002-01-08 Pact Gmbh I/O and memory bus system for DFPS and units with two or multi-dimensional programmable cell architectures
DE19654595A1 (de) * 1996-12-20 1998-07-02 Pact Inf Tech Gmbh I0- und Speicherbussystem für DFPs sowie Bausteinen mit zwei- oder mehrdimensionaler programmierbaren Zellstrukturen
DE19654593A1 (de) * 1996-12-20 1998-07-02 Pact Inf Tech Gmbh Umkonfigurierungs-Verfahren für programmierbare Bausteine zur Laufzeit
DE19654846A1 (de) 1996-12-27 1998-07-09 Pact Inf Tech Gmbh Verfahren zum selbständigen dynamischen Umladen von Datenflußprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o. dgl.)
DE19704044A1 (de) * 1997-02-04 1998-08-13 Pact Inf Tech Gmbh Verfahren zur automatischen Adressgenerierung von Bausteinen innerhalb Clustern aus einer Vielzahl dieser Bausteine
US5865239A (en) * 1997-02-05 1999-02-02 Micropump, Inc. Method for making herringbone gears
DE19704728A1 (de) 1997-02-08 1998-08-13 Pact Inf Tech Gmbh Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines
US6542998B1 (en) * 1997-02-08 2003-04-01 Pact Gmbh Method of self-synchronization of configurable elements of a programmable module
DE19704742A1 (de) * 1997-02-11 1998-09-24 Pact Inf Tech Gmbh Internes Bussystem für DFPs, sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen, zur Bewältigung großer Datenmengen mit hohem Vernetzungsaufwand
WO1998038958A1 (en) 1997-03-05 1998-09-11 Massachusetts Institute Of Technology A reconfigurable footprint mechanism for omnidirectional vehicles
US5884075A (en) * 1997-03-10 1999-03-16 Compaq Computer Corporation Conflict resolution using self-contained virtual devices
US6047115A (en) * 1997-05-29 2000-04-04 Xilinx, Inc. Method for configuring FPGA memory planes for virtual hardware computation
US6011407A (en) * 1997-06-13 2000-01-04 Xilinx, Inc. Field programmable gate array with dedicated computer bus interface and method for configuring both
US5966534A (en) * 1997-06-27 1999-10-12 Cooke; Laurence H. Method for compiling high level programming languages into an integrated processor with reconfigurable logic
US6038656A (en) * 1997-09-12 2000-03-14 California Institute Of Technology Pipelined completion for asynchronous communication
US6122719A (en) 1997-10-31 2000-09-19 Silicon Spice Method and apparatus for retiming in a network of multiple context processing elements
US6108760A (en) 1997-10-31 2000-08-22 Silicon Spice Method and apparatus for position independent reconfiguration in a network of multiple context processing elements
US5915123A (en) 1997-10-31 1999-06-22 Silicon Spice Method and apparatus for controlling configuration memory contexts of processing elements in a network of multiple context processing elements
US6127908A (en) 1997-11-17 2000-10-03 Massachusetts Institute Of Technology Microelectro-mechanical system actuator device and reconfigurable circuits utilizing same
EP0926594B1 (de) * 1997-12-17 2007-05-23 Hewlett-Packard Company, A Delaware Corporation Erst- und Zweitprozessoren verwendendes Verfahren
DE19861088A1 (de) * 1997-12-22 2000-02-10 Pact Inf Tech Gmbh Verfahren zur Reparatur von integrierten Schaltkreisen
US6172520B1 (en) * 1997-12-30 2001-01-09 Xilinx, Inc. FPGA system with user-programmable configuration ports and method for reconfiguring the FPGA
US6049222A (en) * 1997-12-30 2000-04-11 Xilinx, Inc Configuring an FPGA using embedded memory
US6034538A (en) 1998-01-21 2000-03-07 Lucent Technologies Inc. Virtual logic system for reconfigurable hardware
AU2562899A (en) 1998-01-26 1999-08-09 Chameleon Systems, Inc. Reconfigurable logic for table lookup
US5965518A (en) 1998-02-23 1999-10-12 Nakatsu; Tetsuo Fragrance compositions having antimicrobial activity
DE19807872A1 (de) * 1998-02-25 1999-08-26 Pact Inf Tech Gmbh Verfahren zur Verwaltung von Konfigurationsdaten in Datenflußprozessoren sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstruktur (FPGAs, DPGAs, o. dgl.
US6282627B1 (en) 1998-06-29 2001-08-28 Chameleon Systems, Inc. Integrated processor and programmable data path chip for reconfigurable computing
US6202182B1 (en) 1998-06-30 2001-03-13 Lucent Technologies Inc. Method and apparatus for testing field programmable gate arrays
US6345346B1 (en) * 1999-02-26 2002-02-05 Voom Technologies Substantially instantaneous storage restoration for non-computer forensics applications
US6243808B1 (en) 1999-03-08 2001-06-05 Chameleon Systems, Inc. Digital data bit order conversion using universal switch matrix comprising rows of bit swapping selector groups
US6347346B1 (en) 1999-06-30 2002-02-12 Chameleon Systems, Inc. Local memory unit system with global access for use on reconfigurable chips
GB2352548B (en) * 1999-07-26 2001-06-06 Sun Microsystems Inc Method and apparatus for executing standard functions in a computer system
US6370596B1 (en) 1999-08-03 2002-04-09 Chameleon Systems, Inc. Logic flag registers for monitoring processing system events
US6341318B1 (en) 1999-08-10 2002-01-22 Chameleon Systems, Inc. DMA data streaming
US6288566B1 (en) 1999-09-23 2001-09-11 Chameleon Systems, Inc. Configuration state memory for functional blocks on a reconfigurable chip
US6311200B1 (en) 1999-09-23 2001-10-30 Chameleon Systems, Inc. Reconfigurable program sum of products generator
US6349346B1 (en) 1999-09-23 2002-02-19 Chameleon Systems, Inc. Control fabric unit including associated configuration memory and PSOP state machine adapted to provide configuration address to reconfigurable functional unit
DE19946752A1 (de) * 1999-09-29 2001-04-12 Infineon Technologies Ag Rekonfigurierbares Gate-Array
US6519674B1 (en) * 2000-02-18 2003-02-11 Chameleon Systems, Inc. Configuration bits layout
US6539477B1 (en) * 2000-03-03 2003-03-25 Chameleon Systems, Inc. System and method for control synthesis using a reachable states look-up table
DE50115584D1 (de) * 2000-06-13 2010-09-16 Krass Maren Pipeline ct-protokolle und -kommunikation
US6538468B1 (en) * 2000-07-31 2003-03-25 Cypress Semiconductor Corporation Method and apparatus for multiple boot-up functionalities for a programmable logic device (PLD)
US20040015899A1 (en) * 2000-10-06 2004-01-22 Frank May Method for processing data
US6392912B1 (en) 2001-01-10 2002-05-21 Chameleon Systems, Inc. Loading data plane on reconfigurable chip
US7210129B2 (en) * 2001-08-16 2007-04-24 Pact Xpp Technologies Ag Method for translating programs for reconfigurable architectures
US20030055861A1 (en) * 2001-09-18 2003-03-20 Lai Gary N. Multipler unit in reconfigurable chip
US20030052711A1 (en) * 2001-09-19 2003-03-20 Taylor Bradley L. Despreader/correlator unit for use in reconfigurable chip

Cited By (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6728871B1 (en) 1996-12-09 2004-04-27 Pact Xpp Technologies Ag Runtime configurable arithmetic and logic cell
US8156312B2 (en) 1996-12-09 2012-04-10 Martin Vorbach Processor chip for reconfigurable data processing, for processing numeric and logic operations and including function and interconnection control units
US6425068B1 (en) 1996-12-09 2002-07-23 Pact Gmbh Unit for processing numeric and logic operations for use in central processing units (cpus), multiprocessor systems, data-flow processors (dsps), systolic processors and field programmable gate arrays (epgas)
US7822968B2 (en) 1996-12-09 2010-10-26 Martin Vorbach Circuit having a multidimensional structure of configurable cells that include multi-bit-wide inputs and outputs
US6513077B2 (en) 1996-12-20 2003-01-28 Pact Gmbh I/O and memory bus system for DFPs and units with two- or multi-dimensional programmable cell architectures
US6721830B2 (en) 1996-12-20 2004-04-13 Pact Xpp Technologies Ag I/O and memory bus system for DFPs and units with two- or multi-dimensional programmable cell architectures
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
US7650448B2 (en) 1996-12-20 2010-01-19 Pact Xpp Technologies Ag I/O and memory bus system for DFPS and units with two- or multi-dimensional programmable cell architectures
US8195856B2 (en) 1996-12-20 2012-06-05 Martin Vorbach I/O and memory bus system for DFPS and units with two- or multi-dimensional programmable cell architectures
US7899962B2 (en) 1996-12-20 2011-03-01 Martin Vorbach I/O and memory bus system for DFPs and units with two- or multi-dimensional programmable cell architectures
US7822881B2 (en) 1996-12-27 2010-10-26 Martin Vorbach Process for automatic dynamic reloading of data flow processors (DFPs) and units with two- or three-dimensional programmable cell architectures (FPGAs, DPGAs, and the like)
USRE44383E1 (en) 1997-02-08 2013-07-16 Martin Vorbach Method of self-synchronization of configurable elements of a programmable module
US6526520B1 (en) 1997-02-08 2003-02-25 Pact Gmbh Method of self-synchronization of configurable elements of a programmable unit
US6542998B1 (en) 1997-02-08 2003-04-01 Pact Gmbh Method of self-synchronization of configurable elements of a programmable module
USRE45223E1 (en) 1997-02-08 2014-10-28 Pact Xpp Technologies Ag Method of self-synchronization of configurable elements of a programmable module
USRE45109E1 (en) 1997-02-08 2014-09-02 Pact Xpp Technologies Ag Method of self-synchronization of configurable elements of a programmable module
USRE44365E1 (en) 1997-02-08 2013-07-09 Martin Vorbach Method of self-synchronization of configurable elements of a programmable module
US8819505B2 (en) 1997-12-22 2014-08-26 Pact Xpp Technologies Ag Data processor having disabled cores
US6571381B1 (en) 1998-02-25 2003-05-27 Pact Xpp Technologies Ag Method for deadlock-free configuration of dataflow processors and modules with a two- or multidimensional programmable cell structure (FPGAs, DPGAs, etc.)
US6480937B1 (en) 1998-02-25 2002-11-12 Pact Informationstechnologie Gmbh Method for hierarchical caching of configuration data having dataflow processors and modules having two-or multidimensional programmable cell structure (FPGAs, DPGAs, etc.)--
US6687788B2 (en) 1998-02-25 2004-02-03 Pact Xpp Technologies Ag Method of hierarchical caching of configuration data having dataflow processors and modules having two-or multidimensional programmable cell structure (FPGAs, DPGAs , etc.)
US8468329B2 (en) 1999-02-25 2013-06-18 Martin Vorbach Pipeline configuration protocol and configuration unit communication
US8726250B2 (en) 1999-06-10 2014-05-13 Pact Xpp Technologies Ag Configurable logic integrated circuit having a multidimensional structure of configurable elements
US8230411B1 (en) 1999-06-10 2012-07-24 Martin Vorbach Method for interleaving a program over a plurality of cells
US8312200B2 (en) 1999-06-10 2012-11-13 Martin Vorbach Processor chip including a plurality of cache elements connected to a plurality of processor cores
WO2002013000A3 (de) * 2000-06-13 2003-06-26 Pact Inf Tech Gmbh Pipeline ct-protokolle und -kommunikation
WO2002013000A2 (de) * 2000-06-13 2002-02-14 Pact Informationstechnologie Gmbh Pipeline ct-protokolle und -kommunikation
US8301872B2 (en) 2000-06-13 2012-10-30 Martin Vorbach Pipeline configuration protocol and configuration unit communication
US9047440B2 (en) 2000-10-06 2015-06-02 Pact Xpp Technologies Ag Logical cell array and bus system
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
US8471593B2 (en) 2000-10-06 2013-06-25 Martin Vorbach Logic cell array and bus system
CZ303068B6 (cs) * 2000-11-29 2012-03-21 Heidelberger Druckmaschinen Ag Zarízení pro synchronizaci procesu, probíhajících na více jednotkách a zpusob této synchronizace
US8145881B2 (en) 2001-03-05 2012-03-27 Martin Vorbach Data processing device and method
US8312301B2 (en) 2001-03-05 2012-11-13 Martin Vorbach Methods and devices for treating and processing data
US9075605B2 (en) 2001-03-05 2015-07-07 Pact Xpp Technologies Ag Methods and devices for treating and processing data
US7844796B2 (en) 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
US8099618B2 (en) 2001-03-05 2012-01-17 Martin Vorbach Methods and devices for treating and processing data
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements
US7657877B2 (en) 2001-06-20 2010-02-02 Pact Xpp Technologies Ag Method for processing data
US7996827B2 (en) 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
US8869121B2 (en) 2001-08-16 2014-10-21 Pact Xpp Technologies Ag Method for the translation of programs for reconfigurable architectures
US8069373B2 (en) 2001-09-03 2011-11-29 Martin Vorbach Method for debugging reconfigurable architectures
US8407525B2 (en) 2001-09-03 2013-03-26 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
US8429385B2 (en) 2001-09-03 2013-04-23 Martin Vorbach Device including a field having function cells and information providing cells controlled by the function cells
US8209653B2 (en) 2001-09-03 2012-06-26 Martin Vorbach Router
US8686549B2 (en) 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
US7840842B2 (en) 2001-09-03 2010-11-23 Martin Vorbach Method for debugging reconfigurable architectures
WO2003025781A2 (de) 2001-09-19 2003-03-27 Pact Xpp Technologies Ag Verfahren zur konfiguration der verbindung zwischen datenverarbeitungszellen
US8686475B2 (en) 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
US8281108B2 (en) 2002-01-19 2012-10-02 Martin Vorbach Reconfigurable general purpose processor having time restricted configurations
US8127061B2 (en) 2002-02-18 2012-02-28 Martin Vorbach Bus systems and reconfiguration methods
US7657861B2 (en) 2002-08-07 2010-02-02 Pact Xpp Technologies Ag Method and device for processing data
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
US8281265B2 (en) 2002-08-07 2012-10-02 Martin Vorbach Method and device for processing data
US8156284B2 (en) 2002-08-07 2012-04-10 Martin Vorbach Data processing method and device
US7782087B2 (en) 2002-09-06 2010-08-24 Martin Vorbach Reconfigurable sequencer structure
US8803552B2 (en) 2002-09-06 2014-08-12 Pact Xpp Technologies Ag Reconfigurable sequencer structure
US7928763B2 (en) 2002-09-06 2011-04-19 Martin Vorbach Multi-core processing system
US8310274B2 (en) 2002-09-06 2012-11-13 Martin Vorbach Reconfigurable sequencer structure
US8812820B2 (en) 2003-08-28 2014-08-19 Pact Xpp Technologies Ag Data processing device and method
US8250503B2 (en) 2006-01-18 2012-08-21 Martin Vorbach Hardware definition method including determining whether to implement a function as hardware or software

Also Published As

Publication number Publication date
EP0961980B1 (de) 2005-06-29
CA2279917A1 (en) 1998-08-13
EA199900653A1 (ru) 2000-08-28
JP2001511325A (ja) 2001-08-07
AU6391898A (en) 1998-08-26
US6968452B2 (en) 2005-11-22
WO1998035299A3 (de) 1998-09-17
EP1669885A2 (de) 2006-06-14
EA001823B1 (ru) 2001-08-27
WO1998035299A2 (de) 1998-08-13
JP4146519B2 (ja) 2008-09-10
US20040052130A1 (en) 2004-03-18
CN1252144A (zh) 2000-05-03
EP0961980A2 (de) 1999-12-08
DE59812895D1 (de) 2005-08-04
ATE298907T1 (de) 2005-07-15
US6081903A (en) 2000-06-27
EP1669885A3 (de) 2007-09-12
AU740243B2 (en) 2001-11-01
DE19880129D2 (de) 2000-01-27
US6526520B1 (en) 2003-02-25

Similar Documents

Publication Publication Date Title
DE19704728A1 (de) Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines
EP0948842B1 (de) VERFAHREN ZUM SELBSTÄNDIGEN DYNAMISCHEN UMLADEN VON DATENFLUSSPROZESSOREN (DFPs) SOWIE BAUSTEINEN MIT ZWEI- ODER MEHRDIMENSIONALEN PROGRAMMIERBAREN ZELLSTRUKTUREN (FPGAs, DPGAs, o.dgl.)
EP0951682B1 (de) IO- UND SPEICHERBUSSYSTEM FÜR DFPs SOWIE BAUSTEINE MIT ZWEI- ODER MEHRDIMENSIONALEN PROGRAMMIERBAREN ZELLSTRUKTUREN
EP1329816B1 (de) Verfahren zum selbständigen dynamischen Umladen von Datenflussprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o.dgl.)
DE4416881C2 (de) Verfahren zum Betrieb einer Datenverarbeitungseinrichtung
EP0577919B1 (de) Zugriffssteuerung für gekoppelte maskenprogrammierte Mikrocontroller
EP0499695B1 (de) Speicherprogrammierbare Steuerung
DE2716369C2 (de)
DE19704044A1 (de) Verfahren zur automatischen Adressgenerierung von Bausteinen innerhalb Clustern aus einer Vielzahl dieser Bausteine
DE60213601T2 (de) Programmierbare hardwarelogik, welche ein programmierbares interface und eine zentrale recheneinheit beinhaltet
DE69632634T2 (de) Arbitrierungseinheit zum Multiprozessorsystembuszugriff mit Wiederholungsfähigkeit
EP0943129A1 (de) EINHEIT ZUR VERARBEITUNG VON NUMERISCHEN UND LOGISCHEN OPERATIONEN, ZUM EINSATZ IN PROZESSOREN (CPUs), MEHRRECHNERSYSTEMEN
WO2001024368A1 (de) Rekonfigurierbares gate-array
DE102008059643A1 (de) Elektronische Steuerungsvorrichtung und Verfahren zur elektronischen Steuerung und zur Betätigung einer elektronischen Steuerungsvorrichtung
WO2004079564A2 (de) Prozessor mit verschiedenartigen steuerwerken für gemeinsam genutzte ressourcen
EP1454258A2 (de) Verfahren und vorrichtungen zur datenbe- und/oder verarbeitung
DE102017200456A1 (de) Recheneinheit und Betriebsverfahren hierfür
DE2801853A1 (de) Integrierte digitale datenverarbeitungseinrichtung
EP2216696B1 (de) Verfahren und Kommunikationssystem zum Konfigurieren eines einen Logikbaustein enthaltenden Kommunikationsmoduls
WO2002071249A2 (de) Verfahren und vorrichtungen zur datenbe- und/oder verarbeitung
DE102009047804A1 (de) Speicherprogrammierbares Steuerungssystem
DE69919915T2 (de) Bussteuerung in einem Datenprozessor
DE19837101C2 (de) Programmierbare 1-Bit Datenverarbeitungsanordnung
DE10243322B4 (de) Analoge rekonfigurierbare Datenverarbeitungseinrichtung
DE10227650A1 (de) Rekonfigurierbare Elemente

Legal Events

Date Code Title Description
8143 Lapsed due to claiming internal priority