Académique Documents
Professionnel Documents
Culture Documents
INGENIERÍA MECATRÓNICA
CIRCUITOS LÓGICOS
Presentan:
1 DE MARZO DE 2018
Introducción
Para el desarrollo de la práctica es necesario conocer a fondo el manejo del código
binario, para ello en esta primera parte se menciona su definición a fondo, las
características que cumple dicho código, además de la implementación del mismo
en software vivado, con el fin de generar un programa capaz de hacer conversiones
binarias a gray y BCD, a su vez, cargarlo a la placa de desarrollo Nexys4 DDR.
El Código BCD (Binary-Coded Decimal (BCD) o Decimal codificado). Binario es un
estándar para representar números decimales en el sistema binario, en donde cada
dígito decimal es codificado con una secuencia de 4 bits. Con esta codificación
especial de los dígitos decimales en el sistema binario, se pueden realizar
operaciones aritméticas como suma, resta, multiplicación y división de números en
representación decimal, sin perder en los cálculos la precisión ni tener las
inexactitudes en que normalmente se incurren con las conversiones de decimal a
binario puro y de binario puro a decimal. La conversión de los números decimales a
BCD y viceversa es muy sencilla, pero los cálculos en BCD se llevan más tiempo y
son algo más complicados que con números binarios puros.
Fundamentos
En BCD cada cifra que representa un dígito decimal (0, 1,...8 y 9) se representa con
su equivalente binario en cuatro bits (nibble o cuarteto) (esto es así porque es el
número de bits necesario para representar el nueve, el número más alto que se
puede representar en BCD).
Características
Ponderación
La mayoría de los sistemas de numeración actuales son ponderados, es decir, cada
posición de una secuencia de dígitos tiene asociado un peso. El sistema binario es,
de hecho, un sistema de numeración posicional ponderado. Sin embargo, algunos
códigos binarios, como el código Gray, no son ponderados, es decir, no tienen un
peso asociado a cada posición. Otros, como el mismo código binario natural o el
BCD natural sí lo son.
Distancia
Es una característica sólo aplicable a las combinaciones binarias. La distancia entre
dos combinaciones es el número de bits que cambian de una a otra. Por ejemplo,
si se tienen las combinaciones de cuatro bits 0010 y 0111, correspondientes al 2 y
al 7 en binario natural, se dirá que la distancia entre ellas es igual a dos ya que de
una a otra cambian dos bits.
Además, con el concepto de distancia se puede definir la distancia mínima de un
código. Ésta no es más que la distancia menor que haya entre dos de las
combinaciones de ese código.
Continuidad
Es una característica de los códigos binarios que cumplen que todas las posibles
combinaciones del código son adyacentes, es decir, que de cualquier combinación
del código a la siguiente cambia un sólo bit. En este caso se dice que el código es
continuo. Cuando la última combinación del código es, a su vez, adyacente a la
primera, se trata de un código cíclico.
Autocomplementariedad
El código binario es autocomplementario cuando el complemento a nueve del
equivalente decimal de cualquier combinación del código puede hallarse invirtiendo
los valores de cada uno de los bits (operación lógica unaria de negación) y el
resultado sigue siendo una combinación válida en ese código. Esta característica
se observa en algunos códigos BCD, como el código Aiken o el código BCD exceso
3. Los códigos autocomplementarios facilitan las operaciones aritméticas.
Aplicación
Electrónica
El BCD es muy común en sistemas electrónicos donde se debe mostrar un valor
numérico, especialmente en los sistemas digitales no programados (sin
microprocesador o microcontrolador). Utilizando el código BCD, se simplifica la
manipulación de los datos numéricos que deben ser mostrados por ejemplo en un
visualizador de siete segmentos. Esto lleva a su vez una simplificación en el diseño
físico del circuito (hardware).
Si la cantidad numérica fuera almacenada y manipulada en binario natural, el
circuito sería mucho más complejo que si se utiliza el BCD. Hay un programa que
se llama b1411 que sirve para dividir al sistema binario en dos combinaciones. Una
por ejemplo es la de sistemas digitales.
Representación
Cada dígito decimal tiene una representación binaria codificada con 4 bits:
Decimal: 0 1 2 3 4 5 6 7 8 9
BCD: 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001
Los números decimales, se codifican en BCD con los de bits que representan sus
dígitos.
1) Abrir el SOFTWARE
vivado, y crear
proyecto
2) Seleccionar
ubicación para
guardar el proyecto
3) Seleccionar tipo de
proyecto, en este
caso, RTL project.
5) No agregar contrains
6) Seleccionar tarjeta, en
nuestro caso la
NEXYS4-DDR
7) Terminar de crear el
proyecto
9) En esta parte se
agregan las fuentes a
utilizar
11) Una vez creado el archivo fuente, se puede localizar en la pesaña de “Design Sources”,
con el nombre que se determinó al principio.
a) IEEE.STD_LOGIC_ARITH.ALL;
b) IEEE.STD_LOGIC_UNSIGNED.ALL;
Se encargará que el programa no asigne signo alguno a los bits que se estén manejando.
Nota. Ambas librerías fueron utilizadas en ambas prácticas, ya que el programa debía de recibir
bits y realizar operaciones entre ellos para lograr las conversiones.
Para (b) se asigna como salida, bus y de 0 a 3 bits, entre bit menos significativo y el bit más
significativo, cuyo objetivo era convertir a un código gray de 4 bits.
b) Para la segunda:
Para (a) se asigna como entrada, bus y de 0 a 2 bits, entre bit menos significativo y el bit más
significativo, cuyo objetivo era introducir un código bcd de 3 bits.
Para (b) se asigna como salida, bus y de 0 a 11 bits, entre bit menos significativo y el bit más
significativo, cuyo objetivo era convertir a un código a 12 bits.
14) Se asignan los números en binario a
convertir.
Conclusion:
El objetivo de esta practica era reconocer el sotfware para programar la tarjeta(NEXYS 4 DDRII) el
cual se describio paso a paso como llevar a cabo un programa desde cero y orientar para hacer
mas facil y menos compleja la programacion de un FPGA .