Sei sulla pagina 1di 9

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:

ANLISIS DEL PROBLEMA A RESOLVER

Seales lgicas de entrada

DISEO LGICO

Seales lgicas de salida

INTERFASES DE ENTRADA Y SALIDA

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 el mismo momento, 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 conexin 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). PROCESO COMPLETO DE DISEO LGICO

Comportamiento Lgico (lenguaje natural) (Especificacin)

Modelizacin

Representacin Formal

Optimizacin

Representacin Formal Optimizada (Modelo Optimizado)

Sntesis

Implementacin Fsica

(Modelo)

(Circuito Lgico)

DISEO LGICO COMBINACIONAL


En este tipo de Diseo pueden diferenciarse tres tipos de METODOLOGAS DE DISEO: 1. Modelizacin Algebraica Directa 2. Diseo mediante Interconexin de Bloques Funcionales 3. Diseo Tabular

MODELIZACIN ALGEBRAICA DIRECTA En este tipo de metodologa de diseo, se escribe directamente la expresin algebraica que representa el comportamiento lgico esperado. Por ejemplo, al modelizar Sistemas Secuenciales con Redes de Petri, las Condiciones Lgicas de disparo de cada transicin est constituida por una expresin algebraica de las variables de entrada (combinacional). Estas expresiones de escriben de manera directa (sin plantear la tabla de verdad respectiva). DISEO MEDIANTE INTERCONEXIN DE BLOQUES FUNCIONALES Esta metodologa es muy apropiada en ciertos tipos de problemas. Por ejemplo, en los circuitos aritmticos se parte de bloques funcionales conocidos y se arman los circuitos por interconexin de eso bloques. Por ejemplo, con 4 Sumadores Totales Binarios de 4 bits se puede armar un Sumador Binario de 16 bits de manera muy sencilla. Si en este caso se pretendiese hacer una tabla de verdad, dado que entran dos nmeros binarios de 16 bits cada uno, la misma tendra 232 filas, lo cual hace la metodologa impracticable. Y por otra parte, aunque fuese posible representarlo, el costo del circuito resultante sera elevadsimo, ya que cada sumador tendra un circuito totalmente diferente dependiente del nmero de bits del mismo. En cambio, al trabajar con bloques funcionales estndar (de bajo costo) el proceso de diseo es muy simple y el costo muy reducido. DISEO TABULAR (mediante Tablas de Verdad) Cuando la complejidad impide escribir la expresin algebraica de manera directa y no existen bloques funcionales apropiados que permitan hacer el diseo mediante su interconexin, lo que se hace es utilizar la Tabla de Verdad del sistema para el diseo. Podramos especificar las siguientes fases de este proceso, a partir de la especificacin del comportamiento: 1. Diagrama de E/S (con Diccionario con el significado fsico de los valores lgicos de las seales de entrada y de salida) 2. Armado De la Tabla de Verdad a partir del comportamiento deseado. 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: 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 tenga. Y cada salida se pondr en correspondencia con el Mapa de Karnaugh respectivo. 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 para 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 las salidas indefinidas, ya que todo circuito SIEMPRE tiene las salidas definidas (0 o 1). Lo que habitualmente se hace es definir las salidas de manera que el circuito resultante sea ms simple. Esto se hace por ejemplo con un Mapa de Karnaugh con redundancias, donde se terminan definiendo las salidas no especificadas de manera que la expresin algebraica sea la mnima posible segn el criterio de Karnaugh. DIAGRAMAS TEMPORALES Supongamos la funcin lgica F(A,B,C)= mi (1,3,6)=ABC+ AB C + A B C.
3

Si armramos el circuito y lo sometiramos a una serie de combinaciones de entradas, podramos obtener lo siguiente: A t

ABC

000

001

010

011

100

101

110

111

000

(combinacin de entradas)

Este tipo de Diagramas Temporales 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.

PRCTICA de Modelizacin Algebraica Directa


ENUNCIADOS
En todos los problemas, escribir de manera directa la/s expresin/es algebraica/s de la/s salida/s. Problema N 1: La salida Alarma debe activarse (A=1) cuando est la alarma Habilitada (H=1) y se produce alguna de estas situaciones: Ventana abierta (V=1) o Puerta abierta (P=1). Problema N 2: Un DEMULTIPLEXOR de 2 canales (C0, C1), una entrada de seleccin (S) y una entrada de habilitacin (H) debe generar una salida (Z), cuyo valor coincida con el valor del respectivo canal de entrada: S=0 Z = C0 S=1 Z = C1 cuando el DEMUX est habilitado (H=1) o que sea Z=0 cuando el DEMUX est inhabilitado (H=0). Problema N 3: Un TANQUE DE AGUA cuenta con 3 sensores de nivel (N1, N2 y N3), una llave selectora (M) y una bomba (B) para su llenado, con los siguientes significados fsicos de sus valores lgicos: N1 = 1 nivel por debajo del valor mnimo N2 = 1 nivel igual o por encima del valor intermedio N3 = 1 nivel por debajo del valor mximo M = 1 Modo Manual M = 1 Modo Automtico B = 1 bomba encendida A = 1 luz de alarma encendida Escribir de manera directa: a) La expresin algebraica de la funcin que maneja la bomba de agua (B), de manera que est encendida si est en Modo Manual y el nivel por debajo del mximo, o si est en Modo Automtico y el nivel por debajo del valor intermedio. b) La expresin algebraica de la funcin que maneja la luz de alarma (A), de manera que est encendida si el nivel est por debajo del mnimo cuando est en Modo Automtico. Problema N 4: Un SILO DE GRANOS cuenta con sensores de temperatura y de humedad y con una llave selectora de programa, con los siguientes significados fsicos de sus valores lgicos: temperatura del silo admisible T1=1 T2=1 temperatura del silo temperatura ambiente H1=1 humedad del silo admisible H2=1 humedad ambiente 90% P=1 programa manual P=0 programa automtico Escribir de manera directa directa, la expresin algebraica de la funcin que maneja el ventilador (V), si se espera el siguiente comportamiento del mismo: Estar encendido (V=1) si la temperatura del silo es mayor a la admisible o mayor a la temperatura ambiente, en ambos casos, con una humedad ambiente < 90%, o si la humedad del silo es mayor o igual a la admisible en cualquier caso. Todo esto, siempre y cuando est seleccionado el programa automtico. En caso de estar seleccionado el programa manual, debe permanecer encendido permanentemente.

SOLUCIONES A LOS PROBLEMAS Problema N 1: A = H. (V+P)

Problema N 2: Z = (S.C0+S.C1). H

Problema N 3: a) B = M.N3 + M.N2 b) A = N1.M

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

PRCTICA de Diseo mediante Interconexin de Bloques Funcionales


ENUNCIADOS

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

I0 a) Generador de Paridad PAR Generador de Paridad IMPAR

Generador de Paridad b) I3 I2 I1 I0 Bp

Problema 2: Se pide disear un Comparador de Palabras de 2 bits (A = A1A0, B = B1B0).

A1

A0

B1

B0 Si A>B Si B>A Si A=B I MA=1 MB=1 I=1

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

Problema 4: Disear un Inversor Controlado de 4 bits:

E3

E2

E1

E0 Si C=1 Si C=0 Sn=E (invierte) Sn=E (no invierte)

Inversor Controlado

S3

S2

S1

S0

PRCTICA de Diseo Tabular (mediante Tablas de Verdad)


ENUNCIADOS
En todos los problemas se pide hacer la Tabla de Verdad, los mapas de Karnaugh y las ecuaciones mnimas e implementar circuitalmente con compuertas lgicas. Problema 1:

Potrebbero piacerti anche