wiki:ToolsCourseTp6

Version 1 (modified by anne, 17 years ago) (diff)

--

TP6 : Routage manuel "overcell"

Nous avons vu comment dessiner entièrement une cellule puis comment réaliser une cellule simple instanciant d'autres cellules. Nous allons maintenant réaliser un cellule plus avancée nécessitant un routage manuel "overcell".

1 Explications

Le but est de créer un compteur de bits tel que décrit ci-dessous. FIG. 7 – Compteur de bits La sortie Zi prend la valeur 1 quand le nombre de bits d'entrée ayant la valeur 1 est Séance 2 : Routage manuel "overcell" Nous avons vu comment dessiner entièrement une cellule puis comment réaliser une cellule simple instanciant d'autres cellules. Nous allons maintenant réaliser un cellule plus avancée nécessitant un routage manuel "overcell". 3.1 Explications Le but est de créer un compteur de bits tel que décrit ci-dessous. FIG. 7 – Compteur de bits La sortie Zi prend la valeur 1 quand le nombre de bits d'entrée ayant la valeur 1 est Notre cellule nale contiendra donc 10 portes NAND3 et 5 inverseurs. Regardons plus précisément les caractéristiques de chaque cellule : FIG. 9 – Dessin de la cellule La cellule NAND3 a une largeur de 5 pitchs. Les 3 signaux d'entrée E1, E2 et E3 sont accessibles sur 6 pistes de routage. Le signal de sortie S est accessible sur 7 pistes de routage.

La cellule INVERSEUR a une largeur de 3 pitchs. Le signal d'entrée E est accessible sur 6 pistes de routage. Le signal de sortie S est accessible sur 7 pistes de routage.

Ces cellules précaractérisées sont conçues pour être aboutables dans les deux directions X et Y. On souhaite avoir le placement suivant de notre cellule :

Ci-dessous un exemple de routage "overcell" pour la génération du signal de sortie Z0 :

3.2 Travail à effectuer

Décrire le comportement de la cellule compteur de bits dans un fichier .vbe Saisir sous GRAAL le dessin de la cellule en instanciant des portes inv_x1 et

na3_x1 de la sxlib

Dessiner sous GRAAL le routage "overcell" en vous insprirant de la gure 12 Valider les règles de dessin symbolique en lançant DRUC sous GRAAL Extraire la netlist de l'inverseur au format .al avec COUGAR Extraire le VHDL comportemental avec YAGLE Effectuer la preuve formelle entre le fichier .vbe extrait par YAGLE et le fichier

.vbe de la spécification initiale Automatisez la vérification en écrivant un Makefile.

Attachments (6)

Download all attachments as: .zip