IEC 62530-2:2023
(Main)SystemVerilog - Part 2: Universal Verification Methodology Language Reference Manual
SystemVerilog - Part 2: Universal Verification Methodology Language Reference Manual
IEC 62530-2:2023 establishes the Universal Verification Methodology (UVM), a set of application programming interfaces (APIs) that defines a base class library (BCL) definition used to develop modular, scalable, and reusable components for functional verification environments. The APIs and BCL are based on the IEEE standard for SystemVerilog, IEEE Std 1800™.1. This is an IEC/IEEE dual logo standard.
General Information
Relations
Standards Content (Sample)
IEC 62530-2 ®
Edition 2.0 2023-10
™
IEEE Std 1800.2
INTERNATIONAL
STANDARD
SystemVerilog –
Part 2: Universal Verification Methodology Language Reference Manual
All rights reserved. IEEE is a registered trademark in the U.S. Patent & Trademark Office, owned by the Institute of
Electrical and Electronics Engineers, Inc. Unless otherwise specified, no part of this publication may be reproduced or
utilized in any form or by any means, electronic or mechanical, including photocopying and microfilm, without
permission in writing from the IEC Central Office. Any questions about IEEE copyright should be addressed to the
IEEE. Enquiries about obtaining additional rights to this publication and other information requests should be addressed
to the IEC or your local IEC member National Committee.
IEC Secretariat Institute of Electrical and Electronics Engineers, Inc.
3, rue de Varembé 3 Park Avenue
CH-1211 Geneva 20 New York, NY 10016-5997
Switzerland United States of America
Tel.: +41 22 919 02 11 stds.info@ieee.org
info@iec.ch www.ieee.org
www.iec.ch
About the IEC
The International Electrotechnical Commission (IEC) is the leading global organization that prepares and publishes
International Standards for all electrical, electronic and related technologies.
About IEC publications
The technical content of IEC publications is kept under constant review by the IEC. Please make sure that you have the
latest edition, a corrigendum or an amendment might have been published.
IEC publications search - webstore.iec.ch/advsearchform IEC Products & Services Portal - products.iec.ch
The advanced search enables to find IEC publications by a Discover our powerful search engine and read freely all the
variety of criteria (reference number, text, technical publications previews. With a subscription you will always have
committee, …). It also gives information on projects, replaced access to up to date content tailored to your needs.
and withdrawn publications.
Electropedia - www.electropedia.org
IEC Just Published - webstore.iec.ch/justpublished
The world's leading online dictionary on electrotechnology,
Stay up to date on all new IEC publications. Just Published
containing more than 22 300 terminological entries in English
details all new publications released. Available online and once
and French, with equivalent terms in 19 additional languages.
a month by email.
Also known as the International Electrotechnical Vocabulary
(IEV) online.
IEC Customer Service Centre - webstore.iec.ch/csc
If you wish to give us your feedback on this publication or need
further assistance, please contact the Customer Service
Centre: sales@iec.ch.
IEC 62530-2 ®
Edition 2.0 2023-10
IEEE Std 1800.2™
INTERNATIONAL
STANDARD
SystemVerilog –
Part 2: Universal Verification Methodology Language Reference Manual
INTERNATIONAL
ELECTROTECHNICAL
COMMISSION
ICS 25.040.01, 35.060 ISBN 978-2-8322-7516-0
– i – IEEE Std 1800.2™-2020
Contents
1. Overview .12
1.1 Scope .12
1.2 Purpose .12
1.3 Word usage .12
1.4 Conventions used .13
2. Normative references .15
3. Definitions, acronyms, and abbreviations .15
3.1 Definitions .15
3.2 Acronyms and abbreviations .16
4. Universal Verification Methodology (UVM) class reference .17
5. Base classes .18
5.1 Overview .18
5.2 uvm_void .18
5.3 uvm_object .19
5.4 uvm_transaction .27
5.5 uvm_port_base #(IF) .31
5.6 uvm_time .34
5.7 uvm_field_op .36
6. Reporting classes .38
6.1 Overview .38
6.2 uvm_report_message .39
6.3 uvm_report_object .41
6.4 uvm_report_handler .47
6.5 Report server.50
6.6 uvm_report_catcher .53
7. Recording classes .58
7.1 uvm_tr_database .59
7.2 uvm_tr_stream .61
7.3 UVM links .65
8. Factory classes .69
8.1 Overview .69
8.2 Factory component and object wrappers .69
8.3 UVM factory.75
9. Phasing .81
9.1 Overview .81
9.2 Implementation .81
9.3 Phasing definition classes .82
9.4 uvm_domain .91
9.5 uvm_bottomup_phase .92
9.6 uvm_task_phase.92
9.7 uvm_topdown_phase .93
9.8 Predefined phases .94
10. Synchronization classes .98
10.1 Event classes .98
Published by IEC under licence from IEEE. © 2020 IEEE. All rights reserved.
IEEE Std 1800.2™-2020 – ii –
10.2 uvm_event_callback .101
10.3 uvm_barrier .102
10.4 Pool classes .104
10.5 Objection mechanism .105
10.6 uvm_heartbeat .110
10.7 Callbacks classes .112
11. Container classes .115
11.1 Overview .115
11.2 uvm_pool #(KEY,T) .116
11.3 uvm_queue #(T) .118
12. UVM TLM interfaces .120
12.1 Overview .120
12.2 UVM TLM 1 .120
12.3 UVM TLM 2 .138
13. Predefined component classes .159
13.1 uvm_component .159
13.2 uvm_test .172
13.3 uvm_env .173
13.4 uvm_agent .173
13.5 uvm_monitor .174
13.6 uvm_scoreboard .174
13.7 uvm_driver #(REQ,RSP) .175
13.8 uvm_push_driver #(REQ,RSP) .175
13.9 uvm_subscriber .176
14. Sequence classes .177
14.1 uvm_sequence_item .177
14.2 uvm_sequence_base .181
14.3 uvm_sequence #(REQ,RSP) .189
14.4 uvm_sequence_library .191
15. Sequencer classes .
...
Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.