Changes between Version 82 and Version 83 of SoclibCourseTp3
- Timestamp:
- Oct 23, 2020, 3:05:23 AM (4 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
SoclibCourseTp3
v82 v83 36 36 Le composant '''!VciXcacheWrapper''' peut encapsuler différents processeurs RISC 32 bits. Le coeur du processeur est modélisé par un ISS (Instruction Set Simulator). 37 37 Le type du proceseur instancié (MIP32, ARM, SPARCV8, PPC405, NIOS, !MicroBlaze, etc.) est défini par un paramètre template du composant `VciXcacheWrapper`. 38 Consultez la documentation [http s://www.soclib.fr/trac/dev/wiki/Component/VciXcacheWrapper ici].39 40 Le composant ''' VciSimpleRam''' est utilisé pour modéliser des mémoires inscriptibles embarquées (SRAM). On utilise le même composant pour modéliser des mémoires non inscriptibles (ROM).38 Consultez la documentation [http://www.soclib.fr/trac/dev/wiki/Component/VciXcacheWrapper ici]. 39 40 Le composant '''!VciSimpleRam''' est utilisé pour modéliser des mémoires inscriptibles embarquées (SRAM). On utilise le même composant pour modéliser des mémoires non inscriptibles (ROM). 41 41 Ce composants peut contenir un ou plusieurs segments (correspondant à des tranches disjointes 42 42 de l'espace addressable). Le composant analyse les bits de poids fort de l'adresse VCI 43 43 pour déterminer le segment désigné. Les bancs de mémoire physique correspondant aux différents segments 44 44 sont modélisés par des tableaux C++ dont la longueur est définie par les valeurs stockées dans la `MappingTable`. 45 Consultez la documentation [http s://www.soclib.fr/trac/dev/wiki/Component/VciSimpleRam ici].46 47 Enfin le composant ''' VciMultiTty''' est un contrôleur de terminaux alpha-numériques. Ce composant peut contrôler de 1 à 256 terminaux (un terminal est une paire écran / clavier). Pratiquement, chaque terminal est modélisé par l'ouverture d'une fenêtre XTERM indépendante sur l'écran de la station de travail qui exécute la simulation.45 Consultez la documentation [http://www.soclib.fr/trac/dev/wiki/Component/VciSimpleRam ici]. 46 47 Enfin le composant '''!VciMultiTty''' est un contrôleur de terminaux alpha-numériques. Ce composant peut contrôler de 1 à 256 terminaux (un terminal est une paire écran / clavier). Pratiquement, chaque terminal est modélisé par l'ouverture d'une fenêtre XTERM indépendante sur l'écran de la station de travail qui exécute la simulation. 48 48 Chaque terminal possède 4 registres adressables pour la lecture ou l'écriture, et fonctionne en mode ''caractère'': 49 49 on ne peut lire ou écrire qu'un seul caractère par transaction VCI. 50 Consultez la documentation [http s://www.soclib.fr/trac/dev/wiki/Component/VciMultiTty ici].50 Consultez la documentation [http://www.soclib.fr/trac/dev/wiki/Component/VciMultiTty ici]. 51 51 52 52 = 3 Logiciel embarqué = … … 102 102 La plate-forme SoCLib fournit donc un service permettant d'initialiser directement les mémoires embarquées à partir du code contenu 103 103 dans le fichier ELF. Cette initialisation n'est plus réalisée lors de l'exécution de la simulation (dans la phase de boot), elle 104 est réalisée avant le démarrage de la simulation. En pratique, ce chargement est réalisé par le constructeur du composant `VciSimpleRam, gràce à un argument `loader` qui lui permet d'accéder au contenu du fichier ELF contenant le code binaire. Ce constructeur posséde un autre argument lui permettant d'accéder104 est réalisée avant le démarrage de la simulation. En pratique, ce chargement est réalisé par le constructeur du composant !VciSimpleRam, gràce à un argument `loader` qui lui permet d'accéder au contenu du fichier ELF contenant le code binaire. Ce constructeur posséde un autre argument lui permettant d'accéder 105 105 à la `MappingTable`. Il peut donc déterminer quels segments ont été affectés à la RAM (ou à la la ROM) et lesquels doivent être initialisés. 106 106