Fpga x pld(cpld)
FPGA
Um FPGA é um dispositivo semicondutor que é largamente utilizado para o processamento de informações digitais. Foi criado pela Xilinx Inc., e teve o seu lançamento no ano de 1985 como um dispositivo que poderia ser programado de acordo com as aplicações do usuário (programador). O FPGA é composto basicamente por três tipos de componentes: blocos de entrada e saída (IOB), blocos lógicos configuráveis (CLB) e chaves de interconexão (Switch Matrix). Os blocos lógicos são dispostos de forma bidimensional, as chaves de interconexão são dispostas em formas de trilhas verticais e horizontais entre as linhas e as colunas dos blocos lógicos.
• CLB (Configuration Logical Blocks): Circuitos idênticos, construído pela reunião de flip-flops (entre 2 e 4) e a utilização de lógica combinacional. Utilizando os CLBs, um usuário pode construir elementos funcionais lógicos.
• IOB (Input/Output Block): São circuitos responsáveis pelo interfaceamento das saídas provenientes das saídas das combinações de CLBs. São basicamente buffers, que funcionarão como um pino bidirecional entrada e saída do FPGA.
• Switch Matrix (chaves de interconexões): Trilhas utilizadas para conectar os CLBS e IOBS. O terceiro grupo é composto pelas interconexões. Os recursos de interconexões possuem trilhas para conectar as entradas e saídas dos CLBs e IOBs para as redes apropriadas. Geralmente, a configuração é estabelecida por programação interna das células de memória estática, que determinam funções lógicas e conexões internas implementadas no FPGA entre os CLBs e os IOBs. O processo de escolha das interconexões é chamado de roteamento.
CPLD
Um CPLD (acrônimo de Complex Programmable Logic Device ou "Dispositivo Lógico Complexo Programável") é um dispositivo lógico programável com complexidade entre aquela de uma PAL e de uma FPGA, e arquitetura com característica de ambas. O bloco de construção de um CPLD é a macrocélula, as quais implementam as funções lógicas combinacionais,