Está en la página 1de 20

Qué es un PLD

   es un circuito integrado, formado


por una matriz de puertas lógicas y
flip-flops, que proporcionan una
solucion al diseño de forma análogas,
a las soluciones de suma de
productos, productos de sumas y
multiplexores
PROM
• Este tipo de dispositivo se basa en la
utilización de una matriz AND fija, seguida
de una matriz OR programable
PLA
• ambas matrices, la de puertas And, así
como la de puertas Or es programable,
por lo que nos vemos habilitados a
incrementar el número de entradas
disponibles, sin aumentar el tamaño de la
matriz.
PAL
• Una PAL es diferente de una PROM a
causa de que tiene una red Y programable
y una red O fija
CPLD (Complex PLD)
• La matriz de interconexión se programa para conectar de forma
selectiva señales de entrada a un nivel de puertas AND
programables que se conectan a su vez a un nivel de puertas OR
fijo.
• Las salidas de las puertas OR se conectan a su vez a macrocelulas
configurables que permiten al usuario:
o Especificar la polaridad de salida.
o Seleccionar operaciones combinacionales o de registro.
o Proporcionar la funcionalidad triestado.
o Opcionalmente realimentar la matriz de interconexión.
• Independientemente de la función que se implemente, el camino
que siguen las señales a través del CPLD es prácticamente el
mismo. Esta arquitectura limita la flexibilidad del diseño, pero
ofrece la ventaja con que los tiempos de propagación son muy
predecibles.
FPGA (Field Programmable Gate
Array)
• Consiste en una matriz de gran tamaño de
celdas lógicas simples con canales de rutado
horizontal y vertical para interconexión.
• No tienen una estructura de implementación
predefinida, como los CPLD, permitiendo
implementar una función lógica de mulltiples
maneras.
• Son tremendamente flexibles y potentes algunas
de ellas.
el lenguaje VHDL
El lenguaje VHDL está creado
específicamente para el diseño de
hardware, es decir, podremos
implementar con él multitud de circuitos
lógicos, tanto combinacionales como
secuenciales
    Un programa en VHDL consta de dos
partes. La primera, la entidad, nos sirve
para relacionar nuestro diseño con el
mundo exterior, es decir, analizamos lo
que tratamos de crear como una "caja
negra", de la que sólo conocemos sus
entradas, sus salidas y la disposición de
las mismas
La segunda parte, la arquitectura,
describe como trata el circuito la
información correspondiente a las
entradas para obtener las salidas.
 VHDL soporta con este motivo,
tres típos de objetos, las variables,
las constantes y las señales .
Como las variables  y las señales
pueden variar su valor mientras
ejecutamos un programa, serán
éstas las encargadas de
almacenar dichos datos, asimismo
serán los portadores de la
información
   Los process son estructuras concurrentes
constituidas por sentencias de ejecución
secuencial
Únicamente las señales  pueden tener la
connotación de globalidad dentro de un
programa, es decir, que pueden ser
empleadas  dentro de cualquier parte del
programa a diferencia de las variables que
solo tienen sentido en el interior de un
process .
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
entity ejemplo1 is
port(
A1: in std_logic ;
A2: in std_logic ;
B2: in std_logic ;
A3: in std_logic ;
B3: in std_logic ;
f1: out std_logic ;
f2: out std_logic ;
f3: out std_logic );
end;
architecture behavioral of ejemplo1 is
begin
inver: process (A1)
begin
if A1='0' then
f1<='1';
else
f1<='0';
end if;
end process inver;
compand: process (A2,B2)
begin
if A2='0' or B2='0' then
f2<='0';
else
f2<='1';
end if;
end process compand;
compor: process (A3,B3)
begin
if A3='1'or B3='1' then
f3<='1';
else
f3<='0';
end if;
end process compor;
end behavioral;

También podría gustarte