Sunteți pe pagina 1din 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.

S-ar putea să vă placă și