tema2

15

Click here to load reader

Upload: dantenocturno

Post on 05-Dec-2014

58 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Tema2

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.

Page 2: Tema2

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

Page 3: Tema2

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).

Page 4: Tema2

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

Page 5: Tema2

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).

Page 6: Tema2

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

Page 7: Tema2

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

Page 8: Tema2

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

Page 9: Tema2

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.

Page 10: Tema2

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.

Page 11: Tema2

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.

Page 12: Tema2

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.

Page 13: Tema2

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

Page 14: Tema2

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.

Page 15: Tema2

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.