Järjestelmäpiirien toiminnallinen verifiointi : Verifiointimentelmät ja -tekniikat
Honkonen, Elisa (2026)
Honkonen, Elisa
2026
Tieto- ja sähkötekniikan kandidaattiohjelma - Bachelor's Programme in Computing and Electrical Engineering
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2026-09-16
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202609159789
https://urn.fi/URN:NBN:fi:tuni-202609159789
Tiivistelmä
Tässä työssä käsitellään toiminnallisessa verifioinnissa yleisesti käytettyjä verifiointimenetelmiä ja -tekniikoita. Työn tarkoituksena on luoda yleiskatsaus näiden menetelmien ja tekniikoiden toimintaperiaatteisiin. Työssä tarkastellaan erityisesti simulaatiopohjaista verifiointia sekä sen kanssa yleisesti hyödynnettävää UVM-metodologiaa (Universal Verification Methodology). Lisäksi työssä pyritään arvioimaan eri menetelmien ja tekniikoiden vahvuuksia ja rajoitteita.
Järjestelmäpiirien verifiointi on keskeinen osa järjestelmäpiirien suunnittelua. Tämä verifiointi koostuu useiden eri osa-alueiden verifioinnista, kuten tehon, suorituskyvyn, turvallisuuden ja toiminnallisuuden verifioinnista. Suurin osa verifiointiin kuluvasta ajasta kuluu toiminnalliseen verifiointiin. Toiminnallisessa verifioinnissa todennetaan järjestelmäsuunnittelun toiminnallisuuden vastaavan määriteltyä spesifikaatioita.
Yleisesti käytetyin lähestymistapa toiminnallisessa verifioinnissa on simulaatiopohjainen verifiointi. Siinä testauksen alainen suunnittelu (Design Under Test, DUT) liitetään testipenkkiin, joka välittää DUT:lle testisyötteitä. Näiden testisyötteiden avulla voidaan simuloida DUT:n toimintaa ja verrata sitä spesifikaatiossa määriteltyyn toiminnallisuuteen. Simulaatiopohjaisen verifioinnin kanssa yleisesti käytetty metodologia on UVM, joka tarjoaa standardoidun rakenteen uudelleenkäytettävien ja skaalautuvien verifiointiympäristöjen tuottamiseen.
Lisäksi simulaatiopohjaisen verifioinnin kanssa voidaan hyödyntää menetelmiä, kuten väitepohjaista verifiointia (Assertion Based Verification, ABV) sekä kattavuuslähtöistä verifiointia (Coverage-Driven Verification, CDV). ABV mahdollistaa järjestelmän toiminnallisuuksia ja ominaisuuksia kuvaavien väittämien määrittämisen. CDV:tä voidaan puolestaan hyödyntää verifioinnin kattavuuden mittaamiseen. Lisäksi testisyötteiden luomiseen voidaan hyödyntää menetelmiä, kuten ohjattua testausta ja rajattua satunnaistestausta (Constrained Random Verification, CRV). Simulaatiopohjaisen verifioinnin lisäksi toinen merkittävä lähestymistapa toiminnalliseen verifiointiin on formaali verifiointi, jossa järjestelmän toiminnallisuuden oikeellisuus voidaan todentaa matemaattisten menetelmien avulla.
Yleisesti verifiointi koostuu useiden eri menetelmien ja tekniikoiden hyödyntämisestä. Useat näistä menetelmistä on kehitetty eri käyttötarkoituksiin ja niitä voidaan käyttää rinnakkain toisiaan tukevina. Tämä mahdollistaa kattavan sekä tehokkaan verifioinnin toteuttamisen.
Järjestelmäpiirien verifiointi on keskeinen osa järjestelmäpiirien suunnittelua. Tämä verifiointi koostuu useiden eri osa-alueiden verifioinnista, kuten tehon, suorituskyvyn, turvallisuuden ja toiminnallisuuden verifioinnista. Suurin osa verifiointiin kuluvasta ajasta kuluu toiminnalliseen verifiointiin. Toiminnallisessa verifioinnissa todennetaan järjestelmäsuunnittelun toiminnallisuuden vastaavan määriteltyä spesifikaatioita.
Yleisesti käytetyin lähestymistapa toiminnallisessa verifioinnissa on simulaatiopohjainen verifiointi. Siinä testauksen alainen suunnittelu (Design Under Test, DUT) liitetään testipenkkiin, joka välittää DUT:lle testisyötteitä. Näiden testisyötteiden avulla voidaan simuloida DUT:n toimintaa ja verrata sitä spesifikaatiossa määriteltyyn toiminnallisuuteen. Simulaatiopohjaisen verifioinnin kanssa yleisesti käytetty metodologia on UVM, joka tarjoaa standardoidun rakenteen uudelleenkäytettävien ja skaalautuvien verifiointiympäristöjen tuottamiseen.
Lisäksi simulaatiopohjaisen verifioinnin kanssa voidaan hyödyntää menetelmiä, kuten väitepohjaista verifiointia (Assertion Based Verification, ABV) sekä kattavuuslähtöistä verifiointia (Coverage-Driven Verification, CDV). ABV mahdollistaa järjestelmän toiminnallisuuksia ja ominaisuuksia kuvaavien väittämien määrittämisen. CDV:tä voidaan puolestaan hyödyntää verifioinnin kattavuuden mittaamiseen. Lisäksi testisyötteiden luomiseen voidaan hyödyntää menetelmiä, kuten ohjattua testausta ja rajattua satunnaistestausta (Constrained Random Verification, CRV). Simulaatiopohjaisen verifioinnin lisäksi toinen merkittävä lähestymistapa toiminnalliseen verifiointiin on formaali verifiointi, jossa järjestelmän toiminnallisuuden oikeellisuus voidaan todentaa matemaattisten menetelmien avulla.
Yleisesti verifiointi koostuu useiden eri menetelmien ja tekniikoiden hyödyntämisestä. Useat näistä menetelmistä on kehitetty eri käyttötarkoituksiin ja niitä voidaan käyttää rinnakkain toisiaan tukevina. Tämä mahdollistaa kattavan sekä tehokkaan verifioinnin toteuttamisen.
Kokoelmat
- Kandidaatintutkielmat [11997]
