Changes between Version 13 and Version 14 of SoclibCourseTp1
- Timestamp:
- Aug 31, 2009, 4:25:16 PM (16 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
SoclibCourseTp1
v13 v14 169 169 170 170 * '''Signals''' : On définit dans cette section les différents signaux qui seront utilisés pour connecter entre eux les ports d'entrée sortie des différents composants. On a besoin de 4 signaux : les deux signaux ''signal_ck'' et ''signal_resetn'' 171 devront être connectés aux ports correspondants des deux composants matériels. Les deux signaux ''signal_fifo_m2c'' et 172 ''signal_fifo_c2m'' sont des signaux composites représentant les deux canaux de communication entre les deux composants. On utilise un type générique, en ce sens que le type de la donnée transférée à chaque cycle doit être défini par un paramètre template : dans le cas présent, on transfère un entier 32 bits ''uint32-t''. Le signal ''signal_clk'' est également un objet complexe de type ''sc_core::sc_clock'', dont on peut définir la période (sc_time(1,SC_NS) signifie 1 ns), 171 devront être connectés aux ports correspondants des deux composants matériels. Les deux signaux ''signal_fifo_m2c'' et ''signal_fifo_c2m'' sont des signaux composites représentant les deux canaux de communication entre les deux composants. On utilise un type générique, en ce sens que le type de la donnée transférée à chaque cycle doit être défini par un paramètre template : dans le cas présent, on transfère un entier 32 bits ''uint32-t''. Le signal ''signal_clk'' est également un objet complexe de type ''sc_core::sc_clock'', dont on peut définir la période (sc_time(1,SC_NS) signifie 1 ns), 173 172 ainsi que le rapport cyclique. Vous devez ajouter le signal manquant dans cette section. 174 173 … … 181 180 Vous pouvez compiler ce fichier ''tp1_top.cpp'' pour générer le fichier objet correspondant en utilisant la commande: 182 181 {{{ 183 $ g++ -Wno-deprecated -I. -I/ .../systemc/systemc-2.2/include -c -o tp1_top.o tp1_top.cpp182 $ g++ -Wno-deprecated -I. -I/users/outils/dsx/cctools/include -c -o tp1_top.o tp1_top.cpp 184 183 }}} 185 184 Cette commande doit créer fichier objet ''tp1_top.o'' dans le répertoire TP1. … … 189 188 Vous pouvez maintenant créer le programme exécutable ''simulator.x'' en effectuant l'édition de liens entre les trois fichiers objet précédemment créés : 190 189 {{{ 191 $ g++ -Wno-deprecated -L. -L/ .../systemc/systemc2.2/lib...-o simulator.x fifo_lcd_master.o fifo_lcd_coprocessor.o tp1_top.o -lsystemc 2>&1 | c++filt190 $ g++ -Wno-deprecated -L. -L/users/outils/dsx/cctools/lib-linux -o simulator.x fifo_lcd_master.o fifo_lcd_coprocessor.o tp1_top.o -lsystemc 2>&1 | c++filt 192 191 }}} 193 192 Cette commande doit créer fichier objet ''simulator.x'' dans le répertoire TP1. … … 205 204 206 205 Le moteur de simulation SystemCASS, développé par le laboratoire LIP6, utilise une technique d'ordonnancement statique (sans échéancier) qui permet de réduire le temps de simulation d'un ordre de grandeur. Il n'est pas nécessaire de modifier le code SystemC des composants instanciés, ni le code systemC décrivant la top_cell, mais il faut recompiler l'ensemble des fichiers sources: 207 la simulation par 208 206 207 /users/outils/dsx/systemcass/include 208 /users/outils/dsx/systemcass/lib 209