Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Verilog

Concevoir des couches d'abstraction

Avant d'examiner plus en détail le langage Verilog, il serait bon de comprendre les différentes couches d'abstraction dans la conception des puces.

La couche supérieure est l'architecture au niveau du système qui définit les différents sous-blocs et les regroupe en fonction des fonctionnalités. Par exemple, un cluster de processeurs aurait plusieurs cœurs, des blocs de cache et une logique de cohérence de cache. Tout cela sera encapsulé et représenté comme un seul bloc avec des signaux d'entrée-sortie.

Au niveau suivant, chaque sous-bloc est écrit dans un langage de description de matériel pour décrire avec précision la fonctionnalité de chaque bloc individuel. Les détails de mise en œuvre de niveau inférieur tels que les schémas de circuit et les bibliothèques technologiques sont ignorés à ce stade. Par exemple, un bloc de contrôleur finira par avoir plusieurs fichiers Verilog décrivant chacun un composant plus petit de sa fonctionnalité.

Les HDL sont ensuite convertis en schémas au niveau de la porte qui impliquent également des bibliothèques technologiques qui caractérisent des éléments numériques tels que des bascules. Par exemple, le circuit numérique d'un verrou D contient des portes NAND disposées d'une certaine manière de sorte que toutes les combinaisons d'entrées D et E produisent une sortie Q donnée par la table de vérité.

Une table de vérité donne essentiellement la permutation de tous les niveaux de signal d'entrée et le niveau de sortie résultant et celui donné ci-dessous est pour un verrou D avec une broche d'activation. Le schéma matériel peut également être dérivé de la table de vérité en utilisant la logique booléenne et les K-maps. Cependant, il n'est pas pratique de suivre cette méthode pour des blocs numériques plus complexes comme les processeurs et les contrôleurs.

L'implémentation d'une porte NAND se fait par la connexion de transistors CMOS dans un format particulier. À ce niveau, les largeurs de canal du transistor, Vdd et la capacité à piloter la charge capacitive de sortie sont prises en compte lors du processus de conception.

La dernière étape est l'implantation de ces transistors dans le silicium à l'aide d'outils EDA afin de pouvoir les fabriquer. À ce niveau, certaines connaissances en matière d'appareils et de technologies seraient nécessaires, car différentes dispositions finissent par avoir des propriétés physiques différentes, telles que la résistance et la capacité, entre autres implications.

Styles de conception

Ensuite, il existe principalement deux styles suivis dans la conception des blocs numériques, qui sont des méthodologies descendantes et ascendantes.

De haut en bas

Dans ce style, un bloc de niveau supérieur est d'abord défini avec l'identification des sous-modules requis pour construire le bloc supérieur. De même, chacun des sous-blocs est ensuite divisé en composants plus petits, et le processus se poursuit jusqu'à ce que nous atteignions la cellule feuille ou une étape où elle ne peut plus être divisée.

De bas en haut

Dans ce cas, la première tâche consiste à identifier les blocs de construction disponibles. Ensuite, ils sont assemblés et connectés d'une certaine manière pour construire des cellules plus grandes et utilisés pour assembler le bloc de niveau supérieur.

Généralement, une combinaison des deux flux est utilisée. Les architectes définissent la vue au niveau du système de la conception, et les concepteurs implémentent la logique de chacun des blocs fonctionnels et sont synthétisés en portes. Un style descendant est suivi jusqu'à ce point. Cependant, ces portes ont été construites selon un flux ascendant en commençant par la disposition physique du plus petit bloc dans la meilleure zone, performances et puissance possibles. Ces cellules standard ont également un schéma matériel et peuvent être utilisées pour obtenir diverses informations telles que les temps de montée et de descente, la puissance et d'autres retards. Ces cellules sont mises à disposition de l'outil de synthèse qui les sélectionne et les instancie si nécessaire.


Verilog

  1. Bloc de béton
  2. Portée des variables C#
  3. Tutoriel Verilog
  4. Blocs de contrôle Verilog
  5. Modélisation au niveau de la porte
  6. Exemples de niveau de porte Verilog
  7. Modélisation du niveau de commutation
  8. Qu'est-ce que la conception architecturale ?
  9. Comment niveler un tour