Está en la página 1de 29

TEMA 11.

CIRCUITOS
ARITMÉTICOS DIGITALES

http://www.tech-faq.com/wp-content/uploads/images/integrated-circuit-layout.jpg

IEEE 125 Aniversary: http://www.flickr.com/photos/ieee125/with/2809342254/

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
1
TEMA 11. CIRCUITOS
ARITMÉTICOS DIGITALES

- Introducción
- Contadores
- Comparadores
- Sumadores. Restadores
- Multiplicadores. Divisores

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
2
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

INTRODUCCIÓN

 El cálculo aritmético desempeña un papel crucial en el


procesamiento de información
 Vamos a examinar algunas de las operaciones más básicas: las
primeras que veremos son las acciones de contar y ordenar, innatas
en el ser humano
 Los circuitos que veremos son una parte fundamental de las
unidades aritmético-lógicas, componentes de las CPUs

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
3
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

CONTADORES

 Un contador es un circuito que almacena el número de veces que


ha tenido lugar un determinado proceso o evento
 Poseerá, por tanto, una sola entrada
 Su forma de operación será secuencial
 Podrán contar o no con un reloj
 Veamos un ejemplo

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
4
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

CONTADOR

 Contador binario síncrono (de 0 a 7)


 El primer paso en la síntesis de este circuito es, como ya se ha
visto, determinar el diagrama de estado y asignar las variables de
estado, que nos dirán cuantos biestables vamos a necesitar
 Recordemos que la entrada es única, y que las transiciones entre
estados tendrán lugar en conjunción con el pulso de reloj

CBA (variables de
estado, salidas)
0 7 000 111

1 6 001 110

2 5
010 101

3 4
D. Pardo, et al. 1999 011 100

Figura 24.1.- Diagrama de Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
5
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

CONTADORES: Contador binario síncrono


Tabla de Excitación
Qn J K Qn+1
 Serán necesarios 3 biestables, por lo que
habrá tres variables de estado A, B y C 0 0 × 0
0 1 × 1
 Vamos a emplear flip-flops JK
1 × 1 0
 A partir de aquí, tenemos las siguientes
1 × 0 1
tablas de excitación:

D. Pardo, et al. 1999

C C C
B B B
x 00 01 11 10 x 00 01 11 10 x 00 01 11 10
A A A
00 0 * 0* 0* 0* 00 0 * *0 *0 0* 00 0 * 0* *0 *0
01 *0 *0 *0 *0 01 0* *0 *0 0* 01 0* 0* *0 *0
11 *1 *1 *1 *1 11 1 * *1 *1 1* 11 0* 1* *1 *0

10 1* 1* 1* 1* 10 0* *0 *0 0* 10 0* 0* *0 *0

JA ,KA JB ,KB JC ,KC


Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
6
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES
CONTADORES: Contador binario síncrono

 Las ecuaciones correspondientes serán


J A = x, K A = x, J=K, por lo que
J B = xA, K B = xA pueden usarse
flip-flops T
J C = xBA, KC = xBA

A B C

QA QB
T QC
Entrada x T x T
QB
QA CP x QC
CP CP
CP D. Pardo, et al. 1999

 Si la entrada es 1, cuando es activo el pulso de reloj se pasa al


siguiente estado
 También se puede tomar como entrada la señal de reloj y x=1,
de este modo se cuentan pulsos de reloj
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
7
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

CONTADORES: Contador binario Asíncrono

“1” “1” “1”


T0 Q0 T1 Q1 T2 Q2
I
CP Q0 CP Q0 CP Q 0

Q0

Q1

Q2
D. Pardo, et al. 1999

 Opera de forma asíncrona pues el cambio de estado de los flip-


flops no tiene lugar simultáneamente con la entrada, sino que
ocurren consecutivamente, pues la salida de cada flip-flop es el
reloj del siguiente
 La frecuencia de operación se ve penalizada
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
8
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

CONTADORES: ejercicios propuestos 1 y 2 libro

 Contador asíncrono hasta 5

D. Pardo, et al. 1999

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
9
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

COMPARADORES

 Son los circuitos más simples que existen que trabajan con dos
números
 El resultado de la comparación puede ser mayor que, menor que,
mayor o igual que, menor o igual que, o simplemente iguales

A A A A A
B 0 1 B 0 1 B 0 1 B 0 1 B 0 1
0 0 1 0 1 1 0 1 0 0 1 0 0 0 0
1 0 0 1 0 1 1 0 1 1 1 1 1 1 0
A=B A≤B A<B
A>B A≥B

A A A
A A B B+A A A⊕B A+B AB
B B B
B B

D. Pardo, et al. 1999

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
10
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

COMPARADORES

 Si se quiere efectuar la comparación entre varios bits, para ver si


ambos son iguales se puede hacer comparado bit a bit con puertas
X-NOR

A0
Circuito detector de igualdad
B0
A3 A2 A1 A0
A1
A=B
B3 B2 B1 B0
B1

A2

B2

A3

B3 D. Pardo, et al. 1999

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
11
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES
COMPARADORES

 Si se quiere ver si un número es mayor que otro, empezaremos


por el bit más significativo, hasta llegar a los menos (en caso
necesario: ejemplo, ver si A2A1A0 > B2B1B0

( A2 A1 A0 > B2 B1 B0 ) = ( A2 > B2 ) + ( A2 = B2 ) [ ( A1 > B1 ) + ( A1 = B1 )( A0 > B0 ) ] =


= A2 B2 + A2 ⊕ B2  A1B1 + ( A1 ⊕ B1 ) A0 B0 
A0
B 0

A1
Circuito comparador de dos
B1
números de 3 bits: A > B
A1
B 1
A2 A1 A0
A2
B2 B1 B0
A2A1A0>B2B1B0
B2

A2
B2 D. Pardo, et al. 1999
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
12
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

SUMADORES

 Semisumador binario (SSB): es el circuito sumador más simple

http://html.rincondelvago.com/000359903.png

A
SSB S
B

C
http://www.esacademic.com/dic.nsf/eswiki/1114728

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
13
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

SUMADORES

 Sumador binario completo (SBC): incluye una entrada adicional


correspondiente al arrastre de la etapa anterior (acarreo previo)

Co = A·B + Ci ( A ⊕ B)
S = Ci ⊕ A ⊕ B

http://asicdigitaldesign.files.wordpress.com/2007/05/fa_01.png

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
14
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

SUMADORES

 La realización del circuito será:

http://www.esacademic.com/dic.nsf/eswiki/1114728

 O también con la composición de dos semisumadores binarios

Ci S = Ci ⊕ A ⊕ B
SSB S
A
SSB
B A⊕ B Ci ( A ⊕ B )
Co
A·B
http://html.rincondelvago.com/000359903.png Co = A·B + Ci ( A ⊕ B)
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
15
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

SUMADORES DE VARIOS BITS

 Realización en paralelo con propagación del arrastre

http://www.virtual.unal.edu.co/cursos/ingenieria/2000477/lecciones/031001.htm

Realización secuencial en serie

http://azul2.bnct.ipn.mx/clogicos/multivibradores/graficos(.gif)/Cs_128.gif

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
16
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

REPRESENTACIÓN DE NÚMEROS BINARIOS

 Representación magnitud-signo
• Consiste en representar el número en binario natural, añadiendo a la
izquierda un cero si es positivo y un uno si es negativo (requiere
circuitos diferentes para la suma y la resta)
 Complementos: se emplean para “convertir” restas en sumas, y
así poder emplear el mismo circuito
 Complemento a la base o complemento a 2: N+Cb(N)=bn
• En binario corresponde con la complementación del número + 1

http://www.profesormolina.com.ar/electronica/componentes/int/sist_arim.htm

 Restricción de la base o complemento a 1: N+Cb-1(N)=bn-1


• En binario corresponde con la complementación del número
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
17
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

RESTADORES
 Otra de las operaciones aritméticas que se realizan con mucha
frecuencia en Electrónica Digital es la resta
 Podemos realizar el circuito de manera directa a partir de la tabla
de verdad y empleando la representación de signo-magnitud

Ai Bi Ci-1 Di Ci
0 0 0 0 0
0
0 1 1 1
Di = ( Ai ⊕ Bi )Ci −1
1 0 0 1 0
1 1 0 0 0
Ci = Ai Bi + ( Ai + Bi )Ci −1 =
0 0 1 1 1 = Ai Bi + ( Ai ⊕ Bi )Ci −1
0 1 1 0 1
1 0 1 0 0
1 1 1 1 1 D. Pardo, et al. 1999

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
18
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

RESTADORES

 Aprovechamos el circuito sumador empleando el convenio de


complemento a 2, de modo que las restas se conviertan en sumas
 Este es un ejemplo realizado con la ayuda de un multiplexor

Sumador/Restador
por complemento
Multiplexor S
Selección de
operación:
0 → A+B
1 → A-B
A3 A2 A1 A0 B3 B2 B1 B0
Sumador completo
C0
C3
D. Pardo, et al. 1999

S3 S2 S1 S0 Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
19
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

RESTADORES

 Veamos otro ejemplo más


detallado basado en el
sumador previamente visto

Sumador/Restador de 4 bits

http://www.cmelectronics.8m.com/circuitos_aritmeticos.html

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
20
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

MULTIPLICADORES

 La forma más básica de


multiplicación es la basada en
el algoritmo de “lápiz y papel”.
Ej. Números de 4 bits:

http://gemini.udistrital.edu.co/comunidad/profesores/spinzon/docs/sisBinario.pdf

En general:

http://www.virtual.unal.edu.co/cursos/ingenieria/2000477/lecciones/031301.htm

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
21
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES
MULTIPLICADORES

 Vamos a definir el siguiente


elemento funcional, para el que
necesitamos una puerta AND y un
SBC
 De este modo, necesitaríamos 12
SBC’s para realizar la operación

http://www.virtual.unal.edu.co/cursos/ingenieria/2000477/lecciones/031301.htm

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
22
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

MULTIPLICADORES

 Existen otras alternativas más eficientes, empleando registros de


desplazamiento y acumuladores en combinación con los sumadores
binarios, y efectuando la multiplicación secuencialmente

 Existen también multiplicadores de “alta velocidad” que se basan


en configuraciones más complejas, generando más rápidamente la
suma de los productos parciales optimizando la propagación de los
acarreos o utilizando algoritmos de multiplicación alternativos

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
23
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

DIVISORES

 Se puede efectuar la división de manera análoga a la multiplicación


(método de “lápiz y papel”)
 Para un número pequeño de bits se pueden realizar diseños
combinacionales basados en restadores
 Para un número de bits elevado, es preferible el diseño de divisores
secuenciales

http://gemini.udistrital.edu.co/comunidad/profesores/spinzon/docs/sisBinario.pdf
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
24
TEMA 11. CIRCUITOS
ARITMÉTICOS DIGITALES

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
25
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

PROBLEMAS

1. Diseñar una unidad aritmético-lógica (ALU) con dos entradas de


datos D1, D2 (dígitos de 1 bit) y dos salidas z1 y z2. Dicha ALU debe
realizar las siguientes operaciones:

D. Pardo, et al. 1999

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
26
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

PROBLEMAS

1. Solución:

D. Pardo, et al. 1999

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
27
TEMA 11. CIRCUITOS ARITMÉTICOS DIGITALES

PROBLEMAS

1. Solución:

D. Pardo, et al. 1999

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
28
 Agradecimientos
 Daniel Pardo Collantes, Área de Electrónica, Departamento de Física Aplicada
de la Universidad de Salamanca.

 Referencias
 Pardo Collantes, Daniel; Bailón Vega, Luís A., “Elementos de
Electrónica”.Universidad de Valladolid. Secretariado de Publicaciones e
Intercambio Editorial.1999.
 http://www.profesormolina.com.ar/electronica/componentes/int/sist_arim.htm
 http://www.esacademic.com/dic.nsf/eswiki/1114728
 http://html.rincondelvago.com/000359903.png
 http://www.virtual.unal.edu.co/cursos/ingenieria/2000477/lecciones/031001.htm
 http://www.virtual.unal.edu.co/cursos/ingenieria/2000477/lecciones/031301.htm
 http://azul2.bnct.ipn.mx/clogicos/multivibradores/graficos(.gif)/Cs_128.gif

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
29

También podría gustarte