DISEÑO COMBINACIONAL



Documentos relacionados
ELECTRÓNICA DIGITAL. Una señal es la variación de una magnitud que permite transmitir información. Las señales pueden ser de dos tipos:

CODIFICADORES. Cuando solo una de las entradas está activa para cada combinación de salida, se le denomina codificador completo.

Tema : ELECTRÓNICA DIGITAL

Tema 4: Circuitos combinacionales

Circuitos Digitales CON José Manuel Ruiz Gutiérrez

DISEÑO DE CIRCUITOS LOGICOS COMBINATORIOS

TEMA 4. MÓDULOS COMBINACIONALES.

TEMA 3: IMPLEMENTACIÓN DE CIRCUITOS COMBINACIONALES CON PUERTAS LÓGICAS.

28 = =

3. Transforma los siguientes cronogramas en tablas de verdad. (E=Entrada, S=Salida). a) b)

ÍNDICE DISEÑO DE CONTADORES SÍNCRONOS JESÚS PIZARRO PELÁEZ

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal)

El rincón de los problemas

TEMA 5. SISTEMAS COMBINACIONALES MSI.

Tema 11: Sistemas combinacionales

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERIA MECANICA Y ELECTRICA INGENIERIA EN COMUNICACIONES Y ELECTRÓNICA ACADEMIA DE COMPUTACIÓN

EJERCICIOS - Electrónica Digital

Práctica 4 Diseño de circuitos con puertas lógicas.

UNIDADES DE ALMACENAMIENTO DE DATOS

Diapositiva 1. Por supuesto, también se puede hacer lo contrario. Un demultiplexor envía una señal a una de muchas líneas.

Puertas Lógicas. Contenidos. Objetivos

Centro de Capacitación en Informática

Universidad Autónoma de Baja California Facultad de Ingeniería Mexicali

OR (+) AND( ). AND AND

Modelo de examen tipo resuelto 1

INFORMÁTICA. Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial. Curso v1.0 (05.03.

NÚMEROS NATURALES Y NÚMEROS ENTEROS

Nombre del estudiante: Grimaldo velazquez Rafael. Herrera Díaz Jefree. Campus: san Rafael

CAPITULO II SISTEMAS DE NUMERACIÓN Y CÓDIGOS

podemos enfocar al funcionamiento del robot, es decir la parte de electrónica. Para que el

Transformación de binario a decimal. Transformación de decimal a binario. ELECTRÓNICA DIGITAL

UN PROBLEMA CON INTERÉS Y CALCULADORA

_ Antología de Física I. Unidad II Vectores. Elaboró: Ing. Víctor H. Alcalá-Octaviano

ARQUITECTURAS ESPECIALES

Boletín de Problemas de Circuitos Combinacionales. Fundamentos de Electrónica 3º Curso Ingeniería Industrial

Sumador: C o. C in. Sumador serie: Sumador paralelo con propagación de arrastre:

Unidad Didáctica. Códigos Binarios

!!!!!!!! !!!!! Práctica!4.! Programación!básica!en!C.! ! Grado!en!Ingeniería!!en!Electrónica!y!Automática!Industrial! ! Curso!2015H2016!

SISTEMAS NUMERICOS CAMILO ANDREY NEIRA IBAÑEZ UNINSANGIL INTRODUCTORIO A LA INGENIERIA LOGICA Y PROGRAMACION

VECTORES. Módulo, dirección y sentido de un vector fijo En un vector fijo se llama módulo del mismo a la longitud del segmento que lo define.

Ingeniería de Software I

CURSO TECNOLOGÍA TECNOLOGÍA 4º ESO TEMA 5: Lógica binaria. Tecnología 4º ESO Tema 5: Lógica binaria Página 1

U.D.5: Diagramas de Gantt y PERT

PROBLEMAS TECNOLOGÍA INDUSTRIAL II. CONTROL DIGITAL

EXPRESIONES ALGEBRAICAS. POLINOMIOS

FORMATO DE CONTENIDO DE CURSO

Diseño y desarrollo de una aplicación informática para la gestión de laboratorios

Operaciones Booleanas y Compuertas Básicas

TEMA 5. ELECTRÓNICA DIGITAL

UNIVERSIDAD DE CASTILLA LA MANCHA ESCUELA SUPERIOR DE INFORMÁTICA. CIUDAD REAL

Sistemas de numeración

3.1 DEFINICIÓN. Figura Nº 1. Vector

El álgebra booleana (Algebra de los circuitos lógicos tiene muchas leyes o teoremas muy útiles tales como :

La ventana de Microsoft Excel

Aplicaciones Lineales

DISEÑO DEL SOFTWARE TRAFFIC ANALYZER. Analyzer. En este capítulo se reporta el desarrollo que se llevó a cabo para realizar el software

35 Facultad de Ciencias Universidad de Los Andes Mérida-Venezuela. Potencial Eléctrico

3.8 Construcción de una ALU básica

Universidad Católica del Maule. Fundamentos de Computación Especificación de tipos de datos ESPECIFICACIÓN ALGEBRAICA DE TIPOS DE DATOS

1 La Resolución de Problemas utilizando la Computadora

Wise Up Kids! En matemáticas, a la división de un objeto o unidad en varias partes iguales o a un grupo de esas divisiones se les denomina fracción.

Información importante. 1. El potencial eléctrico. Preuniversitario Solidario Superficies equipotenciales.

GERENCIA DE INTEGRACIÓN

5.1. Organizar los roles

CAPITULO II CARACTERISTICAS DE LOS INSTRUMENTOS DE MEDICION

Matemática de redes Representación binaria de datos Bits y bytes

1.3 Números racionales

T6. CIRCUITOS ARITMÉTICOS

CIRCUITOS ARITMÉTICOS

UNIDAD DIDÁCTICA: ELECTRÓNICA DIGITAL

La Dirección Comercial

Memoria La memoria es la parte del ordenador en la que se guardan o almacenan los programas (las instrucciones y los datos).

GUIA DE CIRCUITOS LOGICOS COMBINATORIOS

x

GUÍA PARA LA FORMULACIÓN PROYECTOS

Para crear formularios se utiliza la barra de herramientas Formulario, que se activa a través del comando Ver barra de herramientas.

SISTEMAS DE NUMERACIÓN. Sistema decimal

Computación I Representación Interna Curso 2011

Universidad Nacional Autónoma de México E N E P A R A G O N. Laboratorio de. Control Digital. Motor de Paso a Paso. Motores Paso a Paso

SOLECMEXICO Página 1 DISEÑO DE CIRCUITOS A PARTIR DE EXPRESIONES BOOLEANAS

EXAMEN DE SEPTIEMBRE DE CIRCUITOS ELECTRÓNICOS. CURSO 2007/08. PROBLEMA DEL PRIMER PARCIAL

QUÉ ES Y PARA QUÉ SIRVE UML? VERSIONES DEL LENGUAJE UNIFICADO DE MODELADO. TIPOS DE DIAGRAMAS. INGENIERÍA DEL SOFTWARE (DV00205D)

Índice Introducción Números Polinomios Funciones y su Representación. Curso 0: Matemáticas y sus Aplicaciones Tema 1. Números, Polinomios y Funciones

A practicar: Interactivos de matemáticas para niños

RAZONAMIENTOS LÓGICOS EN LOS PROBLEMAS DE MATEMÁTICAS

Teclado sobre una PDA para Personas con Parálisis Cerebral

GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES

TEMA 3: EN QUÉ CONSISTE?

1. Utilizando el método de Karnaugh simplificar la siguiente expresión lógica:

Unidad VI: Supervisión y Revisión del proyecto

MÉTODO DEL CAMBIO DE BASE PARA CÁLCULO MANUAL DE SUBREDES CON IP V4.0

Figura 1. Símbolo que representa una ALU. El sentido y la funcionalidad de las señales de la ALU de la Figura 1 es el siguiente:

❷ Aritmética Binaria Entera

BASE DE DATOS RELACIONALES

d s = 2 Experimento 3

Revisión del Universo de empresas para la Estimación de los Datos Del Mercado Español de Investigación de Mercados y Opinión.

Para ingresar a la aplicación Microsoft PowerPoint 97, los pasos que se deben seguir pueden ser los siguientes:

Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual

Unidad 5 Utilización de Excel para la solución de problemas de programación lineal

Transcripción:

DISEÑO COMBINACIONAL Asignatura: DIGITAL I Carrera: Ingeniería Electrónica Facultad de Ciencias Exactas, Ingeniería y Agrimensura Universidad Nacional de Rosario Año 2011

DISEÑO LÓGICO RESOLUCIÓN DE PROBLEMAS ABIERTOS DE INGENIERÍA Habitualmente el Diseño Lógico se inserta en un proceso más amplio de la resolución de problemas abiertos de ingeniería. Podríamos especificar este proceso de la siguiente manera: ANÁLISIS DEL PROBLEMA A RESOLVER Señales lógicas de entrada DISEÑO LÓGICO Señales lógicas de salida INTERFASES DE ENTRADA Y SALIDA La etapa de ANÁLISIS DEL PROBLEMA parte de algo que se quiere lograr pero que no está completamente definido todavía, constituyendo un PROBLEMA ABIERTO. Por ejemplo, supongamos que el problema fuese diseñar el control automático 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 más adecuados. Por ejemplo, un criterio podría ser que el flujo de personas a las oficinas sea lo más fluido posible, para evitar demoras. Esto implicaría un análisis de la manera cómo debería comportarse el sistema. Habría que analizar por ejemplo, cómo 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 convendría que cada ascensor recorriera todos los pisos o estuviese dedicado a ciertos pisos en particular. Si el botón de llamada de cada piso sería único para los dos ascensores o habría uno para cada ascensor. Si al llamar al ascensor se especificaría la dirección (Ascenso/Descenso) o no, etc. También habría que definir cómo se comportaría cada ascensor, cuáles serán las reglas que gobernarían su comportamiento, si el comportamiento de los ascensores sería independiente o estarían relacionados, etc. En esta etapa se pueden aplicar conocimientos de otras áreas de la ingeniería, más allá de los Sistemas Lógicos propiamente dichos. Una vez concluida esta etapa se tiene un PROBLEMA CERRADO para encarar la etapa del Diseño Lógico. La etapa de DISEÑO LÓGICO trabaja únicamente con la relación entre las señales lógicas de entrada y las señales lógicas de salida. Si las señales lógicas de salida dependen solamente del valor de las señales lógicas de entrada en cualquier ó todo momento en cual se analice, el sistema a diseñar será de tipo Combinacional o Combinatorio, constituyendo lo que denominaremos DISEÑO LÓGICO COMBINACIONAL. Si las señales lógicas de salida dependen del valor de las señales lógicas de entrada en ese mismo momento y de las secuencias anteriores de entradas, el sistema a diseñar será de tipo Secuencial y será un sistema con memoria. Dicho de otra manera, las salidas dependerán de las entradas y del estado interno del sistema. A este tipo de diseño lo denominaremos DISEÑO LÓGICO SECUENCIAL. Luego de la etapa de Diseño Lógico propiamente dicha, resta la integración con el mundo físico (por ejemplo, una señal lógica 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 DISEÑO LÓGICO propiamente dicha. En el proceso general de Diseño de un Sistema Lógico, se pueden identificar las siguientes ETAPAS: Etapa 1: ESPECIFICACIÓN. Es de donde se parte. Consiste en una descripción del comportamiento lógico 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 diseño sin errores se llega a un resultado diferente al esperado. Etapa 2: MODELIZACIÓN Es un proceso de formalización que permite construir una Representación Formal del comportamiento en algún lenguaje formal apropiado, constituyendo un Modelo del Sistema. Existen distintos tipos de modelos del comportamiento de un sistema. En correspondencia con esto, también existen diversas Metodologías de Diseño. Etapa 3: OPTIMIZACIÓN (opcional) Habitualmente se busca optimizar la representación formal, según algún tipo de criterio (costo, rapidez, confiabilidad, etc.). De esta manera se puede obtener un Modelo Optimizado según el criterio adoptado. En realidad la optimización no es independiente de la tecnología que se adoptará para su implementación. Por ejemplo, si el sistema es combinacional y se implementará con compuertas lógicas y se aplica el criterio de Karnaugh, el modelo optimizado será la expresión algebraica mínima según dicho criterio. En cambio, si se implementará mediante un multiplexor, el criterio puede ser disminuir el número de canales necesarios, y el modelo optimizado puede ser una manipulación del mapa de Karnaugh asociado a la Tabla de Verdad, para ver cómo conviene utilizar las variables en el multiplexor, ya que no se utiliza la expresión algebraica para este tipo de implementación. El propio criterio de optimización puede servir para seleccionar la tecnología de implementación más apropiada para un caso en particular. Etapa 4: SÍNTESIS En esta etapa se parte del Modelo Optimizado y se realiza la implementación física (circuito lógico). P R O C E S O C O M P L E T O D E D I S E Ñ O L Ó G I C O Comportamiento Lógico (lenguaje natural) Modelización Representación Formal Optimización Representación Formal Optimizada Síntesis Implementación Física (Especificación) (Modelo) (Modelo Optimizado) (Circuito Lógico) En ocasiones se requiere realizar sólo alguno de las etapas marcadas, sin partir de la especificación y/o sin llegar a la implementación física, de cualquier manera se las reconoce como tareas de Diseño 1. 1 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 físico para terminar interpretando el comportamiento del mismo, incluso en algunos casos se busca reestablecer una Especificación, por ejemplo cuando se requiere perfeccionar la documentación asociada a un equipo en funcionamiento. Las tareas realizadas en este sentido, aún cuando recorren sólo una parcialidad de las etapas, se denominan de Análisis.

DISEÑO LÓGICO COMBINACIONAL En este tipo de Diseño pueden diferenciarse tres tipos de METODOLOGÍAS DE DISEÑO: 1. Modelización Algebraica Directa 2. Diseño mediante Interconexión de Bloques Funcionales 3. Diseño Tabular MODELIZACIÓN ALGEBRAICA DIRECTA En este tipo de metodología de diseño, se escribe directamente la expresión algebraica que representa el comportamiento lógico esperado. Este método suele utilizarse cuando se deben expresar comportamientos sencillos, generalmente controlados por pocas variables o una relación simple de un grupo grande de variables, por ejemplo el producto booleano de todas ellas. Por ejemplo, al modelizar Sistemas Secuenciales con Redes de Petri, las Condiciones Lógicas de disparo de cada transición está constituida por una expresión algebraica (combinacional), muchas veces de algunas de las variables de entrada. Estas expresiones suelen escribirse de manera directa (sin aplicar metodologías sistemáticas como por ejemplo establecer un comportamiento en forma explícita planteando la tabla de verdad respectiva). DISEÑO MEDIANTE INTERCONEXIÓN DE BLOQUES FUNCIONALES Esta metodología es muy apropiada en ciertos tipos de problemas. En general cuando el comportamiento global del sistema se puede subdividir en varios comportamientos parciales en relación a grupos parciales o subconjuntos de variables, datos o señales. Particularmente si estos subcomportamientos se repiten entre los distintos subconjuntos mencionados. El interés en esta metodología aumenta en los caso de sistemas que deben manejar una gran cantidad de variables que se presten a la subdivisión en grupos, con subcomportamientos congruentes o semejantes. Por ejemplo, en los circuitos aritméticos se puede partir de bloques funcionales conocidos integrando los circuitos por interconexión 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 números binarios de 16 bits cada uno, la misma tendría 2 32 filas, lo cual hace la metodología impracticable. Y por otra parte, aunque fuese posible representarlo, el costo del circuito resultante sería elevadísimo, ya que cada sumador tendría un circuito totalmente diferente dependiente del número de bits del mismo. En cambio, al trabajar con bloques funcionales estándar (de bajo costo) el proceso de diseño es muy simple y el costo muy reducido. DISEÑO TABULAR (mediante Tablas de Verdad) Cuando la complejidad del comportamiento pretendido dificulta escribir la expresión algebraica de manera directa y no se localizan bloques funcionales apropiados que permitan hacer el diseño mediante su interconexión, lo que se hace es utilizar la Tabla de Verdad del sistema para el diseño. Podríamos especificar las siguientes fases de este proceso, a partir de la especificación del comportamiento: 1. Diagrama de E/S (con Diccionario con el significado físico de los valores lógicos de las señales de entrada y de salida) 2. Armado De la Tabla de Verdad a partir del comportamiento deseado.

3. Optimización y síntesis (depende de la tecnología de implementación), por ejemplo: a. Implementación con memorias PROM: se usa la Tabla para cargar los registros de la PROM. No se optimiza. b. Implementación con Multiplexores: se transcribe la Tabla en un Mapa de Karnaugh y se manipulan las variables para disminuir el número de canales necesarios del multiplexor (no se saca la expresión algebraica) c. Implementación con Decodificadores o Demultiplexores: se transcribe la Tabla en un Mapa de Karnaugh y se manipulan las variables para poder implementarlo con un Decodificador más pequeño (no se saca la expresión algebraica) d. Implementación con Compuertas lógicas, en circuitos con lógica de dos niveles: se transcribe la Tabla en un Mapa de Karnaugh y se aplica el criterio de Karnaugh para obtener la expresión mínima según ese criterio, de manera de obtener el menor número de términos con el menor número de variables por término.

SISTEMAS MULTIFUNCIÓN Cuando un sistema lógico tiene más de una salida lo denominaremos Sistema Multifunción. 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 síntesis se pretende hacer usando la metodología de los Mapas de Karnaugh, será necesario disponer un mapa para cada función, 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 tendrán asociada una salida definida, ya que esas combinaciones de entrada nunca se van a presentar. Las redundancias se simbolizan con alguno de estos símbolos: -, X, Φ En realidad, para poder sintetizar el circuito lógico 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, asignándole un valor, aprovechando esta posibilidad para que produzca alguna conveniencia, generalmente tecnológica en la implementación. 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 más conveniente, extendiendo en lo posible los implicantes primos tomados en la cubertura. Logrando de esta manera que la expresión algebraica sea la mínima posible según el criterio de Karnaugh. DIAGRAMAS TEMPORALES Para ensayar un Circuito Lógico ya implementado como un dispositivo físico, deberíamos someterlo a todas las combinaciones posibles de los valores de las entradas e ir registrando los valores producidos en la salida. Teóricamente sería adecuado realizar un ensayo que evalúe todas las combinaciones en forma simultánea, pero eso en la realidad resulta totalmente imposible. En contrapartida resulta simple generar todas las combinaciones de los valores de entradas no simultáneamente 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 duración en el cual se está sometiendo al circuito a una combinación en particular de las entradas, para constatar su salida. Tampoco tendría NINGUNA importancia el orden en el cual aparece cada una de las combinaciones, en relación 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 también 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 método 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 representación habla del divorcio entre la representación y lo que se quiere representar. Claramente parece inadecuado llamar Temporal algún atributo de sistemas que esencialmente NO DEPENDEN del TIEMPO.

De cualquier manera la sencillez del ensayo ha popularizado este tipo de gráficos, aún para Sistemas Combinatorios, que por cierto no es una representación adecuada del comportamiento. Supongamos la función lógica F(A,B,C)= mi (1,3,6)=A B C+ A B C + A B C. 3 Dadas una serie de combinaciones de entradas como las indicadas, podría graficarse: A t B t C t ABC 000 001 010 011 100 101 110 111 000 (combinación de entradas) F t Este Diagrama Temporal podría aparecer en un simulador. No hay que confundir esta representación temporal con una representación equivalente a la tabla de verdad del sistema. Cabe aclarar que un Diagrama Temporal idéntico a éste podría corresponder a un Sistema Secuencial donde no se puso de manifiesto este hecho. En ese caso podría ocurrir que alguna secuencia posterior produjese una salida diferente para la misma combinación de entradas. Es decir, esta representación sirve a modo de verificación del comportamiento del sistema, pero no es una representación completa del comportamiento del sistema.

PRÁCTICA de Modelización Algebraica Directa ENUNCIADOS En todos los problemas, escribir de manera directa la/s expresión/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 selección (S) y una entrada de habilitación (H) debe generar una salida (Z), cuyo valor coincida con el valor del respectivo canal de entrada: S = 0 Z = C 0 S = 1 Z = C 1 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 (N 1, N 2 y N 3 ), una llave selectora (M) y una bomba (B) para su llenado, con los siguientes significados físicos de sus valores lógicos: N 1 = 1 nivel por debajo del valor mínimo N 2 = 1 nivel igual o por encima del valor intermedio N 3 = 1 nivel por debajo del valor máximo M = 1 Modo Manual M = 1 Modo Automático B = 1 bomba encendida A = 1 luz de alarma encendida Escribir de manera directa: a) La expresión algebraica de la función que maneja la bomba de agua (B), de manera que esté encendida si está en Modo Manual y el nivel por debajo del máximo, o si está en Modo Automático y el nivel por debajo del valor intermedio. b) La expresión algebraica de la función que maneja la luz de alarma (A), de manera que esté encendida si el nivel está por debajo del mínimo cuando está en Modo Automático. 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 físicos de sus valores lógicos: T 1 =1 temperatura del silo admisible T 2 =1 temperatura del silo temperatura ambiente H 1 =1 humedad del silo admisible H 2 =1 humedad ambiente 90% P=1 programa manual P=0 programa automático Escribir de manera directa directa, la expresión algebraica de la función 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 automático. 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.C 0 +S.C 1 ). H Problema N 3: a) B = M.N 3 + M.N 2 b) A = N 1.M Problema N 4: V = [(T 1 +T 2 ).H 2 +H 1 ]. P + P Se puede observar que en realidad no es necesario multiplicar el [ ] por P ya que si fuese P=1 el otro término forzaría que sea V=1. Esto que puede razonarse intuitivamente, podría haberse deducido aplicando el teorema del Álgebra de Boole: P + P. X = P + X, quedando: V = (T 1 +T 2 ).H 2 + H 1 + P

PRÁCTICA de Diseño mediante Interconexión de Bloques Funcionales ENUNCIADOS Diseñar los siguientes circuitos, mediante interconexión de bloques funcionales (en este caso los bloques funcionales serían las compuertas lógicas): Problema 1: Para generar un Código de Paridad, se agrega un Bit de Paridad (Bp) de manera que el nuevo código tenga un nùmero de unos siempre Par (Código de Paridad PAR) o siempre Impar (código de Paridad IMPAR). Estos son Códigos Detectores de Errores de 1 bit, ya que si en el proceso de transmisión un bit llegara cambiado esto afectaría la paridad y el error sería detectado. Se pide diseñar un Generador de Paridad. I3 I2 I1 I0 Generador de Paridad a) Generador de Paridad PAR b) Generador de Paridad IMPAR I3 I2 I1 I0 Bp Problema 2: Se pide diseñar un Comparador de Palabras de 2 bits (A = A1A0, B = B1B0). A1 A0 B1 B0 Comparador de Palabras Si A>B MA=1 Si B>A MB=1 Si A=B I=1 MA MB I

Problema 3: Se pide diseñar un Detector de Paridad. Al recibirse el código (4 bits de Información y 1 bit de Paridad), se genera una salida P=1 si la paridad es la esperada. I3 I2 I1 I0 Detector de Paridad Generador de Paridad a) PAR: P=1 si la Paridad es PAR b) IMPAR: P=1 si la Paridad es IMPAR P Problema 4: Diseñar un Inversor Controlado de 4 bits: E3 E2 E1 E0 Inversor Controlado C Si C=1 Sn=E (invierte) Si C=0 Sn=E (no invierte) S3 S2 S1 S0

PRÁCTICA de Diseño Tabular (mediante Tablas de Verdad) ENUNCIADOS En todos los problemas se pide hacer el diagrama de E/S con diccionario, la Tabla de Verdad, los mapas de Karnaugh y las ecuaciones mínimas e implementar circuitalmente con compuertas lógicas. Problema 1: Diseñar un Circuito de Mayoría, con 3 entradas y 1 salida, la cual debe ponerse en alto cuando haya mayoría de 1 s a su entrada. Problema 2: Diseñar un conversor de código Binario de 4 bits a código Gray. B3 B2 B1 B0 Binario / Gray G3 G2 G1 G0 Problema 3: Diseñar un conversor de código BCD (decimal codificado en binario) a 7 segmentos, para excitar un display. B3 B2 B1 B0 a f e g d b c BCD / 7 seg a b c d e f g Problema 4: Diseñar un conversor de código Binario de 4 bits a código BCD. A3 A2 A1 A0 B3 B2 B1 B0 C3 C2 C1 C0

Problema 5: Diseñar un conversor de código BCD de 2 dígitos decimales a código Binario. Problema 6: Diseñar un dispositivo integrado por 4 teclas y 2 lámparas indicadoras, al cual llega la señal de un Reloj (R), de manera que: T3 T2 T1 T0 R t La lámpara intermitente (L I ) se enciende y apaga a la frecuencia del reloj cuando: No se pulsa ninguna tecla Se pulsa sólo una tecla Se pulsan sólo T2 y T0 L I L F de las condiciones anteriores. La lámpara fija (LF) se enciende cuando no se cumple ninguna Problema 7: Diseñar un Multiplicador binario de dos números de 2 bits: A1 A0 B1 B0 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 lógico 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 válvula de consumo cuya posición también es sensada (V=1 válvula 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 válvula está abierta, deben funcionar ambas bombas. Si el nivel del agua está entre sensores y la válvula está cerrada, sólo 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 código de 4 bits que nunca puede contener más de 3 bits en 1. El sistema debe encender una lámpara L1 cuando el número de variables de entrada en 1 sea superior al número de variables de entrada en 0 y encender una lámpara L2 cuando sean iguales. C3 C2 C1 C0 L2 L1 Problema 10: Un codificador de posición de eje proporciona una señal de 4 bits que indica la posición de un eje en pasos de 30º usando un código reflejado (Gray), como se indica en la tabla siguiente. Se puede suponer que las 4 combinaciones posibles de 4 bits no usados, no se producirán jamás. Se desea diseñar un sistema que dadas estas señales, genere una señal S que sea 1 siempre que el eje se encuentre dentro del primer cuadrante (0º - 89º) Al resolver el problema, respetar la definición de Tabla de Verdad en cuanto a la manera de estructurarla. Posición del eje Salida del Codificador E1 E2 E3 E4 0º - 29º 0 0 1 1 30º - 59º 0 0 1 0 60º - 89º 0 1 1 0 90º - 119º 0 1 1 1 120º - 149º 0 1 0 1 150º - 179º 0 1 0 0 180º - 209º 1 1 0 0 210º - 239º 1 1 0 1 240º - 269º 1 1 1 1 270º - 299º 1 1 1 0 300º - 329º 1 0 1 0 330º - 359º 1 0 1 1

Problema 11: Un blanco de tiro con arco y flecha está formado por 8 bandas concéntricas asignándosele a la banda central el valor 10 y en orden decreciente lleva el valor 3 la exterior. La información de en qué banda se produjo el impacto se obtiene a partir de 4 señales ( I, P, C, E ) que el dispositivo sensor entrega al sistema a diseñar ( ). 10 9 8 7 6 5 4 3 I D 3 (MSB) P D 2 C D 1 E D 0 (LSB) Señales SIGNIFICADO I=1 Flecha impacta en una banda IMPAR P=1 Flecha impacta en una banda PAR C=E=0 Flecha impacta en la banda 3 o 4 C=0, E=1 Flecha impacta en la banda 5 o 6 C=1, E=0 Flecha impacta en la banda 7 u 8 C=E=1 Flecha impacta en la banda 9 o 10 El sistema a diseñar ( ) debe indicar en BINARIO, el número de banda en la cual hizo impacto la flecha (siendo D 3 el bit más significativo -MSB-, y D 0 el bit menos significativo -LSB- ). En caso que no se haya hecho blanco la indicación debe ser cero y además debe ser N=1.