La CAO Électronique Sous Linux
Total Page:16
File Type:pdf, Size:1020Kb
LLaa CACAOO ÉÉlleecctrtrononiiqquuee ssououss LLiinnuuxx IT331: Linux embarqué Xavier NOURISSON Electronique Adrien ZANCAN Systèmes embarqués 14 janvier 2005 ENSEIRB La CAO Électronique sous Linux SOMMAIRE INDEX DES ILLUSTRATIONS....................................................3 INTRODUCTION......................................................................4 LES LOGICIELS DE CAO...........................................................5 I. CONCEPTION DE CIRCUITS 6 I.1. Bartels AutoEngineer® 6 I.2. CadSoft Eagle 7 I.3. gEDA et outils associés 7 I.4. Oregano 9 I.5. PCB 9 I.6. SoC GDS 9 I.7. TkGate 10 I.8. Xcircuit 11 II. CONCEPTION LOGICIELLE 11 II.1. AT51Programmer 11 II.2. Mprog 11 II.3. GCC 12 II.4. ICDPROG 12 II.5. GPUTILS + Tools 13 II.5.1. Assembleurs 13 II.5.2. Compilateurs 14 II.5.3. Simulateurs 15 II.5.4. Programmateurs 15 II.5.5. Librairies 16 II.5.6. Environnements de développement (IDEs) 16 II.6. YaPIDE 16 CONCLUSION.......................................................................17 GLOSSAIRE..........................................................................18 RÉFÉRENCES........................................................................19 ANNEXE – COMPARATIF DES LOGICIELS.................................20 2/20 Index des illustrations Index des illustrations INDEX DES ILLUSTRATIONS Illustration 1 - Bartels AUtoEngineer: Layout d'un circuit intégré 6 Illustration 2 - CadSoft Eagle: Routage 7 Illustration 3 - gEDA: Saisie de schémas 7 Illustration 4 - Oregano: Saisie de schéma et simulation 9 Illustration 5 - SoC GDS: Comparaison de layouts 9 Illustration 6 - TkGate: Fenêtre de saisie de schéma 10 Illustration 7 - XCircuit: Fenêtre principale 11 Illustration 8 - GPUTILS 13 Illustration 9 - PiKdev: Gestion d'un projet 16 Illustration 10 - YaPIDE: Visualisation de la mémoire 16 Illustration 11 - Comparatif des différents logiciels présentés 20 3/20 Introduction Introduction INTRODUCTION Le développement de Linux a débuté en 1991. Si, il y a quelques temps, son utilisation été réservé à une poignée d'informaticiens prêts à réinventer la roue pour fournir un système d'exploitation open-source assez crédible pour contrer le monopole de Microsoft, avec aujourd'hui plus de 5% des parts de marché des systèmes d'exploitations et les efforts considérables d'une immense communauté de développeurs, il est devenu une alternative non négligeable. Depuis quelques années, les efforts de cette communauté et des entreprises commerciales se multiplient pour fournir des solutions Linux pour tous les corps de métiers. Ainsi, on trouve aujourd'hui de nombreux outils de CAO électronique disponibles pour Linux. Tout d'abord, des sociétés ont porté leurs logiciels commerciaux depuis Windows ou Unix. Mais aussi, énormément de logiciels, très souvent open-source, sont développés directement pour Linux. Ce présent rapport a pour but de présenter les différentes solutions de CAO électronique fonctionnant sous Linux. Bien sûr, il est impossible de présenter la totalité des logiciels disponibles, on présentera tout de même un choix de logiciels permettant de couvrir la totalité de la chaîne de développement d'un système électronique, avec la conception matérielle (de la saisie de schéma au routage du circuit imprimé ou du circuit intégré en passant par la simulation) et la conception logicielle (compilation, simulation, programmation, etc.). On privilégiera les solutions open-source. 4/20 Les logiciels de CAO Les logiciels de CAO LES LOGICIELS DE CAO On ne peut pas réellement classés ces logiciels dans des catégories distinctes (saisie de schémas, routage, compilation,...). En effet, certains ne feront qu'une seule tâche (ex: saisie de schémas) mais d'autre intégreront plusieurs outils (ex: saisie de schémas + simulation + routage). On peut tout de même séparer les logiciels de CAO électronique en deux grandes catégories : d'une part la conception matérielle (conception de circuits imprimés ou circuits intégrés) et d'autre part la conception logicielle (programmation de microcontrôleurs). Même si tous ces logiciels fonctionnent sous Linux, il peut-être intéressant de savoir si ils sont disponibles sur d'autres plate-formes, permettant ainsi une meilleurs compatibilité avec d'autres personnes n'utilisant pas Linux. Pour la plupart des logiciel présentés, il est indiqué si ce sont des logiciels open- source ou commerciaux et sur quels architectures et systèmes d'exploitations il sont disponibles. Aussi, pour les logiciels commerciaux, la disponibilité d'une version d'évaluation ou d'usage non commercial est indiqué avec ses limitations éventuelles. Enfin, un récapitulatif de tous les logiciels présentés avec leurs principales caractéristiques peut être consulté en Annexe 1. 5/20 Les logiciels de CAO Conception de circuits I. Conception de circuits I.1. Bartels AutoEngineer® BAE est un logiciel complet permettant la conception de circuits imprimés ou de circuits intégrés. Il intègre les outils nécessaires à toute la conception : du schéma au routage en passant par la simulation électrique. Ce n'est pas un logiciel libre et la version professionnelle est assez Illustration 1 - Bartels AUtoEngineer: Layout d'un circuit intégré cher. Il propose tout de même une multitudes de licences avec des prix s'étendant de 86€ à 6490€. Une version d'évaluation, limitée à la saisie du schéma et génération de la netlist est aussi proposée. En plus de Linux, BAE est disponible sur MS Windows et sur de nombreux systèmes d'exploitations Unix utilisant X11. 6/20 Les logiciels de CAO Conception de circuits I.2. CadSoft Eagle EAGLE (Easily Applicable Graphical Layout Editor) est un outil puissant et facile d'utilisation pour la conception de circuits imprimés. Il comprend trois principaux modules (un éditeur de schémas, un éditeur de PCB et un auto- routeur) qui sont intégrés dans la même interface. Il n'y a ainsi pas besoin de convertir les netlists entre la saisie de schéma et la conception du PCB. Illustration 2 - CadSoft Eagle: Routage C'est un logiciel commercial à un prix raisonnable (entre 49$ et 399$). Il offre une version à but non lucratif (ou de démonstration) seulement limitée en taille de PCB (100*80mm, une couche). Il est disponible sur Linux (i586), MacOSX et Windows. I.3. gEDA et outils associés gEDA/gaf est une suite de logiciels CAO en licence GPL (open- source). gEDA/gaf effectue notamment la saisie de schémas/symboles, la création de netlists et la gestion de projets. Illustration 3 - gEDA: Saisie de schémas 7/20 Les logiciels de CAO Conception de circuits Une grosse quantité de logiciel sont développés en association avec gEDA, on peut par exemple citer les logiciels suivants : • gerbv Visualiseur de fichiers Gerber. • gnetman Outils de manipulation de fichiers netlist. • gnucap Simulateur de circuits mixtes. • GTKWave Visualiseur de courbes de simulation numériques. • gwave Visualiseur de courbes de simulation analogiques. • Icarus Simulateur et synthétiseur Verilog. • PCB (voir le chapitre I.5) Outils de création de PCB / routage. • tclspice, ngspice Versions améliorées de Spice. • VBS Simulateur Verilog. • XCircuit (voir le chapitre I.8) Saisie de schéma avec export postscript de haute qualité. 8/20 Les logiciels de CAO Conception de circuits I.4. Oregano Oregano est un logiciel de saisie de schémas et simulation électrique. Il permet aussi de générer les netlists et contient une grande variété de librairies de composants. Oregano est distribué en licence GPL Illustration 4 - Oregano: Saisie de schéma et simulation pour Unix / Linux. I.5. PCB PCB est, comme son nom l'indique, un éditeur de circuits imprimés. Il intègre les fonctions habituelles d'un tel logiciel, comme l'auto-routage, l'export dans des formats standards de l'industrie (Gerber, Drill,...). Il est distribué pour Unix / Linux sous licence GPL. I.6. SoC GDS SoC GDS est un logiciel de visualisation et de traitements rapide de layouts de circuits intégrés. Il intègre des fonctions puissantes permettant entre autre l'automatisation du changement de nom des cellules, la vérification de grilles, la fusion ou la comparaison physique de fichiers GDS II et LEF, les modifications hiérarchiques et la conversion au format texte. Illustration 5 - SoC GDS: Comparaison de layouts 9/20 Les logiciels de CAO Conception de circuits SoC GDS est disponible pour plate-formes Linux(x86), HP-UX, SUN/Solaris et Windows sous un licence commerciale. Une version allégée est disponible gratuitement avec une limitation en vitesse de fonctionnement. I.7. TkGate TkGate est un simulateur de circuits électroniques numériques. Il supporte une grande quantité d'éléments de bases aussi bien que des modules personnalisés pour la conception hiérarchique. La distribution inclue de nombreux tutoriels et exemples. Illustration 6 - TkGate: Fenêtre de saisie de schéma TkGate est disponible pour Unix / Linux sous les termes de la licence GPL. 10/20 Les logiciels de CAO Conception de circuits I.8. Xcircuit XCircuit est un logiciel de saisie de schémas permettant de générer des schémas de qualité "imprimerie" tout en autorisant la génération des netlists. Il écrit à la fois la sortie PostScript et la netlists SPICE pour ne pas créer de compromis entre la qualité artistique et la Illustration 7 - XCircuit: Fenêtre principale conception électronique. XCircuit est disponible pour Unix / Linux sous licence GPL. II. Conception logicielle II.1. AT51Programmer AT51Programmer est un programmateur intelligent universel pour les microcontrôleurs ATMEL 8051 et les mémoires Flash parallèles et EEPROM. Ce logiciel