SlideShare una empresa de Scribd logo
1 de 9
Transaction Level Debug  Demo with VMM & Verdi www.cvcblr.com/blog Rejuvenating VLSI Design-Verification!
Case Study: Transaction Level Debug with VMM  Transactions – higher level of abstraction May span across several tens/hundreds of clock cycles Detailed clock-by-clock info available via HDL Debug waveforms Higher level debug – across transactions Abstract information about various transactions Tools not mature yet (NOVAS has some interesting features) VMM Callback provides a means of doing this Idea is still maturing from CVC Prototype available on request CVC Copyright Protected Material,                                                          www.cvcblr.com 2 www.cvcblr.com/blog
Transaction debug – what’s interesting? Not bit-by-bit, clock-by-clock info Just payload, Transaction IDENTIFIERS Start time, End time etc. February 22, 2007 (3) www.cvcblr.com/blog  class s2p_xactn extends vmm_data;   rand logic [31:0] pkt_pld;   rand logic err_pkt;   rand bit [7:0] pkt_length;    ...  class s2p_dbg_xactn extends s2p_xactn;   time start_t, end_t;   // Conceptually: data_id, stream_id, scenario_id; pkt_pld, err_pkt, ipg;    ...
CVC Copyright Protected Material,                                                          www.cvcblr.com 4 www.cvcblr.com/blog Transaction debug through callback in VMM class s2p_cov_cbk extends extendsvmm_xactor_callbacks;   virtual task before_sending (       s2p_cmd_xactor xactor,      s2p_xactn x0); endtask : before_sending    virtual task after_sending (       s2p_cmd_xactor xactor,      s2p_xactn x0); endtask : after_sendingendclass : s2p_cov_cbk  Update DBG_IF Update DBG_IF
www.cvcblr.com/blog Transaction debug February 22, 2007 (5)
Transaction Debug - summary Powerful application of callbacks Minimal (or no) changes to the existing BFM (if VMM compliant) HUGE productivity benefit – moves debug abstraction level higher up More automation possible via scripts and new VMM macros (CVC’s roadmap) February 22, 2007 (6) www.cvcblr.com/blog
Verdi’s $fsdbLog feature SpringSoft (erstwhile Novas) recently added transaction debug capability to Verdi™ Use $fsdbLog wherever a transaction can be seen/captured February 22, 2007 (7) www.cvcblr.com/blog msg= $psprintf("# %0d %0d %0d pld: %0d, kind : %s start_time: %0t end_time: %0t“,    stream_id, scenario_id, data_id, 				     pkt_pld,s_err_pkt, start_t, end_t); $fsdbLogInit();       $fsdbLog("XN_at_BFM","xaction_capture",0,$psprintf("%m"),msg);
February 22, 2007 (8) www.cvcblr.com/blog Detailed clock-by-clock info
February 22, 2007 (9) www.cvcblr.com/blog Textual transaction browser – all from single $fsdLog call!

Más contenido relacionado

La actualidad más candente

Clock Synchronization (Distributed computing)
Clock Synchronization (Distributed computing)Clock Synchronization (Distributed computing)
Clock Synchronization (Distributed computing)
Sri Prasanna
 

La actualidad más candente (20)

Google file system
Google file systemGoogle file system
Google file system
 
windows CE
windows CEwindows CE
windows CE
 
Coda file system
Coda file systemCoda file system
Coda file system
 
Verification flow and_planning_vlsi_design
Verification flow and_planning_vlsi_designVerification flow and_planning_vlsi_design
Verification flow and_planning_vlsi_design
 
Wimax security
Wimax securityWimax security
Wimax security
 
Gsm call routing
Gsm call routingGsm call routing
Gsm call routing
 
Deploy Failover/High Availability in ASA Firewall
Deploy Failover/High Availability in ASA FirewallDeploy Failover/High Availability in ASA Firewall
Deploy Failover/High Availability in ASA Firewall
 
IBM MQ and Kafka, what is the difference?
IBM MQ and Kafka, what is the difference?IBM MQ and Kafka, what is the difference?
IBM MQ and Kafka, what is the difference?
 
Automating Management of Amazon EC2 Instances with Auto Scaling - March 2017 ...
Automating Management of Amazon EC2 Instances with Auto Scaling - March 2017 ...Automating Management of Amazon EC2 Instances with Auto Scaling - March 2017 ...
Automating Management of Amazon EC2 Instances with Auto Scaling - March 2017 ...
 
Adaptive Modulation & Coding Technique
Adaptive Modulation & Coding TechniqueAdaptive Modulation & Coding Technique
Adaptive Modulation & Coding Technique
 
Fault tolerant and scalable ibm mq
Fault tolerant and scalable ibm mqFault tolerant and scalable ibm mq
Fault tolerant and scalable ibm mq
 
lecture-18.pptx
lecture-18.pptxlecture-18.pptx
lecture-18.pptx
 
axi protocol
axi protocolaxi protocol
axi protocol
 
Hiperlan
HiperlanHiperlan
Hiperlan
 
Channel Allocation.pptx
Channel Allocation.pptxChannel Allocation.pptx
Channel Allocation.pptx
 
Clock Synchronization (Distributed computing)
Clock Synchronization (Distributed computing)Clock Synchronization (Distributed computing)
Clock Synchronization (Distributed computing)
 
Vsat systems
Vsat systemsVsat systems
Vsat systems
 
Pcs ch1
Pcs ch1Pcs ch1
Pcs ch1
 
Architecting for High Availability
Architecting for High AvailabilityArchitecting for High Availability
Architecting for High Availability
 
Adaptive Modulation and Coding Techniques
Adaptive Modulation and Coding TechniquesAdaptive Modulation and Coding Techniques
Adaptive Modulation and Coding Techniques
 

Similar a Transaction Level Debug with SystemVerilog VMM & Verdi

Similar a Transaction Level Debug with SystemVerilog VMM & Verdi (20)

2V0-41.23 Exam | Start Your Preparation
2V0-41.23 Exam | Start Your Preparation2V0-41.23 Exam | Start Your Preparation
2V0-41.23 Exam | Start Your Preparation
 
2V0-41.23 Exam | Start Your Preparation
2V0-41.23 Exam | Start Your Preparation2V0-41.23 Exam | Start Your Preparation
2V0-41.23 Exam | Start Your Preparation
 
VMware 2V0-41.23 Certification | Questions & Answers
VMware 2V0-41.23 Certification | Questions & AnswersVMware 2V0-41.23 Certification | Questions & Answers
VMware 2V0-41.23 Certification | Questions & Answers
 
IBM MQ in containers MQTC 2017
IBM MQ in containers MQTC 2017IBM MQ in containers MQTC 2017
IBM MQ in containers MQTC 2017
 
Devopstore
DevopstoreDevopstore
Devopstore
 
fgdfgdfg
fgdfgdfgfgdfgdfg
fgdfgdfg
 
Spirent HyperScale Test Solution
Spirent HyperScale Test SolutionSpirent HyperScale Test Solution
Spirent HyperScale Test Solution
 
How to monitor your micro-service with Prometheus?
How to monitor your micro-service with Prometheus?How to monitor your micro-service with Prometheus?
How to monitor your micro-service with Prometheus?
 
Vm_Commit or How to Easily Handle An Infinite Number of Versions of Running Q...
Vm_Commit or How to Easily Handle An Infinite Number of Versions of Running Q...Vm_Commit or How to Easily Handle An Infinite Number of Versions of Running Q...
Vm_Commit or How to Easily Handle An Infinite Number of Versions of Running Q...
 
VMworld 2015: Automating Everything VMware with PowerCLI- Deep Dive
VMworld 2015: Automating Everything VMware with PowerCLI- Deep DiveVMworld 2015: Automating Everything VMware with PowerCLI- Deep Dive
VMworld 2015: Automating Everything VMware with PowerCLI- Deep Dive
 
DC Metro And Federal VMUG March 2009
DC Metro And Federal VMUG March 2009DC Metro And Federal VMUG March 2009
DC Metro And Federal VMUG March 2009
 
E2EVC SCVMM-Mania
E2EVC SCVMM-ManiaE2EVC SCVMM-Mania
E2EVC SCVMM-Mania
 
Thesis Presentation V2.5
Thesis Presentation V2.5Thesis Presentation V2.5
Thesis Presentation V2.5
 
A Node.js Developer's Guide to Bluemix
A Node.js Developer's Guide to BluemixA Node.js Developer's Guide to Bluemix
A Node.js Developer's Guide to Bluemix
 
VMworld 2013: How to Exchange Status Message Between Guest and Host Using RPC
VMworld 2013: How to Exchange Status Message Between Guest and Host Using RPC VMworld 2013: How to Exchange Status Message Between Guest and Host Using RPC
VMworld 2013: How to Exchange Status Message Between Guest and Host Using RPC
 
VMworld 2013: Practicing What We Preach: VMware IT on vCenter Operations Mana...
VMworld 2013: Practicing What We Preach: VMware IT on vCenter Operations Mana...VMworld 2013: Practicing What We Preach: VMware IT on vCenter Operations Mana...
VMworld 2013: Practicing What We Preach: VMware IT on vCenter Operations Mana...
 
OSv presentation from Linux Foundation Collaboration Summit
OSv presentation from Linux Foundation Collaboration SummitOSv presentation from Linux Foundation Collaboration Summit
OSv presentation from Linux Foundation Collaboration Summit
 
What's New in IBM Messaging
What's New in IBM MessagingWhat's New in IBM Messaging
What's New in IBM Messaging
 
Power ai image-pipeline
Power ai image-pipelinePower ai image-pipeline
Power ai image-pipeline
 
VMware NSX - Lessons Learned from real project
VMware NSX - Lessons Learned from real projectVMware NSX - Lessons Learned from real project
VMware NSX - Lessons Learned from real project
 

Último

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Último (20)

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
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
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
[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
 
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
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
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...
 
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
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
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
 
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
 
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
 
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
 

Transaction Level Debug with SystemVerilog VMM & Verdi

  • 1. Transaction Level Debug Demo with VMM & Verdi www.cvcblr.com/blog Rejuvenating VLSI Design-Verification!
  • 2. Case Study: Transaction Level Debug with VMM Transactions – higher level of abstraction May span across several tens/hundreds of clock cycles Detailed clock-by-clock info available via HDL Debug waveforms Higher level debug – across transactions Abstract information about various transactions Tools not mature yet (NOVAS has some interesting features) VMM Callback provides a means of doing this Idea is still maturing from CVC Prototype available on request CVC Copyright Protected Material, www.cvcblr.com 2 www.cvcblr.com/blog
  • 3. Transaction debug – what’s interesting? Not bit-by-bit, clock-by-clock info Just payload, Transaction IDENTIFIERS Start time, End time etc. February 22, 2007 (3) www.cvcblr.com/blog class s2p_xactn extends vmm_data; rand logic [31:0] pkt_pld; rand logic err_pkt; rand bit [7:0] pkt_length; ... class s2p_dbg_xactn extends s2p_xactn; time start_t, end_t; // Conceptually: data_id, stream_id, scenario_id; pkt_pld, err_pkt, ipg; ...
  • 4. CVC Copyright Protected Material, www.cvcblr.com 4 www.cvcblr.com/blog Transaction debug through callback in VMM class s2p_cov_cbk extends extendsvmm_xactor_callbacks; virtual task before_sending ( s2p_cmd_xactor xactor, s2p_xactn x0); endtask : before_sending virtual task after_sending ( s2p_cmd_xactor xactor, s2p_xactn x0); endtask : after_sendingendclass : s2p_cov_cbk Update DBG_IF Update DBG_IF
  • 6. Transaction Debug - summary Powerful application of callbacks Minimal (or no) changes to the existing BFM (if VMM compliant) HUGE productivity benefit – moves debug abstraction level higher up More automation possible via scripts and new VMM macros (CVC’s roadmap) February 22, 2007 (6) www.cvcblr.com/blog
  • 7. Verdi’s $fsdbLog feature SpringSoft (erstwhile Novas) recently added transaction debug capability to Verdi™ Use $fsdbLog wherever a transaction can be seen/captured February 22, 2007 (7) www.cvcblr.com/blog msg= $psprintf("# %0d %0d %0d pld: %0d, kind : %s start_time: %0t end_time: %0t“, stream_id, scenario_id, data_id, pkt_pld,s_err_pkt, start_t, end_t); $fsdbLogInit(); $fsdbLog("XN_at_BFM","xaction_capture",0,$psprintf("%m"),msg);
  • 8. February 22, 2007 (8) www.cvcblr.com/blog Detailed clock-by-clock info
  • 9. February 22, 2007 (9) www.cvcblr.com/blog Textual transaction browser – all from single $fsdLog call!