Conception VLSI - Technologie FPGA

FPGA - Présentation

La forme complète de FPGA est "Field Programmable Gate Array». Il contient dix mille à plus d'un million de portes logiques avec interconnexion programmable. Des interconnexions programmables sont disponibles pour les utilisateurs ou les concepteurs pour exécuter facilement des fonctions données. Un modèle de puce FPGA typique est montré dans la figure donnée. Il existe des blocs d'E / S, qui sont conçus et numérotés en fonction de leur fonction. Pour chaque module de composition de niveau logique, il y aCLB’s (Configurable Logic Blocks).

CLB exécute l'opération logique donnée au module. L'interconnexion entre les blocs CLB et E / S est réalisée à l'aide de canaux de routage horizontaux, de canaux de routage verticaux et de PSM (multiplexeurs programmables).

Le nombre de CLB qu'il contient décide uniquement de la complexité du FPGA. Les fonctionnalités des CLB et PSM sont conçues par VHDL ou tout autre langage descriptif matériel. Après la programmation, CLB et PSM sont placés sur puce et connectés les uns aux autres avec des canaux de routage.

Avantages

  • Cela prend très peu de temps; du processus de conception à la puce fonctionnelle.
  • Aucune étape de fabrication physique n'est impliquée.
  • Le seul inconvénient est qu'il est coûteux que les autres styles.

Conception de réseau de portes

le gate array (GA)se classe deuxième après le FPGA, en termes de capacité de prototypage rapide. Alors que la programmation utilisateur est importante pour la mise en œuvre de la conception de la puce FPGA, la conception et le traitement des masques métalliques sont utilisés pour GA. La mise en œuvre du réseau de portes nécessite un processus de fabrication en deux étapes.

La première phase se traduit par un réseau de transistors non validés sur chaque puce GA. Ces puces non validées peuvent être stockées pour une personnalisation ultérieure, qui est complétée par la définition des interconnexions métalliques entre les transistors du réseau. La structuration des interconnexions métalliques se fait à la fin du processus de fabrication de la puce, de sorte que le temps de rotation peut encore être court, de quelques jours à quelques semaines. La figure ci-dessous montre les étapes de traitement de base pour l'implémentation d'un tableau de portes.

Les plates-formes de réseau de portes typiques utilisent des zones dédiées appelées canaux, pour le routage intercellulaire entre des lignes ou des colonnes de transistors MOS. Ils simplifient les interconnexions. Les modèles d'interconnexion qui exécutent des portes logiques de base sont stockés dans une bibliothèque, qui peut ensuite être utilisée pour personnaliser des lignes de transistors non validés en fonction de la netlist.

Dans la plupart des GA modernes, plusieurs couches métalliques sont utilisées pour le routage des canaux. Avec l'utilisation de plusieurs couches interconnectées, le routage peut être réalisé sur les zones de cellules actives; afin que les canaux de routage puissent être supprimés comme dans les puces Sea-of-Gates (SOG). Ici, toute la surface de la puce est recouverte de transistors nMOS et pMOS non engagés. Les transistors voisins peuvent être personnalisés à l'aide d'un masque métallique pour former des portes logiques de base.

Pour le routage entre cellules, certains des transistors non validés doivent être sacrifiés. Ce style de conception se traduit par plus de flexibilité pour les interconnexions et généralement par une densité plus élevée. Le facteur d'utilisation de la puce GA est mesuré par la surface de puce utilisée divisée par la surface totale de la puce. Il est supérieur à celui du FPGA, tout comme la vitesse de la puce.

Conception à base de cellules standard

Une conception à base de cellules standard nécessite le développement d'un jeu de masques personnalisé complet. La cellule standard est également connue sous le nom de polycell. Dans cette approche, toutes les cellules logiques couramment utilisées sont développées, caractérisées et stockées dans une bibliothèque de cellules standard.

Une bibliothèque peut contenir quelques centaines de cellules, y compris des onduleurs, des portes NAND, des portes NOR, des portes AOI complexes, des portes OAI, des verrous D et des bascules. Chaque type de porte peut être implémenté en plusieurs versions pour fournir une capacité de conduite adéquate pour différentes épanouissements. La porte de l'onduleur peut avoir une taille standard, une taille double et une taille quadruple afin que le concepteur de puce puisse sélectionner la taille appropriée pour obtenir une vitesse de circuit et une densité de disposition élevées.

Chaque cellule est caractérisée selon plusieurs catégories de caractérisation différentes, telles que,

  • Temps de retard en fonction de la capacité de charge
  • Modèle de simulation de circuit
  • Modèle de simulation de synchronisation
  • Modèle de simulation de défaut
  • Données de cellule pour le lieu et l'itinéraire
  • Masquer les données

Pour le placement et le routage automatisés des cellules, chaque disposition de cellule est conçue avec une hauteur fixe, de sorte qu'un certain nombre de cellules peuvent être délimitées côte à côte pour former des lignes. Les rails d'alimentation et de masse sont parallèles aux limites supérieure et inférieure de la cellule. Ainsi, les cellules voisines partagent un bus d'alimentation et un bus de masse communs. La figure ci-dessous est un plan d'étage pour la conception à base de cellules standard.

Conception entièrement personnalisée

Dans une conception entièrement personnalisée, toute la conception du masque est renouvelée, sans l'utilisation d'aucune bibliothèque. Le coût de développement de ce style de conception augmente. Ainsi, le concept de réutilisation de la conception devient célèbre pour réduire le temps de cycle de conception et les coûts de développement.

La conception personnalisée complète la plus difficile peut être la conception d'une cellule mémoire, qu'elle soit statique ou dynamique. Pour la conception de puces logiques, une bonne négociation peut être obtenue en utilisant une combinaison de différents styles de conception sur la même puce, c'est-à-dire des cellules standard, des cellules de chemin de données etprogrammable logic arrays (PLAs).

En pratique, le concepteur fait la mise en page personnalisée complète, c'est-à-dire la géométrie, l'orientation et le placement de chaque transistor. La productivité de la conception est généralement très faible; typiquement quelques dizaines de transistors par jour, par concepteur. Dans le CMOS VLSI numérique, la conception entièrement personnalisée est à peine utilisée en raison du coût élevé de la main-d'œuvre. Ces styles de conception incluent la conception de produits à volume élevé tels que des puces de mémoire, des microprocesseurs haute performance et des FPGA.