graph-ic verification
DESCRIPTION
Graph-IC Verification. by. Hello!. Why are we here? Report of our experience in verifying a complex and highly configurable IP. Our problems might be yours. Graph-IC. DUT Overview. Display engine: Fetch data Process pixels Output video formating Multi channel / overlays. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/1.jpg)
February 28 – March 1, 2012
Graph-IC Verification
by
Gregory FAUXVerification EngineerSTMicroelectronics
Dennis RAMAEKERSVerification Engineer
ST-Ericsson
![Page 2: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/2.jpg)
2 of 22Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson)
Hello!
• Why are we here?– Report of our experience in verifying a complex
and highly configurable IP
![Page 3: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/3.jpg)
GRAPH-IC
Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson) 3 of 22
![Page 4: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/4.jpg)
• Display engine:– Fetch data– Process pixels– Output video formating – Multi channel / overlays
4 of 22Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson)
DUT Overview
![Page 5: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/5.jpg)
5 of 22Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson)
Where Complexity Explodes…• Each stage presents high configurability• High flexibility achieved by decoupling each
stage
• Legal configurations are hard to generate, with complex resources management
• … recurrent problem raised @each verification level
MemoryBuffer
Buffer
Buffer PP2PP1 PP n
Memory
Buffer
Buffer
Buffer PP2PP1 PP n
![Page 6: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/6.jpg)
CRV LIMITATIONS
Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson) 6 of 22
![Page 7: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/7.jpg)
7 of 22Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson)
Original Approach
• Constraint Random Verification (VIPs, scbd, sequences…)
• C reference model
Model
VIP
Scoreboard
VIP
Virtual sequences
Test Bench
DUV
![Page 8: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/8.jpg)
8 of 22Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson)
Constraints Based Modeling
Resource Management
High configurability
• Multiple stages, each requiring a large constraints set• Additional constraints required to ensure valid data path• Data paths can be multiple and re-configurable
Tedious generation of legal configurations !
Flexible data path
![Page 9: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/9.jpg)
9 of 22Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson)
Challenges
• Coverage closure– Constraints set was hard to develop and maintain– Huge test suite– Some scenario still missing
• Horizontal reuse– Important constraint subset tightly linked to IP
version• Vertical reuse
– Different verification approaches and languages
![Page 10: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/10.jpg)
GRAPH BASED VERIFICATION MAIN CONCEPTS
Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson) 10 of 22
![Page 11: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/11.jpg)
Overview
• User describes sequential steps required to generate verification scenario using graph
• Nodes can be used to perform – Configuration generation– TB interaction: data injection/grabbing, synchronization on
events– File generation
Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson) 11 of 22
Three Types of Goals
Select Goal – evaluate ONE child
Sequence Goal – evaluate ALL children
Leaf Goal – has NO child
![Page 12: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/12.jpg)
Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson) 12 of 22
• Ordered graph walk• Multiple and concurrent evaluations are possible• Executing a node means evaluating the corresponding C++
function
Graph Evaluation
goal sequence0 {…}goal sequence1 {…}goal leaf2 {…}goal select1 {…}goal leaf3 {…}goal leaf1 {…}
![Page 13: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/13.jpg)
13 of 22
• Constraints can be applied to any select child– If masked, a child will never be selected– If forced, a child will always be selected
• Constraints can be static and/or dynamic• Goal may be redefined (body and subgraph)
Graph Evaluation (cont’d)
new
Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson)
![Page 14: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/14.jpg)
APPLICATION
Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson) 14 of 22
![Page 15: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/15.jpg)
15 of 22Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson)
Application On Our ControllerIP Testbench
Model
VIP
Scoreboard
VIP
Virtual sequences
Scenario Driver
Test Bench
DUV
![Page 16: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/16.jpg)
16 of 22Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson)
Application On Our ControllerSystem Test Generation
CPU
InterconnectSystem
M2M IP
Infra IP
I/O IP
Infra IP
I/O IP
Mem
C program
C program
Scenario Driver
Test Bench
![Page 17: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/17.jpg)
17 of 22Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson)
Graph Overview
![Page 18: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/18.jpg)
BENEFITS
Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson) 18 of 22
![Page 19: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/19.jpg)
Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson) 19 of 22
Coverage Closure• The sequential nature of graph evaluation permitted
• An easy decomposition of the original problem• An easy datapath modeling• Smooth resources management
• Generation of unexplored scenario• New bugs found
• Re-writing of the test suite• From basic to very complex tests• Faster Verification closure
![Page 20: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/20.jpg)
Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson) 20 of 22
Horizontal reuseMaintenance and IP derivatives
• Easy derivatives support via several select and leaf goals redefinitions• Project independent common pool of files for
easy maintenance• Few configuration specific files are needed per IP
version
• Time to first valid test divided by 2
new Project specific
Common
![Page 21: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/21.jpg)
Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson) 21 of 22
Vertical ReuseFrom IP to SoC• Most of the graph model is common to both
platforms• Natural split between nodes that are platform
agnostic and those which are not
Drive VIP
VIP C progra
m
C progra
m
Write C
![Page 22: Graph-IC Verification](https://reader036.vdocuments.mx/reader036/viewer/2022062520/5681584a550346895dc5a0d9/html5/thumbnails/22.jpg)
22 of 22Gregory Faux (STMicroelectronics), Dennis Ramaekers (ST-Ericsson)
Conclusion
• CRV faces some limits on really complex IPs• Our experience with Graph Based Verification was
positive– Productivity and quality improved
• We applied it @IP and @SoC– Vertical reuse enabler– System tests (deployment on-going)