Circuitos electrónicos digitales. Unidades Aritméticas Lógicas. Departamento de Tecnología Electrónica Universidad de Sevilla

Documentos relacionados
Fundamentos de Computadores. Tema 5. Circuitos Aritméticos

Subsistemas aritméticos y lógicos. Tema 8

Sumadores. Tipos de sumadores: Half-adder. Full-Adder. Carry-Look-Ahead. Carry-select.

Circuitos Lógicos Combinatorios. Ing. Jorge Manrique 2004 Sistemas Digitales 1

TEMA III: OPERACIONES CON LOS DATOS

4. Aritmética y operadores

Tema 3. Operaciones aritméticas y lógicas

CIRCUITOS ARITMÉTICOS. Tema 5: CIRCUITOS ARITMÉTICOS

Electrónica Básica. Aritmética Binaria. Electrónica Digital. José Ramón Sendra Sendra Dpto. de Ingeniería Electrónica y Automática ULPGC

Tema 3: Operaciones aritméticas y lógicas

Oliverio J. Santana Jaria. Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso Los objetivos de este tema son:

Circuitos combinacionales aritméticos (Parte II)

TEMA 6 ARITMÉTICA BINARIA Y CIRCUITOS ARITMÉTICOS

FUNDAMENTOS DE SISTEMAS DIGITALES. Tema 2: Lógica combinacional (I): Funciones aritmético-lógicas

ANALISIS Y DISEÑO DE CIRCUITOS ARITMÉTICOS

ESTRUCTURA Y TECNOLOGIA DE COMPUTADORES II Curso PROBLEMAS TEMA 4: Unidad Aritmético Lógica

TEMA 6 UNIDAD ARITMÉTICO LÓGICA

Bloques Combinacionales

Fundamentos de Informática E.U.P. Universidad de Sevilla

Titulación: Grado en Ingeniería Informática Asignatura: Fundamentos de Computadores

2. Números naturales: sistema de numeración y operaciones básicas

Sumador Ripple-Carry

Tema 3. Operaciones aritméticas y lógicas

2º CURSO INGENIERÍA TÉCNICA EN INFORMÁTICA DE GESTIÓN TEMA 3 UNIDAD ARITMÉTICO- LÓGICA JOSÉ GARCÍA RODRÍGUEZ JOSÉ ANTONIO SERRA PÉREZ

PROBLEMA VHDL. 7 dig1. dig2. Entradas : Señales a[3..0] y b [3..0] en código GRAY Salida : Señales Dig1[6..0] y Dig2[6..0] para los visualizadores

Computación 1. Representación Interna de Números

+- S x B +-E. Este estándar presupone una representación normalizada. Es decir, los números a representar obedecen a la siguiente forma:

REPRESENTACION DE LA INFORMACION

SISTEMAS DIGITALES. Margarita Pérez Castellanos

Multiplicación. Multiplicación. Martín Vázquez Arquitectura I - Curso 2013 UNICEN. Notación dot

6.1. Operadores aritméticos en binario natural

Aritmética de Enteros y

Es un circuito digital que realiza operaciones lógicas y aritméticas entre dos operados de n bits Estructura de una computadora digital

Organización de Computadoras

TEMA 5.3 SISTEMAS DIGITALES

Representación de datos y aritmética básica en sistemas digitales

Representación de datos y aritmética básica en sistemas digitales

SUMADORES Y COMPARADORES

Realizar las siguientes operaciones en c-a-2 utilizando el número mínimo de bits necesario para que no haya desbordamiento: 3 + 7, 5 7, 13 8, 10 6.

Aritmética de Enteros

Operación de circuitos lógicos combinatorios.

Electrónica Digital. Fco. Javier Expósito, Manuel Arbelo, Pedro A. Hernández Dpto. de Física Fundamental y Experimental, Electrónica y Sistemas

Componentes Combinacionales. Circuitos Digitales, 2º de Ingeniero de Telecomunicación ETSIT ULPGC

PRÁCTICA 1b: SUMA Y RESTA BINARIA

Las características que definen un sistema de representación alfanumérico son:

Figura 1: Suma binaria

ÍNDICE CAPÍTULO 1. CÓDIGOS DE NUMERACIÓN CAPÍTULO 2. ÁLGEBRA DE CONMUTACIÓN Y FUNCIONES LÓGICAS... 37

SUMADOR RESTADOR DE 3 BITS EN BINARIO NATURAL.

Tema 3. 2 Sistemas Combinacionales

Organización del Computador 1 Lógica Digital 1: álgebra de Boole y

INDICE. XIII Introducción. XV 1. Introducción a la técnica digital 1.1. Introducción

Lógica Computacional. Aritmética binaria

Representación binaria de números enteros en complemento a 2

Computación I Representación Interna Curso 2011

HOJA DE PROBLEMAS 2. SISTEMA BINARIO DE REPRESENTACIÓN NUMÉRICA. 1. Convertir los siguientes números binarios a sus equivalentes decimales: a.

Sistemas numéricos -números negativos- Taller de programación

BIBLIOGRAFIA TEORIA DE CIRCUITOSY DISPOSOTIVOS BOYLESTAD ELECTRONICA DIGITAL TOKHEIM SISTEMAS DIGITALES TOCCI

GUIA DIDACTICA DE ELECTRONICA N º12 1. IDENTIFICACION ASIGNATURA GRADO PERIODO I.H.S. TECNOLOGIA ONCE CUARTO 6

1.1 Circuitos Digitales

TEMA II SISTEMAS DE NUMERACIÓN USUALES EN INFORMÁTICA.

Circuitos Aritméticos. Introducción a los Sistemas Lógicos y Digitales 2012


Organización del Computador 1 Lógica Digital 1: álgebra de Boole y compuertas

Sistemas Combinacionales

TEMA 6. Circuitos Aritméticos.

Tema 3. La Unidad Aritmético- Lógica

Estructura de Computadores. 1. Ejercicios Resueltos 1.1. Tema 6. La unidad aritmética y lógica

MATEMÁTICAS PARA LA COMPUTACIÓN CAPÍTULO 1. SISTEMAS NUMÉRICOS

k k N b Sistemas Númericos Sistemas con Notación Posicional (1) Sistemas con Notación Posicional (2) Sistemas Decimal

Estructura de Computadores Tema 2. Representación de la información

Aritmética del computador

OPERADORES: Maquinaria para realizar las instrucciones. Capítulo Tercero Fundamentos de Computadores Ingeniería de Telecomunicación

Sistemas numéricos -aritmética- Taller de programación

2. Sumadores. Diagrama. Donde a y b son los bits a sumar, S el. resultado de la suma y C el acarreo generado. b EB. Circuito. Tabla de verdad.

LÓGICA SECUENCIAL Y COMBINATORIA

LECCIÓN 1. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Estructura de Computadores

5.1.1 Sumadores con anticipación de Acarreo. g i = a i b i. c i = c i-1 p i + g i s i = p i + c i-1. c 0 = g 0 + c -1 p 0

Representación digital de la información

Conceptos previos. Revisión de Sistemas Lógicos Formatos Numéricos. Dpto. Ingeniería Electrónica y Comunicaciones

Sistemas Digitales. Pablo Abad Pablo Prieto Torralbo. Tema 2. Números Naturales y Enteros. Departamento de Ingeniería Informá2ca y Electrónica

Ing. Yesid E. Santafe Ramon CIRCUITOS LÓGICOS COMBINATORIOS

Carrera: MTF Participantes Representante de las academias de ingeniería Mecatrónica de los Institutos Tecnológicos.

Tema 2: Sistemas de numeración

Sistemas de Numeración. I semestre 2011

Tema IV. Unidad aritmético lógica

Unidad Aritmético Lógica A.G.O. All Rights Reserved

Sistemas Digitales - Examen temas 1, 2 y 3 - (6 de Abril 2016)

10 más ! Análisis de sistemas digitales básicos

Arquitecaura de Computadoras Tema 1 - Introducción a la Arquitectura de Computadoras

La Unidad Procesadora.

HOJA DE PROBLEMAS 6: MÓDULOS COMBINACIONALES BÁSICOS

Tema 2: Sistemas y códigos numéricos

PRÁCTICA 1b: SUMA Y RESTA BINARIA

APUNTES DE CATEDRA: SISTEMAS DE NUMERACION - REPRESENTACION INTERNA DE NUMEROS Y CARACTERES

Tema 4 - Bloques combinacionales

T6. CIRCUITOS ARITMÉTICOS

LABELN-ELN Laboratorio Nº 5 Circuitos Lógicos Combinacionales

Bloques Aritméticos - Multiplicadores

TEMA V SISTEMAS DE NUMERACIÓN

Transcripción:

Circuitos electrónicos digitales Unidades Aritméticas Lógicas

Índice Introducción Circuitos sumadores básicos Sumador paralelo de n bits Sumador/Restador Unidad aritmético-lógica (ALU)

Introducción Los sistemas digitales poseen una gran potencia de cálculo ya que permiten ejecutar con gran velocidad operaciones aritméticas y lógicas Una operación aritmética en un computador puede ser realizada de dos formas: hardware: existe un circuito en el procesador que realiza esa operación (gran velocidad y alto coste) software: existe un algoritmo que descompone esa operación en otras más elementales que son realizadas mediante hardware Aritmética binaria Coma fija Coma flotante

Introducción Hardware aritmético en los procesadores: Todos los procesadores poseen al menos un sumadorrestador Los procesadores diseñados para el cálculo numérico (coprocesadores matemáticos) poseen multiplicadores, circuitos para la división, etc. Software aritmético en los procesadores: Los procesadores más simples poseen instrucciones para la suma y la resta. A medida que aumenta la complejidad se incluyen instrucciones de multiplicación y división En los más complejos se tienen operaciones más abstractas como exponenciales, logaritmos, etc.

Introducción Las principales diferencias entre la forma de operar manual y la de un computador digital son: La base del sistema de numeración es B = 2 (binaria). La forma de representar números con signo normalmente no es con signo-magnitud, sino a través de los complementos (a 2 o a 1). El número de bits de los datos está acotado entonces: Errores de desbordamiento, de precisión Incumplimiento de propiedades algebráicas: las operaciones se vuelven no-cerradas Pueden incumplirse las propiedades asociativas y distributiva).

Índice Introducción Circuitos sumadores básicos Sumador paralelo de n bits Sumador/Restador Unidad aritmético-lógica (ALU)

Circuitos sumadores básicos Semisumador o Half Adder (HA) Se trata del circuito que suma dos bits. Obtiene como salida el bit de suma y el acarreo. a i b i C i+1 S i 0 0 0 0 1 0 0 1 0 1 0 1 1 1 1 0 a i b i HA S i C i+1

Circuitos sumadores básicos Semisumador o Half Adder (HA) Una posible implementación mediante puertas lógicas C i+1 = a i b i a i b i & C i+1 S i = a i b i =1 a i b i S i

Circuitos sumadores básicos Sumador completo Full Adder (FA) Permite realizar la suma de tres bits simultáneamente. Obtiene como salida el bit de suma y el acarreo. a i b i C i C i+1 S i 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 a i b i C i FA S i C i+1

Circuitos sumadores básicos Sumador completo Full Adder (FA) Una implementación mediante puertas lógicas C i+1 = a i b i + a i C i + b i C i S i = a i b i C i a i =1 =1 b i C i a i b i & S i a i & & C C i i+1 b i C i &

Índice Introducción Circuitos sumadores básicos Sumador paralelo de n bits Sumador/Restador Unidad aritmético-lógica (ALU)

Sumador paralelo de n bits Un sumador paralelo de n bits, es un dispositivo lógico combinacional de 2n+1 entradas y n+1 salidas que realiza la suma de dos números binarios de n bits. a n-1 a n-2 a 0 b n-1 b n-2 b 0 C out c n-1... c 2 c 1 c 0 = C in a n-1... a 2 a 1 a 0 + b n-1... b 2 b 1 b 0 A B S n-1... S 2 S 1 S 0 C out S C in S n-1 S n-2 S 0

Sumador paralelo de n bits Sumador paralelo con acarreo serie Es el más intuitivo y tiene un coste razonablemente bajo. También es conocido como sumador de rizado o ripple adder Se trata de un circuito modular

Sumador paralelo de n bits Es lento debido a la propagación serie del acarreo El tiempo que tarda en realizarse una suma crece linealmente con el número de bits

Sumador paralelo de n bits El problema del desbordamiento en la suma de magnitudes Con n bits el rango representable es [0,2n-1] Si A+B > 2n-1 el resultado no es representable hay desbordamiento (overflow) Cout señala la existencia de desbordamiento En caso de desbordamiento, el resultado correcto está en el número de n+1 bits ( A + B = CoutSn-1. S0 ) OK! + 0 0 1 1 (0) 1 0 0 1 0 0 1 1 C i A B + 10 1 1 (0) 1 0 0 1 1 0 1 1 A B A + B =1 0 1 0 0 1 1 0 0 A + B 0 1 0 0

Índice Introducción Circuitos sumadores básicos Sumador paralelo de n bits Sumador/Restador Unidad aritmético-lógica (ALU)

Sumador/Restador La suma-resta de números con signo Calcular la diferencia A-B es equivalente a calcular A + (-B) la resta aritmética se reduce a una suma 0 (s) A, B s /r 1 (r) B < (-B ) implica trabajar con números con signo B es (- B) en complemento a 1 S = A + B [B + 1] es (- B) en complemento a 2

Sumador/Restador La suma-resta de números en complemento a 2 En general: A B = A + (-B) B A, B A Complementador de n bits C 0 (s) s/r 1 (r) B< (-B) C out Sumador paralelo de n bits Y C in s/r S = A + B S

Sumador/Restador El complementador es simplemente una colección de puertas XOR C Y 0 B 1 B B Complementador de n bits Y C B n-1 B n-2 B 0 C = 1 = 1... = 1 Y n-1 Y n-2 Y 0

Sumador/Restador La suma-resta de números en complemento a 2 Utilizaremos la notación complemento a 2 para representar los números positivos y negativos 1001 = -7 0101 = +5 111 0 = -2 11 00 = -4 1111 = -1 11011 = -5 11 00 = -4 0100 = +4 1 0000 = 0 0101 = +5 0100 = +4 1001 = -7 0011 = +3 0100 = +4 0111 = +7 1001 = -7 1010 = -6 10011 = +3 desbordamiento

Sumador/Restador El problema del desbordamiento en la suma-resta de números con signo Se pone de manifiesto porque la magnitud ocupa un bit más y el bit de signo no es correcto En caso de desbordamiento, el resultado correcto está en el número de n+1 bits A + B = CoutSn-1 S0 La detección del desbordamiento se lleva a cabo mediante una señal adicional: el bit de overflow (V)

Sumador/Restador Problema de desbordamiento en la suma-resta de números con signo. En la suma, el desbordamiento se produce cuando: al sumar dos números positivos se obtiene uno negativo al sumar dos números negativos se obtiene uno positivo C n 0 C n-1 1 0 a n-2... a 0 0 b n-2... b 0 1 S n-2... S 0 V = C out C n 1

Sumador/Restador El sumador restador quedaría: a n-1 b n-1 a n-2 b n-2 C out V A +/- S B s/r Bit de Signo (en su caso) C n = C out C n-1 C n-2 FA FA. S n-1 S n-2 =1 V

Índice Introducción Circuitos sumadores básicos Sumador paralelo de n bits Sumador/Restador Unidad aritmético-lógica (ALU)

Unidad aritmético-lógica (ALU) Es el circuito donde se realiza el procesado de datos Procesado: operaciones aritméticas y lógicas. Normalmente se opera sobre dos datos Usualmente pueden realizar diversas operaciones. Para elegirlas se incluyen unas señales de selección Además de las salidas que muestran el resultado de la operación, se incluyen otras salidas (flags) de estado o de condición. Típicamente son C out, V, Z (Z=1 si el resultado es 0) y S (signo)

Unidad aritmético-lógica (ALU) Representación gráfica de una ALU A = a n-1...a 0 B = b n-1...b 0 n n señales de selección S k-1...s 0 C in k ALU m salidas de estado n F = f n-1...f 0

Unidad aritmético-lógica (ALU) Ejemplo de una ALU S 2 S 1 S 0 Función ALU C in = 0 C in = 1 0 0 0 F = A F = A + 1 0 0 1 F = A + B F = A + B + 1 0 1 0 F = A + B F = A + B + 1 0 1 1 F = A 1 F = A 1 0 0 F = A AND B 1 0 1 F = A OR B 1 1 0 F = NOT A 1 1 1 F = A XOR B

Unidad aritmético-lógica (ALU) Realización de una ALU Se separan las partes aritmética (AU) y lógica (LU). A B C in C out S 1 S 0 F LU F AU S 2 F

Unidad aritmético-lógica (ALU) Realización de una ALU Implica la realización de la ALU para cada pareja de bits entrantes (etapa típica)

Unidad aritmético-lógica (ALU) Realización de una ALU La ALU de n bits se implementa como cascada de n módulos de 1 bit ( n etapas típicas): a n-1 b n-1 a 1 b 1 a 0 b 0 C out ALU n-1 c n-1 c i+1 c i c 1 ALU ALU C in 1 0

Unidad aritmético-lógica (ALU) Diseño de la Unidad Aritmética El bloque aritmético consta básicamente de un sum. paralelo Para obtener las diferentes operaciones se ha de modificar los datos de entrada al sumador

Unidad aritmético-lógica (ALU) Diseño de la Unidad Aritmética El bloque aritmético consta básicamente de un sum. paralelo Para obtener las diferentes operaciones se ha de modificar los datos de entrada al sumador

Unidad aritmético-lógica (ALU) Diseño de la Unidad Aritmética El bloque aritmético consta básicamente de un sum. paralelo Para obtener las diferentes operaciones se ha de modificar los datos de entrada al sumador S 2 S 1 S 0 Función ALU C in = 0 C in = 1 0 0 0 F = A A 0 F = A + 1 A 0 0 0 1 F = A + B A B F = A + B + 1 A B 0 1 0 F = A + B A NOT (B) F = A + B + 1 A NOT (B) 0 1 1 F = A 1 A 11 1 F = A A 11.1

Unidad aritmético-lógica (ALU) Diseño de la Unidad Aritmética El bloque aritmético consta básicamente de un sum. paralelo Para obtener las diferentes operaciones se ha de modificar los datos de entrada al sumador b i Circuito y i S1 S 0 a i y i c i+1 Full Adder c i f i = a i + y i

Unidad aritmético-lógica (ALU) Diseño del circuito yi con puertas lógicas S 1 S 0 Y i 0 0 0 0 1 b i 1 0 b i 1 1 1 b i S 1 S 0 0 0 0 1 1 1 1 0 0 1 0 0 0 1 1 1 1 0 Y i

Unidad aritmético-lógica (ALU) Diseño del circuito yi con un multiplexor S 1 S 0 Y i 0 0 0 0 1 b i 1 0 b i 1 1 1 0 0 1 1 2 3 1 0

Unidad aritmético-lógica (ALU) El acarreo de salida nos puede dar una información muy importante S 1 S 0 C in Operación C out =1 si Comentario 0 0 0 F=A Transferir A -------- C out =0 siempre 0 0 1 F=A+1 Incrementar A A=2 n -1 Si C out =1, F=0 0 1 0 F=A+B Sumar A+B A+B 2 n Overflow si C out =1 0 1 1 F=A+B+1 Incrementar A+B A+B 2 n -1 Overflow si C out =1 1 0 0 F=A+B Restar A-B en Ca1 A>B Si C out =0 A B y F=Ca1(B-A) 1 0 1 F=A+B +1 Restar A-B en Ca2 A B Si C out =0 A<B y F=Ca1(B-A) 1 1 0 F=A-1 Decrementar A A 0 Si C out =0 A=0 1 1 1 F=A Transferir A ------- C out =1 siempre

Unidad aritmético-lógica (ALU) Diseño de la Unidad Lógica Diseño de la etapa típica con un multiplexor y puertas lógicas S 2 S 1 S 0 Función ALU 1 0 0 F = A AND B 1 0 1 F = A OR B a i b i & 1 1 0 F = NOT A 1 1 1 F = A XOR B a i b i a i 1 0 1 2 3 1 0 f LUi a i b i S 1 S 0