1. 6
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
1
LÒGICA PROGRAMABLE
6.1 PLD
6.2 CPLD
6.3 Memòries RAM
Dr. Joaquim Salvi, Dr. Arnau Oliver
Escola Politècnica Superior
Universitat de Girona
2. 2
LÒGICA PROGRAMABLE
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Introducció
Qualsevol sistema el podem implementar:
• Software: Flexibilitat
• Hardware: Rapidesa
Tenim la necessitat d’aconseguir hardware més flexible
• Programació / Reprogramació
• Correcció d’errors (Assaig i error)
• Reaprofitament de dispositius
La solució és utilitzar PLDs (Programmable Logic Devices)
3. 3
LÒGICA PROGRAMABLE
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
6.1 PLD
Classificació:
• SPLD (Simple PLD)
• MROM – Mask Read Only Memory
• PROM – Programmable ROM
• EPROM – Erasable PROM
• EEPROM – Electrically Erasable PROM
• PLA – Programmable Logic Array
• PAL – Programmable Array Logic (cas particular de PLA)
• GAL – Gate Array Logic
• ...
• CPLD (Complex PLD)
• FPGA – Field Programmable Gate Array (basades en SRAM)
7. 7
LÒGICA PROGRAMABLE
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
SPLD - ROM
ROM – Read Only Memory (Memòria de només lectura)
• n línies d’adreces
• 2n cel·les de memòria
• m bits per cada cel·la
Sistema combinacional de
m funcions d’n entrades i 1 sortida
9. 9
LÒGICA PROGRAMABLE
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
SPLD – MASK ROM
Es la tecnologia més antiga
El fabricant necessita crear unes màscares (la mateixa idea que
els negatius en fotografia)
• Car de fabricar
• Surt a compte per fabricar un gran nombre de dispositius idèntics
Tecnologia interessant per produir dispositius que perduren
duran molt temps sense necessitat de modificar-los.
Aquests dispositius no es poden reprogramar i s’han de llençar
quan es vol actualitzar.
L’actualització requereix generar noves màscares.
10. 10
LÒGICA PROGRAMABLE
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
SPLD – PROM
Programmable Read Only Memory
Són memòries ROM programables una única vegada.
Es poden programar fonent els fusibles (eliminant contactes) o
deixant-los intactes (mantenint el contacte).
Per a la programació s’utilitzen voltatges més alts que els
habituals durant el funcionament del dispositiu
Tenen una vida molt llarga.
L’usuari la pot programar amb un dispositiu especial.
12. 12
LÒGICA PROGRAMABLE
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
SPLD – PROM
Exemple: taula de veritat de 8 funcions (sortides) de 5 variables
(entrades)
13. 13
LÒGICA PROGRAMABLE
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
SPLD – PROM
Exemple: taula de veritat de 8 funcions (sortides) de 5 variables
(entrades)
14. 14
LÒGICA PROGRAMABLE
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
SPLD – EPROM
Erasable Programmable Read Only Memory (UV PROM)
Són memòries PROM reprogramables
Es poden esborrar si són exposades a llum ultravioleta.
L’esborrat és lent (aprox 10 minuts) i es sol fer amb tubs
fluorescents de raigs UV.
Molt més flexibles que les PROM
• Canvis de programes / dades
• Correcció d’errors
• Recuperació de dispositius mal gravats.
Pot mantenir les dades durant un temps limitat (10 anys)
L’usuari la pot programar amb un dispositiu especial.
15. 15
LÒGICA PROGRAMABLE
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
SPLD – EEPROM
Electrically Erasable Programmable Read Only Memory
Són memòries PROM reprogramables.
Poden ser esborrades parcialment/totalment aplicant un
voltatge elevat. El nombre de vegades que es pot esborrar és
limitat. El temps de programació és lent.
Es coneguda també com a FLASH ROM
• Càmeres digitals
• BIOS (Basic Input Output System) modernes dels PCs. Antigament
venien programades de fàbrica (Mask ROM), actualment són de
tecnologia E2PROM per a poder ser actualitzades.
• Flash Disc
17. 17
LÒGICA PROGRAMABLE
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
SPLD – PLA
Programmable Logic Array
Implementa funcions de n variables en forma de suma de
productes.
Cada terme pot tenir fins a 2·n entrades (n variables i els seus
complementaris)
Com a màxim es poden sumar fins 2n termes
Exemple:
n = 3 variables
2·n entrades (A, A’, B, B’, C, C’)
funció com a màxim pot tenir 8=23 termes
18. 18
LÒGICA PROGRAMABLE
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
SPLD – PLA
n entrades – array de portes AND amb 2·n entrades possibles
(variables i els seus complementaris), programables cada una.
m sortides – cada AND es pot connectar (programable) a cada
OR de l’array d’m ORs de sortida.
k ANDs – El nombre de portes AND (k) es molt inferior a 2n
termes diferents que poden aparèixer en una funció
21. 21
LÒGICA PROGRAMABLE
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
SPLD – PAL
Programmable Array Logic
Es un cas particular de la PLA on l’array d’ORs és fixa (no es pot
programar).
Pot implementar les mateixes funcions que una PLA escollint
correctament els paràmetres n, m i k.
23. 23
LÒGICA PROGRAMABLE
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
SPLD – PAL
Ex: PAL n = 4 (entrades), m = 2 (sortides), k = 4 (termes)
F1 = DC + D’C’ + BA’ + B’A
F2 = DA + CB’ + D’C’BA
La x indica que el fusible no
està fos (hi ha contacte)
24. 24
LÒGICA PROGRAMABLE
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
SPLD – GAL
Gate Array Logic
Bàsicament és una PAL molt més densa (amb més portes ANDs)
La matriu de portes AND es reprogramable (més d’un cop)
utilitzant tecnologia d’E2PROM
A la sortida de les OR hi ha cel·les programables que poden
implementar petits circuits combinacionals / seqüencials,
anomenats OLMC (Output Logic Macro Cell)
27. 27
LÒGICA PROGRAMABLE
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
SPLD – ROM vs PLA vs PAL
ROM (més genèric) -> PLA -> PAL (més específic)
ROM
- Per implementar funcions expressades en forma canònica
(minterns)
- Per funcions incompletes es molt ineficient, doncs hi ha molta
memòria que no s’utilitza.
PLA
- Permet reutilitzar minterns a diferents funcions de sortida.
PLA i PAL
- Permeten implementar funcions simplificades
- Limitació del nombre de termes dins de la suma
- Cal escollir la PAL/PLA amb la n, m i k per s’ajusti al problema.
28. 28
LÒGICA PROGRAMABLE
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
6.2 CPLD
Complex Programmable Logic Array
Conegudes també com a FPGA (Field Programmable Gate Array)
Basades en SRAM (Static Random Access Memory)
Es programen a través d’un computador o una EPROM emprant
un llenguatge de programació per descriure circuits lògics
anomenat VHDL (VHDL ve de Very High Speed Integrated Circuit
i Hardware Description Language).
El programa en VHDL es compila amb un computador que el
transforma a portes lògiques i programa la EPROM de la FPGA.
Poden implementar circuits de milions de portes lògiques i
poden tenir milers de pins d’entrada i de sortida.
29. 29
LÒGICA PROGRAMABLE
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
CPLD
Complex Programmable Logic Array
Fabricants de FPGA: Altera i Xilinx (80% del mercat), també
Lattice, Actel, SiliconBlue, ...
ex: Mux 2x1 amb VHDL
30. 30
LÒGICA PROGRAMABLE
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
6.3 RAM
Random Access Memory
Agrupació en cel·les bàsiques de 1 bit
S’accedeix a les cel·les de forma semblant a una ROM emprant
un decodificador
Tipus:
- SRAM (static RAM)
- Es la implementació d’un biestable, utilitza uns 6 transistors.
- Mantenen la dada mentre estan alimentades
- DRAM (dinamic RAM)
- Cal refrescar (regrabar la dada) cada cert temps sinó aquesta es perd
- Utilitza un únic transistor per bit.
- Es molt més densa, barata i consumeix menys.
33. 33
LÒGICA PROGRAMABLE
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Més informació:
Estructura i Tecnologia de Computadors, tema 6
https://www.documentauniversitaria.cat/botiga.php?a=llibre&id=809
www.unigrades.eu
Floyd, Thomas L. (2009). Digitals Fundamentals. Pearson
International. – Capítols 10 i 11