amd2901



Sommaire:

Présentation de l'AMD2901
Caractéristiques
Les outils utilisés
La méthodologie
Layout de l'AMD
 

 

bullet

Présentation de l'AMD2901:
L’Amd2901 est un petit processeur 4 bits, pourvu d’une ram interne d’une capacité de 16 mots:
Caractéristiques :
· Accès à deux adresses simultanément :
Accès indépendants simultanés à deux adresses mémoires, par cycle machine.

· 8 opérations pour l’alu :
l’addition, deux opérations de soustractions, et cinq opérations logiques, ayant pour sources deux opérandes.

· Grands choix de sélections des données :
l’alu peut sélectionner ses deux opérandes parmi cinq entrées distinctes : soit 203 combinaisons possibles pour chaque opérations de l’alu

· Décalage droite, gauche indépendant de l’alu :
Une addition et un décalage ne prennent qu’un cycle

· Quatre flags d’état :
Carry, overflow, zero, negatif

· Interconnectable :
Chaînage des amd entre eux, afin de pouvoir travailler sur des mots plus grands.

· Microprogrammable :
3 groupes de 3 bits, pour sélectionner les opérandes, la fonction de l’alu, et la destination.

 

bullet

Caractéristiques

           Superficie : 5 mm²
           Technologie 0,7µm
           Fréquence : 20 Mhz
           Nombre de transistors : 6000

bullet

Les outils utilisés:

              Logiciels de la chaîne de CAO ALLIANCE développée au sein du laboratoire ASIM:

bullet

GRAAL : Logiciel de dessin des masques

bullet

GENLIB : Compilateur.

bullet

ASIMUT: Simulateur et compilateur

bullet

SCR : Logiciel de placement et de routage des cellules standards.

bullet

RING : Logiciel de placement et de routage des plots.

bullet

DRUC : Logiciel vérifiant le respect des règles de dessin des masques.

bullet

LYNX : Logiciel d’extraction de netlist.

bullet

LVX : Logiciel de comparaison de netlist

 

bullet

La méthodologie:
Le but de ce projet était l’obtention des masques représentant l’amd2901, susceptibles d’être envoyés à un fondeur. Parti de la documentation commerciale du circuit (data-sheet), la réalisation de l’Amd2901 suit plusieurs étapes :

Description comportementale:
Dans un premier temps, on a décrit le comportement de l’amd à l’aide du langage VHDL (cf annexe 1 : fichier amdtp.vbe), puis à l’aide de fichiers de test (cf annexe 1 : fichier amdtp.pat) et du logiciel ASIMUT, on simule son comportement.
Une fois cette phase validée, on passe à la description structurelle.

Description structurelle:
a) l’analyse descendante:
La description structurelle passe par une phase d’analyse descendante qui a pour but de découper le circuit en unité plus petite et plus facilement réalisable.
De cette analyse, cinq unités se sont dégagées :
· L’alu ,
· Le multiplexeur d’entrée ,
· L’accu ,
· La ram ,
· Le multiplexeur de sortie .

b) Les unités:
A chaque unité correspond un fichier C qui décrit la structure de l’unité concernée en s‘appuyant sur des cellules standards de la bibliothèque SCLIB. Ce fichier est compilé avec GENLIB. Puis on teste le bon fonctionnement de l’unité à l’aide d’un fichier de test et du logiciel ASIMUT.

c) Le cœur de l’Amd2901:
De la même façon que l’on utilisait les cellules standards pour décrire chaque unité, on utilise les unités précédemment obtenues pour décrire le cœur de l’Amd2901. Pour cela on décrit dans un fichier C les connections entre les différentes unités.
Ce fichier est également compilé avec GENLIB et testé avec ASIMUT, afin de vérifier le bon comportement du coeur.
L’obtention des masques du cœur, se fait après placement et routage des cellules standards utilisées pour le décrit. Ces opérations sont réalisées avec le logiciel SRC.

d) Ajout des plots:
Il faut alors ajouter les plots, qui permettent à l’Amd de communiquer avec l’extérieur.
Le logiciel RING permet de placer et router les plots. Un fichier de placement des plots est fourni en entrée, indiquant l’endroit où l’on désire placer chaque plots.
On vérifie alors qu’il n’y a pas d’erreur de dessin dans les masques avec le logiciel DRUC :

e) Vérification:
On extrait la netlist obtenue après le routage à l’aide de LYNX
Puis on compare avec LVX cette netlist avec la netlist que nous avions décrite lors du placement des plots.
La validation de toutes ces étapes nous assure du bon fonctionnement du circuit, ainsi que de la validité des masques obtenus.

f) Vue sous forme de masque:
Au final on obtient donc les masques nécessaires à la réalisation physique du circuit. Ils peuvent ainsi être envoyés à un fondeur.


 

Accueil Layout de l'AMD2901


Statistiques web