Generic Array Logic
![](http://upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Nota_disambigua.svg/18px-Nota_disambigua.svg.png)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/d/d6/Lattice_GAL_16V8.jpg/150px-Lattice_GAL_16V8.jpg)
La Generic Array Logic (in acronimo GAL), nell'elettronica digitale, è una famiglia di dispositivi logici programmabili (PLD) usati per implementare circuiti logici combinatori. A causa della loro stretta similarità vengono talvolta accomunati ai dispositivi PAL (Programmable Array Logic).[1]
Il primo dispositivo PAL venne commercializzato nel 1978 dall'azienda Monolithic Memories come concorrente dei dispositivi PLA, apparsi pochi anni prima. In seguito la produzione venne ceduta ad aziende terze come National Semiconductor, AMD e Texas Instruments.[1]
Negli anni '80 la Lattice Semiconductor sviluppò una propria famiglia di PLD, innovando sulla ormai popolare tecnologia PAL. Il risultato furono i dispositivi GAL.[2]
Architettura
![](http://upload.wikimedia.org/wikipedia/commons/thumb/f/f0/Programmable_Logic_Device.svg/288px-Programmable_Logic_Device.svg.png)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/c/c9/AMD_22V10_Macrocell.jpg/288px-AMD_22V10_Macrocell.jpg)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/5/5a/22V10_Block_Diagram.jpg/110px-22V10_Block_Diagram.jpg)
La struttura di una GAL è derivata da quella delle PLA, più precisamente si tratta di PAL con l'aggiunta di dispositivi programmabili in uscita detti OLMC (Output Logic MacroCell).[2]
Una GAL è costituita da un piano logico programmabile, che consiste in una matrice di porte AND, programmabili tramite celle di memoria PROM, collegata ad una serie di OR non programmabile. Le porte OR consentono quindi di guidare gli ingressi alle macrocelle, che costituiscono la logica di output del dispositivo. Ogni uscita può avere fino ad otto porte AND, delle quali una è destinata alla gestione di un buffer bidirezionale di uscita. La tipologia di OLMC dei primi dispositivi, caratterizzati da 10 entrate ed 8 uscite, era fissata dal costruttore.
La rigidità dell'apparato di output portò la AMD, nel giugno del 1983, ad introdurre il dispositivo 22V10, dotato di 24 pin e 10 macrocelle in uscita,[3] ognuna delle quali può essere configurata dall'utilizzatore. Tale dispositivo rimpiazzò quasi tutti i PAL esistenti allora.
Note
- ^ a b Ettore Napoli, Progetto di circuiti digitali e implementazione su FPGA, Bologna, Società Editrice Esculapio, 2023, pp. 15-16, ISBN 978-88-9385-350-7.
- ^ a b Geraci, pag. 102.
- ^ AmPAL 22V10 Advanced Information, Sunnyvale CA, Advanced Micro Devices, giugno 1983, 04126A-PLP. Note: This is the data sheet published by AMD when the AmPAL 22V10 was introduced.
Bibliografia
- Angelo Geraci, Principi di elettronica dei sistemi digitali, Milano, McGraw-Hill Milano, 2003, ISBN 88-386-6107-3.
Voci correlate
- Programmable logic array
- Programmable Logic Device
- CPLD
- FPGA
Altri progetti
Altri progetti
- Wikimedia Commons
Wikimedia Commons contiene immagini o altri file sulla Generic Array Logic
Collegamenti esterni
- (EN) Denis Howe, Generic Array Logic, in Free On-line Dictionary of Computing. Disponibile con licenza GFDL
V · D · M | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Concetti | ASIC · SoC · FPGA (CLB) · CPLD · EPLD · PLA · PAL · GAL · PSoC · Reconfigurable Computing (Xputer) · Soft microprocessor · Circuit underutilization · High-level synthesis · Acceleratore | ||||||||||
Tecniche di programmazione | Gate array · Antifusibile · EPROM · E²PROM · Flash · SRAM | ||||||||||
Linguaggi | Verilog (A, AMS) · VHDL (AMS, VITAL) · SystemVerilog (DPI) · SystemC · AHDL · Handel-C · PSL · UPF · PALASM · ABEL · CUPL · OpenVera · C to HDL · Flow to HDL · MyHDL · ELLA · Chisel | ||||||||||
Costruttori | Accellera · Achronix · AMD (Xilinx) · Aldec · Arm · Cadence · Infineon · Intel · Lattice · Microchip Technology · NXP · Siemens (Mentor Graphics) · Synopsys · Texas Instruments | ||||||||||
Prodotti |
|
![](http://upload.wikimedia.org/wikipedia/commons/thumb/8/8d/Nuvola_apps_ksim.png/25px-Nuvola_apps_ksim.png)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/7/77/Computer_n_screen.svg/24px-Computer_n_screen.svg.png)