<html><head><title>UVM Version Defines</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script></head><body class="FramedContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>

<!--  Generated by Natural Docs, version Development Release 01-12-2008 (1.35 base) -->
<!--  http://www.naturaldocs.org  -->

<!-- saved from url=(0026)http://www.naturaldocs.org --> 








 <!--TOP - START OF CONTENT-->
<div id=Content>


 <!--CONTENT index=0 -->
<div class="CSection"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="UVM_Version_Defines" href="../../src/macros/uvm_version_defines.svh">UVM Version Defines</a></h1><div class=CBody>

<!--START_ND_SUMMARY index=0-->
<div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable>
  <!-- index=0 -->

<tr class="SMain"><td colspan=2 class=SEntry><a href="#UVM_Version_Defines" >UVM Version Defines</a></td></tr>
<tr class=SMain><td colspan=2 class=SWideDescription></td></tr>
  <!-- index=1 -->

<tr class="SGroup SIndent1"><td class=SEntry><a href="#UVM_Revision_Values" >UVM Revision Values</a></td><td class=SDescription>These macros provide the current values for the <i>MAJOR</i>, <i>MINOR</i>, and optionally the <i>FIX</i> revision.</td></tr>
  <!-- index=2 -->

<tr class="SMacro SIndent2 SMarked"><td class=SEntry><a href="#UVM_MAJOR_REV" >UVM_MAJOR_REV</a></td><td class=SDescription>Defines the MAJOR revision number.</td></tr>
  <!-- index=3 -->

<tr class="SMacro SIndent2"><td class=SEntry><a href="#UVM_MINOR_REV" >UVM_MINOR_REV</a></td><td class=SDescription>Defines the MINOR revision number.</td></tr>
  <!-- index=4 -->

<tr class="SMacro SIndent2 SMarked"><td class=SEntry><a href="#UVM_FIX_REV" >UVM_FIX_REV</a></td><td class=SDescription>(Optionally) Defines the FIX revision letter.</td></tr>
  <!-- index=5 -->

<tr class="SMacro SIndent2"><td class=SEntry><a href="#UVM_NAME" >UVM_NAME</a></td><td class=SDescription>The name used by the library when displaying the name of the library.</td></tr>
  <!-- index=6 -->

<tr class="SMacro SIndent2 SMarked"><td class=SEntry><a href="#UVM_VERSION_STRING" >UVM_VERSION_STRING</a></td><td class=SDescription>Provides a string-ized version of the UVM Library version number.</td></tr>
  <!-- index=7 -->

<tr class="SGroup SIndent1"><td class=SEntry><a href="#Conditional_Compilation" >Conditional Compilation</a></td><td class=SDescription>These macros provide the ability to conditionally compile based on the revision of the library which is being used.</td></tr>
  <!-- index=8 -->

<tr class="SMacro SIndent2 SMarked"><td class=SEntry><a href="#UVM_MAJOR_REV_1" >UVM_MAJOR_REV_1</a></td><td class=SDescription>Indicates that the MAJOR version of this release is &lsquo;1&rsquo;.</td></tr>
  <!-- index=9 -->

<tr class="SMacro SIndent2"><td class=SEntry><a href="#UVM_MINOR_REV_2" >UVM_MINOR_REV_2</a></td><td class=SDescription>Indicates that the MINOR version of this release is &lsquo;2&rsquo;.</td></tr>
  <!-- index=10 -->

<tr class="SMacro SIndent2 SMarked"><td class=SEntry><a href="#UVM_VERSION_1_2" >UVM_VERSION_1_2</a></td><td class=SDescription>Indicates that the version of this release is &lsquo;1.2&rsquo;.</td></tr>
  <!-- index=11 -->

<tr class="SGroup SIndent1"><td class=SEntry><a href="#UVM_Version_Ladder" >UVM Version Ladder</a></td><td class=SDescription></td></tr>
  <!-- index=12 -->

<tr class="SMacro SIndent2"><td class=SEntry><a href="#UVM_POST_VERSION_1_1" >UVM_POST_VERSION_1_1</a></td><td class=SDescription>Indicates that this version of the UVM came after the 1.1 versions, including the various 1.1 fix revisions.</td></tr></table></div></div><!--END_ND_SUMMARY-->
</div></div></div>




 <!--CONTENT index=1 -->
<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="UVM_Revision_Values" href="../../src/macros/uvm_version_defines.svh">UVM Revision Values</a></h3><div class=CBody><p>These macros provide the current values for the <i>MAJOR</i>, <i>MINOR</i>, and optionally the <i>FIX</i> revision.</p><h4 class=CHeading>Example with UVM version 1.2</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>UVM_MAJOR_REV</td><td class=CDLDescription>&rsquo;1&rsquo;</td></tr><tr><td class=CDLEntry>UVM_MINOR_REV</td><td class=CDLDescription>&rsquo;2&rsquo;</td></tr><tr><td class=CDLEntry>UVM_FIX_REV</td><td class=CDLDescription>&rsquo;undefined&rsquo;</td></tr></table><h4 class=CHeading>Example with UVM version 1.1a</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>UVM_MAJOR_REV</td><td class=CDLDescription>&rsquo;1&rsquo;</td></tr><tr><td class=CDLEntry>UVM_MINOR_REV</td><td class=CDLDescription>&rsquo;1&rsquo;</td></tr><tr><td class=CDLEntry>UVM_FIX_REV</td><td class=CDLDescription>&rsquo;a&rsquo;</td></tr></table></div></div></div>




 <!--CONTENT index=2 -->
<div class="CMacro"><div class=CTopic><h3 class=CTitle><a name="UVM_MAJOR_REV" href="../../src/macros/uvm_version_defines.svh">UVM_MAJOR_REV</a></h3><div class=CBody><p>Defines the MAJOR revision number.</p><p>For UVM version 1.2, the MAJOR revision number is &lsquo;1&rsquo;</p><blockquote><pre>`define UVM_MAJOR_REV 1</pre></blockquote></div></div></div>




 <!--CONTENT index=3 -->
<div class="CMacro"><div class=CTopic><h3 class=CTitle><a name="UVM_MINOR_REV" href="../../src/macros/uvm_version_defines.svh">UVM_MINOR_REV</a></h3><div class=CBody><p>Defines the MINOR revision number.</p><p>For UVM version 1.2, the MINOR revision number is &lsquo;2&rsquo;</p><blockquote><pre>`define UVM_MINOR_REV 2</pre></blockquote></div></div></div>




 <!--CONTENT index=4 -->
<div class="CMacro"><div class=CTopic><h3 class=CTitle><a name="UVM_FIX_REV" href="../../src/macros/uvm_version_defines.svh">UVM_FIX_REV</a></h3><div class=CBody><p>(Optionally) Defines the FIX revision letter.</p><p>For the first &ldquo;X.Y&rdquo; release of the UVM, there is no FIX revision letter.&nbsp;  In these cases, the UVM_FIX_REV is left undefined.</p><p>For any subsequent &ldquo;X.Y&rdquo; fix releases, the UVM_FIX_REV value is set to the appropriate fix release letter.</p><h4 class=CHeading>Example</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>1.1</td><td class=CDLDescription>First release, UVM_FIX_REV is undefined</td></tr><tr><td class=CDLEntry>1.1a</td><td class=CDLDescription>Fix release, UVM_FIX_REV is &lsquo;a&rsquo;</td></tr></table></div></div></div>




 <!--CONTENT index=5 -->
<div class="CMacro"><div class=CTopic><h3 class=CTitle><a name="UVM_NAME" href="../../src/macros/uvm_version_defines.svh">UVM_NAME</a></h3><div class=CBody><p>The name used by the library when displaying the name of the library.</p><blockquote><pre>`define UVM_NAME UVM</pre></blockquote></div></div></div>




 <!--CONTENT index=6 -->
<div class="CMacro"><div class=CTopic><h3 class=CTitle><a name="UVM_VERSION_STRING" href="../../src/macros/uvm_version_defines.svh">UVM_VERSION_STRING</a></h3><div class=CBody><p>Provides a string-ized version of the UVM Library version number.</p><p>When there is a FIX_REV, the string is &ldquo;&lt;name&gt;-&lt;major&gt;.&lt;minor&gt;&lt;fix&gt;&rdquo; (such as &ldquo;UVM-1.1d&rdquo;).&nbsp; When there is NO FIX_REV, the string is &ldquo;&lt;name&gt;-&lt;major&gt;.&lt;minor&gt;&rdquo; (such as &ldquo;UVM-1.2&rdquo;).</p></div></div></div>




 <!--CONTENT index=7 -->
<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Conditional_Compilation" href="../../src/macros/uvm_version_defines.svh">Conditional Compilation</a></h3><div class=CBody><p>These macros provide the ability to conditionally compile based on the revision of the library which is being used.</p><p>These macros are required for conditional compilation, as SystemVerilog does not support conditionals with `ifdefs.</p><h4 class=CHeading>For example</h4><blockquote><pre> // Illegal:
`if (UVM_MAJOR_REV == 1)

// Legal:
`ifdef UVM_MAJOR_REV_1</pre></blockquote></div></div></div>




 <!--CONTENT index=8 -->
<div class="CMacro"><div class=CTopic><h3 class=CTitle><a name="UVM_MAJOR_REV_1" href="../../src/macros/uvm_version_defines.svh">UVM_MAJOR_REV_1</a></h3><div class=CBody><p>Indicates that the MAJOR version of this release is &lsquo;1&rsquo;.</p><blockquote><pre>`define UVM_MAJOR_REV_1</pre></blockquote></div></div></div>




 <!--CONTENT index=9 -->
<div class="CMacro"><div class=CTopic><h3 class=CTitle><a name="UVM_MINOR_REV_2" href="../../src/macros/uvm_version_defines.svh">UVM_MINOR_REV_2</a></h3><div class=CBody><p>Indicates that the MINOR version of this release is &lsquo;2&rsquo;.</p><blockquote><pre>`define UVM_MINOR_REV_2</pre></blockquote></div></div></div>




 <!--CONTENT index=10 -->
<div class="CMacro"><div class=CTopic><h3 class=CTitle><a name="UVM_VERSION_1_2" href="../../src/macros/uvm_version_defines.svh">UVM_VERSION_1_2</a></h3><div class=CBody><p>Indicates that the version of this release is &lsquo;1.2&rsquo;.</p><blockquote><pre>`define UVM_VERSION_1_2</pre></blockquote></div></div></div>




 <!--CONTENT index=11 -->
<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="UVM_Version_Ladder" href="../../src/macros/uvm_version_defines.svh">UVM Version Ladder</a></h3></div></div>




 <!--CONTENT index=12 -->
<div class="CMacro"><div class=CTopic><h3 class=CTitle><a name="UVM_POST_VERSION_1_1" href="../../src/macros/uvm_version_defines.svh">UVM_POST_VERSION_1_1</a></h3><div class=CBody><p>Indicates that this version of the UVM came after the 1.1 versions, including the various 1.1 fix revisions.</p><p>The first UVM version wherein this macro is defined is 1.2, and the macro will continue to be defined for all future revisions of the UVM library.</p><blockquote><pre>`define UVM_POST_VERSION_1_1</pre></blockquote></div></div></div>

</div><!--Content-->



<!--START_ND_TOOLTIPS-->
<!--END_ND_TOOLTIPS-->

<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>