Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
UNIVERSIDAD
NACIONAL
DE LOJA
Facultad de Energía las Industrias y los Recursos Naturales No Renovables
Carrera de Ingeniería en Sistemas
Autor:
• Jéssica Mercedes Cueva Riofrío
Tutor:
• Ing. Gastón Chamba
23 de diciembre de 2019
Loja-Ecuador
Índice
Índice 2
Introducción 3
Descripción 4
Calculadora simple completamente funcional 4
DESARROLLO 5
F1 = A + B 5
F2 = A or B 8
F3 = A xor B 9
F4 = not A 10
MULTIPLEXOR 4 ENTRADAS 8BITS 11
REGISTROS DE 4BITS Y 8 BITS 13
DECODIFICADOR BCD DE 7 SEGMENTOS 16
CALCULADORA COMPLETA 16
Conclusiones 18
2
Introducción
El presente documente da una pauta para conocer como se puede elaborar la ALU utilizando
utilizando el lenguaje VHDL. Además, ayuda a comprender como los dispositivos en este caso
normal funcionamiento, entre estos módulos se ha elaborado un sumador de 8 bits, full adder
con las compuertas or, xor y not cada una de ellas de 8 bits, un multiplexor de 4 entradas de
8 bits, tres registros: dos de 4 bits y uno de 8bits, y dos decodificadores bcd.
3
Descripción
En la figura 1 se muestra una calculadora de 8 bits (los operandos tienen una longitud de 8
bits) que realiza 4 operaciones, una aritmética (F1, sumatoria) y tres funciones lógicas (F2, F3
y F4), de la siguiente manera:
• F1 = A + B
• F2 = A or B
• F3 = A xor B
• F4 = not A
4
Además, todo el diseño está compuesto por 7 archivos (8 componentes).
DESARROLLO
F1 = A + B
Para la operación aritmética A + B se ha elaborado tres módulos, los dos primeros son de 1bit
y el tercero es de 8bit; el primero de 1 bit es el hall adder (HA) el cual está constituido por
compuerta AND y un compuerta XOR ambas previamente codificadas en VHDL, luego se
procedió a construir el full adder (FA), este se constituye por dos HA y una compuerta OR
previamente codificados, por ultimo para construir el F1 se procedió a instanciar 8 veces el FA.
En las figuras 2, 3 y 4 se muestra el código VHDL de los módulos antes mencionados.
5
FULL ADDER DE 1BIT
6
SUMADOR DE 8BITS
7
F2 = A or B
8
F3 = A xor B
9
F4 = not A
10
MULTIPLEXOR 4 ENTRADAS 8BITS
En la realización del multiplexor de 4 entradas de 8bits se elaboran tres módulos dos de ellos
de 1 bit y el tercero de 8 bits que es el que se va a utilizar. El primer módulo que se realiza es
un multiplexor de 2 entradas y una salida, luego se hizo un multiplexor de 4 entradas y una
salida instanciando 3 veces el multiplexor antes mencionado y por último para construir el
multiplexor de 4 entradas de 8 bits que se utiliza en la mini ALU se procedió a declarar variables
de tipo vector de 8bits tanto de entrada como de salida y luego se instancia 8 veces el
multiplexor de 4 entradas. En las figuras 8, 9 y 10 se muestra el código en VHDL de los
módulos antes mencionados.
11
MULTIPLEXOR 4 ENTRADAS 1BIT
12
MULTIPLEXOR 4 ENTRADAS 8BIT
13
REGISTRO DE 1BIT
REGISTRO DE 4BIT
14
REGISTRO DE 8BIT
15
DECODIFICADOR BCD DE 7 SEGMENTOS
En la elaboración del decodificador se realizo para cada variable los mapas de Karnaugh
obteniendo el siguiente algoritmo codificado en VHDL, como se muestra en la figura 14.
CALCULADORA COMPLETA
Por último, todos los módulos se los unió en un solo archivo como se muestra en la figura 15,
cabe señalar que cuando se envían los datos del multiplexor a los registros es necesario
realizar dos codificadores adicionales uno para transformas de binario a decimal y otro para
transformar de decimal a binario respectivamente.
16
Figura 15: Código en VHDL de la Calculadora Simple de 8bits
17
Conclusiones
- Para poder realizar este tipo de casos hay que tener conocimiento básico del lenguaje
de programación VHDL.
- El análisis del caso de estudio debe ser indispensables con la finalidad de realizar un
buen trabajo.
- Hay que tomar en cuenta que en este caso de estudio de la calculadora hay que realizar
más que permitan obtener un numero decimal, y dividirlo en unidades, decenas y
centenas, además que permita a éstas se las pueda transformas en binario para que
puedan pasar por el registro y el decodificador.
18