Академический Документы
Профессиональный Документы
Культура Документы
Asignatura:
DIGITAL I
Carrera:
Ingeniera Electrnica
Ao 2011
DISEO LGICO
RESOLUCIN DE PROBLEMAS ABIERTOS DE INGENIERA
Habitualmente el Diseo Lgico se inserta en un proceso ms amplio de la resolucin de problemas abiertos de ingeniera. Podramos especificar este proceso de la siguiente manera:
DISEO LGICO
La etapa de ANLISIS DEL PROBLEMA parte de algo que se quiere lograr pero que no est completamente definido todava, constituyendo un PROBLEMA ABIERTO. Por ejemplo, supongamos que el problema fuese disear el control automtico de un sistema de dos ascensores para un edificio de oficinas de 10 pisos. Hasta este punto hay muchas opciones para elegir. Lo que se hace es seleccionar los criterios ms adecuados. Por ejemplo, un criterio podra ser que el flujo de personas a las oficinas sea lo ms fluido posible, para evitar demoras. Esto implicara un anlisis de la manera cmo debera comportarse el sistema. Habra que analizar por ejemplo, cmo es el flujo de personas, si en general se dirigen solamente de la planta baja a una oficina en particular, o hay un desplazamiento entre oficinas, etc. Por ejemplo, si convendra que cada ascensor recorriera todos los pisos o estuviese dedicado a ciertos pisos en particular. Si el botn de llamada de cada piso sera nico para los dos ascensores o habra uno para cada ascensor. Si al llamar al ascensor se especificara la direccin (Ascenso/Descenso) o no, etc. Tambin habra que definir cmo se comportara cada ascensor, cules sern las reglas que gobernaran su comportamiento, si el comportamiento de los ascensores sera independiente o estaran relacionados, etc. En esta etapa se pueden aplicar conocimientos de otras reas de la ingeniera, ms all de los Sistemas Lgicos propiamente dichos. Una vez concluida esta etapa se tiene un PROBLEMA CERRADO para encarar la etapa del Diseo Lgico.
La etapa de DISEO LGICO trabaja nicamente con la relacin entre las seales lgicas de entrada y las seales lgicas de salida. Si las seales lgicas de salida dependen solamente del valor de las seales lgicas de entrada en cualquier todo momento en cual se analice, el sistema a disear ser de tipo Combinacional o Combinatorio, constituyendo lo que denominaremos DISEO LGICO COMBINACIONAL. Si las seales lgicas de salida dependen del valor de las seales lgicas de entrada en ese mismo momento y de las secuencias anteriores de entradas, el sistema a disear ser de tipo Secuencial y ser un sistema con memoria. Dicho de otra manera, las salidas dependern de las entradas y del estado interno del sistema. A este tipo de diseo lo denominaremos DISEO LGICO SECUENCIAL.
Luego de la etapa de Diseo Lgico propiamente dicha, resta la integracin con el mundo fsico (por ejemplo, una seal lgica puede comandar una etapa de potencia para controlar dispositivos, etc.). En esta etapa, se trabaja con las INTERFASES DE ENTRADA Y SALIDA.
Ahora nos centraremos en la etapa de DISEO LGICO propiamente dicha. En el proceso general de Diseo de un Sistema Lgico, se pueden identificar las siguientes ETAPAS: Etapa 1: ESPECIFICACIN. Es de donde se parte. Consiste en una descripcin del comportamiento lgico deseado en lenguaje natural. Si el problema a resolver est mal especificado puede no ser resoluble o el resultado no ser el que en realidad se esperaba. Un problema est mal especificado cuando a partir de un proceso de diseo sin errores se llega a un resultado diferente al esperado. Etapa 2: MODELIZACIN Es un proceso de formalizacin que permite construir una Representacin Formal del comportamiento en algn lenguaje formal apropiado, constituyendo un Modelo del Sistema. Existen distintos tipos de modelos del comportamiento de un sistema. En correspondencia con esto, tambin existen diversas Metodologas de Diseo. Etapa 3: OPTIMIZACIN (opcional) Habitualmente se busca optimizar la representacin formal, segn algn tipo de criterio (costo, rapidez, confiabilidad, etc.). De esta manera se puede obtener un Modelo Optimizado segn el criterio adoptado. En realidad la optimizacin no es independiente de la tecnologa que se adoptar para su implementacin. Por ejemplo, si el sistema es combinacional y se implementar con compuertas lgicas y se aplica el criterio de Karnaugh, el modelo optimizado ser la expresin algebraica mnima segn dicho criterio. En cambio, si se implementar mediante un multiplexor, el criterio puede ser disminuir el nmero de canales necesarios, y el modelo optimizado puede ser una manipulacin del mapa de Karnaugh asociado a la Tabla de Verdad, para ver cmo conviene utilizar las variables en el multiplexor, ya que no se utiliza la expresin algebraica para este tipo de implementacin. El propio criterio de optimizacin puede servir para seleccionar la tecnologa de implementacin ms apropiada para un caso en particular. Etapa 4: SNTESIS En esta etapa se parte del Modelo Optimizado y se realiza la implementacin fsica (circuito lgico).
Modelizacin
Optimizacin
Sntesis
En ocasiones se requiere realizar slo alguno de las etapas marcadas, sin partir de la especificacin y/o sin llegar a la implementacin fsica, de cualquier manera se las reconoce como tareas de Diseo1.
Cabe mencionar que los profesionales suelen tener que recorrer las etapas anteriores, pero en sentido contrario al indicado por las flechas. Partiendo de un dispositivo fsico para terminar interpretando el comportamiento del mismo, incluso en algunos casos se busca reestablecer una Especificacin, por ejemplo cuando se requiere perfeccionar la documentacin asociada a un equipo en funcionamiento. Las tareas realizadas en este sentido, an cuando recorren slo una parcialidad de las etapas, se denominan de Anlisis.
1
3. Optimizacin y sntesis (depende de la tecnologa de implementacin), por ejemplo: a. Implementacin con memorias PROM: se usa la Tabla para cargar los registros de la PROM. No se optimiza. b. Implementacin con Multiplexores: se transcribe la Tabla en un Mapa de Karnaugh y se manipulan las variables para disminuir el nmero de canales necesarios del multiplexor (no se saca la expresin algebraica) c. Implementacin con Decodificadores o Demultiplexores: se transcribe la Tabla en un Mapa de Karnaugh y se manipulan las variables para poder implementarlo con un Decodificador ms pequeo (no se saca la expresin algebraica) d. Implementacin con Compuertas lgicas, en circuitos con lgica de dos niveles: se transcribe la Tabla en un Mapa de Karnaugh y se aplica el criterio de Karnaugh para obtener la expresin mnima segn ese criterio, de manera de obtener el menor nmero de trminos con el menor nmero de variables por trmino.
SISTEMAS MULTIFUNCIN Cuando un sistema lgico tiene ms de una salida lo denominaremos Sistema Multifuncin. En este caso, la Tabla de Verdad en vez de tener una columna para la salida, tendr tantas columnas como salidas marque su diagrama de entradas y salidas. Si la sntesis se pretende hacer usando la metodologa de los Mapas de Karnaugh, ser necesario disponer un mapa para cada funcin, estableciendo la correspondencia con cada variable de salida y su respectivo Mapa de Karnaugh. Es decir, si el sistema tiene N salidas, la tabla de Verdad tendr N columnas del lado derecho y habr asociados N Mapas de Karnaugh (uno por cada salida). SISTEMAS NO TOTALMENTE ESPECIFICADOS Cuando un grupo de combinaciones de entradas son imposibles, no hay que especificar el valor de las salidas para dichas combinaciones de entradas, de manera que el sistema ser NO TOTALMENTE ESPECIFICADO, dando origen a un conjunto de REDUNDANCIAS de salida. Es decir, habr ciertas combinaciones de entradas que no tendrn asociada una salida definida, ya que esas combinaciones de entrada nunca se van a presentar. Las redundancias se simbolizan con alguno de estos smbolos:
,X,
En realidad, para poder sintetizar el circuito lgico se deben definir valores concretos para las salidas indefinidas, ya que todo circuito SIEMPRE tiene TODAS las salidas definidas (0 o 1). Lo que habitualmente se hace es valorar cada una de las redundancias por separado, asignndole un valor, aprovechando esta posibilidad para que produzca alguna conveniencia, generalmente tecnolgica en la implementacin. Por ejemplo si se est implementando un circuito a partir de un Mapa de Karnaugh con redundancias, se valorar a cada una de ellas, con el valor que produzca la cubertura ms conveniente, extendiendo en lo posible los implicantes primos tomados en la cubertura. Logrando de esta manera que la expresin algebraica sea la mnima posible segn el criterio de Karnaugh. DIAGRAMAS TEMPORALES Para ensayar un Circuito Lgico ya implementado como un dispositivo fsico, deberamos someterlo a todas las combinaciones posibles de los valores de las entradas e ir registrando los valores producidos en la salida. Tericamente sera adecuado realizar un ensayo que evale todas las combinaciones en forma simultnea, pero eso en la realidad resulta totalmente imposible. En contrapartida resulta simple generar todas las combinaciones de los valores de entradas no simultneamente si no organizadas en una secuencia y a medida que van pasando una a una las combinaciones ir registrando los valores que se producen en la salida (los Generadores de ondas proporcionan estas secuencias). Debemos tener muy presente que en los sistemas Combinatorios Esencialmente, no tiene NINGUNA importancia la duracin en el cual se est sometiendo al circuito a una combinacin en particular de las entradas, para constatar su salida. Tampoco tendra NINGUNA importancia el orden en el cual aparece cada una de las combinaciones, en relacin a las anteriores. La propuesta de ensayo basadas en un generador de ondas normal (que hace evolucionar las combinaciones de valores en un orden preestablecido y mantiene cada de ellas un lapso tambin preestablecido, generalmente constante) no contempla para nada estas CONDICIONES ESENCIALES de los Sistemas combinatorios. Por lo cual se debe enfatizar que el conjunto de valores de salida es totalmente independiente de ambas restricciones impuestas por el mtodo de ensayo. Los valores surgidos del uso de este dispositivo frecuentemente se grafican, incluso suelen aparecer en pantallas de los mismos aparatos de ensayo, estableciendo los llamados Diagramas Temporales. El nombre mismo de esta representacin habla del divorcio entre la representacin y lo que se quiere representar. Claramente parece inadecuado llamar Temporal algn atributo de sistemas que esencialmente NO DEPENDEN del TIEMPO.
De cualquier manera la sencillez del ensayo ha popularizado este tipo de grficos, an para Sistemas Combinatorios, que por cierto no es una representacin adecuada del comportamiento.
Dadas una serie de combinaciones de entradas como las indicadas, podra graficarse: A t
ABC
000
001
010
011
100
101
110
111
000
(combinacin de entradas)
Este Diagrama Temporal podra aparecer en un simulador. No hay que confundir esta representacin temporal con una representacin equivalente a la tabla de verdad del sistema. Cabe aclarar que un Diagrama Temporal idntico a ste podra corresponder a un Sistema Secuencial donde no se puso de manifiesto este hecho. En ese caso podra ocurrir que alguna secuencia posterior produjese una salida diferente para la misma combinacin de entradas. Es decir, esta representacin sirve a modo de verificacin del comportamiento del sistema, pero no es una representacin completa del comportamiento del sistema.
Problema N 2: Z = (S.C0+S.C1). H
Problema N 4: V = [(T1+T2).H2+H1]. P+ P
Se puede observar que en realidad no es necesario multiplicar el [ ] por P ya que si fuese P=1 el otro trmino forzara que sea V=1. Esto que puede razonarse intuitivamente, podra haberse deducido aplicando el teorema del lgebra de Boole: P + P. X = P + X , quedando: V = (T1+T2).H2+ H1 + P
Disear los siguientes circuitos, mediante interconexin de bloques funcionales (en este caso los bloques funcionales seran las compuertas lgicas):
Problema 1: Para generar un Cdigo de Paridad, se agrega un Bit de Paridad (Bp) de manera que el nuevo cdigo tenga un nmero de unos siempre Par (Cdigo de Paridad PAR) o siempre Impar (cdigo de Paridad IMPAR). Estos son Cdigos Detectores de Errores de 1 bit, ya que si en el proceso de transmisin un bit llegara cambiado esto afectara la paridad y el error sera detectado. Se pide disear un Generador de Paridad.
I3
I2
I1
Generador de Paridad b) I3 I2 I1 I0 Bp
A1
A0
B1
Comparador de Palabras MA MB
Problema 3: Se pide disear un Detector de Paridad. Al recibirse el cdigo (4 bits de Informacin y 1 bit de Paridad), se genera una salida P=1 si la paridad es la esperada.
I3
I2
I1
I0
Detector de Paridad a) PAR: P=1 si la Paridad es PAR IMPAR: P=1 si la Paridad es IMPAR
Generador de Paridad b) P
E3
E2
E1
Inversor Controlado
S3
S2
S1
S0
Problema 1: Disear un Circuito de Mayora, con 3 entradas y 1 salida, la cual debe ponerse en alto cuando haya mayora de 1s a su entrada. Problema 2: Disear un conversor de cdigo Binario de 4 bits a cdigo Gray. B3 B2 B1 B0
Binario / Gray
G3
G2
G1
G0
Problema 3: Disear un conversor de cdigo BCD (decimal codificado en binario) a 7 segmentos, para excitar un display. B3 B2 B1 B0
a f e g d b c
a b c d e f g
BCD / 7 seg
B3 B2 B1 B0
C3 C2 C1 C0
Problema 5: Disear un conversor de cdigo BCD de 2 dgitos decimales a cdigo Binario. Problema 6: Disear un dispositivo integrado por 4 teclas y 2 lmparas indicadoras, al cual llega la seal de un Reloj (R), de manera que: T 3 T 2 T 1 T0
La lmpara intermitente (LI) se enciende y apaga a la frecuencia del reloj cuando: t No se pulsa ninguna tecla Se pulsa slo una tecla Se pulsan slo T2 y T0
La lmpara fija (LF) se enciende cuando no se cumple ninguna LI LF de las condiciones anteriores.
Multiplicador
C3
C2
C1
C0
Problema 8: Para controlar el llenado de un tanque de agua se dispone de 2 sensores ubicados a distintos niveles (N1 inferior, N2 superior). stos presentan un nivel lgico 1 a su salida cuando les toca el agua. Para el llenado del tanque se dispone de 2 bombas A y B, y hay una vlvula de consumo cuya posicin tambin es sensada (V=1 vlvula abierta). El llenado del tanque debe hacerse de la siguiente manera: Si el nivel del agua est por debajo de los dos sensores, deben funcionar ambas bombas. Si el nivel del agua est entre sensores y la vlvula est abierta, deben funcionar ambas bombas. Si el nivel del agua est entre sensores y la vlvula est cerrada, slo debe funcionar la bomba A. Si el nivel llega al sensor superior (tanque lleno), deben estar ambas bombas apagadas.
Problema 9: A un sistema ingresa un cdigo de 4 bits que nunca puede contener ms de 3 bits en 1. El sistema debe encender una lmpara L1 cuando el nmero de variables de entrada en 1 sea superior al nmero de variables de entrada en 0 y encender una lmpara L2 cuando sean iguales.
C3
C2
C1 C0
L2
L1
Problema 10: Un codificador de posicin de eje proporciona una seal de 4 bits que indica la posicin de un eje en pasos de 30 usando un cdigo reflejado (Gray), como se indica en la tabla siguiente. Se puede suponer que las 4 combinaciones posibles de 4 bits no usados, no se producirn jams. Se desea disear un sistema que dadas estas seales, genere una seal S que sea 1 siempre que el eje se encuentre dentro del primer cuadrante (0 - 89) Al resolver el problema, respetar la definicin de Tabla de Verdad en cuanto a la manera de estructurarla.
Posicin del eje 0 - 29 30 - 59 60 - 89 90 - 119 120 - 149 150 - 179 180 - 209 210 - 239 240 - 269 270 - 299 300 - 329 330 - 359 E1 0 0 0 0 0 0 1 1 1 1 1 1
E4 1 0 0 1 1 0 0 1 1 0 0 1
Problema 11: Un blanco de tiro con arco y flecha est formado por 8 bandas concntricas asignndosele a la banda central el valor 10 y en orden decreciente lleva el valor 3 la exterior. La informacin de en qu banda se produjo el impacto se obtiene a partir de 4 seales ( I, P, C, E ) que el dispositivo sensor entrega al sistema a disear ( ).
I
(MSB)
D3 D2 D1 D0
10 9
P C E
(LSB)
SIGNIFICADO Flecha impacta en una banda IMPAR Flecha impacta en una banda PAR Flecha impacta en la banda 3 o 4 Flecha impacta en la banda 5 o 6 Flecha impacta en la banda 7 u 8 Flecha impacta en la banda 9 o 10
El sistema a disear ( ) debe indicar en BINARIO, el nmero de banda en la cual hizo impacto la flecha (siendo D3 el bit ms significativo -MSB- , y D0 el bit menos significativo -LSB- ). En caso que no se haya hecho blanco la indicacin debe ser cero y adems debe ser N=1.