Układy programowalne. Dwie podstawowe rodziny układów programowalnych to układy (ang. programmable array logie) oraz układy (ang. programmable logie arrays) oraz najnowszej generacji układy typu (Complex Programmable Logical Derice). (Field Programmable Gate Array) oraz
(Configurable System on a Chip). Są to układy scalone zawierające mnóstw o bramek o programow anych (takimi samymi metodami jak pamięci ROM) połączeniach między bramkami. Po zaprogramow aniu właściwych połączeń otrzymuje się układ realizujący założone funkcje logiczne. Układy programowalne są wykonywane zarówno techniką bipolarną, jak i techniką CMOS. przy czym dla układów bipolarnych stosuje się programowanie jednokrotne polegające na przepalaniu połączeń, natomiast do programowania układów CMOS wykorzystuje się właściwości tranzystorów MOS z pływającą bramką (połączenia mogą być kasowane promieniowaniem ultrafioletowym lub elektrycznie). Ze względu na ściśle zdefiniowaną strukturę danego układu scalonego nie jest możliw e zaprogramow anie dow olnej sieci połączeń. Na rysunku poniżej przedstaw iono koncepcje obu rodzin kombinacyjnych (bezrejestrowych) układów programowalnych (PAL i PLA).
Wszystkie bramki AND i OR. choć dla
*
uproszczenia rysowane z pojedynczą linią wejściową, sa w rzeczywistości bramkami wielowejściowymi i mają tyle osobnych w ejść, ile zaznaczono przecięć tej symbolicznej linii z innymi liniami. Każde (3-stanowe) wyjście kombinacyjnego układu PAL jest wyjściem bramki OR. której każde wejście jest dołączone na stałe do wyjścia wielowejściowej bramki AND.