Changeset 95 for trunk/IPs/systemC/processor/Morpheo/Documentation
- Timestamp:
- Dec 16, 2008, 5:24:26 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Documentation/doc/document-morpheo-vhdl_generation/tex/document-morpheo-vhdl_generation-fr.tex
r94 r95 6 6 7 7 Ce document est une aide pour les développeur des générateurs de modèles VHDL de \cpu. 8 Il est décomposé en 5sections :8 Il est décomposé en 6 sections : 9 9 \begin{itemize} 10 10 \item Dans la section \ref{tree}, nous présentons l'arborescence des répertoires. … … 13 13 \item Dans la section \ref{vhdl_structural}, nous expliquerons la manière de créer des sous composants. 14 14 \item Dans la section \ref{example}, nous montrerons quelques exemples. 15 \item Dans la section \ref{testbench}, nous présenterons la méthodologie de test. 15 16 \end{itemize} 16 17 … … 363 364 364 365 \end{verbatim} 366 367 \Section {Test du VHDL}\label{testbench} 368 369 Lors d'une simulation systemC, \cpu va générer des fichiers de tests pour le modèle VHDL de chaque composant interne. 370 Ces tests sont tous écrit de la même façon. Soit l'interface X et le signal Y : 371 \begin{itemize} 372 \item Une variable {\it counter} indique le numéro de cycle courant. Elle est initialisé à 0. Elle est incrémenté à chaque cycle. 373 \item Le composant est instancé avec des signaux internes de même nom. 374 \item Pour chaque cycle, on affecte à chaque entrée la valeur obtenu lors de la simulation systemC. 375 \item Pour chaque sortie, on définit un signal dont le nom est {\it out\_X\_Y\_test}. Ces signaux sont affecté au valeur obtenu des sorties lors la simulation systemC. 376 \item Le signal {\it interface\_X\_test\_ok} est égal à 1 si chaque sortie calculé par la simulation VHDL est égal au sortie attendu (calculé par la simulation systemC). 377 \item Le signal {\it interface\_X\_test\_transaction} est à 1 si tous les signaux de validité et d'aquittement sont à 1. 378 \item Le signal {\it interface\_X\_test\_tmp} est à 1 si la simulation systemC indique qu'il y a une transaction et que la simulation vhdl indique également une transaction et que toute les sortie sont bien les sorties obtenu. Si la simulation systemC n'indique pas de transaction, on vérifie que c'est également le cas pour la simulation VHDL. 379 \item Le signal {\it interface\_X\_test} est égal au signal {\it interface\_X\_test\_tmp} quand il n'y a pas de reset. sinon il est positionné à 1. 380 \item Le signal {\it test} est un et logique entre tout tous les signaux {\it interface\_X\_test}. 381 \item La simulation VHDL ce termine si le signal {\it test} vaut 0 (dans ce cas, le test est un échec), ou que le registre {\it counter} vaut le nombre de cycle requis par la simulation systemC (dans ce cas, le test est un succès). 382 \end{itemize} 383 384 Nous pouvons remarquer que : 385 \begin{itemize} 386 \item Nous vérifions la compatibilité au cycle des transactions entre le modèle systemC et le modèle VHDL. 387 \item Nous vérifions la compatibilité au bit près des données échangé lors qu'il y a une transaction sur une interface. 388 \item Nous ne vérifions pas la compatibilité au bit près des données présente sur une interface qui ne fait pas de transaction lors d'un cycle. 389 \end{itemize}
Note: See TracChangeset
for help on using the changeset viewer.