240 likes | 446 Views
Sponsored by :. Systematic Application of UCIS to Improve the Automation on Verification Closure. 16M3088I. Verification closure, a language feat.?. Despite SystemC language is one of the main drivers for virtual prototype development its verification features are rather limited:.
E N D
Sponsoredby: SystematicApplicationof UCIStoImprovethe Automation onVerificationClosure 16M3088I
Verification closure, a language feat.? • DespiteSystemClanguageisoneofthemaindriversforvirtual prototype developmentitsverificationfeaturesareratherlimited: 1 not with OSCI simulator
Verification closure, a language feat.? • Previouswork:- Establish a functionalcoverage and verificationmethodologyfor SC[DVCON 2011, DVCON 2012] • Withthisfoundation, letsimprovetheautomation on verificationclosure in SC TBs • Enhancetheflowfromcoverage plan capturetofunctionalcoverageimplementionwithinthe testbench • Basis: • recentlyreleasedUnified CoverageInteroperabilityStandard (UCIS) • Target Language/Simulator: OSCI SystemC Reference Simulator 2 Partner solutions
Outline • Motivation • Verification Features of HLDVLs • Abstraction and Automation for Verification Closure Productivity • UCIS toImprovethe Automation on VerificationClosure in SC • UCIS and Verification Process • Steps in Detail • Case Study • Tooling for UCIS with OSCI SystemC • Lessons Learned • Final Remarks
Unified CoverageInteroperabilityStandard • Whyrely on UCIS? • A schemaforcreation, merge, exportofcoverageinformation • Interoperabilityacrosssimulators • use models that cover common verification activities • Approach • Utilize UCIS to store, generate & accumulate coverage plan metrics in SystemC simulation Can answerAre wedone? and (partly) Doesitwork?question with OSCI referencesimulator!
UCIS with OSCI SystemC • Challenges • Accelera UCIS v1.0 Std. • API functionsdescription • API headerfile • XML schema • Consequently,own API implementationneeded! • API = Setter / Getter / Advanced • In thiswork, wefocus on thefunctionalcoveragescope UCIS_CVG_SCOPE
UCIS and Verification Process • MDE enabledprocess
UCIS and Verification Process cont’ • 1) Capture cover plan datain spreadsheet style datamodel (languageindependent) ReqIF • 2) Transform cover plan datato UCIS intermediate metricmodel (in fact a templateofthemetrictogenerate) • 3) bind metricmodeltothe design (model!) bymodelmapping (in fact: assistedcompletionoftheverificationenvironmentskeletons • 4) Generatefunc. coveragemetricfrommappedmodelfor TB concretetooling
UCIS and Verification Process cont’ Methodology View • Improvingthecommonverificationflowbyaddingintermediate UCIS-relatedsteps in earlierphases • Case Study forapplicabilityevaluation
Case Study: Adaptive Cruise Controller • Simplifiedarchitectureof ACC model • Architectureof ACC model • DUV hasvarious I/O, functionalcoverageis a valuablemetrictodetermine end oftesting • Processthe individual methodologysteps • Buildcoverage plan • Transform to UCIS intermediate model, mapmodel, generate FC code
Case Study: VerificationPlanning • Coverage Plan Spreadsheet structure • Excel tablevs. customcoverage plan format • Usageof OMG Requirement Interchange Format (ReqIF) • Allowstodefine a (custom) „coverage plan spreadsheet“ • XML based, MDE/Eclipsetoolingcompatible • Case Study Example
Case Study: Model Mapping • Multi Pane Editor View • Mappedmodelcontainreferencestoboth UCIS metrictemplateand design model • A modelof UCIS canbegeneratedusing MDE tooling, moreover API Setter/Getter functionscanbegenerated
Case Study: Simulation • Stimuli = ComputationTreeMethod + Random • Tree-orienteddecompositionoftestscenariosinto individual variable ranges • RTPG fortheselectedranges • FunctionalCoverage • UsageofourfunctionalcoverageprotoypeforSystemC • Accumulationofhits w.r.t. metric Output Excerpt
Case Study: Simulation & UCIS API • Usageofgenerated UCIS API • Yougetmuchforfree: Set/Get, Parser, Serializer, …
Case Study: Simulation & UCIS API • Actingascoverageproducer • Usageofgenerated Setter/Getter functions (w.r.t. schema) • Serializing UCIS modelto XML w.r.t. schema
Case Study: Simulation & UCIS API Source: AccelleraOrganization Inc.:An Introduction to the Unified Coverage Interoperability Standard (Video Tutorial)
Lessonslearned: UCIS • „Missing“ reference API Writer • Efforttobuild Setter/Getter API for C/C#/… w.r.t. XML schemaislow • Fast re-builts on newreleasespossible (MM-based) • Advanced API commandsimplementationrequires in-depthexpertise in UCIS andit‘susemodels • Slightinconsistenciesof API and XML • Donation andglueresidue • Likelytobefixed in nextreleases • A commonstandardformatforDoesitwork?andAre wedone? • Whatabout additional usecases?
Lessonslearned: (MDE) ToolingEffort • ToolingConstruction (one-time effort) • thedevilis in thedetails… • ReqIF, EMF, EMF4CPP, specificEclipseversionrequirementsanddep. • MDE expertisedefinitelynecessary • ToolingUsage • Editors forcoverage plan, UCIS, modelweaving, … functional • Requires Design Model Injection (e.g. Pinapa, see [12]) • BUT: domain-specific (EDA) view/design entriepreferable
Conclusion • UCIS = steppingstoneforinteroperability • Wesee potential forusageof UCIS in earlierphasesofverification,in particularverification/coverage plan creation • Building Setter/Getter API for UCIS is easy • General: FC metricgenerationcanavoiderror-pronemanualcoding • Numbers: • UCIS API Functions: 107 • Covered by generation: 78 (72%) • Uncovered: 29
References • AccelleraOrganization Inc.:Unified CoverageInteroperability Standard (UCIS)Link: http://www.accellera.org/downloads/standards/ucis • AccelleraOrganization Inc.:An Introduction to the Unified Coverage Interoperability Standard (Video Tutorial)Link: http://www.accellera.org/news/videos/ucisintro • MarcioOliviera, Christoph Kuznik, Wolfgang Mueller, Finn Haedicke, Hoang Le, Daniel Grosse, Rolf Drechsler, Wolfgang Ecker, VolkanEsen:The System VerificationMethodologyforAdvanced TLM Verification,International Conference on Hardware/Software Codesign and System Synthesis (ISSS+CODES) 2012, Tampere, Finland, October 2012,Link: http://dl.acm.org/citation.cfm?doid=2380445.2380497 • MarcioF. S. Oliveira, Christoph Kuznik, Wolfgang Mueller, VolkanEsen, Wolfgang Ecker:Towardsan Enhanced UVM forSystemC,DVCON 2012, San Jose, February2012,Link: http://adt.cs.upb.de/wolfgang/dvcon2012.pdf • Christoph Kuznik, Wolfgang Mueller: A SystemC Based Library forFunctionalCoverage,DVCON 2011, San Jose, February 2011,Link: http://adt.cs.upb.de/wolfgang/dvcon2011.pdf
Acknowledgement This work was partly funded by the DFG Collaborative Research Centre 614 and by the German Ministry of Education and Research through the project SANITAS (16M3088I).
sponsoredby: Thankyouforyourattention. 16M3088I