Informe Del Alu

download Informe Del Alu

of 23

description

En este documento se presenta el resumen de un aunidad aritmetica logica ALU

Transcript of Informe Del Alu

I. PORTADA

UNIVERSIDAD TCNICA DE AMBATOFacultad de Ingeniera en Sistemas, Electrnica e Industrial

Ttulo: ALUCarrera: Electrnica y Comunicaciones rea Acadmica: Sistemas Electrnicos Lnea de Investigacin: Fsica - ElectrnicaCiclo Acadmico y Paralelo: Abril/2015 Septiembre/2015 Sexto E A Alumnos participantes: Juan Carlos Jordn Wilson Manobanda Daro Sols Lizbeth Villarroel Mdulo y Docente: Microprocesadores Ing. Patricio Crdova Fecha de envi: 28 de mayo del 2015Fecha de entrega: 12 de junio del 2015

II. INFORME 1. YY1.1 Ttulo

Implementacin de una Unidad Aritmtica Lgica (ALU)

1.2 Objetivos

1.2.1 General

Disear e implementar un ALU de operaciones aritmticas y operaciones lgicas de dos nmeros que contenga una parte entera y una parte decimal.

2.2.2 Especifico

Comprobar el correcto funcionamiento de los circuitos diseados. Implementar un ALU (Unidad Aritmtica Lgica), distribuida en etapas. Implementar el ingreso de las entradas como el de las salidas mediante displays para una mejor comprensin y una mejor esttica del trabajo Aplicar los conocimientos sobre Algebra Booleana y Aritmtica Binaria.

1.3 Resumen

El presente trabajo es el diseo y la implementacin de una unidad aritmtica lgica (ALU), que ser desarrollado, para la realizacin del proyecto se hace una recopilacin de los conocimientos adquirido en el rea de la electrnica digital como algebra boolean y aritmtica binaria de esta manera se involucro el diseo de cada una de sus partes de los procesos lgicos, los circuitos combinacionales, circuitos de memoria, el cual fueron simulados en proteus para la comprobacin de su correcto funcionamiento y proceder su elaboracin.

1.4 Palabras Claves (Combinacional, Proceso, Diseo, Funcin, Registros, implementacin)

1.5 Introduccin

Una funcin esencial de muchas computadoras y calculadoras es la realizacin de operaciones aritmticas. Estas operaciones se efectan en la unidad aritmtica-lgica de una computadora, donde se combinan compuertas lgicas y flip-flops de manera que puedan sumar, restar, multiplicar y dividir nmeros binarios.

La unidad aritmtica lgica es una de las unidades que forman parte de la Unidad Central de Procesos es decir, del Procesador, Microprocesador o CPU mediante la cual es posible realizar una gran cantidad de operaciones aritmticas bsicas (Suma, Resta, Divisin y Multiplicacin) operaciones Lgicas (NOT, OR, NAND, AND). La ALUest formado por: Circuito operacional Registros de entrada (REN) Registro acumulador Registro de estado (flags)

1.6 Materiales y Metodologa

1.6.1 Marco Terico Unidad aritmtica y lgica (ALU)

ALU (Arithmetic Logic Unit). Es el elemento de procesamiento clave del microprocesador, puede realizar un conjunto de operaciones aritmticas bsicas y un conjunto de operaciones lgicas, a travs de lneas de seleccin Esta unidad realiza clculos (suma, resta, multiplicacin y divisin) y operaciones lgicas (comparaciones), dirigida por una unidad de control.Transfiere los datos entre las posiciones de almacenamiento. Tiene un registro muy importante conocido como: Acumulador ACC Al realizar operaciones aritmticas y lgicas, la ALU mueve datos entre ella y el almacenamiento. Los datos usados en el procesamiento se transfieren de su posicin en el almacenamiento a la ALU. Los datos se manipulan de acuerdo con las instrucciones del programa y regresan al almacenamiento. Debido a que el procesamiento no puede efectuarse en el rea de almacenamiento, los datos deben transferirse a la UAL. Para terminar una operacin puede suceder que los datos pasen de la UAL al rea de almacenamiento o varias veces. [1]

Fig. [1] Diagrama de bloques en una ALU

Estructura de la unidad lgica aritmtica La estructura bsica de una unidad lgica aritmtica a suele consistir en utilizar multiplexores con tantas entradas como operaciones queremos que realice dicha ALU y en cada entrada colocar el circuito que ha de realizar la operacin correspondiente

Fig. [2] Diagrama de bloques de un ejemplo de ALU

Las Terminales de la ALU son: Entrada, los dos operando con los datos o con nmeros a ser procesados y la entrada de un cdigo desde la unidad de Control con la informacin de que operacin debe realizar. Salida, la respuesta a computo de la operacin y el notificador de la operacin realizada. Registros de estado, entradas y salidas con informacin de acarreo, overflow, divisin por cero y otras ms.

Buses utilizados: El data bus (de entrada): lleva la informacin a la unidad aritmtica para su procesamiento. El status bus (de salida): los resultados e informacin procesada en la ALU son transportados a la unidad de Control. Registro de estado. [2]

Operaciones de desplazamientoDesplazamientos lgicos

Independientemente del sistema de representacin de los operandos se introducen ceros por la derecha o por la izquierda segn se trate de un desplazamiento a la izquierda o a la derecha, respectivamente El bit o los bits que salen suelen copiarse en el indicador de acarreo (el ltimo que ha salido es el que queda)

Fig. [3] Desplazamientos lgicos

Desplazamientos aritmticos: Equivalen a multiplicaciones y divisiones por dos, segn sean hacia la izquierda o a la derecha, respectivamente. El sistema de representacin de los operandos debe tenerse en cuenta si los operandos tienen signo El bit o los bits que salen suelen copiarse en el indicador de acarreo (el ltimo que ha salido es el que queda)

Fig. [4] Desplazamientos aritmtico

Desplazamientos circulares: Los bits que salen por un extremo entran por el otro El bit o los bits que salen suelen copiarse en el indicador de acarreo (el ltimo que ha salido es el que queda)

Fig. [5] Desplazamientos circulares

Desplazamientos circulares a travs del flag de acarreo: Los bits que salen por un extremo entran por el otro El bit o los bits que salen suelen copiarse en el indicador de acarreo

Fig. [6] Desplazamientos circulares a travs del flag de acarreo [5]

Lgica combinacionalSe denomina sistema combinacional o lgica combinacional a todo sistema digital en el que sus salidas son funcin exclusiva del valor de sus entradas en un momento dado, sin que intervengan en ningn caso estados anteriores de las entradas o de las salidas. Las funciones (OR, AND, NAND, XOR) son booleanas donde cada funcin se puede representar en una tabla de la verdad. Por tanto, carecen de memoria y de realimentacin.En electrnica digital la lgica combinacional est formada por ecuaciones simples a partir de las operaciones bsicas del lgebra de Boole.

Los circuitos combinacionales: Lgicos: Generador/Detector de paridad Multiplexor y De multiplexor Codificador y Decodificador Conversor de cdigo Comparador Aritmticos: Sumador Aritmticos y lgicos Unidad aritmtico lgica Estos circuitos estn compuestos nicamente por puertas lgicas interconectadas entre s

Operaciones aritmticas

Suma

Las computadoras digitales realizan una variedad de tareas de procesamiento de informacin. Entre las funciones bsicas encontradas estn las diversas funciones aritmticas. Sin duda, la operacin aritmtica ms bsica es la adicin de dos dgitos binarios. Esta adicin simple consta de cuatro operaciones elementales posibles, a saber, 0 + 0 = 0, 0 + 1 = 1, 1 + 0 = 1 y 1 + 1 = 10. Las primeras tres operaciones producen una suma cuya longitud es un dgito, pero cuando tanto los bits sumando como son iguales a 1, la suma binaria consta de dos dgitos. El bit significativo ms alto de este resultado se denomina acarreo. Un circuito combinacional que lleva a cabo la adicin de dos bits se denomina medio sumador. Uno que lleva a cabo la adicin de tres bits (dos bits significativos y una cuenta que se lleva a previo) es un sumador completo. [2]

Fig. [7] Sumador completo de un bit

El sumador completo de 4 bits es una concatenacin de 4 sumadores binarios completos de 1 bit, como se muestra en el grfico inferior. La concatenacin se realiza a travs de los terminales de acarreo saliente (Cin) y acarreo entrante (Cout).El sumador que se muestra suma dos nmeros binarios de 4 bits cada uno.

A = A3A2A1A0 y B = B3B2B1B0 entonces la suma ser S = C (out) 3S3S2S1S0

El bit menos significativo en los dos sumandos A y B es Ao y Bo y el bit ms significativo es A3 y B3.

Fig. [8] Sumador completo de dos nmeros de 4 bits

La suma se inicia en el sumador completo 0 (el inferior) con las suma de Ao y Bo, si esta suma tuviese acarreo (Cout=1) este pasara al sumador 1, y as sucesivamente hasta llegar al sumador 3 en la parte superior del grfico.

Si el sumador superior tiene acarreo ("1"), ste se refleja en la suma al lado izquierdo de la sumatoria final.

Fig. [9] Diagrama de bloques de sumador completo de dos nmeros de 4 bitTipos de sumadores:

Half-Adder.-Se denomina semisumador aun circuito que admite 2 bits como entrada y genera como salida: Un bit que representa la suma de los 2 bits de entrada y otro bit que representa el acarreo generado por la suma.

Full-Adder.- La principal diferencia entre el sumador completo y el semisumador es que este admite un valor que represente un acarreo de entrada

Mtodo Ripple.-Un circuito sumador completo permite sumar dos nmeros de un bit con un acarreo de entrada y generar un acarreo de salida.

Carry-Look-Ahead.- Llamado tambin sumador paralelo con acarreo anticipado, realiza la suma aumentando la velocidad de proceso sobre la conexin en serie. Lo logra mediante la generacin de todos los bits de acarreo en el mismo proceso de clculo de las sumas parciales

RestaUn restador es un circuito combinacional que lleva a cobo la resta binaria de dos nmero de n bits. La resta o sustraccin de nmeros binarios es similar a los nmeros decimales. La diferencia radica en que, en binario, cuando el minuendo es menor que el sustraendo, se produce un prstamo o borrow de 2, mientras que en decimal se produce un prstamo de 10.

Fig. [10] restador completo de dos nmeros de 4 bits.

Al igual que la suma la resta puede ser implementada de varias formas para este caso lo vamos hacer con complemento A2 para poder encontrar el signo de la operacin en caso de que el minuendo sea menor que el sustraendo.

Complemento A2

El complemento A2 es un algoritmo binario que se utiliza para la resta partiendo desde la suma para realizar la resta en binario se requiere seguir un proceso descrito por los siguientes pasos:

Se iguala el nmero de cifras en el minuendo y el sustraendo aadiendo ceros a la izquierda del nmero con menos cifras. Se conserva el minuendo. Se complementa a 1 el sustraendo. El complemento consiste en la cantidad que le hace falta a un nmero para alcanzar el nmero mximo de su base. En el sistema binario el complemento a 1 equivale a intercambiar 1 por 0 y 0 por 1. Se suma el minuendo con el sustraendo complementado. Si existe acarreo, se suma el acarreo al resultado de la suma anterior. La existencia del acarreo indica que el resultado es positivo. Si no existe acarreo, se complementa a 1 el resultado de la suma anterior. La no existencia de acarreo indica que el resultado es negativo.[2]

Fig. [11] Resta en complemento A2 de dos nmeros de n bits

Entonces el algoritmo indica los siguientes pasos:

Complementar a 1 el sustraendo. Dada dos entradas A y B, el sustraendo se puede complementar haciendo uso de la compuerta NOT. Sumar el minuendo con el sustraendo complementado. Se puede hacer uso entonces del CI 74283. La siguiente figura muestra estos dos pasos.

Fig. [12] Resta en complemento A2 de dos nmeros de n bits

Complemento A1

Requiere que se identifique el bit de signo y tomar muy en cuenta el acarreo, el cual se debe sumar al resultado para determinar el valor correcto de la operacin.

Fig. [13] Resta en complemento A1 de dos nmeros de n bits

Sumador/Restador

El circuito Sumador/Restador mostrado a continuacin, tiene una entrada adicional denominada MODO DE CONTROL. Si esta entrada est en un nivel bajo (0 lgico), las cuatro puertas XOR no tienen efecto en el dato de las entradas B (el dato pasa a travs de las puertas XOR y no es invertido). La entrada Cin del primer FA es mantenido en un nivel BAJO, lo cual hace que este primer FA trabaje como semisumador. Cuando la entrada de Modo de Control est en un nivel alto (1 lgico), las cuatro XOR actan como inversores. Se invierte el sustraendo (entradas B). La entrada Cin del primer FA est en un nivel ALTO, lo que es lo mismo que sumar +1 al sustraendo en complemento a 1. La diferencia (resultado) se puede apreciar en los visualizadores

Fig. [14] Sumador/Restador de 4 bits

Multiplicacin La multiplicacin en binario es ms fcil que en cualquier otro sistema de numeracin. Como los factores de la multiplicacin slo pueden ser CEROS o UNOS, el producto slo puede ser CERO o UNO. En otras palabras, las tablas de multiplicar del cero y del uno son muy fciles de aprender. En un ordenador, sin embargo, la operacin de multiplicar se realiza mediante sumas repetidas. Eso crea algunos problemas en la programacin porque cada suma de dos UNOS origina un arrastre, que se resuelven contando el nmero de UNOS y de arrastres en cada columna. Si el nmero de UNOS es par, la suma es un CERO y si es impar, un UNO. Luego, para determinar los arrastres a la posicin superior, se cuentan las parejas de UNOS.

Fig. [15] Multiplicacin de dos nmeros de n bits

La multiplicacin de dos nmeros binarios de 4 bits con un entero y un decimal respectivamente se lo puede describir como una multiplicacin sencilla teniendo como resultado una suma al finalizar la operacin esta operacin se lo puede realizar mediante comparadores que indican si los nmero son iguales o diferentes en cada una de las posiciones.[3]

DivisinIgual que en el producto, la divisin es muy fcil de realizar, porque no son posibles en el cociente otras cifras que UNOS y CEROS.

Fig. [16] Divisin de dos nmeros de n bits Se intenta dividir el dividendo por el divisor, empezando por tomar en ambos el mismo nmero de cifras (100 entre 110, en el ejemplo). Si no puede dividirse, se intenta la divisin tomando un dgito ms (1001 entre 100).

Si la divisin es posible, entonces, el divisor slo podr estar contenido una vez en el dividendo, es decir, la primera cifra del cociente es un UNO. En ese caso, el resultado de multiplicar el divisor por 1 es el propio divisor. Restamos las cifras del dividendo del divisor y bajamos la cifra siguiente.

El procedimiento de divisin contina del mismo modo que en el sistema decimal.[4]

Operaciones lgicas

Multiplexor

Un multiplexor (MUX) es un dispositivo que permite dirigir la informacin digital procedente de diversas fuentes a una nica lnea para ser transmitida a travs de dicha lnea a un destino comn. El multiplexor bsico posee varias lneas de entrada de datos y una nica lnea de salida. Tambin posee entradas de seleccin de datos, que permiten conmutar los datos digitales provenientes de cualquier entrada hacia la lnea de salida. A los multiplexores tambin se les conoce como selectores de datos

Fig. [17] Diagrama de bloques y diseo lgico del multiplexor

Comparador

La funcin bsica de un comparador consiste en comparar las magnitudes de dos cantidades binarias para determinar su relacin. En su forma ms sencilla, un circuito comparador determina si dos nmeros son iguales.

Son elementos que en base a introducirle dos nmeros de n bits (A, B) entregan a su salida mediante tres seales el valor de la comparacin M (A>B), I (A=B) y m (AB, A=B y A