Ohjelmoitavat logiikkaverkot

Slides:



Advertisements
Samankaltaiset esitykset
Tietokonetekniikka 4 Tieto ja tiedon talletus
Advertisements

@ Leena Lahtinen Helia Ohjelman perusrakenteet 1. PERÄKKÄISRAKENNE 2. VALINTARAKENNE 3. TOISTORAKENNE.
WLAN Tekijät: Petri Koskinen Miika Kulla Veli-Pekka Koskinen.
Tietokonetekniikka 3 Tietokoneen Rakenteen ja toiminnan perusteet
1 Heli Lepomäki Yritysten ja muiden organisaatioiden käyttöön sähköinen työpöytä on jo leviämässä, koska niiden toiminta ja asiakaspalvelu.
Ohjelman perusrakenteet
Digitaalilaiteteknologia ja sovellukset
Lähiverkot erikoistyökurssi
Seminaari Lähiverkot -erikoistyökurssi
Synkroniset tilakoneet
Lausekkeiden sieventäminen
Redundant Array of Inexpensive Disks (RAID) Matti Hämäläinen.
CD-ROM-asema mikrossa
Kuinka rakentaa tietokone itse
E-kirjojen lukulaitteet ja sähköiset aineistot
e-kirjat Ota haltuun Web- kirjasto lukuohjelmat lainaaminen lukeminen
Ohjelmistokehittäminen. Luku 1 – Mitä on ohjelmistokehittäminen?
Jukka Inget ja Olli Hellgren
SoPC-oppimis- ja suunnitteluympäristö Pekka Rantala
NAND I-SOP NOR KOMBINAATIOPIIRIT & 1 & A B A B
1. Olio-ohjelmointi.
C-ohjelmointi, kevät 2006 Taulukot Binääritiedostot Luento
Laskuharjoitus 9 AS Automaation signaalinkäsittelymenetelmät Sumea säätö Geneettiset algoritmit.
AS Automaation signaalinkäsittelymenetelmät
TIETOKONEOHJELMAN RAKENNE OHJELMALLA ON KAKSI OSAA  MÄÄRITYSOSA TIETOJEN KUVAUKSIA VARTEN  SUORITUSOSA TIETOJEN KÄSITTELYÄ VARTEN.
@ Leena Lahtinen Helia OHJELMOINTITAITO ICT02D 12 OP.
OHJELMOINTITAITO ICT02D 12 ECTS. OPINTOJAKSON TOTEUTUS  KESTO: –  PÄIVÄOPISKELIJAT: – KAKSI LUOKAA (SUOMI) –YKSI LUOKKA (ENGLANTI)
TIES530 - Sulautettujen järjestelmien arkkitehtuurit
Hello World Tutoriaali Tavoitteet – Ympäristön testaus – Qsys aliohjelmaan perehtyminen – Monitor ohjelmaan perehtyminen – HW/SW co-design:n aloitus.
(Joskus puhutaan myös komponenttitestauksesta.) Pienin kokonaisuus, joka on järkevä testata erikseen. ● Perinteisesti yksittäinen aliohjelma. ● Olio-ohjelmien.
Kombinaatiopiirielimet
E-Commerce 2010: Business, Technology, Society 6e
Ohjelman perusrakenteet
Oliosuunnittelu.
m0 M7 Maksimitermi Minimitermi Boole A = A A · 0 = 0 SOP De Morgan POS
TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op
Synkronisen sekvenssipiirin suunnittelu ja toteutus
Johdatus ohjelmointiin Ohjelmistosuunnittelu Jaana Holvikivi.
TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op ALU.
Digitaalitekniikan matematiikkaTäsmätehtävät Fe Luku 1 ?1?1 Sivu 1Luku 1Sivu 2Opetuskerta 1 ?2?2 ?3?3 ?4?4.
Käyttöönottokaavio – Deployment diagram Sami Stenius.
TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op
OHJELMOINTITAITO ICT02D 12 ECTS. OPINTOJAKSON TOTEUTUS  KESTO: –  AVOIMEN OPISKELIJAT: – YKSI LUOKA (SUOMI) – LUOKKA ICT02O-1.
Kytkentäfunktiot ja perusporttipiirit
Kokoaminen ja liittäminen tietokoneeseen.
ELEP-1311 DIGITAALITEKNIIKKA 3 op
Kontrollirakenteet laajemmin
TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op
Projektityö: Vahvistimet
Yleinen systeemiteoria General Systems Theory Johdatus tietojärjestelmätieteeseen KL2001 Teema numero 1.
Javascript 2: Ohjelmointikielen ominaisuudet Jaana Holvikivi Metropolia.
Käyttöönottokaavio– Deployment diagram Vesa Jokikokko Tarmo Kemi TIK9SNA.
Sulautettujen järjestelmien varhainen kehitys
Rekisterit ja laskurit
Digitaalitekniikka (piirit)Täsmätehtävät Fe/AKo Luku 1 ?1?1 Sivu 4Luku 1Sivu 1Opetuskerta 1 ?2?2.
Porin Yksikkö/Tanja Palmroth ELEP-1250 ELEKTRONIIKAN PERUSKURSSI II 4 op Syksy 2010 Aloitusluento
BIOS!. Tulee sanoista Basic input output system Valmistajan tehtaalla valmistettu ohjelma emolevyn flash-piirillä (ennen 1995 ROM-piirillä) Laitteiston.
DVI.
Loogiset piirit Puolijohteet Puolijohdekomponentit Loogiset piirit.
VLAN Kimmo Tukiainen
Miika Kuusinen LTY/Tietoliikenteen laitos 2003
Digitaalitekniikka (piirit)Luku 3 Sivu 1 (51) Synkronisten sekvenssipiirien suunnittelu Fe Synkronisten sekvenssipiirien suunnittelu.
RASPBERRY PI Yhden piirilevyn tietokone.. SISÄLLYS  Yleistä tietoa  Teknistä höpinää  Käyttöjärjestelmät  Pelaaminen Raspberryllä  Yhteenveto  Kysymykset.
Tietokoneen osat. Prosessori  Osa joka suorittaa tietokoneen sisältämiä konekielisiä käskyjä  Intel ja AMD ovat ainoat yhtiöt jotka tekevät prosessoreja.
3. Luokat, oliot ja metodit Java-kielessä (Lausekielinen ohjelmointi I ja II –kursseilla opitun kertausta.)
ATmega128 Tekijät: Aleksi Hemmilä C5418 Tommi Pihlainen C5375
Sulautetut järjestelmät
Tervetuloa jatkamaan DIGITAALI- TEKNIIKAN opiskelua!
Salvat ja kiikut 1D C1 1D C1 S 1D C1 R 1T C1 1J C1 1K 1J S C1 R 1K
OHJELMOINTITAITO ICT02D 12 ECTS.
Esityksen transkriptio:

Ohjelmoitavat logiikkaverkot HTOL Digitaalitekniikan perusteet Luku 16 Sivu 1 (22) 1998-1999 Luentokalvoseloste 12.6.1998 Fe Ohjelmoitavat logiikkaverkot Ohjelmoitavat logiikkaverkot Programmable logic PLD-piirit Programmable logic devices FPGA-piirit Field-programmable gate arrays Järjestelmäpiirit SoPC, System on a programmable chip SPLD-piirit Simple PLD's CPLD-piirit Complex PLD's SoPC PLD FPGA

Johdanto Tässä luvussa esitetään ohjelmoitavien logiikkaverkkojen ryhmittely ja päätyypit PLD, FPGA ja SoPC tutustutaan PLD- ja FPGA-verkkoihin esitetään verkkojen yleiset rakenteet ja arkkitehtuurit esitetään verkkojen osien rakenteita esitetään eri tyyppisten verkkojen ohjelmointi esitetään esimerkkejä kombinaatiopiirien ja synkronisten sekvenssipiirien toteuttamisesta eri tyyppisillä verkoilla esitetään ohjelmoitavien logiikkaverkkojen suunnitteluprosessi Luvun tavoitteena on antaa yleiskäsitys ohjelmoitavista logiikkaverkoista tutustuttaa eri tyyppisiin ohjelmoitaviin logiikkaverkkoihin ja niiden keskeisiin ominaisuuksiin ja eroihin

Digitaalisten mikropiirityyppien ryhmittely Digitaaliset mikropiirit Digital integrated circuits Vakiopiirit Standard circuits Ohjelmoitavat logiikkaverkot Programmable logic Asiakaspiirit Application specific IC's, ASIC's piirivalmistaja suunnittelee piirivalmistaja valmistaa toiminta kiinteä vapaasti saatavilla piirivalmistaja suunnittelee piirivalmistaja valmistaa toiminta ohjelmoidaan vapaasti saatavilla laitevalmistaja suunnittelee piirivalmistaja valmistaa toiminta kiinteä vain laitevalmistajan saatavilla

Yleistä ohjelmoitavista logiikkaverkoista Ostettaessa vakiopiiri suuri määrä piirielementtejä ja johtimia piirielementtien toiminta osittain määrittelemättä piirielementtien väliset kytkennät pääosin tekemättä Käyttäjä ohjelmoi tietokoneella toiminnan ja kytkennät ohjelmoinnin jälkeen piiri on asiakaspiiri Käyttömäärä on kasvanut ja kasvaa edelleen Käytön antamia etuja pieni koko ja toiminnan luotettavuus tuotekehitysprosessin nopeus toteutuksen joustavuus Käyttöön vaikuttavia heikkouksia suuri tehonkulutus osalla piireistä eräissä tapauksissa hinta

Ohjelmoitavien logiikkaverkkojen ryhmittely Ohjelmoitavat logiikkaverkot Programmable logic PLD-piirit Programmable logic devices Järjestelmäpiirit SoPC, System on a programmable chip SPLD-piirit Simple PLD's FPGA-piirit Field-programmable gate arrays CPLD-piirit Complex PLD's Uudet piirit pääosin FPGA- ja järjestelmäpiirejä Mutkikkuus ja kapasiteetti kasvavat

Ohjelmoitavien logiikkaverkkojen päätyypit HTOL Digitaalitekniikan perusteet Luku 16 Sivu 6 (22) 1998-1999 Luentokalvoseloste 12.6.1998 Fe Ohjelmoitavien logiikkaverkkojen päätyypit PLD PLD (Programmable Logic Device) ohjelmaltaan kiinteä eli haihtumaton: ohjelma säilyy, vaikka käyttöjännite poistetaan vanhin ohjelmoitavien logiikkaverkkojen päätyyppi osa kertaohjelmoitavia, osa uudelleenohjelmoitavia pieniä (SPLD) tai keskisuuria (CPLD), luokkaa 10 000 porttia FPGA (Field Programmable Gate Array) pääosa on ohjelmaltaan haihtuvia eli ohjelma häviää, kun käyttöjännite poistetaan ohjelmoidaan uudelleen aina, kun piiriin kytketään sähkö osa ohjelmaltaan haihtumattomia eli ohjelma säilyy keskisuuria tai suuria, jopa miljoonia portteja Ohjelmoitavat järjestelmäpiirit (SoPC) suuria ja mutkikkaita piirejä suuri FPGA-osuus prosessori, muistia, erityislohkoja kokonainen järjestelmä yhdessä piirissä FPGA SoPC

SPLD-piirin perusrakenne ? 1 Muodostaa SOP-lausekkeen Ohjelmoitavat liitännät Kytkentä- matriisi Inter- connect array Liitäntä- lohko I/O block Liitäntöjen sallintasignaalit Tulo- liitännät Makrosolu 1 Macrocell 1 I/O1 Makrosolu 2 IN1 I/O2 IN2 Makrosolu 3 I/O3 ... INm ... ... Makrosolu n I/On Liitäntäsignaalit I/O1 - I/On

CPLD-piirin perusrakenne Muodostavat n kpl SOP- tai I-SOP-lausekkeita CPLD-piirin perusrakenne Ohjelmoitavat liitännät ? 2 Kytkentä- matriisi Liitäntöjen A sallintasignaalit Liitäntä- lohko A Makrosolulohko A Makrosolut A1-Am I/OA1 Tulo- liitännät ... Makrosolulohko A Makrosolut Am+1-An I/OAm Upotetut (embedded) makrosolut IN1 Liitäntäsignaalit I/OA1 - I/OAm IN2 ... ... ... Liitäntöjen K sallintasignaalit Liitäntä- lohko K INp Makrosolulohko K Makrosolut K1-Km I/OK1 CPLD ... Makrosolulohko K Makrosolut Km+1-Kn I/OKm Liitäntäsignaalit I/OK1 - I/OKm

PLD-piirien makrosolurakenteet PAL SPLD-arkkitehtuurit kombinaatio-osa muodostaa SOP-lausekkeita muodostetaan tulotermejä JA-porteilla ja lausekkeet niistä TAI-porteilla PAL (Programmable Array Logic), nykyisin vahvasti yleisin JA-porttien kytkentä TAI-portteihin on kiinteä PLA (Programmable Logic Array), nykyisin harvinainen JA-porttien kytkentä TAI-portteihin on ohjelmoitava seuraavassa keskitytään PAL-piireihin CPLD-piirien perusarkkitehtuuri on PAL-tyyppinen, mutta niissä on yleensä makrosolujen käyttöä tehostavia lisäominaisuuksia suorat liitännät makrosoluista kytkentämatriisiin osa makrosoluista on upotettuja: ei yhteyttä liitäntälohkoon kombinaatio-osassa SOP- ja I-SOP-lausekkeita sekä XOR-logiikkaa siirrettävät JA-portit: lainattavissa naapurimakrosolun käyttöön jaettavat JA-EI-portit: sama invertoitu tulotermi useaan makrosoluun PLA

Ohjelmoituja kytkentöjä PAL-arkkitehtuuri Makro- 1 & IN1 1 Puskuri-invertteripiirit Kytkentämatriisi ohjelmoitavat kytkennät liitäntäsignaalit kytketään JA-porttien tuloihin Makrosolujen JA-TAI-verkot JA-portit yhtä monta tuloa kuin liitäntä- signaaleja muodostavat halutut tulotermit tietty määrä, esim. 5 tai 8 TAI-portit muodostavat SOP-lausekkeet vakiomäärä tuloja & 1 IN2 & Ohjelmoituja kytkentöjä solujen JA-TAI- & Kyt- ken- tä- mat- riisi 1 ? 3 & & verkot PAL 1 I/O1 1 I/O2

Ohjelmoituja kytkentöjä PLA-arkkitehtuuri 1 & IN1 1 Puskuri-invertteripiirit Kytkentämatriisit 1 ja 2 ohjelmoitavat kytkennät liitäntäsignaalit kytketään JA-porttien tuloihin Yhteiset JA-portit yhtä monta tuloa kuin liitäntäsignaaleja muodostavat halutut tulotermit tulotermit yhteisiä Makrosolujen TAI-portit muodostavat SOP- lausekkeet yhtä monta tuloa kuin JA-portteja & 1 IN2 & Makro- solujen TAI- & Ohjelmoituja kytkentöjä 1 & ? 4 Kyt- ken- tä- mat- riisi 1 & portit Kytkentä- matriisi 2 JA- verkko 1 PLA I/O1 1 I/O2

PAL-tyyppisen CPLD-piirin tyypillinen makrosolu HTOL Digitaalitekniikan perusteet Luku 16 Sivu 12 (22) 1998-1999 Luentokalvoseloste 12.6.1998 Fe PAL-tyyppisen CPLD-piirin tyypillinen makrosolu GR Kellosign. valinta Nollaussign. valinta Koko piirille yhteiset signaalit Makrosolun sisäiset signaalit GCLK ? 5 & SOP/ I-SOP-/ XOR-valinta Ohjelmoitava valinta 1 Komb./sekv. -valinta & =1 1D/1T Liitäntä- lohkoon Kytkentä- matriisista & C1 1 R & & ACLK & LR Seuraavaan makrosoluun Kytkentämatriisiin

CPLD-piirin tyypillinen liitäntälohko Koko piirille yhteinen sallintasignaali Liitäntäkohtaiset sallintasignaalit Ohjelmointi tuloksi, lähdöksi tai kaksisuuntaiseksi liitännäksi EN GOE Kytkentä- matriisiin Ohjelmoitava valinta & I/O1 I/O2 1 OE1 OE2 ? 6 Kytkentä- matriisista Makro- soluista IOB

PLD-piirien ohjelmointitavat PLD-piirit Programmable logic devices Kertaohjelmoitavat One-time programmable Uudelleen ohjelmoitavat Reprogrammable OTPROM- perusteiset EPROM- perusteiset EEPROM- perusteiset Flash- perusteiset Erikseen ohjelmoitavat Programmer programmable Järjestelmäohjelmoitavat In-system programmable Nykyään pääosin käytössä

Kombinaatiopiirin toteutus PAL-piirillä 1 Ohjelmoitu tuloksi A B C F = A·B + B·C + A·B·C Kaikki tulot kuvataan yhdellä signaaliviivalla F G G = B·C + A·B·C Kaikki funktiot voidaan toteuttaa suoraan SOP- lausekkeina H + A·B·C H = A·B·C + A·B·C

Kombinaatiopiirin toteutus PAL-piirillä 2 Ohjelmoitu tuloksi A B C F = A·B + A·C + B·C + A·B·C ? 7 F  F voidaan toteuttaa I-SOP-muodossa = A·B·C + A·B·C + A·B·C G K G voidaan toteuttaa apufunktiolla K: K = A·B·C + A·B·C G = A·B·C + A·B·C + K A·B·C + A·B·C + G = A·B·C +

Synkronisen sekvenssipiirin toteutus PAL-piirillä Tulosignaali P Kaksi tilasignaalia, Q0 ja Q1 Lähtösignaali L Ohjelmoitu tuloksi CLK RES P Q0 Q1 L (I-SOP) D0 = Q0 + Q1 = Q0·Q1 (SOP) D1 = Q0·Q1 + P·Q1 (I-SOP) L = Q0 + Q1 + P = Q0·Q1·P

FPGA-piirin perusrakenne Ohjelmoitavat logiikka- lohkot eli CLB:t (Configurable Logic Block) toiminnan toteutus karkeajakoiset FPGA:t (yleinen, seuraavassa kuvataan vain näitä) koostuvat viipaleista (slice), esim. neljä viipaletta/CLB hienojakoiset FPGA:t Liitäntälohkot eli IOB:t (Input/Output Block) piirin ulkoiset liitännät Kytkentämatriisi lohkojen väliset kytkennät Ohjelmoitava logiikkalohko Kytkentä- matriisi Liitäntälohko

CLB:n viipaleen rakenne-esimerkki Ohjelmoitava osa Tulovalitsin Muisti- piiri FPGA

FPGA Hakutaulun toiminta MUX Voidaan kuvata ohjelmoitavalla kiintomuistilla muistisoluilla ja tulovalitsimella Tulovalitsinkuvaus muuttujat valintatuloihin muistisolujen sisältö datatuloihin Muistisolujen sisältö saadaan suoraan funktion totuustaulusta A1 A2 15 Muuttujat G A3 A4 3 0/1 0/1 1 0/1 2 0/1 3 0/1 4 0/1 5 0/1 6 Ohjelmoitavat muistisolut 0/1 7 F FPGA 0/1 8 0/1 9 0/1 10 0/1 11 0/1 12 0/1 13 0/1 14 0/1 15

Liitäntälohkon rakenne Ohjelmoitava tulovalitsin EN FPGA S S Tulo/lähtö- valintapiirit ED 2D ECLK 1C2 ECEN G1 R R EN I/O S OD 2D Lähtösignaali- piirit OCLK 1C2 OCEN G1 R I IQ S Tulosignaali- piirit 2D ICLK 1C2 ICEN G1 R

Kytkentämatriisin rakenne FPGA Johtimet kulkevat lohkojen (CLB ja IOB) välissä Johdinten kytkennät ohjelmoidaan Eri tyyppisiä johtimia kellosignaalijohdinverkko useita ulkoisia kelloliitäntöjä voidaan kytkeä mihin hyvänsä piirin kiikkuun pitkät johtimet piirin reunasta reunaan tai yhteydessä vain osaan lohkoista lyhyet johtimet usein monia eri tyyppejä lähekkäin olevien lohkojen yhdistämiseen suorat johtimet vierekkäisten ja kulmittaisten lohkojen yhdistämiseen

FPGA-piirien ohjelmointitavat FPGA-piirit Field-programmable gate arrays Valtateknologia nykyään Kertaohjelmoitavat One-time programmable Uudelleen ohjelmoitavat Reprogrammable Haihtumaton ohjelma Hienojakoiset logiikkalohkot Haihtuva ohjelma Karkeajakoiset logiikkalohkot Johdakeperusteiset Antifuse Flash- perusteiset SRAM- perusteiset

Uudelleen ohjelmoitavien piirien ohjelmointi FPGA Piirit ovat järjestelmäohjelmoitavia Asennetaan piirilevylle ohjelmoimattomina Flash-perusteiset ohjelmoidaan kuten PLD-piirit SRAM-perusteiset ohjelmoidaan aina, kun laitteeseen kytketään sähkö 1) ohjelma on laitteessa erillisessä kiintomuistissa sarjaliitäntä FPGA-piiriin ohjelma siirtyy automaattisesti FPGA-piiriin, kun sähkö kytketään 2) laitteessa oleva prosessori lataa ohjelman FPGA-piiriin ohjelma on samassa kiintomuistissa kuin prosessorin oma ohjelma eräissä piireissä prosessori voi lukea ohjelman FPGA-piiristä ohjelman oikeellisuuden varmistus 3) ohjelma ladataan ulkopuolelta JTAG-ohjelmointiliitännän kautta suurissa järjestelmissä keskitetty ohjelman jakelu suunnittelun, testauksen ja huollon yhteydessä

Kytkentäfunktion toteuttaminen FPGA-piirissä 1 Suoraan totuustaulun perusteella Yksi tai useita hakutauluja/funktio Esimerkeissä yksinkertaisuuden vuoksi kahden muuttujan hakutaulu Kahden muuttujan funktio: FPGA ? 8 MUX B A G 3 1 F 2 A B F 1 F = A·B + A·B

Kytkentäfunktion toteuttaminen FPGA-piirissä 2 Laajennus CLB:n viipaleen tulovalitsimella Kolmen muuttujan funktio: MUX C B G 3 1 G1 A 2 G = A·B + B·C + A·B·C A B C G 1 ? 9 Valittu, kun A = 0 A = 0 1 Valittu, kun A = 1 A = 1 1

Ohjelmoitavat järjestelmäpiirit Yhdellä piirillä toteutetaan laitteen koko digitaaliosa Perustuvat FPGA-teknologiaan Piiri sisältää suuren FPGA-osan lisäksi piiriperhekohtaisesti vaihdellen vaihtomuistia: useita erillisiä muistilohkoja eri tarkoituksiin signaalinkäsittelylohkoja tehokas prosessori tai useita prosessoreja kiinteä prosessori tai piiriin ohjelmoitava(t) prosessori(t) kellosignaalin käsittelylohkoja Kapasiteetiltaan keskisuuria tai suuria esimerkiksi Xilinxin Virtex 7 -perheen suurin piiri XC7V2000T (tulossa) 305 400 ohjelmoitavan logiikkalohkon viipaletta (CLB slice) 46 512 Kib erillistä muistia 2160 signaalinkäsittelylohkoa enimmillään 1216 liitäntänastaa signaaleille SoPC

Ohjelmoitavien logiikkaverkkojen suunnitteluprosessi Suunnittelu (Design) Suunnittelun varmistus Design verification Määrittely Specification Piirisuunnittelu Design entry Toiminnallinen simulointi Functional simulation Synteesi Synthesis Toteutus Implementation Ajoitussimulointi Timing simulation Ohjelmointi Programming Testaus Testing

Ohjelmoitavien logiikkaverkkojen suunnitteluvälineet Suunnitteluohjelmistot riippumattomien ohjelmistotoimittajien ohjelmistot soveltuvat kaikkien tai ainakin useiden piirivalmistajien piireille esim. Mentor Graphicsin FPGA Advantage piirivalmistajien ohjelmistot soveltuvat vain kyseisen piirivalmistajan piireille saatavilla ilmaisversioita, joissa on rajoitetut toiminnot esim. Alteran Quartus II ja Xilinxin ISE Ohjelmointilaitteet ja -kaapelit piirien ohjelmointiin erikseen tai paikalleen asennettuina Kokeilulevyt piirilevyt, joille on asennettu logiikkaverkko logiikkaverkon lisäksi muita piirejä, ohjelmointiliitäntä ja muita liitäntöjä kytkimiä, ledinäyttöjä ja liittimiä tulo- ja lähtösignaaleille Ohjelmointiliitäntä USB-liitäntä

Yhteenveto Ohjelmoitava logiikkaverkko ostetaan tyhjänä ja ohjelmoidaan Ohjelmoitavien logiikkaverkkojen päätyypit ovat PLD, FPGA ja SoPC PLD-piirit ovat joko pieniä SPLD-piirejä tai keskisuuria CPLD-piirejä PLD-piirien perusarkkitehtuurit ovat PAL (yleisin) ja PLA PLD-piireissä on kytkentämatriisi, makrosoluja ja liitäntälohkoja PLD-piirit ohjelmoidaan joko ohjelmointilaitteessa tai piirilevyllä Makrosoluissa muodostetaan SOP- ja I-SOP-muotoisia lausekkeita PLD-piireillä voidaan toteuttaa kombinaatiopiirejä ja sekvenssipiirejä FPGA-piirit ovat kooltaan keskisuuria tai suuria FPGA-piirit ovat joko hienojakoisia tai karkeajakoisia FPGA-piirit koostuvat CLB- ja IOB-lohkoista ja kytkentämatriisista FPGA-piirit ovat joko kertaohjelmoitavia tai uudelleenohjelmoitavia Kombinaatiopiiri toteutetaan FPGA-piireissä hakutauluilla Ohjelmoitavalla järjestelmäpiirillä voidaan toteuttaa koko digitaalilaite Suunnitteluprosessi koostuu itse suunnittelusta ja sen varmistuksesta