En términos generales
Formatos Numéricos Representaciones habituales Números enteros sin signo Números enteros con signo Signo mas magnitud absoluta Complemento a 1 Complemento a 2 BCD (Binary Code Decimal) Coma flotante
Coma flotante
Arquitecturas para procesado aritmético Dependencias Velocidad de muestreo Recursos Hardware Tipos de arquitectura Serie Paralelo Pipelined
Arquitecturas Paralela Arquitecturas Serie
Arquitectura Pipelined
Operaciones lógicas Compuertas lógicas : AND, OR, NOT,OR – EXCLUSIVA
Desplazamientos y rotaciones Desplazamiento lógico
Desplazamiento aritmético
Rotación Des. Cíclico
Rotación con carry
Esquema de sumadores/restadores serie-serie
Sumador/restadores paralelos Sumadores propagadores de carry Sumadores full-adder Células de sumas de un solo bit Células de sumas de 2 bits reducen el tiempo de propagación de carry
Multiplicadores Array (Arquitectura en paralelo) Serie Paralelo Serie serie Pipelined Multiplicadores de hardware reducidos Truncadores
Multiplicadores en array Sin signo
Multiplicadores en array Con signo en complemento a 2 Algoritmo Baugh-Wooley
Multiplicadores serie paralelo sin signo CSAS: Carry Save Add Shift
Ejemplo
Ejemplo parte 2
Ejemplo parte 3
Ejemplo parte 4
Multiplicadores serie paralelo sin signo Algoritmo FSP (Fast Serial Parallel)
Multiplicador serie paralelo con signo CSAS con CA2
Multiplicador serie paralelo con signo FSP con CA2
Algoritmo de booth Supongamos dos números, multiplicando y multiplicador, con longitudes en bits, x para el primero, e y para el segundo: Construimos una matriz de tres filas y x+y+1 columnas. Identificaremos las filas como, A la primera, S la segunda y P la tercera. Se inician los x primeros bits de cada fila con: A, el multiplicando. S, el complemento a dos del multiplicando. P, ceros. Los siguientes y bits se completan con: A, ceros. S, ceros. P, el multiplicador. Para finalizar la matriz, se inician a 0 todos los valores de la última columna. Una vez iniciada esta matriz, se realiza el algoritmo. Se realizan y iteraciones del siguiente bucle. Comparar los dos últimos bits de P, para realizar la siguiente acción: 00 o 11: no se hace nada. 01: P = P + A. Se ignora el acarreo. 10: P = P + S. Se ignora el acarreo. Desplazamiento aritmético de P a la derecha (se conserva el bit de signo). Finalmente, tras y iteraciones, se elimina el último bit de la derecha (menos significativo), obteniendo el resultado.
Tarea 8 Como realizar la multiplicación * 2 a un número potencia de 2 en binario. Investigar como se realizan la implementación de la división sin y con signo (Complemento a 2)
Bibliografía http://micropic.wordpress.com/2008/02/02/multiplicacion-mediante-el-algoritmo-de-booth/ http://es.wikipedia.org/wiki/Algoritmo_de_Booth http://rua.ua.es/dspace/bitstream/10045/3932/1/S3_1_ALU.pdf http://upcommons.upc.edu/e-prints/bitstream/2117/6124/1/TEMA3.pdf