Synthèse logique


Cet article est une ébauche concernant l’informatique, l’informatique théorique, l’électricité et l’électronique.

Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants.

Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.
Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.

Cet article ne cite pas suffisamment ses sources ().

Si vous disposez d'ouvrages ou d'articles de référence ou si vous connaissez des sites web de qualité traitant du thème abordé ici, merci de compléter l'article en donnant les références utiles à sa vérifiabilité et en les liant à la section « Notes et références ».

En pratique : Quelles sources sont attendues ? Comment ajouter mes sources ?

En électronique, la synthèse logique (anglais : RTL synthesis) est la traduction d'une forme abstraite de description du comportement d'un circuit (voir Register Transfer Level) en sa réalisation concrète sous forme de portes logiques. Le point de départ peut être un langage de description de matériel comme VHDL ou Verilog, un schéma logique du circuit. D'autres sources sont venues s'additionner depuis les années 2010, comme l'utilisation de la programmation en OpenCL[1],[2]. Le point d'arrivée peut être un code objet pour un CPLD ou FPGA ou la création d'un ASIC.

Méthodes initiales

Pour les fonctions logiques simples, la synthèse logique était basée initialement sur l'écriture de la fonction sous la forme d'une somme de termes optimaux, puis la sélection de sous-ensembles judicieux de ceux-ci comme couverture irredondante, enfin la transcription technologique de la somme des termes retenus par la règle de double couche.

Synthèse en logique combinatoire

Cette section est vide, insuffisamment détaillée ou incomplète. Votre aide est la bienvenue ! Comment faire ?

Synthèse en logique séquentielle

Cette section est vide, insuffisamment détaillée ou incomplète. Votre aide est la bienvenue ! Comment faire ?

évolutions

Avec les progrès de l'intégration des circuits, la conception de circuits plus généraux a fait apparaître des modularités. Multiplier les opérateurs fonctionnels au-delà des besoins théoriques est alors devenu un moyen de simplifier la conception.

Méthodes actuelles

Les méthodes précédentes sont devenues difficilement utilisables avec l'avènement de circuits intégrés comportant plus de mille transistors et combinant plusieurs fonctionnalités comme, à partir de 1971, les premiers microprocesseurs (Intel 4004…).

Actuellement, la synthèse logique est une étape qui consiste à compiler la description fonctionnelle d'un circuit à l'aide d'un outil de synthèse et d'une bibliothèque de cellules logiques. Cette description peut être écrite en langage Verilog ou VHDL et ne doit pas comporter d'éléments comportementaux non compréhensibles par l'outil de synthèse.

Les principaux fournisseurs d'outil de synthèse logique sont Synopsys, avec Design Compiler, et Cadence, avec BuildGate et RC.

Au cours de la synthèse, on effectue une compilation logique associée à des contraintes de temps définies dans la spécification d'un circuit logique numérique. Suivant les contraintes imposées à l'outil de synthèse, on obtiendra un résultat optimisé spécifiquement en surface ou en vitesse.

Logiciels

Open-Source

  • Coriolis (anciennement Alliance) du Laboratoire d'informatique de Paris 6 qui est en licence GPL
  • GHDL
  • Yosys (licence ISC)

Propriétaires

  • Design Compiler de Synopsys : c'est le plus connu sur le marché.
  • BuildGates de Cadence
  • Genus de Cadence (anciennement RC)
  • Leonardo de Mentor Graphics
  • Synplify
  • Alliance du lip6

Les fabricants de FPGA fournissent généralement aussi leur propre outil de synthèse. Ces outils propriétaires prennent en compte la spécificité de l'architecture du FPGA cible, et synthétisent uniquement pour les FPGAs de leur marque propre :

Référence

  1. (en) Kevin Morris, « HLS versus OpenCL », sur Electronic-Engineering Journal,
  2. Roozmeh et Lavagno 2018.

Bibliographie

  • J. Mermet, Étude méthodologique de la conception assistée par ordinateur des systèmes logiques : CASSANDRE, thèse d'État, Université Joseph-Fourier - Grenoble I., (lire en ligne)
  • Mehdi Roozmeh et Luciano Lavagno, « Using Machine Learning to Estimate Utilization and Throughput for OpenCL-Based SpMV Implementation on an FPGA », Microprocessors and Microsystems, vol. 63,‎ , p. 199-208 (DOI 10.1016/j.micpro.2018.09.009, lire en ligne)
v · m
Logiciel d'électronique
Logiciel libre
Conception
Simulation
Analyse
Logiciel propriétaire
Format de fichiers
Langage de description de matériel (HDL) et langage de vérification de matériel (HVL)
Langages
Simulateurs
Synthèse logique
  • GHDL
  • Nextpnr
  • OpenLane
  • OpenROAD
  • SymbiYosys
  • Workcraft
  • Yosys
programmation/flashage
  • OpenFPGAloader
  • icône décorative Portail de l’informatique
  • icône décorative Portail de l’électricité et de l’électronique