DE4425552C2 - Gatterarray - Google Patents

Gatterarray

Info

Publication number
DE4425552C2
DE4425552C2 DE4425552A DE4425552A DE4425552C2 DE 4425552 C2 DE4425552 C2 DE 4425552C2 DE 4425552 A DE4425552 A DE 4425552A DE 4425552 A DE4425552 A DE 4425552A DE 4425552 C2 DE4425552 C2 DE 4425552C2
Authority
DE
Germany
Prior art keywords
logic
signal
numbered
bus
level
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
DE4425552A
Other languages
English (en)
Other versions
DE4425552A1 (de
Inventor
Gregory S Snider
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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of DE4425552A1 publication Critical patent/DE4425552A1/de
Application granted granted Critical
Publication of DE4425552C2 publication Critical patent/DE4425552C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17736Structural details of routing resources
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having at least one potential-jump barrier or surface barrier; including integrated passive circuit elements with at least one potential-jump barrier or surface barrier
    • H01L27/0203Particular design considerations for integrated circuits
    • H01L27/0207Geometrical layout of the components, e.g. computer aided design; custom LSI, semi-custom LSI, standard cell technique
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17704Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form the logic functions being realised by the interconnection of rows and columns

Description

Die vorliegende Erfindung bezieht sich auf ein Gatter-Array, das ein zweidimensionales Array aus einer Mehrzahl von Lo­ gikzellen und Signalführungszellen umfaßt.
Für diese Beschreibung ist eine programmierbare Logikschal­ tung als digitale Schaltung mit fester Verbindung definiert, die durch einen Anwender konfiguriert werden kann, um andere digitale Systeme mit willkürlichen Topologien bei hoher Ge­ schwindigkeit zu emulieren. Sie kann verwendet werden, um sowohl Hochgeschwindigkeitslogiksimulatoren als auch konfi­ gurierbare Berechnungsmaschinen zu entwerfen, die fähig sind, Supercomputer bei bestimmten Zielen für einen Bruch­ teil der Kosten zu übertreffen. Programmierbare Logiksy­ steme, die zum Emulieren großer digitaler Schaltungen (mit hunderttausenden von Gattern) fähig sind, sind teuer, wobei sie typischerweise Kosten in der Größenordnung von einem bis zwei US-Dollar pro emuliertes Gatter aufweisen und eine große Anzahl von integrierten Schaltungen erfordern, die über mehrere komplexe gedruckte Schaltungsplatinen verteilt sind.
Eine Klasse von programmierbaren Logikschaltungen basiert auf der Field Programmable Gate Array Technology (FPGA- Technology = Feldprogrammierbare Gatterarray-Technik). Die grundsätzliche Idee bei diesem Ansatz besteht darin, eine Anzahl von FPGAs zusammen in einer festen Topologie zu ver­ binden. Jedes FPGA schließt zwei Arten von Mitteln ein: (1) eine Anzahl von Logikzellen, die programmiert oder konfigu­ riert werden können, um eine bestimmte logische Funktion auszuführen (wie z. B. "UND" oder "EXLUSIVE ODER"); und (2) Signalführungsmittel, die programmiert sein können, um die Logikzellen miteinander und mit externen Eingangs/Ausgangs- Anschlußstiften zu verbinden. Das programmierte FPGA bildet folglich eine nützliche logische Schaltung, die eine Teil­ menge des gesamten zu simulierenden Logiksystems ist; der gesamte Satz von FPGAs simuliert dann zusammen das erwünsch­ te Logiksystem. Nachdem die FPGAs in diesen Architekturen feste physikalische Verbindungen zwischeneinander haben, die nicht verändert werden können, erfordert die Simulierung ei­ nes Logiksystems eine Abbildung der Schaltung des interes­ sierenden Logiksystems auf die verbundenen FPGAs derart, daß die Logikfunktionen und Verbindungen der ursprünglichen Schaltung genau durch die Programmierung der FPGAs darge­ stellt ist. Eine Hochgeschwindigkeitssimulation ist möglich, nachdem die Logikzellen innerhalb der FPGAs ihre Berechnun­ gen parallel durchführen, wobei sie ihre Ergebnisse mitein­ ander durch das Signalführungsnetzwerk austauschen.
Der Entwurf einer programmierbaren Logikschaltung mit einer hohen Kapazität (größer als 1.000.000 Gatter) und hoher Ge­ schwindigkeit (einer Taktrate größer als 1 MHz) beinhaltet verschiedene, oft einander entgegenstehende, Herausforde­ rungen. Erstens ist die Abbildung oder "Übersetzung" eines willkürlichen Logiksystems auf die feste Topologie ein schwieriges und berechnungsmäßig potentiell teueres Verfah­ ren. Dieses Problem wird im wesentlichen reduziert, wenn es die Architektur ermöglicht, das Abbildungsproblem in einen Satz einfacherer, locker verbundener Teilprobleme auf zu­ teilen.
Weil eine typische programmierbare Struktur zur Emulation einer großen Vielzahl von möglichen Anwenderentwürfen oder Algorithmen verwendet wird, existiert zweitens eine erheb­ lich höhere Signalführung und logischer "Mehraufwand" als es bei einem optimierten Layout des Entwurfs eines Anwenders sein würde. Dieser Mehraufwand muß innerhalb sinnvoller Grenzen gehalten werden, während immer noch ein übersetzba­ res Ziel vorhanden ist.
Drittens sind der Entwurf der Architektur und dessen Ausfüh­ rung notwendigerweise miteinander verbunden, wenn die Daten­ wege bezüglich der Verzögerung optimiert werden.
Abschließend beeinflußt die Topologie und die physikalische Organisation der Architektur direkt die Schwierigkeit ihrer Ausführung. Reguläre Strukturen mit einfachen Verbindungen sind leichter zu bauen.
Auf diese Probleme wird am besten durch Logikstrukturen ein­ gegangen, die eine hierarchische Struktur für das Signal­ führungsstrukturnetzwerk verwenden. Die Signalführungsstruk­ tur besteht aus einem Baum aus Signalführungsschaltungen. Der Wurzelknoten des Baums stellt die Eingangs- und Aus­ gangsleitung für das FPGA bereit. Die Blattknoten des Baums sind mit den Logikzellen verbunden.
Es wäre vorteilhaft, eine solche Struktur auf einem einzel­ nen Wafer bereitzustellen, um die Anzahl von externen Ver­ bindungen zu minimieren. Bekannte Architekturen von program­ mierbaren Logiksystemen weisen ein Fehlen ihrer Anpassungs­ fähigkeit an eine Wafermaßstabsintegration auf. Bei bekann­ ten Systemen wurde die Signalführungsfunktion auf getrennten Signalführungschips ausgeführt. Das heißt das System wurde aus zwei Klassen von grundsätzlichen Chips, Signalführungs- und Logik-Chips, aufgebaut. Dieser Ansatz hat zwei Hauptnachtei­ le, wenn er auf Entwürfe, die eine Wafermaßstabsausführung erfordern, angewendet wird. Wenn die Topologie des Systems verändert wird, muß erstens der Wafer vollständig neu ent­ worfen werden. Wenn man z. B. ein System mit einer unter­ schiedlichen Anzahl von Ebenen der Baumsignalführungsstruk­ tur entwerfen würde, wäre es notwendig, die Größe und Form aller Signalführungszellen zu ändern. Die neuen Zellen müßten dann auf dem Wafer angepaßt werden.
Zweitens umfaßt diese Art des Entwurfs Schwierigkeiten beim Anpassen von Komponentenfehlern. Ein wichtiger Aspekt der Wafermaßstabsintegration ist die Notwendigkeit eine Anpas­ sung zur Kompensation von Komponentenherstellungsfehlern vorzunehmen. Typischerweise werden zusätzliche Komponenten vorgesehen und einige Einrichtungen zum Ersetzen der fehler­ haften Komponenten durch die zusätzlichen Komponenten sind vorgesehen. Alternativ sollte das System fähig sein, ohne eine oder mehrere dieser Komponenten angemessen zu funktio­ nieren, vorausgesetzt die Orte der nicht-funktionierenden Komponenten sind bekannt.
Aus der EP 0461798 ist bereits eine konfigurierbare Ver­ bindungsstruktur für ein programmierbares Gate-Array be­ kannt, welches drei verschiedene Typen von konfigurierbaren Elementen umfaßt, welche auf das Anwendersystem durch eine Spezifikation in einem Konfigurationsspeicher abgestellt sind. Die drei konfigurierbaren Elemente sind konfigurier­ bare logische Blöcke, konfigurierbare Eingangs/Ausgangs- Blöcke am Außenumfang der Schaltung und ein programmierbares Verbindungsnetzwerk. Es sind Logikzellenbusstrukturen und Signalbusstrukturen vorgesehen. Programmierbare Verbindungs­ schalter an den jeweiligen Schnittstellen von horizontalen und vertikalen Bussen dienen zur Schaltung einer Verbindung in Abhängigkeit von Programmdaten in einem Konfigurations­ speicher. Die konfigurierbaren logischen Blöcke sind jedoch nicht hierarchisch gruppiert.
Der Erfindung liegt die Aufgabe zugrunde, ein Gatter-Array, das ein zweidimensionales Array aus Logik- und Signalfüh­ rungszellen umfaßt, so weiterzubilden, daß mit geringerem Aufwand ein gewünschtes Logiksystem geschaffen werden kann.
Diese Aufgabe wird durch ein Gatter-Array gemäß Patentan­ spruch 1 gelöst.
Ein Vorteil der vorliegenden Erfindung besteht darin, daß ein FPGA-System geschaffen wird, das leichter als bekannte FPGA-Systeme an die Wafermaßstabsintegration anpaßbar ist.
Ein weiterer Vorteil der vorliegenden Erfindung besteht da­ rin, daß ein FPGA geschaffen wird, das aus einer einzelnen Teileinheit aufgebaut sein kann.
Die vorliegende Erfindung umfaßt eine Logik- und Signalfüh­ rungszelle, die insbesondere gut zur Verwendung beim Aufbau von FPGAs angepaßt ist. Die Logik- und Signalführungszelle schließen eine Logikzelle mit einem Logikzellenbus ein, der p Signalleitungen einschließt, wobei p<1. Die Logikzelle führt Operationen bezüglich Signalen durch, die auf zumin­ dest einer der Signalleitungen empfangen werden, und erzeugt Signale auf zumindest einer der Signalleitungen, die die Ergebnisse der Operationen anzeigen. Die Logik- und Signal­ führungszelle schließt ebenfalls eine Mehrzahl von Signal­ bussen ein, wobei jeder Signalbus eine Mehrzahl von Signal­ leitungen einschließt. Die Signalbusse sind aufeinanderfol­ gend von Null bis zu einer vorbestimmten Zahl numeriert. Die Logik- und Signalführungszelle schließt ebenfalls eine Mehr­ zahl von programmierbaren Schaltern ein, wobei jeder Schal­ ter Verbindungen zwischen einer Signalleitung in einem der Busse und einer Signalleitung in einem weiteren der Busse herstellt. Die Schalter sind derart angeordnet, daß zumin­ dest eine der Signalleitungen im Signalbus k mit zumindest einer der Signalleitungen im Signalbus (k-1) verbunden wer­ den kann, für k = 1, 2, . . ., und jede der p Signalleitungen in dem Logikzellenbus kann mit einer Signalleitung im Bus 0 verbunden sein.
Eine Mehrzahl dieser Logik- und Signalführungszellen kann zusammengeschaltet sein, um ein FPGA zu bilden. Die Signal­ leitungen der ungradzahlig numerierten Busse sind in einem horizontalen parallelen Array angeordnet, und die Signallei­ tungen der gradzahlig numierierten Busse sind in einem ver­ tikalen parallelen Array angeordnet. Jede Signalleitung in einer Logik- und Signalführungszelle ist mit einer entspre­ chenden Signalleitung in einer benachbarten Logik- und Sig­ nalführungszelle verbunden, vorausgesetzt, eine benachbarte Zelle ist vorhanden, und vorausgesetzt, daß keine Unterbre­ chung der Signalleitung vorhanden ist. Unterbrechungen der Signalleitungen sind an vorbestimmten Orten des zweidimen­ sionalen Arrays vorhanden, wobei die Orte von der Busnummer abhängen, in der die Signalleitung enthalten ist.
Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend unter Bezugnahme auf die beiliegenden Zeichnungen näher erläutert. Es zeigen:
Fig. 1 ein Blockdiagramm eines hierarchischen FPGA;
Fig. 2 ein Blockdiagramm eines bekannten Layouts eines hierarchischen FPGA;
Fig. 3 ein Blockdiagramm einer Logik- und Signalführungs­ zelle gemäß der vorliegenden Erfindung;
Fig. 4 ein Blockdiagramm eines Abschnitts eines FPGA, das aus den Logik- und Signalführungszellen der vor­ liegenden Erfindung aufgebaut ist;
Fig. 5-8 die Busverbindungen auf verschiedenen Ebenen eines beispielhaften FPGA gemäß der vorliegenden Erfin­ dung;
Fig. 9 ein Blockdiagramm eines weiteren Ausführungsbei­ spiels einer Logik- und Signalführungszelle gemäß der vorliegenden Erfindung; und
Fig. 10 ein Blockdiagramm eines weiteren Ausführungsbei­ spiels einer Logik- und Signalführungszelle gemäß der vorliegenden Erfindung.
Die vorliegende Erfindung betrifft eine Architektur für pro­ grammierbare Logikschaltungen, die auf die Stärken und Schwächen der Wafermaßstabsintegration gut angepaßt ist, wobei die Möglichkeit für programmierbare Logiksysteme mit geringeren Kosten und besserem Verhalten geschaffen wird, als dies bisher erreicht wurde. Die Architektur ist ausge­ hend von einer einzelnen Zelle aufgebaut, die sowohl die Si­ gnalführungsstruktur für ein Mehrebenensignalführungsnetz­ werk als auch eine Logikzelle einschließt. Die Zellen können dann auf eine solche Art kombiniert werden, daß sie die Oberfläche eines Wafers kachelartig bedecken.
Die vorliegende Erfindung kann anhand eines einfachen FPGAs, das einen hierarchischen Signalführungsentwurf verwendet, wie es in Fig. 1 durch das Bezugszeichen 10 bezeichnet ist, leichter verstanden werden. Das FPGA 10 besteht aus einer Mehrzahl von Logikzellen 12-19, die durch drei Ebenen von Routern (Signalführungsvorrichtungen), die bei 22-24 gezeigt sind, verbunden sind. Die erste Ebene der Router besteht aus den vier Routern, die die Logikzellen verbinden. Die zweite Ebene der Router besteht aus den Routern 25 und 26, die die erste Ebene der Router verbinden. Die abschließende Ebene der Router, die bei 24 gezeigt ist, besteht aus dem Router 27, der die zweite Ebene der Router verbindet und die Ein­ gangs/Ausgangsleitungsverbindungen bereitstellt. Jeder der Router umfaßt eine Mehrzahl von Schaltpunkten zur Herstel­ lung von Querverbindungen zwischen den Bussen, die den Router verlassen, und den Bussen, die in den Router eintre­ ten. Ein typischer Schaltpunkt ist bei 30 gezeigt. Diese Querverbindungsschalter werden verwendet, um verschiedene Verbindungen zwischen den Logikzellen und der Eingangs- und Ausgangsleitung herzustellen. Ein Weg, der die Logikzellen 12 und 15 verbindet, ist in Fig. 1 fettgedruckt dargestellt.
Die Art, auf die ein FPGA dieser Art bei bekannten Systemen entworfen wurde, ist in Fig. 2 bei 100 gezeigt. Das FPGA 100 schließt drei Ebenen von Routern mit einer Ausgangsverzwei­ gung (fan-out) von vier ein. Jede Ebene der Router verbindet vier Router (oder Logikzellen) in der Ebene unter dieser. Die Ebenen der Router können als ein Satz von geschachteten Zellen betrachtet werden, die die Oberfläche der integrier­ ten Schaltung bedecken. Das kleinste Netzwerk besteht aus den Logikzellen und den Routern der Ebene 0. Der Router 101 ist z. B. mit vier Logikzellen verbunden, von denen die Lo­ gikzelle 104 eine typische ist. Vier solcher Verbindungen sind dann mit dem Router 102 verbunden. Vier Kombinationen, die bei einem Router der Ebene 1 abschließen, sind dann mit dem Router 103 verbunden, und so weiter.
Während diese Art der Struktur die Oberfläche eines Wafers füllt und daher eine effiziente Verwendung der Oberfläche erzeugt, hat sie verschiedene Nachteile. Erstens gibt es eine große Anzahl von unterschiedlichen Strukturen, die not­ wendig sind, um das FPGA 100 aufzubauen. Jede Routerebene verwendet Router, die sich von denen, die in anderen Ebenen verwendet werden, unterscheiden. Daher würde ein System mit einer Ausgangsverzweigung von vier mit 64.000 Logikzellen acht Ebenen von Routern zusätzlich zu den Logikzellen erfor­ dern. Daher werden neun grundsätzliche Strukturen benötigt, um ein solches System aufzubauen. Wenn z. B. die Logikzelle oder der Schalterentwurf, der bei den Routern verwendet wird, verändert wird, müssen alle Routerstrukturen neu ent­ worfen werden, um sich der neuen Beabstandung auf dem Wafer anzupassen. Daher können die Kosten der Änderung eines großen FPGA-Entwurfs unerschwinglich sein.
Zweitens erfordert die Wafermaßstabsintegration eine Ein­ richtung zum Anpassen defekter Schaltpunkte und/oder Logik­ zellen. Wenn eine Logikzelle fehlerhaft ist, kann das Sy­ stem, das die Anwendungen, die auf dem FPGA laufen, über­ setzt, die Logikzelle vermeiden. Ein fehlerhafter Schalt­ punkt kann jedoch den Verlust vieler Logikzellen verursa­ chen, wenn der Router, dem diese angeordnet ist, deaktiviert wird. Bekannte FPGA-Systeme stellen für solche Fehler keine Möglichkeit bereit, die verhindert, daß der Router und sein zugeordneter Teil-Baum verlorengeht.
Ein FPGA gemäß der vorliegenden Erfindung ist aus einer einzelnen Logik- und Signalführungszelle aufgebaut, die die Signalführungsfunktionen eines hierarchischen Mehrebenensy­ stems, wie z. B. die teilweise Kachelung, die in Fig. 2 ge­ zeigt ist, mit der Logikzelle verbindet. Eine Logik- und Signalführungszelle 200 gemäß der vorliegenden Erfindung ist schematisch in Fig. 3 gezeigt. Bezüglich einer Logikzelle wird angenommen, daß diese P Anschlußstifte hat, die über einen Bus 204 mit einem Signalführungsbus 207 der Ebene 0 verbun­ den sind. Schaltpunkte 230 werden verwendet, um bestimmte Verbindungen zwischen den Leitungen des Busses 204 und denen des Busses 207 herzustellen. Die Anzahl von Leitungen im Bus 207 wird K mal P sein. Die Art, auf die K bestimmt wird, wird im folgenden genauer beschrieben. Für die derzeitige Beschreibung ist es ausreichend festzustellen, daß es die Kreuzpunkte jeder der P Leitungen im Bus 204 ermöglichen, mit einer oder mehr eines entsprechenden Satzes von K Lei­ tungen im Bus 207 verbunden zu werden. Verbindungen zwischen den Signalführungsfunktionen der Ebene 0 und den Signalfüh­ rungsfunktionen der Ebene 1 sind durch die Kreuzpunkte 231 vorgesehen. Die Kreuzpunkte 231 verbinden die QP Leitungen des Busses 213 mit den KP Leitungen des Busses 207. Die Art, auf die Q bestimmt wird, wird ebenfalls im folgenden genauer beschrieben.
Im allgemeinen existiert ein Bus für jede Signalführungsebe­ ne. Die geraden Ebenen entsprechen den horizontalen Bussen 207-209. Die ungeraden Ebenen entsprechen den vertikalen Bussen 211-213. Die Anzahl von Leitungen in den geraden Bus­ sen sind bei dem bevorzugten Ausführungsbeispiel der vorlie­ genden Erfindung gleich. Auf ähnliche Weise ist die Anzahl der Leitungen in den Bussen der ungeraden Ebenen in dem be­ vorzugten Ausführungsbeispiel der vorliegenden Erfindung ebenfalls gleich. Ausführungsbeispiele, die dieser Regel nicht folgen, werden jedoch trotzdem funktionieren. Dazwi­ schen existiert ein Satz von Schaltpunkten, die jede Ebene der Busse verbinden; daher wird der k-te Bus einen Satz von Schaltpunkten haben, die ihn mit dem (k-1)-ten Bus verbinden und einen weiteren Satz von Schaltpunkten, die ihn mit dem (k+1)-ten Bus verbinden.
Die optimale Anzahl von horizontalen und vertikalen Signal­ führungsleitungen, die für jeden Router benötigt werden, ist eine Funktion der Ausgangsverzweigung der Signalführungsstu­ fen in der Hierarchie und der Anzahl der Logikmodule in dem FPGA. Die Anzahl kann durch Verwendung der Regel von Rent bestimmt werden. Die Regel von Rent besagt, daß eine Logik­ schaltung, die aus n Komponenten, z. B. Logikgattern, mit einem Durchschnitt von p Signalanschlußstiften pro Kompo­ nente besteht, pnα Eingangs- und Ausgangssignale erfordert, wobei α eine Zahl zwischen 0,5 und 0,75 ist.
Eine wichtige Anwendung der Regel von Rent ist die ungefähre Vorhersage der Ergebnisse einer Min-Cut-Aufteilung (= Auf­ teilung mit minimalem Schnitt) eines Logiksystems. Min-Cut- Aufteilungen beziehen sich auf den Prozeß der Aufteilung einer Schaltung in N ungefähr gleichgroße Teile, derart, daß die Anzahl von Signalen, die von einem Teil zu einem wei­ teren übergeht, minimal ist. Es sei z. B. eine Schaltung mit g Gattern mit einem Durchschnitt von p Anschlußstiften pro Gatter angenommen, die in zwei Teile unter Verwendung der Min-Cut-Aufteilung geteilt wird. Nach der Aufteilung wird jede Halbschaltung aus etwa g/2 Gattern bestehen. Für die Anzahl von Signalleitungen, die durch die Aufteilung aufge­ schnitten werden, würde erwartet werden, daß diese bei p(g/2)a liegt. Durch rekursives Anwenden der Nin-Cut-Auftei­ lungsprozedur auf eine Schaltung, bis in jedem Teil eine kleine Anzahl von Zellen existiert, kann eine hierarchische Struktur gewonnen werden. Jede Ebene der Hierarchie stellt eine Ebene der Aufteilung dar.
Ein Signalführungsteilnetzwerk kann als ein horizontales Array von Routern ausgeführt sein. Jeder Router verbindet ß Signalleitungen mit der Ebene über ihm und mit N Sätzen von γ Signalleitungen der Ebene unter ihm. In dem Fall, in dem N = 4 und α =q0,5 ist, kann gezeigt werden, daß β = 2γ ist. Es kann ebenfalls gezeigt werden, daß für ein FPGA mit t Logik­ zellen die optimale Anzahl von horizontalen Leitungen pro Zelle etwa (3p/4)log₂(t) ist, und die optimale Anzahl von vertikalen Leitungen pro Zelle etwa (3p/8)log₂(t) ist.
Die Schaltpunkte, die die horizontalen und vertikalen Lei­ tungen verbinden, müssen nicht vollständig besetzt sein. Jede horizontale oder vertikale Leitung entspricht einer horizontalen Leitung in einem Router in einem topologisch äquivalenten Netzwerk, wie es in Fig. 1 gezeigt ist. Die horizontalen Routerleitungen in dem hierarchischen Netzwerk haben alle eine feste Anzahl von Schaltern darauf. Daher ist es für jede Leitung in dem abschließenden Netzwerk, das durch die Verbindung der Logik- und Signalführungszellen miteinander erhalten wird, ausreichend, dieselbe Anzahl von Schaltern zu haben. Wie es im folgenden genauer beschrieben werden wird, sind Signalführungsleitungen höherer Ebenen bei dem abschließenden Gatterarray länger; daher kann die Anzahl von Schaltern von Längeneinheit, d. h. pro Logik- und Signal­ führungszelle niedriger sein als für Signalführungsleitungen niedrigerer Ebenen. Es sei angenommen, daß die Ebene 0/Ebene 1-Schaltpunkte vollständig besetzt sind, d. h. es existiert an jeder Schnittstelle einer horizontalen und einer verti­ kalen Signalführungsleitung ein Schalter, dann müssen die Ebene 2/Ebene 3-Schaltpunkte und die Ebene 3/Ebene 4-Schalt­ punkte lediglich zu einem Viertel besetzt sein. Auf ähnliche Weise müssen die Ebene 4/Ebene 5-Schaltpunkte lediglich zu 1/16 besetzt sein.
Es wird darauf hingewiesen, daß die obige Abstimmung für die optimale Anzahl von Signalleitungen und Schaltpunkten an­ nimmt, daß es in keiner der Signalleitungen oder in keinem der Schaltpunkte Defekte gibt. Zusätzliche Signalleitungen und Schaltpunkte können eingeschlossen sein, um in dem Fall, daß das nachfolgende Testen einer Logikzelle anzeigt, daß diese einen Fehler aufweist, Ersatz bereitzustellen.
Die Art, auf die die Logik- und Signalführungszellen gemäß der vorliegenden Erfindung verbunden sind, um ein FPGA zu bilden, wird nun für den Fall N = 4 detaillierter beschrieben. Fig. 4 zeigt einen Abschnitt eines FPGA 300, das aus Logik- und Signalführungszellen gemäß der vorliegenden Erfindung aufgebaut ist. Eine typische Logik- und Signalführungszelle ist bei 302 gezeigt. Die Signalführungsbusse der Ebene 0, 2 und 4 sind bei 303-305 gezeigt. Die Signalführungsbusse der Ebene 1, 3 und 5 sind bei 306-308 gezeigt. Die niedrigste Ebene der Hierarchie, die als Ebene 0 bezeichnet wird, ist durch horizontales Verbinden von Gruppen von vier Logik- und Signalführungszellen aufgebaut. Eine typische Gruppe ist bei 312 gezeigt. Innerhalb dieser Gruppe sind die Signalführ­ ungsbusse 303-305 jeder Zelle mit den entsprechenden Signal­ führungsbussen der benachbarten Logik- und Signalführungs­ zelle verbunden. An den Grenzen der Gruppe ist eine Unter­ brechung im Signalführungsbus der Ebene 0 eingefügt, wie es bei 310 gezeigt ist.
Auf ähnliche Weise ist die erste Ebene der Hierarchie durch Gruppieren von vier horizontalen Gruppen der Ebene 0 aufge­ baut, um eine 4×4-Gruppierung von Logik- und Signalführungs­ zellen zu bilden. Solche Gruppierungen sind bei 314 und 316 gezeigt. Innerhalb jeder dieser 4×4-Gruppierungen sind alle vertikalen Busse 306-307 einer gegebenen Logik- und Signal­ führungszelle mit den entsprechenden vertikalen Bussen der benachbarten Logik- und Signalführungszellen verbunden. An den Grenzen der Gruppe ist in jedem der Busse der Ebene 1 eine Unterbrechung eingefügt, wie es bei 320 gezeigt ist.
Die zweite Ebene der Hierarchie ist durch Kombinieren von vier der 4×4-Gruppierungen in der horizontalen Richtung auf­ gebaut. Innerhalb der Gruppierung der zweiten Ebene sind die Signalführungsbusse der Ebene 2, 3, 4 . . . jeder der Zellen mit den entsprechenden Bussen der benachbarten Zellen verbunden. An den Grenzen jeder Gruppierung der zweiten Ebene ist in dem Signalführungsbus der Ebene 2 jeder Zelle an der Kante eine Unterbrechung eingefügt.
Die dritte Ebene der Hierarchie ist durch Kombinieren von vier Ebene 2 Gruppierungen in der vertikalen Richtung aufge­ baut. Innerhalb der Gruppierung der dritten Ebene sind die Signalführungsbusse der Ebenen 3, 4, . . . jeder Zelle mit den entsprechenden Bussen der benachbarten Zellen verbunden. An den Grenzen jeder Gruppierung der dritten Zelle ist in dem Signalführungsbus der Ebene 3 jeder Zelle an der Kante eine Unterbrechung eingefügt. Eine vereinfachte Darstellung der Busverbindungen der Ebenen 0-3 für den gesamten 16×16-Array von Logik- und Signalführungszellen, ist in den Fig. 5-8 ge­ zeigt. Dieser Prozeß wird für so viele Ebenen fortgeführt, wie sie in dem bestimmten FPGA erwünscht sind.
Die Art, auf die die horizontalen und vertikalen Busse bei dem bevorzugten Ausführungsbeispiel der vorliegenden Erfin­ dung verbunden werden, kann mit Bezug auf Fig. 9 leichter verstanden werden, die eine Logik- und Signalführungszelle 400 mit einer Logikzelle 402 darstellt. Die horizontalen Busse 412 sind mit der nächsten horizontalen Zelle über ei­ nen Satz von programmierbaren, bi-direktionalen Puffern 420 an der Schnittstelle mit der benachbarten Zelle auf einer Seite verbunden. Auf ähnliche Weise sind die vertikalen Bus­ leitungen 414 mit der benachbarten vertikalen Zelle über ei­ nen Satz von programmierbaren, bi-direktionalen Puffern 410 an der Schnittstelle mit der benachbarten Zelle über dieser Zelle verbunden. Jeder Puffer kann programmiert sein, um die Leitungen auf jeder seiner Seiten zu isolieren. Daher können die Signalübertragungsleitungslängen einfach durch geeignete Konfiguration der Puffer bestimmt werden.
Es ist für Fachleute offensichtlich, daß die Unterbrechungen der Pufferleitungen ebenfalls nur durch Aufbrechen der Lei­ tungen an geeigneten Orten hergestellt werden könnten. Die­ ser Ansatz hat den Vorteil, daß keine Puffer auf jeder Lei­ tung jeder Logik- und Signalführungszelle benötigt wird. Dieser Ansatz führt jedoch zu einer Zellenstruktur, bei der jede Logik- und Signalführungszelle nicht ganz identisch zu jeder anderen Logik- und Signalführungszelle ist. Es ist für Fachleute ebenfalls offensichtlich, daß eine Kombination dieser zwei Ansätze verwendet werden kann.
Die oben beschriebene Architektur ist auf die Wafermaßstabs­ integration gut angepaßt. Ein FPGA-Chip kann selbst über einen Wafer gekachelt sein. Die einzelnen Chips sind auf dem Wafer derart ausgerichtet, daß die horizontalen und vertika­ len Signalübertragungsleitungen von benachbarten Chips ver­ bunden sind. Bei dem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung enthält jeder Chip eine Konfigurati­ ons- und Steuerungsschaltung für die Logik- und Signalfüh­ rungszellen innerhalb seines Bereichs.
Während die oben beschriebenen Ausführungsbeispiele der vor­ liegenden Erfindung bezüglich der gleichen Ausgangsverzwei­ gung auf jeder Ebene der Hierarchie beschrieben wurde, ist es für Fachleute offensichtlich, daß Systeme mit vermischter Ausgangsverzweigung, bei der alle Router auf einer gegebenen Ebene die gleiche Ausgangsverzweigung haben, möglich sind. Bei einem solchen System kann die Ausgangsverzweigung bei unterschiedlichen Ebenen der Hierarchie unterschiedlich sein. Die bevorzugte Ausgangsverzweigung liegt im Bereich von 4 bis 16.
Während die oben beschriebenen Ausführungsbeispiele der vor­ liegenden Erfindung eine wesentliche Verbesserung gegenüber dem Stand der Technik darstellen, können, wenn dies der Raum ermöglicht, den Logik- und Signalführungszellen zusätzliche Kreuzschienenschalter hinzugefügt werden, um das Systemver­ halten zu verbessern. Eine Logik- und Signalführungszelle 500, die diese zusätzlichen Schaltpunkte verwendet, ist in Fig. 10 dargestellt. Die Logik- und Signalführungszelle 500 unterscheidet sich von den oben beschriebenen Logik- und Signalführungszellen dahingehend, daß die Logikzelle 502 ebenfalls direkt mit allen Ebenen der Signalführungshierar­ chie verbunden ist. Dies wird durch Einführen von Schalt­ punkten erreicht, die die p Signalleitungen der Logikzelle 502 mit den Signalleitungen jedes Signalführungsbusses ober­ halb des Signalführungsbusses der Ebene 0 verbinden. Die Schaltpunkte, die den Bussen 504 und 505 entsprechen, sind bei 531 bzw. 532 dargestellt. Diese entsprechen den ungrad­ zahligen Ebenen 506-508, die bei 520-522 gezeigt sind. Keine zusätzlichen Schaltpunkte sind für den Signalführungsbus 503 der Ebene 0 nötig, da dieser Bus bereits mit den Signallei­ tungen der Signalführungszelle 502 verbunden ist.
Die Verbindung einer Logikzelle mit allen Schichten der Sig­ nalführung, die durch die Logikzelle führen, ermöglicht Ab­ kürzungen bei der Signalführung. Ohne zusätzliche Schalt­ punkte muß ein Signal, das zwei weit beabstandete Logikzel­ len verbindet, von seiner Quelle aus die Hierarchie nach oben laufen und dann die Hierarchie zurück nach unten zu seinem Ziel laufen. Die zusätzlichen Verbindungen ermög­ lichen es, dies durch direktes Hüpfen von der Signalquelle zu der höchsten Ebene der Signalführung, die benötigt wird, um die Verbindung mit dem Ziel herzustellen, abzukürzen. Auf ähnliche Weise kann das Signal am Zielpunkt direkt von einer Ebene höher als Null geführt werden. Diese Art der Signal­ führung reduziert den Mehraufwand und die Laufzeitverzöge­ rungen.

Claims (4)

1. Gatterarray, das ein zweidimensionales Array aus einer Anzahl von Logik- und Signalführungszellen (200; 400; 500) umfaßt, wobei jede Logik- und Signalführungszelle folgende Merkmale aufweist:
eine Logikzelle (202; 402; 502) mit einem Logikzellen­ bus (204), der p-Signalleitungen einschließt, wobei die Logikzelle Operationen bezüglich Signalen durchführt, die auf zumindest einer der Signalleitungen empfangen werden, und die Signale auf zumindest einer der Signal­ leitungen erzeugt, die die Ergebnisse der Operationen anzeigen, und horizontalen (207-209) bzw. vertikalen (211-213) Signalbusabschnitten, die mit den horizonta­ len bzw. vertikalen Signalbusabschnitten horizontal bzw. vertikal angrenzender Logik- und Signalführungs­ zellen (200; 400; 500) verbindbar sind,
wobei jeder Signalbusabschnitt (207-209), (211-213) eine Mehrzahl von Signalleitungen einschließt, wobei die Si­ gnalbusabschnitte in den Logik- und Signalführungszel­ len jeweils aufeinanderfolgend von 0 bis zu einem vor­ bestimmten Wert numeriert sind; und
eine Mehrzahl von programmierbaren Schalteinrichtungen, wobei jede der Schalteinrichtungen eine Einrichtung zum Verbinden einer Signalleitung in einem der Busabschnit­ te (207-209), (211-213) mit einer Signalleitung in ei­ nem weiteren der Busabschnitte (207-209), (211-213) be­ reitstellt, wobei die Mehrzahl von Schalteinrichtungen (231, 232) derart angeordnet ist, daß zumindest eine der Signalleitungen im Signalbusabschnitt k mit zumin­ dest einer der Signalleitungen im Signalbusabschnitt (k-1), für k = 1 bis zu dem vorbestimmten Wert, verbun­ den werden kann, und daß jede der p-Signalleitungen in dem Logikzellenbus (204) mit einer Signalleitung zumin­ dest im Busabschnitt 0 verbindbar ist,
wobei die Signalleitungen der ungeradzahligen Busab­ schnitte (211-213) in einem vertikalen parallelen Array angeordnet sind, und die Signalleitungen der geradzah­ ligen Busabschnitte (207-209) in einem horizontalen pa­ rallelen Array angeordnet sind;
wobei die Logik und Signalführungszellen (202; 402; 502) in Gruppierungsebenen derart angeordnet sind, daß
N Logik- und Signalführungszellen horizontal angeordnet eine Gruppierung der Ebene 0 bilden,
N Gruppierungen der Ebene 0 vertikal angeordnet eine Gruppierung der Ebene 1 bilden,
jeweils N Gruppierungen einer ungeradzahligen Ebene (2n-1; nε N) horizontal angeordnet eine Gruppierung einer geradzahligen Ebene (2n) bilden; und
jeweils N Gruppierungen einer geradzahligen Ebene (2n; nε N) vertikal angeordnet eine Gruppierung einer unge­ radzahligen Ebene (2n+1) bilden.
2. Gatterarray gemäß Anspruch 1, bei dem
alle horizontalen (207-209) bzw. vertikalen (211-213) Busabschnitte aller horizontal bzw. vertikal aneinan­ dergrenzenden Logik- und Signalführungszellen (202; 402; 502) in den Gruppierungen der Ebenen 0 und 1 ver­ bunden sind,
bei horizontal nebeneinander angeordneten Gruppierungen der geradzahligen Ebenen (2n) jeweils alle geradzahli­ gen horizontalen Busabschnitte (207-209), deren Nume­ rierung größer ist als die Numerierung der genannten geradzahligen Ebene, derjenigen Logik- und Signalfüh­ rungszellen miteinander verbunden sind, die sich in verschiedenen Gruppierungen der genannten geradzahligen Ebene (2n) befinden und horizontal aneinandergrenzen, und
bei vertikal nebeneinander angeordneten Gruppierungen der ungeradzahligen Ebenen (2n-1) jeweils alle ungerad­ zahligen vertikalen Busabschnitte, deren Numerierung größer ist als die Numerierung der genannten ungerad­ zahligen Ebene, derjenigen Logik- und Signalführungs­ zellen (202; 402; 502) miteinander verbunden sind, die sich in verschiedenen Gruppierungen der genannten unge­ radzahligen Ebene (2n-1) befinden und vertikal aneinan­ dergrenzen.
3. Gatterarray gemäß Anspruch 1 oder 2, das ferner folgen­ des Merkmal aufweist:
eine Mehrzahl von programmierbaren Puffereinrichtungen (410, 420), wobei jede Puffereinrichtung (410, 420) in die entsprechende Signalleitung der Signalbusse (207- 209, 211-213, 412, 414) integriert ist, wobei jede Puf­ fereinrichtung (410, 420) eine Einrichtung umfaßt, um eine Unterbrechung der Signalleitung, in die diese inte­ griert ist, hervorzurufen.
4. Gatterarray gemäß einem der Ansprüche 1 bis 3, bei dem die Mehrzahl von programmierbaren Schalteinrichtungen (231, 232) jeder der p Signalleitungen in der Logikzelle ermöglicht, mit einer entsprechenden Signalleitung in jedem der Signalbusse (207-209, 211-213, 412, 414) ver­ bunden zu werden.
DE4425552A 1993-07-19 1994-07-19 Gatterarray Expired - Fee Related DE4425552C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US9429493A 1993-07-19 1993-07-19

Publications (2)

Publication Number Publication Date
DE4425552A1 DE4425552A1 (de) 1995-02-02
DE4425552C2 true DE4425552C2 (de) 1996-08-01

Family

ID=22244332

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4425552A Expired - Fee Related DE4425552C2 (de) 1993-07-19 1994-07-19 Gatterarray

Country Status (4)

Country Link
US (1) US5519629A (de)
JP (1) JPH0766718A (de)
DE (1) DE4425552C2 (de)
GB (1) GB2280293B (de)

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9312674D0 (en) * 1993-06-18 1993-08-04 Pilkington Micro Electronics Configurabel logic array
US5457410A (en) * 1993-08-03 1995-10-10 Btr, Inc. Architecture and interconnect scheme for programmable logic circuits
US6462578B2 (en) 1993-08-03 2002-10-08 Btr, Inc. Architecture and interconnect scheme for programmable logic circuits
US6051991A (en) * 1993-08-03 2000-04-18 Btr, Inc. Architecture and interconnect scheme for programmable logic circuits
JP3727065B2 (ja) 1995-05-03 2005-12-14 ビィティアール・インコーポレーテッド スケーリング可能な多重レベル相互接続アーキテクチャ
US5850564A (en) * 1995-05-03 1998-12-15 Btr, Inc, Scalable multiple level tab oriented interconnect architecture
US5745372A (en) * 1995-05-04 1998-04-28 Hewlett-Packard Company Apparatus and method for routing signals in a field programmable gate array integrated circuit
US5841663A (en) * 1995-09-14 1998-11-24 Vlsi Technology, Inc. Apparatus and method for synthesizing integrated circuits using parameterized HDL modules
US6570404B1 (en) 1996-03-29 2003-05-27 Altera Corporation High-performance programmable logic architecture
US6212668B1 (en) * 1996-05-28 2001-04-03 Altera Corporation Gain matrix for hierarchical circuit partitioning
US5742181A (en) * 1996-06-04 1998-04-21 Hewlett-Packard Co. FPGA with hierarchical interconnect structure and hyperlinks
US6624658B2 (en) 1999-02-04 2003-09-23 Advantage Logic, Inc. Method and apparatus for universal program controlled bus architecture
US6034547A (en) * 1996-09-04 2000-03-07 Advantage Logic, Inc. Method and apparatus for universal program controlled bus
US6301694B1 (en) 1996-09-25 2001-10-09 Altera Corporation Hierarchical circuit partitioning using sliding windows
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
US6185725B1 (en) * 1997-04-11 2001-02-06 Altera Corporation Apparatus and method for partitioning logic into a programmable logic device
US6289494B1 (en) 1997-11-12 2001-09-11 Quickturn Design Systems, Inc. Optimized emulation and prototyping architecture
US6237129B1 (en) * 1998-03-27 2001-05-22 Xilinx, Inc. Method for constraining circuit element positions in structured layouts
US6430732B1 (en) 1998-03-27 2002-08-06 Xilinx, Inc. Method for structured layout in a hardware description language
JP3576837B2 (ja) * 1998-10-30 2004-10-13 日本電気株式会社 プログラマブルロジックlsiの基本セル及び基本セル2次元アレイ
US6518156B1 (en) 1999-03-29 2003-02-11 Hewlett-Packard Company Configurable nanoscale crossbar electronic circuits made by electrochemical reaction
US7030408B1 (en) 1999-03-29 2006-04-18 Hewlett-Packard Development Company, L.P. Molecular wire transistor (MWT)
US6314019B1 (en) 1999-03-29 2001-11-06 Hewlett-Packard Company Molecular-wire crossbar interconnect (MWCI) for signal routing and communications
US6256767B1 (en) * 1999-03-29 2001-07-03 Hewlett-Packard Company Demultiplexer for a molecular wire crossbar network (MWCN DEMUX)
US6128214A (en) * 1999-03-29 2000-10-03 Hewlett-Packard Molecular wire crossbar memory
US6459095B1 (en) 1999-03-29 2002-10-01 Hewlett-Packard Company Chemically synthesized and assembled electronics devices
US6320412B1 (en) 1999-12-20 2001-11-20 Btr, Inc. C/O Corporate Trust Co. Architecture and interconnect for programmable logic circuits
US6693456B2 (en) * 2000-08-04 2004-02-17 Leopard Logic Inc. Interconnection network for a field programmable gate array
GB2370380B (en) * 2000-12-19 2003-12-31 Picochip Designs Ltd Processor architecture
US7653710B2 (en) 2002-06-25 2010-01-26 Qst Holdings, Llc. Hardware task manager
US7962716B2 (en) 2001-03-22 2011-06-14 Qst Holdings, Inc. Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements
US6836839B2 (en) * 2001-03-22 2004-12-28 Quicksilver Technology, Inc. Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements
US7325123B2 (en) 2001-03-22 2008-01-29 Qst Holdings, Llc Hierarchical interconnect for configuring separate interconnects for each group of fixed and diverse computational elements
US6458621B1 (en) * 2001-08-01 2002-10-01 Hewlett-Packard Company Batch fabricated molecular electronic devices with cost-effective lithographic electrodes
US6594810B1 (en) 2001-10-04 2003-07-15 M2000 Reconfigurable integrated circuit with a scalable architecture
US6986021B2 (en) * 2001-11-30 2006-01-10 Quick Silver Technology, Inc. Apparatus, method, system and executable module for configuration and operation of adaptive integrated circuitry having fixed, application specific computational elements
US6738961B2 (en) * 2002-02-28 2004-05-18 Hewlett-Packard Development Company, L.P. Computer readable medium and a method for representing an electronic circuit as a routing-resource graph
US6706619B2 (en) 2002-03-16 2004-03-16 Memx, Inc. Method for tiling unit cells
US20030173648A1 (en) * 2002-03-16 2003-09-18 Sniegowski Jeffry Joseph Multi-die chip and method for making the same
US6791162B2 (en) 2002-03-16 2004-09-14 Memx, Inc. Unit cell architecture for electrical interconnects
US6707077B2 (en) 2002-03-16 2004-03-16 Memx, Inc. Chip interconnect bus
US6919616B2 (en) * 2002-03-16 2005-07-19 Memx, Inc. Chip with passive electrical contacts
JP4283220B2 (ja) * 2002-06-28 2009-06-24 エヌエックスピー ビー ヴィ ビルディングブロックを有する集積回路
US7255437B2 (en) * 2003-10-09 2007-08-14 Howell Thomas A Eyeglasses with activity monitoring
US6835262B1 (en) * 2003-06-19 2004-12-28 Northrop Grumman Corporation Positive pressure hot bonder
US7225422B2 (en) * 2003-06-19 2007-05-29 International Business Machines Corporation Wire trimmed programmable logic array
US6975139B2 (en) 2004-03-30 2005-12-13 Advantage Logic, Inc. Scalable non-blocking switching network for programmable logic
US7460529B2 (en) * 2004-07-29 2008-12-02 Advantage Logic, Inc. Interconnection fabric using switching networks in hierarchy
US8010826B2 (en) * 2005-09-13 2011-08-30 Meta Systems Reconfigurable circuit with redundant reconfigurable cluster(s)
US7478261B2 (en) * 2005-09-13 2009-01-13 M2000 Reconfigurable circuit with redundant reconfigurable cluster(s)
US7275196B2 (en) 2005-11-23 2007-09-25 M2000 S.A. Runtime reconfiguration of reconfigurable circuits
US7423453B1 (en) 2006-01-20 2008-09-09 Advantage Logic, Inc. Efficient integrated circuit layout scheme to implement a scalable switching network used in interconnection fabric
US7376921B2 (en) * 2006-02-17 2008-05-20 Athena Design Systems, Inc. Methods for tiling integrated circuit designs
US7368943B2 (en) * 2006-03-28 2008-05-06 Advantage Logic, Inc. Enhanced scheme to implement an interconnection fabric using switching networks in hierarchy
US7613047B2 (en) * 2006-10-05 2009-11-03 International Business Machines Corporation Efficient circuit and method to measure resistance thresholds
US7994818B2 (en) * 2007-06-20 2011-08-09 Agate Logic (Beijing), Inc. Programmable interconnect network for logic array
US7999570B2 (en) * 2009-06-24 2011-08-16 Advantage Logic, Inc. Enhanced permutable switching network with multicasting signals for interconnection fabric
US8341580B2 (en) * 2009-09-28 2012-12-25 Advantage Logic, Inc. Modular routing fabric using switching networks
EP3975429A1 (de) 2015-02-22 2022-03-30 Flex Logix Technologies, Inc. Schaltmatrixarchitektur mit gemischter radix und/oder gemischtem modus und integrierte schaltung
US10156841B2 (en) 2015-12-31 2018-12-18 General Electric Company Identity management and device enrollment in a cloud service

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE34363E (en) * 1984-03-12 1993-08-31 Xilinx, Inc. Configurable electrical circuit having configurable logic elements and configurable interconnects
US4642487A (en) * 1984-09-26 1987-02-10 Xilinx, Inc. Special interconnect for configurable logic array
US4706216A (en) * 1985-02-27 1987-11-10 Xilinx, Inc. Configurable logic element
US4775942A (en) * 1985-12-09 1988-10-04 International Business Machines Corporation Seed and stitch approach to embedded arrays
US4922441A (en) * 1987-01-19 1990-05-01 Ricoh Company, Ltd. Gate array device having a memory cell/interconnection region
USRE34444E (en) * 1988-01-13 1993-11-16 Xilinx, Inc. Programmable logic device
EP0437491B1 (de) * 1988-10-05 1995-12-13 Quickturn Systems Inc Verfahren zur verwendung einer elektronisch wiederkonfigurierbaren gatterfeld-logik und dadurch hergestelltes gerät
US5109353A (en) * 1988-12-02 1992-04-28 Quickturn Systems, Incorporated Apparatus for emulation of electronic hardware system
US5212652A (en) * 1989-08-15 1993-05-18 Advanced Micro Devices, Inc. Programmable gate array with improved interconnect structure
US5260881A (en) * 1989-10-30 1993-11-09 Advanced Micro Devices, Inc. Programmable gate array with improved configurable logic block
US5255203A (en) * 1989-08-15 1993-10-19 Advanced Micro Devices, Inc. Interconnect structure for programmable logic device
US5140193A (en) * 1990-03-27 1992-08-18 Xilinx, Inc. Programmable connector for programmable logic device
US5122685A (en) * 1991-03-06 1992-06-16 Quicklogic Corporation Programmable application specific integrated circuit and logic cell therefor
US5313119A (en) * 1991-03-18 1994-05-17 Crosspoint Solutions, Inc. Field programmable gate array
US5255221A (en) * 1991-04-02 1993-10-19 At&T Bell Laboratories Fully configurable versatile field programmable function element
US5317209A (en) * 1991-08-29 1994-05-31 National Semiconductor Corporation Dynamic three-state bussing capability in a configurable logic array
US5208491A (en) * 1992-01-07 1993-05-04 Washington Research Foundation Field programmable gate array

Also Published As

Publication number Publication date
DE4425552A1 (de) 1995-02-02
US5519629A (en) 1996-05-21
JPH0766718A (ja) 1995-03-10
GB9413816D0 (en) 1994-08-24
GB2280293B (en) 1997-12-10
GB2280293A (en) 1995-01-25

Similar Documents

Publication Publication Date Title
DE4425552C2 (de) Gatterarray
DE69924486T2 (de) Spezielle schnittstellenarchitektur für eine hybride schaltung
DE102004014472B4 (de) Anwendungsspezifischer integrierter Halbleiter-Schaltkreis
DE69933525T2 (de) Architekturen für programmierbare logische Vorrichtungen
DE69822796T2 (de) Nutzerprogrammierbarer prozessor
DE60128960T2 (de) Architektur für ziegelförmig aufbaubares nutzerprogrammierbares gatterfeld
DE2633079C3 (de) Anordnung zum elektrischen Verbinden von auf einem Halbleiterscheibchen aufgebauten Schaltungseinheiten mit einer gemeinsamen Sammelleitung
EP0010173B1 (de) Halbleiterplättchen mit verbesserter Prüfbarkeit der monolithisch hochintegrierten Schaltungen
EP0202456B1 (de) In integrierter Technik hergestellter Logik-Array-Baustein
DE60010614T2 (de) On-line Prüfung des programmierbaren Verbindungsnetzwerks in einer feldprogrammierbaren Gatteranordnung
DE3606650A1 (de) Hardware logik-simulator
DE19709219A1 (de) Feldprogrammierbares Gatterarray mit hierarchischer Verbindungsstruktur und Hyperverbindungen
WO2002029600A2 (de) Zellenarordnung mit segmentierterwischenzellstruktur
DE60031081T2 (de) Regionalzeitmultiplexiertes emulationssystem
DE102020111905A1 (de) Grobkörniges programmierbares routing-netz für logikvorrichtungen
DE69811795T2 (de) Integrierte Schaltung zur Taktsignalversorgung und Verfahren zu ihrer Herstellung
DE60222011T2 (de) Asynchrone sequenzschaltung mit unbestimmten impulsfolgen
DE1474581C3 (de) Schiebe- und Rotierschaltungsanordnung
DE3543471C1 (de) In integrierter Technik hergestellter Baustein zur Erstellung integrierter Schaltungen
DE4327652C2 (de) Integrierte Halbleiterschaltungsvorrichtung und Verfahren zum Entwerfen einer integrierten Halbleiterschaltungsvorrichtung
DE10143967A1 (de) Plazierungs- und Weiterleitungsabtastkettenunterteilung nach Taktregionen
DE3048414A1 (de) &#34;schaltungsanordnung fuer eine datenverarbeitungsanlage&#34;
EP0039077A1 (de) Zeitmultiplexkoppelfeld
DE2833729A1 (de) Redundanzsystem mit acht vorrichtungen fuer fuenf kanaele
DE60221515T2 (de) Speichersystem für schleifenbeschleunigung nach wunsch

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee