EP2324572A2 - Reseau logique programmable, commutateur d'interconnexion et unite logique pour un tel reseau - Google Patents
Reseau logique programmable, commutateur d'interconnexion et unite logique pour un tel reseauInfo
- Publication number
- EP2324572A2 EP2324572A2 EP09784255A EP09784255A EP2324572A2 EP 2324572 A2 EP2324572 A2 EP 2324572A2 EP 09784255 A EP09784255 A EP 09784255A EP 09784255 A EP09784255 A EP 09784255A EP 2324572 A2 EP2324572 A2 EP 2324572A2
- Authority
- EP
- European Patent Office
- Prior art keywords
- routing elements
- input
- outputs
- inputs
- output
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17736—Structural details of routing resources
Definitions
- the subject of the invention is also a programmable logic network logical unit comprising logic blocks connected to four input ports grouping together a plurality of inputs and four output ports grouping a plurality of outputs, the inputs, the outputs and the logic blocks being connected to a link tree structure, going down from the input ports to the logic blocks and setting logical blocks to the output ports, comprising incoming routing elements and outgoing routing elements arranged in several levels, the incoming routing elements connecting by a single path each input of all the input ports to a single input of each logical block and the outgoing routing elements connecting by a single path each output of a logical block to a single output of each output port and to the incoming routing elements of the same group.
- each logical unit has
- interconnect switch a routing device arranged at the intersection of several channels and programmable to direct signals from some of the channels to one or more of the other channels, such a routing member may comprise several routing elements as defined below;
- Each interconnect switch 2 comprises input ports from the interconnect switches I, output ports to the interconnect switches O, input ports from the logical units I ', output ports to the interconnection switches logical units O '.
- Each interconnection switch 2 thus comprises eight faces or rather interfaces enabling it to be directly connected to the four adjacent interconnection switches 2 and to the four neighboring logical units 3.
- Each input port I is thus also connected to all the output ports 0 'by the routing units 4 and 6.
- the references 400, 500 and 600 shown in FIG. 2 denote all the routing elements 4, 5 and 6 respectively. It will be understood that: the interconnection switches 2 communicate with each other via the routing elements 4 and with the neighboring logic units 3 by the routing elements 4 and 6; the logical units 3 communicate with the neighboring logical units via the routing elements 5 and the routing elements 6 of the neighboring interconnection switches (each of the interconnection switches neighboring a logic unit allows this logic unit to be connected to the other three logical units to which this interconnect switch is connected, without going through another interconnect switch).
- the link tree structure thus defined descends from the inputs to the outputs with the routing elements 4, 5, 6 organized according to several levels to connect: - an input of an input port from a neighboring logic unit I 'to kl outputs an output port to a neighboring logical unit O 'passing through two routing elements 5, 6, where k1 is the ratio of the number of outputs of said output port to the number of inputs of said input port,
- first-level incoming routing elements 8 having four outputs each connected to an input of all the logical blocks 7 of its first-level group
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Logic Circuits (AREA)
Abstract
Commutateur d'interconnexion (2) de réseau logique programmable, comportant des ports d'entrée regroupant une pluralité d'entrées (I, I') et des ports de sortie regroupant une pluralité de sorties (0, 0' ), les entrées et les sorties étant reliées à une structure arborescente de liaison descendant des entrées vers les sorties et comportant des éléments de routage (4, 5, 6) organisés selon plusieurs niveaux pour relier par un chemin unique chaque entrée de tous les ports d'entrée à au moins une sortie de chaque port de sortie. Commutateur d' interconnexion, unité logique et réseau logique programmable comportant ceux-ci, qui sont agencés pour définir un chemin unique entre deux points du réseau.
Description
RESEAU LOGIQUE PROGRAMMABLE, COMMUTATEUR D'INTERCONNEXION ET UNITE LOGIQUE POUR UN TEL RESEAU
La présente invention concerne un réseau logique programmable tel que ceux connus sous l'abréviation FPGA (de l'anglais « Field Programmable Gâte Array », réseau de portes programmables sur site ou in situ) , un commutateur d' interconnexion et une unité logique pour un tel réseau.
ARRIERE PLAN DE L' INVENTION
Un réseau logique programmable est un circuit intégré qui peut être programmé par un fabricant de dispositifs intégrant un tel circuit ou par l'utilisateur afin d'adapter le circuit à l'application auquel il est destiné. Un tel réseau logique programmable peut ainsi remplacer plusieurs circuits intégrés spécialement conçus pour des applications particulières (ou circuit ASIC, de l'anglais « Application Spécifie Integrated Circuit ») . Un réseau logique programmable (ou configurable) comporte des blocs logiques programmables et une structure matricielle d' interconnexion ayant des nœuds formés par des commutateurs d'interconnexion programmables. Les blocs logiques sont reliés à la structure matricielle d'interconnexion par des unités de connexion disposées entre chaque paire de commutateurs d'interconnexion adjacents. Une telle architecture permet l'établissement de nombreux chemins de circulation des informations entre deux points du réseau, ces chemins étant déterminés par des algorithmes. Il est de la sorte difficile de prévoir le temps nécessaire pour transporter une information d'un point à un autre. En outre, ces circuits occupent une surface importante et sont gourmands en énergie. De tels circuits ne sont donc que peu ou pas utilisés lorsque la source d'alimentation est une batterie.
OBJET DE L' INVENTION
Un but de l'invention est de fournir un moyen pour obtenir un réseau logique programmable qui soit plus compact tout en étant flexible relativement performant notamment en ce qui concerne les temps de routage.
RESUME DE L'INVENTION
A cet effet, l'invention a pour objet un commutateur d'interconnexion de réseau logique programmable, comportant des ports d'entrée regroupant une pluralité d'entrées et des ports de sortie regroupant une pluralité de sorties. Les ports de sortie comprennent des ports de sortie vers des commutateurs d' interconnexion voisins et des ports de sortie vers des unités logiques voisines, et les ports d'entrée comprennent des ports d'entrée depuis les commutateurs d'interconnexion voisins et des ports d'entrée depuis les unités logiques voisines. Les entrées et les sorties sont reliées à une structure arborescente de liaison descendant des entrées vers les sorties et comportant des éléments de routage organisés selon plu- sieurs niveaux pour relier :
- une entrée d'un port d'entrée depuis un commutateur d'interconnexion voisin à une seule sortie d'un port de sortie vers une unité logique voisine,
- une entrée d'un port d'entrée depuis un commu- tateur d'interconnexion voisin à une seule sortie d'un port de sortie vers un commutateur d' interconnexion voisin.
Ainsi, les commutateurs d'interconnexion autorisent un grand nombre de possibilités de raccordement et présentent donc une flexibilité élevée. La structure arborescente et l'existence de chemins de routage uniques permettent d'avoir une bonne prédictibilité du routage et des temps de routage.
De préférence, dans le commutateur d'intercon- nexion de l'invention, les éléments de routage compren-
nent des premiers éléments de routage disposés entre les ports d'entrée depuis les commutateurs d'interconnexion voisins et les ports de sortie vers les commutateurs d' interconnexion voisins ; des deuxièmes éléments de rou- tage disposés entre, d'une part, les ports d'entrée depuis les unités logiques et, d'autre part, les premiers éléments de routage et des troisièmes éléments de routage, les troisièmes éléments de routage étant disposés entre, d'une part, les premiers éléments de routage et les deuxièmes éléments de routage et, d'autre part, les ports de sortie vers les unités logiques.
Dans un mode de réalisation particulier :
- les premiers éléments de routage ont des entrées reliées chacune à une entrée de chaque port d'entrée depuis les commutateurs d'interconnexion voisins, au moins une entrée reliée à une sortie d'un des deuxièmes éléments de routage, des sorties reliées chacune à une sortie de chaque port de sortie vers les commutateurs d' interconnexion voisins et des sorties reliées chacune à une entrée d'un des troisièmes éléments de routage ;
- les deuxièmes éléments de routage ont des entrées reliées chacune à une des entrées de chaque port d' entrée depuis les unités logiques et des sorties re- liées chacune à l'entrée correspondante d'une partie des premiers éléments de routage et à une des entrées d'une partie des troisièmes éléments de routage ;
- les troisièmes éléments de routage ont des entrées reliées aux sorties des premiers et deuxièmes élé- ments de routage et des sorties reliées chacune à une des sorties de chaque port de sortie vers les unités logiques .
L'invention a également pour objet une unité logique de réseau logique programmable, comportant des blocs logiques reliés à quatre ports d'entrées regroupant
une pluralité d' entrées et quatre ports de sorties regroupant une pluralité de sorties, les entrées, les sorties et les blocs logiques étant reliés à une structure arborescente de liaison, descendant des ports d'entrées vers les blocs logiques et montant des blocs logiques vers les ports de sorties, comportant des éléments de routage entrant et des éléments de routage sortant organisés selon plusieurs niveaux, les éléments de routage entrant reliant par un chemin unique chaque entrée de tous les ports d'entrée à une entrée unique de chaque bloc logique et les éléments de routage sortant reliant par un chemin unique chaque sortie d'un bloc logique à une sortie unique de chaque port de sortie et aux éléments de routage entrant du même groupe. De préférence alors, chaque unité logique possède
L niveaux hiérarchiques qui comportent chacun au moins un groupe Gn regroupant au moins :
- Rn entrées et Sn sorties,
- Qn groupes Gn-I appartenant au niveau hiérarchi- que n-1 ayant chacun Rn_i entrées et Sn_i sorties,
- Rn-i éléments de routage entrant reliés chacun à tous les Qn groupes Gn-I,
- Sn-i éléments de routage sortant reliés à tous les Qn groupes Gn-I et à un ensemble des éléments de rou- tage entrant de ce groupe, chaque groupe du niveau le plus bas correspondant à un bloc logique.
L' invention concerne en outre un réseau logique programmable comportant des commutateurs d' interconnexion reconfigurables et des unités logiques reconfigurables reliées entre eux par un maillage de communication tel que :
- chaque commutateur d' interconnexion est relié directement à quatre commutateurs d' interconnexion voi- sins,
- chaque unité logique possède huit unités logiques voisines et est reliée à chacune d'elles par l'intermédiaire d'un commutateur d'interconnexion.
- au moins un chemin unique est défini entre deux points du réseau.
Dans la présente description, deux éléments sont « reliés » l'un à l'autre lorsqu'une conduction électrique est possible entre les deux éléments, cette conduction pouvant être activée ou inactivée selon qu'elle est exploitée ou pas dans la configuration finalement programmée. Ainsi, l'unité logique peut être programmée pour communiquer directement avec les unités logiques voisines en passant seulement par l'un des commutateurs voisins. Il est de la sorte possible de réduire la longueur des chemins entre deux points du réseau. Ceci permet de plus d'augmenter la densité d'unités logiques et de commutateurs d'interconnexion.
Avantageusement, le réseau comprend des commutateurs d' interconnexion et/ou des unités logiques des ty- pes ci-dessus.
Cette structure combine une architecture en mail- lage à l'extérieur des commutateurs d'interconnexion et une structure arborescente dans les commutateurs d' interconnexion et les unités logiques profitant des avantages de ces deux architectures.
D'autres caractéristiques et avantages de l'invention ressortiront à la lecture de la description qui suit d'un mode de réalisation particulier non limitatif de l'invention. BREVE DESCRIPTION DES DESSINS
II sera fait référence aux dessins annexés, parmi lesquels :
- la figure 1 est une vue schématique partielle d'un réseau conforme à l'invention, - la figure 2 est une vue schématique agrandie de
la zone II de la figure 1,
- la figure 3 est une vue schématique de détail d'une unité logique configurable de ce réseau,
- la figure 4 est une vue schématique de détail d'un commutateur d'interconnexion de ce réseau.
DESCRIPTION DETAILLEE DE L'INVENTION Dans la suite de la description, on entend par :
- commutateur d'interconnexion, un organe de routage disposé à l' intersection de plusieurs canaux et pro- grammable pour diriger des signaux provenant de certains des canaux vers un ou plusieurs des autres canaux, un tel organe de routage peut comprendre plusieurs éléments de routage tels que définis ci-dessous ;
- élément de routage, un bloc de routage program- mable par exemple de type « full crossbar » disposé dans un commutateur d' interconnexion ou une unité logique pour diriger et transmettre des signaux à l'intérieur du commutateur d'interconnexion ou de l'unité logique ;
- unité logique, un bloc logique unique ou une pluralité de blocs logiques reliés par des éléments de routage, un processeur ou tout autre élément susceptible d'être programmé pour réaliser une ou plusieurs opérations logiques ;
- bloc logique, un élément programmable, ou pas, pour réaliser une opération logique.
En référence aux figures, le réseau logique programmable conforme à l'invention et ici décrit, généralement désigné en 1, est du type FPGA et comporte des commutateurs d'interconnexion 2 (couramment désignés par l'expression anglaise « switch box ») reconfigurables (le terme « reconfigurable » est ici utilisé dans le sens de programmable) et des unités logiques 3 reconfigurables reliées entre eux par un maillage de communication tel que : - chaque commutateur d' interconnexion 2 est relié
directement à quatre commutateurs d' interconnexion 2 voisins,
- chaque unité logique 3 possède huit unités logiques 3 voisines et est reliée à chacune d'elles par l'intermédiaire d'un commutateur d'interconnexion 2. Les commutateurs d' interconnexion 2 situés en bordure du réseau sont raccordés à des organes de communication avec l'extérieur du réseau.
Chaque commutateur d' interconnexion 2 comprend des ports d'entrée depuis les commutateurs d'interconnexion I, des ports de sortie vers les commutateurs d'interconnexion O, des ports d'entrée depuis les unités logiques I' , des ports de sortie vers les unités logiques O' . Chaque commutateur d' interconnexion 2 com- prend donc ici huit faces ou plutôt interfaces permettant sa connexion directe aux quatre commutateurs d' interconnexion 2 voisins et aux quatre unités logiques 3 voisines.
Chaque port d'entrée depuis les commutateurs d'interconnexion I possède M entrées, chaque port de sortie vers les commutateurs d' interconnexion O possède M sorties, chaque port d'entrée depuis les unités logiques I' possède N entrées, chaque port de sortie vers les unités logiques O' possède P sorties. Chaque commutateur d' interconnexion 2 comprend quatre ports d'entrée II, 12, 13, 14 reliés respectivement à ces quatre commutateurs d' interconnexion 2 voisins et quatre ports de sortie 01, 02, 03, 04 reliés respectivement à ces quatre commutateurs d' interconnexion 2 voi- sins. Les ports I et 0 peuvent comprendre plusieurs entrées et sorties respectivement, 32 dans le cas présent (toutes n'ont pas été représentées sur les figures afin de ne pas surcharger ces dernières), et sont disposés sur des côtés opposés du commutateur d' interconnexion 2 qui est représenté ici sous une forme octogonale.
Chaque commutateur d' interconnexion 2 comprend également des ports d'entrée I'I, I' 2, I' 3, IM et des ports de sortie 0'I, 0'2, O' 3, 0'4 reliés aux quatre unités logiques qui l'entourent. Les ports 0' et I' peuvent comprendre plusieurs sorties et plusieurs entrées, respectivement 4 et 16 dans le cas présent, et sont disposés sur des côtés opposés du commutateur d'interconnexion 2.
Chaque commutateur d' interconnexion 2 comprend des premiers éléments de routage 4 au nombre de M, des deuxièmes éléments de routage 5 au nombre de N et des troisième éléments de routage 6 sont au nombre de P.
Chaque port d'entrée I est relié à tous les ports de sortie 0 par les éléments de routage 4 programmables. Les éléments de routage 4 sont ici au nombre de 32 répar- tis par paires et possèdent chacun quatre entrées reliées chacune à une des entrées des ports I et quatre sorties reliées chacune à une des sorties des ports 0.
Chaque port d'entrée I' est relié à tous les ports de sortie 0' par les éléments de routage 5 program- mables reliés aux éléments de routage 6 programmables. Les éléments de routage 5 sont ici au nombre de 4 et possèdent quatre entrées et quatre sorties. Les éléments de routage 6 sont ici au nombre de 16, réparties en quatre groupes, et possèdent trois entrées et quatre sorties. Les quatre entrées de chaque élément de routage 5 sont reliées chacune à une des entrées des ports d'entrée I' et les quatre sorties de chaque élément de routage 5 sont reliées chacune, d'une part, à une entrée de chacun des éléments de routage 4 d'une paire et, d'autre part, à une des trois entrées de chacun des éléments de routage 6 d'un groupe associé. Les deux autres entrées des éléments de routage 6 sont reliées à la sortie de deux éléments de routage 4 et les sorties de chacun des éléments de routage 6 sont reliées chacune à une des entrées de chaque port de sortie 0' . Chaque port d'entrée I1 est relié à
tous les ports de sortie O par les éléments de routage 4 et 5.
Chaque port d'entrée I est ainsi également relié à tous les ports de sortie 0' par les unités de routage 4 et 6. Les références 400, 500 et 600 figurant sur la figure 2 désignent l'ensemble des éléments de routage 4, 5 et 6 respectivement. On comprend que : les commutateurs d' interconnexion 2 communiquent entre eux via les éléments de routage 4 et avec les unités logiques 3 voisines par les éléments de routage 4 et 6 ; les unités logiques 3 communiquent avec les unités logiques voisines via les éléments de routage 5 et les éléments de routage 6 des commutateurs d'interconnexion voisins (chacun des commutateurs d'interconnexion voisins d'une unité logique permet à cette unité logique d'être connectée aux trois autres unités logiques auquel ce commutateur d' interconnexion est relié, sans passer par un autre commutateur d'interconnexion) .
La structure arborescente de liaison ainsi définie descend des entrées vers les sorties avec les éléments de routage 4, 5, 6 organisés selon plusieurs niveaux pour relier : - une entrée d'un port d'entrées depuis une unité logique voisine I' à kl sorties d'un port de sorties vers une unité logique voisine O' en passant par deux éléments de routage 5, 6, où kl est le rapport du nombre de sorties dudit port de sorties sur le nombre d' entrées dudit port d'entrées,
- une entrée d'un port d'entrées depuis une unité logique voisine I' à k2 sorties d'un port de sorties vers un commutateur d'interconnexion voisin O en passant par deux éléments de routage 4, 5, où k2 est le rapport du nombre d'entrée du port d'entrées depuis un commutateur
d'interconnexion voisin sur le nombre d'entrées dudit port d'entrées depuis une unité logique voisine.
Chaque unité logique 3 comprend des blocs logiques 7 programmables pour réaliser des fonctions logiques élémentaires. Chaque unité logique 3 a une structure hiérarchisée qui possède plusieurs niveaux de hiérarchie et qui résulte d'une duplication de groupes. Le groupe G1 de plus bas niveau, ici appelé de premier niveau, comprend Ri entrées et Si sorties avec au moins : - Qi blocs logiques 7 ayant chacun i entrées et j sorties,
- un ensemble de routage de premier niveau. L'ensemble de routage de premier niveau comprend : - i éléments de routage entrant 8 relié chacun à tous les blocs logiques de son groupe de premier niveau et comportant chacun yi entrées externes de ce groupe,
- j éléments de routage sortant 9 reliés à tous les blocs logiques 7 de son groupe de premier niveau et à tous les éléments de routage entrant 8 de ce groupe.
Le groupe G2 de deuxième niveau comprend x groupes de premier niveau et un ensemble de routage de deuxième niveau. L'ensemble de routage de deuxième niveau est en fait constitué de yi sous-ensembles de routage de même type que les ensembles de routage du premier niveau et comportant le même nombre d'éléments de routage entrant et sortant (les éléments de routage entrant et sortant de l'ensemble de routage de deuxième niveau ont été numérotés 10 et 11) . Ainsi, l'ensemble de routage du deuxième niveau de hiérarchie comporte :
- Ri éléments de routage entrant 10 reliés chacun à un des éléments de routage entrant 8 de premier niveau de chaque groupe de premier niveau et à un des ports d'entrée,
- Si éléments de routage sortant 11 reliés chacun à un des éléments de routage sortant 9 de premier niveau de chaque groupe Gi de premier niveau, à une partie des éléments de routage entrant 10 de deuxième niveau et à un des ports de sortie.
On comprend qu'ainsi le groupe Gn+I de niveau hiérarchique n+1 comprend des groupes Gn de niveau hiérarchique n et un ensemble de routage de niveau n+1 qui est relié aux ensembles de routage de niveau n et qui com- prend yn sous-ensembles de routage de même type que les ensembles de routage de niveau n.
Les blocs logiques 7 sont ici au nombre de 16 regroupés en quatre groupes de premier niveau de 4 blocs logiques 7 (ou clusters) et possèdent chacun six entrées et deux sorties. Chaque groupe de premier niveau comprend :
- six éléments de routage entrant 8 de premier niveau ayant quatre sorties reliées chacune à une entrée de tous les blocs logiques 7 de son groupe de premier ni- veau,
- deux éléments de routage sortant 9 de premier niveau ayant quatre entrées reliées chacune à la sortie de chacun des blocs logiques 7 de son groupe de premier niveau et trois sorties reliées chacune à une entrée de tous les éléments de routage entrants 8 de premier niveau de ce groupe .
Le groupe de deuxième niveau incorpore les quatre groupes de premier niveau et l'ensemble de routage de deuxième niveau qui comprend trois sous-ensembles de rou- tage identiques aux ensembles de routage de premier niveau, comprenant chacun :
- six éléments de routage entrant 10 de deuxième niveau ayant chacun quatre sorties reliées chacune à une entrée d'un des éléments de routage entrant 8 de premier niveau de chaque groupe de premier niveau et deux entrées
externes reliées chacune aux ports de sortie 0' des commutateurs d'interconnexion 2 qui sont adjacents à l'unité logique 3 considérée,
- deux éléments de routage sortant 11 de deuxième niveau ayant quatre entrées reliées chacune à une sortie d'un des éléments de routage sortant 9 de premier niveau de chaque groupe de premier niveau, et trois sorties reliées, d'une part, à une entrée de chacun des éléments de routage entrant 10 de deuxième niveau de l'ensemble de routage concerné et, d'autre part, aux ports d'entrée I' des commutateurs d'interconnexion 2 adjacents.
La figure 3 représente ainsi un groupe de deuxième niveau comportant quatre groupes de premier niveau. Les commutateurs d'interconnexion 2 et les unités logiques 3 ont ainsi une structure arborescente selon laquelle il possible de relier deux points du réseau par un chemin unique en montant ou en descendant dans l'arborescence. Ceci permet d'avoir une bonne prédictibi- lité des temps de routage.
Le mode de fabrication des circuits intégrés formant les réseaux logiques programmables ne fait pas l'objet de la présente invention. Il en est de même des principes de programmation des blocs logiques 7, des uni- tés de routage 4, 5, 6, des éléments de routage 8, 9, 10, 11 et des commutateurs d'interconnexion 2 qui sont connus en eux-mêmes et ne sont donc pas décrits ici.
Bien entendu, l'invention n'est pas limitée au mode de réalisation décrit mais englobe toute variante entrant dans le champ de l'invention tel que définie par les revendications.
L'unité logique décrite comprend des groupes de premier niveau (ou niveau inférieur) et un groupe de deuxième niveau (ou niveau supérieur) . Dans l'unité logi- que, il est possible d'avoir plus de deux niveaux et par
exemple des groupes de niveaux intermédiaires entre le groupe de niveau inférieur et le groupe de niveau supérieur.
Dans l'unité logique, il serait possible d'avoir une architecture en maillage.
Les nombres d'entrées et de sorties des ports, d'unités de routage et de blocs logiques, de même que leur répartition en paires ou en groupes peuvent être modifiés. Ainsi, le nombre n d'éléments logiques, qui vaut 16 dans le mode de réalisation décrit peut être différent et par exemple égal à 8, 12 ou 32...
Dans une version moins efficace, le réseau conforme à l'invention est réalisé à partir de commutateurs d'interconnexion et/ou d'unités logiques de struc- tures différentes de celles décrites ci-dessus.
Cette architecture peut être mise en œuvre pour des applications de FPGA embarqué (ou "embedded") ou sur circuit dédié (ou "stand alone") .
Il est possible de réaliser des commutateurs d'interconnexion conforme à l'invention qui comprennent :
- un nombre de ports d' entrées I égal au nombre de ports de sorties O et multiple du nombre de ports d' entrées I' ,
- un nombre de ports de sorties O' multiple du nombre de ports d'entrées I.
Claims
1. Commutateur d'interconnexion (2) de réseau logique programmable, comportant des ports d'entrée regrou- pant une pluralité d'entrées (I, I') et des ports de sortie regroupant une pluralité de sorties (O, 0' ) , caractérisé en ce que les ports de sortie comprennent des ports de sortie vers des commutateurs d' interconnexion voisins
(0) et des ports de sortie vers des unités logiques voi- sines (0'), et les ports d'entrée comprennent des ports d'entrée depuis les commutateurs d'interconnexion voisins
(1) et des ports d'entrée depuis les unités logiques voisines (I'), et en ce que les entrées et les sorties sont reliées à une structure arborescente de liaison descen- dant des entrées vers les sorties et comportant des éléments de routage (4, 5, 6) organisés selon plusieurs niveaux pour relier :
- une entrée d'un port d'entrées depuis un commutateur d'interconnexion voisin (I) à une seule sortie d'un port de sorties vers une unité logique voisine (0'),
- une entrée d'un port d'entrées depuis un commutateur d'interconnexion voisin (I) à une seule sortie d'un port de sorties vers un commutateur d'interconnexion voisin (0) .
2. Commutateur d'interconnexion (2) selon la revendication 1, dans lequel les éléments de routage comprennent des premiers éléments de routage (4) disposés entre les ports d'entrées depuis les commutateurs d' interconnexion voisins et les ports de sorties vers les commutateurs d' interconnexion voisins ; des deuxièmes éléments de routage (5) disposés entre, d'une part, les ports d'entrée depuis les unités logiques et, d'autre part, les premiers éléments de routage et des troisièmes éléments de routage, les troisièmes éléments de routage (6) étant disposés entre, d'une part, les premiers élé- ments de routage et les deuxièmes éléments de routage et, d'autre part, les ports de sortie vers les unités logiques .
3. Commutateur d'interconnexion selon la revendi- cation 2, dans lequel :
- les premiers éléments de routage (4) ont des entrées reliées chacune à une entrée de chaque port d' entrée depuis les commutateurs d' interconnexion voisins (I), au moins une entrée reliée à une sortie d'un des deuxièmes éléments de routage (5) , des sorties reliées chacune à une sortie de chaque port de sortie vers les commutateurs d'interconnexion voisins (O) et des sorties reliées chacune à une entrée d'un des troisièmes éléments de routage (6) ; - les deuxièmes éléments de routage (5) ont des entrées reliées chacune à une des entrées de chaque port d'entrée depuis les unités logiques (I') et des sorties reliées chacune à l'entrée correspondante d'une partie des premiers éléments de routage et à une des entrées d'une partie des troisièmes éléments de routage ;
- les troisièmes éléments de routage (6) ont des entrées reliées aux sorties des premiers et deuxièmes éléments de routage et des sorties reliées chacune à une des sorties de chaque port de sortie vers les unités lo- giques (O' ) .
4. Commutateur d'interconnexion selon la revendication 3, dans lequel chaque port d'entrée depuis les commutateurs d'interconnexion (I) possède M entrées, chaque port de sortie vers les commutateurs d' interconnexion (O) possède M sorties, chaque port d'entrée depuis les unités logiques (I') possède N entrées, chaque port de sortie vers les unités logiques (O' ) possède P sorties, et dans lequel les premiers éléments de routage (4) sont au nombre de M, les deuxièmes éléments de routage (5) sont au nombre de N et les troisième éléments de routage (6) sont au nombre de P.
5. Commutateur d'interconnexion selon la revendication 1, dans lequel les entrées et les sorties sont reliées à une structure arborescente de liaison descendant des entrées vers les sorties et comportant des éléments de routage (4, 5, 6) organisés selon plusieurs niveaux pour relier :
- une entrée d'un port d'entrées depuis une unité logique voisine (I') à kl sorties d'un port de sorties vers une unité logique voisine (O' ) en passant par deux éléments de routage (5, 6) , où kl est le rapport du nombre de sorties dudit port de sorties sur le nombre d'entrées dudit port d'entrées,
- une entrée d'un port d'entrées depuis une unité logique voisine (I') à k2 sorties d'un port de sorties vers un commutateur d' interconnexion voisin (0) en passant par deux éléments de routage (4, 5), où k2 est le rapport du nombre d'entrée du port d'entrées depuis un commutateur d' interconnexion voisin sur le nombre d'entrées dudit port d'entrées depuis une unité logique voisine .
6. Unité logique (3) de réseau logique programmable, comportant des blocs logiques (7) reliés à quatre ports d'entrées regroupant une pluralité d'entrées et à quatre ports de sorties regroupant une pluralité de sorties, les entrées, les sorties et les blocs logiques étant reliées à une structure arborescente de liaison descendant des ports d' entrées vers les blocs logiques et montant des blocs logiques vers des ports de sorties et comportant des éléments de routage entrant (8, 10) et des éléments de routage sortant (9, 11) organisés selon plusieurs niveaux, les éléments de routage entrant reliant par un chemin unique chaque entrée de tous les ports d' entrée à une entrée unique de chaque bloc logique et les éléments de routage sortant reliant par un chemin unique chaque sortie d'un bloc logique à au moins une sortie de chaque port de sorties et aux éléments de routage entrant du même groupe.
7. Unité logique selon la revendication 6, dans laquelle chaque unité logique (3) possède L niveaux hiérarchiques qui comportent chacun au moins un groupe Gn regroupant au moins :
- Rn entrées et Sn sorties,
- Qn groupes Gn-1 appartenant au niveau hiérarchi- que n-1 ayant chacun Rn_i entrées et Sn-I sorties,
- Rn-i éléments de routage entrant (8) reliés chacun à tous les Qn groupes Gn_i,
- Sn-! éléments de routage sortant (9) reliés à tous les Qn groupes Gn-I et à un ensemble des éléments de routage entrant de ce groupe, chaque groupe du niveau le plus bas correspondant à un bloc logique.
8. Réseau logique programmable comportant des commutateurs d'interconnexion (2) reconfigurables et des unités logiques (3) reconfigurables reliées entre eux par un maillage de communication tel que :
- chaque commutateur d' interconnexion est relié directement à quatre commutateurs d' interconnexion voisins, - chaque unité logique possède huit unités logiques voisines et est reliée à chacune d'elles par l'intermédiaire d'un commutateur d'interconnexion.
- au moins un chemin unique est défini entre deux points du réseau.
9. Réseau selon la revendication 8, dans lequel les commutateurs d'interconnexion sont conformes à l'une des revendications 1 à 5.
10. Réseau selon la revendication 8 ou la revendication 9, dans lequel les unités logiques sont confor- mes à l'une quelconque des revendications 6 et 7.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0803903A FR2933826B1 (fr) | 2008-07-09 | 2008-07-09 | Reseau logique programmable, commutateur d'interconnexion et unite logique pour un tel reseau |
PCT/FR2009/000845 WO2010004140A2 (fr) | 2008-07-09 | 2009-07-08 | Reseau logique programmable, commutateur d'interconnexion et unite logique pour un tel reseau |
Publications (1)
Publication Number | Publication Date |
---|---|
EP2324572A2 true EP2324572A2 (fr) | 2011-05-25 |
Family
ID=40485730
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP09784255A Withdrawn EP2324572A2 (fr) | 2008-07-09 | 2009-07-08 | Reseau logique programmable, commutateur d'interconnexion et unite logique pour un tel reseau |
Country Status (6)
Country | Link |
---|---|
US (1) | US7795911B2 (fr) |
EP (1) | EP2324572A2 (fr) |
JP (1) | JP2011527543A (fr) |
CN (1) | CN102089976B (fr) |
FR (1) | FR2933826B1 (fr) |
WO (1) | WO2010004140A2 (fr) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9270278B2 (en) * | 2012-03-30 | 2016-02-23 | Intel Corporation | Spin transfer torque based memory elements for programmable device arrays |
US9900011B2 (en) * | 2016-03-07 | 2018-02-20 | Kabushiki Kaisha Toshiba | Semiconductor apparatus, routing module, and control method of semiconductor apparatus |
CN112131813B (zh) * | 2020-09-25 | 2022-02-18 | 无锡中微亿芯有限公司 | 基于端口交换技术的用于提升布线速度的fpga布线方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5477165A (en) * | 1986-09-19 | 1995-12-19 | Actel Corporation | Programmable logic module and architecture for field programmable gate array device |
JPH02224439A (ja) * | 1989-02-27 | 1990-09-06 | Nippon Telegr & Teleph Corp <Ntt> | 分散制御形データ通信方法 |
US5255203A (en) * | 1989-08-15 | 1993-10-19 | Advanced Micro Devices, Inc. | Interconnect structure for programmable logic device |
US5198705A (en) * | 1990-05-11 | 1993-03-30 | Actel Corporation | Logic module with configurable combinational and sequential blocks |
GB9312674D0 (en) * | 1993-06-18 | 1993-08-04 | Pilkington Micro Electronics | Configurabel logic array |
WO1995022205A1 (fr) * | 1994-02-15 | 1995-08-17 | Xilinx, Inc. | Architecture en tuiles juxtaposees pour matrice de portes programmables par l'utilisateur |
US5682107A (en) * | 1994-04-01 | 1997-10-28 | Xilinx, Inc. | FPGA architecture with repeatable tiles including routing matrices and logic matrices |
US5894565A (en) * | 1996-05-20 | 1999-04-13 | Atmel Corporation | Field programmable gate array with distributed RAM and increased cell utilization |
GB2374242B (en) * | 2001-04-07 | 2005-03-16 | Univ Dundee | Integrated circuit and related improvements |
US7058918B2 (en) * | 2003-04-28 | 2006-06-06 | Dafca, Inc. | Reconfigurable fabric for SoCs using functional I/O leads |
JP4576538B2 (ja) * | 2004-05-12 | 2010-11-10 | 国立大学法人 岡山大学 | 多次元のスイッチトポロジーを有する集積回路 |
JP4806417B2 (ja) * | 2005-11-25 | 2011-11-02 | パナソニック株式会社 | 論理ブロック制御システム及び論理ブロック制御方法 |
US7274215B2 (en) * | 2006-01-17 | 2007-09-25 | M2000 Sa. | Reconfigurable integrated circuits with scalable architecture including one or more adders |
JP4755033B2 (ja) * | 2006-07-05 | 2011-08-24 | ルネサスエレクトロニクス株式会社 | 半導体集積回路 |
US7557605B2 (en) * | 2007-09-14 | 2009-07-07 | Cswitch Corporation | Heterogeneous configurable integrated circuit |
US9071246B2 (en) * | 2007-09-14 | 2015-06-30 | Agate Logic, Inc. | Memory controller for heterogeneous configurable integrated circuits |
-
2008
- 2008-07-09 FR FR0803903A patent/FR2933826B1/fr not_active Expired - Fee Related
- 2008-09-15 US US12/210,486 patent/US7795911B2/en not_active Expired - Fee Related
-
2009
- 2009-07-08 WO PCT/FR2009/000845 patent/WO2010004140A2/fr active Application Filing
- 2009-07-08 JP JP2011517193A patent/JP2011527543A/ja active Pending
- 2009-07-08 EP EP09784255A patent/EP2324572A2/fr not_active Withdrawn
- 2009-07-08 CN CN200980127610.5A patent/CN102089976B/zh not_active Expired - Fee Related
Non-Patent Citations (1)
Title |
---|
See references of WO2010004140A2 * |
Also Published As
Publication number | Publication date |
---|---|
FR2933826B1 (fr) | 2011-11-18 |
WO2010004140A2 (fr) | 2010-01-14 |
JP2011527543A (ja) | 2011-10-27 |
US20100007378A1 (en) | 2010-01-14 |
WO2010004140A3 (fr) | 2010-10-14 |
US7795911B2 (en) | 2010-09-14 |
FR2933826A1 (fr) | 2010-01-15 |
CN102089976A (zh) | 2011-06-08 |
CN102089976B (zh) | 2014-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2748852B1 (fr) | Capteur d'image a regroupement de pixels | |
EP1668530A2 (fr) | Composant a architecture reconfigurable dynamiquement | |
EP0626760B1 (fr) | Système électronique organisé en réseau matriciel de cellules | |
EP0143039A1 (fr) | Procédé de fabrication d'une matrice de composants électroniques | |
WO2002013389A3 (fr) | Reseau d'interconnexions pour reseau de portes programmable par l'utilisateur | |
FR2542528A1 (fr) | Reseau universel automatise de composants electroniques dont la geometrie peut etre modifiee | |
FR2824157A1 (fr) | Systeme de memoire evolutif avec interconnexions reconfigurables | |
FR2550012A1 (fr) | Dispositif a circuits integres a semi-conducteurs | |
FR2987709A1 (fr) | Table de correspondance | |
WO2010004140A2 (fr) | Reseau logique programmable, commutateur d'interconnexion et unite logique pour un tel reseau | |
EP0090704B1 (fr) | Circuit intégré prédiffusé, et procédé d'interconnexion des cellules de ce circuit | |
EP0023215A1 (fr) | Systeme de traitement de signaux a attenuateur electronique multivoies et a reglages memorises | |
TW567669B (en) | Very fine grain field programmable gate array architecture and circuitry | |
EP2366246B1 (fr) | Circuit intégré matriciel et notamment capteur d'image de grande dimension | |
EP1026912A1 (fr) | Modules de commutation photonique, matrice de commutation comportant de tels modules | |
Strukov | Hybrid CMOS/nanodevice circuits with tightly integrated memory and logic functionality | |
EP2363813B1 (fr) | Puce électronique et circuit intégré comportant une telle puce électronique | |
FR2653277A1 (fr) | Circuit integre logique, a temps de basculement reglable. | |
EP4203424B1 (fr) | Système à base de matrice de redondance | |
EP0169980A2 (fr) | Mémoire morte réalisée en circuit intégré prédiffusé | |
FR2505581A1 (fr) | Compteur parallele et application a la realisation d'un additionneur binaire | |
EP0238528B1 (fr) | Sequenceur d'instructions pour microprocesseur a architecture en reseau | |
EP2647217B1 (fr) | Réseau de commutateurs et charge utile de satellite de télécommunications comportant un réseau de commutateurs | |
EP2514096A1 (fr) | Matrice interconnectee de cellules logiques reconfigurables avec une topologie d'interconnexion croisee | |
EP0793354B1 (fr) | Structure intégrée d'un décodeur convolutif de Viterbi |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20110121 |
|
AK | Designated contracting states |
Kind code of ref document: A2 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO SE SI SK SM TR |
|
AX | Request for extension of the european patent |
Extension state: AL BA RS |
|
DAX | Request for extension of the european patent (deleted) | ||
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
18D | Application deemed to be withdrawn |
Effective date: 20170201 |