Changes between Version 5 and Version 6 of SoclibCourseTp1
- Timestamp:
- Aug 31, 2009, 12:46:07 AM (16 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
SoclibCourseTp1
v5 v6 6 6 7 7 8 = 0. Objectif =8 = 1. Objectif = 9 9 10 10 L'objectif de ce premier TP est de vous amener à écrire vous-même, en utilisant le langage SystemC … … 14 14 et permet d'utiliser des technique d'ordonnancement statique permettant d'accélérer la simulation. 15 15 16 = 1. Architecture à modéliser =16 = 2. Architecture à modéliser = 17 17 18 18 L'architecture matérielle à modéliser réalise Elle ne comporte que deux composants matériels: Le premier … … 26 26 Ces deux composants sont donc modélisés par deux automates cadencés par la même horloge CK, avec écriture dans les tous les registres du système sur le front montant de CK. Ils sont initialisés par le même signal NRESET, actif à l'état bas. 27 27 28 == 1.1 Canal de communication FIFO ==28 == 2.1 Canal de communication FIFO == 29 29 30 == 1.2 Composant ''fifo_lcd_coprocessor'' ==30 == 2.2 Composant ''fifo_lcd_coprocessor'' == 31 31 32 32 L'algorithme de calcul du PGCD implanté par cet automate cablé peut être décrit par le code C suivant : … … 66 66 * Dans l'état '''DECR_A''' (resp. '''DECR_B'''), on écrit le dans le registre ''r_opa'' (resp. ''r_opb''). On ne reste qu'un cycle dans ces états, puisque la décrémentation ne dépend d'aucune condition extérieure. 67 67 68 == 1.3 Composant ''fifo_lcd_master'' ==68 == 2.3 Composant ''fifo_lcd_master'' == 69 69 70 70 Ce composant matériel effectue le travail normalement effectué par un processeur programmable, consistant à générer les valeurs des deux opérandes, à transmettre ces valeurs d'entrée au coprocesseur, à récupérer le résultat calculé par le coprocesseur, et à afficher ce résultat sur un terminal. L'utilisation de processeurs programmables suppose qu'on est capable de déployer le code binaire exécutable par le processeur programmable sur l'architecture matérielle simulée. … … 93 93 courante ainsi que les valeurs des opérandes et du résultat sur le terminal standard de la station de travail qui exécute la simulation. On ne reste qu'un cycle dans cet état. 94 94 95 = 2. Travail à réaliser =95 = 3. Travail à réaliser = 96 96 97 == 2.1 Ecriture du modèle CABA du coprocesseur ==97 == 3.1 Ecriture du modèle CABA du coprocesseur == 98 98 99 99 Le modèle de simulation d'un composant matériel (appelé ''module'' en SystemC) nécessite la définition d'une classe C++ dont le nom correspond au nom du module matériel modélisé. Il faut donc écrire deux fichiers. 100 100 * Le fichier ""module.h'' contient la définition de la classe 101 101 * de 102 == 2.2 ==103 102 104 == 2.3 == 103 == 3.2 Ecriture du modèle CABA de la ''top-cell'' == 104 105 == 2.3 Compilation et génération du simulateur == 106 107 == 2.4 Simulation avec le moteur de simulation OSCI == 108 109 == 2.5 Simulation avec le moteur de simulation SystemCass ==