FR 2544523 A1 19841019 FR 8403857 A 19840313 La présente invention concerne les réseaux lo- giques programmables de façon conditionnelle. On incorpore de façon caractéristique des ré- seaux logiques programmables dans des puces de circuit inté- gré à haut niveau d'intégration ou à très haut niveau d'in- tégration Ces puces de réseaux logiques programmables sont d'un type dans lequel la fonction logique particulière du circuit n'est pas déterminée au moment de la fabrication. Une puce de réseau logique programmable est conçue de fa- çon que sa fonction logique puisse être déterminée ulté- rieurement La plupart des puces de l'art antérieur de ce type sont programmables de façon ferme ou permanente dans la mesure o elles contiennent des fusibles ou d'autres éléments qui sont détruits de façon permanente pour déter- miner la fonction logique du dispositif L'invention con- cerne un réseau logique programmable de façon condition- nelle, dans la mesure o n'importe quel dispositif parti- culier peut être programmé de façon répétée avec la même fonction logique ou des fonctions logiques différentes, par un processus d'introduction de données fonctionnelles logiques, qu'on appelle quelquefois des données de carac- térisation Bien qu'un réseau logique programmable de fa- çon conditionnelle exige le chargement de données de carac- térisation pour pouvoir fonctionner, un réseau logique pro- grammable de façon conditionnelle conforme à l'invention n'est pas simplement un dispositif de mémoire On utilise les données de caractérisation pour commander les fonctions logiques particulières à accomplir à des niveaux logiques particuliers dans le réseau logique programmable de façon conditionnelle De plus, un réseau logique programmable de façon conditionnelle conforme à l'invention peut comporter quatre quadrants ou secteurs et des circuits de commande sur chaque puce, de façon qu'une seule puce comporte plusieurs réseaux indépendants avec une commande fonctionnelle commune. Le brevet des E U A N O 3 818 252 montre un ensem- ble de lignes de mot et de lignes de bit constituant des entrées d'un réseau qui contient des fusibles en tant qu' éléments programmables Ce brevet montre en fait une va- riante d'un réseau logique programmable standard ayant deux niveaux pour produire une fonction du type "somme de produits", mais il ne décrit pas le réseau logique pro- grammable de façon conditionnelle à plusieurs niveaux de la présente invention Le brevet des E U A N O 4 233 667 montre également un réseau logique programmable mais il ne décrit pas la structure ou les possibilités correspon- dant à la présente invention. Le brevet des E U A N O 3 912 914 montre un mo- dule de commutation programmable qui peut devenir extrême- ment complexe pour toute fonction de commutation particu- lièrement étendue qui doit être utilisée, du fait que la commande de programmation pour une fonction de commutation quelconque doit être sortie de la puce particulière par des fils individuels, pour commander la fonction de commu- tation Le réseau de la présente invention peut être pro- grammé par l'introduction d'un train de données de carac- térisation qui commande les divers éléments logiques sous l'effet d'un processus de caractérisation Les brevets des E.U A N O 3 855 536, 3 976 983 et 4 293 783 montrent tous des réseaux logiques mais ou bien ces réseaux exigent une commande de programmation par des broches logiques externes, ou bien ils présentent des limitations sur les fonctions logiques particulières qui peuvent être réalisées. Bien que l'invention concerne essentiellement une entité ou une opération originales, ou une combinaison originale d'entités ou d'opérations, décrites ici etiou re- présentées sur les dessins annexés, un aspect particulier de l'invention auquel celle-ci n'est cependant en rien limi- tée, porte sur un réseau logique programmable de façon con- ditionnelle qui comprend: un ensemble d'étages logiques, ayant chacun des entrées logiques et des sorties logiques 25445 t 5 qui correspondent à une fonction prédéterminée de l'entrée, chaque étage consistant en éléments fonctionnels et cha- que élémentfonctionnel comportant des entrées connectées de façon à recevoir des signaux d'entrée de données, et des sorties de données qui représentent des équations logi- ques des signaux d'entrée de données, chaque élément fonc- tionnel comportant un ensemble d'entrées connectées à au moins une sortie de façon que la sortie puisse être n'im- porte quelle fonction logique des entrées, chacun de ces éléments fonctionnels comportant un ensemble de bascules, en nombre équivalent au nombre d'états de sortie possibles, de façon à conserver une indication logique prédéterminée de l'état de sortie associé qui correspond à la fonction logique réalisée; un ensemble d'étages de dispositifs de transmission à bascule ayant des entrées connectées de façon à recevoir les sorties de l'un des étages logiques, et des sorties connectées aux entrées d'un autre des étages logiques et à la sortie du réseau logique, chacun des dispo- sitifs de transmission pouvant inverser une condition logi- que et transmettre cette condition sans retard, ou bien mé- moriser une condition logique jusqu'à salibération, sous la dépendance d'une fonction logique prédéterminée à réali- ser; et des moyens de commande destinés à conditionner tous les éléments fonctionnels et les dispositifs de transmission pour réaliser une fonction logique prédéterminée. Le réseau logique comprend de préférence un pre- mier étage logique de huit éléments fonctionnels connectés de façon à recevoir des signaux d'entrée de données; un se- cond étage logique de six éléments fonctionnels connectés aux sorties du premier étage logique; un troisième étage de six dispositifs de transmission à bascule connectés aux sor- ties du second étage logique; un quatrième étage logique de quatre éléments fonctionnels connectés aux sorties du troisiè- me étage; un cinquième étage de quatre dispositifs de trans- mission à bascule connectés aux sorties du quatrième étage logique; un sixième étage logique de deux éléments fonc- tionnels connectés aux sorties du cinquième étage; un septième étage de deux dispositifs de transmission à bas- cule connectés aux sorties du sixième étage logique; et un huitième étage de douze portes de validation de sortie connectées aux sorties des troisième, cinquième et septiè- me étages. Au cours du fonctionnement, la sortie de cha- que porte de validation de sortie peut être forcée à 1 ' état haut, bas ou flottant dans un premier mode, ou bien elle peut transmettre en sortie la fonction prédéterminée de l'entrée, dans un autre mode de fonctionnement Chaque élément fonctionnel peut ainsi avoir trois entrées de don- nées, huit entrées de commande logique et une sortie Dans le mode de réalisation préféré, chaque élément fonctionnel comprend un multiplexeur huit-un et huit circuits de porte ET/bascule RS connectés aux entrées du multiplexeur. Selon un aspect non limitatif supplémentaire de l'invention, un réseau logique programmable de façon condi- tionnelle comprend: un premier étage logique d'éléments fonctionnels, chacun d'eux produisant des signaux de sortie fonctionnels logiques qui sont des fonctions prédéterminées des signaux d'entrée; un second étage d'éléments fonction- nels connectés au premier étage, chacun de ces éléments pro- duisant des signaux de sortie fonctionnels logiques qui sont des fonctions logiques prédéterminées des signaux d'entrée un troisième étage consistant en dispositifs de transmis- sion à bascule connectés au second étage de façon à accom- plir une fonction de transmission non retardée, avec inver- sion, ou une fonction de mémorisation, sous la dépendance d'une fonction prédéterminée; un quatrième étage d'éléments fonc- tionnels qui sont connectés de façon à recevoir des signaux d'entrée provenant du troisième étage de dispositifs de trans- mission, chacun de ces éléments fonctionnels produisant des signaux de sortie fonctionnels logiques qui sont des fonc- tions logiques prédéterminées des signaux d'entrée; un cinquième étage constitué par des dispositifs de transmis- sion à bascule connectés au quatrième étage de façon à accomplir une fonction de transmission non retardée, avec inversion, ou une fonction de mémorisation, sous la dépen- dance d'une fonction prédéterminée; un sixième étage d'élé- ments fonctionnels connectés de façon à recevoir des si- gnaux d'entrée à partir du quatrième étage de dispositifs de transmission, chacun d'eux produisant des signaux de sortie fonctionnels logiques qui sont des fonctions logi- ques prédéterminées des signaux d'entrée; un septième éta- ge de dispositi 2 de transmission à bascule qui sont con- nectés de façon à recevoir des signaux d'entrée de données provenant du sixième étage, pour accomplir une fonction de transmission non retardée, avec inversion, ou une fonction de mémorisation, sous la dépendance d'une fonction prédé- terminée; un étage de validation de sortie connecté de fa- çon à recevoir des signaux d'entrée provenant des troisiè- me, cinquième et septième étages de dispositifs de transmis- sion, pour fournir des signaux de sortie de données pour le réseau logique; et des moyens de commande connectés à la totalité des éléments fonctionnels et des dispositifs de transmission, pour commander le réseau logique et pour lui appliquer des signaux d'horloge, ainsi que pour produire des signaux d'entrée de mémorisation pour positionner tous les éléments fonctionnels et les dispositifs de transmission à bascule, afin de réaliser une fonction logique prédétermi-n née. Un autre aspect non restrictif de l'invention procure un réseau logique programmable de façon condition- nelle qui comprend un ensemble de secteurs logiques, chaque secteur ayant des entrées et des sorties logiques indépendan- tes des autres secteurs; un ensemble d'étages logiques, cha- que étage logique étant formé d'éléments fonctionnels et cha- que étage logique ayant ses entrées connectées de façon à 25445 t 3 recevoir des signaux d'entrée de données, et produisant des signaux de sortie de données qui représentent des fonc- tions logiques des signaux d'entrée de données, chaque élément fonctionnel comportant un ensemble d'entrées con- nectées à au moins une sortie de façon que la sortie puis- se correspondre à n'importe quelle fonction logique des entrées, ces éléments fonctionnels comprenant un ensemble de bascules en nombre équivalent au nombre d'états de sor- tie possibles, de façon à conserver une indication logique de l'état de sortie associé correspondant à la fonction lo- gique réalisée; et un ensemble d'étages de dispositifs de transmission à bascule ayant des entrées connectées de fa- çon à recevoir des signaux de sortie de l'un des étages lo- giques, et des sorties connectées aux entrées d'un autre des étages logiques et à la sortie dudit secteur, chacun d'eux pouvant inverser une condition logique et transmet- tre cette condition sans aucun retard, ou bien mémoriser une condition logique jusqu'à sa libération, sous la dépen- dance d'une fonction logique prédéterminée à réaliser; et des moyens de commande pour tous les secteurs, destinés à positionner tous les éléments fonctionnels et tous les dis- positifs de transmission pour réaliser des fonctions logiques prédéterminées dans chaque secteur. Un autre aspect non restrictif supplémentaire de l'invention procure un réseau logique programmable de façon conditionnelle destiné à réaliser une fonction logique pré- sélectionnée sur une fonction d'entrée de données, compre- nant: un premier étage d'éléments logiques, chacun de ces éléments logiques consistant en éléments fonctionnels ayant un ensemble de lignes de réception de signaux d'entrée de don- nées, au moins une ligne de sortie de données et des moyens pour recevoir et mémoriser des signaux de commande représenta- tifs de la fonction à réaliser, connectés de façon à recevoir les signaux d'entrée de données dirigés vers le système, et un premier ensemble de signaux logiques destinés à positionner les bascules du premier étage d'éléments logiques; un second étage d'éléments logiques connecté au premier étage d'élé- ments logiques, consistant en éléments fonctionnels ayant chacun un ensemble de lignes de réception de signaux d'en- trée de données connectées au premier étage, au moins une ligne de sortie de données et des moyens pour recevoir et mémoriser des signaux de commande représentatifs de la fonction à réaliser, connectés de façon à recevoir des si- gnaux d'entrée de données appliqués au second étage et un second ensemble de signaux logiques destinés à positionner les bascules du second étage d'éléments logiques; un troi- sième étage d'éléments logiques connectés au second étage et consistant en dispositifs de transmission à bascule qui comportent des moyens destinés à recevoir et à mémoriser un troisième ensemble de signaux logiques pour commander la fonction réalisée par les dispositifs de transmission; un quatrième étage d'éléments logiques, chacun de ces éléments logiques consistant en éléments fonctionnels comportant cha- cun un ensemble de lignes de réception de signaux d'entrée de données, au moins une ligne de sortie de données et des moyens destinés à recevoir et à mémoriser des signaux de com-a mande représentatifs de la fonction à réaliser, connectés de façon à recevoir des signaux d'entrée provenant du troisième étage de dispositifs de transmission, et comportant des mo- yens pour recevoir et mémoriser un quatrième ensemble de si- gnaux logiques, afin de positionner les bascules des éléments fonctionnels dans le but de réaliser la fonction logique pré- déterminée; un cinquième étage d'éléments logiques connectés au quatrième étage et consistant en dispositifs de transmis- sion à bascule comportant des moyens destinés à recevoir et à mémoriser un cinquième ensemble de signaux logiques, pour com- mander la fonction réalisée par les dispositifs de transmis- sion; un sixième étage d'éléments logiques consistant en élé- ments fonctionnels connectés au cinquième étage, chacun d'eux comprenant un ensemble de lignes de réception de signaux d'en- trée de données, au moins une ligne de sortie de données et des moyens destinés à recevoir et à mémoriser des si- gnaux de commande représentatifs de la fonction à réaliser, connectés de façon à recevoir des signaux d'entrée de don- nées provenant du cinquième étage de dispositifs de trans- mission, et comportant des moyens destinés à recevoir un sixième ensemble de signaux logiques, pour positionner les bascules des éléments fonctionnels de façon à réaliser les fonctions logiques prédéterminées; un septième étage d'élé- ments logiques connectés au sixième étage et consistant en dispositifs de transmission, chacun d'eux comprenant un en- semble de lignes de réception de signaux d'entrée de don- nées, au moins une ligne de sortie de données et des moyens pour recevoir et mémoriser des signaux de commande représen- tatifs de la fonction prédéterminée à réaliser; et un éta- ge de validation de sortie connecté de façon à recevoir des signaux d'entrée provenant des troisième, cinquième et sep- tième étages de dispositifs de transmission, pour fournir des signaux de sortie de données pour le réseau logique. Le réseau logique peut en outre comprendre des moyens de commande destinés à produire un train série de signaux de commande destiné à être appliqué à l'entrée de toutes les bascules des éléments fonctionnels, et un train de signaux de commande de positionnement de bascules, desti- né à provoquer le chargement du signal de commande de bascu- le approprié dans la bascule appropriée. Le réseau logique comprend de préférence des mo- yens de commande d'horloge destinés à commander la transmis- sion sélective des signaux de commande appropriés vers les éléments fonctionnels appropriés, dans l'ordre des étages lo- giques, pendant le fonctionnement du réseau logique. Le réseau logique peut comprendre un compteur con- çu de façon à être incrémenté à la réception de signaux de commande individuels dans le train de données série d'entrée, et le compte de sortie de ce compteur commande l'adressage des éléments fonctionnels X D'autres caractéristiques et avantages de l'in- vention seront mieux compris à la lecture de la descrip- tion qui va suivre d'un mode de réalisation et en se ré- férant aux dessins annexés sur lesquels: Les figures 1 A, 1 B et 1 C sont destinées à être observées côte à côte en étant placées dans l'ordre, de gauche à droite, et elles représentent un schéma logique détaillé d'un mode de réalisation d'un réseau logique pro- grammable de façon conditionnelle conforme à l'invention La figure 2 est un schéma logique détaillé de l'un des éléments fonctionnels du réseau logique représen- té sur les figures 1 A, 1 B et 1 C; La figure 3 est un schéma logique détaillé d'un dispositif de transmission/blocage du réseau logique re- présenté sur les figures l A, 1 B et 1 C; La figure 4 est un schéma logique détaillé d'un élément logique de validation de sortie de la partie du réseau logique qui est représentée sur la figure 1 C; La figure 5 est un schéma logique d'un circuit de commande du réseau logique représenté sur les figures l A, 1 B et 1 C; La figure 6 est un schéma logique du circuit de commande pour la logique de caractérisation destinée à commander le réseau logique des figures l A, 1 B et 1 C; et La figure 7 est un schéma logique simplifié du réseau logique représenté sur les figures l A, 1 B et 1 C, montrant seulement les interconnexions logiques essentielles. Les figures l A, 1 B et 1 C montrent un mode de réa- lisation d'un réseau logique programmable de façon condi- tionnelle, 10, conforme à l'invention Des signaux d'en- trée de données logiques apparaissent du côté gauche de la figure l A et progressent dans les divers niveaux logi- ques de façon que des signaux de sortie, correspondant à la fonction logique programmée prédéterminée, apparaissent du côté droit de la figure 1 C. Un ensemble d'éléments fonctionnels 12, 14, 16, 18, 20, 22, 24, 26 constituent un premier niveau logique du réseau logique 10 Les éléments fonctionnels 12 à 26 sont tous identiques et la structure de l'élément fonc- tionnel 12 est représentée en détail sur la figure 2 Cha- que élément fonctionnel comporte trois entrées de données. Les entrées de données de l'élément fonctionnel 12 sont désignées par A, B et C, avec un indice numérique pour in- diquer le numéro de l'élément fonctionnel particulier On utilise une notation similaire pour les entrées de données de l'ensemble des huit éléments fonctionnels du premier ni- veau logique Chaque élément fonctionnel 12 à 26 comporte une seule sortie qui est interconnectée au reste du réseau logique 10 Un second niveau logique est formé par six éléments fonctionnels 28, 30, 32, 34, 36, 38 Les six élé- ments fonctionnels 28 à 38 sont connectés à six dispositifs de transmission/blocage 40, 42, 44, 46, 48, 50 Ces disposi- tifs de transmission/blocage sont tous identiques et un schéma détaillé du dispositif de transmission/blocage 40 est représenté sur la figure 3 Ces six dispositifs de transmission/blocage constituent un troisième niveau logi- que Les sorties de ces six dispositifs de transmission, blocage sont connectées à un quatrième niveau logique. Le quatrième niveau logique consiste en quatre éléments fonctionnels 52, 54, 56, 58 Les sorties des qua- tre éléments fonctionnels du quatrième niveau logique sont connectées aux entrées de quatre dispositifs de transmis- sion/blocage 60, 62, 64, 66 Les dispositifs de transmis- sion/blocage 60 à 66 constituent le cinquième niveau logi- que Un sixième niveau logique est formé par deux éléments fonctionnels 68, 70 Les sorties des éléments fonctionnels 68, 70 appliquent des signaux d'entrée à des éléments de fonction/transmission 72, 74 qui constituent le huitième ni- veau logique Chaque élément fonctionnel est désigné par un il préfixe FE associé à un numéro d'élément particulier De façon similaire, tous les dispositifs de transmissioniblo- cage sont désignés par un numéro particulier et par le préfixe FP. Le circuit logique de sortie consiste en un élé- ment à deux étages qu'on peut considérer comme correspon- dant à une seule fonction Le premier étage de chaque élé- ment à deux étages est une porte de validation de sortie qui est représentée en détail sur la figure 4 La porte de validation de sortie est connectée à un circuit séparateur à trois états dont les états de sortie possibles sont l'état "haut", l'état "bas" et l'état "flottant" Dans le cas de l'état de sortie flottant, le niveau de signal sur la li- gne de sortie est flottant, en supposant que d'autres dis- positifs logiques actifs sont également connectés à la mê- me ligne logique Par conséquent, dans le mode de réalisa- tion représenté, la configuration logique de sortie est dé- terminée par 12 paires de dispositifs de sortie comportant 12 portes de validation de sortie 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120, 124 Chaque porte de validation de sortie est associée à un séparateur à trois états respec- tifs 82, 86, 90, 94, 98, 102, 106, 110, 114, 118, 122, 126. Le réseau logique représenté sur les figures l A, 1 B et 1 C peut être réalisé de préférence sous la forme d'un quadrant ou d'un secteur parmi quatre quadrants ou secteurs identiques destinés à être-placés sur une seule puce de cir- cuit à très haut niveau d'intégration Dans différents modes de réalisation, on peut utiliser un nombre différent de sec- * teurs avec un système de commande commun Ainsi, une seule puce de circuit à très haut niveau d'intégration contien- drait quatre réseaux logiques, chacun d'eux étant identique à celui représenté sur les figures l A, l B et 1 C, associés en- semble en quadrants avec un seul circuit de commande; comme celui représenté sur les figures 5 et 6 Le circuit de la fi- gure 6 est conçu de façon à pouvoir commander quatre circuits séparés du type représenté sur les figures 1 A, 1 B et 1 C. Les diverses lignes de commande qui entrent dans la figure *A acheminent des signaux qui sont produits par le cir- cuit de commande représenté sur la figure 6, qu'on décri- ra ultérieurement en détail. Les signaux de sortie du circuit de commande dirigés vers chaque quadrant individuel sont appliqués à un décodeur 140, du type 3 entrées-8 sorties, représenté sur la figure l A Les lignes d'entrée C 5, C 4, C 3 provien- nent du circuit de commande de la figure 6, tandis que la ligne de commande C'9 met le décodeur en fonction ou hors fonction, selon qu'il s'agit ou non du quadrant particu- lier qui est adressé, parmi les quatre quadrants De fa- çon similaire, un décodeur 142 consiste en un élément de décodage du type 2 entrées-4 sorties dont les signaux d'en- trée proviennent du circuit de commande de la figure 6, tandis que la ligne C'8 met le décodeur en fonction ou hors fonction, sur la base de signaux d'entrée, conformément à la figure 6 Des ensembles de portes ET 144, 146, 148 dé- terminent la distribution des signaux de commande exigés dans le but de charger le programme pour une fonction logi- que programmable particulière à réaliser. On va maintenant considérer la figure 2 qui est un schéma logique détaillé de l'élément fonctionnel 12 L' élément fonctionnel comporte un multiplexeur 8 bits-1 bit, , dans lequel la sortie FD représente la sortie de don- nées L'entrée de données est représentée par des lignes de signal d'entrée A, B, C qui sont les lignes de commande de sélection du multiplexeur, mais qui forment les entrées de données pour l'élément fonctionnel Pour chacune des huit lignes d'entrée du multiplexeur, il existe un circuit de porte ET/bascule RS, 202, 204, 206, 208, 210, 212, 214, 216. Les signaux d'entrée de données fonctionnelles ou de carac- térisation qui sont destinés à commander le signal de sortie fonctionnel du multiplexeur 200, sont appliqués sur des entrées de programme SO à 57 On expliquera en relation avec le circuit de commande de la figure 6 les fonctions corres- pondant au signal de mise à zéro et au signal de valida- tion d'écriture Lorsqu'il est programmé avec un signal d'entrée fonctionnel, chacun des circuits *de bascule RS 202 à 216 conserve ou bloque le signal d'entrée fonction- nel pour toutes les opérations du circuit Le signal de mise à zéro met toutes les portes à zéro, dans le cadre du processus d'initialisation Le signal de validation d' écriture doit être validé pour l'écriture ou la programma- tion d'une fonction quelconque. On sait d'après la description fonctionnelle d'un multiplexeur qu'un multiplexeur 8 bits-1 bit ayant trois entrées de commande peut sélectionner en tant-que si- gnal de sortie l'un quelconque des signaux d'entrée possi- bles, en utilisant un signal de commande à 3 bits Récipro- quement, on sait que toute fonction logique de trois bits de données est nécessairement un bit de données haut ou bas En programmant correctement les huit bits d'entrée du multiplexeur 200 avec des bits hauts et bas, on peut faire en sorte que la sortie du multiplexeur 200 corresponde à n'importe quelle fonction logique des trois bits de don- nées qui sont appliqués sur les lignes de commande A, B, C Ceci représente alors la structure logique de l'élément fonctionnel 12 qui constitue un élément constitutif du ré- seau logique. On va maintenant considérer la figure 3 qui re- présente en détail le dispositif de transmission/blocage 40. Le dispositif de transmission/blocage 40 comprend un élément de bascule RS 220 muni d'une porte ET, une bascule 222 et une porte ET 224, tous connectés de la manière représentée. Si l'élément de bascule 220 est positionné dans le cadre de la fonction de caractérisation, le signal d'entrée de don- nées provenant de la section précédente fait fonctionner la porte ET 224 et le dispositif à la manière d'un circuit de transmission de données, et inverse les données à leur pas- sage dans ce circuit, sans retard notable Si l'élément de bascule 220 n'est pas positionné, le passage de données à travers le dispositif exige qu'un signal d'horloge déclen- che la-bascule 222, en plus de l'application des données, pour que la porte ET 224 transmette les données. En considérant la figure 4, on note que la por- te de validation de sortie 80 est constituée par un cir- cuit de bascule RS 230 associé à une porte 232 Si la sor- tie de la porte 232 est à l'état actif, le circuit sépara- teur 82 prend l'état haut ou l'état bas, sous l'effet du signal d'entrée de données qui lui est appliqué Si la li- gne de validation de sortie de la porte 232 n'est pas va- lidée, le circuit séparateur associé est inactif, ou flot- tant, indépendamment du signal d'entrée de données Les li- gnes de commande d'entrée qui attaquent la porte 232 fonc- tionnent de la manière suivante: H maintient ou force la porte à l'état inactif; F est une entrée de test et force. la validation de la sortie; et E est l'entrée de fonction- de validation normale. La figure 5 montre un registre de système de com- mande 281 qui applique un signal d'entrée de fonction de commande FOR AGE à une porte 283, comme le montre la figure i C, et il en est respectivement de même pour les autres qua- drants similaires. On va maintenant considérer la figure 6 qui re- présente un circuit de commande 300 destiné à commander le réseau logique de la figure 1 qui est l'un des quatre ré- seaux logiques identiques Le circuit de commande 300 compor- te une horloge de commande 302 Le train de données de test d'entrée est appliqué sur une entrée 304 Le train de don- nées de test d'entrée peut être fourni dans le cadre classi- que d'un ordinateur sous la forme d'une fonction du système logique de maintenance et de test, de façon externe aux che- mins de données normaux, dans le cadre de la fonction d'ini- tialisation L'horloge 302 accomplit une fonction "posi- tionnement, mise à zéro et oubli" Ceci signifie qu'elle prépare un signal de multivibrateur monostable pour comman- der les divers bits de mise à zéro, sur une sortie de mise à zéro 306, de façon que tous les circuits soient initia- lement mis à zéro, mais du fait de la formation d'un mul- tivibrateur monostable, il n'est pas nécessaire d'arrêter le signal de mise à zéro, celui-ci s'arrête automatiquement. Un décodeur 308 travaille en association avec un compteur 310 pour former un canal de sortie à 8 bits destiné à la transmission sélective en commun vers les dif- férents éléments fonctionnels tels que l'élément fonction- nel 12 Le train de données série d'entrée sur un canal à 1 bit est ainsi commandé par le compteur 310 et par le dé- codeur 308 de façon que chaque élément fonctionnel, comme l'élément fonctionnel 12, qui est adressé par, le canal de sortie à 8 bits,ait-ses entrées de programme déclenchées séquentiellement Un compteur 312 applique des signaux de commande de sortie sur des lignes C, comme le montre la figure 1, pour déterminer quelle logique de sélection ou quels éléments fonctionnels ou quels dispositifs de trans- mission/blocage sont déclenchés pour l'adressage de la fonction de programmation Le compteur 310 détermine égale- ment quelle est la porte de validation de sortie qui est adressée, On va maintenant considérer la figure 7 qui mon- tre un schéma logique simplifié du réseau logique des figu- res 1 A, 1 B et 1 C Les dispositifs logiques sont représentés seulement de façon symbolique-et les diverses lignes de pro- grammation et de fonction de commande ne sont pas indiquées. Les références 12, 16, 18, 20, 22, 24, 26 sont ainsi utili- sées sur la figure 7 pour désigner les éléments fonction- nels, exactement comme sur la figure l A, du fait qu'on dési- re identifier l'élément et sa fonction Ainsi, la figure 7 montre le même réseau logique que sur les figures l A, 1 B et 2544523- 1 C, avec huit niveaux de logique et un niveau de sortie, formant le réseau logique programmable de façon condition- nelle, 10 La différence-importante sur la figure 7 con- siste en ce que les paires d'éléments de sortie à deux éta- ges, représentées sur la figure 1 C, sont simplifiées en un seul élément de sortie sur la figure 7 Ainsi, les dis- positifs combinés comprenant une porte de validation de sortie et un circuit séparateur à trois états, sont indi- qués sur la figure 7 par les références numériques respec- tives 82 A, 86 A, etc, jusqu'à 126 A, pour indiquer la cor- respondance avec les circuits séparateurs à trois états 82, 86, 90, etc, jusqu'à 126, qui sont représentés sur la figure 1 C. Le réseau logique programmable de façon condi- tionnelle conforme à l'invention et décrit ci-dessus est conçu dans le but de résoudre l'un-des problèmes qui se posent continuellement en conception logique, à savoir "l'accaparement" de parties d'un système pour l'accomplis- sement de fonctions de commande simples Ceci est à dis- tinguer de fonctions arithmétiques importantes, comme cel- les d'additionneurs ou de multiplicateurs qui sont habi- tuellement conçus spécialement Bien que le réseau logi- que puisse être conçu pour remplir une fonction d'addition ou de multiplication, il aurait de façon caractéristique une mauvaise efficacité pour de telles fonctions On consi- dère que le réseau logique est le plus efficace dans la réa- lisation de fonctions restantes diverses, du genre néces- saire pour compléter la logique d'un système effectuant des opérations arithmétiques ou booléennes dans un ordinateur. Par exemple, si un système d'ordinateur comporte quatre addi- tionneursà 16 bits séparés, ou même des multiplicateurs, qui fonctionnent séparément dans un mode à 16 bits, il serait uti- le d'utiliser un réseau logique programmable de façon condi- tionnelle pour permettre la réalisation de fonctions logiques et de commande permettant de faire fonctionner en parallèle les quatre systèmes séparés, dans un mode à 64 bits On n'en- visage pas l'utilisation du réseau logique pour réaliser entièrement la section de commande d'une unité centrale d'ordinateur Des fonctions microprogrammées spécialisées et des fonctions arithmétiques ou booléennes spécialisées seraient plus efficaces pour d'aussi grandes structures. Le réseau logique est au contraire intéressant pour des fonctions telles que la détection de dépassement de capa- cité dans une unité arithmétique et logique ou la comman- de de distribution pour l'utilisation d'un bus à trois états. On a utilisé dans l'art antérieur des techni- ques faisant appel à des fusibles pour réaliser des ré- seaux logiques programmables Il n'existe cependant aucun moyen utile ou économique pour introduire une logique pro- grammable du type à fusibles dans des circuits à très haut niveau d'intégration L'invention satisfait un tel besoin en permettant de disposer de fonctions logiques combina- toires ou séquentielles qui peuvent être sélectionnées et mélangées par l'utilisateur, grâce à l'emploi de données de caractérisation. L'élément fonctionnel de base du réseau logique est un élément fonctionnel tel que l'élément fonctionnel 12, auquel on peut donner une configuration lui permettant de réaliser n'importé quelle fonction logique de trois entrées. On connecte ensemble un certain nombre de niveaux ou d'éta- ges logiques de ces éléments fonctionnels pour former le ré- seau logique d'ensemble Un premier étage des éléments fonc- tionnels est connecté aux broches d'entrée et les sorties du premier étage d'éléments fonctionnels attaquent l'étage d'élé- ments fonctionnels immédiatement suivant Il y a quatre grou- pes séparés d'éléments fonctionnels dans le mode de réalisa- tion de l'invention qui est représenté Il y a quatre ré- seaux logiques séparés sur une seule puce de circuit à très haut niveau d'intégration et on appelle chaque réseau logique un secteur ou un quadrant, du fait qu'il constitue l'un des réseaux d'un ensemble de quatre réseaux logiques iden- tiques Dans chaque quadrant, il y a dans un premier étage huit éléments fonctionnels qui sont connectés à 24 bro- ches d'entrée Il y a six éléments fonctionnels dans un second étage logique, quatre éléments fonctionnels dans un troisième étage logique et, enfin, deux éléments fonction- nels dans un quatrième étage logique Toutes les sorties fonctionnelles du second étage et des étages suivants sont connectées à des broches de sortie de la puce, outre le fait qu'elles appliquent des signaux de sortie aux étages suivants Ceci signifie qu'un utilisateur peut réaliser jusqu'à six équations logiques de complexité modérée ou jusqu'à 12 équations logiques à termes mélangés, ou seule- ment deux équations logiques complexes, en utilisant les diverses combinaisons d'éléments fonctionnels dans les éta- ges L'équation la plus complexe qu'on peut programmer dans un réseau logique donné du type représenté sur les figures 1 A, 1 B et 1 C peut englober sept éléments fonctionnels avec 21 broches d'entrée. A la sortie de chaque élément fonctionnel dans chaque étage, sauf aux sorties du premier étage, se trouve une bascule pouvant être sélectionnée, ou un dispositif de transmission/blocage On peut sélectionner chaque bascule de façon à la faire fonctionner à la manière d'un registre de blocage pendant un seul cycle, ou pour transmettre les don- nées directement, sans mémorisation des données et avec un retard minimal Chaque bascule comporte une entrée qui permet de forcer à zéro toutes les bascules sous la commande du sys- tème, pour le test. A chaque broche de sortie de la puce est associé un élément de sortie qui commande la ligne de commande des trois états de chaque circuit séparateur de broche de sortie. Un utilisateur peut forcer la broche de sortie de façon qu'elle soit validée en permanence, c'est-à-dire que la sortie de don- nées n'est jamais mise hors fonction, et il peut égale- ment valider une broche de sortie associée à chacun des quatre quadrants pour commander la ligne de commande des trois états de chaque broche de sortie d'un-quadrant. Chaque élément fonctionnel, comme l'élément fonctionnel 12, contient un multiplexeur du type 8-1 qui est attaqué par huit bascules de mémorisation et par trois entrées de sélection A, B et C, qui sont décodées-pour sé- lectionner l'état d'une bascule pour la transmission à la sortie du multiplexeur Les huit bascules de données sont positionnées et mises à zéro pour réaliser la fonction lo- gique désirée des entrées A, B, C Les huit bascules de données forment une table de vérité complète pour trois entrées, ce qui permet de réaliser n'importe quelle fonc- tion logique de trois bits en positionnant et en mettant à zéro les bascules de données nécessaires A titre d'exemple simple, on obtient FD=A*B*C en mettant à zéro toutes les bascules de données, sauf celle qui est associée à 57, qui est positionnée Plusieurs méthodes logiques bien connues permettent de trouver aisément la table de vérité pour n'importe quelle fonction logique exigée. Toutes les bascules sont initialisées par des circuits commandés par le circuit de commande qui est repré- senté sur la figure 6 Toutes les bascules sont mises à zéro au même instant, puis elles sont positionnées conditionnelle- ment et séquentiellement par des données qui arrivent sur l'entrée 304 Dans chaque élément fonctionnel, le bit de bas- cule zéro est échantillonné en premier, puis les bits de bas- cule sont échantillonnés dans l'ordre, avec le bit de bascule 7 apparaissant en dernier. Le dispositif de transmission/blocage 40, repré- senté sur la figure 3, est un multiplexeur 3-1 qui est com- mandé par un bit de bascule qui est identique à celui de 1 ' élément de bascule 220 dans l'élément fonctionnel 12 Les éléments de bascule sont également commandés de la même maniè- 2544523- re sous la dépendance des fonctions de commande du systè- me qu'exerce le circuit de commande de la figure 6 Si l'élément debascule est mis à zéro, les données d'entrée provenant de l'élément fonctionnel d'attaque sont transmi- ses directement vers la sortie du multiplexeur, et ensuite vers la broche de sortie et des éléments fonctionnels sui- vants, s'il y en a Dans ce cas, les données sont inver- sées On doit tenir compte de ceci lorsqu'on écrit les équations logiques d'étages successifs d'éléments fonction- nels Si l'élément de bascule est positionné, la sortie de la bascule 222 est connectée à la sortie du multiplexeur. On notera que dans ce cas, les données ne sont pas inver- sées entre l'entrée et la sortie, comme dans le cas de la transmission directe Ce changement d'inversion entre le mode de bascule et le mode de transmission ne crée aucun problème, du fait que la bascule de données est un disposi- tif dans lequel l'écriture n'a lieu qu'une seule fois, au moment de la mise sous tension Elle ne peut donc pas chan- ger pendant l'utilisation On peut tenir compte du fait que les données sont inversées en produisant le complément logi- que de la fonction logique exigée, dans l'élément fonction- nel qui attaque l'entrée particulière. La bascule 222 reçoit continuellement un signal d'horloge, sans transmission sélective par une porte Ceci signifie que pour construire des circuits séquentiels, la sor- tie d'un élément fonctionnel doit être ramenée sur une entrée de la puce, en tant que signal d'entrée pour les équations logiques de définition La bascule comporte une entrée de restauration qui reçoit un signal provenant du dispositif de commande représenté sur la figure 6, qu'on peut utiliser pour initialiser les bascules, pour l'utilisation ou le test La porte de validation de sortie 80, représentée sur la figure 4, est connectée à la ligne de commande des trois états de cha- que broche de sortie fonctionnelle La validation de sortie comporte trois modes de fonctionnement différents. Dans le premier mode de validation de sortie, si un bit de données d'enregistrement est positionné, la ligne de commande respective pour les trois états est maintenue à l'état haut avec la sortie validée, avec une exception qui consiste en ce que la broche de sortie peut être forcée à l'état inactif par le bus d'invalidation de sortie. La seconde condition opérationnelle consiste en ce que si le bit de données est mis à zéro, la broche d'en- trée/sortie qui est commune à chaque dispositif de valida- tion de sortie dans un quadrant peut commander la ligne de commande des trois états Un niveau haut sur cette broche valide tous les circuits séparateurs de sortie et le qua- drant de réseau logique correspondant, à l'exception du fait que le bus d'invalidation de sortie peut à nouveau exercer une action prioritaire sur la ligne de validation. Le troisième mode de fonctionnement consiste en ce que chaque sortie dans un quadrant peut être forcée à l'état actif, c'est-à-dire que la sortie est validée, par un bit de fonction contenu dans le registre du système de commande 281 qui est représenté sur la figure 5 Il y a ainsi quatre bits de commande individuels Bien qu'on pré- voie que cette facilité sera normalement utilisée pour la maintenance, rien n'interdit son utilisation dans le fonc- * tionnement du système Le circuit de commande représenté sur la figure 6 fait partie intégrante du réseau logique pro- grammable de façon conditionnelle et il assure l'initialisa- tion avec des données de caractérisation ou de test Ceci vient du fait que le réseau logique n'a aucune fonction jus- qu'à ce que le circuit de commande charge les bascules de données qui décrivent la fonction logique sélectionnée On charge les bascules de données qui réalisent les fonctions logiques exigées en mettant tout d'abord à zéro toutes les bascules de données dans tous les quadrants, puis en posi- tionnant individuellement chaque bascule, si nécessaire, avec les données qui proviennent de l'entrée de données de test. Il existe sur la puce un compteur de bits qui compte de zéro à sept-cent-soixante-sept Sur les sept-cert-soixante- huit états de comptage, 736 correspondent à des bascules de bit, soit 184 bascules dans chaque quadrants-plus huit états de comptage supplémentaires Chaque bascule de fonc- tion est positionnée si le bit d'entrée de données de test est un " 1 ", et le compteur est ensuite incrémenté Ce comp- teur est simplement incrémenté d'une unité si le bit d'en- trée est un "zéro" Les descriptions des bits de fonctions pour les fonctions de commande sont les suivantes: la fonction ECRITF est active si le bit un du registre de commande est positionné lorsqu'une broche d'entrée d'échan- tillonnage de test est active La fonction ECRIT Fdoit être active pour valider l'écriture des bascules de description de fonction On peut positionner ECRITF dans le même mot de commande que INITF et ZEROF Lorsque ECRITF est active et lorsque la broche d'entrée de validation d'horloge de test est à l'état haut, l'état de la broche d'entrée de données de test est écrit dans la bascule courante adres- sée. La fonction INITF est activée si le bit 2 du re- gistre de commande est positionné lorsque la broche d'en- trée d'échantillonnage de test est active INITF accomplit deux fonctions: 1) elle met à zéro les compteurs d'adresse qui sélectionnent des bits de bascule de fonction indivi- duels, et 2) elle met également à zéro toutes les bascules inter-étages dans l'ensemble des quatre quadrants de réseaux logiques INITF est une fonction du genre "monostable", c'est- à-dire qu'elle n'est active que pendant une période d'horloge sur le front avant correspondant au passage à l'état actif du signal d'échantillonnage de test Ceci signifie que cette fonc- tion peut être dans le même mot de commande de fonction que ECRITF, pour simplifier les séquences de commande exigées dans le but d'écrire dans les bascules de description de fonc- tion On effectue ceci en maintenant à l'état bas ou inac- tif la ligne de commande de validation d'horloge de test lorsqu'on fait passer le signal d'échantillonnage de test à l'état haut Après un retard d'au moins deux cycles d'horloge, on peut faire passer le signal de validation d'horloge de test à l'état haut et écrire dans les bascu- les de description. La fonction ZEROF est activée si le bit 3 du registre de commande est positionné lorsque la broche d'entrée d'échantillonnage de test est active ZEROF met à zéro toutes les bascules de description de fonction dans tous les quadrants On doit effectuer ceci au moment de la mise sous tension, lorsqu'on écr it pour la première fois dans le réseau logique, et on peut l'effectuer à d' autres moments pour changer la fonction de la puce ZEROF n'est pas nécessaire s'il faut remplacer par un "un" le contenu d'une bascule de description qui contient un "zéro" On utilise une fonction ECRITF/INITF avec un train de données comportant des zéro dans toutes les po- sitions, sauf aux positions de changement exigées, qui contiennent des uns ZEROF est une fonction du genre "monos- table" dans la mesure o elle n'est active que pendant un cycle d'horloge sur le front avant d'un signal d'échantil- lonnage de test devenant actif Ceci signifie que cette fonction peut être incorporée dans le même mot de commande de fonction que ECRITF pour fournir les séquences de com- mandes exigées dans le but d'écrire dans les bascules de description de fonction On effectue ceci en maintenant à l'état bas le signal de validation d'horloge de test pen- dant qu'on fait passer à l'état haut le signal d'échan'til- lonnage de test Après un-retard d'au moins deux cycles d'horloge, on peut faire passer à l'état haut le signal de validation d'horloge de test et on peut écrire dans les bas- cules de description. Les quatre fonctions FORCEF O à FORCEF 3, repré- sentant respectivement les bits 4, 5, 6 et 7 du registre du système de commande 281, forcent à l'état actif toutes les broches de sortie dans les quadrants respectifs Cette fonction exerce une action prioritaire par rapport à l'état de la broche de validation de sortie, à l'état du bus d'in- validation de sortie et à l'état de toute bascule de des- cription de fonction dans les portes de validation de sor- tie Bien qu'on prévoit que ces bits de fonction seront utilisés essentiellement pour des diagnostics, on peut éga- lement les utiliser pendant le fonctionnement normal du système Les quatre bits sont chargés dans un registre de blocage statique sur un front avant d'un signal de valida- tion d'horloge de test. La fonction BLOCF est active si le bit 8 du re- gistre du système de commande est actif lorsque le signal d'entrée d'échantillonnage de test est actif BLOOF inva- lide toutes les broches de sortie dans tous les quadrants. Cette fonction exerce une action prioritaire sur les bro- ches de validation de-sortie et'sur l'état de toute bas- cule de description de fonction, dans n'importe quel dispo- sitif de validation de sortie BLOCF force le bus d'invali- dation de sortie dans le mode d'invalidation BLOCF n'exer- ce pas une action prioritaire sur une fonction FORCEF ac- tive quelconque. Le réseau logique conforme à l'invention et dé- crit ci-dessus possède plusieurs caractéristiques souhaita- bles Premièrement, on donne au réseau logique la configura- tion qui correspond à la fonction qui est accomplie Si le composant ou le réseau est déplacé d'un emplacement dans le système vers un autre emplacement, il met en oeuvre les équa- tions logiques pour le nouvel emplacement en ne nécessitant aucun changement physique Le retard d'un signal logique dans le composant est proportionnel à la complexité de l'équation logique qui est mise en oeuvre On peut réaliser plusieurs équations simples, ou un nombre plus ou moins grand d'équa- tions complexes, ce qui offre une souplesse supplémentai- re au concepteur logique Le réseau logique permet de réa- liser des fonctions variables portant sur un ensemble fixe d'entrées, contrairement aux configurations de l'art anté- rieur permettant de réaliser des équations fixes portant sur des entrées variables Les bascules, qui font partie du chemin logique, peuvent être utilisées pour réaliser des équations d'état, ou bien elles peuvent être mises hors fonction pour réaliser un circuit logique combinatoi- re. Le premier étage d'éléments fonctionnels atta- que le second étage d'éléments fonctionnels Chaque élé- ment fonctionnel individuel du second étage peut alors at- taquer sa propre broche de sortie ou bien il peut attaquer le troisième étage d'éléments fonctionnels qui attaque des broches de sortie Le troisième étage peut à son tour atta- quer le quatrième étage d'éléments fonctionnels Du fait de cette interconnexion, toutes les sorties du second ni- veau du réseau logique peuvent être actives, ce qui fait que le réseau logique est capable de résoudre jusqu'à six équations modérément complexes Lorsque de grandes équa- tions deviennent de plus en plus complexes, on peut utili- ser les troisième et quatrième étages d'éléments fonction- nels pour incorporer dans l'équation logique des exprès- sions de plus en plus longues correspondant aux premier et second niveaux, et résoudre ainsi des équations logiques de plus en plus complexes. On peut utiliser simultanément les deux types de solutions logiques En d'autres termes, des équations logi- ques simples peuvent donner des signaux qui peuvent égale- ment être incorporés dans des équations logiques plus com- plexes Les sorties des second et troisième niveaux peuvent être actives en même temps que les sorties des troisième et quatrième niveaux, ce qui permet de produire simultanément des fonctions logiques simples et complexes En choisissant l'état des dispositifs de transmission/blocage, de façon qu'ils bloquent ou transmettent les données, on peut fai- re en sorte que certaines équations logiques soient des équations d'état et que d'autres équations logiques soient des équations purement combinatoires Il va de soi que de nombreuses modifications peuvent être apportées au dispositif décrit et représenté, sans sortir du cadre de l'invention. REVENDICATIONS 1 Réseau logique programmable de façon condi- tionnelle, caractérisé en ce qu'il comprend: un ensemble d'étages logiques, chacun d'eux comportant des entrées lo- giques et des sorties-logiques qui correspondent à une fonction prédéterminée de l'entrée, chaque étage étant for- mé par des éléments fonctionnels ( 12, 14, 16, etc), chaque élément fonctionnel comportant des entrées connectées de façon à recevoir des signaux d'entrée de données, et des sorties de données qui représentent des équations logiques des signaux d'entrée de données, chaque élément fonction- nel comportant un ensemble d'entrée connectées à au moins une sortie, de façon que la sortie puisse correspondre à n'importe quelle fonction logique des entrées, et chacun de ces éléments fonctionnels comportant un ensemble de bascules ( 202, 204, etc) en nombre équivalent au nombre d'états de sortie possibles, pour conserver une indica- tion logique prédéterminée de l'état de sortie associé cor- respondant à la fonction logique qui est mise en oeuvre; un ensemble d'étages de dispositifs de transmission à bas- cule ( 40, 42, etc) ayant des entrées connectées de façon à recevoir les signaux de sortie de l'un des étages logi- ques, et des sorties connectées aux entrées d'un autre des étages logiques et à la sortie du réseau logique, chacun des dispositifs de transmission pouvant inverser une condition logique et transmettre cette condition sans aucun retards ou bien mémoriser une condition logique jusqu'à sa libération, sous la dépendance d'une fonction logique prédéterminée à réaliser; et des moyens de commande ( 300) destinés à posi- tionner tous les éléments fonctionnels et les dispositifs de transmission pour réaliser une fonction logique prédéterminée. 2 Réseau logique selon la revendication 1, carac- térisé en ce qu'il comprend: un premier étage logique de huit éléments fonctionnels ( 12 à 26) connectés de façon à recevoir des signaux d'entrée de données; un second étage logique de six éléments fonctionnels ( 28 à 38) connectés aux sorties du premier étage logique; un troisième étage de six dis- positifs de transmission à bascule ( 40 à 50) connectés aux sorties du second étage logique; un quatrième étage logique de quatre éléments fonctionnels ( 52 à 58) connec- tés aux sorties du troisième étage logique; un cinquiè- me étage de quatre dispositifs de transmission à bascule ( 60 à 66) connectés aux sorties du quatrième étage logi- que; un sixième étage logique de deux éléments fonction- nels ( 68, 70) connectés aux sorties du cinquième étage un septième étage de deux dispositifs de transmission à bascule ( 72, 74) connectés aux sorties du sixième étage logique; et un huitième étage de douze portes de valida- tion de sortie ( 80 à 124) connectées aux sorties des troi- sième, cinquième et septième étages. 3 Réseau logique selon la revendication 2, ca- ractérisé en ce que la sortie de chaque porte de valida- tion de sortie ( 80 à 124) peut, pendant le fonctionnement, être forcée à l'état haut, bas ou flottant dans un premier mode, ou bien elle peut présenter en tant que signal de sortie la fonction prédéterminée de l'entrée, dans un autre mode de fonctionnement. 4 Réseau logique selon l'une quelconque des re- vendications 2 ou 3, caractérisé en ce que chaque élément fonctionnel comporte trois entrées de données, huit entrées de commande logique et une sortie. Réseau logique selon la revendication 4, carac- térisé en ce que chaque élément fonctionnel comprend un mul- tiplexeur du type huit-un ( 200) et huit circuits de porte ET/ bascule RS ( 202 à 216) connectés aux entrées du multiplexeur. 6 Réseau logique programmable de façon condi-. tionnelle, caractérisé en ce qu'il comprend: un premier éta- ge logique d'éléments fonctionnels ( 12 à 26), chacun d'eux produisant des signaux de sortie fonctionnels qui sont des fonctions logiques prédéterminées des signaux d'entrée; un second étage d'éléments fonctionnels ( 28 à 38) connectés au premier étage, chacun d'eux produisant des signaux de sortie logiques fonctionnels qui sont des fonctions logi- ques prédéterminées des signaux d'entrée; un troisième éta- ge consistant en dispositifs de transmission à bascule ( 40 à 50) connectés au second étage de façon à remplir une fonction de transmission non retardée, avec inversion, ou une fonction de mémorisation, sous la dépendance d'une fonction prédéterminée; un quatrième étage d'éléments fonc- tionnels ( 52 à 58) connectés de façon à recevoir des si- gnaux d'entrée provenant du troisième étage de dispositifs de transmission, chacun d'eux produisant des signaux de sortie logiques fonctionnels qui sont des fonctions logi- ques prédéterminées des signaux d'entrée; un cinquième éta- ge consistant en dispositifs de transmission à bascule ( 60 à 66) connectés au quatrième étage pour accomplir une fonc- tion de transmission retardée avec inversion, ou une fonc- tion de mémorisation, sous la dépendance d'une fonction pré- déterminée; un sixième étage d'éléments fonctionnels ( 68, 70) connectés de façon à recevoir des signaux d'entrée pro- venant du quatrième étage de dispositifs de transmission, chacun d'eux produisant des signaux de sortie logiques fonc- tionnels qui sont des fonctions logiques prédéterminées des entrées; un septième étage de dispositifs de transmission à bascule ( 72, 74) connectés de façon à recevoir des signaux d'entrée de données provenant du sixième étage, pour accom- plir une fonction de transmission non retardée avec inversion, ou une fonction de mémorisation, sous la dépendance d'une fonction prédéterminée; un étage de validation de sortie ( 80 à 124) connecté de façon à recevoir des signaux d'entrée provenant des troisième, cinquième et septième étages de dis- positifs de transmission, pour fournir un signal de sortie de données pour le réseau logique; et des moyens de commande ( 300) connectés à tous les éléments fonctionnels et à tous les dispositifs de transmission, pour commander le réseau lo- gique et pour lui appliquer des signaux d'horloge, ainsi que pour appliquer des signaux d'entrée de mémorisation destinés à positionner tous les éléments fonctionnels et les dispositifs de transmission à bascule, pour réaliser une fonction logique prédéterminée. 7 Réseau logique selon la revendication 6, ca- ractérisé en ce que chaque élément fonctionnel comporte trois entrées de données, huit entrées de commande logi- que et une sortie de données, et il est formé par un mul- tiplexeur du type huit-un ( 200) et par huit circuits de porte ET/bascule RS ( 202 à 216) qui attaquent les entrées du multiplexeur. 8 Réseau logique programmable caractérisé en ce qu'il comprend un ensemble de secteurs logiques, cha- que secteur comprenant: des entrées et des sorties logi- ques indépendantes des autres secteurs; un ensemble d'éta- ges logiques, chaque étage logique étant formé par des élé- ments fonctionnels ( 12, 14, 16, etc), dans lesquels les entrées de chaque étage logique sont connectées de façon à recevoir des signaux d'entrée de données et chaque étage logique produit des signaux de sortie de données qui repré- sentent des fonctions logiques des signaux d'entrée de don- nées, chaque élément fonctionnel comportant un ensemble d'entrées connectées à au moins une sortie, de façon que la sortie puisse correspondre à n'importe quelle fonction logique des entrées, ces éléments fonctionnels comprenant un ensemble de bascules ( 202, 204, etc) en nombre équiva- lent au nombre d'états de sortie possible, pour conserver une indication logique de l'état de sortie associé qui cor- respond à la fonction logique réalisée; et un ensemble d'éta- ges de dispositifs de transmission à bascule ( 40, 42, etc) ayant des entrées connectées de façon à recevoir des signaux de sortie de l'un des étages logiques, et des sorties connec- tées aux entrées d'un autre des étages logiques et à la sor- tie du secteur, chacun de ces dispositifs pouvant inverser une condition logique et transmettre cette condition sans aucun retard, ou bien mémoriser une condition logique Jus- qu'à sa libération, sous la dépendance d'une fonction lc- gique prédéterminée à réaliser, et des moyens de commande ( 300) pour tous les secteurs, destinés à positionner tous les éléments fonctionnels et tous les dispositifs de trans- mission, pour réaliser des fonctions logiques prédétermi- nées dans chaque secteur. 9 Réseau logique selon la revendication 8, ca- ractérisé en ce que chaque secteur comprend un premier étage d'éléments logiques ( 12 à 26) connectés de façqn à recevoir des signaux d'entrée de données appliqués au sys- tème, et comportant des entrées destinées à recevoir un premier ensemble de signaux logiques, pour positionner les bascules du premier étage d'éléments logiques; un se- cond étage d'éléments logiques ( 28 à 38) connectés au pre- mier étage d'éléments logiques, consistant en éléments fonctionnels et ayant des entrées destinées à recevoir un second ensemble de signaux logiques pour positionner les bascules du second étage d'éléments logiques; un troisième étage de dispositifs de transmission à bascule ( 40 à 50) comportant des entrées destinées à recevoir un troisième ensemble de signaux logiques pour positionner les bascules du troisième étage de dispositifs de transmission; un qua- trième étage d'éléments logiques ( 52 à 58) connectés de fa- çon à recevoir des signaux d'entrée provenant du troisième étage de dispositifs de transmission et ayant des entrées destinées à recevoir un quatrième ensemble de signaux logi- ques, pour positionner les bascules des éléments logiques; un cinquième étage de dispositifs de transmission à bascule ( 60 à 66) connectés de façon à recevoir des signaux d'entrée provenant du quatrième étage d'éléments logiques et ayant des entrées destinées à recevoir un cinquième ensemble de signaux logiques pour positionner les bascules du cinquième étage de dispositifs de transmission; un sixième étage d'élé- -32 ments logiques ( 68 à 70) connectés de façon à recevoir des signaux d'entrée de données provenant du cinquième étage de dispositifs de transmission et ayant des entrées destinées à recevoir un sixième ensemble de signaux logi- ques, pour positionner les bascules du sixième étage d'élé- ments fonctionnels; un septième étage de dispositifs de transmission à bascule ( 72, 74) connectés de façon à re- cevoir des signaux d'entrée de données provenant du si- xième étage d'éléments logiques et ayant des entrées des- tinées à recevoir un septième ensemble de signaux logiques, pour positionner les bascules du septième étage d'éléments fonctionnels; et un huitième étage de portes de valida- tion de sortie ( 80 à 124) connectées de façon à recevoir des signaux d'entrée provenant des troisième, cinquième et septième étages de dispositifs de transmission à bascule, pour produire un signal de sortie de données pour le réseau logique, et comportant des entrées qui sont destinées à recevoir un huitième ensemble de signaux logiques, pour positionner les bascules des portes de validation de sor- tie. Réseau logique selon la revendication 9, ca- ractérisé en ce que chaque élément fonctionnel comporte trois entrées de données, huit entrées de commande logique et une sortie de données, et il est constitué par un multiplexeur du type huit-un ( 200) et par huit circuits de porte ET/bas- cule RS ( 202 à 216) qui attaquent les entrées du multiple- xeur. 11 Réseau logique programmable de façon condi- tionnelle destiné à la réalisation d'une fonction logique présélectionnée à partir d'une fonction d'entrée de données, caractérisé en ce qu'il comprend: un premier étage d'élé- ments logiques, chacun de ces éléments logiques consistant en éléments fonctionnels ( 12 à 26) ayant un ensemble de lignes de réception de signaux d'entrée de données, au moins une li- gne de sortie de données et des moyens pour recevoir et mé- moriser des signaux de commande représentatifs de la fonction à réaliser, connectés de façon à recevoir des signaux d'entrée de données appliqués au système, et un premier ensemble de signaux logiques destinés à position- ner les bascules du premier étage d'éléments logiques; un second étage d'éléments logiques ( 28 à 38) connectés au premier étage d'éléments logiques, consistant en éléments fonctionnels, chacun d'eux ayant un ensemble de lignes de réception de signaux d'entrée de données qui sont connec- tées au premier étage, au moins une ligne de sortie de données et des moyens pour recevoir et mémoriser des si- gnaux de commande représentatifs de la fonction à réali- ser, connectés de façon à recevoir des signaux d'entrée de données appliqués au second étage, et un second ensemble de signaux logiques destinés à positionner les bascules du second étage d'éléments logiques; un troisième étage d'éléments logiques connectés au second étage et consis- tant en dispositifs de transmission à bascule ( 40 à 50) comportant des moyens pour recevoir et mémoriser un troi- sième ensemble de signaux logiques, afin de commander la fonction qui est réalisée par les dispositifs de transmis- sion; un quatrième étage d'éléments logiques ( 52 à 58), chacun de ces éléments logiques consistant en éléments fonc- tionnels, chacun d'eux ayant un ensemble de lignes de ré- ception de signaux d'entrée de données, au moins une ligne de sortie de données et des moyens pour recevoir et mémori- ser des signaux de commande représentatifs de la fonction à réaliser, connectés de façon à recevoir des signaux d'entrée provenant du troisième étage de dispositifs de transmission, et ayant des moyens destinés à recevoir et à mémoriser un quatrième ensemble de signaux logiques, pour positionner les bascules des éléments fonctionnels afin de réaliser la fonc- tion logique prédéterminée; un cinquième étage d'éléments lo- giques connectés au quatrième étage et consistant en disposi- tifs de transmission à bascule ( 60 à 66), ayant des moyens -44523 destinés à recevoir et à mémoriser un cinquième ensemble de signaux logiques pour commander la fonction qui est réalisée par les dispositifs de transmission; un sixiè- me étage d'éléments logiques ( 68 à 70) consistant en élé- ments fonctionnels connectés au cinquième étage, chacun d'eux comportant un ensemble de lignes de réception de signaux d'entrée de données, au moins une ligne de sortie de données et des moyens destinés à recevoir et à mémori- ser des signaux de commande représentatifs de la fonction à réaliser, connectés de façon à recevoir des signaux d'en- trée de données provenant du cinquième étage de dispositifs de transmission, et ayant des moyens destinés à -recevoir un sixième ensemble de signaux logiques, pour positionner les bascules des éléments fonctionnels afin de réaliser les fonctions logiques prédéterminées; un septième étage d'éléments logiques connectés au sixième étage et consis- tant en dispositifs de transmission ( 72, 74), chacun d'eux comportant un ensemble de lignes de réception de signaux d'entrée de données, au moins une ligne de sortie de don- nées et des moyens destinés à recevoir et à mémoriser des signaux de commande représentatifs de la fonction prédéter- minée à réaliser; et un étage de validation de sortie ( 80 à 124) connecté de façon à recevoir des signaux d'entrée provenant des troisième, cinquième et septième étage de dis- positifs de transmission, pour fournir un signal de sortie de données pour le réseau logique. 12 Réseau logique selon la revendication 11, ca- ractérisé en ce que chaque élément fonctionnel comporte trois entrées de données, huit entrées de commande logique et une sortie de données, et il est constitué par un multiplexeur du type huit-un ( 200) et par huit circuits de porte ET/bascule RS ( 202 à 216) qui attaquent les entrées du multiplexeur. 13 Réseau logique selon l'une quelconque des re- vendications 1 i ou 12, caractérisé en ce qu'il comprend en outre des moyens de commande ( 300) destinés à produire un train série de signaux de commande destiné à être appli- qué à l'entrée de toutes les bascules des éléments fonc- tionnels, et un train de signaux de commande de position- nement de bascule, destiné à charger le signal de commande de bascule approprié dans la bascule appropriée. 14 Réseau logique selon l'une quelconque des revendications 11 à 13, caractérisé en ce qu'il comprend des moyens de commande d'horloge ( 302) destinés à comman- der la transmission des signaux de commande appropriés vers les éléments fonctionnels appropriés, dans l'ordre des étages logiques, pendant le fonctionnement du réseau logique. Réseau logique selon l'une quelconque des revendications 11 à 14, caractérisé en ce qu'il comprend un compteur ( 310) qui est incrémenté à la réception de si- gnaux de commande individuels dans le train de données sé- rie d'entrée, et le compte de sortie de ce compteur com- mande l'adressage des éléments fonctionnels.