Changes between Version 15 and Version 16 of SoclibCourseTp3


Ignore:
Timestamp:
Sep 16, 2009, 8:18:37 PM (15 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • SoclibCourseTp3

    v15 v16  
    8888fichiers objets qui doivent être compilés pour générer le simulateur.
    8989
    90 L'archive contient en particulier les fichiers suivants :
     90L'archive contient en particulier les fichiers suivants correspondant aux modèles des composants instanciés :
    9191 * `vci_xcache_wrapper.h` : définition du composant `VciXcacheWrapper`
    9292 * `vci_xcache_wrapper.cpp` : méthodes associées
     
    116116
    117117'''Remarque importante''' : Ces informations de segmentation sont utilisées à la fois par le matériel et par le logiciel embarqué. Elles doivent donc être définies à deux endroits :
    118  1. Dans le fichier ''tp3_top.cpp'' pour définir le contenu de la !MappingTable, qui est utilisée configurer les
    119 composants matériels.
    120  1. Dans le fichier ''soft/ldscript'' qui est utilisé par l'éditeur de liens lors de la compilation du logiciel embarqué.
    121 Ce fichier doit définir les adresses de base des différents segments (mémoire et périphériques). 
    122 
    123 On définit donc ces valeurs dans un séparé fichier ''tp3_segmentation.h'', qui sera inclus dans tous les fichiers qui ont besoin de cette information.
     118 1. Dans le fichier ''tp3_top.cpp'' pour définir le contenu de la !MappingTable, qui est utilisée configurer les composants matériels.
     119 1. Dans le fichier ''soft/ldscript'' qui est utilisé par l'éditeur de liens lors de la compilation du logiciel embarqué, pou définir les adresses de base des différents segments (mémoire et périphériques). 
    124120
    125121Complêtez les fichiers ''tp3_top.cpp'' et ''soft/ldsript'' pour définir les adresses de base et les longueurs des segments.
     
    143139périphériques et à la mémoire.
    144140 
    145 Question : Quels sont les appels système disponibles?qui (un tout petit bombre
    146 
    147 On rappelle que l'instruction ''eret'' modifie le registre SR pour que le processeur passe passe en mode ''user'' et se branche à l'adresse (registres généraux et registres systèmedu processeur
    148 ou du coprocesseur
    149 
    150 Puisqu'on dispose d'un contrôleur de terminal dans l'architecture, le premier programme que vous allez exécuter se contentera d'afficher le célèbre ''hello world'' sur le terminal, en utilisant la fonction C ''fputs()''. N'oubliez pas de
    151 terminer proprement le programme par un appel à la fonction C ''exit()''.
    152 
    153 Lancez l'exécution du Makefile. Un fichier ''soft.bin'' doit doit être créé dans le répertoire ''soft''.
     141Question : Quels sont les appels système qui permettent d'accéder à un terminal TTY ?
     142
     143On rappelle que l'instruction ''eret'' de sortie du GIET ou du code de boot effectue principalemnt deux actions :
     144 1. Elle modifie le registre SR (registre 12 du coprocesseur ''système'') pour que le processeur retourne dans le mode où il était lorsqu'il a été dérouté par une interruption, une exception ou un appel système.
     145 1. Elle effectue un branchement à l'adresse contenue dans le registre EPC (registre 14 du coprocesseur ''système'').
     146
     147Question : Quels sont les registres initialisés par le code de boot ? pouquoi ces initialisations ?
     148
     149Puisqu'on dispose d'un contrôleur de terminal dans l'architecture, le premier programme que vous allez exécuter se contentera d'afficher le célèbre ''hello world'' sur le terminal. Complêtez le fichier ''main.c'' en utilisant la fonction C ''fputs()''. N'oubliez pas de terminer proprement le programme par un appel à la fonction C ''exit()''.
     150
     151Lancez l'exécution du Makefile. Un fichier ''soft.bin'' doit doit être créé dans le répertoire ''soft''.
     152 
     153le fichier ''soft.bin.txt'' contient un version desassemblée de ce code binaire, qui vous permet de visualiser le
     154code qui va être chagé dans les mémoires du prototype virtuel, pour exécution par le processeur MIPS32.
    154155
    155156== 4.3 Instanciation des modèles des composants ==