<html xmlns:xd="http://www.pnp-software.com/XSLTdoc">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Leakage Power</title>
<link rel="stylesheet" type="text/css" href="./resource/css/Basic.css">
<link rel="stylesheet" type="text/css" href="./resource/css/CellLib.css">
<link rel="stylesheet" type="text/css" href="./resource/css/BasicHtml.css">
<link rel="stylesheet" type="text/css" href="./resource/css/CellLibHtml.css">
<script type="text/javascript">
        var openImg = "./resource/image/open_square.gif";
        var closeImg = "./resource/image/close_square.gif";
      </script><script type="text/javascript" src="./resource/js/main.js"></script><script>
        function hidestatus(){
        window.status='';
        return true;
        }
        document.onmouseover=hidestatus;
        document.onmouseout=hidestatus;
      </script>
</head>
<body onLoad="NanInit();">
<a id="PageInfo" RootPath="." CellPath="Cells/" SummName="SP" Corner="LowPowerOpenCellLibrary_fast_ccs_fast" RefNode="" TrgNode="" FileExt=".html" Focus="correlation" RefFile="StaticPowerConsumption_.html" TrgFile="StaticPowerConsumption_.html"></a><table class="navigation" width="100%">
<colgroup>
<col>
<col>
</colgroup>
<tr class="navigation" colspan="2" align="center"></tr>
<tr>
<td align="left"><a href="http://www.nangate.com" target="_blank"><img src="./resource/image/NangateLogo.gif" border="0"></a></td>
<td align="center"><p class="Title">Leakage Power</p></td>
<td align="right"><img src="./resource/image/Logo.png" border="0"></td>
</tr>
</table>
<hr class="navigation_tt">
<table width="100%" summary="Navigation header" class="navigation"><tr>
<td width="33%" align="left"><a href="TotalFullCyclePower_LowPowerOpenCellLibrary_fast_ccs_fast.html">Previous (Total Full-Cycle Power)
      </a></td>
<td width="33%" align="center"><a href="CornerList.html">Up (Table of Contents)
      </a></td>
<td width="33%" align="right"></td>
</tr></table>
<hr class="navigation_tb">
<table class="navigation" width="100%">
<colgroup>
<col>
<col>
</colgroup>
<tr>
<td align="left"><p class="copyright">Databook Build Date: Wednesday Aug 17 19:29 2011</p></td>
<td align="right"><p class="copyright">Copyright © 2004-2010 Nangate Inc.</p></td>
</tr>
</table>
          Datasheet for characterization corner: <span class="bold">LowPowerOpenCellLibrary_fast_ccs_fast</span>
            , library <span class="bold">
"LowPowerOpenCellLibrary"</span>.
        
   
    Eventual numbers in <i>italic</i> show that the values have required interpolations due to internal data manipulation and/or non-matching LUT index templates.

    <p></p>
<p>
      This section presents the 
      <span class="bold"> cell leakage power </span>
      for all cells.
      See <a href="#Notes">notes</a> for additional information.
    </p>
<a name="Table_0"><table class="Caption">
<colgroup>
<col>
<col>
</colgroup>
<tr>
<td onClick="tBr('_Table_0');"><a class="Caption" href="javascript:;"><span id="I_Table_0"><img border="0" src="./resource/image/open_square.gif"></span>  
                </a></td>
<td><a onClick="tBr('_Table_0');" class="Caption" href="javascript:;">
          Leakage Power
        </a></td>
<td>        <span class="extra">  @ strength: 1  </span>
</td>
</tr>
</table>
<span id="_Table_0" eName="Leakage Power"><hr class="Title">
<div ngTable="sumSc" sumSc="12" entries="AON_BUF_X1;[pW];20828.25;;$AON_INV_X1;[pW];10412.42;;$HEADER_OE_X1;[pW];17206305.39;;$HEADER_X1;[pW];17183341.19;;$ISO_FENCE0N_X1;[pW];44063.57;;$ISO_FENCE0_X1;[pW];24674.44;;$ISO_FENCE1N_X1;[pW];23327.91;;$ISO_FENCE1_X1;[pW];40686.38;;$LS_HLEN_X1;[pW];1584824.28;;$LS_HL_X1;[pW];1578799.78;;$LS_LHEN_X1;[pW];61909.90;;$LS_LH_X1;[pW];37490.69;;$"></div>
<hr class="Title"></span></a><a name="Table_1"><table class="Caption">
<colgroup>
<col>
<col>
</colgroup>
<tr>
<td onClick="tBr('_Table_1');"><a class="Caption" href="javascript:;"><span id="I_Table_1"><img border="0" src="./resource/image/open_square.gif"></span>  
                </a></td>
<td><a onClick="tBr('_Table_1');" class="Caption" href="javascript:;">
          Leakage Power
        </a></td>
<td>        <span class="extra">  @ strength: 2  </span>
</td>
</tr>
</table>
<span id="_Table_1" eName="Leakage Power"><hr class="Title">
<div ngTable="sumSc" sumSc="12" entries="AON_BUF_X2;[pW];32666.44;;$AON_INV_X2;[pW];22242.43;;$HEADER_OE_X2;[pW];35330514.13;;$HEADER_X2;[pW];35300934.60;;$ISO_FENCE0N_X2;[pW];65803.01;;$ISO_FENCE0_X2;[pW];50300.30;;$ISO_FENCE1N_X2;[pW];48109.15;;$ISO_FENCE1_X2;[pW];57355.03;;$LS_HLEN_X2;[pW];1591838.13;;$LS_HL_X2;[pW];1585398.14;;$LS_LHEN_X2;[pW];67673.14;;$LS_LH_X2;[pW];44778.08;;$"></div>
<hr class="Title"></span></a><a name="Table_2"><table class="Caption">
<colgroup>
<col>
<col>
</colgroup>
<tr>
<td onClick="tBr('_Table_2');"><a class="Caption" href="javascript:;"><span id="I_Table_2"><img border="0" src="./resource/image/open_square.gif"></span>  
                </a></td>
<td><a onClick="tBr('_Table_2');" class="Caption" href="javascript:;">
          Leakage Power
        </a></td>
<td>        <span class="extra">  @ strength: 4  </span>
</td>
</tr>
</table>
<span id="_Table_2" eName="Leakage Power"><hr class="Title">
<div ngTable="sumSc" sumSc="12" entries="AON_BUF_X4;[pW];54935.19;;$AON_INV_X4;[pW];44484.96;;$HEADER_OE_X4;[pW];71345870.99;;$HEADER_X4;[pW];71201371.42;;$ISO_FENCE0N_X4;[pW];130270.12;;$ISO_FENCE0_X4;[pW];100600.80;;$ISO_FENCE1N_X4;[pW];96218.30;;$ISO_FENCE1_X4;[pW];111356.06;;$LS_HLEN_X4;[pW];1620256.13;;$LS_HL_X4;[pW];1599347.37;;$LS_LHEN_X4;[pW];87471.47;;$LS_LH_X4;[pW];65351.65;;$"></div>
<hr class="Title"></span></a><a name="Notes"><table class="Caption">
<colgroup>
<col>
<col>
</colgroup>
<tr>
<td onClick="tBr('_Notes');"><a class="Caption" href="javascript:;"><span id="I_Notes"><img border="0" src="./resource/image/open_square.gif"></span>  
                </a></td>
<td><a onClick="tBr('_Notes');" class="Caption" href="javascript:;">Notes</a></td>
</tr>
</table>
<span id="_Notes"><ul>
<li>
<li>
<span><a></a></span>Conditions for characterization library 
            <span class="bold">LowPowerOpenCellLibrary</span>, corner 
              <span class="bold">LowPowerOpenCellLibrary_fast_ccs_fast</span>: 
            Vdd=
              <span class="bold">1.25</span>V, Tj=
              <span class="bold">.0</span> deg. C
            .
          <br xmlns:fn="http://www.w3.org/2005/02/xpath-functions">
</li>
</ul></span></a><hr class="navigation_bt">
<table width="100%" summary="Navigation header" class="navigation"><tr>
<td width="33%" align="left"><a href="TotalFullCyclePower_LowPowerOpenCellLibrary_fast_ccs_fast.html">Previous (Total Full-Cycle Power)
      </a></td>
<td width="33%" align="center"><a href="CornerList.html">Up (Table of Contents)
      </a></td>
<td width="33%" align="right"></td>
</tr></table>
<hr class="navigation_bb">
<table class="navigation" width="100%">
<colgroup>
<col>
<col>
</colgroup>
<tr>
<td align="left"><p class="copyright">Databook Build Date: Wednesday Aug 17 19:29 2011</p></td>
<td align="right"><p class="copyright">Copyright © 2004-2010 Nangate Inc.</p></td>
</tr>
</table>
</body>
</html>
