Vous êtes sur la page 1sur 12

CONSTRUCCION DE UNA ALU DE 8 BITS CON 16 FUNCIONES

TOMAS ENRIQUE JIMENEZ GUTTIEREZ


NICOLAS ANDRES JIMENEZ ROMO

SOTO VARGAS JAVIER EVANDRO


SISTEMAS ELECTRONICOS DIGITALES 2

ESCUELA COLOMBIANA DE INGENERIA JULIO GARAVITO

BOGOTA, COLOMBIA

OBJETIVOS
*Apropiarse de las tcnicas de programacin en lenguajes de descripcin en
hardware para la definicin de circuitos lgicos combinatorios.
*Desarrollar un programa en VHDL que permita realizar diferentes operaciones
matemticas y lgicas que son caractersticas de una ALU (Unidad Aritmtica
Lgica).
*Familiarizarse con el manejo de las herramientas de desarrollo de FPGAs de
Xilinx.

Informe
VHDL
CLK event and clk = 1

Flanco subida

En este laboratorio se pretende implementar una Unidad Aritmtico Lgica de


8 bits. La unidad debe contar con las siguientes operaciones:

F= A+B
F= A B
F= A+1
F= A-1
F= A
F= B+1
F= A^1
F= AvB
F= A
F= (A xor B)
F= (A xor B)
F= RCIA
F= RCDA
F= SHDA
F= SHIA
F= Borrar salidas

Para realizar la implementacin de la ALU propondremos una entidad como


la que se muestra a continuacin.

Los

vectores A y B sern las entradas, S ser el seleccionador para la operacin


que se desee realizar, el vector F ser la salida, Cout ser el carry de salida y Z
ser 1 cuando todo el vector F sea 0.

Las funciones del sumador por bit son:


F=A xor B
Cout= Cin . ( A xor B ) + A . B

F=A+B
Cin=0
F=A-B

k=B
k=B

Cin= Se propaga
Cin= se propaga

Cin=1
F=A+1
Cin=1

F=A-1
Cin=0

k=0

k=1

Cin= se propaga

Cin= se propaga

F=A
Cin=0

k= 0

F=B+1
Cin=1

k=(A xor B)

Cin= se propaga

Cin= se propaga

F=A^B
propaga

k= A.B
Cin=0

Cin= no se

F=AvB
propaga

F=A
Cin=0

F=A xor B
Cin=0

k= A.B
Cin=0

k=1

k=B

Cin= no se

Cin= no se propaga

Cin= no se propaga

F= ( A xor B )
Cin= no se
Cin=0

F=Borrar salidas
propaga

F=RCIA
Cin=0

k=B
propaga

k=A xor X

Cin= no se

Cin=0

k=

Cin= no se propaga

F=RCDA
Cin=0

k=

F=SHDA
propaga

k=
Cin=0

F=SHIA
propaga

Cin=0

Cin= no se propaga

Cin=no se

k=

Cin=no se

Para llevar a cabo las funciones, proponemos el siguiente orden en la


entrada de cuatro bits S:
Tabla de funcionamiento ALU

A^B
AvB
A
A xor B
(A xor B)
RCIA
RCDA
SHDA
SHIA
Borrar salidas
A+B
A-B
A+1
A-1
A
B+1

Orden MUX 16x1

FH =S3.S2+S3.S1
FH=S3.(S2+S1)

Habilitador
Cin
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1

Cin
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
1

select
ores
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111

Fcin=S3.S2.S1.S0+S3.S1.S0
Fcin=S3.(S2.S1.S0+S1.S0)

CONCLUSIONES

La elaboracin de la ALU nos permite realizar operaciones


aritmticas y lgicas simples de una forma rpida y confiable, de
ah la importancia de saber programar para un ingeniero.
Lenguajes de programacin como VHDL o cualquier otro nos
ofrecen posibilidades infinitas de aplicacin, basta con un poco de
imaginacin para implementar programas que nos permitan
realizar operaciones complicadas o cualquier otra tarea.
El consumo de recursos es muy importante, debido a que si este
es muy grande y la capacidad de la memoria es reducida,
tendremos problemas al querer quemar el programa. Por
consiguiente nuestro objetivo como ingenieros es lograr la mayor
eficiencia, consumiendo la menor cantidad de recursos.

Vous aimerez peut-être aussi