Changes between Version 29 and Version 30 of WikiStart


Ignore:
Timestamp:
Dec 3, 2009, 4:05:26 PM (14 years ago)
Author:
cobell
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WikiStart

    v29 v30  
    1 = Projet MIPS =
     1= Réalisation d'un processeur Mips R3000 =
    22
    3  * Début du projet MIPS le lundi 21 octobre 2008
    4  * Réunion de présentation le vendredi 17 octobre à 10h00 en salles 408/410
    5  * Rapport à rendre le vendredi 7 novembre avant 18h dans le bureau 401 (par mail à sophie.belloeil@lip6.fr au plus tard le dimanche 9 novembre pour les étudiants de l'UFE)
    6  * Soutenances le jeudi 13 novembre à 14h00, le mercredi 12 novembre à 9h30 pour les étudiants de l'UFE. L'ordre de passage de jeudi est le suivant (20 minutes de soutenance + environ 10 minutes de questions par groupe) :
    7   * Groupe 6 - Antoine - 14h00
    8   * Groupe 5 - Ghassan - 14h30
    9   * Groupe 4 - Zhen - 15h00
    10   * Groupe 3 - Ramy - 15h30
    11   * Groupe 2 - Mathieu - 16h00
    12   * Groupe 1 - Geoffrey - 16h30
     3Pirouz Bazargan / Sophie Belloeil (UPMC) / Stéphanie Youssef (UFE)
    134
    14 = Infos =
     5 * 6 cours de 2 heures
    156
    16 Si besoin, diverses informations seront ajoutées ici pendant le projet ...
     7 * 4 TME de 4 heures
     8   * Plateforme de simulation
     9   * Synthèse de la partie contrôle
     10   * Description du chemin de données
     11   * Placement / Routage / Validation / Analyse de Timing
    1712
    18   * De façon à avoir une idée de la qualité de votre placement, vous pouvez lancer le script python '''createCongestion.py''' inclu dans Stratus, comme suit :
    19 {{{
    20 > createCongestion.py mips_r3000_1m_dp
    21 }}}
    22     Cela peut être fait sur chacun des fichiers représentant le circuit, du moment que les fichiers .vst et .ap (avant routage) existent.
    23     L'image obtenue permet d'évaluer la congestion (i.e. les endroits susceptibles de poser problème lors du routage): noir = pas de congestion, rouge = un peu de congestion, jaune / blanc : beaucoup de congestion ...
    24   * Une option existe pour la fonction de placement automatique qui permet d'obtenir un placement plus optimisé de la partie contrôle (algorithme plus optimisé et donc ... plut lent), il vous suffit de rajouter '''greedy = False''' lors de l'appel de la fonction.
    25   * Attention changement de date pour les soutenances : elles seront le jeudi 13 novambre à 14h.
    26   * Pour le banc de registre dans le chemin de données, vous pouvez utiliser le générateur sans décodeur d'adresse DPGENRF2R0 ou DPGENRF2R0 (attention pour les utiliser, il faut rajouter la ''rf2lib'' dans les variables d'environnement)
    27   * Un serveur de calcul est à votre disposition : '''berlioz'''
    28   * Pour des raisons de sécurité, aucun accès ssh ne sera autorisé pour les comptes mips
     13Cette UE s’organise en deux parties: d’abord 3 séances de 2 fois 2 heures de cours, puis 4 séances de 4 heures de TME qui seront assurées par Sophie Belloeil à Paris et Stéphanie Youssef au Caire.
    2914
    30 = Groupes =
     15= Cours =
    3116
    32  * Chaque groupe a un encadrant désigné.
    33    Son rôle est de vous aider en cas de soucis, n'hésitez pas à le contacter.
    34    Vous devez cependant vous efforcer d'être les plus autonomes possible.
    35  * En cas de problème ou d'incompréhension avec votre encadrant, n'hésitez pas à me contacter : sophie.belloeil@lip6.fr .
    36  * Chaque groupe possède un compte spécifique au projet (de type ''mips0x08'').
    37    C'est sur ce compte que vous devez travailler et stocker tous vos fichiers sources, votre rapport et votre présentation.
    38    C'est à l'adresse mail correspondant à ce compte que vos encadrants ou moi même vous contacterons, n'oubliez pas de la consulter.
    39  * Répartition des groupes :
    40   * 1. Geoffrey : Choichillon, Li, Hattal
    41   * 2. Mathieu : Gioja, Guan, Allegue
    42   * 3. Ramy : Guthmuller, Meng, Houfaf
    43   * 4. Zhen : Boutchacha, Haghighitalab, Wu, Mazza
    44   * 5. Ghassan : Lrhoul, Delahaye, Rafic
    45   * 6. Antoine : Kilic, Liu, Beladjine, Darvish
     17 
     18= TME =
    4619
    47 = Travail à effectuer =
    48 
    49 Le but est ici d'effectuer la conception physique d'un Mips R3000 pipeline.
    50 
    51 Vous devez appliquer la méthodologie vue dans les Tps de Tools visant à concevoir l'AM2901.
    52 
    53   == Fichiers fournis ==
    54 
    55 En attachement de cette page, vous trouverez une archive contenant l'ensemble des fichiers nécessaires au projet MIPS.
    56 Pour décompresser cette archive, utilisez la commande suivante :
    57 {{{
    58 > tar xjvf sources.tar.bz2
    59 }}}
    60 
    61 Un répertoire `sources` contenant lui même six autres répertoires :
    62  * `asm` : contient les programmes assembleurs qui seront exécutés sur la carte contenant le MIPS pour vérifier son fonctionnement.
    63  * `design` : contient les descriptions comportementales ou structurelles des différentes parties du MIPS, que vous devez utiliser pour écrire la description structurelle de l'ensemble du circuit (en python).
    64  * `mips` : contient un fichier comportemental décrivant le mips dans lequel le découpage chemin de données / partie contrôle n'est pas effectué.
    65  * `misc` : contient les fichiers utiles à la création de l'environnement de test du MIPS.
    66  * `ram` : contient les fichiers décrivant le fonctionnement de la ram.
    67  * `test_mips` : contient les fichiers de test.
    68 
    69   == Procédure de tests ==
    70 
    71 Le répertoire `test_mips` contient un script shell nommé `test.sh` vous permettant de lancer l'intégralité des tests sur votre MIPS.
    72 
    73 En récupérant les fichiers fournis, vous pouvez tester deux mises en oeuvre du MIPS à l'aide des commandes suivantes :
    74 {{{
    75 > ./test.sh flat
    76 }}}
    77 permet de lancer tous les tests en utilisant la description comportementale du mips située dans le répertoire `mips`.
    78 
    79 {{{
    80 > ./test.sh mixed
    81 }}}
    82 permet de tester le découpage des parties contrôle et chemin de données (en comportementale) instanciées par une hierarchie structurelle du coeur et du circuit complet (avec plots).
    83 
    84 Notez bien que pour utiliser cette commande vous devez au préalable avoir généré les fichiers `mips_r3000_1m_core.vst` et `mips_r3000_1m.vst` à l'aide du script `gen_mips.py` situé dans le répertoire `design`.
    85 
    86 De plus, les outils ne pouvant pas faire tout le travail à votre place, il subsiste quelques désagréments. Par exemple dans la descritpion structurelle, l'instanciation des plots n'est pas faite avec le bon type de signal. A vous de vérifier lesquels et d'agir en conséquences.
    87 
    88 Le script `test.sh` doit être modifié pour pouvoir tester tous les autres cas de hierarchie mixte (comportemental / structurel).
    89 
    90 = Rapport et soutenance =
    91 
    92 Tous les membres d'un groupe doivent participer à la rédaction du rapport et doivent prendre la parole lors de la soutenance.
    93 Les soutenances doivent durer 20 minutes.
    94 
    95 Le rapport comme la soutenance doivent insister notamment sur les points suivants :
    96  * la description de la méthodologie appliquée,
    97  * les modifications (interfaces, ressources internes ...) apportées aux fichiers fournis, avec justification,
    98  * les choix faits et leurs motivations en ce qui concerne la synthèse de la partie contrôle,
    99  * le détail des générateurs utilisés pour la conception du chemin de données ainsi leur placement (un schéma sera apprécié), ...
    100  * le détail des diverses directives de placement / routage : placement des plots, rails d'alimentations ...
    101  * la description, avec justification, de la distribution d'horloge, ainsi que du scan-path,
    102  * l'analyse détaillée des performances temporelles : pensez à décrire avec exactitude par où passe la chaîne longue du circuit,
    103  * les explications détaillées des modifications apportées au circuit de façon à améliorer ces performances,
    104  * une caractérisation simple du circuit : fréquence, taille en lambda, en millimètres, nombre de transistors ...
    105 
    106 De façon générale, des schémas seront appréciés ...
    107 
    108 N'oubliez pas également de préciser les chemins d'accès à vos fichiers décrivant votre (ou vos) réalisation(s) du Mips (les droits d'accès ne doivent pas être restreints).
     20A venir ...