tema2
TRANSCRIPT
1
Tema 2: Sistemas combinacionalesmultimódulo
1. Diseño con módulos estándar.2. Redes iterativas y en árbol.
Ampliación de Tecnología de Computadores
1. Diseño con módulos estándar
IntroducciónVentajas del diseño modularMódulos combinacionales estándar
Sistemas multimódulo: redes combinacionalesmodulares
Redes de decodificadores y codificadoresArboles de multiplexoresRedes de demultiplexoresDiseño con ROMs, PLAs, PALs.
2
Ampliación de Tecnología de Computadores
Redes de decodificadores
Decodificador coincidente: diseñar un decodificador de n entradas usando 2 decodificadores de (n/2) entradas y 2n puertas AND.
01
7
1
28 -1
0 y0y1
y 255Dec
odi f.
bin
ario
x0x1
x7
E
E E15 2 1 0 15 4. 2 1 0
x7 x6 x5 x4 x3 x2 x1 x0
. . .... . . ..
. . . . . .
z255 z36 z0
x7 x6 x5 x4 x3 x2 x1 x01 1 1 1 1 1 1 1Línea 15 DEC2 = 1Línea 15 DEC1 = 1 ⇒ z255 = 1
DEC2 DEC1
x7 x6 x5 x4 x3 x2 x1 x00 0 1 0 0 1 0 0Línea 2 DEC2 = 1Línea 4 DEC1 = 1 ⇒ z36 = 1
Necesito Implemento
Ampliación de Tecnología de Computadores
Decodificación coincidente: generalizaciónxn/2 - 1 ............ x0
DEC W2n/2 -1 s 0
0
t
2n/2 -1
DEC
Y
xn/2
..
.
..
xn -1
2n/2 -1z
2n -1z
zi
z0
2n - 2n/2z
Se puede generalizar para módulos con
menos de n/2 entradas
3
Ampliación de Tecnología de Computadores
Redes de decodificadores (II)
Arbol de decodificadores (de 2 niveles): diseñar un decodificador de n entradas usando 2(n/2) + 1 decodificadores de (n/2) entradas.
x D
…
EDecodifi-
cador
…
EDecodifi-
cador
…
EDecodifi-
cador
…
EDecodifi-
cador
……
… …
xn-1
xn/2
x I
xn/2-1
x0
x D x D
… … … … … …
z 2n-1 zi z0
Se puede generalizar a r niveles
Ampliación de Tecnología de Computadores
Redes de codificadores
Diseñar un codificador de 2n entradas usando 2(n/2) +1 codificadores de 2(n/2) entradas y puertas lógicas (O-cableada).
4
Ampliación de Tecnología de Computadores
Arbol de multiplexores
De 2 niveles: diseñar un multiplexor de n entradas de selección usando 2(n/2) + 1 multiplexores de (n/2) entradas de selección.
s D
…
E
…
MUX
… …… …
… …
sn-1
sn/2
s I
sn/2-1
s0
s D s D
… … … … … …
x
2n-1 x0
MUX MUX
x
2n-2n/2
MUX1
E 1E 1 E
xn/2-1
Palabra de selección:sn-1… sn/2 | sn/2-1 …s0
s Ds I
z
Generalizable a r niveles
Ampliación de Tecnología de Computadores
Redes de demultiplexores
Demultiplexor de n a 2n
Es igual que un decodificador con entrada de datos.La red es igual que la de decodificadores.
E
Sn
x
Z0
Z1
Z (2n-1)
12,...1,0
),....,(.. 01
−=∀
= −
nnii
issmxEZ
5
Ampliación de Tecnología de Computadores
Redes de demultiplexores (II)
s D
…
Decodifi-cador
…
Decodifi-cador
…
Decodifi-cador
…
Decodifi-cador
……
… …
sn-1
sn/2
s I
sn/2-1
s0
s D s D
… … … … … …
z 2n-1 zi z0
Ampliación de Tecnología de Computadores
Diseño con ROMs, PLAs y PALs
Objetivo:Diseñar w funciones de n variables (y v términos producto)Usando módulos de r salidas y k entradas (y m puertas AND en el caso de PLAs)
Posibles casos:Más variables que entradas (n>k)Más funciones que salidas (w>r)Sólo para PLAs: más términos producto que puertas AND (v>m).
6
Ampliación de Tecnología de Computadores
Sistemas con muchas variables: teorema de expansión de Shannon
Descomposición de expresiones de conmutación
Ejemplo: n=5, k=3
),...,,(.),...,(),...,( 01
12
0101 xxifxxmxxf k
iknin
kn
−
−
=−− ∑
−
=
),,,3(..),,,2(..
),,,1(..),,,0(..
),...,,(.),(),...,(
0123401234
0123401234
02
12
03404
2
xxxfxxxxxfxx
xxxfxxxxxfxx
xxifxxmxxfi
i
+
++
== ∑−
=
Función de k
variables
Módulo de k
entradas
Ampliación de Tecnología de Computadores
Sistemas con muchas variables (n>k)
Usar 2(n-k) módulos y utilizar una de las 2 alternativas:Activar selectivamente los módulos y conectar salidas con O-cableada.Seleccionar la salida del módulo adecuado.
E E E
2n-k -1 0
n- k
(Xn-1,…., xk)
E1
Decodificador
ROM 0ROM 2n-k -2ROM 2n-k -1
k
(XK-1,., x0)
f
E E E
n- k
(Xn-1,…., xk)2n-k -1 0
E1
Multiplexor
ROM 0ROM 2n-k -2ROM 2n-k -1
k
(XK-1,., x0)
f
1 1 1
7
Ampliación de Tecnología de Computadores
Sistemas con muchas funciones (w>r)
Usar (w/r) módulos y conectarlos en paralelo.
ROM
1−rw
ROMi
ROM0
k k
k
k
f0
fr-1
fi-r
f(i+1) r-1
fw- r
fw- 1
x
Ampliación de Tecnología de Computadores
Sistemas con muchos términos producto
Sólo para PLAs.Se usan los módulos necesarios para generar todos los términos producto (v/m) y se conectan sus salidas:
Puertas ORO-cableada
PLA 0
x
PLA 1
PLA
v/m
-1
f0
fn-1
f00
f01
fv/m-10
f0m-1
f1m-1
fv/m-1m-1
8
Ampliación de Tecnología de Computadores
2. Redes iterativas y en árbol
IntroducciónModularRegular y de conexiones sencillas
Redes iterativasRedes de una dimensión.Redes bidimensionales.
Redes más rápidasRedes de anticipación.Redes de árboles.
Ampliación de Tecnología de Computadores
Red iterativa: Formada por módulos idénticos Conectados en serie, de forma que un módulo sólo puede estar conectado con sus vecinos.
Implementación de una función de n variables usando una red iterativa de orden k:
Cada módulo procesa k variables hay (n/k) módulos.Todos iguales menos el último (y posiblemente el primero)
Red iterativa de una dimensión
9
Ampliación de Tecnología de Computadores
Ejemplo: lo sombreado es opcional
Retardo para calcular la salida interna de una celda: ∆cpara calcular la salida externa de una celda: ∆zTotal: ((n/k)-1). ∆c + max(∆c, ∆z)
Red iterativa de una dimensión (II)
Celda 0
Xk-1,...,X0
C0C1
Z0
Celda (n/k)-1
Xn-1,...,Xn-k
C(n/k)-1Cn/k
Z(n/k)-1
Ampliación de Tecnología de Computadores
Obtención de la red
1. Determinar el valor de kEquilibrio entre complejidad del bloque y número de bloques.
2. Determinar el conjunto de valores que se deben trasmitir entre módulos: las variables internas C.
3. Obtener una especificación de la celda: valores de salidas externas (si las hay) e internas en función de entradas externas e internas.
4. Obtener las expresiones de conmutación.5. Simplificar las celdas inicial y final teniendo en
cuenta las condiciones de contorno.
10
Ampliación de Tecnología de Computadores
Obtención de la red: ejemplo 1
Diseñar un comparador de magnitud iterativo cuyas entradas son 2 números binarios, A y B, de n bits cada uno y cuya salida indica si A>B, A=B o A<B.
K = 1 (más sencillo y lento)Ci+1: g si (Ai,...,A0)>(Bi,...B0),
e si (Ai,...,A0)=(Bi,...B0), s si (Ai,...,A0)<(Bi,...B0)
Especificación de la celda i-ésima: Ci+1 = F(Ci,Ai,Bi)
Ci AiBi= 00 01 10 11
g g s g g
e e s g e
s s s g s
Ampliación de Tecnología de Computadores
Obtención de la red: ejemplos 2 y 3
Diseñar una red iterativa para un sistema con n entradas (Xn-1,...X0) y una salida Z que vale 1 si y sólo si ∃i 0≤i ≤n tal que Xi=1, Xi+1=0 y Xi+2=1.
Diseñar una red de resolución de prioridades iterativa con n entradas y n salidas. La salida Zi=1 si Xi=1 y Xj=0∀j>i.
11
Ampliación de Tecnología de Computadores
Red iterativa bidimensional
Conjunto de nxm celdas idénticas dispuestas formando una matriz de n filas y m columnas.Cada celda se conecta con las cuatro vecinas.
Ri,j-1
En la fila i-ésima R pasa la información de la columna 0 a la m-1
Celda (i,j)
Ci-1,j
Ri,j
Zi,jCi,j
Xi,j
En la columna j-ésimaC pasa la información de la fila 0 a la n-1
Ampliación de Tecnología de Computadores
Obtención de la red bidimensional: ejemplo
Diseñar una red iterativa bidimensional como una matriz de nxn variables de entrada y una matriz de salida de nxn tal que: z(i,j) = 1 si el número de entradas que valen 1 en la sub-matriz de i filas y j columnas es impar.
12
Ampliación de Tecnología de Computadores
Ejemplo 2 de red bidimensional: multiplicador combinacional
Obtener una red iterativa 2nxn que calcule el producto de dos números binarios A y B de n bits:
utilizando el algoritmo que se emplea para multiplicar con lápiz y papel: cada fila calcula la multiplicación de un operando por un bit del otro más la suma parcial anteriorEjemplo: n=4, A=1001, B=0101
1 0 0 1 A0 1 0 1 B1 0 0 1 S0
0 0 0 0 S11 0 0 1 S2
0 0 0 0 S30 1 0 1 1 0 1 M
M0=AxB0
M1 =M0 +AxB1
M2=M1+AxB2
M3=M2+AxB3
Ampliación de Tecnología de Computadores
Ejemplo 2 de red bidimensional: multiplicador combinacional (II)
Cada celda i,j realiza la suma del bit j de Mi
Bi
Mi-1,j
Bi
Cout
Mi,j
Xi,j
Cin+
Aj-i si 0 ≤ j-i < nXi,j =
0 c.c.
13
Ampliación de Tecnología de Computadores
Redes más rápidas: redes de anticipación
Las redes iterativas son útiles para funciones con muchas entradas Por su estructura regularPor el bajo número de módulos
Pero son lentas debido a la propagación de variables internas.Solución: usar una red iterativa y acelerar la propagación de variables internas.
Se usa la técnica de anticipación: las variables que hay que propagar se calculan por separado y se aplican a todos los módulos a la vez.
Ejemplo: red de resolución de prioridades con anticipación.Añadir anticipación a la red iterativa del ejemplo 3.
Calcular el retardo de la red con anticipación.
Ampliación de Tecnología de Computadores
Redes más rápidas: redes de árboles
Es la implementación más rápida usando módulos con número de entradas limitado.Una red en árbol de 2 niveles usando módulos de k entradas:
1er nivel: Descompone la función en (n/k) funciones de k variables y p salidas,2do nivel: Calcula la función en términos de las salidas de las anteriores.
P<<k
G0
Xk-1,...,X0
V0
G(n/k)-1
Xn-1,...,Xn-k
V(n/k)-1
F
Z
14
Ampliación de Tecnología de Computadores
Redes de árboles: ejemplo
Diseñar el comparador de magnitud (ejemplo 1) usando una red en árbol de 2 niveles.
Generalización a r niveles:
Ampliación de Tecnología de Computadores
Solución al ejemplo 2 de red iterativa
Diseñar una red iterativa para un sistema con n entradas (Xn-1,...X0) y una salida Z que vale 1 si y sólo si ∃i 0≤i ≤n tal que Xi=1, Xi+1=0 y Xi+2=1.
15
Ampliación de Tecnología de Computadores
Ejercicio: red iterativa y red de árbol
Diseñar un sistema que recibe como entradas 16 números binarios de 2 bits cada uno y cuya salida es el menor de ellos.