Você está na página 1de 13

DISPOSITIVOS LGICOS PROGRAMVEIS (PLD)

Pesquisa retirada do site:


http://www.cefetrio.hpg.ig.com.br/ciencia_e_educacao/8/CI/pld2/default.htm Onde sero encontrados seus idealizadores.

GLEDSON VILLARTA GONALVES RA: 0602305 Engenharia Mecatrnica, Anhanguera Educacional Unidade II Taubat, SP

DISPOSITIVOS LGICOS PROGRAMVEIS - PLD

INTRODUO

Os projetistas de sistemas tm sua disposio um conjunto enorme de CIspadro, com circuitos que implementam vrias funes lgicas de uso corrente no projeto de computadores. Podemos nos deparar com projetos que vo requerer a utilizao de centenas ou milhares de chips-padro, exigindo um considervel espao de circuito impresso, e um tempo extremamente grande para insero e solda destes componentes na placa. Alm disso, o fabricante de computadores ou de aparelhos eletrnicos precisar manter um estoque consideravelmente grande de diversos CIs diferentes para poder fabricar seus produtos. A reduo do nmero de CIs utilizados no projeto tem uma srie de vantagens: menos espao ocupado nas placas de circuito impresso e consequentemente menos placas utilizadas no projeto; menor consumo de energia, o que acarreta fontes menores e mais baratas; processo de montagem das placas mais fcil e menos custoso; maior confiabilidade, uma vez que o projeto utiliza menos CIs, possuindo menos conexes sujeitas a falhas e, finalmente, facilidade na pesquisa de falhas do circuito. Os recentes desenvolvimentos de dispositivos lgicos programveis (PLD) tm proporcionado aos projetistas de sistemas uma forma de substituir um conjunto de chips-padro por um nico CI.

PLD

Um PLD um CI que contm grande nmero de portas e flip -flops interconectados dentro do chip. A maioria de tais conexes feita atravs de fusveis que podem ser queimados ou mantido intactos. O CI considerado programvel pelo fato de se poder especifi car a funo ou as funes lgicas que ele dever implementar, atravs da queima seletiva dos fusveis internos, interrompendo com isto algumas conexes e deixando outras intactas. O processo de "queima de fusveis" pode ser feito pelo prprio fabricante, de acordo com as especificaes do usurio, ou pelo prprio usurio, por meio de um equipamento especial. Este processo denominado programao, pois tem como resultado a implementao de uma funo lgica diferente para cada padro de queima especificado. A idia bsica dos CIs programveis uma matriz de portas AND e uma de portas OR, ligadas de maneira a gerar quatro sadas diferentes, cada uma das quais podendo ser uma funo lgica de duas variveis A e B. Cada entrada jogada tanto em um buffer no-inversor quanto num buffer inversor, de maneira a produzir as formas normas e invertida de cada varivel. Estas linhas so linhas de entrada da matriz de portas AND. Cada uma das portas AND conectada a duas linhas de entrada diferentes, de modo a produzir um nico produto das variveis de entrada. As sadas das portas AND so chamadas linhas de produto.

Cada linha de produto conectada a uma das quatro entradas de uma porta OR, atravs de uma ligao que inclui um fusvel. Com todos os fusveis inicialmente intactos, cada sada das portas OR ser uma constante 1. Abaixo a prova:

Cada uma das quatro sadas O1, O2, O3 e O4 pode ser programada para implementar qualquer funo de A e B, atravs da queima seletiva dos fusveis apropriados. Os PLDs so projetados de forma que a queima de um fusvel de entrada das portas OR faa com que esta entrada assuma o nvel lgico 0. Por exemplo, se houver a queima dos fusveis 1 e 4, na entrada da porta OR 1, a sada O1 ficar como abaixo:

Pode-se programar cada uma das outras portas OR remanescentes de maneira similar descrita acima. Uma vez que todas as sadas tenham sido programadas, o dispositivo vai gerar permanentemente em suas sadas cada uma das funes selecionadas.

Simbologia de PLDs

O diagrama ficaria muito confuso no caso de PLDs com muitas variveis de entrada. Por isso os fabricantes destes dispositivos adotaram uma simbologia simplificada para representar os circuitos internos dos PLDs.

No modelo simplificado, os buffers de entrada so representados sem a distino entre inversores e noinversores e uma nica linha aparece como entrada da porta AND, representando as quatro entradas existentes. As conexes das varveis de entrada a porta And so indicadas ora por um ponto ora por um X. O X representa um fusvel, e o ponto representa uma conexo hardwired, ou seja, uma conexo que no pode ser alterada. A ausncia de conexo. Neste exemplo, as entradas A e B esto ligadas porta AND de maneira a gerar o produto AB.

Arquitetura dos PLDs

Existem diversas arquiteturas empregadas no projeto de um PLD, entre elas existe aquela que utiliza a PROM como elemento bsico. O PROM mostrado a seguir pode funcionar como um PLD. Possui quatro entradas completamente decodificadas pelas portas AND, ou seja, cada porta gera um dos 16 possveis produtos AND. As conexes das linhas de entrada a uma das portas da matriz de ANDs so hardwired, enquanto que as conexes das sadas dos ANDs para as entradas dos ORs so todas programveis.

Programao

Quando os PLDs foram introduzidos, sua programao era feita atravs do preenchimento pelo projetista do circuito de um mapa de fusveis que mostrava quais os fusveis que deveriam ser queimados, de maneira que o PLD pudesse produzir as funes desejadas. Este mapa era devolvido ao fabricante do dispositivo que fazia ento a programao de acordo com o mapa fornecido. Aps realizar alguns testes, os dispositivos eram devolvidos ao projetista. Recentemente, com o aparecimento de diversos equipamentos para programao de PLDs, de custo muito baixo, tornou-se possvel ao prprio usurio programar o PLD. Existem no mercado programadores universais que podem ser utilizados para programar diversos tipos de PROMs, PLAs e FPLAs. O chip a ser programado colocado em um soquete do equipamento de programao, permitindo, ento, que o usurio programe e teste o dispositivo, usando seus prprios dados.

Consideraes finais

Muitos PLDs incluem um ou mais dos seguintes dispositivos como parte de suas arquiteturas: flip-flop, latchs, registradores de entrada e registradores de sada. Quase sempre as caractersticas operacionais de tais dispositivos so programveis, assim como suas conexes com outros dispositivos do chip. Isto d ao projetista uma grande oportunidade de projetar contadores e outros circuitos lgicos seqenciais, sem muito esforo. Este tipo de PLD chamado seqenciador lgico programvel. Todos os PLDs estudados at o momento eram programveis atravs da queima de fusveis. Uma vez queimado, o fusvel no pode ser recomposto. Ento, se houve algum erro na programao, ou se desejar mudar o projeto do sistema ao qual o PLD pertence, tal dispositivo no poder ser reutilizado. Nestes casos, dever jog-lo fora e compara outro para ser reprogramado. Esta desvantagem foi eliminada pela maioria dos fabricantes de PLDs, que desenvolvem dispositivos que podem ser apagados e reprogramados quantas vezes forem necessrias. A estrutura e o funcionamento bsico esto descritos, porm de extrema importncia conhecer os tipos de PLDs existentes no mercado e suas principais caractersticas. Os PLDs 1016, XC 3020 e GAL 22V10 foram escolhidos para se ter uma noo de suas estruturas e o que os diferencia. (PESQUISA: internet. FABRICANTES: Xilinx e Latice).

Pld 1016

So dispositivos lgicos programveis de alta densidade contendo 96 registros, 32 pinos universais de entrada e sada, quatro pinos de entrada, trs pinos de entrada de dados, um pino de entrada de habilitao global e um GRP ( global routing pool). O GRP oferece interconectividade comp leta entre todos esses elementos. O isp1016E possui sistemas de programao e

diagnstico de 5 volts. O ispLSI oferece reprogramabilidade no-voltil do tipo "on the fly" da lgica, bem como a interconeco para permitir sistemas reconfigurveis de fato. Ele arquitetnico e parametricamente compatvel com o componente pLSI 1016E, mas faz a multiplexagem de quatro pinos de entrada para controle de programao. Um "superset" funcional da arquitetura do ispLSI 1016 e do pLSI 1016, o ispLSI 1016E e o pLSI 101 6E possuem ainda um novo pino de sada de habilitao global. A unidade lgica bsica dos componentes ispLSI 1016E e pLSI 1016E o bloco lgico genrico (generic logic block GLB). Os GLBs so nomeados A),A1,... B7. Existe um total de 16 GLBs no ispLSI 1016E e no pLSI 1016E. Cada GLB tem 18 entradas, um arranjo de E/OU/OUEXCLUSIVO programvel, e quatro sadas que podem ser configuradas para serem combinacional ou sequiencial. Entradas do GLB vem do GRP e entradas especficas (s para este fim). Todas as sadas de GLB trazidas de volta ao GRP de maneira que elas possam ser conectadas s sadas de qualquer outro GLB no dispositivo. Os dispositivos possuem tambm 32 clulas de entrada/sada (I/O), cada qual conectada diretamente um pino de I/ Cada clula d e I/O pode ser programada individualmente para ser uma entrada combinacional, seqencial ou "latched", sada ou pino bidirecional com controle tri-state. Os nveis de sinal so compatveis com nveis TTL e as sadas podem fornecer 4mA ou "sink 8 mA". Cada sada pode ser programada independentemente para taxa de transmisso rpida ou lenta, para minimizar rudos de comutao de sada. Oito GLBs, 16 clulas de I/O, duas portas especficas e um ORP (output routing pool rede de interconeco de sada) so interconectados para formar um megabloco. As sadas dos 8 GLBs so conectadas a um conjunto de 16 clulas de I/O pelo ORP. Cada ispLSI 1016E e pLSI 1016E contm dois megablocos. O GRP possui como entradas, as sadas de todos os GLBs e todas as entradas das clulas bidirecionais de I/O . Todos esses sinais so feitos viveis s entradas dos GLBs. Atrasos atravs do GRP tem sido equacionados para minimizar "timing". Clocks no ispLSI 1016E e no pLSI 1016E so selecionados por meio da rede de distribuio de clocks. Trs pinos de clock (yo,y1,y2)so conectados rede de distribuio, e cinco sadas de clocks (CLK1, CLK2, IOCLK 0 E IOCLK1) destinam-se a enviar clocks aos GLBs e as clulas de I/O . A rede de distribuio de clock pode ser obtida de um GLB de clo ck especial (BO no ispLSI 1016E e no pLSI 1016E). A lgica desse GLB permite ao usurio criar um clock interno a partir de uma combinao de sinais internos ao dispositivo.

GAL22V10 O GAL22V10, com propagao mxima de 5ns de tempo de demanda, combina o processo CMOS de alta capacidade ca a tecnologia E2 para fornecer a melhor capacidade possvel de qualquer dispositivo 22V10 do mercado. Circuitos CMOS permitem o GAL 22V10 a consumir muito menos quando comparados aos dispositivos 22V10 bipolares. A tecnologia E2 oferece maior velocidade (<100ms) de apagamento, desde que estejam capacitados para reprogramar ou reconfigurar o dispositivo rapidamente e eficientemente. Sua arquitetura fornece o mximo de flexibilidade permitindo assim o OLMC de ser configurado pelo usurio. O GAL22V10 totalmente compatvel com o padro bipolar e com o dispositivo CMOS 22V10. O GAL 22V10 tem um varivel nmero de produtos diferentes de acordo com o OLMC. A polaridade de sada destes OLML podem ser individualmente sejam eles de ao alta ou baixa. Cada macromolcula de GAL 22V10 tem dois modos de funcionamento primrios: Registrado e Ajustvel I/O. O modo e polaridade so colacdos po dosi bits (SO e S1), que so normalmente controlados por compilador lgico. Cada um destes dois modos e os bits colocados para capacit-los, so descritos no ANEXO 3-272.

XC 3020

Arquiteturas Programveis
Do ponto de vista da disposio dos Blocos Logicos as arquiteturas programveis podem ser classificadas em quatro tipos:

.Matriz Simtrica : Ex.:XILINX .Baseada em Canais: Ex.:ACTEL .Mar de Portas: Ex.: ORCA .PLD Hierrquica:. ALTERA

A Srie XC 3000 da Xilinx.

Do ponto de vista da disposio dos Blocos lgicos e do roteamento, a srie XC 3000 da Xilinx um exemplo de arquitetura baseada na topologia de Matriz Simtrica. Como podemos ver na figura abaixo, o circuito composto por uma matriz de Blocos lcos Lgicos. Estes esto circundados por linhas de roteamento que se ligam atravs das Switch Matriz. Para se conectar com o exterior do circuijto,Blocos de I/O esto dispostos em volta do circuito. Os Recursos de Roteamento so mostrados a seguir. A Figura ilustra como exemplo, a arquitetura da srie XC 3000.

Blocos Lgicos da Famlia XC 3000

A Figura a seguir ilustra um exemplo de Bloco Lgico da famlia XC 3000 Xilinix. Cada Bloco Lgico possui duas LUT (Look-UP Table), que implementam duas funes lgicas (F e G) de cinco entradas (A,B,C,D e E). As sadas X e Y podem ser configuradas de maneira que as funes lgicas F e G sejam ou no bulferizadas. Para isto cada Bloco Lgico possui dois flipflops.

Esta arquitetura de Bloco Lgico permite ainda uma realimentao interna dos sinais de F e G, aps sua passagem pelos flip-flops, atravs das entradas Qx e Qy da LUT. Finalmente, uma entrada direta (Direct Imput) provida de forme que os recursos sequenciais (o flip-flop) do Bloco Lgico possa ser usado diretamente sem passar pela LUT.

Recursos de Roteamento

A interconexo entre os blocos feita atravs de uma rede de duas camadas de metal. As conexes fsicas entre os fios so feitas ora com transistores de passagem controlados por bits de memria (PIP) ora com chaves de interconexo (Switch Matrix). Como pode servisto na figura, os recursos de roteamento da Srie XC 3000 da Xilinx possuem:
y y y y

Conexes Globais (General Purpose Interconnect) Matriz de Conexo (Switch Matrix) Linhas Longas (Long Lines) Conexes Diretas (Direct Connections)

Conexes Globais

Conexes Globais formam uma rede de Interconexes e colunas de cinco fios de metal cada que seligam atravs de chaves de interconexo (Switch Matrix). Esta rede circunda os blocos lgicos (CLBs) e os blocos de E/S (IOBs).

Switch Matrix

Switch Matrix so chaves de interconexo que permitem o roteamento entre os Blocos Lgicos atravs das Conexes Globais. Estas conexes sos programveis na fase de roteamento automtico executada pelo software de

projeto do fabricante (PPR) ou manualmente com a uso de um a ferramenta de software, Edinet. A figura em seguida mostra as possveis interconexes feitas por uma Switch Matrix.

Conexes Diretas (Direct Interconnect)

So conexes entre CLBs vizinhas e permitem conectar blocos com o menor atraso, pois no utilizam os recursos globais de roteamento. Para cada CLB a sua sada X pode ser diretamente conectada entrada B da CLB a sua direita e entrada C da CLB a sua esquerda. Da mesma forma, cada sada Y de uma CLB pode ser diretamente conectada entrada D da CLB imediatamente acima e entrada A da CLB imediatamente abaixo. Nos extremos do circuito as CLBs que esto ao lado dos IOBs permitem ligaes alternativamente entre CLBs e entradas e sadas do circuito.

Linhas Longas (Long Lines)

So conexes que atravessam todo o circuito sem passar pelas Switch Matrix e so usadas para conectar sinais longos e com restries de skew entre mltiplos destinos. Cada coluna de roteamento possui 3 linhas longas e cada linha de roteamento possui 2 linhas longas. s linhas longas horizontais esto conectadas buffers tri-state que permitem a implementao de Barramentos ou de portas AND com mltiplas entrada (Wired-And) ou grandes Multiplexadores como pode ser visto na figura a seguir:

Blocos de I/O da Srie XC 3000

A figura seguir mostra um bloco de E/S da srie XC 3000. Os blocos de E/S possuem um buffer tri-state e um flip-flop para os sinais de sada. O sinal de

sada pode ser invertido por programa assim como o sinal de controle do 3 state. A sada pode ou no passar pelo flip-flop. A entrada pode ser buferizada em um latch ou flip -flop (sinal REGISTERED IN) assim como pode entrar diretamente no circuito (sinal DIRECT IN).
Duas linhas de Clock (CK1 e CK2) esto disponveis e o seu uso feito a travs de programao.

TABELA CARACTERSTICA DA SRIE XC 3000

Modelo

Max Logic Gates 1,500 2,000 3,000 4,500 6,000 7,500

Typical Gate Range 1,000 - 1,500 1,500 - 2,000 2,000 - 3,000 3,500 - 4,500 5,000 - 6,000 6,500 - 7,500

CLBs

Array

User I/Os Max 64 80 96 120 144 176

Flip-Flops

Horizontal Longlines 16 20 24 32 40 44

Configuration Data Bits 14,779 22,176 30,784 46,064 64,160 94,984

XC 3020,3020L,3120A XC3030,3030L,3130A XC3042A,3042L,3142A, XC3064A,3064L,3164A XC3090A,3090L,3190L XC3195A

64 100 44 24 20 84

8x8 10 x10 12 x 12 16 x 14 16 x 20 22 x 22

256 360 480 688 928 1,320

Você também pode gostar