circuitos aritméticos digitales (1)
Post on 30-Sep-2014
147 Views
Preview:
TRANSCRIPT
1
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS TEMA 11. CIRCUITOS
ARITMARITMÉÉTICOS DIGITALESTICOS DIGITALES
IEEE 125 Aniversary: http://www.flickr.com/photos/ieee125/with/2809342254/
http://www.tech-faq.com/wp-content/uploads/images/integrated-circuit-layout.jpg
2
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS TEMA 11. CIRCUITOS
ARITMARITMÉÉTICOS DIGITALESTICOS DIGITALES
-- IntroducciIntroduccióónn
-- ContadoresContadores
-- ComparadoresComparadores
-- Sumadores. RestadoresSumadores. Restadores
-- Multiplicadores. DivisoresMultiplicadores. Divisores
3
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
INTRODUCCIINTRODUCCIÓÓNN
�� El cEl cáálculo aritmlculo aritméético desempetico desempeñña un papel crucial en el a un papel crucial en el procesamiento de informaciprocesamiento de informacióónn
�� Vamos a examinar algunas de las operaciones mVamos a examinar algunas de las operaciones máás bs báásicas: las sicas: las primeras que veremos son las acciones de contar y ordenar, innatprimeras que veremos son las acciones de contar y ordenar, innatas as en el ser humanoen el ser humano
�� Los circuitos que veremos son una parte fundamental de las Los circuitos que veremos son una parte fundamental de las unidades aritmunidades aritmééticotico--llóógicas, componentes de las gicas, componentes de las CPUsCPUs
4
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
CONTADORESCONTADORES
�� Un contador es un circuito que almacena el nUn contador es un circuito que almacena el núúmero de veces que mero de veces que ha tenido lugar un determinado proceso o eventoha tenido lugar un determinado proceso o evento
�� PoseerPoseeráá, por tanto, una sola entrada, por tanto, una sola entrada
�� Su forma de operaciSu forma de operacióón sern seráá secuencialsecuencial
�� PodrPodráán contar o no con un relojn contar o no con un reloj
�� Veamos un ejemploVeamos un ejemplo
5
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
CONTADORCONTADOR
�� Contador binario sContador binario sííncrononcrono (de 0 a 7)(de 0 a 7)
�� El primer paso en la sEl primer paso en la sííntesis de este circuito es, como ya se ha ntesis de este circuito es, como ya se ha visto, determinar el diagrama de estado y asignar las variables visto, determinar el diagrama de estado y asignar las variables de de estado, que nos direstado, que nos diráán cuantos n cuantos biestablesbiestables vamos a necesitarvamos a necesitar
�� Recordemos que la entrada es Recordemos que la entrada es úúnica, y que las transiciones entre nica, y que las transiciones entre estados tendrestados tendráán lugar en conjuncin lugar en conjuncióón con el pulso de relojn con el pulso de reloj
0
1
2
3 4
5
6
7
Figura 24.1.- Diagrama de
000
001
010
011 100
101
110
111
CBA (variables de
estado, salidas)
D. Pardo, et al. 1999
6
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
CONTADORES: CONTADORES: Contador binario sContador binario sííncrononcrono
�� SerSeráán necesarios 3 n necesarios 3 biestablesbiestables, por lo que , por lo que habrhabráá tres variables de estado A, B y Ctres variables de estado A, B y C
�� Vamos a emplear Vamos a emplear flipflip--flopsflops JKJK
�� A partir de aquA partir de aquíí, tenemos las siguientes , tenemos las siguientes tablas de excitacitablas de excitacióón:n:
C B
x 00 01 11 10
JA ,KA
0 *
* 0
0 *
* 0
0 *
* 0
0 *
* 0
* 1 * 1 * 1 * 1
1 * 1 * 1 * 1 *
A
C B
x 00 01 11 10
JB ,KB
0 *
0 *
* 0
* 0
0 *
0 *
* 0
* 0
1 * * 1 * 1 1 *
0 * * 0 * 0 0 *
A
C B
x 00 01 11 10
JC ,KC
0 *
0 *
0 *
0 *
* 0
* 0
* 0
* 0
0 * 1 * * 1 * 0
* 0 * 0 0 * 0 *
A
00 00 00
01 01 01
11 11 11
10 10 10
Tabla de Excitación
Qn J K Qn+1
0 0 × 0
0 1 × 1
1 × 1 0
1 × 0 1
D. Pardo, et al. 1999
7
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
�� Las ecuaciones correspondientes serLas ecuaciones correspondientes seráánn, ,
,
,
A A
B B
C C
J x K x
J xA K xA
J xBA K xBA
= =
= =
= =
T QC
QC CP
T QB
QB
CP
T QA
QA CP
A B C
Entrada x
CP
x
x
�� Si la entrada es 1, cuando es activo el pulso de reloj se pasa Si la entrada es 1, cuando es activo el pulso de reloj se pasa al al siguiente estadosiguiente estado
�� TambiTambiéén se puede tomar como entrada la sen se puede tomar como entrada la seññal de reloj y x=1, al de reloj y x=1, de este modo se cuentan pulsos de relojde este modo se cuentan pulsos de reloj
J=K, por lo que J=K, por lo que pueden usarse pueden usarse flipflip--flopsflops TT
CONTADORES: CONTADORES: Contador binario sContador binario sííncrononcrono
D. Pardo, et al. 1999
8
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
T0 Q0
Q0
T1 Q1
Q0
T2 Q2
Q0 CP CP CP
“1” “1” “1”
I
I
Q0
Q1
Q2
�� Opera de forma asOpera de forma asííncrona pues el cambio de estado de los flipncrona pues el cambio de estado de los flip--flopsflops no tiene lugar simultno tiene lugar simultááneamente con la entrada, sino que neamente con la entrada, sino que ocurren consecutivamente, pues la salida de cada flipocurren consecutivamente, pues la salida de cada flip--flopflop es el es el reloj del siguientereloj del siguiente�� La frecuencia de operaciLa frecuencia de operacióón se ve penalizadan se ve penalizada
CONTADORES: CONTADORES: Contador binario AsContador binario Asííncrononcrono
D. Pardo, et al. 1999
9
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
CONTADORES: CONTADORES: ejercicios propuestos 1 y 2 libroejercicios propuestos 1 y 2 libro
�� Contador asContador asííncrono hasta 5ncrono hasta 5
D. Pardo, et al. 1999
10
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
COMPARADORESCOMPARADORES
�� Son los circuitos mSon los circuitos máás simples que existen que trabajan con dos s simples que existen que trabajan con dos nnúúmerosmeros
�� El resultado de la comparaciEl resultado de la comparacióón puede ser mayor que, menor que, n puede ser mayor que, menor que, mayor o igual que, menor o igual que, o simplemente igualesmayor o igual que, menor o igual que, o simplemente iguales
A B 0
0
0
0
0 1
1
1
A B 0
0
1
1
0 1
1
1
A B 0
0
1
1
0 1
1
0
A B 0
0
1
1
1 1
1
0
A B 0
0
0
0
1 1
1
0
A
B
AB A
B
A+B A
B
B+A
B
A AB
A>B A≥B A=B A≤B A<B
A
B
A⊕B
D. Pardo, et al. 1999
11
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
COMPARADORESCOMPARADORES
�� Si se quiere efectuar la comparaciSi se quiere efectuar la comparacióón entre varios bits, para ver si n entre varios bits, para ver si ambos son iguales se puede hacer comparado ambos son iguales se puede hacer comparado bitbit a a bitbit con puertas con puertas XX--NORNOR
A0
B0
A1
B1
A2
A3
B2
B3
A=B
Circuito detector de igualdad
0123
0123
BBBB
AAAA
D. Pardo, et al. 1999
12
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
COMPARADORESCOMPARADORES
�� Si se quiere ver si un nSi se quiere ver si un núúmero es mayor que otro, empezaremos mero es mayor que otro, empezaremos por el por el bitbit mmáás significativo, hasta llegar a los menos (en caso s significativo, hasta llegar a los menos (en caso necesario: ejemplo, ver si necesario: ejemplo, ver si AA
22AA11AA00> > BB
22BB11BB00
[ ]2 1 0 2 1 0 2 2 2 2 1 1 1 1 0 0
2 2 2 2 1 1 1 1 0 0
( ) ( ) ( ) ( ) ( )( )
( )
A A A B B B A B A B A B A B A B
A B A B A B A B A B
> = > + = > + = > =
= + ⊕ + ⊕ A0
A1
A1
A2
A2
B0
B1
B2
B1
B2
A2A1A0>B2B1B0
Circuito comparador de dos números de 3 bits: A > B
012
012
BBB
AAA
D. Pardo, et al. 1999
13
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
SUMADORESSUMADORES
�� SemisumadorSemisumador binario (SSB): es el circuito sumador mbinario (SSB): es el circuito sumador máás simples simple
SSBSSBAA
BB
CC
SS
http://html.rincondelvago.com/000359903.png
http://www.esacademic.com/dic.nsf/eswiki/1114728
14
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
SUMADORESSUMADORES
�� Sumador binario completo (SBC): incluye una entrada adicional Sumador binario completo (SBC): incluye una entrada adicional correspondiente al arrastre de la etapa anterior (acarreo previocorrespondiente al arrastre de la etapa anterior (acarreo previo))
)(· BACBAC io ⊕+=
BACS i ⊕⊕=
http://asicdigitaldesign.files.wordpress.com/2007/05/fa_01.png
15
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
SUMADORESSUMADORES
�� La realizaciLa realizacióón del circuito sern del circuito seráá::
�� O tambiO tambiéén con la composicin con la composicióón de dos n de dos semisumadoressemisumadores binariosbinarios
SSBSSBSSBSSB
AA
BB
CCii
CCoo
SS
)(· BACBAC io ⊕+=
BACS i ⊕⊕=
BA·
)( BACi ⊕BA⊕
http://www.esacademic.com/dic.nsf/eswiki/1114728
http://html.rincondelvago.com/000359903.png
16
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
SUMADORES DE VARIOS BITSSUMADORES DE VARIOS BITS
�� RealizaciRealizacióón en paralelo con propagacin en paralelo con propagacióón del arrastren del arrastre
��RealizaciRealizacióón secuencial en serien secuencial en serie
http://azul2.bnct.ipn.mx/clogicos/multivibradores/graficos(.gif)/Cs_128.gif
http://www.virtual.unal.edu.co/cursos/ingenieria/2000477/lecciones/031001.htm
17
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
REPRESENTACIREPRESENTACIÓÓN DE NN DE NÚÚMEROS BINARIOSMEROS BINARIOS
�� RepresentaciRepresentacióón magnitudn magnitud--signosigno
•• Consiste en representar el nConsiste en representar el núúmero en binario natural, amero en binario natural, aññadiendo a la adiendo a la izquierda un cero si es positivo y un uno si es negativo (requieizquierda un cero si es positivo y un uno si es negativo (requiere re circuitos diferentes para la suma y la resta)circuitos diferentes para la suma y la resta)
�� Complementos: se emplean para Complementos: se emplean para ““convertirconvertir”” restas en sumas, y restas en sumas, y asasíí poder emplear el mismo circuitopoder emplear el mismo circuito
�� Complemento a la base o Complemento a la base o complemento a 2complemento a 2: : NN++CCbb((NN)=)=bbnn
•• En binario corresponde con la complementaciEn binario corresponde con la complementacióón del nn del núúmero + 1mero + 1
�� RestricciRestriccióón de la base o n de la base o complemento a 1complemento a 1: : NN++CCbb--11((NN)=)=bbnn--11
•• En binario corresponde con la complementaciEn binario corresponde con la complementacióón del nn del núúmeromero
http://www.profesormolina.com.ar/electronica/componentes/int/sist_arim.htm
18
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
RESTADORESRESTADORES
�� Otra de las operaciones aritmOtra de las operaciones aritmééticas que se realizan con mucha ticas que se realizan con mucha frecuencia en Electrfrecuencia en Electróónica Digital es la restanica Digital es la resta
�� Podemos realizar el circuito de manera directa a partir de la tPodemos realizar el circuito de manera directa a partir de la tabla abla de verdad y empleando la representacide verdad y empleando la representacióón de signon de signo--magnitudmagnitud
Ai Bi Ci-1 Di Ci
0
0
1
1
0
1
0
0
0
0
0 1
0
0 0 1
1
0
1
1 0
0 0
1 1
0 1 1 0 1
1
1
0 1
1 1
0
1
0
1
1
1
1
( )
( )
( )
i i i i
i i i i i i
i i i i i
D A B C
C A B A B C
A B A B C
−
−
−
= ⊕
= + + =
= + ⊕
D. Pardo, et al. 1999
19
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
RESTADORESRESTADORES
�� Aprovechamos el circuito sumador empleando el convenio de Aprovechamos el circuito sumador empleando el convenio de complemento a 2, de modo que las restas se conviertan en sumascomplemento a 2, de modo que las restas se conviertan en sumas
�� Este es un ejemplo realizado con la ayuda de un multiplexorEste es un ejemplo realizado con la ayuda de un multiplexor
Multiplexor S
Sumador completo
B0 B1 B2 B3 A3 A2 A1 A0
C3
S0 S1 S2 S3
C0
Selección de
operación:
0 → A+B
1 → A-B
Sumador/Restador por complemento
D. Pardo, et al. 1999
20
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
RESTADORESRESTADORES
�� Veamos otro ejemplo mVeamos otro ejemplo máás s detallado basado en el detallado basado en el sumador previamente vistosumador previamente visto
Sumador/Restador de 4 bits
http://www.cmelectronics.8m.com/circuitos_aritmeticos.html
21
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
MULTIPLICADORESMULTIPLICADORES
�� La forma mLa forma máás bs báásica de sica de multiplicacimultiplicacióón es la basada en n es la basada en el algoritmo de el algoritmo de ““lláápiz y papelpiz y papel””. . Ej. NEj. Núúmeros de 4 bits:meros de 4 bits:
��En general:En general:
http://gemini.udistrital.edu.co/comunidad/profesores/spinzon/docs/sisBinario.pdf
http://www.virtual.unal.edu.co/cursos/ingenieria/2000477/lecciones/031301.htm
22
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
MULTIPLICADORESMULTIPLICADORES
�� Vamos a definir el siguiente Vamos a definir el siguiente elemento funcional, para el que elemento funcional, para el que necesitamos una puerta AND y un necesitamos una puerta AND y un SBCSBC
� De este modo, necesitarDe este modo, necesitarííamos 12 amos 12 SBCSBC’’ss para realizar la operacipara realizar la operacióónn
http://www.virtual.unal.edu.co/cursos/ingenieria/2000477/lecciones/031301.htm
23
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
MULTIPLICADORESMULTIPLICADORES
�� Existen otras alternativas mExisten otras alternativas máás eficientes, empleando registros de s eficientes, empleando registros de desplazamiento y acumuladores en combinacidesplazamiento y acumuladores en combinacióón con los sumadores n con los sumadores binarios, y efectuando la multiplicacibinarios, y efectuando la multiplicacióón secuencialmenten secuencialmente
�� Existen tambiExisten tambiéén multiplicadores de n multiplicadores de ““alta velocidadalta velocidad”” que se basan que se basan en configuraciones men configuraciones máás complejas, generando ms complejas, generando máás rs ráápidamente la pidamente la suma de los productos parciales optimizando la propagacisuma de los productos parciales optimizando la propagacióón de los n de los acarreos o utilizando algoritmos de multiplicaciacarreos o utilizando algoritmos de multiplicacióón alternativosn alternativos
24
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
DIVISORESDIVISORES
�� Se puede efectuar la divisiSe puede efectuar la divisióón de manera ann de manera anááloga a la multiplicaciloga a la multiplicacióón n (m(méétodo de todo de ““lláápiz y papelpiz y papel””))
�� Para un nPara un núúmero pequemero pequeñño de bits se pueden realizar diseo de bits se pueden realizar diseñños os combinacionalescombinacionales basados en restadoresbasados en restadores
�� Para un nPara un núúmero de bits elevado, es preferible el disemero de bits elevado, es preferible el diseñño de divisores o de divisores secuencialessecuenciales
http://gemini.udistrital.edu.co/comunidad/profesores/spinzon/docs/sisBinario.pdf
25
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS TEMA 11. CIRCUITOS
ARITMARITMÉÉTICOS DIGITALESTICOS DIGITALES
26
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
PROBLEMASPROBLEMAS
1. Dise1. Diseññar una unidad aritmar una unidad aritmééticotico--llóógica (ALU) con dos entradas de gica (ALU) con dos entradas de datos datos DD
11, , DD22 (d(díígitos de 1 gitos de 1 bitbit) y dos salidas ) y dos salidas zz
11y y zz
22. Dicha ALU debe . Dicha ALU debe
realizar las siguientes operaciones:realizar las siguientes operaciones:
D. Pardo, et al. 1999
27
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
PROBLEMASPROBLEMAS
1. Soluci1. Solucióón:n:
D. Pardo, et al. 1999
28
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
TEMA 11. CIRCUITOS ARITMTEMA 11. CIRCUITOS ARITMÉÉTICOS DIGITALESTICOS DIGITALES
PROBLEMASPROBLEMAS
1. Soluci1. Solucióón:n:
D. Pardo, et al. 1999
29
Raúl Rengel Estévez: raulr@usal.esMaría Jesús Martín Martínez : mjmm@usal.es
� 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
top related