programacion pld
TRANSCRIPT
Dispositivos Lógicos Programables (PLD)
Son los dispositivos cuyas características pueden ser modificadas y almacenadas por medio de la programación de Hw.
(PAL) es uno de los dispositivos lógicos mas simples que significa (Programmable Array Logic)
Los PLD nos permite automatizar procedimientos tediosos como tablas de verdad, expresiones booleanas y nos permite controlar interconexiones de compuertas lógicas mediante circuitos físicos
Tipos de PLD
ROM, memoria de solo lectura
PROM, memoria de solo lectura programable
PLA, Arreglo Lógico Programable
EEPROM, memoria de solo lectura programable y borrable electrónicamente
RAM, memoria de acceso aleatorio
SRAM, memoria de acceso aleatorio estática
DRAM, memoria de acceso aleatorio dinámica
Hardware de PLD
Las Variables de entrada van conectadas a los planos (Arreglos de Compuertas Lógicas) a través de ello realiza las operaciones utilizando inversores y no –inversores donde la salida se dará por medio de un inversor
PLDArreglo de
compuertas Lógicas
Variables de Entrada
Salida Inversora
Operaciones
Programación de un PLD
Programar significa realizar las conexiones reales en el arreglo, es decir cuales conexiones deben estar en 0, 1
Existen 2 métodos para programar un PLD
•Programación por ZIF
•Programación en Sistema
Programación por ZIF
Este implica remover el chip del PLC y se requiere colocarlo en un dispositivo especial llamado (Programador)
Actualmente los programadores se conectan a una computadora personal donde contiene bibliotecas de información de diversos tipos de PLCDonde ejecutan un software de programación donde nos permite establecer información como:Que dispositivo es, si esta en blanco o leer el estado de cualquier conexión programableEl resultado de una programación exitosa es un archivo llamado JEDEC donde por medio de ZIF será grabado en el chip.
Programación en Sistema
Este método el chip no necesita extraerse del circuito para su programación se la realiza por medio de un cable conocido como JTAG donde tiene 4 terminales que son conectadas la PLC y es cargada la información por medio de software que establece el formato apropiado de PLC
Software utilizado actualmente
• ISE 8.2i (INTEGRATED SOFTWARE ENVIROMENT) Es una herramienta para estudiantes para profesores donde se realizan simulaciones sin dañar circuitos físicos.
• Requerimientos:
1 GB de espacio de almacenamiento en disco duro.
Memoria RAM 512 M mínimo , ideal 1 GB de memoria Ram
Windows 7 ,.Windows XP/PRO, Linux, o Solaris
Procesador 1.7 GHz.
Representación de Datos en HDL
Como todos ya conocemos los diferentes sistemas numéricos, y sabemos que el computador solo opera información binaria
Debemos aprender a utilizar diferentes formatos numéricos, donde el computador debe ser capaz de interpretarlos.
Sistema numérico AHDL VHDL Equivalencia
Binario B# B# #
Hexadecimal H# X# #
Decimal # # #
PrefijoNúmero binario
NúmeroHexadecimal
Ejemplo
• Interprete el siguiente valor de bit 11001 en la notación AHDL Y VHDL.
Sistema numérico AHDL VHDL Equivalencia
Binario B11001 B11001 19
Hexadecimal H11001 X11001 19
Decimal 11001 11001 25
Arreglo de Bits / Vectores de Bits
Los arreglos de bits nos sirve para representar bits de palabras en un sistema digital comunes.
Supongamos que nos llega un numero de 8bits que representa la temperatura actual a nuestro sistema digital este rango de números será representado en vectores ya que solo son posiciones asignados datos de diferente tipo
Para representar datos en un vector le asignamos un nombre y el índice de datos
P7 P6 P5 P4 P3 P2 P1 P0P1
MSB LSB
Ejemplo
• Supongamos que hay un arreglo de 8 bits llamado P1 • Escriba la designación para el bits mas significativo del arreglo• Escriba la designación para el bits menos significativo del arreglo
P1[7] 1P[6] P1[5] P1[4] P1[3] P1[2] P1[1] P1[0]P1
MSB LSB
RespuestasP1[7]P1[0]
Declaración de Arreglo de bits mediante AHDL
La sintaxis para la declaración de arreglo , utiliza un nombre seguido del intervalo de las asignaciones de los índices las cuales van encerradas en corchetes y seguido de la palabra reservada input que significa dato de entrada.
p1 [5…0] : INPUT;
Declaración de variables intermedias
Para declarar datos intermedios se declara justo después de las declaraciones de E/S
Con un a variable y asignado el valor en el cuerpo del programa.
VARIABLE nombre [3..0] : none;
BEGIN
temp [ ] = p1 [];
END;
Declaración de vectores de bits en VHDL
Para declarar vectores en VHDL utilizamos el nombre de vector de bits seguido de lo nodo IN el tipo (BIT_VECTOR) y el intervalo de las designaciones.
PORT (nombre: IN BIT_VECTOR(5 DOWNT 0);
Tipos de datos comunes en VHDL
Tipo de datos Declaración de ejemplo Posibles Valores
BIT Y :OUT BIT; ‘0’ ‘1’
STD_LOGIC Controlador: STD_LOGIC ‘0’ ‘1’ ‘Z’ ‘X’ ‘-’
BIT_VECTOR Datos_bcd: BIT_VECTOR(3 DOWNTO 0);
‘’ 0101‘’ ‘’ 1001‘’
STD_LOGIC_VECTOR Dbus: STD_LOGIC_VECTOR(3 DOWNTO 0 );
‘’ 0000‘’
INTEGER SIGNAL z: INTEGER RANGE -32 TO 31;
-32 -2 -1, 0, 1, 0, 1, 2, 31
Tablas de verdad mediante el uso de HDL
Una tabla de verdad es justo lo necesario para un diseñador defina como debe operar un circuito, después de deriva una expresión booleana y simplificarla en mapas de K y por ultimo el circuito se implementa a partir de la ecuación booleana fina.
Si utilizamos tablas de verdad de HDL omitiríamos todos lo pasos y haríamos de forma directa el circuito final