Sunteți pe pagina 1din 15

PRINCIPIOS ELECTRONICOS Y APLICACIONES DIGITALES

Paloma Estefana Rodrguez Morales

Unidad 4:
Dispositivos lgicos programables Programacin de circuitos combinacionales con HDL Programacin de circuitos secuenciales con HDL

4-diciembre-2013

4.1. Dispositivos lgicos programables


Un Dispositivo Lgico Programable (PLD) es un componente electrnico usado para construir circuitos digitales reconfigurables. A diferencia de una compuerta lgica que tiene una funcin fija, los PLDs salen de fbrica sin una funcin en especfico, por lo tanto necesitan ser programados o reconfigurados antes de poder ser usados. ventajas: habilidad de integracin, que permite integrar una gran cantidad de funcionalidad en un solo chip. Los PLDs eliminan el uso de mltiples chips as como la inconveniencia y desconfianza de usar cableado externo. Se puede cambiar el diseo. permiten ser reprogramados o reconfigurados Arquitectura genrica bsica de un PLD Fundamento: Cualquier funcin lgica puede ser expresada como una suma de productos (AND-OR) (minitrminos)

ESTN FORMADOS POR DOS GRANDES BLOQUES O PLANOS: AND: Donde se realizan los productos lgicos de la/s funcin/es OR: Donde se realizan las sumas lgicas y cuya salida es la funcin/es a disear En este tipo de Dispositivos, ambos planos son configurables Se pueden hacer m funciones lgicas de n variables (y sus complementadas) con un mximo de p productos lgicos Todas las combinaciones son posibles La programacin se lleva a cabo a travs de impulsos elctricos que inactivan las celdas que no sern utilizadas. En el caso de los dispositivos re-programables, los fusibles son remplazados con switches

4.1.1. Tipos
Existen cuatro tipos de dispositivos que se clasifican como PLDs: La memoria programable de slo lectura PROM La matriz lgica programable PLA La matriz lgica programable PAL La matriz lgica genrica GAL Las PALS slo se programan 1 vez y la ecuacin no puede ser modificada; En cambio las GAL pueden ser reprogramadas varias veces. Se clasifican de acuerdo a su arquitectura, es decir, la ordenacin funcional de los elementos internos que proporciona al dispositivo sus caractersticas especficas. Memoria programable de slo lectura (PROM). Est formada por un conjunto fijo de puertas AND (no programable) conectadas como decodificador y una matriz programable OR, como muestra la figura 5.3. Se utiliza como memoria direccionarle y no como dispositivo lgico.

Tipos de PROM RAM. Son dispositivos donde se pueden almacenar varios datos numricos, segn su capacidad. La escritura y lectura de este tipo de memorias se realiza slo cuando existe alimentacin. DRAM (memoria dinmica) basada en transistores por lo cual es reducible. Es lenta por que necesita que est pasando corriente (refresh) SRAM (memoria esttica) basada en flip-flops, es mucho ms rpida que la anterior ya que no necesita de una corriente que alimente al circuito para mantener el estado de los datos. ROM. Dispositivos similares a los anteriores pero los nmeros almacenados no se pierden al suspender la alimentacin PROM. Grabada de fbrica, no es borrable EPROM. Se puede grabar elctricamente pero al borrado es con luz ultravioleta EEPROM. Se borra y graba elctricamente

Matriz lgica programable PLA Es un PLD formado por una matriz AND programable y una matriz OR programable.

Matriz lgica programable PAL Se ha desarrollado para superar ciertas desventajas de la PLA, tales como largos retardos debidos a fusibles adicionales que resulta de la utilizacin de dos matrices programables y la mayor complejidad del circuito. La PAL bsica est formada por una matriz AND programable y una matriz OR fija con la lgica de salida.

Matriz lgica genrica GAL Es el desarrollo ms reciente. Al igual que la PAL se forma con una matriz AND programable y una matriz OR fija. Las dos principales diferencias son: Es reprogramable: usa la tecnologa E2CMOS borrable elctricamente en lugar de fusibles. Tiene configuraciones de salida programables.

4.1.2. Caractersticas Generales


1-Facilidad de diseo: Las herramientas de soporte al diseo con PLDs facilitan enormemente este proceso. permiten expresar la lgica de los circuitos utilizando formas variadas de entrada tales como; ecuaciones, tablas de verdad, procedimientos para mquinas de estados, esquemas, etc. La simulacin digital posibilita la depuracin de los diseos antes de la programacin de los dispositivos. Todo el equipo de diseo se reduce a un software de bajo coste que corre en un PC, y a un programador. 2- Prestaciones: tienen tiempos de conmutacin tan rpidos como los circuitos integrados de funcin fija ms veloces. En cuanto al consumo de potencia, los PLDs generalmente consumen menos que el conjunto de chips a los que reemplazan. 3-. Fiabilidad: Cuanto ms complejo es un circuito, ms probabilidades hay de que alguna de sus partes falle. Puesto que los PLDs reducen el nmero de chips en los sistemas, la probabilidad de un fallo disminuye ,Las fuentes de ruido tambin se reducen. 4-Seguridad:Los PLDs tienen fusibles de seguridad que impiden la lectura de los dispositivos programados, protegiendo los diseos frente a copias.

Caractersticas especficas
PROM | *Son memorias programables de solo lectura.*Son lgicos.*Son usadas para codificar las combinaciones de entrada en funciones de salida. | PAL | *Son dispositivos de matriz programables.*Son los dispositivos programables por usuario mas empleados. | PLA | *Son matrices lgicas programables.*Tienen mayor flexibilidad que otros dispositivos. | GAL | *Las gal son dispositivos de matrices lgica genrica.*Son electrnicamente borrables. | Como un ejemplo de las caractersticas ofrecidas por este tipo de dispositivos, a continuacin se enlistan las especificaciones ms relevantes del circuito GAL16V8 : fmax = 250 Mhz. 3.5 ns mximo tiempo de propagacin. 2.5 ns mximo tiempo de propagacin de la entrada de reloj a el dato de salida. Celdas Reprogramables. Vcc = 5 Volts 5% Consumo de corriente 90 mA. Rapidez en el borrado < 100 ms. 20 aos de retencin de los datos. 8 Output Logic MacroCells (OLMC) Polaridad de salida Programable.

4.1.3. Fabricantes
Algunos fabricantes de PLD's son: Actel (http://www.actel.com/) Altera Corp. (http://www.altera.com/) Atmel Corp. (http://www.atmel.com/) Chip Express (http://www.chipexress.com/) Cypress Sem.(http://www.cypress.com/)

4.1.4. Pasos para el diseo con PLDs

4.2. Programacin de circuitos combinacionales con HDL


Un circuito combinacional, como su nombre lo sugiere es un circuito cuya salida depende solamente de la "combinacin" de sus entradas en el momento que se est realizando la medida en la salida. Analizando el circuito, con compuertas digitales, que se muestra (ver el diagrama) se ve que la salida de cada una de las compuertas que se muestran, depende nicamente de sus entradas. La salida F (salida final o total del circuito) variar si alguna de las entradas A o B o las dos a la vez cambian. Los circuitos de lgica combinacional son hechos a partir de las compuertas bsicas compuerta AND, compuerta OR, compuerta NOT. Tambin pueden ser construidos con compuertas NAND, compuertas NOR, compuerta XOR, que son una combinacin de las tres compuertas bsicas. La operacin de los circuitos combinacionales se entienden escribiendo las ecuaciones booleanas y sus respectivas tablas de verdad. Ejemplos de sistemas lgicos combinacionales: Codificadores, decodificadores Multiplexores, demultiplexores Comparadores, detectores de paridad

4.2.1. Por captura esquemtica


Por Captura Esquemtica se entiende el proceso de descripcin, mediante un dibujo, de un circuito elctrico, Existen varios programas aplicacin de Captura Esquemtica como el Schematic del IspStarter de Lattice Semiconductor o Fundation de XILINX entre otros. Esta tcnica permite simular en la computadora el circuito virtualmente y verificar su funcionamiento antes de su fabricacin o implementacin en un PLD, reduciendo as el ciclo de diseo y el tiempo de obtencin de un producto. La desventaja es que en el diseo de circuitos grandes no es posible comprenderlos debido a que hay demasiados Componentes e interconexiones en la pantalla. Los cuatro componentes bsicos de la captura Esquemtica son:

Smbolos, Conectores, Etiquetas y Puertos de Entrada y/o Salida Smbolos es una representacin grfica de los componentes. Conectores (alambre), permite la interconexin entre las terminales de los smbolos, o Dispositivos de entrada/salida. Etiquetas (Variables), Son los nombres para la identificacin de las entradas o salidas. Puertos de entrada/salida es la definicin de las caractersticas de un Puerto de Entrada, Salida o Puerto Bidireccional. Utilizando el programa IspStarter de Lattice Semiconductor, el primer paso en el proceso de obtener el circuito es precisamente la captura esquemtica en donde se genera un archivo de extensin .SCH, posteriormente se pasa al proceso de enlace (link) en donde se valida si los componentes son permitidos en el dispositivo seleccionado, adems si el dispositivo tiene la capacidad de integrar los elementos requeridos (Fit Design).

Tambin es posible efectuar la simulacin antes de obtener el circuito final con la intencin de asegurar que este cumpla con los requerimientos solicitados. En el proceso de enlace se genera un archivo reporte con extensin .REP que nos indica, entre otras cosas, la asignacin de terminales (Pin Out) y el archivo JEDEC con el cual efectuaremos la programacin del circuito a travs de un programador.

4.2.2. Por tabla de verdad


Para aclarar el proceso es necesario un ejemplo especfico, la tabla de verdad especifica un circuito combinacional con dos entradas y dos salidas. Las funciones de BOOLE pueden expresarse en suma de trminos mnimos. El diseo de circuitos combinacionales parte la especificacin del problema y culmina en un diagrama lgico de circuitos o un conjunto de funciones booleanas a partir de las cuales se puede obtener el diagrama lgico. El procedimiento implica los pasos siguientes: De la especificacin del circuito, deduzca el nmero requerido de entradas y salidas; asigne un smbolo a cada una. Deduzca la tabla de verdad que define la relacin requerida entre las entradas y las salidas. Obtenga las funciones booleanas simplificadas para cada salida en funcin de variables de entrada. Dibuje el diagrama lgico y verifique que el diseo sea correcto

.2.3. Por ecuaciones booleanas


Si se requiere reducir la funcin que realiza el circuito. Este proceso parte del diagrama lgico dado y culmina en un conjunto de funciones BOOLEANAS, una tabla de vedad o una posible explicacin del funcionamiento del circuito. Si el diagrama lgico analizar va acompaado de un nombre de funcin o de una explicacin de lo que se supone que hace, el problema de anlisis se reduce a una verificacin de la funcin planeada. El anlisis se efecta manual mente encontrando las funciones BOOLEANAS o la TABLA DE VERDAD, o bien utilizando un programa de simulacin de computadora. El primer paso del anlisis consiste en asegurarse del que el circuito dado sea combinacional y no secuencial. El diagrama del circuito combinacional tiene compuertas lgicas sin trayectoria de retroalimentacin ni elementos de memoria. Una trayectoria de retroalimentacin es una conexin de salida de una compuerta a la entrada de una segunda compuerta que forma parte de la entrada a la primera compuerta. El anlisis del circuito combinacional ,(ejemplo) es un circuito que tiene tres entradas binarias A,B y C y dos salidas binarias F1 y F2. Las salidas de diversas compuertas que son funcin nicamente de variables de entrada son T1 y T2. La salida F2 se deduce fcilmente de las variables de entrada. Las funciones BOOLEANAS de esta salida son: F2= AB+AC+BC F1= A+B+C T2= ABC

4.2.4. Por descripcin de comportamiento


Dentro del VHDL hay varias formas con las que podemos disear el mismo circuito, y es tarea del diseador elegir la ms apropiada. Funcional: Describimos la forma en que se comporta el circuito. Esta es la forma que ms se parece a los lenguajes de software ya que la descripcin es secuencial. Estas sentencias secuenciales se encuentran dentro de los llamados procesos en VHDL. Los procesos son ejecutados en paralelo entre s, y en paralelo con asignaciones concurrentes de seales y con las instancias a otros componentes. Flujo de datos: describe asignaciones concurrentes (en paralelo) de seales.

Estructural: se describe el circuito con instancias de componentes. Estas instancias forman un diseo de jerarqua superior, al conectar los puertos de estas instancias con las seales internas del circuito, o con puertos del circuito de jerarqua superior. Mixta: combinacin de todas o algunas de las anteriores. En VHDL tambin existen formas metdicas para el diseo de mquinas de estados, filtros digitales, bancos de pruebas etc.

4.3. Programacin de circuitos secuenciales con HDL


Circuito secuencial es todo sistema digital en el que sus salidas son funcin del estado actual de sus entradas y del estado anterior de sus salidas. Por tanto, almacenan de forma indefinida el estado de las salidas.

Los circuitos de conmutacin secuenciales tienen la propiedad de que la salida no slo depende de la entrada actual, sino tambin de la secuencia de entradas anteriores. Estos circuitos integrados permiten generar dentro de las mismas funciones que no disponemos en losC.I. Comerciales (decodificadores, comparadores, sumadores, etc). Estos dispositivos estn 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.

4.4 POR ECUACIONES BOOLEANAS


Un conjunto de ecuaciones podemos describir lo que hace un circuito, que transforma los nmeros de la entrada y los saca por la salida. Sin embargo, puesto que estos nmeros vienen expresados en binario, las variables y nmeros utilizados no son reales. Para describir un circuito digital utilizaremos ecuaciones matemticas. Sin embargo, estas ecuaciones tienen variables y nmeros que no son reales, por lo que NO podemos aplicar las mismas propiedades y operaciones que conocemos. Hay que utilizar nuevas operaciones y nuevas propiedades, definidas en el algebra de boole. Por tanto, vamos a trabajar con unas ecuaciones a las que NO estamos acostumbrados. Son muy sencillas, pero al principio pueden resultar poco intuitivas. En este captulo aprenderemos a trabajar con ellas. Las operaciones del lgrebra de Boole En el lgebra de Boole hay dos operaciones, denotadas con los smbolos + y ( - ) _ pero que no tienen nada que ver con las operaciones que todos conocemos de suma y producto!!. No hay que confundirlas!!!!. El + y el _ del Algebra de Boole se aplican a bits, es decir, a nmeros que slo pueden ser el 0 el 1. La operacin + Esta operacin se define de la siguiente manera: 0+0=0 0+1=1 1+0=1 1+1=1 Las tres primeras operaciones nos resultan obvias, son iguales que la suma que conocemos, sin embargo la expresin 1 + 1 = 1 nos puede resultar chocante. Pero no me haban dicho toda la vida que 1+1=2??, nos podemos estar preguntando. S, pero hay que recordar que aqu estamos utilizando otra operacin que NO ES LA SUMA, la denotamos con el mismo smbolo +, pero no es una suma normal!! Hay que cambiar el chip!! Ahora estamos con Algebra de Boole!!

4.3.4. POR DESCRIPCIN DE COMPORTAMIENTO


Descripcin VHDL de comportamiento.- Esta es quizs la etapa mas importante del diseo, ya que en ella se toman decisiones claves para el resultado final. El mtodo se clarifica con un ejemplo, en el cual se ha buscado tambin la aplicacin de los criterios de jerarqua, modularidad y regularidad. Para ello se trata de que todos los pasos de la secuencia sean iguales, cuando ello es posible. Tambin se siguieron las recomendaciones de no usar lgica auxiliar en las seales de reloj (todos los cambios del sistema se producen

sincronizados con la seal de reloj la cual es nica para todos los Flip Flops.) Sntesis.- Ya en la descripcin inicial se halla presente la divisin del circuito en una parte de control y una parte de datos. Por lo tanto la sntesis consistir en pasar de la descripcin de comportamiento a una descripcin de estructura (y comportamiento) que contemple los requisitos expuestos. En esta etapa son importantes la eleccin del tipo de lgica a utilizar y la estrategia de reloj, esto se podr apreciar en el ejemplo que consiste en un circuito de control para un convertidor A/D de aproximaciones sucesivas. Comportamiento. En una especificacin de este tipo decimos cual es la funcin que cumple el sistema. 4.3.5. POR TABLA DE ESTADO Un circuito cuya salida depende no solo de la combinacin de entrada, sino tambin de la historia de las entradas anteriores se denomina Circuito Secuencial. La historia de las entradas anteriores en un momento dado se encuentra resumida en el estado del circuito, el cual se expresa en un conjunto de variables de estado. El circuito secuencial debe ser capaz de mantener su estado durante algn tiempo, para ello se hace necesario el uso de dispositivos de memoria. Los dispositivos de memoria utilizados en circuitos secuenciales pueden ser tan sencillos como un simple retardador (inclusive, se puede usar el retardo natural asociado a las compuertas lgicas) o tan complejos como un circuito completo de memoria denominado multivibrador biestable o Flip Flop. Como puede verse entonces, en los circuitos secuenciales entra un factor que no se haba considerado en los combinacionales, dicho factor es el tiempo. De hecho, los circuitos secuenciales se clasifican de acuerdo a la manera como manejan el tiempo en circuitos secuenciales sncronos y circuitos secuenciales asncronos. En un circuito secuencial asncrono, los cambios de estado ocurren al ritmo natural marcado por los retardos asociados a las compuertas lgicas utilizadas en su implementacin, se sirven de los retardos propios (tiempos de propagacin) de las compuertas lgicas usados en ellos.

Los circuitos secuenciales sncronos, slo permiten un cambio de estado en los intantes marcados por una seal de sincronismo de tipo oscilatorio denominada reloj. Con sto se pueden evitar los problemas que tienen los circuitos asncronos originados por cambios de estado no uniformes en todo el circuito.

4.3.6. POR DIAGRAMA DE TRANSICIN


Dibujar el diagrama de transicin de estados y produccin de salidas, las tablas de transicin y la expresin lgica de las funciones f y g para el circuito secuencial de la figura. Obsrvese que ahora hay realimentacin desde la salida y por consiguiente a la entrada se calculan funciones de x(t) y Q(t) pero Q(t) procede de los valores de D en (t-t). Si el biestable D se dispara a subidas dibujar la evolucin temporal de la seal en Q cuando en la entrada x(t) y en el reloj Ck,
aparecen las siguientes seales:

Fuente consultadas

http://es.scribd.com/uploaddocument?archive_doc=58760407&metadata=%7B%22page%22%3A %22read%22%2C%22logged Tipos de PLDS http://www.infor.uva.es/~jjalvarez/asignaturas/fundamentos/lectures/digital/Tema4_memorias.p df captura esquemtica http://www.acredit.ece.buap.mx/_DOCUMENT%20COMPROBAT%20DE%20AUTOEVALUAC/17_IA %2045%20C.8.1.2/Memorias%20FCE/digital/S3-SD-01.pdf http://www.mailxmail.com/curso-sistemas-digitales/configuracion-logica-combinacional http://www.todopic.com.ar/foros/index.php?topic=34107.0 http://gemini.udistrital.edu.co/comunidad/profesores/jruiz/jairocd/texto/cirdig/vhdl/man3.pdf http://iindustrial.obolog.com/dispositivos-logicos-programables-parte-1-209085 http://aristotelesanato.blogspot.com/2008_01_01_archive.html http://fcqi.tij.uabc.mx/usuar ios/tcarrillo/files/circDig/unidad3/disSisDig.pdf