SlideShare ist ein Scribd-Unternehmen logo
1 von 24
Downloaden Sie, um offline zu lesen
1
Copyright © 2008 by Doulos. All rights reserved.
The Verification Methodology
Landscape
Jonathan Bromley, Doulos
DVClub Bristol 22-April-2009
2
Copyright © 2008 by Doulos. All rights reserved.
The Verification
Methodology Landscape
CONTENTS
The M-word
Languages, methodologies, tools and standards
The big players: OVM, VMM, eRM
Interoperability and convergence
Conclusions?
3
Copyright © 2008 by Doulos. All rights reserved.
TLM
DUT
Monitor
Driver
Verification Environment
Stimulus
generator
Transactions
Coverage
collector
Transaction
recording
Test
controller
Scoreboard /
Checker
4
Copyright © 2008 by Doulos. All rights reserved.
Design
Under
Test
Constrained Random Verification
11001001
01001010
00001001
01110110
01100110
01001001
01001110
000010
010011
000010
100100
001000
110010
000011
Constrained random
stimulus
Checker
Did we see a bug?
Functional
Coverage
Are we done?Header Payload Checksum
Constraints
Increase coverage
5
Copyright © 2008 by Doulos. All rights reserved.
The Verification Space
Verification
Acceleration
+ Emulation
Formal
Verification
Simulation
Equivalence
Checking
Property
Checking
Dynamic
Formal
Coverage
Transaction Level
Modelling
Constrained
Random
Assertions
Simulation Simulation
Simulation
Formal
Simulation
Formal
Intelligent
Testbench
6
Copyright © 2008 by Doulos. All rights reserved.
What Our Customers Want
• Ease of deployment
• Customizable environment
• but it must do something useful straight out of the box
• Simple, uniform interface to any verification IP block
• Gentle learning curve for the whole team
• Power
• Complex testcases co-ordinated across the whole environment
• Randomization
• Sophisticated coverage analysis
• Interoperability
• Every customer we meet has legacy verification IP
7
Copyright © 2008 by Doulos. All rights reserved.
Methodology (or just a toolkit?)
• Tame the language monster
• e, SystemVerilog, C++ are big and complicated
• Many ways to solve a problem
• Wheel reinvention is a hazard
• Toolkit
• OOP encourages encapsulation of standard functionality
in base classes
• Ideal for component hierarchy, reporting, block-to-block
communication, DUT connectivity
• Methodology
• Published methodology encourages interoperability and re-use
• Promote best practice
8
Copyright © 2008 by Doulos. All rights reserved.
Mature Language Standards
• IEEE 1076 VHDL
• IEEE 1850™ PSL
• IEEE 1364 Verilog
• IEEE 1800™ SystemVerilog
• IEEE 1647™ e
• ISO/IEC 14882 C++
• IEEE 1666™ SystemC
• Tcl/Tk, Perl
List unchanged for 4 years...
8
FPGA, RTL, Europe, Mil-Aero
ASIC, RTL, USA/RoW
Hardware verification
Virtual hardware prototypes for S/W dev
Hardware verification
Crude Caricature
Modelling, verification
Scripting
9
Copyright © 2008 by Doulos. All rights reserved.
New Standards Activity
• Verilog and SystemVerilog unified
• LRM this year, currently in ballot feedback
• Major enhancements to assertions
• Verification methodology
• OVM 2.0, OVM-SC
• VMM open-source
• eRM3 - e / SV interoperability (Cadence)
• OVM / VMM interoperability (Accellera)
• SystemC TLM-2.0
10
Copyright © 2008 by Doulos. All rights reserved.
The Big Methodology Players
www.ovmworld.org
www.vmmcentral.org
www.cadence.comeRM
11
Copyright © 2008 by Doulos. All rights reserved.
Environment
Static View of Testbench
DUT
active
agent
Driver
BFM
Monitor
BFM
Sequ-
encer
passive
agent
Driver
BFM
Monitor
BFM
Sequ-
encer
checkerConfiguration
simple ports (e)
virtual interfaces (SV)
eRM
12
Copyright © 2008 by Doulos. All rights reserved.
Static View of Testbench (VMM)
DUT
Generator
...
test_env env = new;
env.run();
...
Transactor
Driver
Self Check
Monitor
High level
transactions
Checker
Monitor
Functional
Coverage
Properties Checker
Atomic
transactions
Constraints;
directed tests
13
Copyright © 2008 by Doulos. All rights reserved.
OVM Key Features
• Constrained random, coverage-driven verification
• Separation of tests from verification environment
• Configuration of verification environment
• through a table
• Verification IP reuse (canonical structure and guidelines)
• TLM communication
• Automation (where missing from SystemVerilog language)
• Hierarchical sequential stimulus (sequences)
• Standardized messaging
14
Copyright © 2008 by Doulos. All rights reserved.
eRM Key Features
• Constrained random, coverage-driven verification
• Separation of tests from verification environment
• Configuration of verification environment
• through AOP extension and pre-run constraints
• Verification IP reuse (rigorously standardized rules)
• Communication via ports
• Automation (using e language's macro features)
• Hierarchical sequential stimulus (sequences)
• Standardized messaging
15
Copyright © 2008 by Doulos. All rights reserved.
VMM Key Features
• Constrained random, coverage-driven verification
• Configuration of verification environment
• through configuration objects passed to verification components
• Verification IP reuse (conventions)
• Communication via channels, callbacks, notifications
• Automation (scripts and macros)
• Hierarchical sequential stimulus (scenarios)
• Standardized messaging
• Strongly influenced by RVM (Synopsys Vera)
16
Copyright © 2008 by Doulos. All rights reserved.
Structure of an OVM Component
class my_driver extends ovm_driver #(my_transaction);
// ovm_seq_item_pull_port #(...) seq_item_port;
my_dut_if_wrapper m_dut_if;
function new(string name, ovm_component parent);
super.new(name, parent);
endfunction: new
function void build;
super.build();
endfunction: build
virtual task run;
forever begin
...
end
endtask: run
endclass: my_driver
TLM port (inherited)
Connection to DUT
Constructor
Build phase
callback
Run phase
callback
Base class
17
Copyright © 2008 by Doulos. All rights reserved.
Phase Methods (OVM)
build
connect
end_of_elaboration
start_of_simulation
run
extract
check
report
Call factory
Make TLM connections
After connections hardened
Post-processing
Task (executed concurrently)
Get ready to run
Similar phase arrangements in VMM, eRM
18
Copyright © 2008 by Doulos. All rights reserved.
Reconfigurable Environment (OVM)
DUT
Reusable verification environment
Scoreboard Virtual
sequencer
Monitor Existing
verification
component
Existing
verification
component
Sequencer
DriverMonitor
Config
Test
Test
set_config_*
Customize environments
set_inst_override_*
set_type_override_*
Customize types
By type or instance path
19
Copyright © 2008 by Doulos. All rights reserved.
Layered Sequential Stimulus
DUTDriverDrive transactions into DUT
tx1 tx2 tx3
Constrained random
sequence of transactions
seq1 seq2seq2
Virtual or layered
sequences
tx1
Tests enumerate possible
top-level sequences
Randomized transactions are not enough
20
Copyright © 2008 by Doulos. All rights reserved.
ovm_env
ovm_agent
Virtual Sequences
ovm_sequencer
ovm_driver
ovm_sequencer
Component hierarchy Stimulus hierarchy
(co-ordinated interfaces)
DUT
dut_if
ovm_agent
ovm_sequencer
ovm_driver
dut_if
ovm_sequence
ovm_sequence_item
ovm_sequence
21
Copyright © 2008 by Doulos. All rights reserved.
Scenario Generator (VMM)
Verification environment
Scenario generator
Downstream transactor
generator's output channel
atomic
scenario_set
burst[1]
[0]
RMW[2]
burst
items
select_scenario
select
copies of items
22
Copyright © 2008 by Doulos. All rights reserved.
Now and Next
• VMM: rapidly growing collection of "applications"
• register abstraction layer, hierarchy, ...
• OVM/VMM interoperability toolkits/standards
• OVM/eRM mixed-language tools
• OVM-SC
• Increasing availability of verification IP
23
Copyright © 2008 by Doulos. All rights reserved.
Conclusion
• Interesting times
• standards don't always keep up with user needs
• Challenges for users choosing a new approach:
• tools?
• methodology?
• decisions are not yet completely decoupled
• Training is important:
• VMM, OVM, eRM are not difficult ...
• ... but jump-starting your efforts pays dividends
24
Copyright © 2008 by Doulos. All rights reserved.

Weitere ähnliche Inhalte

Was ist angesagt?

Uvm presentation dac2011_final
Uvm presentation dac2011_finalUvm presentation dac2011_final
Uvm presentation dac2011_final
sean chen
 
System verilog verification building blocks
System verilog verification building blocksSystem verilog verification building blocks
System verilog verification building blocks
Nirav Desai
 
UVM_TB_20220621_slides-1.pdf
UVM_TB_20220621_slides-1.pdfUVM_TB_20220621_slides-1.pdf
UVM_TB_20220621_slides-1.pdf
SamHoney6
 
A comprehensive formal verification solution for ARM based SOC design
A comprehensive formal verification solution for ARM based SOC design A comprehensive formal verification solution for ARM based SOC design
A comprehensive formal verification solution for ARM based SOC design
chiportal
 

Was ist angesagt? (20)

Design Verification
Design VerificationDesign Verification
Design Verification
 
Cracking Digital VLSI Verification Interview: Interview Success
Cracking Digital VLSI Verification Interview: Interview SuccessCracking Digital VLSI Verification Interview: Interview Success
Cracking Digital VLSI Verification Interview: Interview Success
 
Efficient Methodology of Sampling UVM RAL During Simulation for SoC Functiona...
Efficient Methodology of Sampling UVM RAL During Simulation for SoC Functiona...Efficient Methodology of Sampling UVM RAL During Simulation for SoC Functiona...
Efficient Methodology of Sampling UVM RAL During Simulation for SoC Functiona...
 
Verification Challenges and Methodologies
Verification Challenges and MethodologiesVerification Challenges and Methodologies
Verification Challenges and Methodologies
 
UVM Methodology Tutorial
UVM Methodology TutorialUVM Methodology Tutorial
UVM Methodology Tutorial
 
Coverage and Introduction to UVM
Coverage and Introduction to UVMCoverage and Introduction to UVM
Coverage and Introduction to UVM
 
Formal verification
Formal verificationFormal verification
Formal verification
 
Uvm presentation dac2011_final
Uvm presentation dac2011_finalUvm presentation dac2011_final
Uvm presentation dac2011_final
 
system verilog
system verilogsystem verilog
system verilog
 
Uvm dac2011 final_color
Uvm dac2011 final_colorUvm dac2011 final_color
Uvm dac2011 final_color
 
Verification flow and_planning_vlsi_design
Verification flow and_planning_vlsi_designVerification flow and_planning_vlsi_design
Verification flow and_planning_vlsi_design
 
UVM TUTORIAL;
UVM TUTORIAL;UVM TUTORIAL;
UVM TUTORIAL;
 
System verilog verification building blocks
System verilog verification building blocksSystem verilog verification building blocks
System verilog verification building blocks
 
6 verification tools
6 verification tools6 verification tools
6 verification tools
 
verification_planning_systemverilog_uvm_2020
verification_planning_systemverilog_uvm_2020verification_planning_systemverilog_uvm_2020
verification_planning_systemverilog_uvm_2020
 
UVM_TB_20220621_slides-1.pdf
UVM_TB_20220621_slides-1.pdfUVM_TB_20220621_slides-1.pdf
UVM_TB_20220621_slides-1.pdf
 
Scan insertion
Scan insertionScan insertion
Scan insertion
 
Mixed signal verification challenges - slides
Mixed signal verification challenges - slidesMixed signal verification challenges - slides
Mixed signal verification challenges - slides
 
A comprehensive formal verification solution for ARM based SOC design
A comprehensive formal verification solution for ARM based SOC design A comprehensive formal verification solution for ARM based SOC design
A comprehensive formal verification solution for ARM based SOC design
 
Digital design with Systemc
Digital design with SystemcDigital design with Systemc
Digital design with Systemc
 

Andere mochten auch (7)

Functial Verification Tutorials
Functial Verification TutorialsFunctial Verification Tutorials
Functial Verification Tutorials
 
System Verilog Functional Coverage
System Verilog Functional CoverageSystem Verilog Functional Coverage
System Verilog Functional Coverage
 
VinTrain VLSI Training Academy
VinTrain VLSI Training AcademyVinTrain VLSI Training Academy
VinTrain VLSI Training Academy
 
vlsi design flow
vlsi design flowvlsi design flow
vlsi design flow
 
vlsi design summer training ppt
vlsi design summer training pptvlsi design summer training ppt
vlsi design summer training ppt
 
Introduction to VLSI
Introduction to VLSI Introduction to VLSI
Introduction to VLSI
 
Basics Of VLSI
Basics Of VLSIBasics Of VLSI
Basics Of VLSI
 

Ähnlich wie The Verification Methodology Landscape

Test Strategy For Future Cloud Architecture
Test Strategy For Future Cloud ArchitectureTest Strategy For Future Cloud Architecture
Test Strategy For Future Cloud Architecture
MaheshShri1
 
EclipseCon Eu 2015 - Breathe life into your Designer!
EclipseCon Eu 2015 - Breathe life into your Designer!EclipseCon Eu 2015 - Breathe life into your Designer!
EclipseCon Eu 2015 - Breathe life into your Designer!
melbats
 
Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...
Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...
Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...
DVClub
 
HeapStats: Troubleshooting with Serviceability and the New Runtime Monitoring...
HeapStats: Troubleshooting with Serviceability and the New Runtime Monitoring...HeapStats: Troubleshooting with Serviceability and the New Runtime Monitoring...
HeapStats: Troubleshooting with Serviceability and the New Runtime Monitoring...
Yuji Kubota
 
Formal Verification Theory and Practice
Formal Verification Theory and PracticeFormal Verification Theory and Practice
Formal Verification Theory and Practice
DVClub
 
Bristol 2009 q1_blackmore_tim
Bristol 2009 q1_blackmore_timBristol 2009 q1_blackmore_tim
Bristol 2009 q1_blackmore_tim
Obsidian Software
 
Tempest scenariotests 20140512
Tempest scenariotests 20140512Tempest scenariotests 20140512
Tempest scenariotests 20140512
Masayuki Igawa
 

Ähnlich wie The Verification Methodology Landscape (20)

ECI OpenFlow 2.0 the Future of SDN
ECI OpenFlow 2.0 the Future of SDN ECI OpenFlow 2.0 the Future of SDN
ECI OpenFlow 2.0 the Future of SDN
 
Cloud-based performance testing
Cloud-based performance testingCloud-based performance testing
Cloud-based performance testing
 
Test Strategy For Future Cloud Architecture
Test Strategy For Future Cloud ArchitectureTest Strategy For Future Cloud Architecture
Test Strategy For Future Cloud Architecture
 
Viavi_TeraVM Core Emulator.pptx
Viavi_TeraVM Core Emulator.pptxViavi_TeraVM Core Emulator.pptx
Viavi_TeraVM Core Emulator.pptx
 
Power path viewer_technical_presentation
Power path viewer_technical_presentationPower path viewer_technical_presentation
Power path viewer_technical_presentation
 
EclipseCon Eu 2015 - Breathe life into your Designer!
EclipseCon Eu 2015 - Breathe life into your Designer!EclipseCon Eu 2015 - Breathe life into your Designer!
EclipseCon Eu 2015 - Breathe life into your Designer!
 
MUT4SLX: Extensions for Mutation Testing of Stateflow Models
MUT4SLX: Extensions for Mutation Testing of Stateflow ModelsMUT4SLX: Extensions for Mutation Testing of Stateflow Models
MUT4SLX: Extensions for Mutation Testing of Stateflow Models
 
VoLTE Service Monitoring - VoLTE Voice Call
VoLTE Service Monitoring - VoLTE Voice CallVoLTE Service Monitoring - VoLTE Voice Call
VoLTE Service Monitoring - VoLTE Voice Call
 
Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...
Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...
Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...
 
UVM_Full_Print_n.pptx
UVM_Full_Print_n.pptxUVM_Full_Print_n.pptx
UVM_Full_Print_n.pptx
 
AEO Training - 2023.pdf
AEO Training - 2023.pdfAEO Training - 2023.pdf
AEO Training - 2023.pdf
 
HeapStats: Troubleshooting with Serviceability and the New Runtime Monitoring...
HeapStats: Troubleshooting with Serviceability and the New Runtime Monitoring...HeapStats: Troubleshooting with Serviceability and the New Runtime Monitoring...
HeapStats: Troubleshooting with Serviceability and the New Runtime Monitoring...
 
Handout2o
Handout2oHandout2o
Handout2o
 
Prometheus for Monitoring Metrics (Fermilab 2018)
Prometheus for Monitoring Metrics (Fermilab 2018)Prometheus for Monitoring Metrics (Fermilab 2018)
Prometheus for Monitoring Metrics (Fermilab 2018)
 
MuleSoft Sizing Guidelines - VirtualMuleys
MuleSoft Sizing Guidelines - VirtualMuleysMuleSoft Sizing Guidelines - VirtualMuleys
MuleSoft Sizing Guidelines - VirtualMuleys
 
Formal Verification Theory and Practice
Formal Verification Theory and PracticeFormal Verification Theory and Practice
Formal Verification Theory and Practice
 
Bristol 2009 q1_blackmore_tim
Bristol 2009 q1_blackmore_timBristol 2009 q1_blackmore_tim
Bristol 2009 q1_blackmore_tim
 
Madrid meetup #7 deployment models
Madrid meetup #7   deployment modelsMadrid meetup #7   deployment models
Madrid meetup #7 deployment models
 
STATUS UPDATE OF COLO PROJECT XIAOWEI YANG, HUAWEI AND WILL AULD, INTEL
STATUS UPDATE OF COLO PROJECT XIAOWEI YANG, HUAWEI AND WILL AULD, INTELSTATUS UPDATE OF COLO PROJECT XIAOWEI YANG, HUAWEI AND WILL AULD, INTEL
STATUS UPDATE OF COLO PROJECT XIAOWEI YANG, HUAWEI AND WILL AULD, INTEL
 
Tempest scenariotests 20140512
Tempest scenariotests 20140512Tempest scenariotests 20140512
Tempest scenariotests 20140512
 

Mehr von DVClub

IP Reuse Impact on Design Verification Management Across the Enterprise
IP Reuse Impact on Design Verification Management Across the EnterpriseIP Reuse Impact on Design Verification Management Across the Enterprise
IP Reuse Impact on Design Verification Management Across the Enterprise
DVClub
 
Cisco Base Environment Overview
Cisco Base Environment OverviewCisco Base Environment Overview
Cisco Base Environment Overview
DVClub
 
Intel Xeon Pre-Silicon Validation: Introduction and Challenges
Intel Xeon Pre-Silicon Validation: Introduction and ChallengesIntel Xeon Pre-Silicon Validation: Introduction and Challenges
Intel Xeon Pre-Silicon Validation: Introduction and Challenges
DVClub
 
Verification of Graphics ASICs (Part II)
Verification of Graphics ASICs (Part II)Verification of Graphics ASICs (Part II)
Verification of Graphics ASICs (Part II)
DVClub
 
Verification of Graphics ASICs (Part I)
Verification of Graphics ASICs (Part I)Verification of Graphics ASICs (Part I)
Verification of Graphics ASICs (Part I)
DVClub
 
Stop Writing Assertions! Efficient Verification Methodology
Stop Writing Assertions! Efficient Verification MethodologyStop Writing Assertions! Efficient Verification Methodology
Stop Writing Assertions! Efficient Verification Methodology
DVClub
 
Validating Next Generation CPUs
Validating Next Generation CPUsValidating Next Generation CPUs
Validating Next Generation CPUs
DVClub
 
Verification Automation Using IPXACT
Verification Automation Using IPXACTVerification Automation Using IPXACT
Verification Automation Using IPXACT
DVClub
 
Validation and Design in a Small Team Environment
Validation and Design in a Small Team EnvironmentValidation and Design in a Small Team Environment
Validation and Design in a Small Team Environment
DVClub
 
Trends in Mixed Signal Validation
Trends in Mixed Signal ValidationTrends in Mixed Signal Validation
Trends in Mixed Signal Validation
DVClub
 
Verification In A Global Design Community
Verification In A Global Design CommunityVerification In A Global Design Community
Verification In A Global Design Community
DVClub
 
Design Verification Using SystemC
Design Verification Using SystemCDesign Verification Using SystemC
Design Verification Using SystemC
DVClub
 
Verification Strategy for PCI-Express
Verification Strategy for PCI-ExpressVerification Strategy for PCI-Express
Verification Strategy for PCI-Express
DVClub
 
SystemVerilog Assertions (SVA) in the Design/Verification Process
SystemVerilog Assertions (SVA) in the Design/Verification ProcessSystemVerilog Assertions (SVA) in the Design/Verification Process
SystemVerilog Assertions (SVA) in the Design/Verification Process
DVClub
 
Efficiency Through Methodology
Efficiency Through MethodologyEfficiency Through Methodology
Efficiency Through Methodology
DVClub
 
Pre-Si Verification for Post-Si Validation
Pre-Si Verification for Post-Si ValidationPre-Si Verification for Post-Si Validation
Pre-Si Verification for Post-Si Validation
DVClub
 
OpenSPARC T1 Processor
OpenSPARC T1 ProcessorOpenSPARC T1 Processor
OpenSPARC T1 Processor
DVClub
 
Intel Atom Processor Pre-Silicon Verification Experience
Intel Atom Processor Pre-Silicon Verification ExperienceIntel Atom Processor Pre-Silicon Verification Experience
Intel Atom Processor Pre-Silicon Verification Experience
DVClub
 
Using Assertions in AMS Verification
Using Assertions in AMS VerificationUsing Assertions in AMS Verification
Using Assertions in AMS Verification
DVClub
 
Low-Power Design and Verification
Low-Power Design and VerificationLow-Power Design and Verification
Low-Power Design and Verification
DVClub
 

Mehr von DVClub (20)

IP Reuse Impact on Design Verification Management Across the Enterprise
IP Reuse Impact on Design Verification Management Across the EnterpriseIP Reuse Impact on Design Verification Management Across the Enterprise
IP Reuse Impact on Design Verification Management Across the Enterprise
 
Cisco Base Environment Overview
Cisco Base Environment OverviewCisco Base Environment Overview
Cisco Base Environment Overview
 
Intel Xeon Pre-Silicon Validation: Introduction and Challenges
Intel Xeon Pre-Silicon Validation: Introduction and ChallengesIntel Xeon Pre-Silicon Validation: Introduction and Challenges
Intel Xeon Pre-Silicon Validation: Introduction and Challenges
 
Verification of Graphics ASICs (Part II)
Verification of Graphics ASICs (Part II)Verification of Graphics ASICs (Part II)
Verification of Graphics ASICs (Part II)
 
Verification of Graphics ASICs (Part I)
Verification of Graphics ASICs (Part I)Verification of Graphics ASICs (Part I)
Verification of Graphics ASICs (Part I)
 
Stop Writing Assertions! Efficient Verification Methodology
Stop Writing Assertions! Efficient Verification MethodologyStop Writing Assertions! Efficient Verification Methodology
Stop Writing Assertions! Efficient Verification Methodology
 
Validating Next Generation CPUs
Validating Next Generation CPUsValidating Next Generation CPUs
Validating Next Generation CPUs
 
Verification Automation Using IPXACT
Verification Automation Using IPXACTVerification Automation Using IPXACT
Verification Automation Using IPXACT
 
Validation and Design in a Small Team Environment
Validation and Design in a Small Team EnvironmentValidation and Design in a Small Team Environment
Validation and Design in a Small Team Environment
 
Trends in Mixed Signal Validation
Trends in Mixed Signal ValidationTrends in Mixed Signal Validation
Trends in Mixed Signal Validation
 
Verification In A Global Design Community
Verification In A Global Design CommunityVerification In A Global Design Community
Verification In A Global Design Community
 
Design Verification Using SystemC
Design Verification Using SystemCDesign Verification Using SystemC
Design Verification Using SystemC
 
Verification Strategy for PCI-Express
Verification Strategy for PCI-ExpressVerification Strategy for PCI-Express
Verification Strategy for PCI-Express
 
SystemVerilog Assertions (SVA) in the Design/Verification Process
SystemVerilog Assertions (SVA) in the Design/Verification ProcessSystemVerilog Assertions (SVA) in the Design/Verification Process
SystemVerilog Assertions (SVA) in the Design/Verification Process
 
Efficiency Through Methodology
Efficiency Through MethodologyEfficiency Through Methodology
Efficiency Through Methodology
 
Pre-Si Verification for Post-Si Validation
Pre-Si Verification for Post-Si ValidationPre-Si Verification for Post-Si Validation
Pre-Si Verification for Post-Si Validation
 
OpenSPARC T1 Processor
OpenSPARC T1 ProcessorOpenSPARC T1 Processor
OpenSPARC T1 Processor
 
Intel Atom Processor Pre-Silicon Verification Experience
Intel Atom Processor Pre-Silicon Verification ExperienceIntel Atom Processor Pre-Silicon Verification Experience
Intel Atom Processor Pre-Silicon Verification Experience
 
Using Assertions in AMS Verification
Using Assertions in AMS VerificationUsing Assertions in AMS Verification
Using Assertions in AMS Verification
 
Low-Power Design and Verification
Low-Power Design and VerificationLow-Power Design and Verification
Low-Power Design and Verification
 

Kürzlich hochgeladen

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Kürzlich hochgeladen (20)

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

The Verification Methodology Landscape

  • 1. 1 Copyright © 2008 by Doulos. All rights reserved. The Verification Methodology Landscape Jonathan Bromley, Doulos DVClub Bristol 22-April-2009
  • 2. 2 Copyright © 2008 by Doulos. All rights reserved. The Verification Methodology Landscape CONTENTS The M-word Languages, methodologies, tools and standards The big players: OVM, VMM, eRM Interoperability and convergence Conclusions?
  • 3. 3 Copyright © 2008 by Doulos. All rights reserved. TLM DUT Monitor Driver Verification Environment Stimulus generator Transactions Coverage collector Transaction recording Test controller Scoreboard / Checker
  • 4. 4 Copyright © 2008 by Doulos. All rights reserved. Design Under Test Constrained Random Verification 11001001 01001010 00001001 01110110 01100110 01001001 01001110 000010 010011 000010 100100 001000 110010 000011 Constrained random stimulus Checker Did we see a bug? Functional Coverage Are we done?Header Payload Checksum Constraints Increase coverage
  • 5. 5 Copyright © 2008 by Doulos. All rights reserved. The Verification Space Verification Acceleration + Emulation Formal Verification Simulation Equivalence Checking Property Checking Dynamic Formal Coverage Transaction Level Modelling Constrained Random Assertions Simulation Simulation Simulation Formal Simulation Formal Intelligent Testbench
  • 6. 6 Copyright © 2008 by Doulos. All rights reserved. What Our Customers Want • Ease of deployment • Customizable environment • but it must do something useful straight out of the box • Simple, uniform interface to any verification IP block • Gentle learning curve for the whole team • Power • Complex testcases co-ordinated across the whole environment • Randomization • Sophisticated coverage analysis • Interoperability • Every customer we meet has legacy verification IP
  • 7. 7 Copyright © 2008 by Doulos. All rights reserved. Methodology (or just a toolkit?) • Tame the language monster • e, SystemVerilog, C++ are big and complicated • Many ways to solve a problem • Wheel reinvention is a hazard • Toolkit • OOP encourages encapsulation of standard functionality in base classes • Ideal for component hierarchy, reporting, block-to-block communication, DUT connectivity • Methodology • Published methodology encourages interoperability and re-use • Promote best practice
  • 8. 8 Copyright © 2008 by Doulos. All rights reserved. Mature Language Standards • IEEE 1076 VHDL • IEEE 1850™ PSL • IEEE 1364 Verilog • IEEE 1800™ SystemVerilog • IEEE 1647™ e • ISO/IEC 14882 C++ • IEEE 1666™ SystemC • Tcl/Tk, Perl List unchanged for 4 years... 8 FPGA, RTL, Europe, Mil-Aero ASIC, RTL, USA/RoW Hardware verification Virtual hardware prototypes for S/W dev Hardware verification Crude Caricature Modelling, verification Scripting
  • 9. 9 Copyright © 2008 by Doulos. All rights reserved. New Standards Activity • Verilog and SystemVerilog unified • LRM this year, currently in ballot feedback • Major enhancements to assertions • Verification methodology • OVM 2.0, OVM-SC • VMM open-source • eRM3 - e / SV interoperability (Cadence) • OVM / VMM interoperability (Accellera) • SystemC TLM-2.0
  • 10. 10 Copyright © 2008 by Doulos. All rights reserved. The Big Methodology Players www.ovmworld.org www.vmmcentral.org www.cadence.comeRM
  • 11. 11 Copyright © 2008 by Doulos. All rights reserved. Environment Static View of Testbench DUT active agent Driver BFM Monitor BFM Sequ- encer passive agent Driver BFM Monitor BFM Sequ- encer checkerConfiguration simple ports (e) virtual interfaces (SV) eRM
  • 12. 12 Copyright © 2008 by Doulos. All rights reserved. Static View of Testbench (VMM) DUT Generator ... test_env env = new; env.run(); ... Transactor Driver Self Check Monitor High level transactions Checker Monitor Functional Coverage Properties Checker Atomic transactions Constraints; directed tests
  • 13. 13 Copyright © 2008 by Doulos. All rights reserved. OVM Key Features • Constrained random, coverage-driven verification • Separation of tests from verification environment • Configuration of verification environment • through a table • Verification IP reuse (canonical structure and guidelines) • TLM communication • Automation (where missing from SystemVerilog language) • Hierarchical sequential stimulus (sequences) • Standardized messaging
  • 14. 14 Copyright © 2008 by Doulos. All rights reserved. eRM Key Features • Constrained random, coverage-driven verification • Separation of tests from verification environment • Configuration of verification environment • through AOP extension and pre-run constraints • Verification IP reuse (rigorously standardized rules) • Communication via ports • Automation (using e language's macro features) • Hierarchical sequential stimulus (sequences) • Standardized messaging
  • 15. 15 Copyright © 2008 by Doulos. All rights reserved. VMM Key Features • Constrained random, coverage-driven verification • Configuration of verification environment • through configuration objects passed to verification components • Verification IP reuse (conventions) • Communication via channels, callbacks, notifications • Automation (scripts and macros) • Hierarchical sequential stimulus (scenarios) • Standardized messaging • Strongly influenced by RVM (Synopsys Vera)
  • 16. 16 Copyright © 2008 by Doulos. All rights reserved. Structure of an OVM Component class my_driver extends ovm_driver #(my_transaction); // ovm_seq_item_pull_port #(...) seq_item_port; my_dut_if_wrapper m_dut_if; function new(string name, ovm_component parent); super.new(name, parent); endfunction: new function void build; super.build(); endfunction: build virtual task run; forever begin ... end endtask: run endclass: my_driver TLM port (inherited) Connection to DUT Constructor Build phase callback Run phase callback Base class
  • 17. 17 Copyright © 2008 by Doulos. All rights reserved. Phase Methods (OVM) build connect end_of_elaboration start_of_simulation run extract check report Call factory Make TLM connections After connections hardened Post-processing Task (executed concurrently) Get ready to run Similar phase arrangements in VMM, eRM
  • 18. 18 Copyright © 2008 by Doulos. All rights reserved. Reconfigurable Environment (OVM) DUT Reusable verification environment Scoreboard Virtual sequencer Monitor Existing verification component Existing verification component Sequencer DriverMonitor Config Test Test set_config_* Customize environments set_inst_override_* set_type_override_* Customize types By type or instance path
  • 19. 19 Copyright © 2008 by Doulos. All rights reserved. Layered Sequential Stimulus DUTDriverDrive transactions into DUT tx1 tx2 tx3 Constrained random sequence of transactions seq1 seq2seq2 Virtual or layered sequences tx1 Tests enumerate possible top-level sequences Randomized transactions are not enough
  • 20. 20 Copyright © 2008 by Doulos. All rights reserved. ovm_env ovm_agent Virtual Sequences ovm_sequencer ovm_driver ovm_sequencer Component hierarchy Stimulus hierarchy (co-ordinated interfaces) DUT dut_if ovm_agent ovm_sequencer ovm_driver dut_if ovm_sequence ovm_sequence_item ovm_sequence
  • 21. 21 Copyright © 2008 by Doulos. All rights reserved. Scenario Generator (VMM) Verification environment Scenario generator Downstream transactor generator's output channel atomic scenario_set burst[1] [0] RMW[2] burst items select_scenario select copies of items
  • 22. 22 Copyright © 2008 by Doulos. All rights reserved. Now and Next • VMM: rapidly growing collection of "applications" • register abstraction layer, hierarchy, ... • OVM/VMM interoperability toolkits/standards • OVM/eRM mixed-language tools • OVM-SC • Increasing availability of verification IP
  • 23. 23 Copyright © 2008 by Doulos. All rights reserved. Conclusion • Interesting times • standards don't always keep up with user needs • Challenges for users choosing a new approach: • tools? • methodology? • decisions are not yet completely decoupled • Training is important: • VMM, OVM, eRM are not difficult ... • ... but jump-starting your efforts pays dividends
  • 24. 24 Copyright © 2008 by Doulos. All rights reserved.