Date post: | 17-Dec-2015 |
Category: |
Documents |
Upload: | gabriel-orosco |
View: | 244 times |
Download: | 3 times |
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
ELECTRNICA DIGITALELECTRNICA DIGITAL
Tema 10Operaciones y circuitos aritmticos
Enrique Mandado Prez
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
CONCEPTOS GENERALES
En la mayora de los sistemas digitales, desde el circuito de control ms sencillo hasta el computador o el sistema de comunicaciones ms complejo, se realizan operaciones aritmticas.
En este tema se describen los circuitos aritmticos bsicos. El desarrollo de la Microelectrnica ha propiciado el desarrollo de numerosos circuitos aritmticos de mayor complejidad que tardan menos tiempo en ejecutar las diferentes operaciones. Un estudio de los mismos se sale fuera de los lmites de este tema y se remite al lector a la bibliografia.
[ERCE 04] M. D. Ercegovac, T. Lang. Digital arithmetic. Morgan Kaufmann.2004
[FLYN 01] M. Flynn. S. F. Oberman. Advanced computer arithmetic design.
John Wiley & Sons Inc. 2001
[PARH 00] B. Parhami. Computer arithmetic. Algorithms and hardware designs.
Oxford University Press. 2000
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
OPERACIONES EN EL SISTEMA DE NUMERACIN BINARIO
SUMA ARITMTICA EN BINARIO NATURAL
(BINARY ADDITION)
Tabla de verdad de la suma aritmtica en el sistema de numeracin binario
Sumandos
Suma
binaria Acarreo
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
OPERACIONES EN EL SISTEMA DE NUMERACIN BINARIO
1011
0101
0110
0000
CSa0b0
iiiiiiiiiiibababababaS =+=+=
iiiiiiibababaC +===+1
SUMA ARITMTICA EN BINARIO NATURAL
1
=1a i
b i
a i
b i
S i
C i+1
Circuito semisumador(Half adder)
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
OPERACIONES EN EL SISTEMA DE NUMERACIN BINARIO
SUMADOR TOTAL(FULL ADDER)
11111
10011
10101
01001
10110
01010
X1100
X0000
Ci+1SaibiCi
iiiiiiiiiiiiiCbaCbaCbaCbaS +++=
iiiiiiiiiiiiiCbaCbaCbaCbaC +++=+1
=1
&
S i
=1a i
b i
a i
b i
C i+1&
&
&
C i
P
CI
CO
Q
Smbolo lgico
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
OPERACIONES EN EL SISTEMA DE NUMERACIN BINARIO
SUMA DE NMEROS DE VARIOS BITS
En serie (Serial binary adder), utilizando un nico sumador total.
En paralelo (Paralell binary adder), utilizando tantos sumadores totales como bits se tienen que sumar.
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
SUMADOR EN SERIE DE VARIOS BITS
S ia i
b i
C i+1C i
P
CI
CO
Q
1D
C1
Q
Q
El avance de la Microelectrnica ha hecho que ya no se utilice
OPERACIONES EN EL SISTEMA DE NUMERACIN BINARIO
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
SUMADOR EN PARALELO DE VARIOS BITS
- Sumador con generacin del acarreo en serie(Ripple adder)
- Sumador con generacin del acarreo en paralelo(Carry lookahead adder)
OPERACIONES EN EL SISTEMA DE NUMERACIN BINARIO
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
OPERACIONES EN EL SISTEMA DE NUMERACIN BINARIO
SUMADOR EN PARALELO DE VARIOS BITS
Sumador con generacin del acarreo en serie
S 0
a 0
b 0
C 1C 0
P
CI
CO
Q
S 1
a 1
b 1
C 2
P
CI
CO
Q
S n-2
a n-2
b n-2
C n-1
P
CI
CO
Q
S n-1
a n-1
b n-1
C n
P
CI
CO
Q
0
1
2
3
P
0
1
2
3
CI
Q
0
1
2
3
CO
S 1
S 0
S 3
S 2
SMBOLO LGICONORMALIZADO
VentajaFcil ampliacin: Modularidad
DesventajaLentitud: El tiempo que tarda en sumar
depende del nmero de bits
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
OPERACIONES EN EL SISTEMA DE NUMERACIN BINARIO
SUMADOR EN PARALELO DE VARIOS BITSSumador con generacin del acarreo en paralelo
(Carry lookahead adder) Ci+1 = ai bi + (ai + bi) Ci
Ci+1= G
i+ P
iCi
Ecuacin del acarreo en paralelo de las n etapas de un sumador de n bits. Si se denomina Ce al acarreo que se aplica a la primera etapa, resulta:
C1= G0 + P0 Ce
En la segunda etapa:C2 = G1+ P1C1= G1 + P1G0 + P1P0Ce
Cn = Gn-1 + Pn-1Gn-2 + Pn-1Pn-2Gn-3 + ... + Pn-1Pn-2 ... P1G0 + Pn-1Pn-2 ... P1P0Ce
P
CI
CG
QCP
G: Carry generator (CG)P: Carry propagator (CP)
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
OPERACIONES EN EL SISTEMADE NUMERACIN BINARIO
P
CI
CG
QCP
a 3
b 3
S 3
P 3
G 3
CPG
CI
CG0
CO
CP0
CG1
CP1
CG2
CP2
CG3
CP3
C 4
CPG
CI
CG0
CO
CP0
CG1
CP1
CG2
CP2
C 3
CPG
CI
CG0
CO
CP0
CG1
CP1C 2
CPG
CI
CG CO
CPC 1
P
CI
CG
QCP
a 2
b 2
S 2
P 2
G 2
P
CI
CG
QCP
a 1
b 1
S 1
P 1
G 1
P
CI
CG
QCP
a 0
b 0
C e
S 0
P 0
G 0
Resultado
de la suma
CPGCI
CG0CO0
CO2
CP0
CO1CG1
CP1
CG2
CP2
CG3
CP3
CO3
C
G 0
P 0
G 1
P 1
G 2
P 2
G 3
P 3
C 2
C 1
C 4
C 3
SUMADOR EN PARALELO DE VARIOS BITSSumador con generacin del acarreo en paralelo
CPG: Carry Propagator Generator
Ventaja: RapidezCaracterstica: No es modular
Smbolo lgico
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
OPERACIONES EN EL SISTEMADE NUMERACIN BINARIO
CPGCI
CG0CO0
CO2
CP0
CO1CG1
CP1
CG2
CP2
CG3
CP3
CO3 C 4
P
CI
CG
QCP
a 0
b 0
C e
G 0
P 0
P
CI
CG
QCP
a 1
b 1
G 1
P 1
P
CI
CG
QCP
a 2
b 2
G 2
P 2
P
CI
CG
QCP
a 3
b 3
G 3
P 3
S 1
S 0
S 3
S 2
Resultado
de la
suma
(CPG)0
1
2
3
P
0
1
2
3
CI
Q
0
1
2
3
CO
S 1
S 0
S 3
S 2
SUMADOR EN PARALELO DE VARIOS BITSSumador con generacin del acarreo en paralelo
Smbolo lgico
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
SUMADOR EN PARALELO DE VARIOS BITSSumador con generacin del acarreo en paralelo
SOLUCIONES INTERMEDIAS
Solucin lenta
Bloques funcionales con generacin del acarreo en paralelo conectados con propagacion del acarreoen serie
OPERACIONES EN EL SISTEMADE NUMERACIN BINARIO
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
CPGCI
CG0 CO0
CO2
CP0
CO1
CG1
CP1
CG2
CP2
CG3
CP3
CP
C e
G 0
P 0
G 1
P 1
G 2
P 2
G 3
P 3
C 2
C 1
P
C 3
CG G
(CPG)0
1
2
3
P
0
1
2
3
CI
Q
0
1
2
3
CP
CG
S 1
S 0
S 3
S 2
Smbolo lgico de un sumador de cuatro bits con generacin del acarreo en paralelo
SUMADOR EN PARALELO DE VARIOS BITSSumador con generacin del acarreo en paralelo
OPERACIONES EN EL SISTEMA DE NUMERACIN BINARIO
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
S 1
S 0
S 3
S 2
a 0
b 0
C e
a 1
b 1
a 2
b 2
a 3
b 3
(CPG)0
1
2
3
P
0
1
2
3
CI
Q
S 5
S 4
S 7
S 6
a 4
b 4
a 5
b 5
a 6
b 6
a 7
b 7
(CPG)0
1
2
3
P
0
1
2
3
CI
Q
S 9
S 8
S 11
S 10
a 8
b 8
a 9
b 9
a 10
b 10
a 11
b 11
(CPG)0
1
2
3
P
0
1
2
3
CI
Q
S 13
S 12
S 15
S 14
a 12
b 12
a 13
b 13
a 14
b 14
a 15
b 15
CPGCI
CG0 CO0
CO2
CP0
CO1
CG1
CP1
CG2
CP2
CG3
CP3
CP
CG
(CPG)0
1
2
3
P
0
1
2
3
CI
Q
0
1
2
3
CP
CG
0
1
2
3
CP
CG
0
1
2
3
CP
CG
0
1
2
3
CP
CG
Sumador de diecisis bits realizado con el sumador
y el circuito generador de acarreo de la pgina anterior.
SUMADOR EN PARALELO DE VARIOS BITSSumador con generacin del acarreo en paralelo
OPERACIONES EN EL SISTEMADE NUMERACIN BINARIO
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
RESTA BINARIA
Representacin de los nmeros negativos:
- Valor absoluto y signo
- Complemento a dos
- Complemento a uno
- Binario desplazado
OPERACIONES EN EL SISTEMA DE NUMERACIN BINARIO
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
COMPLEMENTO A DOS
1 0 0 0 0 0 0
- 0 1 0 0 1 1
BS
- 19 1 0 1 1 0 1
Se comprueba que se obtiene el mismo resultado invirtiendoel nmero binario equivalente a 19 y sumndole la unidad.
COMPLEMENTO A UNO
BS
- 1910 1 0 1 1 0 0
Ejemplo
OPERACIONES EN EL SISTEMA DE NUMERACIN BINARIO
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
BINARIO DESPLAZADO(BINARY OFFSET)
111011117
011001116
101010115
001000114
110011013
010001012
100010011
000000010
11111110-1
01110110-2
10111010-3
00110010-4
11011100-5
01010100-6
10011000-7
00010000-8
Binario natural en
complemento a dos
Codificacin en
binario desplazado
Exponent
e
decimal
OPERACIONES EN EL SISTEMA DE NUMERACIN BINARIO
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
OPERACIONES EN EL SISTEMADE NUMERACIN BINARIO
(CPG)0
1
2
3
P
0
1
2
3
CI
Q
0
1
2
3
CO
a 4
a 5
a 6
BS a
=1
=1
=1
=1
b 0
b 1
b 2
b 3
S 5
S 4
BS
S 6
(CPG)
0
1
2
3
P
0
1
2
3
CI
Q
0
1
2
3
CO
a 0
a 1
a 2
a 3
S 1
S 0
S 3
S 2
=1
=1
=1
=1
b 4
b 5
b 6
BS b
S/R
DETECTORDE
REBASAMIENTO
R
BS
BS 1
BS 2
BSBSBSBSBSBSR 2121 +=
Circuito sumador-restador de nmeros de siete bits y signo representados en el convenio del complemento a dos. OJO
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
UNIDAD ARITMTICA Y LGICA
Operaciones aritmticas Operaciones lgicas
R = A AR =
R = A + B BAR +=
BAR = BAR = R = -1 R = 0
BAMASAR = ABR =
BAMASB)A(R += BR = R = A MENOS B MENOS 1 BAR =
1MENOSBAR = BAR =
R = A MAS AB BAR +=
R = A MAS B BAR = ABMAS)BA(R += R = B
R = AB MENOS 1 R = AB
R = A MAS A desplaz. R = 1
R = (A + B) MAS A BAR +=
AMAS)BA(R += R = A + B R = A MENOS 1 R = A
ALU0
1
M0
31
4
CI
P 0
Q 0
P 1
Q 1
P 2
Q 2
P 3
Q 3
2
3
CP
CG
CO
P=Q
OPERACIONES EN EL SISTEMA DE NUMERACIN BINARIO
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
ALU0
1
M0
31
4
CI
2
3
CP
CG
CO
P=Q
P0
Q0
P1
Q1
P2
Q2
P3
Q3
CI
P0
Q0
P1
Q1
P2
Q2
P3
Q3
P0
Q0
P1
Q1
P2
Q2
P3
Q3
P0
Q0
P1
Q1
P2
Q2
P3
Q3
a0a
34
b0b
34
a4a
74
b4b
74
a8a
114
b8b
114
a12a
154
b12b
154
r0-r
3
4
Resultado
r4-r
7
4
r8-r
11
4
r12-r
15
4
5 5 5 5
R
a = b
+V
Entradas de
seleccin
ALU0
1
M0
31
4
CI
2
3
CP
CG
CO
P=Q
ALU0
1
M0
31
4
CI
2
3
CP
CG
CO
P=Q
ALU0
1
M0
31
4
CI
2
3
CP
CG
CO
P=Q
ALU0
1
M0
31
4
CI
2
3
CP
CG
CO
P=Q
P0
Q0
P1
Q1
P2
Q2
P3
Q3
CI
P0
Q0
P1
Q1
P2
Q2
P3
Q3
P0
Q0
P1
Q1
P2
Q2
P3
Q3
P0
Q0
P1
Q1
P2
Q2
P3
Q3
a0a
34
b0b
34
a4a
74
b4b
74
a8a
114
b8b
114
a12a
154
b12b
154
r0-r
3
4
Resultado
r4-r
7
4
r8-r
11
4
r12-r
15
4
5 5 5 5
R
a = b
+V
Entradas de
seleccin
ALU0
1
M0
31
4
CI
2
3
CP
CG
CO
P=Q
ALU0
1
M0
31
4
CI
2
3
CP
CG
CO
P=Q
ALU0
1
M0
31
4
CI
2
3
CP
CG
CO
P=Q
UNIDAD ARITMTICA CON PROPAGACIN DEL ACARREO EN SERIE
OPERACIONES EN EL SISTEMA DE NUMERACIN BINARIO
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
R
+V
CPGCI
CG0 CO0
CO2
CP0
CO1
CG1
CP1
CG2
CP2
CG3
CP3
CP
CG
ALU0
1
M0
31
4
CI
2
3
CP
CG
CO
P=Q
P 0
Q 0
P 1
Q 1
P 2
Q 2
P 3
Q 3
CI
P 0
Q 0
P 1
Q 1
P 2
Q 2
P 3
Q 3
P 0
Q 0
P 1
Q 1
P 2
Q 2
P 3
Q 3
P 0
Q 0
P 1
Q 1
P 2
Q 2
P 3
Q 3
a0a34
b0b34
a4a74
b4b74
a8a114
b8b114
a12a154
b12b154
r0-r3
4
r4-r7
4
r8-r11
4
r12-r15
4
5 5 5 5
a = b
Entradas de
seleccin
ALU0
1
M0
31
4
CI
2
3
CP
CG
CO
P=Q
ALU0
1
M0
31
4
CI
2
3
CP
CG
CO
P=Q
ALU0
1
M0
31
4
CI
2
3
CP
CG
CO
P=Q
Resultado
R
+V
CPGCI
CG0 CO0
CO2
CP0
CO1
CG1
CP1
CG2
CP2
CG3
CP3
CP
CG
ALU0
1
M0
31
4
CI
2
3
CP
CG
CO
P=Q
P 0
Q 0
P 1
Q 1
P 2
Q 2
P 3
Q 3
CI
P 0
Q 0
P 1
Q 1
P 2
Q 2
P 3
Q 3
P 0
Q 0
P 1
Q 1
P 2
Q 2
P 3
Q 3
P 0
Q 0
P 1
Q 1
P 2
Q 2
P 3
Q 3
a0a34
b0b34
a4a74
b4b74
a8a114
b8b114
a12a154
b12b154
r0-r3
4
r4-r7
4
r8-r11
4
r12-r15
4
5 5 5 5
a = b
Entradas de
seleccin
ALU0
1
M0
31
4
CI
2
3
CP
CG
CO
P=Q
ALU0
1
M0
31
4
CI
2
3
CP
CG
CO
P=Q
ALU0
1
M0
31
4
CI
2
3
CP
CG
CO
P=Q
Resultado
UNIDAD ARITMTICA CON PROPAGACIN DEL ACARREO EN PARALELO
OPERACIONES EN EL SISTEMA DE NUMERACIN BINARIO
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
OPERACIONES EN EL SISTEMADE NUMERACIN BINARIO
&a 0
b 0
P
&
&
&
&
b 0
b 1
b 2
b 3
P P 0
a 0
&
&
&
&
b 0
b 1
b 2
b 3
P P 1
a 0
&
&
&
&
b 0
b 1
b 2
b 3
a 1
P
CI
CO
Q
P
CI
CO
Q
P
CI
CO
Q
P
CI
CO
Q
0
0
MULTIPLICACIN BINARIA
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
OPERACIONES EN EL SISTEMADE NUMERACIN BINARIO
P 0&
&
&
&
b 0
b 1
b 2
b 3
a 0
P
CI
CO
Q
P
CI
CO
Q
P
CI
CO
Q
P
CI
CO
Q
0
0
&
&
&
&
b 0
b 1
b 2
b 3
a 1
P
CI
CO
Q
P
CI
CO
Q
P
CI
CO
Q
P
CI
CO
Q
0
&
&
&
&
b 0
b 1
b 2
b 3
a 2
P
CI
CO
Q
P
CI
CO
Q
P
CI
CO
Q
P
CI
CO
Q
0
P 1
P 2
P 3
P 4
P 5
P 6
P 7
0
0
0
&
&
&
&
b 0
b 1
b 2
b 3
a 3
P
CI
CO
Q
P
CI
CO
Q
P
CI
CO
Q
P
CI
CO
Q
0
MULTIPLICACIN BINARIA
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
a = 2410 (0 0 1 0 0 1 0 0)BCD natural b = 1710 (0 0 0 1 0 1 1 1) BCD natural
1
24 0 0 1 0 0 1 0 0
+ 17 + 0 0 0 1
0 1 1 1
41 0 1 0 0 1 0 1 1
+
0 1 1 0 Correccin
0 1 0 0 1 0 0 0 1
SUMA EN BCD NATURAL
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
a0-a3
C Dn
0
C Dn+1
b0-b3
CIRCUITO
CORRECTOR
DE LA SUMA
4
4
4
44
S Suma en
BCD natural
P
CI
CO
Q
P
CI
CO
Q
SUMA EN BCD NATURAL
Electrnica Digital: Circuitos y sistemas aritmticosEscuelas Tcnicas de Ingenieros Universidad de VigoDepartamento de Tecnologa Electrnica
R1 R1 + R2
R2 R2 + 01102
INICIO
FIN
R2 > 10012
NO
SI
ALGORITMO DE LA SUMA EN BCD NATURAL