SEm/laboratoires/06 uart
(→Introduction) |
(→Périphérique UART) |
||
Line 9: | Line 9: | ||
Le périphérique met à disposition du processeur deux lignes série: une en émission et une en réception. | Le périphérique met à disposition du processeur deux lignes série: une en émission et une en réception. | ||
+ | |||
+ | La lecture des bits du mot série entrant doit se faire au plus près du milieu de ceux-ci. | ||
+ | Le compteur qui détermine le moment de cette lecture doit donc être synchronisé au moins avec l'apparition du <code>start bit</code>. | ||
+ | Par contre, le compteur qui pilote l'émission d'un mot série conserve une période fixe, indépendante du circuit de réception. | ||
=== Registres === | === Registres === | ||
Line 31: | Line 35: | ||
{{TaskBox|content= | {{TaskBox|content= | ||
− | En se basant sur ce diagramme-bloc, écrivez le code VHDL du périphérique <code> ahbUart </code>. | + | En se basant sur ce diagramme-bloc, écrivez le code VHDL du périphérique <code>ahbUart</code>. |
}} | }} | ||
Line 37: | Line 41: | ||
{{TaskBox|content= | {{TaskBox|content= | ||
− | A l'aide du banc de test à disposition, simulez le système et vérifiez le bon fonctionnement du périphérique <code> ahbUart </code>. | + | A l'aide du banc de test à disposition, simulez le système et vérifiez le bon fonctionnement du périphérique <code>ahbUart</code>. |
}} | }} |
Revision as of 07:51, 2 April 2015
|
Périphérique UART
Introduction
Dans ce laboratoire, nous allons réaliser un périphérique très commun dans tous les systèmes à processeur: un port série (Universal Asynchronous Receiver/Transmitter, UART).
Ce laboratoire exerce la conception d'un circuit et demande une réflexion sur l'architecture du système.
Conception
Le périphérique met à disposition du processeur deux lignes série: une en émission et une en réception.
La lecture des bits du mot série entrant doit se faire au plus près du milieu de ceux-ci.
Le compteur qui détermine le moment de cette lecture doit donc être synchronisé au moins avec l'apparition du start bit
.
Par contre, le compteur qui pilote l'émission d'un mot série conserve une période fixe, indépendante du circuit de réception.
Registres
Les registres accédés en écriture par le microprocesseur sont:
- adresse 00: registre des données, contient la valeur qui va être transmise selon le protocole RS 232
- adresse 01: registre de contrôle, pas utilisé pour le moment
- adresse 02: registre de période, donne la vitesse de transmission, tant en émission qu'en réception
Les registres accédés en lecture sont:
- adresse 00: registre des données, contient la valeur reçue selon le protocole RS 232
- adresse 01: registre des statut:
- bit 0: indique qu'un nouveau mot a été reçu et peut être lu par le microprocesseur
- bit 1: indique qu'un mot est en cours de transmission et que le microprocesseur ne doit pas écrive de nouvelle valeur dans le registre des données
- bit 2: indique qu'un nouveau mot est en cours de réception
Code VHDL