You are on page 1of 15

2013

Projet VHDL /ASII->MORSE

Raliser par : Oudaoud Rafiq Encadrer par : Pr.Bousmah

Sommaire
1) Introduction.....................................................................................................................................3 1) le but du projet .......................................................................................................................... 3 2) Cahiers de charges ..................................................................................................................... 3 3) Morse ......................................................................................................................................... 3 2) Prsentation des diffrents blocs du projet .................................................................................. 4 1) Schma ...................................................................................................................................... 4 2) ROM ........................................................................................................................................... 4 3) Mise en forme temporelle ......................................................................................................... 4 4) Allumage de la led ...................................................................................................................... 6 5) Calculateur ................................................................................................................................. 7 3)Annexes ......................................................................................................................................... 9

Projet VHDL /ASII->MORSE

1) Introduction
1) le but du projet Le projet est un convertisseur du code ASCI (rentr par ordinateur) vers le code Morse lumineux. Ainsi, on verra sallumer et steindre les leds de la carte FPGA pour coder chacune des lettres du mot ou de la phrase entr. 2) Cahiers de charges Lors de lallumage des leds il yaura une squence des signaux longs et de signaux courts qui correspondent des lettres. Les signaux longs auront une dure correspondante 3 fois les signaux courts eux mme de 0,5s. La sparation entre chaque lettre se fera par une extinction correspondante une dure de 3 signaux courts. La sparation entre deux mots aura pour codage une extinction correspondante une dure de 7 signaux courts. On commencera par coder selon le code Morse les 26 lettres plus les 10 chiffres dans une ROM qui contiendra ces informations et qui renverra une suite de 0, de 1 et de -. Sachant que 0 signifie un allumage courts, 1 signifie un allumage long et que le - n pour but que de garder une longueur de codage de 5 bits (- = Dont care du std_logic). Puis on utilise ce signal pour le transform un une suite de 1 et de 0 temporise (i.e : 0 correspondra dsormais un tat teint de la led, alors que 1 correspondra ltat allum de la led). On raisonnera donc avec une logique positive (en ralit impos par la logique FPGA). 3) Morse

Un point correspond un 0 qui sera cod comme un signal court et une barre correspond un 1et donc correspond un signal long.

Projet VHDL /ASII->MORSE

2) Prsentation des diffrents blocs du projet


1) Schma

ROM

MISE EN FORME

Allumage led

Calculateur
2) ROM

On implmente une ROM de 511 mots de 5 bit. En effet mme si pour le code ASCII que lon utilise il nest pas ncessaire davoir 511 adresse le fait que le code ASCII est sur 8 bits va nous permettre dutiliser le du signal de sortie du UART directement comme adresse pour la ROM. On ralise des mots de 5 bits car le plus long codage Morse comprend 5 symboles (les chiffres). Cela entraine directement que, pour des mots plus courts on devra rajouter au codage un ou plusieurs symboles qui nauront pas dautre utilit que de faire un codage de la bonne longueur. Celui-ci sera le Dont care du type std_logic et sera donc not -.

3) Mise en forme temporelle

Projet VHDL /ASII->MORSE

Le but de ce bloc
Cette partie transforme les signaux cods en morse en signal temporel mais qui sera conditionn par un signal dentr START qui provient du Picoblaze ; pour un signal court il reste une demi seconde au niveau 1 et une autre au niveau 0 .alors que pour un signal long il reste 1,5 s au niveau 1 et 0,5 s au niveau bas .ce qui permettra leds pendant 1.5 s ou 0.5 s . dallumer les leds aprs travers le bloc allumage des

+Entre deux lettres il ya un signal bas de 1.5 s +Entre deux mots il y a un signal bas de 3.5 s

Projet VHDL /ASII->MORSE

Machine dtat de la mise en forme temporelle

Projet VHDL /ASII->MORSE

5) Allumage de la led

Cette partie permet partir du signal gnr par la mise en forme temporelle dallumer les leds et de les teindre. De plus ce bloc a un rle de garde fou . En effet grce un signal handshake il sassure que le bloc Picoblaze nenvoie pas de nouvelle lettre coder tant que la prcdente na pas t entirement code. Cela est ncessaire du fait du temps important (quelques secondes) ncessaires au codage morse dune lettre. On ralise deux tats E0 et E1 qui permettent de diffrencier la fin de lettre de la fin dun mot grce un signal c . E1 tant un tat temporaire qui vrifie si lextinction est de dure trois priodes de base ou sept priodes de base .

6) Calculateur
Ceci est un bloc qui rassemble tous les blocs :ROM , mise en forme temporelle, allumage de la led. Ce bloc a t ralis pour simplifier la connexion avec le Picoblaze(UART). On a pour cela raliser une instanciation entre les diffrents blocs. Il permet de simuler toute la partie qui sera connect au Picoblaze et de vrifier son bon fonctionnement.

Projet VHDL /ASII->MORSE

Simulation de la partie Calculateur On ralise une simulation de toute la partie calculateur ; On envoie les lettre T qui correspond au code ASCII (01010100) 54 en hexadcimal , suivi de la lettre e(01010101) 24 en hexadcimal puis dun code non attribu(00011100),du chiffre 2 (00110010).

Schmatique du bloc calculateur

Projet VHDL /ASII->MORSE

3) Annexes ROM

Projet VHDL /ASII->MORSE

Projet VHDL /ASII->MORSE

10

Projet VHDL /ASII->MORSE

11

Projet VHDL /ASII->MORSE

12

Projet VHDL /ASII->MORSE

13

Projet VHDL /ASII->MORSE

14

Projet VHDL /ASII->MORSE

15

You might also like