Escolar Documentos
Profissional Documentos
Cultura Documentos
1
DISEO DE CIRCUITOS ARITMTICOS Y SECUENCIALES
2. PROCEDIMIENTOS DE DISEO.
RESUMEN: En esta primera prctica de circuitos 2.1 contador 3 Dgitos BCD.
digitales se desea aplicar todos los conocimientos
aprendidos en clase en el diseo de circuitos El requerimiento para este tem es el siguiente:
aritmticos y secuenciales. Este laboratorio se divide
en dos puntos, el primero consiste en el diseo de un Implementar un contador de 3 dgitos BCD.
contador de 3 dgitos BCD, cuyo contenido se mostrar Mostrar el contenido del contador en los
en los despliegues de 7 segmentos en la tarjeta Altera despliegues de 7 segmentos HEX2-0. Utilizar una
DE0; En la segunda parte, se realiza un modelo en seal de control, del reloj de 50 MHz sobre la
VHDL para una unidad aritmtico-lgica de 16 bits. tarjeta DE0 de Altera, para incrementar el
contenido del contador a intervalos de 1 segundo.
PALABRAS CLAVES: Use un pulsador para resetear el contador a 0.
Contador, BCD, ALU, hexadecimal, operaciones, DE0.
Nuestro circuito para cumplir con el requerimiento
ABSTRACT: In this first Digital Circuits Practice, its planteado quedo de la siguiente manera:
desired to implement all the acquired knowledge in
classes, about the designing of arithmetic, and
sequential circuits. This laboratory is divided in two
parts, the first is about the design of a 3 BCD digits
counter, whose content will be shown in the Altera DE0
7-segment displays ; In the second part a VHDL model
is design for an arithmetic logic unit
1. INTRODUCCIN.
Por medio de este informe se explicar el
procedimiento necesario para disear e implementar un Figura 1. Circuito Total contador 3 dgitos BCD.
contador de 3 dgitos BCD y una unidad aritmtico
lgica (ALU) de 16 bits. Para cumplir a cabalidad con El cual cuenta con dos entradas: CLK RESET.
los requerimientos se elaboraron cdigos en VHDL, se
realizaron sus respectivas simulaciones en la Clk es la seal de reloj que nos proporciona la
herramienta ModelSim y finalmente se crearon bloques tarjeta Altera DE0 la cual es de 500Mhz y reset va
funcionales que se explicaran durante el desarrollo del a ser una seal de control la cual intervendr en el
presente informe. funcionamiento del contador de 3 dgitos BCD.
Cuando esta se encuentre en estado activo,
reiniciara el contador llevndolo a su estado inicial
el cual es cero 0000 e iniciando nuevamente el Figura 2. RTL circuito divisor de frecuencia.
conteo.
Como puede observarse en el circuito esquemtico,
Este tiene 3 salidas S2, S1, S0 donde S2 corresponde este divisor cuenta con 1 sola entrada (clock_50Mhz)
al digito ms significativo del contador de 3 bits BCD y la cual obedece a la seal de reloj transmitida por la
S0 el menos significativo del mismo. tarjeta Altera DE0 y 7 salidas que corresponden a cada
una de las frecuencia a las que se puede convertir
Este circuito est compuesto por un divisor de dicha seal .
frecuencia ( clk_div), contador de 3 dgitos BCD y 3
decodificadores, los cuales se explicaran a continuacin
.
-2 DGITOMS SIGNIFICATIVO:
Este incrementara su valor cada que el digito menos
significativo complete un ciclo, este cambiara desde a
cero 0000 hasta 1001 como corresponde en
numeracin BCD.
- DGITO MS SIGNIFICATIVO:
El funcionamiento de este contador, depende del
segundo contador; Su valor va a cambiar de 1 en 1
desde 0000 hasta 1001, cuando el segundo
contador BCD compete su ciclo. En el momento que
este tom el valor de (9) 1001 regresara
automticamente a 0000 para volver a iniciar la
cuenta. Es de resaltar que el momento en que dicho Figura 4. VHDL contador 3 dgitos BCD.
contador tome su ultimo valor posible, en los display se Como logra observarse en el cdigo, este contador de 3
7 segmentos se mostrara el valor 999 que dgitos BCD, cuenta con dos (2) entradas, los cuales
corresponde el nmero mximo al que puede llegar son RESET y CLK ; Y 3 salidas Q,R y S que
nuestro contador total. representan cada uno de los dgitos de nuestro
contador .Siendo S el digito ms significativo y Q el
Ya habiendo explicado, el procedimiento pensado para menos significativo.
el diseo de nuestro contador de 3 dgitos BCD , se
mostrar posteriormente su diseo en VDL : Despus de compilar dicho cdigo en Quartus II y no
obtener ningn error, se procede a visualizar el RTL de
nuestro circuito el cual quedo de la siguiente manera:
En lasfiguras:
- La primera lnea o fila corresponde a la entrada Clk,
la cual es la seal de reloj de frecuencia 1 hz que nos
proporcional el circuito divisor de frecuencias.
Operaciones aritmticas:
-A+B :
Realiza una suma aritmtica entre las cantidades
seleccionadas como A y B.
- A + 1:
A la entrada A se suma aritmticamente un 1.
- A - 1:
Al valor seleccionado como A se le sustrae
aritmticamente un 1.
-A-B
Se realiza una sustraccin aritmtica, a A se le
resta B.
Operaciones de desplazamiento:
- Rotacin a la izquierda: El segundo bit ms
significativo toma la posicin del ms significativo, y
este a su vez toma lo posicin del bit menos
significativo. Cada bit toma la posicin del su bit
antecesor en forma ascendente.
00001 Y= FFE3
En ALU _OUT se obtiene como resultado el
Numero A al ser los tres primeros bits ms
significativos 000 , pero al ser los 2 bits menos
significativos 01 la operacin a realizarse es una
Figura 15. RTL ALU 16 bits. rotacin ala izquierda de dicho nmero , por ende
el bit ms significativo ocupa el lugar del ultimo , y
En este se logran observar en la parte superior todos los dems bits ocupan la posicin del bit
izquierda las entradas A y B cada uno de 16 bits, mayor a ellos en significancia, como se muestra a
en la parte inferior la entrada opcode de 5 bits continuacin:
que acta como lnea de seleccin de cada uno Y = A
de los 32 multiplexores presente en el circuito, Y = 1111 1111 1111 0001
Y = 1111 1111 1111 0011
controlando la operacin realizada en un instante
Y= FFF3
dado.
00010 Y= 7FF8
Ahora, para estar seguros del correcto En ALU _OUT se obtiene como resultado el
funcionamiento de la unidad lgico-aritmtica de Numero A al ser los tres primeros bits ms
16 bits se procedi a realizar su simulacin en significativos 000, pero al ser los 2 bits menos
ModelSim. significativos 10 la operacin a realizarse es un
desplazamiento a la derecha el cual consiste en
que cada uno de los bits tome la posicin del bit
inmediatamente anterior a l en orden de
significancia, el ultimo bit se pierde y en la posicin
del bit ms significativo se asigna un cero, tal cual
como se logra ver en el resultado Y
Y =A.
Y=1111 1111 1111 0001
Y= 0111 1111 1111 1000
Y= 7FF8
00011 Y=0000
Al ser los dos bits menos significativos 11 la 00111 Este opcode indica que se debe
operacin a realizar es una transferencia de ceros, por realizar una transferencia de ceros, por lo
lo cual a nuestra salida obtenemos el nmero 0 de 16 cual es nuestra simulacin observamos
bits. como salida 1 cero el numeracin
hexadecimal.
00101 Y=3FFE
Los dos ltimos bits de opcode sealan que la
operacin a realizar que debo rotar a B hacia la
izquierda por lo cual:
Y = B
Y = 0001 1111 1111 1111
Y = 0011 1111 1111 1110 Figura 17. Simulacin 2 ALU 16 bits
Y= 3FFE Opcode100XX
Y = A+B
Y= 1 0001 1111 1111 0000
Y= 1 0011 1111 1110 0000
Y= 1 3FE0
Figura 18. Bloque funcional ALU. Figura 19. RTL circuito Generador.
Donde se logra ver que esta cuenta con 3 entradas : Como se aprecia el circuito Generador es
A,B y opcode y 2 salidas : Y que me almacena el respectivamente un contador de 5 bits con una
resultado de la operacin hecha y Cout que a indicar s salida O de 4 hasta 0, este contador
existe acarreo o no, al hacer la operacin. corresponde a un arreglo de flip-flops tipo D,
adems tiene una entrada controlada por el reloj
2.2.4 GENERADOR (clk) que permite que los flip-flops se activen y
realicen el conteo.
El generador es un circuito que corresponde a un
La simulacin de este circuito se ilustra en la
contador de 5 bits, su funcin principal es controlar
siguiente imagen y adems se hace su respectiva
el opcodede la ALU, es decir, seleccionar la
explicacin:
operacin o funcin que va a realizar la unidad
aritmtica - lgica entre los nmeros A y B de 16
bits. El cdigo en VHDL es el siguiente:
- Si En = 01, selecciona D1 por lo tanto en el
display se visualiza el nmero B.
Figura 21 . Bloque funcional circuito Generador Posteriormente se compila, para evitar cualquier
clase de error y en seguida se observa que es lo
2.2.5 MULTIPLEXOR DE 4 A 1 que realmente se genera mediante el RTL del
circuito:
El multiplexor de 4 a 1 tiene la funcin de seleccionar
que se va a visualizar en el display de siete
segmentos de la tarjeta Altera DEO, tiene 5
entradas, estas son: DO, D1, D2, D3 y una lnea de
seleccin En. Esta lnea cumple con las siguientes
caractersticas: