You are on page 1of 9

ClueLogic (http://cluelogic.

com/)
Providing the clues to solve your verification problems

(http://cluelogic.com) UVM (http://cluelogic.com/category/uvm/) UVM Tutorial for Candy Lovers 2. Recipe

UVM Tutorial for Candy Lovers 2. Recipe


Keisuke Shimizu (http://cluelogic.com/author/keisuke/) July 24, 2011
3 Comments (http://cluelogic.com/2011/07/uvm-tutorial-for-candy-lovers-recipe/#comments)

Last Updated: April 4, 2014

(http://cluelogic.com/wp-content/uploads/2011/07/recipe-icon-th.png)While the last post clarified the


verification components of the jelly-bean taster, this post will provide a focus for the jelly-bean recipe.

The jelly-bean recipe is passed as a transaction from the jelly_bean_sequencer to the


jelly_bean_driver . The transaction is referred to as the jelly_bean_transaction . The transaction

defines the jelly bean, based on its flavor, color, and other characteristics. The similar jelly_bean_transaction is passed
from the jelly_bean_monitor to every subscriber as well.

The jelly_bean_sequencer does not only produce the recipe of the individual jelly bean rather it is able to produce a
similar flavor of multiple jelly beans, as a sequence of transactions, and a collection of multiple-flavored jelly beans in the
form of a gift box, as a sequence of sequences .

The class diagram of the transaction and sequence is shown below. The colors of this diagram correspond to the colors
listed in the previous post. The light blue boxes refer to the classes in the UVM basic class library, while the darker boxes
indicate the classes created in this tutorial.
(http://cluelogic.com/wp-
content/uploads/2011/07/jb_obj.png)

Class Diagram of Verification Objects

(http://cluelogic.com/wp-
content/uploads/2011/07/jb_env.png)

Verification Components
Though this post ends on this note, the next will provide a focus on the SystemVerilog code itself.

Getsourcecode(https://github.com/cluelogic/uvmtutorialforcandylovers)

Share this:

LinkedIn (http://cluelogic.com/2011/07/uvm-tutorial-for-candy-lovers-recipe/?share=linkedin&nb=1)

Facebook (http://cluelogic.com/2011/07/uvm-tutorial-for-candy-lovers-recipe/?share=facebook&nb=1)

Google (http://cluelogic.com/2011/07/uvm-tutorial-for-candy-lovers-recipe/?share=google-plus-1&nb=1)

Twitter (http://cluelogic.com/2011/07/uvm-tutorial-for-candy-lovers-recipe/?share=twitter&nb=1)

Email (http://cluelogic.com/2011/07/uvm-tutorial-for-candy-lovers-recipe/?share=email&nb=1)

Print (http://cluelogic.com/2011/07/uvm-tutorial-for-candy-lovers-recipe/#print)

Like this:

Like
Bethefirsttolikethis.

Posted in UVM (http://cluelogic.com/category/uvm/)


Tagged tutorial (http://cluelogic.com/tag/tutorial/), UVM (http://cluelogic.com/tag/uvm/)
Permalink (http://cluelogic.com/2011/07/uvm-tutorial-for-candy-lovers-recipe/)

UVM Tutorial for Candy Lovers 1. Overview (http://cluelogic.com/2011/07/uvm-tutorial-for-candy-lovers-overview/)


UVM Tutorial for Candy Lovers 3. Transactions and Sequences (http://cluelogic.com/2011/07/uvm-tutorial-for-
candy-lovers-transactions-and-sequences/)

3 thoughts on UVM Tutorial for Candy Lovers 2. Recipe

Subhash (http://mybrushwithasic,blogspot.in)

August 18, 2013 at 6:54 pm (http://cluelogic.com/2011/07/uvm-tutorial-for-candy-lovers-recipe/#comment-618)

Very good site and concepts are explained clearly

Reply (http://cluelogic.com/2011/07/uvm-tutorial-for-candy-lovers-recipe/?replytocom=618#respond)
Rejoyce

May 6, 2015 at 3:27 am (http://cluelogic.com/2011/07/uvm-tutorial-for-candy-lovers-recipe/#comment-10542)

Is there any reason for extending jelly_bean_transaction from uvm_sequence_item rather than uvm_transaction ?

In the source code (uvm 1.1d ), its mentioned Use of this class as a base for user-defined transactions is
deprecated. Its subtype, , shall be used as the base class for all user-defined transaction types . What are the
benefits associated with uvm_sequence_item.

Reply (http://cluelogic.com/2011/07/uvm-tutorial-for-candy-lovers-recipe/?replytocom=10542#respond)

Keisuke Shimizu (http://cluelogic.com)

September 7, 2015 at 11:27 am (http://cluelogic.com/2011/07/uvm-tutorial-for-candy-lovers-recipe/#comment-

12086)

The uvm_sequence_item provides a hook to the uvm_sequencer and the functions to build a sequence

hierarchy. It also provides its own reporting interface so that we can filter messages based on the verbosity
setting of the sequencer, etc.

Reply (http://cluelogic.com/2011/07/uvm-tutorial-for-candy-lovers-recipe/?replytocom=12086#respond)

Leave a Reply
Enteryourcommenthere...

Search

MENU

Events
(http://cluelogic.com/events/)
About
(http://cluelogic.com/about/)

CATEGORIES

OVM
(http://cluelogic.com/category/ovm/)

SystemVerilog
(http://cluelogic.com/category/systemverilog/)

UVM
(http://cluelogic.com/category/uvm/)

VMM
(http://cluelogic.com/category/vmm/)

ARCHIVES

May 2015
(http://cluelogic.com/2015/05/)

April 2015
(http://cluelogic.com/2015/04/)

February 2015
(http://cluelogic.com/2015/02/)

November 2014
(http://cluelogic.com/2014/11/)

October 2014
(http://cluelogic.com/2014/10/)

September 2014
(http://cluelogic.com/2014/09/)

August 2014
(http://cluelogic.com/2014/08/)

April 2014
(http://cluelogic.com/2014/04/)

February 2014
(http://cluelogic.com/2014/02/)

December 2013
(http://cluelogic.com/2013/12/)

September 2013
(http://cluelogic.com/2013/09/)

February 2013
(http://cluelogic.com/2013/02/)

January 2013
(http://cluelogic.com/2013/01/)

December 2012
(http://cluelogic.com/2012/12/)

November 2012
(http://cluelogic.com/2012/11/)

October 2012
(http://cluelogic.com/2012/10/)

January 2012
(http://cluelogic.com/2012/01/)

July 2011
(http://cluelogic.com/2011/07/)

May 2011
(http://cluelogic.com/2011/05/)

TAGS

back-door (http://cluelogic.com/tag/back-

door/) do_copy

(http://cluelogic.com/tag/do_copy/)

Hidden Gems
(http://cluelogic.com/tag/hidden-
gems/) OVM
(http://cluelogic.com/tag/ovm/)

ovm_report_server

(http://cluelogic.com/tag/ovm_report_server/)

ovm_test
(http://cluelogic.com/tag/ovm_test/)

RAL
(http://cluelogic.com/tag/ral/)
randomize

(http://cluelogic.com/tag/randomize/)

TLM1

(http://cluelogic.com/tag/tlm1/)

tutorial
(http://cluelogic.com/tag/tutorial/)
UVM
(http://cluelogic.com/tag/uvm/)
uvm_agent
(http://cluelogic.com/tag/uvm_agent/)
uvm_analysis_imp

(http://cluelogic.com/tag/uvm_analysis_imp/)

uvm_analysis_port

(http://cluelogic.com/tag/uvm_analysis_port/)

uvm_component

(http://cluelogic.com/tag/uvm_component/)

uvm_config_db

(http://cluelogic.com/tag/uvm_config_db/)

uvm_driver

(http://cluelogic.com/tag/uvm_driver/)

uvm_env
(http://cluelogic.com/tag/uvm_env/)
uvm_field_enum

(http://cluelogic.com/tag/uvm_field_enum/)

uvm_field_int

(http://cluelogic.com/tag/uvm_field_int/)

uvm_monitor

(http://cluelogic.com/tag/uvm_monitor/)

uvm_object

(http://cluelogic.com/tag/uvm_object/)

uvm_object_utils

(http://cluelogic.com/tag/uvm_object_utils/)

uvm_phase

(http://cluelogic.com/tag/uvm_phase/)

uvm_port_base

(http://cluelogic.com/tag/uvm_port_base/)

uvm_reg
(http://cluelogic.com/tag/uvm_reg/)

uvm_reg_adapter

(http://cluelogic.com/tag/uvm_reg_adapter/)

uvm_reg_block

(http://cluelogic.com/tag/uvm_reg_block/)

uvm_reg_sequence

(http://cluelogic.com/tag/uvm_reg_sequence/)

uvm_report_server

(http://cluelogic.com/tag/uvm_report_server/)

uvm_scoreboard

(http://cluelogic.com/tag/uvm_scoreboard/)

uvm_sequence

(http://cluelogic.com/tag/uvm_sequence/)

uvm_sequencer

(http://cluelogic.com/tag/uvm_sequencer/)

uvm_sequence_item
(http://cluelogic.com/tag/uvm_sequence_item/)
uvm_seq_item_pull_imp

(http://cluelogic.com/tag/uvm_seq_item_pull_imp/)

uvm_seq_item_pull_port

(http://cluelogic.com/tag/uvm_seq_item_pull_port/)

uvm_sqr_if_base

(http://cluelogic.com/tag/uvm_sqr_if_base/)

uvm_subscriber
(http://cluelogic.com/tag/uvm_subscriber/)
uvm_test
(http://cluelogic.com/tag/uvm_test/)
uvm_tlm_analysis_fifo

(http://cluelogic.com/tag/uvm_tlm_analysis_fifo/)

uvm_tlm_fifo

(http://cluelogic.com/tag/uvm_tlm_fifo/)

uvm_tlm_if_base

(http://cluelogic.com/tag/uvm_tlm_if_base/)

VMM (http://cluelogic.com/tag/vmm/)

vmm_log_format

(http://cluelogic.com/tag/vmm_log_format/)

vmm_xactor

(http://cluelogic.com/tag/vmm_xactor/)
Back to top

Copyright 2015 ClueLogic (http://cluelogic.com). Powered by WordPress (http://www.wordpress.org/) and Follet


(http://github.com/andrezrv/follet).