URL: https://linuxfr.org/news/un-asic-concu-integralement-avec-des-logiciels-libres Title: Un ASIC conçu intégralement avec des logiciels libres Authors: martoni palm123, ZeroHeure, Davy Defaud, Pierre Jarillon, Benoît Sibaud et Jona Date: 2019年06月14日T09:18:34+02:00 License: CC By-SA Tags: hdl, asic et fpga Score: 74 Un [ASIC](https://fr.wikipedia.org/wiki/Application-specific_integrated_circuit) (_application‐specific integrated circuit_, en anglais) est un circuit intégré d’électronique numérique conçu pour une application spécifique et qui ne peut être modifié une fois produit. Un ASIC est à mettre en opposition avec le [FPGA](https://fr.wikipedia.org/wiki/Circuit_logique_programmable "Field‐Programmable Gate Array") qui lui est un circuit intégré d’électronique numérique que l’on peut reconfigurer à l’infini. Les FPGA sont très liés aux ASIC. En effet, la plupart des outils utilisés en FPGA pour la synthèse [HDL](https://fr.wikipedia.org/wiki/Langage_de_description_de_mat%C3%A9riel "hardware description language"), la preuve formelle, le placement routage ou l’analyse des _timings_ sont les mêmes que ceux à destination des ASIC. Seules les bibliothèques et les configurations changent. La grosse différence (de taille) avec les FPGA c’est que l’ASIC n’est pas reconfigurable, et les « frais d’initialisation » sont très élevés. Les délais de production sont également très longs (on parle en trimestres voire en semestres de délais). Avec de telles contraintes, on comprend pourquoi les développeurs ne se mouillent pas trop avec des logiciels exotiques et restent sur ceux qu’ils connaissent. Vu les tarifs de production, le coût des licences des logiciels est assez négligeable. Pourquoi « grenouiller » avec des outils libres dans ce cas ? Toutes ces contraintes n’ont pas découragé [Tim Edwards](https://www.hackster.io/ef/risc-v-based-microcontroller-f2f53d) de se lancer intégralement avec des outils libres dans la conception et la fabrication d’un microcontrôleur. ---- [Présentation du Raven sur hackster.io](https://www.hackster.io/ef/risc-v-based-microcontroller-f2f53d) [Le picoRV32 de Clifford](https://github.com/cliffordwolf/picorv32) [Les outils Qflow du site opencircuit.com](http://opencircuitdesign.com/) [La fiche « produit » du Raven sur la plate‐forme efabless](https://efabless.com/design_catalog/ip_block/AWHe2dFnipGzgR2o9H0q/) ---- ![Synoptique du Raven avec ses différents périphériques](http://www.fabienm.eu/flf/wp-content/uploads/2019/06/raven_schema_bloc.png) C’est comme cela qu’est né le Raven, un microcontrôleur basé sur un cœur picoRV32 (conçu par Clifford Wolf) et réalisé principalement avec les outils qflow d’opencircuitdesign.com : - synthèse Verilog : yosys et ABC ; - analyse statique des _timings_ : vesta ; - placement : graywolf ; - routage : qrouter ; - _layout_ & DRC : magic ; - LVS : netgen ; - simulation Verilog : Icarus Verilog ; - cosimulation (pour les parties analogiques) : ngspice et Icarus ; - génération des masques : magic. Grande surprise quand on se plonge dans ces outils libres : beaucoup sont très vieux. Les pages Web de ses outils sont encore codés en web95 avec des _frames_ et autre fonds hideux datant de l’époque FrontPage. Pourtant à y regarder de plus près, ces outils semblent toujours activement maintenus. Mais alors pourquoi aucun fondeur FPGA ne les proposent dans leurs IDE ? Une première série du microcontrôleur gravé en 180 nm a été produite en mai 2018. Le composant est désormais fonctionnel avec les caractéristiques suivantes : - cadencé à 100 MHz ; - 16 GPIO ; - 2 ADC ; - 1 DAC ; - 1 comparateur ; - alarme de température ; - oscillateur RC de 100 kHz ; - fonctions configurables pour les sorties GPIO ; - interruptions configurables sur les entrées GPIO ; ![Vue « silicium » du Raven, un microcontrôleur RISC-V conçu avec des outils libres](http://www.fabienm.eu/flf/wp-content/uploads/2019/06/raven_silicium.png "Vue silicium du Raven") Il n’est pas possible d’acheter le composant pour se faire un montage chez soi pour le moment. En revanche, l’« IP » est disponible dans la [bibliothèque du fondeur _efabless_](https://efabless.com/design_catalog/ip_block/AWHe2dFnipGzgR2o9H0q/) et peut être utilisée comme base pour réaliser son propre composant selon les besoins.

AltStyle によって変換されたページ (->オリジナル) /