A8 Advanced Digital Logic, FPGA et HDL
Topique
Les FPGA sont des circuits intégrés reconfigurables qui contiennent, d'emblée, un grand nombre de blocs logiques programmables (construits essentiellement à l'aide de la même algèbre booléenne que celle qui décrit le modèle de l'électronique numérique), des éléments de mémoire et des blocs de mémoire embarqués, tous interconnectés de manière programmable. Ceci permet d'implémenter pratiquement n'importe quelle fonction numérique souhaitée dans le matériel après la fabrication de la puce, et de la reconfigurer selon les besoins. La conception de ces circuits est décrite à l'aide de langages de description matérielle spécialisés, qui permettent de spécifier textuellement le comportement souhaité du circuit avant sa synthèse sur la puce physique.
Une technique centrale des systèmes numériques hautes performances est le pipeline : il consiste à diviser une opération complexe en plusieurs étapes plus simples exécutées séquentiellement. Bien que chaque opération individuelle prenne plus de cycles d'horloge (entraînant une latence plus élevée), le système dans son ensemble peut démarrer une nouvelle opération à chaque cycle, maximisant ainsi le nombre d'opérations effectuées par unité de temps. Les différentes technologies de mémoire disponibles représentent divers compromis entre vitesse, densité, coût et conservation des informations en cas de coupure de courant. Les circuits intégrés spécifiques à une application (ASIC), conçus et fabriqués pour exécuter une fonction unique et précise, sont bien plus efficaces en termes de surface et de consommation d'énergie qu'un FPGA programmé pour la même fonction. Cependant, leur conception et leur fabrication nécessitent un investissement initial beaucoup plus important, justifié uniquement par une production en grande série.
C'est pourquoi ce module, qui commence par l'étude des blocs logiques reconfigurables après la fabrication de la puce, conclut en démontrant que cette même flexibilité de reconfiguration a un coût que l'ASIC n'impose pas, mais offre un avantage que l'ASIC ne possède pas : choisir entre les deux revient à choisir si le volume de production justifie de renoncer à la possibilité de modifier la conception après la fabrication de la puce.
ID:4066
