Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Evaluativo 1 de teoría
1. Sistemas de numeración
Binario: Este sistema utiliza únicamente 2 dígitos (0 y 1), donde su dígito menor es 0 y su
dígito mayor es 1. Se dice que tiene una raíz 2 y comúnmente se denomina Sistema de
Numeración en base 2.
Cada dígito se denomina Bit. El bit menos significativo es el de la posición extremo derecha y
el más significativo es el del extremo derecho.
A cada posición se le asigna una potencia de 2 (peso). La menor es realmente 20. Luego hacia
la izquierda el valor de este exponente aumenta hasta llegar al bit más significativo, donde el
peso es 2n-1.
Cuando se trabaja con números binarios, en general se está restringido a utilizar un número
restringido de bits. Esta restricción se basa en la circuitería que se usa para representar estos
números binarios.
Es los sistemas digitales, la información que se está procesando por lo general se presenta en
forma binaria debido a que estas cantidades pueden representarse por medio de cualquier
dispositivo que sólo tenga dos estados de operación. Las PC trabajan internamente con dos
niveles de voltaje (encendido – apagado) por lo que su sistema de numeración natural es el
binario.
Octal: Este sistema es muy importante en el trabajo que se realiza en una computadora digital.
Su base es 8, lo cual significa que tiene 8 posibles dígitos (0, 1, 2, 3, 4, 5, 6 y 7). De esta manera,
cada dígito de un número octal puede tener cualquier valor de 0 a 7. Las posiciones de los dígitos
en este sistema tienen los siguientes valores:
Hexadecimal: Este sistema tiene raíz 16 y por esta razón se denomina Sistema de numeración
en base 16. Utiliza los siguientes símbolos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E y F debido a
que necesita 16 símbolos.
1
Víctor M. Zumaeta Diseño Lógico I - Teoría
La ventaja de este sistema es que es útil para convertir directamente números binarios de 4
bits. Cada uno de estos números de 4 bits pueden ser representados por un único dígito
hexadecimal. En este sistema, dos dígitos representan un byte y 2n dígitos representan una
palabra de n bytes.
a). De cualquier base a base decimal y viceversa: Para realizar esta conversión, utilizo la
siguiente fórmula: (An An-1… A0)B = A0 x B0 + A1 x B1 + … + An-1 x Bn-1 + An x Bn
Ejemplo: Binario a Decimal
Se inicia por el lado derecho del número en binario y a cada dígito debo multiplicarlo por 2 (es
decir su base) elevado a la potencia consecutiva (comenzando por la potencia cero). Después de
realizar todas las multiplicaciones, las sumo a todas y el número resultante será el equivalente en
decimal. Ej. (110)2 = 0 x 20 + 1 x 21 + 1 x 22 = (6)10
Para pasar de decimal a cualquier base realizamos divisiones sucesivas en la base a la que
deseamos transformar. Una vez llegado al final, se cuenta el último cociente seguido de los
restos de las divisiones anteriores, desde el más reciente hasta el primero que resultó. El número
formado por dichos dígitos será el equivalente buscado. Ej. (46)10 = (101110)2
d). Para convertir de base 8 a base 16 y viceversa, debemos realizar la conversión a decimal
como paso intermedio.
2
Víctor M. Zumaeta Diseño Lógico I - Teoría
3. Aritmética binaria
Suma:
+ 0 1 1001 9
0 0 1 + 101 ≡ +5
1 1 0 ↑ 1110 14
Resta:
- 0 1 1000 8
0 0 1 ↓ - 101 ≡ - 5
1 1 0 011 3
Multiplicación:
x 0 1 1000
0 0 0 x 101
1 0 1 1000
+1000-
101000
División: Esta operación se realiza de idéntica forma que si se tratara de decimales, el único
cuidado que hay que tener es que la resta en la división es una resta binaria. (Hacer un ejemplo)
Con Magnitud y Signo: se hace uso de una posición de bit extra para representar el signo
(bit de signo). El bit más significativo es empleado como bit de signo y los bits de menor orden
contienen la magnitud. Este sistema tiene dos desventajas: doble representación del cero y no se
puede operar aritméticamente. Ejemplo para un número de 4 bits:
b3 b2 b1 b0
+5: 0101
+4: 0100
+3: 0011
+2: 0010
+1: 0001
0: 0000
0: 0001
-1: 1001
-2: 1010
-3: 1011
-4: 1100
-5: 1101
3
Víctor M. Zumaeta Diseño Lógico I - Teoría
Código Gray: es un código sin peso donde cada incremento en la cuenta está acompañado
solamente por el cambio de estado de un bit.
Ejemplo:
4
Víctor M. Zumaeta Diseño Lógico I - Teoría
Actualmente se utiliza el código ASCII Extendido, que utiliza 8 bits y general 256 caracteres
diferentes, incluidos los caracteres especiales de cada país.
El álgebra clásica de Boole expresa el pensamiento lógico en forma matemática. Tiene una
cantidad finita de elementos. En el caso del álgebra clásica de Boole, estos elementos son dos:
C = {0, 1}
Los operadores de Boole son: OR, AND y NOT
Propiedades:
Sea a, b, c Є C, entonces:
Idempotencia: a = a a + a = a a.a=a
Transitiva: a = b y b = c ⇒ a = c
Conmutativa de la suma: a + b = b + a
Conmutativa del producto: a . b = b . a
Asociativa: a + (b + c) = (a + b) + c = a + b + c
a . (b . c) = (a . b) . c = a . b . c
Distributiva del Producto respecto de la suma: a . (b + c) = a.b + a.c
Distributiva de la Suma respecto del producto: a + (b . c) = (a+b) . (a+c)
Elementos neutros: a + 0 = a
a.1=a
a = 0 ⇒ a =1
Negación: a + a =1
a .a = 0
OR (+): AND ( . ):
a 0 1 a 0 1
b b
0 0 1 0 0 0
1 1 1 1 0 1
NOT:
a a
0 1
1 0
El operador AND se comporta como un circuito eléctrico con llaves conectadas en serie.
El operador OR se comporta como un circuito eléctrico con llaves conectadas en paralelo.
Teorema de De Morgan:
• (a + b + ... + n ) = a . b . ... n
• (a . b . .......n) = a + b + ... + n
5
Víctor M. Zumaeta Diseño Lógico I - Teoría
La función OR-Exclusiva o EXOR está definida para dos variables. Esta función es muy
usada, por lo que tiene su propio símbolo: ⊕ .
Esta función se define de la siguiente forma: a ⊕ b = a.b + b.a y se la conoce con el nombre de
función anti-coincidencia o suma lógica.
b a a⊕b
0 0 0
0 1 1
1 0 1
1 1 0
a
a⊕ b
b
La función OR-Exclusiva vale 1 sólo cuando aparece un número impar de unos. Gracias a esta
propiedad, se cumple que en general, negar un número impar de variables es equivalente a negar
la expresión. Y en forma análoga, si se niega un número para de variables, la expresión
permanece inalterada.
• a ⊕ b ⊕ ... ⊕ n = a ⊕ b ⊕ ... ⊕ n
• a ⊕ b ⊕ ... ⊕ n = a ⊕ b ⊕ ... ⊕ n
b a a☼b
0 0 1
0 1 0
1 0 0
1 1 1
Gráficamente se representa:
a
a b
b
6
Víctor M. Zumaeta Diseño Lógico I - Teoría
Las funciones NAND y NOR son consideradas funciones Universales pues, con cualquiera de
ellas se puede expresar las funciones básicas de Boole.
La función NAND es una conjunción combinada con negación:
a a.b.c . . . n
NOT:
a a a a.a = a
OR:
a a a
a+b
b a.b
b b
a+b = a+b = a.b
AND:
a a
a.b a.b a.b = a.b
b b
a a+b+c . . . +n
NOT:
a a a a+a = a
OR:
a a
a+b a+b a+b = a+b
b b
7
Víctor M. Zumaeta Diseño Lógico I - Teoría
AND:
a a
a
a.b
b a+b = a.b
b b
a.b = a.b = a+b
Tabla de Verdad: es una forma de representar las funciones de Boole. Dada una tabla de
verdad de una cierta función, esta función queda unívocamente definida.
Consiste en escribir cada uno de los valores posibles que puede tomar la función de acuerdo a
todas las combinaciones posibles de sus variables. Si la función es de n variables, existen 2n
combinaciones posibles de ceros y unos para sus variables.
La forma de escribir una tabla de verdad es la siguiente: se considera a la variable que se
encuentra primero en el abecedario como la menos significativa y se la ubica a la derecha. Luego
se escriben las combinaciones en orden binario.
Ejemplo: dada f (a , b, c) = ab + abc + b c
2n = 23 = 8 Dec c b a f(a,b,c)
0 0 0 0 1
1 0 0 1 1
2 0 1 0 1
3 0 1 1 0
4 1 0 0 0
5 1 0 1 0
6 1 1 0 1
7 1 1 1 1
Forma Imagen: esta forma de representar una función lógica, consiste en escribir
horizontalmente la última columna de la tabla de verdad.
:
El ejemplo quedaría: f(a,b,c) = 11100011
Forma Canónica: es la forma algebraica de representar una función de Boole, pero para que
esté bien escrita debe tener la forma de sumas de productos, donde cada producto representa un 1
que toma la función según su tabla de verdad. Es decir que habrá tantos términos producto como
1’s haya en la tabla. Además en cada término deben estar presentes todas las variables de la
función.
La variable aparecerá negada si su valor de entrada es un 0 (cero) y aparecerá sin negar si su
valor es 1 (uno).
Siguiendo el mismo ejemplo, la función queda representada de la siguiente forma:
f (a , b, c) = ab c + ab c + abc + abc + abc
8
Víctor M. Zumaeta Diseño Lógico I - Teoría
Forma S (Sumatoria o Σ): esta forma consiste en escribir en números decimales y entre
paréntesis y precedidas del símbolo Σ, las combinaciones donde la función vale 1.
Se debe tener en cuenta la convención que se utiliza para determinar el orden de las variables.
Ejemplo: f(a,b,c) = Σ(0,1,2,6,7)
Con contactos: otra forma de representar una función de Boole de manera circuital es
empleando pulsadores.
Se definen dos tipos de pulsadores:
a = 0, abierto a = 1, cerrado
a
N.C.
a = 0, cerrado a = 1, abierto
Los contactos o pulsadores representan una variable de Boole. Para representar una
conjunción se ubican los contactos en serie. Una disyunción se representa con un paralelo.
9
Víctor M. Zumaeta Diseño Lógico I - Teoría
Ejemplo:
f ( a , b, c ) = c b a + c b a + c b a
c b a
c b a
c b a
Forma Canónica: es la forma algebraica de representar una función de Boole, pero para que
esté bien escrita debe tener la forma de sumas de productos, donde cada producto representa un 1
que toma la función según su tabla de verdad. Es decir que habrá tantos términos producto como
1’s haya en la tabla. Además en cada término deben estar presentes todas las variables de la
función.
La variable aparecerá negada si su valor de entrada es un 0 (cero) y aparecerá sin negar si su
valor es 1 (uno).
Siguiendo el mismo ejemplo, la función queda representada de la siguiente forma:
f (a , b, c) = ab c + ab c + abc + abc + abc
OR AND NOT
a a+b+c . . . +n a a.b.c . . . n a a
n n
10
Víctor M. Zumaeta Diseño Lógico I - Teoría
Evaluativo 2 de teoría
Minimizar una función de Boole consiste en reducir al máximo el número y el tamaño de las
compuertas necesarias para construirla. Esto significa que dada una función de Boole (ya sea en
su forma canónica, tabla de verdad, función sigma, etc.) se busca reducir el costo del circuito a 2
niveles mediante:
Reducción del número de compuertas del primer nivel.
Reducción del número de entradas de cada compuerta del primer nivel.
Minimizando el número de entradas en la compuerta del segundo nivel (es equivalente al
primer punto).
Método de Karnaugh
Para minimizar una función con el método de karnaugh en primer lugar se debe construir el
mapa de Karnaugh de la función. Este método es grafico, y sólo es recomendable para funciones
de hasta 5 variables pues en otro caso se torna muy complicado.
Nótese que en un mapa de Karnaugh cada celda corresponde a una combinación de entrada
que difiere de sus vecinas adyacentes en sólo una variable. Por esta razón, se considera
adyacentes las celdas en los bordes izquierdo y derecho, superior e inferior y las 4 esquinas. En
el caso de una mapa de 5 variables, las celdas reflejadas entre la mitad izquierda y derecha
también se consideran adyacentes.
La minimización consiste en agrupar conjuntos rectangulares de 2i cantidad de 1 (unos)
llamados lazos, lo más grande posible para formar un término producto con (n – i) variables (n es
el número de variables).
Para formar este producto se hace:
Si el lazo sólo cubre las áreas del mapa donde la variable es 0, la variable aparece
complementada en el producto.
Si el lazo cubre tanto áreas del mapa donde la variable es 0 como áreas donde vale 1, entonces
la variable no aparece en el producto.
Si el lazo cubre áreas donde la variable es 1, la misma aparece en el producto sin
complementar.
La cantidad de lazos debe ser la menos posible que abarque todos los 1 del mapa.
11
Víctor M. Zumaeta Diseño Lógico I - Teoría
3. Tabla de cubrimiento
En el algoritmo de Quine y Mc Cluskey muchas veces surgen lazos que cubren las mismas
variables, o en caso de existir indiferencias (Ǿ), lazos que cubran sólo indiferencias y entonces
no resultarían necesarios. Para salvar estos problemas se hace una tabla de cubrimiento. Esta
tabla se construye de la siguiente manera:
Se identifican los lazos no tildados obtenidos con el algoritmo de Quine y Mc Cluskey con
una letra mayúscula.
Se construye una columna por número decimal de la notación sigma Σ (no se incluyen
condiciones de indiferencias).
Se construye una fila por cada lazo identificado.
Se marca con una cruz las celdas de la tabla si el lazo de ese renglón contiene el número de
esa columna.
Se barre por columna hasta encontrar aquellas con una sola marca. Entonces se tilda el lazo
correspondiente, pues debe ir forzosamente en la solución. Se tildan todos los números que
abarcan este lazo.
Los lazos que abarquen los números (columnas) que no hayan sido tildados también deben
ir en la solución. Generalmente cada número no tildado está cubierto por 2 o más lazos. En este
caso se toma el lazo más conveniente según los costos o la disponibilidad.
Una vez elegidos los lazos que conforman la selección, se representa cada lazo con un
producto donde las variables cuyo peso aparezca en la diferencia (∆) no aparecen en el producto
que representa al lazo. Las variables aparecen complementadas o no según tomen el valor 0 o 1
en la representación binaria de cualquier número que componga el lazo.
12
Víctor M. Zumaeta Diseño Lógico I - Teoría
4. Condiciones de indiferencia
Permitir que las indiferencias estén incluidas cuando se forman lazos de unos lo mas
grandes posibles. Esto reduce el número de variables presentes en el producto.
No formar lazos compuertas solo por indiferencias ya que incluir el término de producto
correspondiente en la función incrementaría en forma innecesaria su costo.
Si el método utilizado es el algoritmo de Quine y Mc Cluskey entonces se toman todas las
indiferencias como unos. Luego los lazos innecesarios son eliminados de la tabla de cubrimiento,
donde las condiciones de indiferencia no se incluyen.
f (d, c, b, a ) = c d + ab f (d, c, b, a ) = ab + d a
13
Víctor M. Zumaeta Diseño Lógico I - Teoría
NOT:
a a a a.a = a
OR:
a a a
a+b
b a.b
b b
a+b = a+b = a.b
AND:
a a
a.b a.b a.b = a.b
b b
Cuando la función que se desea sintetizar con compuertas NAND es una suma de productos,
se niega 2 veces toda la función y aplicando el teorema de De Morgan se obtiene la síntesis
deseada.
Un circuito secuencial también puede ser reemplazado fácilmente por otro circuito formado
exclusivamente por compuertas NOR (el operador NOR es también un operador universal). Las
compuertas lógicas básicas AND, NOT y OR se reemplazan por compuertas NOR de la siguiente
manera:
NOT:
a a a a+a = a
OR:
a a
a+b a+b a+b = a+b
b b
AND:
a a
a
a.b
b a+b = a.b
b b
a.b = a.b = a+b
14
Víctor M. Zumaeta Diseño Lógico I - Teoría
Si la función que se desea sintetizar con compuertas NOR es una suma de productos, se debe
negar 2 veces cada término de la función y aplicar teorema de De Morgan para expresar cada
producto con operadores NOR. Luego se niega 2 veces la función completa.
El objetivo de este método es abaratar costos y aprovechar los circuitos integrados existentes.
Por lo tanto, la función G suele ser dato, generalmente una tira de compuertas XOR.
H1 se diseña de manera que hace 0 los 1´s de G que no coinciden con la función original F.
H2, en cambio, se diseña para agregar los 1´s que no se encuentran en G pero que deben existir
en F.
Si bien el método reduce los costos, el resultado final es un circuito con más de dos niveles, lo
cual resulta más lento ya que no se pueden solucionar los problemas de retardo.
Nótese que mientras más se parezcan F y G, H1 y H2 tienen más condiciones de indiferencia y
por lo tanto, resultan más baratos. H1 y H2 se construyen celda por celda.
Ej.:
00 01 11 10 00 01 11 10 00 01 11 10 00 01 11 10
00 0 1 0 1 00 0 1 0 1 00 Ø 1 Ø 1 00 0 Ø 0 Ø
01 1 1 0 0 = 01 1 0 1 0 * 01 1 Ø 0 Ø + 01 Ø 1 0 0
11 0 1 0 1 11 0 1 0 1 11 Ø 1 Ø 1 11 0 Ø 0 Ø
10 1 0 0 1 10 1 0 1 0 10 1 Ø 0 Ø 10 Ø 0 0 1
Las compuertas lógicas básicas NOT, AND, OR, Or-exclusivo, Nor-exclusivo, NAND y NOR
conforman la llamada SSI (Small Scale Integration) o integración a pequeña escala. Estas
compuertas pueden ser de dos tipos según su tecnología.
TTL (Transistor Transistor Logic): son rápidos pero de alto consumo (mayor tamaño).
CMOS (Complementary Metal Oxide Semiconductor): son mas lentos pero de bajo consumo
(menor tamaño).
El tamaño físico de una compuerta depende del consumo de la misma. Por esta razón, con
CMOS se pueden poner más elementos dentro de un circuito integrado.
En general, la forma comercial de las compuertas SSI es un circuito integrado en el cual se
pueden encontrar:
15
Víctor M. Zumaeta Diseño Lógico I - Teoría
Para calcular el costo de una síntesis se cuentan los circuitos integrados necesarios para la
misma. Esto se debe a que el costo real se basa en el tamaño físico del circuito final y no en el
costo de cada elemento electrónico, por lo tanto si una síntesis requiere una mayor cantidad de
circuitos integrados que otra, el costo es mayor.
Para realizar este conteo se toman los siguientes valores:
1 negador = 1/6
1 compuerta de 2 entradas = ¼
1 compuerta de 3 entradas = ⅓
1 compuerta de 4 entradas = ½
1 compuerta de 8 entradas = 1
El retardo de una trayectoria de señal es la cantidad de tiempo que requiere la señal de entrada
para producir un cambio en la señal de salida. Esto se debe a que los circuitos que conforman las
compuertas lógicas no pueden cambiar sus valores instantáneamente sino que requieren cierto
tiempo de transición.
Se dice que existe una condición de carrera (race) en un sistema combinatorio cuando 2 o más
variables de estado binarias cambian de valor en respuesta a un cambio en una variable de
entrada.
Viendo el mapa de Karnaugh de la función, un error a la salida se produce cuando se pasa de
un lazo a otro.
La forma de solucionar este problema se basa en incluir un termino de producto extra
(compuerta AND) que cubra el par de entradas riesgosas (conecta los lazos vecinos). El término
de producto extra es el consenso de los 2 términos originales.
16
Víctor M. Zumaeta Diseño Lógico I - Teoría
Una vez obtenidas las funciones booleanas de salida, se procede a efectuar la tabla de verdad
del circuito analizado, a fin de determinar su funcionamiento.
17
Víctor M. Zumaeta Diseño Lógico I - Teoría
Evaluativo 3 de teoría
Los símbolos básicos de una compuerta o controlador de 3 estados son los siguientes:
a a a a a a a a
E E E E
(a) (b) (c) (d)
(a) y (b) son separadores no inversores o buffers, (c) y (d) son inversores. La señal extra E en
la parte inferior del símbolo es una entrada de habilitación de 3 estados, la cual puede ser alta-
activa (a y c) o baja-activa (b y d).
Cuando la entrada de habilitación se encuentra afirmada, el dispositivo se comporta como un
buffer o como un inversor. Cuando la entrada de habilitación está negada, la salida del
dispositivo “flota”, es decir, se va a un estado desconectado de alta impedancia (z → ∞) y
funcionalmente se comporta como si no estuviera allí (se asemeja a un circuito abierto).
Los dispositivos de 3 estados permiten que múltiples fuentes compartan una sola línea de
reunión (bus de datos) mientras que solamente un dispositivo “dialoga” en la línea a la vez.
Los dispositivos típicos de 3 estados están diseñados de modo tal que entren al estado de alta
impedancia mas rápido de lo que salen del mismo. Esto significa que si las salidas de 2
dispositivos de 3 estados están conectadas a la misma línea de reunión y simultáneamente
deshabilitamos una y habilitamos la otra, el primer dispositivo se saldrá de la línea de reunión
antes de que la segunda se ponga en contacto. Esto es importante porque, si ambos dispositivos
fueran a controlar la línea de reunión, y si estuvieran intentando mantener valores de salida
opuestos (0 y 1), entonces fluiría corriente excesiva y crearía ruido en el sistema. Esto se conoce
a menudo como confrontación.
18
Víctor M. Zumaeta Diseño Lógico I - Teoría
El sumador más simple o medio sumador suma 2 operadores de 1 bit (A0, B0) y produce una
suma de 2 bits que puede abarcar desde el 0 hasta el 2. El bit de menor orden de la suma se
nombre como S0 y el de mayor orden C0, pues puede representar un acarreo.
A0
S0
B0
A0 S0
½ C0
Sumador
B0 C0
A0 B0 S0 = A0 ⊕ B0 C0 = A0 . B0
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
Para sumar operando con mas de 1 bit, debemos preveer acarreos entre posiciones de bits. El
bloque de construcción para esta operación se denomina sumador completo. Además de las
entradas A y B de bit de sumandos, un sumador tiene una entrada de acarreo (Carry In). La suma
se sigue expresando con 2 bit de salida: S y Carry Out.
Ai Ci
Ci
Ai Si ½
Sumador
Ci-1
Ci-1 Sumador
Ci
Ci
Bi ½
Bi Sumador
Si
Para sumar números de varios bits utilizando el modulo del sumador completo existen 2
métodos: Serie y Paralelo.
La forma de Sumar en Serie 2 números de n bits se realiza con un sólo bloque sumador
completo donde las entradas A y B van tomando los valores de los bits sumandos desde el menos
significativo al más significativo y el acarreo se realimenta a la entrada a través de un basculador
(que retarda el acarreo para que el acarreo de la primera suma se sume en la segunda).
Es decir, primero se suma la columna del bit menos significativo, luego la segunda columna
más el acarreo anterior, y así sucesivamente.
19
Víctor M. Zumaeta Diseño Lógico I - Teoría
A S
B Sumador
Ci Co
Es un circuito muy sencillo y económico pero muy lento a la hora de sumar números con gran
cantidad de bits.
En el Sumador Paralelo, todos los bits de los sumandos están presentes y alimentan a los
circuitos sumadores simultáneamente. Esto significa que las adiciones en cada posición se llevan
a cabo al mismo tiempo. La entrada de acarreo para el bit menos significativo (C0) se establece
normalmente a 0 y la salida de acarreo de cada sumador completo se conecta a la entrada de
acarreo del siguiente sumador completo más significativo.
An Bn C n-1 A1 B1 C0 A0 B0 C-1
C n+1
...
Sn C1 S1 C0 S0
Este sumador tiene la ventaja de ser modular pero puede llegar a ser lento, pues en el peor de
los casos, un acarreo debe propagarse desde el bloque menos significativo hasta el más
significativo.
Un sumador rápido podría construirse con sólo 2 niveles de lógica AND-OR u OR-AND, pero
el circuito no sería general sino para un número de n bits y requeriría el uso de demasiadas
compuertas de 1º nivel.
La solución, entonces, a los problemas de retardo es un sumador hibrido llamado Sumador
con anticipo de llevo que implementa el acarreo a 2 niveles mientras que los bits sumandos se
implementan modularmente.
Un Multiplexor (Mx) puede ser visto como una llave selectora que conecta una de varias
entradas (Ii) con la salida (O). Estas entradas se denominan entradas de datos.
El dispositivo posee además otras entradas denominadas “entradas de control” que permiten
determinar cuál de las entradas de datos quedara conectada a la salida.
Ambos tipos de entrada toman valores binarios y se determina la siguiente relación:
A cada entrada de datos se la denomina según el decimal equivalente en código binario que
deben tomar las variables de control para que se conecte a la salida.
Suponiendo un Mx con 3 entradas de control, su esquema seria el siguiente:
20
Víctor M. Zumaeta Diseño Lógico I - Teoría
I0
I1
. O Nótese que un Mx convierte
.
.
información en paralelo en
I7 información en serie.
C2 C 1 C 0 (Entradas de control)
C2 C1 C0 O
0 0 0 I0
0 0 1 I1 De modo que algebraicamente puede ser expresada:
. . . .
. . . . O = C0 C1 C 2 I 0 + C 0 C1 C 2 I1 + ... + C 0 C1C 2 I 7
. . . .
1 1 1 I7
Si las entradas de datos Ii son, a su vez, función de 1 variable, por ejemplo, de D y redefinimos
C0=A, C1=B y C2=C, entonces el mapa de karnaugh para cualquier función de 4 variables
f(A, B, C, D) quedaría dividido en submapas de la siguiente manera:
B
A 00 01 11 10
D
C
I0 I1 I3 I2
00
00 I4 I5 I7 I6
00
00
21
Víctor M. Zumaeta Diseño Lógico I - Teoría
.
.
. Mx
.
.
. Mx
O
Mx
.
.
. Mx C 1 C0
.
.
. Mx
C3 C2
I2 I1 I0 O7 O6 … O1 O0
I0 O0 0 0 0 0 0 … 0 1
. 0 0 1 0 0 … 1 0
I1 Decodificardor . . . . . . . . .
:
3 8 .
. . . . . . . .
I2 O7 . . . . . . . .
1 1 1 1 0 0 0 0
Se puede ver que cada salida es en realidad un mini término de la forma:
O 0 = I 2 I1 I 0
O1 = I 2 I1 I 0
...
O 7 = I 2 I1 I 0
22
Víctor M. Zumaeta Diseño Lógico I - Teoría
Este hecho nos permite utilizar cualquier función lógica sin necesidad de minimizarla,
simplemente conectando una compuerta OR a las salidas de los mini términos que sean
necesarios para esta función, ya que el decodificador es en realidad una tira de 2n compuertas
AND.
Ejemplo: f(I0, I1, I2) = Σ (3, 5, 7)
O0
I0
I1 Decodificardor
:
3 8
I2
O7
I0 O0
. O1
. Codif.
O2
. :
Dec/BCD
I9 O3
Existen codificadores con prioridad cuyo funcionamiento es tal que si 2 o más entradas se
activan al mismo tiempo, la salida será equivalente a la entrada de mayor valor.
Un comparador de magnitudes es un circuito combinacional que compara 2 números A y B y
determina sus magnitudes relativas. El resultado de la comparación se especifica con 3 variables
binarias que indican si A>B, A=B o A<B.
A0-3 B0-3
“1”
1 si A=B A=B
Compara 2 números
1 si A>B de 4 bits A>B
1 si A<B A<B
“0”
23
Víctor M. Zumaeta Diseño Lógico I - Teoría
Entrada de datos: este MSI compara dos números binarios sin signo de 4 bits cada uno. Uno
de ellos es A3A2A1A0 denominado palabra A, y el otro es B3B2B1B0 llamado palabra B.
Salidas: el comparador tiene 3 salidas activas en nivel alto. OA>B toma valor “1” si A>B y cero
en otro caso. OA=B es “1” si A=B y cero en otro caso. OA<B tiene valor “1” si A<B y cero en otro
caso.
Existen 3 entradas adicionales que permiten conectar varios comparadores en cascada para
compara números de más de 4 bits. Nótese que las salidas del comparador de menor orden se
conectan a las entradas correspondientes del comparador de mayor orden, el cual devuelve la
salida final.
“1”
1 si A=B A=B A=B
Compara A>B Compara
1 si A>B de 4 bits de 4 bits A>B
1 si A<B A<B A<B
“0”
Compara 8 bits
Una Unidad Aritmética Lógica (ALU) es un circuito combinacional que puede efectuar
cualquiera de diversas operaciones lógicas y aritméticas diferentes, en un par de operandos de n
bits. La operación por realizarse se especifica mediante un conjunto de entradas de selección de
función. Las ALU MSI típicas tienen operandos de 4 bits y de 3 a 5 entradas de selección de
función, permitiendo que se realicen hasta 32 diferentes funciones.
Ejemplo: ALU de 3 bits.
A0-2 B0-2
.. Entradas
. de control
ALU
C out
Cin
S0-5
Existe una entrada adicional Cin y una salida adicional Cout a modo de permitir la conexión en
cascada de varias ALU para poder operar con números de mayor cantidad de bits. En este caso,
la salida Cout de la etapa menor significativa se conecta a la entrada Cin de la siguiente etapa más
significativa. Las mismas señales de selección de función se aplican a todas las ALU en cascada.
Nótese que cuando la ALU realiza operaciones lógicas, cada salida Si es una función sólo de
las correspondientes entradas de datos Ai y Bi y la entrada Cin es ignorada.
24
Víctor M. Zumaeta Diseño Lógico I - Teoría
Un circuito de paridad impar tiene salida “0” cuando el número total de bits “1” en la
combinación de entrada es impar. Por el contrario, un circuito de paridad par tiene salida “0”
sólo cuando el número total de “1” en la combinación de entrada es par.
Los códigos de detección de errores que hacen uso de un bit extra denominado bit de paridad
para detectar errores en la transmisión y almacenamiento de los datos hacen uso de los circuitos
de paridad. Estos circuitos se utilizan tanto para generar el valor correcto del bit de paridad,
cuando una palabra de código es almacenada o transferida, como para verificar el bit de paridad
cuando una palabra de código es recuperada o recibida.
Un circuito de paridad es, en realidad, una cascada de compuertas OR-Exclusiva (paridad
impar). Si se quiere obtener un circuito de paridad par, se ubica un negador a la salida de la
cascada de EXOR.
Generador de Paridad:
D0 D0 D0
D1
D1 D1
D3
D2
D2 D2
D3
Paridad
Generador
de Paridad Bit de paridad
Detector de Paridad:
D0 D0
D1 D1
Detector
D2 de Paridad OK = 0 D2
D3 No OK = 1
D3
Los dispositivos de integración a gran escala (LSI) contienen niveles de compuertas en un solo
paquete. Incluyen sistemas digitales con procesadores, dispositivos de memoria y dispositivos de
lógica programable (PLD).
Un dispositivo lógico programable es un circuito integrado con compuertas lógicas internas
que se conectan mediante trayectorias electrónicas que se comportan como una especie de
fusibles. En el estado original del dispositivo, todos los fusibles están intactos. Programar el
dispositivo requiere “quemar” los fusibles que están en las trayectorias, que es preciso eliminar
para obtener la configuración de la función lógica deseada.
En realidad en un PLD todas las entradas están conectadas a una tira de compuertas AND a
través de fusibles y a su vez, todas las compuertas AND se conectan a través de fusibles a una
25
Víctor M. Zumaeta Diseño Lógico I - Teoría
tira de compuertas OR que dan todas las salidas. Por lo tanto se distinguen 2 zonas programables
diferentes.
Entradas Salidas
1 AND 2 OR
ROM (Read Only Memory): posee las entradas fijas conectadas a las compuertas AND y su
conexión con las compuertas OR es programable.
PAL (Arreglo Lógico Programable): al contrario de la ROM, tiene sus entradas
programables pero las conexiones AND-OR se encuentran fijas.
PLA: tiene ambos sectores programables.
Una ROM (memoria de solo lectura) es, en esencia, un dispositivo de memoria en el que se
almacena información binaria permanentemente. El diseñador debe especificar la información
que entonces se incorpora a la unidad para formar el patrón de conexión requerida. Una vez
establecido el mismo, permanece en la unidad aunque se apague y se encienda nuevamente.
Esquema Externo:
k entradas . ROM . n salidas
(dirección) (datos)
. de .
k
. 2 xn .
La ROM tiene k entradas y n salidas. Las entradas proporcionan la dirección de memoria y las
salidas suministran los bits de los datos de la palabra almacenada seleccionada por la dirección.
El número de palabras está determinado por el hecho de que k líneas de dirección pueden
especificar 2k palabras. No existen entradas de datos, pues no se efectúa la escritura. Puede
existir una entrad de habilitación (chip selector).
Supongamos una ROM de 32 x 8, que consiste en 32 palabras de 8 bits cada una. Las 5
entradas se decodifican a 32 salidas distintas con un decodificador de 5 x 32. Cada salida del
decodificador representa una dirección de memoria. Cada una de estas salidas se conecta a cada
una de las 8 compuertas OR de 32 entradas, por lo tanto la ROM contiene 32 x 8 = 256
conexiones internas. En general, una ROM de 2k x n tiene un decodificador interno de k x 2k y
tiene además n compuertas OR.
Esquema Interno:
A0 S0
D S1
A1 e .
c
. o .
.
.
d .
e
r
Ak-1 S2 -1k
...
CS CS
O0 O1 On-1
26
Víctor M. Zumaeta Diseño Lógico I - Teoría
El almacenamiento binario interno de una ROM se especifica con una tabla de verdad que
indica el contenido de palabra de cada dirección.
El procedimiento de Hardware que programa la ROM hace que se quemen fusibles según la
tabla de verdad requerida.
Las trayectorias que se requirieren en una ROM se pueden programar de cuatros maneras. Las
primeras (MROM) se denominan Programación por Máscara y la efectúa el fabricante de
semiconductores durante el último proceso de fabricación de la unidad. El procedimiento de
manufactura de una ROM requiere que el cliente llene una tabla de verdad que la ROM debe
satisfacer. La tabla se presenta en una forma especial proporcionada por el fabricante, con un
formato dado en un medio de salida de computador. El fabricante crea la máscara
correspondiente a las trayectorias que producen los unos y ceros indicados en la tabla de verdad
del cliente. Este procedimiento es costoso porque el proveedor cobra al cliente un cargo especial
por hacer un máscara a la medida para la ROM en cuestión. Por ello, la programación por
máscara sólo resulta económica si el pedido es por grandes cantidad de ROM con la misma
configuración.
Para cantidades pequeñas, es más económico utilizar otro tipo de ROM llamada Memoria
Programable de Sólo Lectura (PROM). Recién compradas las unidades PROM tienen todos
sus fusibles intactos, lo que equivale a uno (1) en todos los bits de las palabras almacenadas. Los
fusibles de la PROM se queman aplicando un pulso de alto voltaje al dispositivo a través de una
terminal especial. Un fusible quemado define un estado binario cero (0) y un fusible intacto
define un estado igual a uno (1). Esto permite al usuario programar la PROM en el laboratorio
para obtener la relación deseada entre direcciones de entradas y palabras almacenadas. Se
venden instrumentos especiales llamados programadores de PROM que facilitan este
procedimiento. En cualquier caso, todos los procedimientos para programar las ROM son
procedimientos en hardware, aunque se use la palabra programación.
El procedimiento para programar las ROM y PROM por hardware es irreversible y, una vez
efectuada, el patrón es permanente y no puede alterarse. Una vez que se ha establecido el patrón
de bit, la unidad tendrá que desecharse si es necesario modificar dicho patrón de bit.
Un tercer tipo de ROM es la PROM Borrable (EPROM). La EPROM se puede restaurar al
estado inicial aunque se la haya programado previamente. Cuando la EPROM se coloca bajo una
lámpara de ultravioleta especial durante un cierto tiempo, la radiación de onda corta descarga las
compuertas flotantes internas que actúan como conexiones programadas. Una vez borrada la
EPROM, vuelve a su estado inicial y es posible reprogramarse con otros conjuntos de valores.
El cuarto tipo de ROM es la PROM Borrable Eléctricamente (EEPROM). Es como la
EPROM, sólo que las conexiones previamente programadas se borran con una señal eléctrica en
vez de luz ultravioleta. La ventaja es que el dispositivo puede borrarse sin desmontarlo de su
base y es posible realizar un borrado selectivo.
27
Víctor M. Zumaeta Diseño Lógico I - Teoría
Podemos describir un dispositivo de este tipo como un PLA de nxm con p términos de
producto. En general, p es bastante menor que el número de mini términos de n variables (2n).
De este modo, un PLA no puede realizar funciones lógicas arbitrarias de n entradas y m salidas,
su utilidad está limitada a funciones que puedan expresarse en forma de suma de productos
empleando p o menos términos de producto.
Un PLA de nxm con p términos de producto contiene p compuertas AND de 2n entradas y m
compuertas OR de p entradas.
Como un PLA tiene un número limitado de compuertas AND se debe efectuar la
simplificación de cada función booleana al número mínimo de términos. A su vez, se debe
minimizar también el complemento de la función para ver cual se puede expresar con menos
términos producto, y cual genera términos productos comunes a otras funciones.
En un PLA cada entrada pasa por un buffer y un inversor indicado en el diagrama con un
símbolo grafico compuesto que posee ambas salidas verdadero y complemento. Cada entrada y
su complemento se conectan a las entradas de cada compuerta AND como indican las
intersecciones entre líneas verticales y horizontales, a través de fusibles que permiten la
selección de las conexiones (programación). Del mismo modo, las salidas de las compuertas
AND se conectan a las entradas de las compuertas OR. Las salidas de cada compuerta OR se
conecta a una compuerta EXOR cuya otra entrada se puede programar de modo que reciba una
señal de 1 o 0 lógico. Cuando en la entrada de la EXOR se ponga un 1, la salida se invierte.
Cuando se conecta a 0, la salida no cambia.
Ejemplo:
C
AB
1
2 AC
3 BC
4 ABC
0
1
F1
CC BB AA
F2
Nótese que el dispositivo PLA es el más flexible de los dispositivos PLD ya que tanto las
entradas a las compuertas AND como sus salidas son programables.
El arreglo lógico programable PAL es un dispositivo lógico programable con una tira de
compuertas OR fijas y una tira AND programable. Dado que sólo las compuertas AND son
programables, el PAL es más fácil de programar, pero no es tan flexible como el PLA.
28
Víctor M. Zumaeta Diseño Lógico I - Teoría
I0 I1 I2 I3
0
1
F1
0
1
F2
0
1
F3
0
1
F4
Los dispositivos PAL comerciales contienen por lo general más compuertas. Un típico caso
podría tener 8 entradas, 8 salidas y 8 secciones de anchura 8.
Al diseñar con un PAL, las funciones booleanas deben minimizarse a modo que encajen en
cada sección. A diferencia de los PLA, no es posible compartir términos producto entre 2 o más
compuertas OR, por lo que se minimiza cada funciones por separado. El número de términos
producto en cada sección es fijo, y si el número de términos en la función es demasiado grande,
podría ser necesario usar 2 secciones para implementar una función.
Varias ROMs pueden ser conectadas de manera tal que forman el equivalente a una ROM de
mayor memoria (más líneas de dirección). Si se desea utilizar ROMs con m líneas de dirección
para implementar una ROM de n líneas de dirección, será necesario hacer uso de un
decodificador (n – m) / 2( n – m) y de 2(n – m) ROMs con las mismas características.
29
Víctor M. Zumaeta Diseño Lógico I - Teoría
Todas las ROMs se conectan a las mismas m líneas de dirección. Las (n – m) líneas de
entradas restantes se conectan al decodificador y cada una de sus salidas se conectan al CS (chip
selector) o entrada habilitadora de cada ROM. Esto significa que cada ROM guarda 2m palabras
especificadas por las primeras m líneas de dirección, y a través de las (n – m) restantes se elige la
ROM a usar.
Supongamos que se quiere usar ROMs de 1k x 8 bit para implementar una ROM de 4k x 8 bit.
Las ROMs de 1k x 8 bit reciben 10 líneas de dirección, mientras que la de 4k x 8 bit debe recibir
12 líneas de dirección. Esto implica que se deberá utilizar un decodificador 2x4 y 4 ROMs de 1k
x 8 bit.
La conexión se realiza de la siguiente manera:
A11 A 10 A9 A 8 . . . A 0 O7 O 6 O 5 . . . O 0
ROM 0
. .
. .
. 1Kx8 bit .
csO
ROM 1
. .
. .
. 1Kx8 bit .
DECO cs1
2X4
ROM 2
. .
. .
. 1Kx8 bit .
cs2
ROM 3
. .
. .
. 1Kx8 bit .
cs3
Varias ROMs pueden ser conectadas de manera tal que forman el equivalente a una ROM con
mayor longitud de palabra almacenada.
Si se dispone de n ROMs iguales de 2k x m, entonces se puede implementar de manera
sencilla una ROM de 2k x (nxm), es decir, con una longitud de palabra igual a (mxn).
Se conecta cada ROM a grupos de m bits (desde el menos significativo al más significativo)
de la palabra total de nxm bits y se conecta a las mismas líneas de dirección. Todas las ROM
comparten el mismo valor de entrada para CS o variables de habilitación, lo que significa que
todas las ROMs deben estar habilitadas simultáneamente.
Supongamos que se quieren usar 2 ROMs de 1k x 4 bit para implementar una ROM de 1k x 8
bit. La manera de realizar las conexiones es la siguiente:
30
Víctor M. Zumaeta Diseño Lógico I - Teoría
A 9 A 8. . . A 0 CS O0 O 1 O 2 O 3 O4 O 5 O 6 O 7
ROM
.
.
. 1Kx4 bit
cs
ROM
.
.
. 1Kx4 bit
cs
La memoria ROM se usa para almacenar información vital para el funcionamiento del
sistema: en la gestión del proceso de arranque, el chequeo inicial del sistema, carga del sistema
operativo y diversas rutinas de control de dispositivos de entrada/salida suelen ser las tareas
encargadas a los programas grabados en ROM. Estos programas forman la llamada BIOS (Basic
Input Output System). Junto a la BIOS se encuentra el chip de CMOS donde se almacenan los
valores que determinan la configuración hardware del sistema, como tipos de unidades,
parámetros de los discos duros, fecha y hora del sistema... esta información no se pierde al
apagar la computadora. Estos valores se pueden modificar por medio del SETUP.
La memoria ROM constituye lo que se ha venido llamando Firmware, es decir, el software
metido físicamente en hardware. De cara a los fines del usuario es una memoria que no sirve
para la operación de su programa, sólo le aporta mayores funcionalidades (información) del
equipo.
Los PCs vienen con una cantidad de ROM, donde se encuentran los programas de BIOS, que
contienen los programas y los datos necesarios para activar y hacer funcionar el computador y
sus periféricos.
La ventaja de tener los programas fundamentales del computador almacenados en la ROM es
que están allí implementados en el interior del computador y no hay necesidad de cargarlos en la
memoria desde el disco de la misma forma en que se carga el Sistema Operativo. Debido a que
están siempre residentes, los programas en ROM son muy a menudo los cimientos sobre los que
se construye el resto de los programas.
Estas memorias, cuyo nombre procede de las iniciales de Read Only Memory son sólo de
lectura. Dentro de un proceso de elaboración de datos de una computadora, no es posible grabar
ningún dato en las memorias ROM. Son memorias perfectas para guardar microprogramas,
sistemas operativos, tablas de conversión, generación de caracteres, etc.
31
Víctor M. Zumaeta Diseño Lógico I - Teoría
Evaluativo 4 de Teoría
01. Sistemas secuenciales. Descripción. Tipos.
02. Maquina de Estado Finito. Modelo de Mealy.
03. Máquina de Estado Finito. Modelo de Moore.
04. Máquina de Estado Finito. Modelo Grafcet.
05. Diagramas de Transición. Propiedades.
06. Tabla de Transición. Propiedades.
07. Transformación de Mealy a Moore.
08. Transformación de Moore a Mealy.
09. Clasificación de estados y Clasificación de submáquinas.
10. Estados k-equivalentes. Definición. Propiedades.
11. Estados equivalentes. Definición. Propiedades.
12. Tablas Pk. Uso para la minimización.
13. Tablas de Pares. Uso para la minimización.
14. Forma mínima de una MEF. Propiedades.
Los circuitos digitales estudiados hasta el momento han sido combinacionales, es decir, que
sus salidas dependen exclusivamente de las entradas actuales. Un sistema secuencial, en cambio,
es un sistema con memoria. Sus salidas dependen no sólo de las entradas actuales, sino también
de las entradas que ocurrieron en momentos anteriores, las cuales definen el estado del circuito
secuencial en ese momento determinado. Por lo tanto es como si respondiera a secuencias de
hechos en el orden en que se dieron, de ahí su nombre.
Un sistema secuencial consiste en un circuito combinacional al que se conectan elementos de
almacenamiento para formar una trayectoria de retroalimentación.
Entradas Salidas
Circuito
Combinacional
Elementos
de Memoria
Un circuito secuencial se especifica con una sucesión temporal de entradas, salidas y estados
internos.
Hay dos tipos principales de circuitos secuenciales, y su clasificación depende de los tiempos
de sus señales. Un circuito secuencial sincrónico es un sistema cuyo comportamiento se define
conociendo sus señales en instantes discretos. En los sistemas sincrónicos los cambios en la
salida se producen cuando los cambios de entrada llegan acompañados por un pulso de
sincronismo. Esta sincronización se logra por un dispositivo de temporización llamado reloj o
“clock”, que produce un tren periódico de pulsos de reloj. Los sistemas secuenciales más
comunes son sincrónicos.
El comportamiento de un circuito o sistema asincrónico depende de las señales de entrada en
cualquier instante dado y del orden en que cambian las entradas. En los sistemas asincrónicos
suelen usarse los dispositivos de retardos de tiempos para la retroalimentación, aunque en la
práctica el retardo interno de propagación de las compuertas lógicas es suficiente como para
producir el retardo requerido.
32
Víctor M. Zumaeta Diseño Lógico I - Teoría
X1 Z1 X1 Z1
. . . .
. Sincrónico . . Asincrónico .
. . . .
Xm Zn Xm Zn
Clock
Una máquina de estado finito es un modelo matemático utilizado para representar los sistemas
Digitales Secuenciales.
La máquina de Mealy se define como una quíntupla, es decir, que puede ser caracterizada por
cinco parámetros:
{X} = Alfabeto de entrada. Conjunto finito de valores que pueden tomar las variables de
entrada.
{Z} = Alfabeto de salida. Conjunto finito de valores que pueden tomar las variables de
salida.
{S} = Conjunto de estados. Conjunto finito de estados internos en que puede hallarse el
sistema.
Zu = fZ (Xu,Su), esta función caracteriza la salida en el u-ésimo pulso de sincronismo,
cuando el sistema se halla en el estado Su y la entrada es Xu.
Su+1 = fS (Xu,Su), (estado siguiente del sistema), función que caracteriza las transiciones
entre los estados de la máquina. Su+1 es el estado interno al que transiciona el sistema o máquina
cuando estando en Su recibe la entrada Xu. El subíndice u indica el orden temporal del pulso de
sincronismo.
Nótese que al ser discretas las variables en juego, también lo son las funciones fS y fZ, de modo
que se representan mediante diagramas y tablas de transición.
s/0
{X} = {c, s} Ei
c/st
{Z} = {0, 1, st}
{S} = {Ei, 1ºC, 2ºC} c/0 + s/1
s/0
1ºC
2ºC
c/st
Tabla de Transición: está formada en realidad por dos tablas de doble entrada, una
correspondiente a Zu y la otra correspondiente a Su+1.Cada fila corresponde a un estado Su y cada
columna corresponde a una entrada Xu.
Ejemplo:
33
Víctor M. Zumaeta Diseño Lógico I - Teoría
Zu Su+1
Su Xu C S C S
Ei st 0 1ºC Ei
1ºC st 0 2ºC Ei
2ºC 0 1 Ei Ei
Al igual que en el modelo de Mealy, ésta se define como una quíntupla, es decir, que puede
ser caracterizada por cinco parámetros:
{X} = Alfabeto de entrada. Conjunto finito de valores que pueden tomar las variables de
entrada.
{Z} = Alfabeto de salida. Conjunto finito de valores que pueden tomar las variables de
salida.
{S} = Conjunto de estados. Conjunto finito de estados internos en que puede hallarse el
sistema.
Zu = fZ (Su), esta función caracteriza la salida en el u-ésimo pulso de sincronismo, cuando el
sistema se halla en el estado Su. La salida es función únicamente del estado actual.
Su+1 = fS (Xu,Su), (estado siguiente del sistema), función que caracteriza las transiciones
entre los estados de la máquina. Su+1 es el estado interno al que transiciona el sistema o máquina
cuando estando en Su recibe la entrada Xu. El subíndice u indica el orden temporal del pulso de
sincronismo.
A diferencia del modelo de Mealy, en el modelo de Moore se asocia una salida a cada estado.
Tabla de Transición: A diferencia del modelo de Mealy, al estar asociada una salida a cada
estado, la tabla ya no está formada por dos tablas, sino por una columna para Zu donde cada
celda depende de un estado Su, y una tabla correspondiente a Su+1 donde cada fila corresponde a
un estado Su y cada columna a una entrada Xu.
Ejemplo:
34
Víctor M. Zumaeta Diseño Lógico I - Teoría
Su+1
Xu Zu
Su α β
A 0 B C
B 0 C A
C 1 A C
s/0
Ei
c/st
c/0 + s/1
s/0
1ºC
2ºC
c/st
35
Víctor M. Zumaeta Diseño Lógico I - Teoría
Una manera tabular de representar el comportamiento de una MEF es mediante una tabla de
transición.
La tabla de transición está formada por dos subtablas. Una correspondiente a la salida actual
(Zu) y otra correspondiente al estado próximo o futuro (Su+1).
Cada subtabla tiene nxm celdas, donde n es la cantidad de elementos del conjunto de estados
internos del sistema y m es la cantidad de elementos del alfabeto de entrada.
Los renglones de la tabla se etiquetan para cada estado actual posible (Su) y cada columna
corresponde a una combinación posible de entrada (Xu). De esta manera se puede determinar
fácilmente la salida actual y el estado siguiente a partir de la entrada y el estado actual. Es decir,
que la tabla de transición representa fZ(Xu,Su) y fS(Xu,Su) y es determinística.
Nótese que la tabla no tiene celdas vacías. Cuando una combinación de entrada no produce
transición hacia un nuevo estado, la celda correspondiente a esa entrada y a ese estado recibe el
mismo valor de estado.
El renglón correspondiente a cada estado debe tener tantas celdas como elementos tenga el
alfabeto de entrada.
Cuando la tabla representa a una Máquina de Moore, la subtabla correspondiente a la salida Zu
se reduce a una columna ya que la misma es función únicamente del estado actual y no de la
combinación de entradas.
Zu Su+1
Su Xu X1 ..Xj.. Xp X1 ..Xj.. Xp
S1
.
Si fz(Xju,Siu) fs(Xju,Siu)
.
Sn
36
Víctor M. Zumaeta Diseño Lógico I - Teoría
Mealy Moore
α
α
α/0 *
A1 /0
*
A2 /1
A + α
β /0 β/1
β β *
β α B2 /1
α/0
α/1 D α
B
α/0 B1* /0
*
D1 /0 α
*
D2 /1
β/1 β
β /0 C β β
α β
C*/0
α
{X} = {α, β}
{Z} = {0, 1} A/0
{S} = {A, B, C} B/0
β
β α
α
C/1
β
37
Víctor M. Zumaeta Diseño Lógico I - Teoría
con la entrada β debe tener salida 1. De esta manera se van realizando las transiciones entre los
nuevos estados y la máquina de Mealy correspondiente es la siguiente:
α/0
A*
B*
β/0
β/1
α/0
α/1
C*
β/1
Estado Aislado: Un estado se dice aislado cuando únicamente posee autolazos, es decir,
cuando no hay flechas que entren o salgan de ese estado en un diagrama de transición. Una MEF
puede caer en este tipo de estados sólo en el momento de su encendido y no puede salir de él.
Si
Estado Transitorio: en un diagrama de transición, los estados transitorios son aquellos que
no poseen flechas entrantes, sólo autolazos y flechas salientes. Una MEF puede caer en este tipo
de estados al ser encendida, pero una vez que abandona el autolazo no puede volver a ese estado.
Si
Si
38
Víctor M. Zumaeta Diseño Lógico I - Teoría
Estado Común: en un diagrama de transición, los estados comunes son aquellos que
poseen autolazos, flechas salientes y entrantes. Son los estados normales de la MEF.
Si
Submáquina
aislada
Submáquina
transitoria
Submáquina
permanente
Se define como secuencia de entrada a la sucesión de posibles valores que puede tomar la
entrada de una MEF. Se define como secuencia de salida a la sucesión de posibles valores de la
salida. De define como longitud de la secuencia a la cantidad de símbolos de la sucesión.
Un estado Si de la máquina M1 y un estado Sj de la máquina M2 se dicen k-equivalentes si M1
en el estado Si y M2 en el estado Sj al ser excitados por una secuencia de entrada de longitud k
producen idénticas secuencias de salida.
Si Si y Sj no son k-equivalentes, se dice que son k-distinguibles. M1 y M2 pueden referirse a la
misma máquina.
Por lo tanto Si y Sj son k-equivalentes si y solo si no hay forma de distinguir la máquina M1 en
el estado Si de la máquina M2 en el estado Sj al observar sus terminales de salida cuando se les
excita con una secuencia de entradas de longitud k. Por otro lado, Si y Sj son k-distinguibles si y
solo si existe al menos una secuencia de entrada de longitud k que produce diferentes secuencias
de salida al ser aplicada a M1 en Si y a M2 en Sj.
Propiedades:
39
Víctor M. Zumaeta Diseño Lógico I - Teoría
b) Si dos estados son k-equivalentes, entonces son L-equivalentes ∀ L ≤ k. Si dos estados son
k-distinguibles, entonces son L-distinguibles, ∀ L ≥ k.
c) Si los estados Si y Sj son k-equivalentes y sus k-sucesores con respecto a cualquier
secuencia de entrada de longitud k son equivalentes, entonces Si = Sj. (donde k-sucesor es el
estado al que pasa el estado Si o Sj luego de ser aplicada una secuencia de entrada de longitud k).
d) Si los estados Si y Sj son k-equivalentes, entonces sus k-sucesores con respecto a cualquier
secuencia de entrada de longitud k, ∀ k, son equivalentes.
Se define como secuencia de entrada a la sucesión de posibles valores que puede tomar la
entrada de una MEF. Se define como secuencia de salida a la sucesión de posibles valores de la
salida. De define como longitud de la secuencia a la cantidad de símbolos de la sucesión.
Un estado Si de la máquina M1 y un estado Sj de la máquina M2 se dicen equivalentes si al
excitar M1 en el estado Si y M2 en le estado Sj con cualquier secuencia de entrada producen
idénticas secuencias de salida.
Si Si y Sj no son equivalentes, se dice que son distinguibles. M1 y M2 pueden referirse a la
misma máquina.
Por lo tanto Si y Sj son equivalentes si y solo si no hay forma de distinguir entre la máquina M1
en el estado Si de la máquina M2 en el estado Sj al observar sus terminales de salida. Por otro
lado, Si y Sj son distinguibles si y solo si existe al menos una secuencia de entrada que al ser
aplicada a M1 en Si y a M2 en Sj produce diferentes secuencias de salida.
La equivalencia entre Si y Sj se denota por Si = Sj y la distinguibilidad entre Si y Sj se denota
por Si ≠ Sj.
Propiedades:
40
Víctor M. Zumaeta Diseño Lógico I - Teoría
Minimizar una MEF significa reducirla al mínimo número de estados sin modificar su
funcionamiento.
El método de tablas Pk consiste en ir realizando tablas de estados k-equivalentes hasta
encontrar todos los estados equivalentes de la MEF. Una vez logrado esto se tiene que cada
grupo de estados equivalentes puede ser reemplazado por un solo estado equivalente.
En primer lugar se parte de la tabla de transición de la MEF original en la cual se identifican
todos los grupos de estados 1-equivalentes llamados clases. Esto se verifica si para cada estado
las filas correspondientes a Zu son iguales.
El paso siguiente es examinar todos los estados pertenecientes a una clase para determinar si
sus estados sucesores pertenecen todos a la misma clase. En caso afirmativo estos estados son 2-
equivalentes y se escribe {P2} que es el conjunto de clases 2-equivalentes.
De esta manera se realizan las siguientes tablas donde el conjunto {Pk} de estados k-
equivalentes quedan determinados según sus sucesores pertenezcan a clases (k-1)-equivalentes.
Cuando el conjunto {Pk} no presenta clases nuevas al compararlo con el conjunto {Pk-1}, se da
por terminada la minimización, siendo este conjunto el de las clases de estados equivalentes.
Esta solución es única.
Nótese que éste es un proceso finito, pues en el peor de los casos se llega a hacer n-1 tablas,
siendo n el número de estados de la MEF original.
Ejemplo:
Zu Su+1
Su Xu α β γ α β γ
1 1 0 0 2 2 5
2 0 1 1 1 4 4
3 1 0 0 2 2 5
4 0 1 1 3 2 2
5 1 0 0 6 4 3
6 0 1 1 8 9 6
7 1 0 0 6 2 8
8 1 0 0 4 4 7
9 0 1 1 7 9 7
Su+1
Clase P1 Su Xu α β γ
1 2B 2B 5A
3 2B 2B 5A
A 5 6B 4B 3A
7 6B 2B 8A
8 4B 4B 7A
2 1A 4B 4B
4 3A 2B 2B
B 6 8A 9B 6B
9 7A 9B 7A
Me fijo que en la misma clase sean iguales los subíndices entre un renglón y el otro:
P2= {(1, 3, 5, 7, 8) ; (2, 4, 6) ; (9)} son los 2-equivalentes.
41
Víctor M. Zumaeta Diseño Lógico I - Teoría
Su+1
Clase P2 Su Xu α Β γ
1 2B 2B 5A
3 2B 2B 5A
A 5 6B 4B 3A
7 6B 2B 8A
8 4B 4B 7A
2 1A 4B 4B
B 4 3A 2B 2B
6 8A 9C 6B
C 9 7A 9C 7A
Su+1
Clase P3 Su Xu α β γ
1 2B 2B 5A
3 2B 2B 5A
A 5 6C 4B 3A
7 6C 2B 8A
8 4B 4B 7A
2 1A 4B 4B
B
4 3A 2B 2B
C 6 8 9 6
D 9 7 9 7
Su+1
Clase P4 Su Xu α β γ
1 2C 2C 5B
A 3 2C 2C 5B
8 4C 4C 7B
5 6D 4C 3A
B
7 6D 2C 8A
2 1A 4C 4C
C
4 3A 2C 2C
D 6 8 9 6
E 9 7 9 7
Como P4 = P5 ya no sigo porque de ahora en más no se separa ninguna otra clase, entonces:
42
Víctor M. Zumaeta Diseño Lógico I - Teoría
Zu Su+1
Su Xu α β γ α β γ
A 1 0 0 C C B
B 1 0 0 D C A
C 0 1 1 A C C
D 0 1 1 A E D
E 0 1 1 B E B
Minimizar una MEF significa reducirla al mínimo número de estados sin modificar su
funcionamiento.
En método de tabla de pares consiste en buscar pares de estados k-equivalentes, teniendo en
cuenta que sus sucesores deben ser (k-1)-equivalentes, hasta encontrar todos los estados
equivalentes de la MEF. Una vez logrado esto, se tiene que cada grupo de estados equivalentes
puede ser reemplazado por un solo estado equivalente.
En primer lugar se parte de la tabla de transición de la MEF original en la cual se identifican
todos los grupos de estados 1-equivalentes o clases. Esto se verifica si para cada estado, las filas
correspondientes a la tabla Zu son iguales. Se obtiene de esta manera el conjunto {P1} de grupos
de estado 1-equivalentes.
El paso siguiente consiste en realizar una tabla donde cada fila corresponde a cada par 1-
equivalente y cada columna corresponde al siguiente par de estados Su+1 según la entrada actual
Xu, es decir que se pretende evaluar los estados sucesores de acuerdo a la combinación de
entrada.
Una vez realizada esta tabla, el método consiste en la inspección visual de la misma, buscando
identificar aquellos pares en los cuales para al menos una salida su par de sucesores no coinciden
con ningún par 1-equivalente de la tabla. Estos pares se marcan con un círculo, en la siguiente
pasada se marcan los pares que posean algún par sucesor coincidente con algún par marcado
anteriormente. De esta manera se realizan sucesivas pasadas hasta que en dos pasadas sucesivas
no se haya marcado ningún par nuevo.
Una vez llegado a este punto, se puede concluir que todos los pares no marcados son
equivalentes, de modo que puede escribirse el conjunto {P} de grupos de estados equivalentes y
queda determinada unívocamente la máquina mínima.
Sea M una máquina con n clases de estados equivalentes denotados por Σ1, Σ2, … , Σn y sea Si
cualquier estado perteneciente a Σi. La forma mínima de M, denotado por M , es una máquina
de n estados, con S = {S’1,S’2,…,S’n}, que se construye a partir de M de acuerdo al siguiente
criterio:
Si fz(Xu,Su) = Zu y fs(Xu,Su) = Sv entonces f z (X u , S' u ) = Z u y f s (X u , S u ) = S' v
Donde fz y fs son las funciones críticas de M y f z y f s son los funciones críticas de M .
Nótese que la entrada Xu aplicada a M en un estado actual perteneciente a Σu provoca la salida
Zu, lo que significa que aplicada a cualquier estado de Σu provoca la misma salida Zu, por lo
43
Víctor M. Zumaeta Diseño Lógico I - Teoría
tanto, al construir M a través de este criterio, no resulta ninguna ambigüedad del hecho que Su
es cualquier estado perteneciente a la clase Σu.
El proceso para hallar la forma mínima se llama minimización de la MEF. Entonces, la
minimización de una MEF M consiste en determinar todas las clases de estados equivalentes de
la máquina M y luego aplicar el criterio ya nombrado para construir M .
En conclusión, construir la máquina M puede ser interpretado como fundir todos los estados
equivalentes de la máquina M en un solo estado representativo.
Propiedades:
Si una máquina es la forma mínima de sí misma y, por lo tanto, no tiene una máquina
equivalente menor, se llama máquina mínima. Cualquier máquina de n estados con n clases
equivalentes y, por lo tanto, en la cual sólo hay pares de estados distinguibles es una máquina
mínima.
En conclusión, se puede encontrar una máquina M mínima para cualquier máquina M. este
resultado es muy importante ya que garantiza la existencia de una forma única de representar una
MEF, la cual es independiente de la manera en que la máquina fue especificada.
44
Víctor M. Zumaeta Diseño Lógico I - Teoría
Evaluativo 5 de teoría
Un circuito secuencial es una interconexión de flip flops y compuertas. Las compuertas por si
mismas constituyen un circuito combinacional, pero cuando se incluyen junto con los flip flops,
el circuito completo se clasifica como un circuito secuencial. Los circuitos secuenciales
sincrónicos emplean señales que afectan los elementos de almacenamiento sólo en instantes
discretos de tiempo. La sincronización se logra con un dispositivo de tiempo llamado generador
de pulso de reloj, que produce un tren periódico de pulsos de reloj. Los pulsos de reloj se
distribuyen a través del sistema de manera tal que los elementos de almacenamiento se afectan
sólo con la llegada del pulso de sincronización.
El diagrama de bloque de un circuito secuencial sincrónico consiste en un circuito
combinatorio y un número de elementos de memoria.
Clock
Elementos
de Memoria
Su Su+1
Sistema
Combinatorio
Entradas Salidas
(X u) (Z u)
Como se muestra en el diagrama, el bloque del circuito combinatorio recibe señales binarias de
las entradas externas y de las salidas de los elementos de memoria. Las salidas del circuito
combinatorio van a las salidas externas y a las entradas de los elementos de memoria. Las
compuertas en el circuito combinatorio determinan el valor binario que va a almacenarse en los
elementos de memoria después de cada transición de reloj. Las salidas de estos elementos de
memoria, a su vez, se aplican a las entradas del circuito combinatorio y determinan el
comportamiento del circuito. Este proceso demuestra que las salidas externas de un circuito
secuencial son funciones tanto de las entradas externas como del estado presente de los
elementos de memoria. El estado siguiente de los elementos de memoria es también una función
del estado actual y de las entradas externas.
45
Víctor M. Zumaeta Diseño Lógico I - Teoría
Clk
Q
S FF
SR Q
R
El Flip Flop S-R tiene 3 entradas: S (Set), R (Reset), Clk (Clock). Si el pequeño triángulo
frente a la entrada Clk está relleno denota que el FF responde a una transición negativa o frente
negativo (de 1 a 0) de la señal de reloj, en cambio si el triángulo está sin rellenar, denota que el
FF responde a una transición positiva (de 0 a 1) de la señal de reloj.
La operación del FF S-R es la siguiente. Si no hay señal de reloj, la salida Q no cambia.
Cuando viene un pulso de reloj, la salida es afectada por los valores de S y R según la siguiente
tabla y diagrama:
0,0 + 0,1 0,0 + 1,0
S R Qu+1
0 0 Qu
1,0
0 1 0
1 0 1 0 1
1 1 Prohibida
0,1
El FF S-R no debe recibir pulsos de reloj cuando S=R=1 ya que produce un estado siguiente
impredecible dependiente de los retrasos internos.
Esquema Interno:
R Q
46
Víctor M. Zumaeta Diseño Lógico I - Teoría
D
Q
FF
Clk D Q
El FF D (Delay) es una ligera modificación del S-R que se obtiene insertando un inversor entre
S y R y asignando el símbolo D a la entrada única. Su comportamiento se describe en la
siguiente tabla y diagrama de transición:
0 1
D Qu+1
1
0 0
1 1 0 1
Clk
Q
J FF
JK Q
K
El FF J-K es un refinamiento del FF S-R, pues la condición indeterminada del S-R se define
para el J-K. La entrada J es equivalente a la S y la entrada K a la R y el comportamiento es
idéntico excepto par la combinación de entradas 11. El comportamiento se ilustra en la siguiente
tabla y diagrama de transición:
Flip Flop T:
Clk
Q
FF
T T
Q
47
Víctor M. Zumaeta Diseño Lógico I - Teoría
Este FF se obtiene del JK cuando sus entradas se conectan para dar una única entrada
designada por T. el comportamiento es el siguiente:
0 0
T Qu+1
0 Qu 1
1 Qu 0 1
Para la síntesis de SSS a través de FF se parte de la descripción formal del SSS (Diagrama o
tabla de transición) con su conjunto de entrada {x}, de salida {z} y su conjunto de estados
internos {s}. Los pasos a seguir son los siguientes:
Asignación de entradas y salidas: Se deben relacionar los conjuntos {x} y {z} con las
entradas y salidas físicas de la síntesis.
- Número de cables de entrada (NCE): para calcular NCE, se debe tener en cuenta que
2NCE ≥ P, donde P es la cantidad de elementos del alfabeto de entrada de la MEF.
La asignación se realiza de manera arbitraria y se especifica en una tabla. Para nuestro
ejemplo P = 3, de modo que NCE = 2 y la asignación es la siguiente:
X2 X1 {X}
0 0 α
0 1 β
1 0 γ
1 1 -
- Número de cables de salida (NCS): de manera equivalente a NCE, NCS se calcula bajo
la condición 2NCS ≥ Q, con Q igual a la cantidad de elementos del alfabeto de salida. La
asignación se realiza también de manera arbitraria mediante una tabla. Volviendo al
ejemplo, Q = 3, NCS = 2
Z2 Z1 {Z}
0 0 C
0 1 -
1 0 B
1 1 A
Asignación de estados: Antes que nada se debe decidir el número de FF (NFF) que se
requieren para la síntesis. Teniendo en cuenta que por cada FF se tienen 2 estados, debe
emplearse que 2NFF ≥ R, donde R es la cantidad de estados de la MEF original.
La asignación de estados se realiza de manera que exista una correspondencia biunívoca entre
el conjunto {s} y parte (o todo) del conjunto de estados posibles de los FF. No existe una regla
exacta para realizar la asignación de estados, pero se pueden tener en cuenta las siguientes
recomendaciones:
- 2 estados que transicionan a un mismo estado, se les da asignaciones que difieren en un bit.
- 2 estados que provengan de un mismo estado reciben asignaciones que difieren en un bit.
48
Víctor M. Zumaeta Diseño Lógico I - Teoría
Volviendo al ejemplo, y llamando U al estado actual del 1º FF y V al estado actual del 2º FF,
la asignación es la siguiente:
U V {S}
0 0 -
0 1 1
1 0 2
1 1 3
Elección de los FF: No hay una forma de elegir el tipo de FF, pero aún así su elección
puede simplificar o no el diseño. Una vez elegido el FF, es conveniente trabajar con su tabla de
excitación.
Para el ejemplo se eligen FF JK cuya tabla es:
Qu Qu+1 J K
0 0 0 Ø
0 1 1 Ø
1 0 Ø 1
1 1 Ø 0
Esquema de síntesis: en general es útil un esquema para poner en evidencia las variables y
funciones en juego de la síntesis, la que ayuda a clarificar el panorama. Para el ejemplo, el
esquema es el siguiente:
Qu
FF Ju
JK
Ku
Qv
FF Jv
JK
Kv
V
U
Comb.
X1 ? Z1
X2 Z2
Síntesis del circuito combinacional: Para este caso es conveniente realizar los 6 mapas de
Karnaugh para las funciones Z1, Z2, Ju, Ku, Jv, Ju. Antes de realizar esto, conviene redibujar el
diagrama de transición de la MEF con las nuevas asignaciones de entrada, salida y de estados.
Análisis de verificación: una vez terminada la síntesis, se realiza un análisis para eliminar
cualquier tipo de errores. La más importante es analizar lo que sucede cuando el SSS entre en
un estado tomado como imposible. En estos casos, pueden resultar estados transitorios o
49
Víctor M. Zumaeta Diseño Lógico I - Teoría
aislados. Para el segundo caso se debe volver atrás en la síntesis y desechar alguna indiferencia
para forzar que los estados aislados se transformen en transitorios.
Sin Sout
D D ... D
La entrada serie Sin especifica un nuevo bit que será desplazado en un extremo para cada pulso
de reloj. Este bit aparece en la salida serie Sout después de n pulsos de reloj y se pierde un pulso
mas tarde. De esta manera, un registro de n bits de entradas serie y salida serie, puede usarse para
retardar una señal n pulsos de reloj.
Un registro de desplazamiento de entrada serie y salida paralelo es el siguiente:
Clk
Sin D D ... D
Q Q Q
Q1 Q2 Qn
Para cada pulso del reloj, el registro carga nuevos datos de las entradas D de cada FF, los
cuales van apareciendo en las salidas Q1, Q2,…. hasta Qn, después de n pulsos de reloj.
Comercialmente, se denomina Registro de desplazamiento universal, al registro que posee las
siguientes características:
D3 D2 D1 D0
LI RI
Ck Shift Register C0
4 bits
Clear C1
Q3 Q2 Q1 Q0
50
Víctor M. Zumaeta Diseño Lógico I - Teoría
C1 C0 Función
0 0 detención ( )
0 1 despl. a der. ()
1 0 despl. a izq. ()
1 1 carga
2 entradas LI y RI que pueden usarse para la conexión en cascada con otros registros para
aumentar su longitud.
Existen 4 salidas Q0, Q1, Q2, Q3.
El uso mas común de los registros de desplazamiento es la transformación de información en
serie a paralelo y viceversa.
Un contador es un dispositivo con memoria que cambia de estado cada vez que recibe un pulso
de reloj y con salida que permite determinar el estado alcanzado luego de cada pulso. De este
modo el número de estados que el contador haya avanzado a partir de un estado considerado
como inicial, será igual al número de pulsos recibidos, de modo que cuenta la cantidad de pulsos.
Un contador binario de n bits consiste en n FF, por lo que puede poseer hasta 2n estados
diferentes de manera que puede contar desde 0 a 2n-1.
Un contador sincrónico cuenta los pulsos de reloj, los cuales son recibidos por todas las
entradas Ck de los FF.
Nótese que el diagrama de transición para cualquier contador debe tener la siguiente forma:
m 1
...
Donde la salida asociada al estado inicial es 0 y se va incrementando en 1 bit para cada estado
consecutivo.
Existen diferentes tipos de contadores que se diferencian según las siguientes características:
Capacidad: esta dada por el mayor número al que llega el contador. Para un contador de
4 bits puede llegar a 15 si se trata de un contador binario, o de 0 a 9 si es un contador decimal.
51
Víctor M. Zumaeta Diseño Lógico I - Teoría
D3 D2 D1 D0
Cout C0
Clock Contador C1
4 bits
Clear Cin
Q3 Q2 Q1 Q0
C1 C0 Función
0 0 detiene cuenta
0 1 ↑
1 0 ↓
1 1 carga
Los valores de la cuenta se obtienen a través de las salidas Q0, Q1, Q2 y Q3. Existe una salida
adicional Cout que en la conexión en cascada se conecta a la entrada Cin del próximo contador, la
cual se habilita cuando el contador alcanza la cuenta máxima.
Para la síntesis de SSS a través de contadores se parte de la descripción formal del SSS o MEF,
preferentemente a través de un diagrama de transición con su conjunto de entrada {X}, de salida
{Z} y su conjunto de estados internos {S}. Supondremos que la capacidad del contador es lo
52
Víctor M. Zumaeta Diseño Lógico I - Teoría
suficientemente grande como para abarcar todos los estados de la MEF, pues en caso contrario,
el problema se resuelve conectando 2 o mas contadores en cascada. Para ilustrar el método
tomamos el siguiente ejemplo y un contador universal binario de 4 bits.
1/1
1/1
0/0
A B
0/1 0/1
1/0 1/1
D C
1/0
0/1 0/1
Q2 Q1 Q0 S
0 0 0 E
0 0 1 D Nótese que Q3 no se usa pues sólo
0 1 0 A se necesitan 5 estados. D3 tampoco
0 1 1 - es necesaria, por lo que se conecta a
1 0 0 - “0” o “1”.
1 0 1 -
1 1 0 C
1 1 1 B
53
Víctor M. Zumaeta Diseño Lógico I - Teoría
Q3 Clock
Q0
Q1 C1
Contador
Q2
C0
D3 D2 D1 D0
“0”
Comb.
X Z
X QA QB QC C1 C0 DA DB DC Z Func
0 0 0 0 0 1 Ø Ø Ø 1 ↑
0 0 0 1 0 1 Ø Ø Ø 1 ↑
0 0 1 0 1 1 1 1 1 0 carga
0 0 1 1 Ø Ø Ø Ø Ø Ø
0 1 0 0 Ø Ø Ø Ø Ø Ø
0 1 0 1 Ø Ø Ø Ø Ø Ø
0 1 1 0 1 1 0 0 0 1 carga
0 1 1 1 1 0 Ø Ø Ø 1 ↓
1 0 0 0 0 0 Ø Ø Ø 1 no cta
1 0 0 1 1 1 1 1 0 0 Carga
1 0 1 0 0 0 Ø Ø Ø 1 no cta
1 0 1 1 Ø Ø Ø Ø Ø Ø
1 1 0 0 Ø Ø Ø Ø Ø Ø
1 1 0 1 Ø Ø Ø Ø Ø Ø
1 1 1 0 1 1 0 0 1 0 carga
1 1 1 1 0 0 Ø Ø Ø 1 no cta
54
Víctor M. Zumaeta Diseño Lógico I - Teoría
Para la síntesis de SSS a través de contadores se parte de la descripción formal del SSS o MEF,
preferentemente a través de un diagrama de transición con su conjunto de entrada {X}, de salida
{Z} y su conjunto de estados internos {S}. Los pasos a seguir son los siguientes:
Asignación de entradas y salidas
Asignación de estados: se debe tratar en lo posible, para disminuir las funciones que
resultarán, de asignar los estados de tal forma que las transiciones coincidan con los
funcionamientos naturales del registro.
Esquema de síntesis: en general, es útil hacer el esquema de síntesis para poner en
evidencia las variables en juego, lo que puede clarificar el panorama:
Representación y síntesis de las funciones
Análisis de verificación: es conveniente realizar el análisis del circuito obtenido para
evitar errores y para analizar lo que sucede cuando el SSS cae en algún estado tomado como
imposible. En estos casos existen 2 posibilidades: que el estado resulte transitorio o aislado. En
el segundo caso, será necesario hacer uso de la entrada clear o volver sobre la síntesis
modificando alguna condición de indiferencia.
8. Análisis de SSS
El análisis de SSS tiene por objetivo hallar el diagrama de transición de la MEF partiendo del
circuito secuencial. Un circuito secuencial consta de un circuito combinacional retroalimentado a
través de elementos de memoria.
Clock
Elementos
de Memoria
Su Su+1
Sistema
Combinatorio
Entradas Salidas
(X u) (Z u)
En primer lugar se identifican los elementos de memoria y se reconocen todos los estados
posibles del sistema. Estos elementos pueden ser un conjunto de n Flip Flops, un contador de n
bits o un registro de n salidas. En todos estos casos el número de estados posibles de la MEF será
2n .
Será útil contar con las reglas de funcionamiento de estos elementos de memoria para poder
conocer las transiciones entre estados.
Por otro lado, se debe realizar un análisis del circuito combinacional. Puede ser útil trabajar
con las formas algebraicas de cada función del circuito como también con la tabla de verdad.
55
Víctor M. Zumaeta Diseño Lógico I - Teoría
Una vez realizados estos pasos, se procede a analizar todos los estados posibles de la MEF.
Para esto se analiza cada estado y las transiciones que realiza para cada combinación posible de
entrada. De esta manera se va completando el diagrama de transición.
El análisis SSS sirve para verificar el funcionamiento de cualquier SSS que hayamos
diseñado, y para saber qué es lo que sucede con los estados tomados como no posibles durante la
síntesis. El análisis también sirve para conocer el comportamiento de cualquier SSS dado.
La integración a muy grande escala (VLSI) abrió las puertas a la implementación de circuitos
digitales poderosos a bajo costo. Es posible la realización de chips específicos donde todas sus
partes están cuidadosamente diseñadas para un requerimiento especial. Otro tipo de chips menos
específicos como las celdas estándar y las MPGA (Mark Programmed Gale Arrays) han
posibilitado una forma más fácil de diseñar y manufacturar circuitos integrados de aplicación
específico (ASICs). Estas técnicas, sin embargo, son muy costosas (desde $ 20.000 a $ 200.000)
y pueden tomar meses para su producción, lo que resulta viable sólo para la producción a gran
escala.
En la industria eléctrica es vital la llegada al mercado de nuevos productos en el menor tiempo
posible. Además es importante que el riesgo financiero del desarrollo de nuevos productos sea
limitado a modo de poder prototipear nuevas ideas.
Para estos propósitos surgieron las FPGAs (Field Programmed Gate Arrays) que proveen una
manufacturación instantánea y muy bajos costos de prototipo (cerca de $ 100). Un dispositivo
programable en campo es un dispositivo cuya estructura lógica final puede ser configurada por el
usuario final.
Una FPGA consiste en un arreglo de elementos aislados que pueden ser conectados entre sí de
manera general. Como en una PAL, las conexiones internas son programables por el usuario.
Para facilitar la implementación de una gran variedad de circuitos, la FPGA debe ser lo más
versátil posible.
Los elementos de la FPGA se denominan bloques lógicos (BL) y las conexiones internas se
llaman rutas de interconexión (RI).
Un esquema de una FPGA puede ser el siguiente:
BL
Celdas
RI entrada/salida
Bloques Lógicos:
La estructura y contenido de un bloque lógico se denomina arquitectura. La arquitectura de
los bloques lógicos puede ser diseñada de diferentes maneras. Algunos bloques lógicos pueden
56
Víctor M. Zumaeta Diseño Lógico I - Teoría
ser simples como una compuerta NAND de 2 entradas, mientras que otros pueden ser complejos
como Multiplexores, Registros e incluso estructuras parecidas a las PAL. La mayoría de los
bloques lógicos contienen algún tipo de Flip Flop para la implementación de circuitos
secuenciales.
Rutas de Interconexión:
La estructura y contenido de las conexiones internas de una FPGA se denominan arquitectura
de ruteo. La arquitectura de ruteo consiste tanto en conexiones simples (como cables) como en
interruptores programables. Estos interruptores pueden ser de distinto tipo: desde transistores de
paso, anti fusibles, transistores EPROM, transistores EEPROM, etc. Algunas FPGA ofrecen un
gran número de conexiones simples y otras ofrecen menos conexiones y más complejas.
En los últimos años varias compañías se han dedicado al diseño de FPGA’s aunque cada
producto tiene sus propias características, pueden ser clasificados en una de éstas cuatro
categorías según su estructura interna: arreglo simétrico, basado en filas, PLD jerárquico y mar
de compuertas.
BL BL
RI
RI
Bloque PLD
BL
RI superpuestos
con los BL
RI
Mar de Compuertas PLD Jerárquico
Se define como elementos programables a las llaves que permiten la conexión entre los
caminos y entre los bloques lógicos. Estos elementos deben cumplir con las siguientes
características:
Debe ocupar la menor área posible dentro del chip.
En ON debe tener baja resistencia y en OFF alta resistencia.
Baja capacitancia parásita.
Debe fabricarse en forma viable en gran número dentro de un mismo chip.
57
Víctor M. Zumaeta Diseño Lógico I - Teoría
Un FPGA típico posee 10000 elementos programables con tecnología CMOS estándar.
Algunos son reprogramables sin quitarlos de la placa de circuitos.
Las FPGA disponibles comercialmente se pueden clasificar según su tecnología de
programación o según su arquitectura de bloques.
Según la tecnología de programación se diferencian las siguientes categorías:
Celdas SRAM
Antifusibles
Transistores EPROM
Transistores EEPROM
Look – up table
Basado en Multi
Bloques PLS
Compuertas NAND
Multiplexores y compuertas
Transistores pares
Las diferentes FPGA’s combinan las 3 categorías nombradas. Por ejemplo, la compañía
ALTERA desarrolló FPGA’s con una estructura general de PLD jerárquica, con arquitectura de
bloques PLD y con tecnología EPROM.
Un circuito lógico puede ser implementado como una FPGA siguiendo una serie de pasos que
se ilustran mediante un flujo de diseño:
Entrada de Diseño
Optimización
Mapeo
Ubicación
Ruteo
Programación
de la unidad
Los pasos básicos del flujo de diseño se describen a continuación, pero pueden variar de
empresa a empresa según el software destinado a la programación de las diferentes FPGA’s.
58
Víctor M. Zumaeta Diseño Lógico I - Teoría
1). Entrada de diseño: la descripción del circuito lógico puede ser ingresada en la mayoría
de los programas, de 3 maneras diferentes:
2). Compilación del diseño: en la compilación del diseño, el circuito integrado es traducido
al lenguaje específico del software, el cual realiza la detección de errores. En esta etapa
del diseño se realiza el mapeo, que consiste en la conversión del circuito ingresado en
circuito de bloques lógicos, tratando de que le número de bloques sea mínimo.
3). Verificación del diseño: se verifica el diseño logrado mediante una simulación que
puede ser funcional (verifica el funcionamiento) o temporal (verifica los retardos).
59
Víctor M. Zumaeta Diseño Lógico I - Teoría
Evaluativo 6 de teoría
Para la síntesis de circuitos lógicos con FPGA a través del programa MAX+PLUSII existe una
variedad de librerías proporcionadas por el programa que contienen una gran variedad de
componentes lógicos, los cuales pueden ir desde los más simple a los más complejo. Existen dos
tipos de librerías: de recursos y de valor agregado:
Librerías de Recursos: Estas librerías contienen todos los dispositivos que pueden
implementarse en la FPGA. Según su complejidad encontramos las siguientes librerías:
Prim (funciones primitivas): posee los bloques lógicos de construcción básicos, como
compuertas AND, NAND, negadores, etc.
Mf (macro-funciones): incluye todos los dispositivos pertenecientes a la familia lógica
7400, los cuales pueden ser desde compuertas AND hasta multiplexores, contadores, etc.
Mega_lpm (librería de módulos parametrizados): posee compuertas, componentes
aritméticos y componentes de almacenamiento, cuyos parámetros pueden ser asignados por el
usuario. Son las funciones mas versátiles y adaptables.
Librerías de valor Agregado: Altera proporciona librerías adicionales que el usuario puede
comprar para aumentar las capacidades del programa. Entre este tipo de librerías se encuentran:
Modelos negadores IP que el usuario puede probar antes de comprar.
AMPP (mega-funciones de programas asociados a altera): el usuario también puede crear
sus propias librerías a partir de proyectos creados con anterioridad.
60
Víctor M. Zumaeta Diseño Lógico I - Teoría
El editor de texto permite el ingreso del diseño lógico al programa a través de algún lenguaje
de descripción de hardware llamado AHDL. Este lenguaje permite la descripción del hardware a
través de su comportamiento orientado para la definición de sistemas lógicos y maquinas de
estado de gran complejidad. Se asemeja a los lenguajes de programación de software de alto
nivel, pero con la diferencia de que las instrucciones se ejecutan en paralelo.
Un archivo AHDL incluye las siguientes secciones:
Titulo (opcional): consta de una única línea y no genera hardware. Es importante sólo
para fines de documentación.
Include (opcional): permite importar texto desde otros archivos en AHDL. Se puede usar
para incluir funciones de menor nivel.
Constant (opcional): permite definir un nombre simbólico y asociarlo a un valor
constante.
Define (opcional): permite definir una función evaluable que devuelve un valor en base a
sus argumentos. No genera hardware.
Parameters (opcional): permite declarar parámetros que controlan la implementación de
una mega-función o macro-función parametrizada. Los parámetros pueden ser nombres
definidos por el usuario o por Altera. Un parámetro solo puede ser usado luego de ser
declarado. No se permite referencias cruzadas.
Function Prototype (opcional): es la descripción de una función.
Subdesing (opcional): declara tipo y nombre de las puertas de un diseño con formato .tdf.
Variable (opcional): se declaran las variables usadas en la sección Logia para definir
lógica interna.
Logic: define las operaciones lógicas del .tdf. se compone de ecuaciones, expresiones y
referencias.
El editor gráfico es una aplicación de MAX+PLUSII que permite al usuario ingresar un diseño
lógico de manera gráfica, componente a componente. Cada componente se ingresa como un
símbolo y puede ser elegido de cualquiera de las librerías disponibles. En el caso de los
componentes parametrizables, se pueden modificar sus parámetros a través de una ventana de
diálogo en cualquiera momento del diseño.
Los elementos ingresados se pueden ubicar de cualquier manera en la hoja de diseño y se
pueden realizar todas las interconexiones necesarias a través de líneas que puede representar uno
o más cables según su grosor.
Las entradas y salidas deben ingresarse como símbolos y se les debe asignar los nombres
correspondientes.
El editor de formas de onda es una aplicación de MAX+PLUSII que puede cumplir 2
funciones: el ingreso de un diseño o la simulación de un proyecto.
Para el ingreso de un diseño a través del editor de formas de ondas, debe cuidarse que el
archivo sea guardado con extensión edf. En primer lugar se crean todas las entradas, salidas y
nodos internos necesarios para el diseño. A continuación, se asigna valores a las entradas a través
del tiempo y para cada instante se asigna la salida correspondiente a la combinación de entrada
en ese instante.
Se pueden agrupar las entradas o las salidas de modo que sus valores puedan ser ingresados en
otro sistema de numeración además del binario (decimal, hexadecimal, octal).
61
Víctor M. Zumaeta Diseño Lógico I - Teoría
El floorplan editor proporciona una vista gráfica de las asignaciones actuales así como de los
resultados de la última compilación a través de 2 vistas diferentes:
Lab view: permite ver la estructura interna del dispositivo programado.
Device view: presenta la vista externa del dispositivo. Los pines asignados aparecen
coloreados y etiquetados, y los pines reservados aparecen en color negro.
Este editor puede usarse en modo sólo lectura, para conocer las asignaciones del dispositivo; o
en modo editable, para modificar dichas asignaciones.
El editor de Símbolos: permite modificar los símbolos creados a través del editor gráfico.
Permite modificar el nombre de las entradas, especifican cuales variables se usan y cuales no,
etc.
Una vez ingresado el diseño de un proyecto, el procesamiento del mismo consiste básicamente
de 3 pasos:
Compilación.
Simulación.
Análisis Temporal.
62
Víctor M. Zumaeta Diseño Lógico I - Teoría
Simulación: la simulación del proyecto se realiza a través del editor de formas de ondas. En
primer lugar, se incluyen todas las entradas y salidas e incluso los nodos internos necesarios del
diseño. A continuación se asignan diferentes valores a las entradas. En el caso de tratarse de un
circuito secuencial, se da los valores correspondientes al clock, pudiéndose elegir el período.
Una vez realizado esto se hace correr el simulador.
En el editor de formas de ondas aparecerán las salidas visibles sólo si la compilación realizada
fue temporal. De esta manera el usuario puede comprobar si su diseño cumple con los requisitos
del problema.
Análisis Temporal: el análisis temporal da la información acerca de los retardos del circuito.
El analizador temporal dispone de 3 formas de análisis.
Registered Performance: calcula la máxima frecuencia que puede recibir el reloj interno.
Delay Malrex: calcula los retardos combinatorios entre las entradas y las salidas.
Setup/Hold Matrix: calcula el retardo entre las salidas y el clock para circuitos
secuenciales.
63
Víctor M. Zumaeta Diseño Lógico I - Teoría
o 2 displays de 7 segmentos.
o Punto de expansión en 42 pines I/O y pines dedicados.
C1 C1 C1 C1
C2 C2 C2 C2
C3 C3 C3 C3
Según la posición de estos jampers, la placa se configura según alguna de las opciones antes
nombradas.
Nótese que para la conexión de varias placas, la última placa debe configurarse como una placa
simple.
64
Víctor M. Zumaeta Diseño Lógico I - Teoría
Dispositivo EPM71285:
Es un dispositivo de mediana densidad dentro de los de alta densidad de Altera.
Su capacidad es de 2500 compuertas.
Familia de alto rendimiento basado en elementos EEPROM.
Montado en un zócalo de 84 pines con encapsulado tipo PLCC.
Tiene 128 macro-celdas. Cada macro-celda contiene un arreglo programable AND con
OR fija en un registro configurable con clock, clear y preset.
Es ideal para sistemas combinacionales y secuenciales.
Dispositivo EPF10K20:
Es un dispositivo de alta densidad de Altera.
Esta basado en elementos reconfigurables SRAM.
Posee una capacidad de 20000 compuertas.
Se encuentra soldado a la placa en un encapsulado tipo RQFP de 240 pines.
Tiene 1152 elementos lógicos (E). Cada LE contiene 4 look-up tables, un flip flop
programable y señales dedicadas para funciones “carry” y “cascada”.
Es importante recalcar que el dispositivo EPF10K20 se basa en memoria volátil de modo
que es necesario reprogramarlo cada vez que se descarga. Esto no sucede con el dispositivo
EPM71285 ya que éste basa su programación en tecnología EEPROM.
Entradas de alimentación:
CD-IN y RAW: la entrada CD-IN es de 7 a 9V en 350mA como mínimo. La entrada
RAW son dos orificios para conectar una fuente de tensión sin regular. Ambas entradas se
dirigen a un regulador de voltaje 7805 que regula la entrada a 5V positiva.
Entradas y Salidas de los dispositivos:
Puerto VGA: permite al EPF10K20 controlar un video monitor externo y general los
niveles de tensión para un VGA estándar.
Puerto Mouse: permite al EPF10K20 recibir datos de un mouse o de un teclado.
65
Víctor M. Zumaeta Diseño Lógico I - Teoría
La RAM consiste en un grupo de registros en los cuales se pueden almacenar palabras que
luego pueden ser leídas y modificadas. Por esta razón la RAM es una memoria de
lectura/escritura a diferencia de la ROM ya que no se necesitan hacer o deshacer conexiones para
escribir nuevas palabras.
La comunicación entre la RAM y su ambiente se logra mediante líneas de entradas y salidas de
datos, líneas de selección de dirección y líneas de control que habilitan el funcionamiento del
dispositivo (CS) y especifican la dirección de transferencia (R/W). Las n líneas de entrada o
salida de datos proporcionan la información que se va almacenar o que sale de la memoria (n se
llama longitud de la palabra) las k líneas de direccionamiento proporcionan un número binario de
k bits que especifica una palabra particular elegida entre las 2k palabras disponibles de la
memoria.
Para realizar la operación de escritura en una RAM se siguen los siguientes pasos:
Los pasos que deben realizarse para leer una palabra almacenada es la RAM son:
1. Aplicar la dirección binaria de la palabra deseada a las líneas de direccionamiento.
2. Se activa el dispositivo (CS=0) y se habilita la operación de lectura (R/W=1)
3. La palabra deseada aparecerá en las líneas de entrada/salida de datos.
Esquema Externo:
Clock
A0 (I/O)0
Líneas de Líneas
Direccionamiento RAM entrada/salida
Ak-1 (I/O)n-1 de Datos
CS
R/W
Líneas de Control
66
Víctor M. Zumaeta Diseño Lógico I - Teoría
Acumulador
RAM ALU
Unidad de
Control
Los microprocesadores constituyen la parte más importante de una computadora. Sin embargo,
necesita una serie de elementos periféricos para funcionar, ya que debe recibir las instrucciones
de algún programa, debe recibir los datos que debe procesar y debe volcar estos resultados de
alguna manera.
La estructura básica de una computadora (CPU y elementos periféricos) es la siguiente:
67
Víctor M. Zumaeta Diseño Lógico I - Teoría
CPU
Memoria I/O
Subsistema I/O (Entrada – Salida): permite el intercambio de datos con el mundo externo.
Ejemplo impresora, monitor, etc.
Subsistema de Memoria: su objetivo es almacenar los datos a procesar y el programa con las
instrucciones que indican cómo procesar esos datos. Se trata generalmente de RAM y/o ROM.
CPU: es la unidad de control de procesamiento. Cuando se trata de un chip se habla de
microprocesador.
Estos tres elementos se encuentran interconectados a través de buses o canales. Según su
función se distingue en 3 tipos de buses:
Buses de Datos: es un bus de datos bidireccional por donde se transmiten los datos hacia
la CPU desde la memoria o el sistema de entrada, o desde la CPU para escribirse en memoria o
ser mostrada a la salida. Su ancho determina la longitud de palabra.
Bus de Direcciones: es el bus unidireccional del CPU a la memoria por el cual se indica
la dirección de memoria a leer o escribir.
Bus de Control: entre las líneas del bus de control se encuentran por ejemplo R/W que
indica si los datos deben leerse o escribirse en memoria, CS que habilita el funcionamiento del
CPU, reset, que devuelve el CPU a un estado inicial, el clock, que sincroniza las actividades de
todos los elementos que conforman la computadora, etc. Es decir, que el bus de control indica
que tipos de operaciones se está realizando con los datos.
En toda acción por más simple que sea, se puede distinguir la idea de un bucle o lazo:
Proceso
Este lazo esta formado por sensores que miden el proceso. Un Controlador que toma nota de lo
que le informan los Sensores y decide que órdenes enviar a los Actuadores para que actúen
corrigiendo o no el Proceso.
Esta corrección sobre el Proceso será observada por los Sensores que a su vez informarán al
Controlador.
Por ejemplo, el siguiente bucle es común en nuestra vida diaria:
Estacionar el auto: Ojos (censan la distancia al cordón) – Cerebro (procesa y decide qué hacer
con los brazos) – Brazos (actúan sobre el volante).
En este ejemplo el hombre es prácticamente el bucle. Con sus sentidos censa el proceso, con su
cerebro controla y con sus músculos actúa.
68
Víctor M. Zumaeta Diseño Lógico I - Teoría
Cuando el hombre es reemplazado en la tarea que a veces es rutinaria o peligrosa, por algún
mecanismo, entonces se dice que existe un control automático o automatismo.
Clasificación:
Automatismo Analógico
Digital Electromecánicos
Neumáticos
Hidráulicos
Electrónicos
Se puede usar una primera clasificación entre los controladores, teniendo en cuenta la forma en
que trabajan. Así podemos distinguir entre controladores Analógicos y controladores Digitales.
Esta diferencia se basa en la forma en que reciben y envían las señales.
Debido al fuerte avance de la electrónica en la parte digital, se están haciendo cada vez más
comunes los equipos digitales.
Los controladores digitales se clasifican en dos grandes grupos: los que usan lógica cableada y
los que usan lógica programable.
En los diseños antiguos o en los actuales muy simples encontramos controladores lógicos
cableados a los cuales los podemos distinguir por sus grandes armados, cubiertos de relays,
interconectados por numerosos cables. Si se debía dar de baja al controlador por cambio de
planes, era despiezado y sus componentes principales quedaban como repuestos usados para
otros equipos similares.
Con la invención del transistor en la década de los 50 y de los circuitos integrados en la de los
80, la electrónica industrial tiene un gran avance y los controladores digitales fueron más
confiables. En los años 70 se inventó el microprocesador y produjo una revolución en nuestras
vidas.
Los controladores digitales que usan lógica programada se caracterizan por la sencillez de su
cableado. Por algún lado se introduce el programa de control y el sistema está listo para
funcionar. Si se desea que cumpla con otra función basta con cambiar el programa.
Autómata
Computadora Programable
(PLC)
Lógica Programable
Microcontrolado
Microprocesador r
69
Víctor M. Zumaeta Diseño Lógico I - Teoría
Se puede hablar de las siguientes ventajas del uso de los PLC frente a lógica cableada antigua:
Como es una tecnología que sigue evolucionando, seguramente este listado se incrementará día
a día.
Podemos distinguir cinco bloques en la estructura interna de los Autómatas Programables, que
pasaremos a describirlos:
A
S E Fuente de Alimentación
c
e n S t
n t a u
s r Unidad Central de l a
o a i d
Procesamiento (CPU) d
r d o
a a r
e s
s s Interfaces e
s
Periféricos
PLC, PC,
Impresora,
Programador Etc.
Bloque de Entradas: En él se reciben las señales que proceden de los sensores. Estas son
adaptadas y codificadas de forma tal que sean comprendidas por la CPU. También tiene como
misión proteger los circuitos electrónicos internos del PLC, realizando una separación eléctrica
entre éstos y los sensores.
70
Víctor M. Zumaeta Diseño Lógico I - Teoría
Interfaces: Son los canales de comunicación con el exterior. Por ejemplo con:
• los equipos de programación
• otros autómatas.
• computadoras.
• etc..
La Estructura externa se refiere al aspecto físico exterior del PLC. Actualmente en el mercado
existen dos tendencias:
Diseño compacto: En un solo bloque residen todos sus elementos (fuente, CPU,
entradas/salidas, interfaces, etc.). Tienen la ventaja de ser generalmente más baratos y su
principal desventaja es que no siempre es posible ampliarlos.
+
+ +
+
Unidades de Entrada: Son los dispositivos básicos por donde llega la información de los
sensores. Vienen con distintas posibilidades:
Analógicas. Se deben usar cuando la entrada corresponde a una medida de por ejemplo:
temperatura, presión, etc. En su interior tienen un dispositivo que convierte la señal analógica a
digital (conversor A/D). Vienen en distintos rangos de tensión e intensidad. (por ejemplo 0 a
10V, 0 a +- 10V, 4 a 20 mA, etc.). La resolución puede ser de 8 o 12 bits.
Digitales. Son las más utilizadas y corresponde a señales todo/nada. O sea la presencia o
no de una tensión (por ejemplo de fines de carrera, termostatos, pulsadores, etc.). Esta tensión
puede ser alterna ( 0-220V, 0-110V) o continua (generalmente 0-24V).
Unidades de Salida: Son los bloques básicos que excitarán los actuadores. Al igual que las
entradas pueden ser analógicas o digitales:
Analógicas. Se deben usar cuando el actuador que se debe activar es analógico (por
ejemplo una válvula modulante, un variador de velocidad, etc.). En este caso se dispone de un
71
Víctor M. Zumaeta Diseño Lógico I - Teoría
dispositivo interno que realiza el proceso inverso al de las entradas analógicas, un conversor
D/A.
Digitales. Vienen de tres tipos. Con salida a triac, a relé o a transistor. En el primer caso
es exclusivamente para corriente alterna. En el segundo puede ser para continua o alterna. En el
caso de salida a transistor es exclusivamente para continua. Soportan en todos los casos
corrientes entre 0,5 y 2 A.
Son las reglas por las cuáles se le escribe el programa al PLC. Es más bien una característica
del dispositivo programador. Existen diferentes lenguajes que el usuario puede elegir de acuerdo
a su gusto o experiencia.
Listado de instrucciones: Como su nombre lo indica se trata de introducir una lista de
instrucciones que debe cumplir el autómata.
Con símbolos lógicos: La programación se realiza usando símbolos similares a los que
vimos para las compuertas lógicas.
Con símbolos de contactos: Es el más popular y la programación se lleva a cabo usando
redes de contactos (ladder).
Arranque Autotest
Inicial
Lee Entradas
Autotest
Ejecuta Programa Ciclo
Actualiza Salidas
72
Víctor M. Zumaeta Diseño Lógico I - Teoría
El tiempo que demora en recorrer el ciclo de trabajo, depende del tamaño del programa
(cantidad de instrucciones) pero es muy pequeño, del orden de los milisegundos.
Llamamos memoria a cualquier dispositivo que nos permita guardar las instrucciones escritas
por el programador. Su capacidad de almacenamiento se mide en Kbyte o en Mbyte y está
relacionada con el tamaño máximo del programa que podemos escribir.
En la mayoría de los casos están diseñadas con elementos electrónicos. Se distinguen varios
tipos:
PROM (Programmable Read Only Memory). Memorias para ser leídas únicamente.
Permiten ser programadas una sola vez. Normalmente se usan para automatismos de equipos
fabricados en serie. Ante una falta de energía mantienen su contenido.
EPROM: Son iguales a las anteriores, pero está permitido borrar su contenido para
reprogramarlas. El borrado se realiza por la aplicación de luz ultravioleta, a través de una
ventanilla de cuarzo en su encapsulado.
EEPROM: Iguales a las anteriores pero el borrado se realiza por la aplicación de señales
eléctricas.
73
Víctor M. Zumaeta Diseño Lógico I - Teoría
Índice
Evaluativo 1 ...................................................................................................................................1
Evaluativo 2 .................................................................................................................................11
Evaluativo 3 .................................................................................................................................18
Evaluativo 4 .................................................................................................................................32
Evaluativo 5 .................................................................................................................................45
Evaluativo 6 .................................................................................................................................60
74