<liclass="toctree-l4"><aclass="reference internal"href="../UsersGuide/Installation.html#the-actively-developed-branch">The actively developed branch</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../UsersGuide/Installation.html#installing-on-redhat-or-compatible-distributions">Installing on <spanclass="sc">RedHat</span> or compatible distributions</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../UsersGuide/Installation.html#building-a-debug-enabled-version">Building a Debug Enabled Version</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../UsersGuide/Installation.html#installing-on-debian-9-ubuntu-18-or-compatible-distributions">Installing on <spanclass="sc">Debian</span> 9, <spanclass="sc">Ubuntu</span> 18 or compatible distributions</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../UsersGuide/Installation.html#additionnal-requirement-under-macos">Additionnal Requirement under <spanclass="sc">MacOS</span></a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../UsersGuide/Installation.html#hooking-up-into-alliance">Hooking up into <spanclass="sc">Alliance</span></a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../UsersGuide/Installation.html#setting-up-the-environment-coriolisenv-py">Setting up the Environment (coriolisEnv.py)</a></li>
</ul>
</li>
<liclass="toctree-l2"><aclass="reference internal"href="../UsersGuide/Configuration.html">Coriolis Configuration & Initialisation</a><ul>
<liclass="toctree-l3"><aclass="reference internal"href="../UsersGuide/Configuration.html#hacking-the-configuration-files">Hacking the Configuration Files</a></li>
</ul>
</li>
<liclass="toctree-l2"><aclass="reference internal"href="../UsersGuide/ViewerTools.html">CGT - The Graphical Interface</a><ul>
<liclass="toctree-l3"><aclass="reference internal"href="../UsersGuide/ViewerTools.html#viewer-tools">Viewer & Tools</a><ul>
<liclass="toctree-l4"><aclass="reference internal"href="../UsersGuide/ViewerTools.html#synthetizing-and-loading-a-design">Synthetizing and loading a design</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../UsersGuide/ViewerTools.html#executing-python-scripts-in-cgt">Executing Python Scripts in Cgt</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../UsersGuide/ViewerTools.html#printing-snapshots">Printing & Snapshots</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../UsersGuide/ViewerTools.html#memento-of-shortcuts-in-graphic-mode">Memento of Shortcuts in Graphic Mode</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../UsersGuide/ViewerTools.html#cgt-command-line-options">Cgt Command Line Options</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonTutorial/Introduction.html#various-kinds-of-constructors">1.3 Various Kinds of Constructors</a></li>
</ul>
</li>
<liclass="toctree-l2"><aclass="reference internal"href="../PythonTutorial/Environment.html">2. Setting up the Environment</a><ul>
<liclass="toctree-l4"><aclass="reference internal"href="../PythonTutorial/Environment.html#the-techno-py-file">2.2.1 The <spanclass="cb">techno.py</span> File</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../PythonTutorial/Environment.html#the-settings-py-file">2.2.2 The <spanclass="cb">settings.py</span> File</a></li>
</ul>
</li>
</ul>
</li>
<liclass="toctree-l2"><aclass="reference internal"href="../PythonTutorial/CellNetComponent.html">3. Making a Standard Cell – Layout</a><ul>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonTutorial/CellNetComponent.html#the-allianceframework-crl-core">3.1 The AllianceFramework (CRL Core)</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonTutorial/CellNetComponent.html#creating-a-new-cell-crl-core">3.3 Creating a new Cell (CRL Core)</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonTutorial/CellNetComponent.html#the-dbu-measurement-unit">3.4 The DbU Measurement Unit</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonTutorial/CellNetComponent.html#setting-up-the-abutment-box">3.5 Setting up the Abutment Box</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonTutorial/CellNetComponent.html#adding-nets-and-components">3.6 Adding Nets and Components</a><ul>
<liclass="toctree-l4"><aclass="reference internal"href="../PythonTutorial/CellNetComponent.html#getting-a-layer">3.6.1 Getting a Layer</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../PythonTutorial/CellNetComponent.html#creating-a-net">3.6.2 Creating a Net</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../PythonTutorial/CellNetComponent.html#id1">3.6.3 Creating a Component</a></li>
</ul>
</li>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonTutorial/CellNetComponent.html#saving-to-disk-crl-core">3.7 Saving to Disk (CRL Core)</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonTutorial/CellNetComponent.html#the-complete-example-file">3.8 The Complete Example File</a></li>
</ul>
</li>
<liclass="toctree-l2"><aclass="reference internal"href="../PythonTutorial/Collections.html">4. Manipulating Cells, Nets and Components</a><ul>
<liclass="toctree-l4"><aclass="reference internal"href="../PythonTutorial/Collections.html#restrictions-about-using-collections">4.1.1 Restrictions about using Collections</a></li>
</ul>
</li>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonTutorial/Collections.html#loading-a-cell-with-allianceframework">4.2 Loading a Cell with AllianceFramework</a></li>
</ul>
</li>
<liclass="toctree-l2"><aclass="reference internal"href="../PythonTutorial/CgtScript.html">5. Make a script runnable through <spanclass="cb">cgt</span></a><ul>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonTutorial/CgtScript.html#using-breakpoints">5.1 Using Breakpoints</a></li>
</ul>
</li>
<liclass="toctree-l2"><aclass="reference internal"href="../PythonTutorial/Netlist.html">6. Making a hierarchical Cell – Netlist</a><ul>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonTutorial/Netlist.html#creating-an-instance">6.1 Creating an Instance</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonTutorial/Netlist.html#id1">6.2 Creating Nets and connecting to Instances</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonTutorial/Netlist.html#power-supplies-special-case">6.3 Power supplies special case</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonTutorial/Netlist.html#creating-the-physical-view-of-a-cell-netlist">6.4 Creating the physical view of a Cell netlist</a><ul>
<liclass="toctree-l4"><aclass="reference internal"href="../PythonTutorial/Netlist.html#placing-an-instance">6.4.2 Placing an Instance</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../PythonTutorial/Netlist.html#nets-from-plugs-to-routingpads">6.4.3 Nets – From Plugs to RoutingPads</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonTutorial/Netlist.html#the-complete-example-file">6.5 The Complete Example File</a></li>
</ul>
</li>
<liclass="toctree-l2"><aclass="reference internal"href="../PythonTutorial/RealDesigns.html">7. Working in real mode</a><ul>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonTutorial/RealDesigns.html#loading-a-lef-file">7.1 Loading a <spanclass="sc">lef</span> file</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonTutorial/RealDesigns.html#loading-a-blif-file-yosys">7.2 Loading a <spanclass="sc">blif</span> file –<spanclass="sc">Yosys</span></a></li>
<liclass="toctree-l4"><aclass="reference internal"href="Language.html#arithmetic-package-of-stratus">Arithmetic package of stratus</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="Language.html#arithmetic-generators-and-some-stratus-packages">Arithmetic generators and some stratus packages</a></li>
<liclass="toctree-l2"><aclass="reference internal"href="../ConfigurationTechnology/Architecture.html#directory-tree-structure">2. Directory Tree Structure</a></li>
<liclass="toctree-l2"><aclass="reference internal"href="../PythonCpp/DBoHierarchy.html">4. Case 2 - Hierarchy of DBo Derived Classes</a><ul>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonCpp/DBoHierarchy.html#base-class-header">4.1 Base Class Header</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonCpp/DBoHierarchy.html#base-class-file">4.2 Base Class File</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonCpp/DBoHierarchy.html#intermediate-class-header">4.3 Intermediate Class Header</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonCpp/DBoHierarchy.html#intermediate-class-file">4.4 Intermediate Class File</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonCpp/DBoHierarchy.html#terminal-class-header">4.5 Terminal Class Header</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../PythonCpp/DBoHierarchy.html#terminal-class-file">4.6 Terminal Class File</a></li>
<h3>Description part<aclass="headerlink"href="#description-part"title="Permalink to this headline">¶</a></h3>
<p>After all signals are declared, you can begin the description part (see
<codeclass="docutils literal"><spanclass="pre">pattern_begin</span></code> [pattern:sub:<cite>b</cite>egin]). In this part you have to
define input values which are to be applied to the inputs of the circuit
or output values which are to be compare with the values produced during
the simulation. (see <codeclass="docutils literal"><spanclass="pre">affect</span></code> [affect], <codeclass="docutils literal"><spanclass="pre">affect_any</span></code>
[affect:sub:<cite>a</cite>ny], <codeclass="docutils literal"><spanclass="pre">affect_int</span></code> [affect:sub:<cite>i</cite>nt] and
<codeclass="docutils literal"><spanclass="pre">affect_fix</span></code> [affect:sub:<cite>f</cite>ix]). <codeclass="docutils literal"><spanclass="pre">Pattern</span></code> method describes the
stimulus by event : only signal transitions are described. After each
event there is a new input in the pattern file (see <codeclass="docutils literal"><spanclass="pre">addpat</span></code>
[addpat]). Last thing you should do in this part is to generate the
output file (see <codeclass="docutils literal"><spanclass="pre">pattern_end</span></code> [pattern:sub:<cite>e</cite>nd]).</p>
</div>
</div>
<divclass="section"id="methods">
<h2>Methods<aclass="headerlink"href="#methods"title="Permalink to this headline">¶</a></h2>
<divclass="section"id="patwrite">
<h3>PatWrite<aclass="headerlink"href="#patwrite"title="Permalink to this headline">¶</a></h3>
<p>This class is used to create patterns for <em>Stratus</em> models. Currently it
only supports Alliance “.pat” pattern format. Patterns time stamps are
in the “absolute date” format, “relative date” isn’t allowed. Legal time
unit are ps (default), ns, us and ms. The constructor takes as
parameters the pattern output filename and an optional reference to
Stratus cell.</p>
</div>
<divclass="section"id="declar">
<h3>declar<aclass="headerlink"href="#declar"title="Permalink to this headline">¶</a></h3>
<p>Adds a connector from a Stratus model to the pattern interface. Writes
the corresponding connector declaration in the pattern file with name,
arity and direction automatically extracted from the connector
properties.
Supported Stratus connectors are:</p>
<ulclass="simple">
<li>SignalIn,</li>
<li>SignalOut (only supported if used as an output),</li>
<li>VddIn,</li>
<li>VssIn,</li>
<li>CkIn,</li>
<li>SignalInOut,</li>
<li>TriState (always an output),</li>
<li>Signals.</li>
</ul>
<divclass="section"id="parameters">
<h4>Parameters<aclass="headerlink"href="#parameters"title="Permalink to this headline">¶</a></h4>
<ulclass="simple">
<li>connector : can either be a reference to a stratus net or a string
containing the name of the stratus net.</li>
<li>format : optional format for the connectors values into the pattern
file, accepted values are :<ul>
<li>’B’: binary (default),</li>
<li>’X’: hexadecimal,</li>
<li>’O’: octal.</li>
</ul>
</li>
</ul>
</div>
</div>
<divclass="section"id="declar-interface">
<h3>declar_interface<aclass="headerlink"href="#declar-interface"title="Permalink to this headline">¶</a></h3>
<p>Adds all the connectors from a Stratus model to the pattern interface.
Write the corresponding connector declaration in the pattern file with
name, arity and direction directly taken from the connector proprieties.</p>
<divclass="section"id="id1">
<h4>Parameters<aclass="headerlink"href="#id1"title="Permalink to this headline">¶</a></h4>
<ulclass="simple">
<li>cell : the tested Stratus model reference. Optional if a reference to
the tested Stratus model was given during instanciation[patwrite].</li>
<li>format : optional format for the connectors values into the pattern
file, accepted values are :<ul>
<li>’B’: binary (default),</li>
<li>’X’: hexadecimal,</li>
<li>’O’: octal.</li>
</ul>
</li>
</ul>
</div>
</div>
<divclass="section"id="id2">
<h3>declar<aclass="headerlink"href="#id2"title="Permalink to this headline">¶</a></h3>
<p>Affect a string value to a connector.</p>
<divclass="section"id="id3">
<h4>Parameters<aclass="headerlink"href="#id3"title="Permalink to this headline">¶</a></h4>
<ulclass="simple">
<li>connector : <em>Stratus</em> connector</li>
<li>value : string to affect to connector</li>
</ul>
</div>
</div>
<divclass="section"id="affect-int">
<h3>affect_int<aclass="headerlink"href="#affect-int"title="Permalink to this headline">¶</a></h3>
<p>Affect an integer (CA2) value to a connector. Convert the 2’s complement
value to the corresponding binary value. The binary size is taken from
the connector arity. If the connector is an output, the binary value is
preceded by “?”.</p>
<divclass="section"id="id4">
<h4>Parameters<aclass="headerlink"href="#id4"title="Permalink to this headline">¶</a></h4>
<ulclass="simple">
<li>connector : <em>Stratus</em> connector.</li>
<li>value : 2’s complement value to affect to the connector.</li>
</ul>
</div>
</div>
<divclass="section"id="affect-fix">
<h3>affect_fix<aclass="headerlink"href="#affect-fix"title="Permalink to this headline">¶</a></h3>
<p>Affect a fixed point value to a connector. Convert the floating point
input value to the corresponding fixed point value with
word_length=connector.arity() and integer_word_length=iwl. If the
connector is an output, the binary value is preceded by “?”.</p>
<divclass="section"id="id5">
<h4>Parameters<aclass="headerlink"href="#id5"title="Permalink to this headline">¶</a></h4>
<ulclass="simple">
<li>connector : <em>Stratus</em> connector.</li>
<li>value : floating point value to convert and asign to connector.</li>
<li>iwl : integer word length</li>
</ul>
</div>
</div>
<divclass="section"id="affect-any">
<h3>affect_any<aclass="headerlink"href="#affect-any"title="Permalink to this headline">¶</a></h3>
<p>Disable comparison between this connector value and the one calculated
during simulation.</p>
<divclass="section"id="id6">
<h4>Parameters<aclass="headerlink"href="#id6"title="Permalink to this headline">¶</a></h4>
<ulclass="simple">
<li>connector : <em>Stratus</em> connector.</li>
</ul>
</div>
</div>
<divclass="section"id="addpat">
<h3>addpat<aclass="headerlink"href="#addpat"title="Permalink to this headline">¶</a></h3>
<p>Adds a pattern in the pattern file.</p>
</div>
<divclass="section"id="pattern-begin">
<h3>pattern_begin<aclass="headerlink"href="#pattern-begin"title="Permalink to this headline">¶</a></h3>
<p>Mark the end of the interface declaration and the beginning of the test
vectors.</p>
</div>
<divclass="section"id="pattern-end">
<h3>pattern_end<aclass="headerlink"href="#pattern-end"title="Permalink to this headline">¶</a></h3>
<p>Mark the end of the test vectors and of the patterns file.</p>
</div>
</div>
<divclass="section"id="example">
<h2>Example<aclass="headerlink"href="#example"title="Permalink to this headline">¶</a></h2>
<p><codeclass="docutils literal"><spanclass="pre">Pattern</span></code> method for an addaccu</p>