Metody akcelerace verifikace logických obvodů

but.committeecs
but.defencecs
but.jazykangličtina (English)
but.programVýpočetní technika a informatikacs
but.resultpráce byla úspěšně obhájenacs
dc.contributor.advisorKotásek, Zdeněken
dc.contributor.authorZachariášová, Marcelaen
dc.contributor.refereeDohnal, Janen
dc.contributor.refereeSteininger, Andreasen
dc.date.accessioned2018-10-21T22:44:39Z
dc.date.available2018-10-21T22:44:39Z
dc.date.createdcs
dc.description.abstractPři vývoji současných číslicových systémů, např. vestavěných systému a počítačového hardware, je nutné hledat postupy, jak zvýšit jejich spolehlivost. Jednou z možností je zvyšování efektivity a rychlosti verifikačních procesů, které se provádějí v raných fázích návrhu. V této dizertační práci se pozornost věnuje verifikačnímu přístupu s názvem funkční verifikace. Je identifikováno několik výzev a problému týkajících se efektivity a rychlosti funkční verifikace a ty jsou následně řešeny v cílech dizertační práce. První cíl se zaměřuje na redukci simulačního času v průběhu verifikace komplexních systémů. Důvodem je, že simulace inherentně paralelního hardwarového systému trvá velmi dlouho v porovnání s během v skutečném hardware. Je proto navrhnuta optimalizační technika, která umisťuje verifikovaný systém do FPGA akcelerátoru, zatím co část verifikačního prostředí stále běží v simulaci. Tímto přemístěním je možné výrazně zredukovat simulační režii. Druhý cíl se zabývá ručně připravovanými verifikačními prostředími, která představují výrazné omezení ve verifikační produktivitě. Tato režie však není nutná, protože většina verifikačních prostředí má velice podobnou strukturu, jelikož využívají komponenty standardních verifikačních metodik. Tyto komponenty se jen upravují s ohledem na verifikovaný systém. Proto druhá optimalizační technika analyzuje popis systému na vyšší úrovni abstrakce a automatizuje tvorbu verifikačních prostředí tím, že je automaticky generuje z tohoto vysoko-úrovňového popisu. Třetí cíl zkoumá, jak je možné docílit úplnost verifikace pomocí inteligentní automatizace. Úplnost verifikace se typicky měří pomocí různých metrik pokrytí a verifikace je ukončena, když je dosažena právě vysoká úroveň pokrytí. Proto je navržena třetí optimalizační technika, která řídí generování vstupů pro verifikovaný systém tak, aby tyto vstupy aktivovali současně co nejvíc bodů pokrytí a aby byla rychlost konvergence k maximálnímu pokrytí co nejvyšší. Jako hlavní optimalizační prostředek se používá genetický algoritmus, který je přizpůsoben pro funkční verifikaci a jeho parametry jsou vyladěny pro tuto doménu. Běží na pozadí verifikačního procesu, analyzuje dosažené pokrytí a na základě toho dynamicky upravuje omezující podmínky pro generátor vstupů. Tyto podmínky jsou reprezentovány pravděpodobnostmi, které určují výběr vhodných hodnot ze vstupní domény. Čtvrtý cíl diskutuje, zda je možné znovu použít vstupy z funkční verifikace pro účely regresního testování a optimalizovat je tak, aby byla rychlost testování co nejvyšší. Ve funkční verifikaci je totiž běžné, že vstupy jsou značně redundantní, jelikož jsou produkovány generátorem. Pro regresní testy ale tato redundance není potřebná a proto může být eliminována. Zároveň je ale nutné dbát na to, aby úroveň pokrytí dosáhnutá optimalizovanou sadou byla stejná, jako u té původní. Čtvrtá optimalizační technika toto reflektuje a opět používá genetický algoritmus jako optimalizační prostředek. Tentokrát ale není integrován do procesu verifikace, ale je použit až po její ukončení. Velmi rychle odstraňuje redundanci z původní sady vstupů a výsledná doba simulace je tak značně optimalizována.en
dc.description.abstractIn the development of current hardware systems, e.g. embedded systems or computer hardware, new ways how to increase their reliability are highly investigated. One way how to tackle the issue of reliability is to increase the efficiency and the speed of verification processes that are performed in the early phases of the design cycle. In this Ph.D. thesis, the attention is focused on the verification approach called functional verification. Several challenges and problems connected with the efficiency and the speed of functional verification are identified and reflected in the goals of the Ph.D. thesis. The first goal focuses on the reduction of the simulation runtime when verifying complex hardware systems. The reason is that the simulation of inherently parallel hardware systems is very slow in comparison to the speed of real hardware. The optimization technique is proposed that moves the verified system into the FPGA acceleration board while the rest of the verification environment runs in simulation. By this single move, the simulation overhead can be significantly reduced. The second goal deals with manually written verification environments which represent a huge bottleneck in the verification productivity. However, it is not reasonable, because almost all verification environments have the same structure as they utilize libraries of basic components from the standard verification methodologies. They are only adjusted to the system that is verified. Therefore, the second optimization technique takes the high-level specification of the system and then automatically generates a comprehensive verification environment for this system. The third goal elaborates how the completeness of the verification process can be achieved using the intelligent automation. The completeness is measured by different coverage metrics and the verification is usually ended when a satisfying level of coverage is achieved. Therefore, the third optimization technique drives generation of input stimuli in order to activate multiple coverage points in the veri\-fied system and to enhance the overall coverage rate. As the main optimization tool the genetic algorithm is used, which is adopted for the functional verification purposes and its parameters are well-tuned for this domain. It is running in the background of the verification process, it analyses the coverage and it dynamically changes constraints of the stimuli generator. Constraints are represented by the probabilities using which particular values from the input domain are selected.       The fourth goal discusses the re-usability of verification stimuli for regression testing and how these stimuli can be further optimized in order to speed-up the testing. It is quite common in verification that until a satisfying level of coverage is achieved, many redundant stimuli are evaluated as they are produced by pseudo-random generators. However, when creating optimal regression suites, redundancy is not needed anymore and can be removed. At the same time, it is important to retain the same level of coverage in order to check all the key properties of the system. The fourth optimization technique is also based on the genetic algorithm, but it is not integrated into the verification process but works offline after the verification is ended. It removes the redundancy from the original suite of stimuli very fast and effectively so the resulting verification runtime of the regression suite is significantly improved.cs
dc.description.markPcs
dc.identifier.citationZACHARIÁŠOVÁ, M. Metody akcelerace verifikace logických obvodů [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. .cs
dc.identifier.other99834cs
dc.identifier.urihttp://hdl.handle.net/11012/63281
dc.language.isoencs
dc.publisherVysoké učení technické v Brně. Fakulta informačních technologiícs
dc.rightsStandardní licenční smlouva - přístup k plnému textu bez omezenícs
dc.subjectfunční verifikaceen
dc.subjectverifikace založená na simulacien
dc.subjectUniversal Verification Methodologyen
dc.subjectSystemVerilogen
dc.subjectoptimalizaceen
dc.subjectautomatizaceen
dc.subjectgenetický algoritmusen
dc.subjectverifikace řízená pokrytímen
dc.subjectmetriky pokrytíen
dc.subjectfunctional verificationcs
dc.subjectsimulation-based verificationcs
dc.subjectUniversal Verification Methodologycs
dc.subjectSystemVerilogcs
dc.subjectoptimizationcs
dc.subjectautomationcs
dc.subjectgenetic algorithmcs
dc.subjectcoverage-driven verificationcs
dc.subjectcoverage metricscs
dc.titleMetody akcelerace verifikace logických obvodůen
dc.title.alternativeNew Methods for Increasing Efficiency and Speed of Functional Verificationcs
dc.typeTextcs
dc.type.driverdoctoralThesisen
dc.type.evskpdizertační prácecs
dcterms.dateAccepted2015-12-11cs
dcterms.modified2020-05-10-17:46:45cs
eprints.affiliatedInstitution.facultyFakulta informačních technologiícs
sync.item.dbid99834en
sync.item.dbtypeZPen
sync.item.insts2021.11.22 22:42:30en
sync.item.modts2021.11.22 21:47:18en
thesis.disciplineVýpočetní technika a informatikacs
thesis.grantorVysoké učení technické v Brně. Fakulta informačních technologií. Ústav počítačových systémůcs
thesis.levelDoktorskýcs
thesis.namePh.D.cs
Files
Original bundle
Now showing 1 - 5 of 6
Loading...
Thumbnail Image
Name:
final-thesis.pdf
Size:
5.02 MB
Format:
Adobe Portable Document Format
Description:
final-thesis.pdf
Loading...
Thumbnail Image
Name:
thesis-1.pdf
Size:
1.34 MB
Format:
Adobe Portable Document Format
Description:
thesis-1.pdf
Loading...
Thumbnail Image
Name:
Posudek-Vedouci prace-638_s1.pdf
Size:
144.27 KB
Format:
Adobe Portable Document Format
Description:
Posudek-Vedouci prace-638_s1.pdf
Loading...
Thumbnail Image
Name:
Posudek-Oponent prace-638_o1.pdf
Size:
428.4 KB
Format:
Adobe Portable Document Format
Description:
Posudek-Oponent prace-638_o1.pdf
Loading...
Thumbnail Image
Name:
Posudek-Oponent prace-638_o2.pdf
Size:
240.74 KB
Format:
Adobe Portable Document Format
Description:
Posudek-Oponent prace-638_o2.pdf
Collections