La photo ci-dessous représente une carte électronique conçue dans les années 90.  

  • Les différents composants électroniques sont connectés ensembles sur une grand circuit imprimé.
  • La taille de la carte électronique était par conséquent impactée par le nombre de circuit à assembler d'où la nécessiter d'optimiser les fonctions numériques durant l'étude de la carte.
  • L'identification d'une panne était réalisée à partir de la vérification des sorties des composants électroniques et à partir des tables de vérité de ces composants.

 

Electronique numérique avant l'arrivée des circuits programmables

  1. Calcul des tables de vérité des fonctions numériques développées (Cela reste toujours obligatoire.)
  2. Conception des fonctions numériques à partir des semiconducteurs de base les "transistors". NPN/PNP, FET.
  3. Conception des fonctions numériques à partir des circuits logiques de base disponibles chez les premiers fondeurs de composants.
  4. Conception One-Shot, après l'assemblage des composants sur le circuit-imprimé, il ne sera plus possible de modifier la carte électronique, notamment  en cas défaut de fonctionnement ou d'un mauvais calcul des tables de vérité.
  5. Cycles itératifs de routage et test des cartes pour corriger les défauts détectés, effectuer l'analyses des temps de réponse et déterminer les limitations du circuit.
  6. Validation de la conception et routage définitif des cartes électroniques.

Base des connaissances techniques

Lorsqu'une conception était validée, elle était archivée dans la base de connaissances techniques de l'entreprise pour pouvoir être réutilisée ou servir de base de travail pour une nouvelle conception. Le dossier technique archivé devait comporter au minimum, les schémas de conception, la nomenclature des composants, la technologie des composants ainsi que tous les documents d'étude accompagnés des résultats de test.   

 

L' électronique numérique avec l'arrivée des circuits logiques programmables

Les premiers brevets pour de tels composants datent des années 1980 à 1990 mais c'est au début des années 1990 qu'ils se sont généralisés. 

Aujourd'hui les énormes progrès dans la technologie des circuits intégrés font qu'il est possible de créer des composants d'une complexité extraordinaire.

Les circuits logiques programmables (CPLD, FPGA), font qu'il est maintenant possible de créer des circuits logiques assez complexes pour un coût initial fortement moins élevé (des milliers d'euros) qu'auparavant. Les FPGA sont d'ailleurs souvent utilisés pour prototyper les circuits intégrés avant leur fabrication finale.

Les techniques de conception numériques ont aussi fortement évoluées. Autrefois, des schémas étaient dessinés à la main, puis par ordinateur. Maintenant, on utilise des langages de description de matériel tels que Verilog ou VHDL, qui sont digérés par des compilateurs appelés synthétiseurs, qui génèrent des netlist, c'est-à-dire des fichiers décrivant la connectivité entre des portes logiques.

Logiciel de conception FPGA

Notre plateforme de développement  BEMICROMAX10 contient le FPGA SOC MAX10 10M08DAF484 de intel (Ex. ALTERA) ainsi qu' un programmateur débuggeur USB-BLASTER.

Nous utiliserons dans le cadre de la formation "VHDL" le logiciel QUARTUS PRIME Lite Edition (Version 18.0 téléchargeable gratuitement). Elle contient l'IDE Eclipse ainsi que tous les drivers nécessaires pour interfacer la plateforme BeM10. 

Les projets décrits sur ce site ont été développés avec les versions 16.0 et 18.0. En effet à partir de la version 19.1, il sera nécessaire d'installer manuellement en plus de Quartus Prime, Windows Subsystem for Linux (WSL) ainsi que l'IDE Eclipse.

 

Les points fort du logiciel Quartus Prime Lite Edition

  • La version gratuite est suffisante pour développer des projets très complexes.
  • Mise à jour régulière des versions 
  • Le logiciel est relativement simple à prendre en main et relativement bien documenté.
  • Plateforme de développement complète (Compilation, Simulation, Editeur, QSYS

 Les points faibles  :

  • Nécessite d'avoir un PC relativement récent pour réduire les temps de compilation, je conseille au minimum un i7, SSD, RAM 12Go,  2.5GHZ, Multi-coeur x4.
  • IDE Eclipse est proposée exclusivement.