22
1

Le logiciel doit être implémenté selon le principe des

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

1

2

3

Le logiciel doit être implémenté selon le principe des machines abstraites avec une couche de fonctions définissant une interface de programmation (sorte d’API) permettant l’accès aux registres du processeur.

4

A l’aide d’attributs dans le code VHDL ou (de préférence) à l’aide de directives (set attribute) sous precision synthesis, procédez à l’affectation des pattes comme indiqué ci-dessus.

Lancez quartus et verifiez la bonne affectation sous quartus (pin planner).

Branchez la sortie vs (bornier C) à l’analyseur logique sur un logic pod (voie 3A broche 0 à 7 et voie 4A broche 8). N’oubliez pas de relier les masses.

Lancez le LA4000 puis

1.Initialisez le POD2. Configurez la visualisation des voies (Aller dans menu « Pod -> Pod mode setup » et modifier les champs comme le montre la Figure 1)3.

Procédez à la programmation sous quartus et visualisez le résultat.

5

reponseE est une BAL dans laquelle sera déposé le message une fois recu en entier. envoiS est un parametre d’appel à la procedure emission_message.

6

Sur le site consommateur, la console du PC sert d’émetteur d’un message envoi et récepteur de la réponse(. Reception message invoque reception liasion au travers d’un appel de procédure lorsque le message est complet. Cette dernière inoque envoi message qui retourne la main à récpetion liaison et qui rend la main à reception message pour attendre le 1er caractère du message suivant.

7

Modifier l’asm de manière à intégrer l’entrée Tx.

8

Modifier la solution architecturale du TP3 asic de manière à intégrer l’entrée Tx et que la fréquence du signal soit de 1,6Khz.

9

Validez sous Modelsim à l’aide d’un testbench (ici transmission d’un caractère ‘A’ à 800 bps).

10

Sous précision synthesis, compilez (compile) votre description VHDL et validez le schéma RTL obtenu (observer notamment la gestion du tx) qui doit etre implémenté par des opérateurs ET.

11

Sous précision synthesis, optimisez la solution RTL avec au choix inférence ou non d’une ROM embarquée. Examinez attentivement les rapports estimatifs de surface et de timing.

12

Sous quartus, recochez l’option classic timing analyseur (menu assigmenttiming annalyser settings) , compilez et vérifiez la fréquence maximale d’horloge (menu classic timing analyser tool) .

13

Validez sous Modelsim la solution post routée (gate level) à l’aide du testbench précédent et comparez avec la solution du niveau RTL

14

Définissez l’ASMn du démodulateur à partir de l’algorithme de cofluent en recherchant un ordonnancement de type RC (car la contrainte de performance n’est pas tres importante).

Une fois l’allocation des registres effectuez, validez l’ASM sous modelsim (un process unique regroupant les transferts de registre et l’unité de contrôle)

Déterminez ensuite l’allocation des UF et déduisez la solution architecturale (en distinguant datapath et unité de contrôle et en définissant ‘interface sous forme d’un mot de controle)

Validez la solution RTL sous modelsim, puis la solution gate level.

15

A l’aide d’attributs dans le code VHDL ou (de préférence) à l’aide de directives (set attribute) sous precision synthesis, procédez à l’affectation des pattes comme indiqué ci-dessus.

Si besoin, on pourra utiliser les pattes 204 et 202 du composant (37 et 35 sur le bornier)

Lancez quartus et verifiez la bonne affectation sous quartus (pin planner).

Branchez la sortie vs (bornier C) à l’analyseur logique LA4000. N’oubliez pas de relier les masses.

Configurez le logiciel

Branchez l’entrée d’horloge à la sortie d’un GBF.

Procédez à la programmation sous quartus et visualisez le résultat.

16

La routine d’interruption doit tester le registre UART0_IIR pour savoir si cela concerne le récepteur (reset l’IT en meme temps) avant de lire la donnée

dans UART0_RBR

17

reponseE est une BAL dans laquelle sera déposé le message une fois recu en entier. envoiS est un paramètre d’appel à la procédure emission_message.

Remarque: La routine d’interruption doit tester le registre UART0_IIR pour savoir si cela concerne le récepteur (reset l’IT en meme temps) avant de lire la donnée

dans UART0_RBR

18

Procédez à la connexion de la patte Tx (pin 45) sur le bornier A, patte 15, et générez un caractère à partir d’un hyperterminal (ou du virtex ou de l’arm7 au choix)

19

20

La pin 223 correspond à la patte 49 du bornier C, la pin 229 patte 54.

La pin 48 correspond à la patte 17 du bornier A.

21

reponseE est une BAL dans laquelle sera déposé le message une fois recu en entier. envoiS est un parametre d’appel à la procedure emission_message.

22

reponseE est une BAL dans laquelle sera déposé le message une fois recu en entier. envoiS est un parametre d’appel à la procedure emission_message.