Post on 05-Jul-2015
transcript
Programación de Circuitos Secuenciales con HDL
Equipo 9
Que es un Circuito Secuencial?
Los circuitos de conmutación secuenciales tienen
la propiedad de que la salida no sólo depende de
la entrada actual, sino también de la secuencia de
entradas anteriores.
Circuito Secuencial
Circuitocombinatorio Flip-Flops
Entradas
Reloj
Salidas
Continuación
Continuación
¿Qué es un PLD?
Son las siglas de Programmable Logic Design o dispositivos de lógica programable. Estos circuitos integrados permiten generar dentro del mismo funciones que no disponemos en los C.I. comerciales (decodificadores, comparadores, sumadores, etc).
Los PLD´s pueden reemplazar circuitos integrados de propósito especifico en el diseño de circuitos
digitales.
Un solo PLD es funcionalmente equivalente a dispositivos que tienen desde 5 hasta 10,000 compuertas lógicas.
Estos dispositivos están basados en transistores
bipolares transistores especiales que cuando se
hace circular una fuerte corriente dejan de conducir,
pero pueden volver a conducir aplicando una
diferencia de potencial en el circuito.
Un ejemplo
Arquitectura Básica de los PLD´s
Los PLD´s contienen una arquitectura general predefinida y se puede reprogramar por el usuario.
Agunos PLD´s contiene flip-flops y Latches para ser usados como elementos de almacenamiento para entradas y salidas.
Los pines pueden ser usados como entradas, salidas o I/O con habilitación de tres estados.
Ventajas de los PLD´s
Reduce la cantidad de CI Reduce el espacio en las tarjetas
electrónicas. Menor consumo de potencia. Tiempo de diseño corto. Se pueden realizar cambios del
programa (mantenimiento). Compacta.
1. Especificar la función que el circuito deseado debe realizar.2. Generación de las ecuaciones booleanas requeridas para
implementar esa función.3. Simplificación de las ecuaciones booleanas.4. Generación de un mapa de fusibles desde las ecuaciones
booleanas.5. Simulación Lógica (Opcional).6. Programación de dispositivo seleccionado.7. Chequeo o test del dispositivo ya programado con el
programador.
Procedimiento de diseño con dispositivos logicos programables
Programación
La programación de los PLDs en general se
lleva a cabo por medio de programas de
aplicación especializados siendo las dos
estrategias de programación mas utilizadas la
captura esquemática y la de lenguaje de
descripción de hardware (HDL).
Por Captura Esquemática
Por Captura Esquemática se entiende el proceso de descripción, mediante un dibujo, de un circuito eléctrico, que representan a los diferentes componentes del circuito y solo se efectúan interconexiones entre ellos. Existen varios programas aplicación de Captura Esquemática como el “Schematic” del IspStarter de Lattice Semiconductor o “Fundation” de XILINX entre otros.
Continuación
Esta técnica permite simular en la computadora el circuito virtualmente y verificar su funcionamiento antes de su fabricación o implementación en un PLD, reduciendo así el ciclo de diseño y el tiempo de obtención de un producto.
Captura esquemática
Desventaja y Componentes
La desventaja es que en el diseño de circuitos grandes no es posible comprenderlos debido a que hay demasiados componentes e interconexiones en la pantalla.
Los cuatro componentes básicos de la captura esquemática son: Símbolos, Conectores, Etiquetas y Puertos de Entrada y/o Salida
Componentes
Símbolos es una representación gráfica de los componentes.
Conectores (alambre), permite la interconexión entre las terminales de los símbolos, o Dispositivos de entrada/salida.
Etiquetas (Variables), Son los nombres para la identificación de las entradas o salidas.
Puertos de entrada/salida es la definición de las características de un Puerto de Entrada, Salida o Puerto Bidirecional.
Diagrama de Proceso
Con HDL
Lenguaje de descripción de hardwareUn lenguaje de descripción de hardware (HDL, Hardware Description Language) permite documentar las interconexiones y el comportamiento de un circuito electrónico, sin utilizar diagramas esquemáticos.
Software para compilar los programas de los PLD:
ABELCUPLLOGIC/icORCAD-PLDPLDesignerTANGO-PLD
Diagrama de Proceso
Ventajas
• Es posible verificar el funcionamiento del sistema dentro del proceso de diseño sin necesidad de implementar el circuito.
• La simulación del diseño, antes de que éste sea implementado mediante compuertas, permitendo probar la arquitectura del sistema para tomar decisiones en cuanto a cambios en el diseño.
Continuación
• Esta metodología elimina el antiguo método
tedioso de diseño mediante compuertas, reduce el tiempo de diseño y la cantidad deerrores producidos por el armado del
circuito.
• Un circuito hecho mediante una descripción
en un HDL puede ser utilizado en cualquier tipo
de dispositivo programable capaz de soportar
la densidad del diseño. Es decir, no es necesario
adecuar el circuito a cada dispositivo porque las
herramientas de síntesis se encargan de ello.
Un PDL con HDL
Por Ecuaciones Booleanas
La parte del circuito combinatorio que genera
las entradas a los flip-flops se describe por
medio de un conjunto de expresiones booleanas llamadas ecuaciones de
entrada de los flip-flops
Circuito Secuencial
Ecuaciones Booleanas
A = DA = A·X + B·XB = DB= A’·XLa salida Y esta dada por:Y = (A + B)·X’
Observando esta última ecuación se concluye que la salida (Y) es función del estado presente del sistema (A y B) y de la entrada asincrónica (X).
Por Tabla de estados
Un circuito secuencial se especifica por una
tabla de estados que relaciona las salidas y los
estados siguientes como una función de las
entradas y de los estados presentes.
Tabla de Estados
Continuación
La tabla de estado para un circuito secuencial
con m flip-flops y n entradas tiene 2m+n filas. El
estado siguiente tiene m columnas, y el número
de columnas depende del número de salidas.
Tabla de Estados Reducida
Continuación
Haciendo un análisis de la operación del circuito
de la figura 7.1.3. se puede observar lo
siguiente: Cuando la variable X=0 los estados
actuales A y B cambian a 0 después de la
transición de reloj , y cuando X=1, los estados
de las salidas se comportan tal como se resume
en la tabla 7.1.2. Se plantea como ejercicio
verificar la información de la tabla.
Por Diagrama de estados
La información disponible en una tabla de
estados se puede representar gráficamente en
un diagrama de estados. En este tipo de
diagrama, el estado se representa con un
circulo y la transición entre estados se indica
con líneas que conectan los círculos.
Diagrama de Estado
Continuación
Las líneas que salen y regresan al mismo círculo
indican que no hay cambio en el estado, cuando
se presentan la entrada y salida indicados.
Por Tabla de verdad
Las tablas de transición se usan en conjunto
con las de estado y representan la tabla de
verdad de los flip-flops con los cuales se desea
implementar el circuito secuencial. La tabla
contiene los estados actuales y siguientes
según el estado de las entradas de los flip-flops.
La tabla 7.1.3 corresponde a la tabla de
transición del flip-flop JK.
Tabla de Verdad
Programación de un PLD con HDLCódigo:
PIN 2 = A;PIN 3 = B;PIN 4 = Ci;
PIN 23 = S;/*sumaPIN 22 = Co;/*Acarreo
FIELD entradas = [Ci,B,A];FIELD salidas = [Co,S];
TABLE entradas => salidas{ 'b'000 => 'b'00; 'b'001 => 'b'01; 'b'010 => 'b'01; 'b'011 => 'b'10; 'b'100 => 'b'01; 'b'101 => 'b'10; 'b'110 => 'b'10; 'b'111 => 'b'11;}
Programación con Cupl