[go: up one dir, main page]

DE69300041T2 - Mehrfachprozessor-Datenverarbeitungssystem. - Google Patents

Mehrfachprozessor-Datenverarbeitungssystem.

Info

Publication number
DE69300041T2
DE69300041T2 DE69300041T DE69300041T DE69300041T2 DE 69300041 T2 DE69300041 T2 DE 69300041T2 DE 69300041 T DE69300041 T DE 69300041T DE 69300041 T DE69300041 T DE 69300041T DE 69300041 T2 DE69300041 T2 DE 69300041T2
Authority
DE
Germany
Prior art keywords
input
module
data
interface means
bus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE69300041T
Other languages
English (en)
Other versions
DE69300041D1 (de
Inventor
Gerald Ouvradou
Andre Thepaut
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.)
Orange SA
Original Assignee
France Telecom SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by France Telecom SA filed Critical France Telecom SA
Application granted granted Critical
Publication of DE69300041D1 publication Critical patent/DE69300041D1/de
Publication of DE69300041T2 publication Critical patent/DE69300041T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17337Direct connection machines, e.g. completely connected computers, point to point communication networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/10Interfaces, programming languages or software development kits, e.g. for simulating neural networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • G06V30/42Document-oriented image-based pattern recognition based on the type of document
    • G06V30/424Postal images, e.g. labels or addresses on parcels or postal envelopes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Multi Processors (AREA)
  • Image Analysis (AREA)

Description

  • Die vorliegende Erfindung betrifft allgemein Multiprozessor-Datenverarbeitungssysteme.
  • Der ständig steigende Bedarf an Rechnerleistung von Datenverarbeitungssystemen für Anwendungen wie beispielsweise Bildverarbeitung oder wissenschaftliche Berechnungen hat die Entwickler von Rechnern veranlaßt, neue Prozessorarchitekturen einzuführen: die Parallelarchitekturen. Drei Grundprinzipien werden für die Einführung dieses Parallelismus in die neuen Architekturen verwendet. Man unterscheidet:
  • - segmentierte Architekturen (oder Pipelinearchitekturen): Diese Architekturen zerlegen eine Aufgabe in mehrere Schritte und führen die Schritte unabhängig voneinander mit verschiedenen Prozessoren aus. Jedesmal, wenn nach der Ausführung eines Schrittes ein Zwischenergebnis erreicht wird, wird dieses zum nächsten Prozessor übertragen usw. Wenn ein Schritt abgeschlossen ist, wird der für die Ausführung verantwortliche Prozessor freigesetzt und steht somit für die Verarbeitung von neuen Daten zur Verfügung. Ausgehend von der Annahme, daß die Zeiträume für die jeweilige Ausführung der verschiedenen Schritte deutlich gleich sind, ist der Zeitraum für den Erhalt der Endergebnisse somit gleich der Dauer eines Schrittes und nicht der Dauer für die Ausführung der Ausgabe;
  • - Architekturen mit Matrix-Prozessoren oder SIMD- Architekturen (Single Instruction, Multiple Data Stream). Bei Architekturen dieser Art wird die größere Rechenleistung durch gleichzeitige Ausführung des gleichen Befehls durch eine größere Zahl von identischen Verarbeitungseinheiten erreicht. Die Architektur dieser Art eignet sich besonders für die vektorielle Verarbeitung; und
  • - Multiprozessor-Architekturen oder MIMD-Architekturen (Multiple Instruction, Multiple Data Stream). Bei Architekturen dieser Art führen mehrere Prozessoren unabhängig voneinander jeweils Befehlsfolgen aus. Die Kammunikati6n zwischen den Prozessoren erfolgt durch einen gemeinsamen Speicher und/oder ein Verbindungsnetz zwischen den Prozessoren.
  • Die europäische Patentanmeldung EP-A-433142 enthält die Beschreibung einer Architektur eines Multiprozessor- Datenverarbeitungssystems, in dem der Bus von verschiedenen Prozessorstufen genutzt wird und auf jeder Stufe durch ein programmierbares Netz von logischen Zellen (LCA: Logic Cell Arrays) verbunden ist, die als mehrere Ein-/Ausgangsmittel und ein Verzweigungsmittel konfiguriert sind. Der Hauptvorteil einer solchen Architektur liegt darin, jedem Prozessor die Aufgaben der Abfrage und Verwaltung des Bus zu entziehen, da diese im Netz der mit dem Prozessor verbundenen logischen Zellen ausgeführt werden. Diese Architektur ist allerdings im Hinblick auf den Multiprozessoransatz für Anwendungen mit wissenschaftlichen Berechnungen nicht optimal. Jeder Prozessor hat hier fast alle zu erledigenden Aufgaben (außer der Verwaltung des Bus) auszuführen. Zahlreiche Multiprozessoranwendungen erfordern beträchtliche Rechenmittel und ein einziger, nicht nach Stufen spezialisierter Prozessor, schränkt die Leistung ein.
  • Ziel der vorliegenden Erfindung ist, von den vorgenannten Nachteilen Abhilfe zu schaffen, indem ein Datenverarbeitungssystem bereitgestellt wird, das den Multiprozessoransatz für jede Stufe der vorgenannter Architektur optimiert.
  • Zu diesem Zweck ein erfindungsgemäßes Multiprozessor- Datenverarbeitungssystem, bestehend aus einer Vielzahl von miteinander durch intermodulare Busse in Kaskade verbundenen Modulen,
  • wobei jedes Modul besteht aus einer Datenverarbeitungseinheit, einem ersten Speicher, einem Logikmittel, das in erste, zweite und dritte Ein- /Ausgangsschnittstellenmittel zum vorübergehenden Speichern von Daten und ein zentrales Mittel konfigurierbar ist, um die genannten gespeicherten Daten zu verarbeiten und die genannten gespeicherten verarbeiteten Daten zu einem der genannten Ein- /Ausgangsschnittstellenmittel zu verzweigen, und aus einem ersten Modulbus, der die genannte Verarbeitungseinheit, den genannten ersten Speicher und das genannte erste Schnittstellenmittel verbindet,
  • zwei intermodulare Busse, welche die genannten zweiten und dritten Schnittstellenmittel jeweils mit einem dritten Schnittstellenmittel und einem zweiten Schnittstellenmittel in zwei neben dem genannten Modul befindliche Module verbinden,
  • wobei die genannten Verarbeitungseinheiten über ein Kommunikationsnetz in Kaskade miteinander verbunden sind,
  • dadurch gekennzeichnet, daß jedes der genannten Module u.a. eine spezialisierte Verarbeitungseinheit und einen zweiten Speicher enthält, und daß ein viertes Ein- /Ausgangsschnittstellenmittel in dem genannten konfigurierbaren Logikmittel konfiguriert ist,
  • wobei die spezialisierte Verarbeitungseinheit, der zweite Speicher und das vierte Ein- /Ausgangsschnittstellenmittel durch einen zweiten Modulbus miteinander verbunden sind.
  • Nach einer spezifischen Ausführungsform der Erfindung, indem davon ausgegangen wird, daß einerseits das Mittel zur Verarbeitung und Verzweigung ein für allemal für eine gegebenen Anwendung konfiguriert ist, daß andererseits mehrere aufeinander folgenden Multiprozessorverarbeitungen von den Verarbeitungseinheiten an ein und demselben Datenstrom ausgeführt werden können, müssen die bereits nach einer ersten Verarbeitung verarbeiteten Daten für eine folgende Verarbeitung wieder auf die verschiedenen Module verteilt werden. In diesem Fall sind die zweiten und dritten Ein- /Ausgangschnittstellenmittel jeweils in den Logikmitteln der letzten und ersten in Kaskade verbundenen Module mit Hilfe eines rückwirkenden Bus verbunden.
  • Die Erfindung betrifft ebenfalls ein Verfahren zur Verarbeitung von Eingangsdaten, in dem das erfindungsgemäße Datenverarbeitungsverfahren angewandt wird. Das Verfahren besteht aus:
  • - einem Initialisierungsschritt, der u.a. darin besteht, jeweils Koeffizienteneinheiten mit Hilfe des genannten Kommunikationsnetzes in die zweiten Speicher der Module und die genannten Eingangsdaten in den ersten Speicher des ersten Moduls zu laden, und
  • - mindestens einer Einheit eines ersten und zweiten Schrittes;
  • - wobei der erste Schritt darin besteht, in Abhängigkeit von den genannten Koeffizienteneinheiten partielle Verarbeitungen an den genannten Eingangsdaten in den genannten spezialisierten Verarbeitungseinheiten aus zuführen, um jeweils partielle Daten zu erzeugen,
  • - wobei der zweite Schritt darin besteht, die partiellen Daten mit Hilfe der genannten intermodularen Busse und dem genannten rückwirkenden Bus zu einem beliebigen Logikmittel oder einem beliebigen ersten und zweiten Speicher zurückzuführen.
  • Andere Merkmale und Vorteile der vorliegenden Erfindung werden bei der Lektüre der folgenden Beschreibung von zwei bevorzugten Ausführungsformen unter Bezugnahme auf die entsprechenden beigefügten Zeichnungen deutlich, in welchen:
  • - Abbildung 1 ein Modelldiagramm eines Netzes von formalen Neuronen ist;
  • - Abbildung 2 ein Diagramm einer Schichtenarchitektur der Modelldarstellung aus Abbildung 1 ist;
  • - Abbildung 3 ein Blockdiagramm eines Multiprozessor- Datenverarbeitungssystems mit wieder konfigurierbarem aktiven Bus gemäß der früheren Technik ist;
  • - Abbildung 4A und 4B aus zwei Blockdiagrammen von Ausführungen des erfindungsgemäßen spezialisierten Datenverarbeitungssystem mit Coprozessor besteht;
  • - Abbildung 5 ein Diagramm mit typischen Bildern ist, die für die aufeinander folgenden Verarbeitungen in den Schichten eines formalen Neuronennetzes erhalten werden;
  • - Abbildung 6 ein Diagramm mit den Verbindungen ist, die mit den synaptischen Koeffizienten zwischen zwei nebeneinanderliegenden Schichten eines Netzes von formalen Neuronen assoziiert sind;
  • - Abbildung 7 ein Diagramm für das Laden der synaptischen Koeffizienten in bezug auf zwei nebeneinanderliegende Schichten im Datenverarbeitungssystem gemäß einer bevorzugten Ausführungsform der Erfindung ist; und
  • - Abbildung 8 ein Diagramm der Algorithmen in bezug auf die Verarbeitung der Verbindungen zwischen zwei aufeinander folgenden Schichten ist, die in dem System nach Abbildung 7 ausgeführt wird.
  • Das erfindungsgemäße Multiprozessor- Datenverarbeitungssystem wird nachfolgend für eine bestimmte Ausführung beschrieben, die Netze von formalen Neuronen betrifft.
  • Ein sehr allgemeines Modell der Darstellung eines mehrschichtigen Neuronennetzes ist in Abbildung 1 dargestellt: eine bestimmte Anzahl von Grundeinheiten ... Ni-1, Ni, Ni+1 ... , die Neuronen genannt und durch ihren jeweiligen Ausgang ... Si-1, Si, Si+1 ... definiert werden ... bilden die Knoten des Netzes. Jedes Neuron Ni wird durch ein "Potential" Vi erregt, das durch die folgende Gleichung definiert wird:
  • Vi = Σ Wji.Sj, wobei Sj eine Ausgangsebene eines Neurons Nj darstellt, das mit dem Neuron Ni "verbunden" ist, und Wji einen synaptischen Koeffizienten der Verbindung zwischen den Neuronen Nj und Ni bezeichnet. Mit diesem Potential Vi ist die entsprechende Ausgangsebene Si des Neurons Ni verbunden, die durch die Gleichung:
  • Si (t + Δt) = f(Vi(t)) definiert wird,
  • in der f eine nichtlineare Funktion ist.
  • In der Praxis und in Analogie zur Struktur des menschlichen Gehirns sind diese Neuronen nicht anarchisch angeordnet, sondern in Schichten in Form von "Säulen" zusammengefaßt, wobei die Verbindungen zwischen zwei nebeneinanderliegenden Schichten einer bestimmten Funktion zugewiesen sind, wie in Abbildung 2 dargestellt. Diese Abbildung stellt N Schichten von übereinandergelagerten Schichten mit zwei Außenschichten SCHICHT 1 und SCHICHT N und (N-2) verdeckten Schichten SCHICHT 2 bis SCHICHT (N-1) dar, die zwischen den beiden Außenschichten enthalten sind. Die Außenschicht 1 wird gewöhnlich mit "Retina" oder "Eingangsschicht" bezeichnet und empfängt einen Eingangsvektor, während die Außenschicht SCHICHT N, oder Ausgangsschicht, einen entsprechenden Ausgangsvektor erzeugt. In dieser Darstellung ist jedes Neuron einer Datenschicht n mit jedem Neuron der unmittelbar darüberliegenden Schicht (n+1) verbunden, wobei das Ganze n zwischen 1 und N-1 liegt. Wie in bezug auf Abbildung 1 dargestellt, wird jeder dieser Verbindungen jeweils ein synaptischer Koeffizient W zugeordnet.
  • In der Praxis und als Beispiel kann das Neuronennetz zur Erkennung von Ziffern wie 0, 1, 2, ..., 8, 9 verwendet werden. In diesem Fall ist der Eingangsvektor ein Block von numerischen Pixeln eines digitalisierten Bildes einer von einer Person geschriebenen Ziffer. Jeder Verbindung zwischen zwei Neuronen wird jeweils ein synaptischer Koeffizient W zugeordnet, der in einer Lernphase des Netzes abgeleitet wird. Diese synaptischen Koeffizienten entsprechen Werten von Matrix- Multiplikationskoeffizienten, die Bildpixeln zugeordnet werden. Die Ausgangsschicht SCHICHT N erzeugt einen Ausgangsvektor, der eine binäre Information ist und die "erkannte" Ziffer kennzeichnet. Neuronenausgänge einer Schicht erzeugen ein Bild von Merkmalen, das die "gefilterten" Merkmale des Bildes von Merkmalen darstellt, das an den Neuronenausgängen der unmittelbar darunterliegenden Schicht erzeugt wird. Jeder der Anwendungsschritte dieses Modells auf das erfindungsgemäße Multiprozessor-Datenverarbeitungssystem wird später detaillierter beschrieben.
  • Ein Multiprozessor-Datenverarbeitungssystem nach der früheren Technik, wie in der europäischen Patentanmeldung EP-A-433142 beschrieben, ist in Abbildung 3 dargestellt. Das Multiprozessorsystem besteht aus einer Vielzahl von Modulen in Kaskade, von welchen zwei nebeneinanderliegende Module Ni und Mi+1 in Abbildung 3 dargestellt sind. Jedes der Module Mi und Mi+1 enthält einen Prozessor PRi, PRi+1, der mit Transputer bezeichnet wird, einen RAM-Speicher MEi, MEi+1 und ein programmierbares Netz von logischen Zellen LCAi, LCAi+1. Die jeweiligen Prozessoren der verschiedenen Module sind mit Hilfe eines Kommunikationsnetzes RC miteinander verbunden. Dieses Kommunikationsnetz RC dient insbesondere zur Übertragung von Steuer-/Befehlsinformationen zwischen Prozessoren. Für ein gegebenes Modul Mi sind der Prozessor PRi, der Speicher MEi und das Netz der logischen Zellen LCAi mit Hilfe eines betreffenden Modulbus BMi miteinander verbunden. Dieser Modulbus BMi besteht aus spezialisierten Grundbussen, d.h. einem Datenbus, einem Adreßbus und einem Steuerbus und verbindet den Prozessor, den Speicher und ein erstes Ein- /Ausgangsschnittstellenmittel im Netz der logischen Zellen LCAi. Die programmierbaren Netze der logischen Zellen (LCA) sind dem Fachmann bekannt und bestehen aus logischen, kombinierbaren und konfigurierbaren sequentiellen Schaltungen. Diese Konfiguration wird vom Prozessor des Moduls vorgenommen.
  • Nach der vorgenannten Patentanmeldung ist das programmierbare Netz der logische Zellen in drei Ein- /Ausgangsschnittstellenmittel und ein zentrales Datenverarbeitungs- und Verzweigungsmittel konfiguriert. Die Ein-/Ausgangsschnittstellenmittel verfügen insbesondere über temporäre Datenspeicherfunktionen. Das zentrale Mittel führt die Funktionen der Verzweigung der Daten zwischen den Schnittstellenmitteln und der elementaren Verarbeitung (Änderung von Datenformaten, Kodieren, vorberechnete Funktionen) zum Beispiel im Pipelinemodus aus. Das erste Schnittstellenmittel des Zellennetzes bildet die Schnittstelle zwischen dem Modulbus BMi und dem zentralen Mitteln, während die zweiten und dritten Schnittstellenmittel das zentrale Mittel jeweils mit zwei intermodularen Bussen BIMi und BIMi-1 verbinden. Die genannten Busse BIMi und BIMi-1 werden dann jeweils mit einem dritten Schnittstellenmittel im logischen Netz eines unmittelbar darüberliegenden Moduls Mi+1 und einem zweiten Schnittstellenmittel im logischen Netz eines unmittelbar darunterliegenden Moduls Mi-1 verbunden.
  • Die Einführung eines programmierbaren Netzes von logischen Zellen in jedes Modul einer solchen Multiprozessorarchitektur ist besonders in der Hinsicht interessant, als es einen Feinkornparallelismus zwischen den Modulen einleitet, indem es dem logischen Netz LCAi die Aufgaben der unteren Ebene (Zugang zum intermodularen Bus, elementare Funktionen) zuweist.
  • Abbildung 4A zeigt die erste Ausführungsform eines erfindungsgemäßen Datenverarbeitungssystems zur bevorzugten Ausführung eines Netzes von formalen Neuronen beispielsweise im Rahmen der Erkennung von Ziffern von 0 bis 9. Das System besteht aus I Modulen 2&sub1; bis 2I in einer Kaskadenarchitektur.
  • Jedes Modul 2i, wobei i ein wechselndes Ganzes zwischen 1 und I ist, besteht aus einer Datenverarbeitungseinheit in Form eines Prozessors 20i, einem ersten Speicher vom Typ RAM 21i, einem programmierbaren Netz von logischen Zellen 22i, einem zweiten Speicher 23i, und einem Signalverarbeitungsprozessor, der einen Coprozessor oder spezialisierte dedizierte Verarbeitungseinheit 24i bildet. Im Modul 2i sind der Prozessor 20i, der Speicher 21i und ein Ein-/Ausgangsschnittstellenmittel 221i des programmierbaren Netzes der logischen Zellen 22i mit Hilfe eines gemeinsamen Modulbus 25i verbunden. Typischerweise besteht dieser gemeinsame Bus aus drei elementaren Bussen, d.h. Adreßbus, Datenbus und Steuerbus
  • Im Vergleich zu der obigen Beschreibung unter Bezugnahme auf die frühere Technik nach Abbildung 3 ist das programmierbare Netz der logischen Zellen 22i in vier Ein-/Ausgangsschnittstellenmittel 221i, 222i, 223i und 224i und ein zentrales Datenverarbeitungs- und Verzweigungsmittel 220i programmiert. Nach dieser Ausführungsform bilden die Ein-/Ausgangsschnittstellenmittel 221i bis 224i in erster Linie Mittel zum temporären Speichern oder Puffermittel. Das zentrale Mittel 220i ist konfiguriert, um die Daten von und zu den Ein- /Ausgangsschnittstellenmitteln 221i bis 224i zu verzweigen und die elementaren Verarbeitungen an den von den Ein-/Ausgangsschnittstellenmitteln empfangenen Daten vorzunehmen.
  • Das erste Ein-/Ausgangsschnittstellenmittel 221i ist mit dem Modulbus 25i verbunden. Dieses Ein- /Ausgangsschnittstellenmittel 221i wird z.B. verwendet zum:
  • - vorübergehenden Speichern der vom Prozessor 20i übertragenen Daten, um letzteren für andere Aufgaben freizusetzen; und
  • - direkten Speicherzugriff (DMA) auf den mit Hilfe des Netzes von logischen Zellen 22i mit dem Prozessor 20i verbundenen Speicher 21i.
  • Die zweiten und dritten Ein- /Ausgangsschnittstellenmittel 222i und 223i des Netzes der logischen Zellen 22i des i-ten Moduls 2i sind jeweils mit einem dritten Ein- /Ausgangsschnittstellenmittel 223i+1 eines unmittelbar darüberliegenden Moduls 2i+1 und einem zweiten Ein- /Ausgangsschnittstellenmittel 222i-1 eines unmittelbar darunterliegenden Moduls 2i-1 verbunden. Diese Verbindungen werden jeweils mit Hilfe von zwei intermodularen Bussen BIi(i+1) und BI(i-1)i hergestellt. Somit werden die I Netze von programmierbaren logischen Zellen mit Hilfe der intermodularen Busse BI&sub1;&sub2;, ..., BI(I-I)I in Kaskade angeordnet. Nach der bevorzugten Ausführungsform sind das dritte Ein-/Ausgangsschnittstellenmittel 223&sub1; des ersten Moduls 2&sub1; und das zweite Schnittstellenmittel 222I des I-ten Moduls 2I durch einen rückwirkenden Bus BR verbunden.
  • Die intermodularen Busse BI&sub1;&sub2; bis BI(I-1)I in Serie mit dem rückwirkenden Bus BR bilden somit einen Ring. Die zweiten und dritten Schnittstellenmittel 222i und 223i können zum Beispiel bei einer Übertragung von Daten zwischen Prozessoren 20i von nicht nebeneinanderliegenden Modulen verwendet werden und verleihen den Netzen der logischen Zellen 22i die Funktion von schnellen Übertragungsknoten.
  • In jedem Modul 2i sind der Signalverarbeitungsprozessor 24i, der zweite Speicher 23i und das vierte Ein- /Ausgangsschnittstellenmittel 224i durch einen gemeinsamen Bus 26i miteinander verbunden.
  • Unter Bezugnahme auf die Abbildungen 5, 6, 7 und 8 wird jetzt die Funktion des erfindungsgemäßen Datenverarbeitungssystems für die bevorzugte Ausführungsform beschrieben, die Netze mit formalen Neuronen betrifft.
  • Abbildung 5 zeigt die Ergebnisse, die typischerweise im Rahmen von Netzen mit formalen Neuronen bei der Erkennung von handschriftlichen Ziffern zwischen 0 und 9 erhalten werden. Eine derartige Anwendung kann zum Beispiel die Erkennung von Postleitzahlen zur "automatisierten" Verteilung der Post sein. Im Diagramm in Abbildung 5 ist die Datenachse relativ zu den Nummern der Neuronenschichten in einer Architektur, wie unter Bezugnahme auf die Abbildung 2 dargestellt ist. In diesem Diagramm wird angenommen, daß die Anzahl der Neuronenschichten gleich 5 ist. Der Eingangsvektor ist ein Block mit (28 x 28) Pixeln, die eine beliebige Ziffer, in diesem Fall 0, darstellen, die von einer Person geschrieben wurde und digitalisiert ist. Das Netz besteht aus 4634 Neuronen.
  • Jedes Neuron der mit Retina bezeichneten Eingangsschicht (SCHICHT 1) empfängt jeweils ein Pixel des Eingangsvektors. Die erste verdeckte Schicht SCHICHT 2 ist in 4 Unterschichten mit (24 x 24) Neuronen unterteilt. Jedes Neuron jeder Unterschicht empfängt (5 x 5) benachbarte Pixel des Eingangsblocks nach Multiplikation mit einer Linienmatrix der betreffenden synaptischen Koeffizienten. Es wird daran erinnert, daß diese synaptischen Koeffizienten zur Verarbeitung in Matrix- Multiplikationskoeffizienten verwendet werden. Vier Blocks mit (24 x 24) Pixeln werden somit von den jeweiligen Ausgängen der vier Unterschichten der Neuronen von SCHICHT 1 geliefert.
  • Die zwischen den Neuronenausgängen der Schicht SCHICHT 1 und den vier Unterschichten der zweiten Schicht SCHICHT 2 zugeordneten synaptischen Koeffizienten sind relativ zu den spezifischen Verarbeitungen, die am Eingangsbild mit (28 x 28) Pixeln ausgeführt werden. Die jeweiligen synaptischen Koeffizienten zwischen den vier Unterschichten der SCHICHT 2 und den vier Unterschichten der SCHICHT 3 sind relativ zu den Verarbeitungen der Mittelwertbildung und des Subsampling durch zwei. Die jeweiligen Neuronenausgänge der vier Unterschichten der SCHICHT 3 erzeugen somit vier Bildblocks mit (12 x 12) Pixeln.
  • Die Ausgänge von SCHICHT 3 und SCHICHT 4 werden nicht im einzelnen beschrieben. Es ist jedoch festzustellen, daß die Aufgabe jeder Schicht aus der Extraktion von Grundmerkmalen des digitalisierten Blocks von (28 x 28) Pixeln einer handschriftlichen Ziffer besteht. Wie in Abbildung 5 gezeigt, erzeugt eine Ausgangsschicht von 10 Neuronen zehn Schwarz-Weiß-Pixel, wobei der Rang des von einem der zehn Neuronen erzeugten einzigen weißen Pixels repräsentativ für die nach den unterschiedlichen "digitalen Filterschritten", die jeweils von den Neuronenschichten ausgeführt werden, "erkannte" Eingangsziffer ist.
  • Unter Bezugnahme auf Abbildung 6, 7 und 8 wird jetzt im einzelnen der Aufbau eines Netzes von formalen Neuronen im erfindungsgemäßen Multiprozessor- Datenverarbeitungssystem beschrieben, wie in Abbildung 4A dargestellt. Nach dieser bevorzugten Ausführungsform besteht das Neuronennetz aus drei Schichten mit jeweils 256, 40 und 10 Neuronen. Die Neuronen der ersten, mit Eingangsschicht bezeichneten Schicht und der zweiten Schicht stellen jeweils Verbindungen (jeweils einem synaptischen Koeffizienten zugeordnet) mit jedem der Neuronen mit der unmittelbar darüberliegenden Schicht her, d.h. der zweiten und dritten Schicht, die mit Ausgangsschicht bezeichnet wird. Der Eingangsvektor ist ein Block von (16 x 16) = 256 Pixeln eines digitali- sierten Bildes einer handschriftlichen Zahl zwischen O und 9.
  • Wie in Abbildung 6 gezeigt, werden alle den jeweiligen synaptischen Koeffizienten zwischen zwei nebeneinanderliegenden Schichten J und J' von Neuronen zugewiesenen Verbindungen ganz durch eine einzige rechteckige Matrix der Größe (J x J') definiert. Jeder Koeffizient Wjj' der rechteckigen Matrix, j, der zwischen 1 und J liegt, und j' zwischen 1 und J', entspricht dem Wert eines synaptischen Koeffizienten der Verbindung zwischen einem Neuron mit dem Rang j und einem Neuron mit dem Rang j' von jeweils zwei nebeneinanderliegenden Schichten.
  • In Übereinstimmung mit der bevorzugten Ausführungsform werden somit jeweils zwei Matrixen mit (J x J') = (256 x 40) und (J x J') = (40 x 10) synaptischen Koeffizienten zwischen der ersten und der zweiten Schicht und zwischen der zweiten und dritten Schicht verwendet, d.h. insgesamt 10640 Koeffizienten oder Verbindungen.
  • Zur Information: diese synaptischen Koeffizienten für besondere Ausführungen (Erkennen von Ziffern, ...) werden in einer Lernphase mit einem Algorithmus zur Rückleitung eines Gradienten erhalten. Zusammenfassend nimmt dieser Algorithmus Berechnungen zur Erkennung für synaptische Koeffizienten vor, die zu Anfang vorgegeben werden. Die Ergebnisse dieser Berechnungen werden mit den erwarteten Ergebnissen der Erkennung verglichen. Die Koeffizienten werden unter Berücksichtigung dieses Vergleichs modifiziert. Nach mehreren Iterationen konvergieren die synaptischen Koeffizienten zu optimalen Erkennungswerten. Diese Lernphase ist im allgemeinen sehr zeitaufwendig.
  • Nach der ersten bevorzugten Ausführungsform umfaßt das erfindungsgemäße Datenverarbeitungssystem (Abbildung 4A) I = 10 Module 2&sub1; bis 2&sub1;&sub0;. In einem ersten Schritt, wie in Abbildung 7 schematisch dargestellt, wird jedes Modul 2i, wobei i zwischen 1 und 10 liegt, der Verarbeitung in bezug auf alle Verbindungen zwischen der Eingangsschicht und jeweils einer der zehn Vierfachen der Neuronen der zweiten Schicht (4 x 10 = 40) zugeordnet. Die Matrixberechnungen:
  • Vp = Σ Wkp ek ,
  • wobei k zwischen 1 und J = (16 x 16) variiert und p zwischen 1 und J' = 40 variiert,
  • werden vom gleichen Signalverarbeitungsprozessor für vier festgelegte Werte des Index p und somit relativ zu vier Neuronen eines jeweiligen Vierfachen ausgeführt.
  • Ein Vorteil der Erfindung ergibt sich daraus, daß diese Matrixmultiplikationen von den Signalverarbeitungsprozessoren 24&sub1; bis 24I=10 ausgeführt werden.
  • Im Anschluß an diese erste Verarbeitung (Verbindungen zwischen der ersten und zweiten Schicht) wird jeder Signalverarbeitungsprozessor 24&sub1; bis 24&sub1;&sub0; der Verarbeitung der Matrixmultiplikationen relativ zu den Verbindungen zwischen den Neuronen der zweiten Schicht und jeweils einem Neuron der dritten Schicht, die mit Ausgangsschicht (1 x 10 = 10) bezeichnet wird, zugeordnet.
  • Die Verwendung eines Signalverarbeitungsprozessors oder spezialisierten Coprozessors 24i setzt den Prozessor 20i frei, der weitere Aufgaben übernehmen kann.
  • Unter Bezugnahme auf Abbildung 8 und 4A werden jetzt Anordnung und Funktion des erfindungsgemäßen Multiprozessor-Datenverarbeitungssystems in einem Netz von formalen Neuronen beschrieben.
  • Vor dem Betrieb des Systems im Erkennungsmodus in einem Netz von formalen Neuronen wird das System mit Hilfe eines Pilotrechners 1, der mit dem ersten Prozessor 20&sub1; verbunden ist, initialisiert. Diese Initialisierung wird vom Rechner 1 mit Hilfe des Interprozessorkommunikationsnetzes RC festgestellt. Die Initialisierung umfaßt:
  • in bezug auf jeden Prozessor 20&sub1;bis 20&sub1;&sub0;:
  • - das Laden eines Betriebsprogrammes in den jeweiligen Speicher 21&sub1; bis 21&sub1;&sub0; mit Hilfe des Bus 25&sub1; bis 25&sub1;&sub0;,
  • - die Konfiguration des verbundenen Netzes der logischen Zellen 22&sub1; bis 22&sub1;&sub0;;
  • - das Laden der Programme (Matrixmultiplikation ...) in bezug auf den Betrieb des Signalverarbeitungsprozessors 24&sub1; bis 24&sub1;&sub0; in den verbundenen Speicher 23&sub1; bis 23&sub1;&sub0; über das Netz 22&sub1; bis 22&sub1;&sub0;, und
  • - das Laden einer Einheit von synaptischen Koeffizienten, wie bereits beschrieben, in bezug auf den Signalverarbeitungspropzessor 24&sub1; bis 24&sub1;&sub0; in den verbundenen Speicher 23&sub1; bis 23&sub1;&sub0;; sowie das Laden des ersten Formvektors, der die Eingangsdaten e&sub1; bis eJ bildet, die durch Verarbeitung (Block von 16 x 16 Pixeln) erkannt werden sollen, in den Speicher 21&sub1; des Prozessors 20&sub1; des ersten Moduls 2&sub1;.
  • Im Falle einer Folgeverarbeitung von mehreren zu erkennenden Eingangsdatenvektoren werden letztere gemäß ihrer Verfügbarkeit im Speicher 21&sub1; gespeichert, der mit dem Prozessor des ersten Moduls 2&sub1; verbunden ist. Jeder Eingangsvektor wird zum Beispiel vom Pilotrechner 1 nach einer vorherigen Verarbeitung (lineare Verarbeitung der Standardisierung der von einem Camescope gelieferten ersten Blocks auf das Format 16 x 16) an den ersten Blocks über das Kommunikationsnetz RC zur Verfügung gestellt.
  • Das Diagramm der Algorithmen in bezug auf eine erste Verarbeitung von Verbindungen zwischen der ersten und zweiten Neuronenschicht in Abbildung 8 gestattet, die Funktion des erfindungsgemäßen Multiprozessor- Datenverarbeitungssystem in einem Netz von formalen Neuronen zu verstehen. Jedes "Bild" der Abbildung 8 ist relativ zu einem Algorithmus, der von einem oder mehreren der Prozessoren 20&sub1;, Signalverarbeitungsprozessoren 24&sub1; oder Netzen von logischen Zellen 22&sub1; des Systems ausgeführt wird.
  • Wir haben bereits gesehen, daß der Vektor der Eingangsdaten zuerst in den Speicher 21&sub1; geladen wird. Der Prozessor 20&sub1; liest diesen Vektor in den Speicher 21&sub1; ein und schreibt ihn in das erste Ein- /Ausgangsschnittstellenmittel 221&sub1; des programmierbaren Netzes der logischen Zellen 22&sub1; des ersten Moduls 2&sub1;. Das zentrale Mittel 220&sub1; des Netzes 22&sub1; verzweigt nun diesen Vektor zum zweiten Schnittstellenmittel 222&sub1; und dieses zweite Schnittstellenmittel 222&sub1; überträgt ihn zurück zum dritten Schnittstellenmittel 223&sub2; des logischen Netzes 22&sub2; des zweiten Moduls 22 usw. Der Vektor wird somit im Ring BI&sub1;&sub2; bis BI(I-1)I nacheinander zu den unmittelbar darüberliegenden Modulen übertragen. Jedes zentrale Mittel der Netze verzweigt und entnimmt über das vierte Schnittstellenmittel 224i alle (16 x 16) Pixel des Vektors zum Speicher 23i, der mit seinem Signalverarbeitungsprozessor 24i verbunden ist. Der von jedem Modul 2i bei der oben beschriebenen Konfiguration verwendete Eingangsdatenvektor wird dann in dem jeweiligen mit dem Signalverarbeitungsprozessor 24i verbundenen Speicher 23i abgespeichert.
  • Der erste Schritt (Schritt 1) des Algorithmus relativ zu jedem der Signalverarbeitungsprozessoren 24i, wobei i zwischen 1 und I liegt, besteht aus der Berechnung des Potentials V1 relativ zu den dem Modul 2i zugeordneten Neuronen, dann im Schreiben des auf diese Weise berechneten Potentials in das Ein- /Ausgangsschnittstellenmittel 224i des logischen Netzes 22i des gleichen Moduls 2i Jedes 220i der zentralen Mittel der logischen Netze, die zu diesem Zweck konfiguriert wurden, sendet nach und nach die Ergebnisse der Berechnung des Potentials V&sub1; bis Vi zum folgenden Netz 22i+1' bis alle Ergebnisse V&sub1; bis VI vom dritten Ein- /Ausgangsschnittstellenmittel 223&sub1; des logischen Netzes des 'ersten Moduls 2&sub1; über den rückwirkenden Bus BR (Schritt 2) empfangen wurden.
  • Dann schreibt das Ein-/Ausgangsschnittstellenmittel 223&sub1; des ersten Moduls 2&sub1; die empfangenen Ergebnisse der Berechnung des Potentials in den Speicher 23&sub1; und macht dem Signalverarbeitungsprozessor 24&sub1; Meldung (Schritt 3). Der Prozessor 24&sub1; berechnet den Wert der sigmoiden Funktion (nichtlineare Funktion f auf der Basis der hyperbolischen Tangentenfunktion, definiert ausgehend von dem am Anfang in der Beschreibung dargestellten Modell) für jeden "Pixel" oder Potential Vi des Neurons, das von den Prozessoren 24i (Schritt 5) erzeugt wurde, um die Ausgangsebenen aller Neuronen der zweiten Schicht für diese erste Verarbeitung zu erhalten. Parallel dazu und weil jeder Signalverarbeitungsprozessor 24i die berechneten Potentiale der vier Neuronen der zweiten Schicht, die er bei der ersten Verarbeitung simuliert, in den zugehörigen Speicher 23i schreibt, lesen die Prozessoren 20&sub1; bis 20I dann die Potentiale der jeweils in den Speichern 23&sub1; bis 23I gespeicherten Neuronen, wenn alle Potentiale berechnet wurden (Schritt 2').
  • Nach der Ausführungsform sind zwei Verarbeitungen in bezug auf die erste und zweite Schicht und zweite und dritte Schicht vorgesehen. Somit werden die Ausgänge der Neuronen der zweiten Schicht der gewählten Konfiguration, die im Speicher 23&sub1; gespeichert sind, von den Signalverarbeitungsprozessoren 24&sub1; bis 24I für neue Potentialberechnungen nach Übertragung in den Ring der Ausgänge der Neuronen, wie bei der ersten Verarbeitung berechnet, wieder verarbeitet.
  • Nach der zweiten, in Abbildung 4B dargestellten Ausführungsform, wird vorgeschlagen, hinter den ersten Modulen 2&sub1; bis 2I ein zusätzliches Modul 2&sub0; vorzusehen. Dieses Modul besteht aus einem Prozessor 20&sub0;, einem Speicher 21&sub0; und einem programmierbaren Netz von logischen Zellen 22&sub0;. Dieses Modul ist vorgesehen, um die zu verarbeitenden Bilder der Pixel direkt in ein Ein- /Ausgangsschnittstellenmittel 223&sub0; des programmierbaren Netzes 22&sub0; einzugeben. Diese Eingabe gestattet die Erhöhung des zu verarbeitenden Bildflusses, weil dann die Bilder nicht den Pilotrechner 1 durchlaufen und darüber hinaus nicht die Benutzung des Kommunikationsnetzes RC erfordern. Das Datenerfassungssystem (Bilder), wie ein Camescope oder Scanner (nicht abgebildet), wird dann direkt mit dem dritten Ein- /Ausgangsschnittstellenmittel 223&sub0; des programmierbaren Netzes 22&sub0; des Zusatzmoduls 2&sub0; über einen Bus BI verbunden. Der Speicher 21&sub0;, der Prozessor 20&sub0; und ein erstes Ein-/Ausgangsschnittstellenmittel 221&sub0; des programmierbaren Netzes 22&sub0; im Zusatzmodul 2&sub0; sind auf die gleiche Weise mit Hilfe eines Bus 25&sub0; miteinander verbunden, wie die gegenseitigen Verbindungen in den anderen Modulen 22&sub1; bis 22I. Die über einen Bus in das dritte Ein/Ausgangsschnittstellenmittel 223&sub0; des programmierbaren Netzes 22&sub0; eingegebenen Bilder können im Verarbeitungs- und Verzweigungsmittel 220&sub0; des Netzes 22&sub0; durch Programmierung des letzteren einer ersten Vorverarbeitung (Formatierung 16 x 16) unterzogen werden. Das zweite Schnittstellenmittel 222&sub0; ist über einen zusätzlichen intermodularen Bus BI&sub0;&sub1; mit dem dritten Schnittstellenmittel 223&sub1; des ersten 2&sub1; der Module in Kaskade 2&sub1; bis 2I verbunden.
  • Aus identischen Gründen wie bei der ersten Ausführungsform kann auch ein rückwirkender Bus BR vorgesehen werden. Dieser verbindet das zweite Ein- /Ausgangsschnittstellenmittel 222I des programmierbaren Netzes 22I des letzten Moduls 2I mit dem vierten Ein/Ausgangsschnittstellenmittel 224&sub0; des Netzes 22&sub0; des Zusatzmoduls.
  • Zur Information: die Erkennung einer handschriftlichen, in (16 x 16) Pixel digitalisierten Ziffer durch das erfindungsgemäße Datenverarbeitungssystem mit der Simulation von 10640 Neuronen benötigt 175 us. Bei herkömmlichen Systemen sind gewöhnlich Zeitdauern in der Größenordnung von etwa zehn Millisekunden erforderlich.

Claims (5)

1 - Multiprozessor-Datenverarbeitungssystem, bestehend aus einer Vielzahl von miteinander durch intermodulare Busse (BI&sub1;&sub2; bis BI(I-1)I) in Kaskade verbundenen Modulen (2&sub1; bis 2I),
wobei jedes Modul (2i) besteht aus einer Datenverarbeitungseinheit (20i) einem ersten Speicher (21i), einem Logikmittel (22i), das in erste, zweite und dritte Ein/Ausgangsschnittstellenmittel (221i, 222i, 223i) zum vorübergehenden Speichern von Daten und ein zentrales Mittel (220i) konfigurierbar ist, um die genannten gespeicherten Daten zu verarbeiten und die genannten gespeicherten verarbeiteten Daten zu einem der genannten Ein-/Ausgangsschnittstellenmittel zu verzweigen, und aus einem ersten Modulbus (25i), der die genannte Verarbeitungseinheit (20i), den genannten ersten Speicher (21i) und das genannte erste Schnittstellenmittel (221i) verbindet,
zwei intermodulare Busse (BI(i-1)i, BIi(+1)), welche die genannten zweiten und dritten Schnittstellenmittel jeweils mit einem dritten Schnittstellenmittel und einem zweiten Schnittstellenmittel in zwei neben dem genannten Modul befindliche Module verbinden,
wobei die genannten Verarbeitungseinheiten (20&sub1; - 20I) über ein Kommunikationsnetz (RC) in Kaskade miteinander verbunden sind,
dadurch gekennzeichnet, daß jedes der genannten Module (2i) u.a. eine spezialisierte Verarbeitungseinheit (24i) und einen zweiten Speicher (23i) enthält, und daß ein viertes Ein-/Ausgangsschnittstellenmittel (224i) in dem genannten konfigurierbaren Logikmittel (2i) konfiguriert ist,
wobei die spezialisierte Verarbeitungseinheit (24i) der zweite Speicher (23i) und das vierte Ein/Ausgangsschnittstellenmittel (224i) durch einen zweiten Modulbus (26i) miteinander verbunden sind.
2 - Datenverarbeitungssystem nach Anspruch 1, dadurch gekennzeichnet, daß die zweiten und dritten Ein/Ausgangschnittstellenmittel (222I, 223i) jeweils in den Logikmitteln der letzten und ersten in Kaskade verbundenen Module (2I, 2&sub1;) mit Hilfe eines rückwirkenden Bus (BR) verbunden sind.
3 - Datenverarbeitungssystem nach Anspruch 1, dadurch gekennzeichnet, daß das genannte System ferner ein Mittel zur Datenerfassung und ein zusätzliches Modul (2&sub0;) enthält, das hinter den ersten Modulen 2&sub1; bis 2I in Kaskade angeordnet ist und mit Hilfe eines zusätzlichen intermodularen Bus (BI&sub0;&sub1;) mit dem ersten (2&sub1;) der beiden genannten Module verbunden ist,
wobei das genannte zusätzliche Modul eine erste Datenverarbeitungseinheit (20&sub0;), einen ersten Speicher (21&sub0;) und ein in erste, zweite, dritte und vierte Ein- /Ausgangsschnittstellenmittel (221o, 222&sub0;, 223&sub0;, 224&sub0;), die auf die gleiche Weise miteinander verbunden sind wie die in jedem der Module in Kaskade, konfigurierbares Logikmittel (22&sub0;) enthält,
wobei das genannte Mittel zur Erfassung mit Hilfe eines Bus (BI) mit dem dritten Ein- /Ausgangsschnittstellenmittel des genannten Logikmittels (22&sub0;) des genannten zusätzlichen Moduls (2&sub0;) verbunden ist,
wobei der zusätzliche intermodulare Bus (B&sub0;&sub1;) das zweite und dritte Eini/Ausgangsschnittstellenmittel (222&sub0;, 222&sub1;) jeweils in den Logikmitteln des zusätzlichen Moduls und des ersten Moduls (2&sub1;) miteinander verbindet.
4 - Datenverarbeitungssystem nach Anspruch 1, dadurch gekennzeichnet, daß das zweite und vierte Ein- /Ausgangsschnittstellenmittel (222I, 224&sub0;) jeweils in den Logikmitteln des letzten Moduls (2I) und des zusätzlichen Moduls (2&sub0;) mit Hilfe eines rückwirkenden Bus (BR) verbunden sind.
5 - Verfahren zur Verarbeitung von Eingangsdaten (e&sub1; bis eJ), in dem das erfindungsgemäße Datenverarbeitungssystem nach den Ansprüchen 2 oder 4 angewandt wird, bestehend aus:
- einem Initialisierungsschritt, der u.a. darin besteht, jeweils Koeffizienteneinheiten mit Hilfe des genannten Kommunikationsnetzes (RC) in die zweiten Speicher (23i) der Module (2i) und die genannten Eingangsdaten in den ersten Speicher (21i) des ersten Moduls (2i) zu laden, und
- mindestens einer Einheit eines ersten und zweiten Schrittes;
- wobei der erste Schritt darin besteht, partielle Verarbeitungen an den genannten Eingangsdaten (e&sub1;, ..., eJ) in den genannten spezialisierten Verarbeitungseinheiten (24i) in Abhängigkeit von den genannten Koeffizienteneinheiten auszuführen, um jeweils partielle Daten zu erzeugen,
- wobei der zweite Schritt darin besteht, die partiellen Daten mit Hilfe der genannten intermodularen Busse (BI(i-1)i) und dem genannten rückwirkenden Bus (BR) zu einem beliebigen Logikmittel (22i) oder einem beliebigen (21i, 23i) ersten und zweiten Speicher zurückzuführen.
DE69300041T 1992-01-14 1993-01-08 Mehrfachprozessor-Datenverarbeitungssystem. Expired - Fee Related DE69300041T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR9200312A FR2686175B1 (fr) 1992-01-14 1992-01-14 Systeme de traitement de donnees multiprocesseur.

Publications (2)

Publication Number Publication Date
DE69300041D1 DE69300041D1 (de) 1995-02-16
DE69300041T2 true DE69300041T2 (de) 1995-06-01

Family

ID=9425613

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69300041T Expired - Fee Related DE69300041T2 (de) 1992-01-14 1993-01-08 Mehrfachprozessor-Datenverarbeitungssystem.

Country Status (5)

Country Link
US (1) US5465375A (de)
EP (1) EP0552074B1 (de)
JP (1) JPH0612393A (de)
DE (1) DE69300041T2 (de)
FR (1) FR2686175B1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10105516A1 (de) * 2001-02-07 2002-08-08 Hannes Max Hapke Verfahren zur Berechnung neuronaler Netze

Families Citing this family (132)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0566015A3 (en) * 1992-04-14 1994-07-06 Eastman Kodak Co Neural network optical character recognition system and method for classifying characters in amoving web
DE4344157A1 (de) * 1993-12-23 1995-06-29 Philips Patentverwaltung Funkgerät
JP3290798B2 (ja) * 1994-03-14 2002-06-10 富士通株式会社 並列コンピュータ
US5613156A (en) * 1994-09-27 1997-03-18 Eastman Kodak Company Imaging system with 1-N Parallel channels, each channel has a programmable amplifier and ADC with serial controller linking and controlling the amplifiers and ADCs
US5794062A (en) * 1995-04-17 1998-08-11 Ricoh Company Ltd. System and method for dynamically reconfigurable computing using a processing unit having changeable internal hardware organization
US5943242A (en) * 1995-11-17 1999-08-24 Pact Gmbh Dynamically reconfigurable data processing system
US7266725B2 (en) 2001-09-03 2007-09-04 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
US5956518A (en) * 1996-04-11 1999-09-21 Massachusetts Institute Of Technology Intermediate-grain reconfigurable processing device
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
DE19654593A1 (de) 1996-12-20 1998-07-02 Pact Inf Tech Gmbh Umkonfigurierungs-Verfahren für programmierbare Bausteine zur Laufzeit
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
DE59710317D1 (de) 1996-12-27 2003-07-24 Pact Inf Tech Gmbh VERFAHREN ZUM SELBSTÄNDIGEN DYNAMISCHEN UMLADEN VON DATENFLUSSPROZESSOREN (DFPs) SOWIE BAUSTEINEN MIT ZWEI- ODER MEHRDIMENSIONALEN PROGRAMMIERBAREN ZELLSTRUKTUREN (FPGAs, DPGAs, o.dgl.)
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.)
US6542998B1 (en) 1997-02-08 2003-04-01 Pact Gmbh Method of self-synchronization of configurable elements of a programmable module
DE19704728A1 (de) 1997-02-08 1998-08-13 Pact Inf Tech Gmbh Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines
US5796631A (en) * 1997-02-10 1998-08-18 Tempo Instrument, Inc. Method and apparatus for monitoring and characterizing power quality, faults and other phenomena in network power systems
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
US8686549B2 (en) 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
DE19861088A1 (de) 1997-12-22 2000-02-10 Pact Inf Tech Gmbh Verfahren zur Reparatur von integrierten Schaltkreisen
US6374144B1 (en) * 1998-12-22 2002-04-16 Varian Semiconductor Equipment Associates, Inc. Method and apparatus for controlling a system using hierarchical state machines
US7003660B2 (en) 2000-06-13 2006-02-21 Pact Xpp Technologies Ag Pipeline configuration unit protocols and communication
EP1228440B1 (de) 1999-06-10 2017-04-05 PACT XPP Technologies AG Sequenz-partitionierung auf zellstrukturen
US7119576B1 (en) 2000-09-18 2006-10-10 Altera Corporation Devices and methods with programmable logic and digital signal processing regions
US7346644B1 (en) 2000-09-18 2008-03-18 Altera Corporation Devices and methods with programmable logic and digital signal processing regions
AU2002220600A1 (en) 2000-10-06 2002-04-15 Pact Informationstechnologie Gmbh Cell system with segmented intermediate cell structure
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
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.)
JP4783527B2 (ja) * 2001-01-31 2011-09-28 株式会社ガイア・システム・ソリューション データ処理システム、データ処理装置およびその制御方法
CA2478571A1 (en) * 2001-03-02 2002-09-12 Atsana Semiconductor Corp. Apparatus for variable word length computing in an array processor
US7210129B2 (en) 2001-08-16 2007-04-24 Pact Xpp Technologies Ag Method for translating programs for reconfigurable architectures
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements
US7444531B2 (en) 2001-03-05 2008-10-28 Pact Xpp Technologies Ag Methods and devices for treating and processing data
US7844796B2 (en) 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
US7581076B2 (en) 2001-03-05 2009-08-25 Pact Xpp Technologies Ag Methods and devices for treating and/or processing data
EP2224330B1 (de) 2001-06-20 2012-05-09 Krass, Maren Verfahren und gerät zum partitionieren von grossen rechnerprogrammen
US7996827B2 (en) 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
US7434191B2 (en) 2001-09-03 2008-10-07 Pact Xpp Technologies Ag Router
US8686475B2 (en) 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
US10156501B2 (en) 2001-11-05 2018-12-18 Life Technologies Corporation Automated microdissection instrument for determining a location of a laser beam projection on a worksurface area
US8722357B2 (en) 2001-11-05 2014-05-13 Life Technologies Corporation Automated microdissection instrument
US8715955B2 (en) 2004-09-09 2014-05-06 Life Technologies Corporation Laser microdissection apparatus and method
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
DE10392560D2 (de) 2002-01-19 2005-05-12 Pact Xpp Technologies Ag Reconfigurierbarer Prozessor
ATE538439T1 (de) 2002-02-18 2012-01-15 Richter Thomas Bussysteme und rekonfigurationsverfahren
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
JP4280029B2 (ja) * 2002-05-30 2009-06-17 パナソニック株式会社 ディジタル信号処理装置およびディジタル信号処理方法
US20040083311A1 (en) * 2002-06-05 2004-04-29 James Zhuge Signal processing system and method
WO2004021176A2 (de) 2002-08-07 2004-03-11 Pact Xpp Technologies Ag Verfahren und vorrichtung zur datenverarbeitung
US7657861B2 (en) 2002-08-07 2010-02-02 Pact Xpp Technologies Ag Method and device for processing data
US7394284B2 (en) 2002-09-06 2008-07-01 Pact Xpp Technologies Ag Reconfigurable sequencer structure
WO2004025569A2 (en) * 2002-09-13 2004-03-25 Arcturus Bioscience, Inc. Tissue image analysis for cell classification and laser capture microdissection
EP1634182A2 (de) * 2003-06-17 2006-03-15 PACT XPP Technologies AG Datenverarbeitungseinrichtung und verfahren
JP4700611B2 (ja) 2003-08-28 2011-06-15 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト データ処理装置およびデータ処理方法
US8620980B1 (en) 2005-09-27 2013-12-31 Altera Corporation Programmable device with specialized multiplier blocks
EP1974265A1 (de) 2006-01-18 2008-10-01 PACT XPP Technologies AG Hardwaredefinitionsverfahren
US8041759B1 (en) 2006-02-09 2011-10-18 Altera Corporation Specialized processing block for programmable logic device
US8266198B2 (en) 2006-02-09 2012-09-11 Altera Corporation Specialized processing block for programmable logic device
US8266199B2 (en) 2006-02-09 2012-09-11 Altera Corporation Specialized processing block for programmable logic device
US8301681B1 (en) 2006-02-09 2012-10-30 Altera Corporation Specialized processing block for programmable logic device
US7836117B1 (en) 2006-04-07 2010-11-16 Altera Corporation Specialized processing block for programmable logic device
US7822799B1 (en) 2006-06-26 2010-10-26 Altera Corporation Adder-rounder circuitry for specialized processing block in programmable logic device
US8386550B1 (en) 2006-09-20 2013-02-26 Altera Corporation Method for configuring a finite impulse response filter in a programmable logic device
US8386553B1 (en) 2006-12-05 2013-02-26 Altera Corporation Large multiplier for programmable logic device
US7930336B2 (en) 2006-12-05 2011-04-19 Altera Corporation Large multiplier for programmable logic device
US7814137B1 (en) 2007-01-09 2010-10-12 Altera Corporation Combined interpolation and decimation filter for programmable logic device
US7865541B1 (en) 2007-01-22 2011-01-04 Altera Corporation Configuring floating point operations in a programmable logic device
US8650231B1 (en) 2007-01-22 2014-02-11 Altera Corporation Configuring floating point operations in a programmable device
US8645450B1 (en) 2007-03-02 2014-02-04 Altera Corporation Multiplier-accumulator circuitry and methods
US7949699B1 (en) 2007-08-30 2011-05-24 Altera Corporation Implementation of decimation filter in integrated circuit device using ram-based data storage
US8959137B1 (en) 2008-02-20 2015-02-17 Altera Corporation Implementing large multipliers in a programmable integrated circuit device
US8244789B1 (en) 2008-03-14 2012-08-14 Altera Corporation Normalization of floating point operations in a programmable integrated circuit device
US8626815B1 (en) 2008-07-14 2014-01-07 Altera Corporation Configuring a programmable integrated circuit device to perform matrix multiplication
US8255448B1 (en) 2008-10-02 2012-08-28 Altera Corporation Implementing division in a programmable integrated circuit device
US8307023B1 (en) 2008-10-10 2012-11-06 Altera Corporation DSP block for implementing large multiplier on a programmable integrated circuit device
US8549055B2 (en) 2009-03-03 2013-10-01 Altera Corporation Modular digital signal processing circuitry with optionally usable, dedicated connections between modules of the circuitry
US8468192B1 (en) 2009-03-03 2013-06-18 Altera Corporation Implementing multipliers in a programmable integrated circuit device
US8706790B1 (en) 2009-03-03 2014-04-22 Altera Corporation Implementing mixed-precision floating-point operations in a programmable integrated circuit device
US8805916B2 (en) 2009-03-03 2014-08-12 Altera Corporation Digital signal processing circuitry with redundancy and bidirectional data paths
US8645449B1 (en) 2009-03-03 2014-02-04 Altera Corporation Combined floating point adder and subtractor
US8886696B1 (en) 2009-03-03 2014-11-11 Altera Corporation Digital signal processing circuitry with redundancy and ability to support larger multipliers
US8650236B1 (en) 2009-08-04 2014-02-11 Altera Corporation High-rate interpolation or decimation filter in integrated circuit device
US8412756B1 (en) 2009-09-11 2013-04-02 Altera Corporation Multi-operand floating point operations in a programmable integrated circuit device
US8396914B1 (en) 2009-09-11 2013-03-12 Altera Corporation Matrix decomposition in an integrated circuit device
US8539016B1 (en) 2010-02-09 2013-09-17 Altera Corporation QR decomposition in an integrated circuit device
US7948267B1 (en) 2010-02-09 2011-05-24 Altera Corporation Efficient rounding circuits and methods in configurable integrated circuit devices
US8601044B2 (en) 2010-03-02 2013-12-03 Altera Corporation Discrete Fourier Transform in an integrated circuit device
US8458243B1 (en) 2010-03-03 2013-06-04 Altera Corporation Digital signal processing circuit blocks with support for systolic finite-impulse-response digital filtering
US8484265B1 (en) 2010-03-04 2013-07-09 Altera Corporation Angular range reduction in an integrated circuit device
US8510354B1 (en) 2010-03-12 2013-08-13 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8539014B2 (en) 2010-03-25 2013-09-17 Altera Corporation Solving linear matrices in an integrated circuit device
US8589463B2 (en) 2010-06-25 2013-11-19 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8862650B2 (en) 2010-06-25 2014-10-14 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8577951B1 (en) 2010-08-19 2013-11-05 Altera Corporation Matrix operations in an integrated circuit device
US8645451B2 (en) 2011-03-10 2014-02-04 Altera Corporation Double-clocked specialized processing block in an integrated circuit device
US9600278B1 (en) 2011-05-09 2017-03-21 Altera Corporation Programmable device using fixed and configurable logic to implement recursive trees
US8812576B1 (en) 2011-09-12 2014-08-19 Altera Corporation QR decomposition in an integrated circuit device
US8949298B1 (en) 2011-09-16 2015-02-03 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US9053045B1 (en) 2011-09-16 2015-06-09 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US8762443B1 (en) 2011-11-15 2014-06-24 Altera Corporation Matrix operations in an integrated circuit device
US8543634B1 (en) 2012-03-30 2013-09-24 Altera Corporation Specialized processing block for programmable integrated circuit device
US9098332B1 (en) 2012-06-01 2015-08-04 Altera Corporation Specialized processing block with fixed- and floating-point structures
US8996600B1 (en) 2012-08-03 2015-03-31 Altera Corporation Specialized processing block for implementing floating-point multiplier with subnormal operation support
US9207909B1 (en) 2012-11-26 2015-12-08 Altera Corporation Polynomial calculations optimized for programmable integrated circuit device structures
US9189200B1 (en) 2013-03-14 2015-11-17 Altera Corporation Multiple-precision processing block in a programmable integrated circuit device
US9348795B1 (en) 2013-07-03 2016-05-24 Altera Corporation Programmable device using fixed and configurable logic to implement floating-point rounding
US9379687B1 (en) 2014-01-14 2016-06-28 Altera Corporation Pipelined systolic finite impulse response filter
EP3035249B1 (de) * 2014-12-19 2019-11-27 Intel Corporation Verfahren und Vorrichtung für verteilte und kooperative Berechnung in künstlichen neuronalen Netzen
US9684488B2 (en) 2015-03-26 2017-06-20 Altera Corporation Combined adder and pre-adder for high-radix multiplier circuit
US20160379109A1 (en) * 2015-06-29 2016-12-29 Microsoft Technology Licensing, Llc Convolutional neural networks on hardware accelerators
US11226840B2 (en) 2015-10-08 2022-01-18 Shanghai Zhaoxin Semiconductor Co., Ltd. Neural network unit that interrupts processing core upon condition
US10664751B2 (en) 2016-12-01 2020-05-26 Via Alliance Semiconductor Co., Ltd. Processor with memory array operable as either cache memory or neural network unit memory
US10725934B2 (en) 2015-10-08 2020-07-28 Shanghai Zhaoxin Semiconductor Co., Ltd. Processor with selective data storage (of accelerator) operable as either victim cache data storage or accelerator memory and having victim cache tags in lower level cache wherein evicted cache line is stored in said data storage when said data storage is in a first mode and said cache line is stored in system memory rather then said data store when said data storage is in a second mode
US11216720B2 (en) 2015-10-08 2022-01-04 Shanghai Zhaoxin Semiconductor Co., Ltd. Neural network unit that manages power consumption based on memory accesses per period
US11029949B2 (en) 2015-10-08 2021-06-08 Shanghai Zhaoxin Semiconductor Co., Ltd. Neural network unit
US11221872B2 (en) 2015-10-08 2022-01-11 Shanghai Zhaoxin Semiconductor Co., Ltd. Neural network unit that interrupts processing core upon condition
US10228911B2 (en) 2015-10-08 2019-03-12 Via Alliance Semiconductor Co., Ltd. Apparatus employing user-specified binary point fixed point arithmetic
US10776690B2 (en) 2015-10-08 2020-09-15 Via Alliance Semiconductor Co., Ltd. Neural network unit with plurality of selectable output functions
US10380481B2 (en) 2015-10-08 2019-08-13 Via Alliance Semiconductor Co., Ltd. Neural network unit that performs concurrent LSTM cell calculations
US10353862B2 (en) 2015-10-08 2019-07-16 Via Alliance Semiconductor Co., Ltd. Neural network unit that performs stochastic rounding
US9779786B1 (en) * 2016-10-26 2017-10-03 Xilinx, Inc. Tensor operations and acceleration
US10417560B2 (en) 2016-12-01 2019-09-17 Via Alliance Semiconductor Co., Ltd. Neural network unit that performs efficient 3-dimensional convolutions
US10438115B2 (en) 2016-12-01 2019-10-08 Via Alliance Semiconductor Co., Ltd. Neural network unit with memory layout to perform efficient 3-dimensional convolutions
US10430706B2 (en) 2016-12-01 2019-10-01 Via Alliance Semiconductor Co., Ltd. Processor with memory array operable as either last level cache slice or neural network unit memory
US10395165B2 (en) 2016-12-01 2019-08-27 Via Alliance Semiconductor Co., Ltd Neural network unit with neural memory and array of neural processing units that collectively perform multi-word distance rotates of row of data received from neural memory
US10423876B2 (en) 2016-12-01 2019-09-24 Via Alliance Semiconductor Co., Ltd. Processor with memory array operable as either victim cache or neural network unit memory
US10515302B2 (en) 2016-12-08 2019-12-24 Via Alliance Semiconductor Co., Ltd. Neural network unit with mixed data and weight size computation capability
US10565492B2 (en) * 2016-12-31 2020-02-18 Via Alliance Semiconductor Co., Ltd. Neural network unit with segmentable array width rotator
US10140574B2 (en) 2016-12-31 2018-11-27 Via Alliance Semiconductor Co., Ltd Neural network unit with segmentable array width rotator and re-shapeable weight memory to match segment width to provide common weights to multiple rotator segments
US10565494B2 (en) 2016-12-31 2020-02-18 Via Alliance Semiconductor Co., Ltd. Neural network unit with segmentable array width rotator
US10586148B2 (en) 2016-12-31 2020-03-10 Via Alliance Semiconductor Co., Ltd. Neural network unit with re-shapeable memory
US10942706B2 (en) 2017-05-05 2021-03-09 Intel Corporation Implementation of floating-point trigonometric functions in an integrated circuit device
US10936942B2 (en) * 2017-11-21 2021-03-02 Google Llc Apparatus and mechanism for processing neural network tasks using a single chip package with multiple identical dies

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4200930A (en) * 1977-05-23 1980-04-29 Burroughs Corporation Adapter cluster module for data communications subsystem
US4380046A (en) * 1979-05-21 1983-04-12 Nasa Massively parallel processor computer
US4365294A (en) * 1980-04-10 1982-12-21 Nizdorf Computer Corporation Modular terminal system using a common bus
US4443850A (en) * 1981-12-01 1984-04-17 Burroughs Corporation Interface circuit for subsystem controller
US4663706A (en) * 1982-10-28 1987-05-05 Tandem Computers Incorporated Multiprocessor multisystem communications network
US4816993A (en) * 1984-12-24 1989-03-28 Hitachi, Ltd. Parallel processing computer including interconnected operation units
US4720780A (en) * 1985-09-17 1988-01-19 The Johns Hopkins University Memory-linked wavefront array processor
JPH0740252B2 (ja) * 1986-03-08 1995-05-01 株式会社日立製作所 マルチプロセツサシステム
US5165023A (en) * 1986-12-17 1992-11-17 Massachusetts Institute Of Technology Parallel processing system with processor array and network communications system for transmitting messages of variable length
US5086498A (en) * 1987-01-23 1992-02-04 Hitachi, Ltd. Parallel computer with asynchronous communication facility
EP0367182A3 (de) * 1988-10-31 1992-07-22 Bts Broadcast Television Systems Gmbh Digitales Hochgeschwindigkeits-Rechersystem
FR2655750B1 (fr) * 1989-12-11 1992-02-14 Bretagne Occidentale Brest Uni Systeme de traitement de donnees multiprocesseur a bus actif reconfigurable.
US5291611A (en) * 1991-04-23 1994-03-01 The United States Of America As Represented By The Secretary Of The Navy Modular signal processing unit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10105516A1 (de) * 2001-02-07 2002-08-08 Hannes Max Hapke Verfahren zur Berechnung neuronaler Netze

Also Published As

Publication number Publication date
FR2686175B1 (fr) 1996-12-20
DE69300041D1 (de) 1995-02-16
FR2686175A1 (fr) 1993-07-16
EP0552074A1 (de) 1993-07-21
JPH0612393A (ja) 1994-01-21
EP0552074B1 (de) 1995-01-04
US5465375A (en) 1995-11-07

Similar Documents

Publication Publication Date Title
DE69300041T2 (de) Mehrfachprozessor-Datenverarbeitungssystem.
DE3883192T2 (de) Neuronale Netzwerkschaltung und -struktur.
DE19581638C2 (de) Rechenvorrichtung mit einem Mikroprozessor, einem neuralen Netz-Koprozessor und einer DMA-Steuervorrichtung
DE69430528T2 (de) Such/Sortier-Schaltung für Neuronalnetzwerke
DE69430870T2 (de) Innovative Neuronalschaltungsarchitektur
DE69430744T2 (de) Verbesserte Neuronalhalbleiterchipsarchitekturen und Neuronalnetzwerke darin
EP0349820B1 (de) Netzwerk -Baustein und Architektur für die programmierbare Emulation künstlicher neuronaler Netze mit digitaler Arbeitsweise
EP0875031B1 (de) Prozessor zur bildverarbeitung
DE3852909T2 (de) Lineare Kette von Parallelprozessoren und Benutzungsverfahren davon.
DE69218941T2 (de) Neuronale netzwerk architektur
DE68927474T2 (de) Neuro-Rechner
DE112019000336T5 (de) Massiv parallele neuronale inferenz-datenverarbeitungselemente
DE68927611T2 (de) Digitales neuronales Netwerk
DE69314824T2 (de) Neuronaler Prozessor mit verteilten synaptischen Zellen
DE3632639C2 (de) Einrichtung zum Hochgeschwindigkeitsverarbeiten von Bilddaten durch Faltung
DE3686828T2 (de) Hochleistungsparalleler vektorprozessor mit modifizierter register/elementprozessor konfiguration.
DE69609475T2 (de) Zweidimensionaler Assoziativprozessor und Datenübertragungsverfahren
DE112019000676T5 (de) Zentraler scheduler und anweisungszuteiler für einen neuronalen inferenzprozessor
EP3502974A1 (de) Verfahren zur realisierung eines neuronalen netzes
DE69517249T2 (de) Anordnung zur segmentierung eines diskreten datensatzes
EP0349819B1 (de) In integrierter Schaltungstechnik ausgeführtes digitales neuronales Netz
DE69426229T2 (de) Verfahren zur parallellen Bearbeitung von Fuzzy-Logik-Inferenzregeln und übereinstimmende Schaltkreisarchitektur mit Fuzzy-Eingabe und -Ausgabe
DE19528760A1 (de) Bildverarbeitende Schaltung eines hohen Integrationsgrads
DE69203592T2 (de) Elektronische Fuzzy-Logiksteuerung und zugehöriges Speicheraufbauverfahren.
DE69203700T2 (de) Architektur eines elektronischen Fuzzy-Logik-Kontroller.

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee