INFORME PRACTICA FINAL CODIFICADOR MORSE
jlbeltrancTrabajo16 de Septiembre de 2019
2.972 Palabras (12 Páginas)666 Visitas
INFORME PRACTICA FINAL
CODIFICADOR MORSE
[pic 1]
Presentado a: Ing. FERNANDO APARICIO URBANO
Presentado por: JOSE LUIS BELTRAN
NICOLAS VILLOTA
CIRCUITOS DIGITALES II
UNIVERSIDAD DEL CAUCA
INGENIERÍA ELECTRÓNICA Y TELECOMUNICACIONES
Popayán, 2 de Octubre de 2014
I. RESUMEN
En esta práctica se propuso diseñar un codificador Morse utilizando el lenguaje VHDL, el cual se encargará de convertir una serie de datos binarios en código Morse, para esta práctica hemos requerido que nuestro codificador convierta las letras de ciertas palabras que ya han sido registradas y almacenadas en el sistema, para ello necesitamos que una de las funcionalidades del sistema, además de realizar la conversión de binario a código morse, es que nos permita cargar palabras predeterminadas para luego ser mostradas en código Morse. Toda la implementacion, conceptos, y análisis empleados para esta practica se explican más adelante.
Para sacar adelante esta práctica se emplearon en gran medida los conceptos aprendidos en los cursos de circuitos digitales como máquinas de estado, registros, contadores, decodificadores y un concepto adicional que en este caso fue el de Memoria ROM.
- TABLA DE CONTENIDO.
I…………………………..……………………………………………………………..…....RESUMEN
II……………………….…………………………………………….………TABLA DE CONTENIDO
III………………………..………………………………………………………….....INTRODUCCIÓN
IV…………………….………………………………………………………………...…..OBJETIVOS
V………………….……………………………………………………………….....CÓDIGO MORSE
VI………..………………….…………………………………………….DIAGRAMA DE BLOQUES
VII……………...……………EXPLICACIÓN DEL SISTEMA Y DISCUSIÓN DE RESULTADOS
VIII…………………………………………………………………….…………..DIAGRAMA TOTAL
IX……………………………………………………………….…….REPORTE DE COMPILACIÓN
- INTRODUCCIÓN
En el curso de circuitos digitales II hemos venido trabajando e implementando ciertos diseños, basados en conocimientos anteriores, pero esta vez utilizando el lenguaje VHDL el cual nos ha facilitado muchos procesos en los diseños digitales, por ello sobre el implementamos diseños un poco más complejos, para la práctica final, hemos decidido diseñar un sistema que permita convertir ciertos datos, en este caso caracteres, a código Morse, con una funcionalidad adicional la cual consiste en que éste almacene amgunos datos predeterminados, como ya lo mencionamos antes serán caracteres para formar algunas palabras que luego serán mostradas en código Morse.
Este diseño recopila en su mayoría los fundamentos aprendidos en clase pues será necesario recurrir a los diseños de los circuitos que realizamos durante el curso. Y por supuesto para esta practica final utilizaremos para el diseño y montaje la Herramienta Quartus, para la simulación Modelsim y para ver el resultado final la tarjeta programable FPGA.
- OBJETIVOS.
- Realizar el diseño e implementación del sistema antes mencionado usando el lenguaje de descripción hardware (VHDL), a través de la herramienta software producida por altera para el análisis y síntesis de dicho diseño.
- Mostrar el resultado final para verificar el funcionamiento del circuito en la tarjeta programable FPGA.
- Realizar y analizar las simulaciones para detectar errores y posteriormente corregirlos, para así tener certeza del funcionamiento del circuito.
- CÓDIGO MORSE
“El Código Morse es un medio de comunicación basado en la transmisión y recepción de mensajes empleando sonidos o rayos de luz y un alfabeto alfanumérico compuesto por puntos y rayas. Aunque este código surgió en el siglo 19, su empleo es perfectamente utilizable hoy en día cuando la existencia de condiciones atmosféricas adversas no permiten el empleo de otros medios más desarrollados como, por ejemplo, la transmisión de la voz.
El alfabeto morse representa el alfabeto convencional mediante combinaciones de puntos y rayas. Esta Ingeniosa forma de comunicación y transmisión se le debe al físico Norteamericano (1791-1872) Samuel Morse, quien en 1832 desarrolló este lenguaje a base de intervalos "cortos y largo" de señales auditivas o visuales como código de comunicación de su invento: el telégrafo eléctrico.
El código morse ha constituido durante más de un siglo uno de los pilares de la comunicación a distancia. En la actualidad, el morse ya no se emplea en transmisiones oficiales, pero su uso continúa siendo muy valioso, pues ha permitido innumerables ayudas tanto en casos de emergencia .”
Tomado de http://www.asifunciona.com/tablas/codigo_morse/codigo_morse_1.htm
[pic 2]
Figura 1. Código Morse Internacional
- DIAGRAMA DE BLOQUES.
A continuación presentamos el diagrama de bloques de nuestro diseño el cual nos proporciona una idea del funcionamiento y la estructura física del sistema, aquí podemos observar los diferentes bloques de los que se compone el circuito, posteriormete explicaremos la funcion de cada uno y la logica empleada.
Figura 2. Diagrama de bloques.[pic 3]
- EXPLICACIÓN DE SISTEMA.
Como ya lo mencionamos antes, en esta práctica vamos a implementar un sistema el cual sea capaz de convertir datos binarios y codificarlos para ser desplegados en código Morse, además el sistema debe ser capaz de almacenar datos previamente asignados para mostrarlos en el despliegue y así formar algunas palabras con las letras almacenadas.
Para la implementación de las letras se decidió usar la siguiente codificación:
[pic 4]
Tabla 1.Asignación de letras
Para el sistema encargado de la codificación morse implementamos los siguientes bloques funcionales:
Bloque de codificación de letras:
Este bloque es el encargado de realizar la codificación de cada letra, asignandole a cada una su respectiva representación en puntos y rayas, como también el tamaño.
En la etapa de análisis se elaboró el pseudocodigo que serviría como base para el diseño en vhdl, el cual fue el siguiente:
Case letra is
When: 0000 tamaño: 010, código: 0010, --A
When: 0001 tamaño: 100, código: 0001, --B
.
.
.
Esto para las letras A y B, se realizó en base en la codificación morse internacional se hizo el mismo procedimiento para todas las demás letras del abecedario.
Figura 3. bloque codificador de letras [pic 5]
En este bloque, tam es la cantidad de puntos y rayas que tendrá en total la letra, y cod es la codificación morse, en donde un 1 simboliza una raya y un 0 representa un punto, para esta codificación se tomó como base el código morse internacional, el VHDL de este bloque se realizó con arquitectura comportamental usando la estructura Case-When para realizar la asignación del código y el tamaño letra por letra.
Simulación:
En la simulación del código se verificó el correcto funcionamiento de este bloque, se le asigno valores a letra desde 00000, qué es la letra A, hasta 10011, letra T, y se pudo comprobar que la asignación de tamaño y código eran correctas
Figura 4.simulación bloque codificador[pic 6]
Bloque de registro:
Este bloque consiste en un registro de desplazamiento que tiene como entrada los datos del bloque codificador de letras los cuales son enviados bit a bit a un bloque posterior que será una máquina de estados encargada de “procesar” la información recibida.
Figura 5. Bloque de registro[pic 7]
Este registro tiene función de carga paralela y salida serial, si load se encuentra en 1 se cargará el dato presente en la entrada, y si enable se encuentra en 1 este realizará un corrimiento bit a bit del dato cargado con la carga paralela, con base en este análisis se realizó un pseudocódigo para tener una base para el posterior diseño en VHDL, el pseudocódigo fue:
if load=1 salida=entrada
elsif enable=1 salida=entrada(0) entrada=’0’& entrada(3 a 1)
En este pseudo código se bosqueja el funcionamiento principal del registro, hay que tener presente que esto sucederá siempre y cuando exista un flanco de reloj, además se agregó una línea de reset asíncrona la cual es común a todo el sistema.
...