UNIDAD VI: CIRCUITOS LÓGICOS SECUENCIALES

Slides:



Advertisements
Presentaciones similares
Algoritmos y Programas
Advertisements

DISEÑO DE TRANSFERENCIA ENTRE REGISTROS
2 Curso de Ingenieros de Telecomunicación Soluciones al examen 20 de Junio Con la llegada definitiva de la nueva moneda, el euro, se hace preciso.
También conocido como Diseño Lógico Rodrigo Salvatierra Alberú.
Autómatas Finitos.
“INTRODUCCIÓN A LA LÓGICA COMPUTACIONAL”
Nuestro reto es educar al pensamiento, para que razone de acuerdo a ciertas reglas; con ello podremos ser más eficientes al momento en que ordenamos.
Máquinas de estado Máquinas de estados :
Unidad 1 DISEÑO DE ALGORITMOS ING. Nelwi Baez. MSC
Razonamiento algorítmico
DESCRIPCION DE SISTEMAS
Instalación de Computadoras
Análisis y Diseño de Sistemas II “Exposición Diagramas UML”
LÓGICA DE PROGRAMACIÓN
Introducción a los Algoritmos
Lenguajes de programación
Técnico en programación de Software
Fundamentos de Ingeniería de Software
DIAGRAMAS DE FLUJO Y PSEUDOCÓDIGO
¿Qué es un modelo conceptual?
UNIDAD VI: CIRCUITOS LÓGICOS SECUENCIALES
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERIA DIVISIÓN DE INGENIERÍA ELÉCTRICA COMPUTACIÓN PARA INGENIEROS NOTA IMPORTANTE: Para complementar.
Metodología de la Programación
Análisis Análisis y Síntesis Métodos de análisis: Tabla de verdad.
NIVEL DE LENGUAJES ORIENTADOS A PROBLEMAS NIVEL DE LENGUAJE ENSAMBLADOR NIVEL DE MAQUINA DEL SISTEMA OPERATIVO NIVEL DE MICROPROGRAMACIÓN NIVEL DE LÓGICA.
Universidad Autónoma San Francisco
Sistemas Secuenciales
Programación de Computadores
FORMULACIÓN DE ALGORITMOS
Ingeniero Anyelo Quintero
EXAMEN CORTO SOBRE FLIP-FLOPS
Fundamentos de programación
ALGORITMOS, CONCEPTOS BASICOS.
Análisis de Sistemas Secuenciales
LENGUAJE DE PROGRAMACIÓN
Tema 6. Conceptos básicos de programación (Repaso) Prof. María Alejandra Quintero Informática Año 2013.
Sistemas Secuenciales Asincrónicos
UNIDAD VI: CIRCUITOS LÓGICOS SECUENCIALES
Fundamentos de programación Organización de una computadora.
UNIDAD VI: CIRCUITOS LÓGICOS SECUENCIALES
Ing. Santiago Figueroa Lorenzo
Juego de Preguntas y Respuestas
UNIDAD 2. ALGORITMOS Y ESTRUCTURAS DE DATOS.
Unidad 1: FUNDAMENTOS DE COMPUTACIÓN Y PSEUDOLENGUAJE
Maestría en Ingeniería Electrónica
COMPUTO III Ing. Jimmy Ojeda Arnica.
Introducción a los programas
Diseño lógico secuencial con VHDL
Lenguaje Programación
DEV- C++ ·include <iostream> Int x x=x+2(x)
Entendiendo las partes
PERIFÉRICOS DE ENTRADA
ALGORITMO QUE ES ??.
Reglas Básicas del Álgebra de Boole
Elaboración de algoritmos usando lógica de programación
Diagrama de Transición de Estado
Automatización Industrial (AIS7201)
Algoritmos Programación
Lenguaje Programación
UNIDAD 2: “Características del Modelado UML” CONTENDIDO Elaborado por: Ingeniero Harold Cabrera Meza Actualizado por: Ingeniero Nilson Albeiro Ferreira.
PARCIAL 1 SISTEMA DE TRATAMIENTO DE INFORMACION. Concepto de Programa  El término programa (d el latín programma, que a su vez proviene de un vocablo.
PARCIAL 1 Introducción a los programas. Concepto de Programa  El término programa (d el latín programma, que a su vez proviene de un vocablo griego)
Diseño de Sistemas Secuenciales Síncronos
PARCIAL 1 Introducción a los programas. Concepto de Programa  El término programa (d el latín programma, que a su vez proviene de un vocablo griego)
Máquinas de estado con VHDL
COMPUTER SACIENCE PARCIAL 1
Clase 1.  Un programador es aquella persona que escribe, depura y mantiene el código fuente de un programa informático, es decir, del conjunto de instrucciones.
 El diseño ascendente se refiere a la identificación de aquellos procesos que necesitan computarizarse conforme vayan apareciendo.  Su análisis como.
Ing. José David Ortiz Salas
Transcripción de la presentación:

UNIDAD VI: CIRCUITOS LÓGICOS SECUENCIALES Maquinas de Estados Finitos I

MAQUINA DE ESTADOS FINITOS (FSM) La gran mayoría de algoritmos son implementados en software, esto se debe principalmente a la flexibilidad y facilidad de programación de los microprocesadores. Algunos algoritmos no pueden implementarse solo en software. Las razones pueden variar de acuerdo a la aplicación pero frecuentemente hacen referencia a una capacidad de procesamiento que NO PUEDE obtenerse con microprocesadores

MAQUINA DE ESTADOS FINITOS (FSM) La solución para implementar estos algoritmos es utilizar hardware. Cuando un algoritmo se implementa en hardware, las maquinas de estado se emplean para acompañar la tarea (control). Una maquina de estados puede ser de la complejidad que se quiera y funciona de forma similar al software. La forma más simple de maquina de estados es un contador.

MAQUINA DE ESTADOS FINITOS (FSM) Una FSM descompone un algoritmo en pasos (estados). Las transiciones entre estado pueden depender de una condición o evento, o pueden producirse en forma incondicional. Las condiciones y eventos están asociados a las entradas del circuito. Las maquinas de estado se representan por medio de Diagramas de Estados y Tablas de Transición de Estados.

EJERCICIO 1 Especificar en lenguaje natural el funcionamiento de una maquina expendedora de tiquetes por medio de estados … Sencillo Par Multiviaje

EJERCICIO 1 – SOLUCIÓN Paso 0 – Sistema en espera, permanece en este paso mientras el usuario no presione un botón de selección de tiquete. Paso 1 – El sistema despliega valor de tiquete seleccionado y queda en un estado de espera a que usuario ingrese el dinero. Paso 2 – Cuando el usuario termina de ingresar dinero, el sistema verifica que tenga la devuelta para el valor ingresado, sino la tiene devuelve el dinero ingresado por el usuario y retorna al paso 0. Si la tiene entrega el tiquete seleccionado Paso 3 – Finalmente el sistema entrega la devuelta y agradece la compra. Paso 4 – Regresar a estado de Espera

DIAGRAMA DE ESTADOS El Diagrama de Estados describe el comportamiento de un circuito secuencial en forma gráfica. Una FSM siempre tendrá un diagrama de estados asociado. Los Estados del circuito se simbolizan como círculos y se etiquetan con letras mayúsculas. Las transiciones entre estados se representan con flechas. Estas se rotulan con las entradas y el valor de estas que produjo la transición. Las salidas pueden aparecer ya sea en las flechas o en los círculos.

DIAGRAMA DE ESTADOS Ejemplos de Diagramas de Estado A A B E B C D C D entrada/salida 1 entrada 1 salida 4 estados 1 salida 0/0 A (0) 1 entrada A 1 1/1 1/0 1/0 B (0) 1 E (1) B 1/1 0/0 C (1) 0/0 1 D C 0/1 D (0) 1

DIAGRAMA DE ESTADOS Es muy importante tener en cuenta que si se tiene una variable de entrada simple, cada estado en el diagrama debe tener dos flechas salientes, una que corresponde a la entrada en un valor ‘1’ y otra en un valor ‘0’. Si fueran dos variables de entrada, deben salir de cada estado cuatro flechas que corresponderían a todas las posibles combinaciones entre las entradas: 00, 01, 10 y 11. 00/0 xx/0 xx/1 A B C D 01/0 11/0 10/1 01/0 10/1 11/0 00/0

TABLA DE TRANSICION DE ESTADOS La tabla de transición de estados es otra forma de representar circuitos secuenciales y FSMs. Es utilizada principalmente en el algoritmo de diseño del sistema secuencial. A (0) B C (1) D E 1 ESTADO ACTUAL ESTADO SIGUIENTE SALIDA Ent=0 Ent=1 A B C D E A C B E B D A 1

CIRCUITOS MOORE A (0) B C (1) D E 1 Los circuitos cuyas salidas solamente son funciones del estado se denominan Circuitos Moore. En los Circuitos Moore las salidas se introduce dentro del estado, ya que la salida depende solamente del estado.

CIRCUITOS MOORE Diagrama de bloques de un circuito tipo moore

CIRCUITOS MEALY A B C D 1/0 1/1 0/0 0/1 Si las salidas de un circuito dependen del estado actual y de las entradas se denominan Circuitos Mealy. Estando en un estado si preguntamos por el valor de la salida, podemos no tener respuesta hasta que no se especifique el valor de la entrada en el siguiente intervalo.

CIRCUITOS MEALY Tabla de transición de estados en un circuito mealy. A 1/0 1/1 0/0 0/1 ESTADO ACTUAL ESTADO SIGUIENTE 1 A A/0 B/0 B D/0 C/1 C D D/1 A/1

CIRCUITOS MEALY Diagrama de bloques de un circuito tipo mealy

MOORE vs. MEALY En el sistema de Moore la independencia de las salidas de las entradas hace más fácil seguir la operación del sistema en pasos a través de sus estados y por tanto hace mucho más fácil la detección de errores. Menos propenso a glitches en las salidas. En forma general la versión de Mealy de un circuito secuencial será más económica en componentes físicos que la versión de Moore. Debido a la dependencia de las salidas respecto a entradas, los circuitos Mealy pueden presentar glitches.

MOORE vs. MEALY NOTA: Cualquier Sistema secuencial se puede implementar con alguna de los dos tipos de circuitos moore ó mealy. Incluso es posible hacer combinaciones de ambos tipos de circuitos en un solo diseño.

EJERCICIO 2 Dibuje el diagrama de estados y la tabla de transición de estados de un circuito secuencial el cual da una salida Z = 1 solamente cuando la entrada X es igual 1 durante 3 o más intervalos consecutivos de reloj. Utilice un circuito tipo Moore Utilice un circuito tipo Mealy

EJERCICIO 2 – SOLUCIÓN MOORE A (0) 1 ESTADO ACTUAL ESTADO SIGUIENTE SALIDA 1 A B C D B (0) 1 C (0) 1 D (1) 1

EJERCICIO 2 – SOLUCIÓN MEALY 0/0 A 1/0 0/0 ESTADO ACTUAL ESTADO SIGUIENTE 1 A A/0 B/0 B C/0 C C/1 B 0/0 1/0 C 1/1

EJEMPLO – DETECTOR DE SECUENCIA Dibuje el diagrama de estados y la tabla de transición de estados de un circuito secuencial el cual da una salida Z = 1 cuando por una entrada X a ingresado la secuencia de bits 1101. Para un circuito secuencial tipo: Moore Mealy Circuito Secuencial X Z

EJEMPLO – DETECTOR DE SECUENCIA Circuito Moore S0 E.A E.S SALIDA Z X = 0 X = 1 S0 S1 S2 S3 S4 E.A E.S SALIDA Z X = 0 X = 1 S0 S1 S2 S3 S4 1 1 S1 1 1 S2 1 S3 1 S4 1

EJEMPLO – DETECTOR DE SECUENCIA Circuito Mealy 0/0 S0 E.A E.S X = 0 X = 1 S0 S0/0 S1/0 S1 S2/0 S2 S3/0 S3 S1/1 E.A E.S X = 0 X = 1 S0 S1 S2 S3 0/0 0/0 1/0 S1 1/1 1/0 S2 1/0 0/0 S3