diff --git a/documentation/output/pages/documentation.html b/documentation/output/pages/documentation.html index 9bdcbda0..8006718e 100644 --- a/documentation/output/pages/documentation.html +++ b/documentation/output/pages/documentation.html @@ -4,7 +4,7 @@ - + @@ -125,6 +125,11 @@
Alliance Installation
How to get, build & install Alliance alongside Coriolis
+
+
+`Alliance Check Toolkit`_
+Regression tests & examples
+
@@ -181,6 +186,12 @@ Cadence Documentation of LEF 5.8 C++ API

Cadence Documentation of DEF 5.8 C++ API

+ +
+

Docutils System Messages

+
+

System Message: ERROR/3 (/dsk/l1/jpc/coriolis-2.x/src/coriolis/documentation/content/pages/documentation.rst, line 38); backlink

+Unknown target name: "alliance check toolkit".
diff --git a/documentation/output/pages/gitlab.html b/documentation/output/pages/gitlab.html index 3832450a..7b0a6157 100644 --- a/documentation/output/pages/gitlab.html +++ b/documentation/output/pages/gitlab.html @@ -4,7 +4,7 @@ - + @@ -122,8 +122,8 @@

The git repositories of all the components of the project:

--++ @@ -132,13 +132,13 @@ - + - + - +
Component
Alliancehttps://gitlab.lip6.fr/jpc/alliance.githttps://gitlab.lip6.fr/vlsi-eda/alliance.git
Coriolishttps://gitlab.lip6.fr/jpc/coriolis.githttps://gitlab.lip6.fr/vlsi-eda/coriolis.git
Alliance Check Toolkithttps://gitlab.lip6.fr/jpc/alliance-check-toolkit.githttps://gitlab.lip6.fr/vlsi-eda/alliance-check-toolkit.git
diff --git a/documentation/output/pages/python-cpp.html b/documentation/output/pages/python-cpp.html index 456a7a24..74bb5083 100644 --- a/documentation/output/pages/python-cpp.html +++ b/documentation/output/pages/python-cpp.html @@ -4,7 +4,7 @@ - + @@ -119,22 +119,26 @@ -

Printable version of this document PythonCpp.pdf.

+
+

Printable version of this Document

+

PythonCpp.pdf

Contents

+
-

1. Introduction

+

1. Introduction

-

2. Basic File Structure and CMake configuration

+

2. Basic File Structure and CMake configuration

As a first example we will consider the Hurrican::Library class. To export a class into Python, we must create three files:

    @@ -331,7 +335,7 @@ associated C++ namespace.
-

3. Case 1 - DBo Derived, Standalone

+

3. Case 1 - DBo Derived, Standalone

As example, we take Library. This a DBo derived class, but we choose not to export the parent classes. From Python, it will appear as a base class.

@@ -660,7 +664,7 @@ the module itself. This allow to mimic closely the C++ syntax:

-

4. Case 2 - Hierarchy of DBo Derived Classes

+

4. Case 2 - Hierarchy of DBo Derived Classes

Now we want to export the following C++ class hierarchy into Python:

 PyEntity <-- PyComponent <-+- PyContact
@@ -1060,7 +1064,7 @@ terminal or not.
 
-

5. Case 3 - Non-DBo Standalone Classe

+

5. Case 3 - Non-DBo Standalone Classe

Let's have a look at the encapsulation of Hurricane::Point.

Non-BDo derived classes do not support the bi-directionnal communication. So each Python object is associated with one C++ object. The C++ object @@ -1213,7 +1217,7 @@ a standalone DBo class and a non- -

6. Encapsulating DbU

+

6. Encapsulating DbU

While Hurricane::DbU is a class, the Hurricane::DbU::Unit is only a typedef over uint64_t. The DbU class only provides a set of static methods to manipulate and convert to and from other units. @@ -1261,7 +1265,7 @@ the DbU::Unit  PyAny_

diff --git a/documentation/output/pages/python-tutorial.html b/documentation/output/pages/python-tutorial.html index 5fce4de6..7a75478a 100644 --- a/documentation/output/pages/python-tutorial.html +++ b/documentation/output/pages/python-tutorial.html @@ -4,7 +4,7 @@ - + @@ -119,32 +119,36 @@ -

Printable version of this document PythonTutorial.pdf.

-

First, a small disclaimer. This tutorial assumes that you are already familiar -with the concepts of vlsi designs, such as netlist, layout, instances -and hierarchical design.

+
-

1. Introduction

+

1. Introduction

This tutorial is aimed at two goals :

  • Presenting how to use Python scripts to control Coriolis.
  • @@ -276,7 +280,7 @@ to be explicitly deleted.

-

2. Setting up the Environment

+

2. Setting up the Environment

2.1 Setting up the Paths

To simplify the tedious task of configuring your environment, a helper is provided. @@ -352,7 +356,7 @@ in CGT - The

-

3. Making a Standard Cell -- Layout

+

3. Making a Standard Cell -- Layout

In this part, we will show how to create and save a terminal Cell, that is, a cell without instances (the end point of a hierarchical design). To illustrate the case we will draw the layout of a @@ -658,7 +662,7 @@ explanation of that part of the code, refer to

-

4. Manipulating Cells, Nets and Components

+

4. Manipulating Cells, Nets and Components

In this part, we will show how to navigate through the Nets and Components of a Cell.

4.1 Hurricane Collections

@@ -729,7 +733,7 @@ may unexpectedly shadow cells from the libraries.

-

5. Make a script runnable through cgt

+

5. Make a script runnable through cgt

To use your script you may run it directly like any other Python script. But, for debugging purpose it may be helpful to run it through the interactive layout viewer cgt.

@@ -801,7 +805,7 @@ The Breakpoint.stop() function takes two argum
-

6. Making a hierarchical Cell -- Netlist

+

6. Making a hierarchical Cell -- Netlist

To illustrate the topic, we will build the netlist of a fulladder from standard cell.

The fulladder netlist

@@ -1157,7 +1161,7 @@ directory (under the the root of the Coriolis installati
-

7. Working in real mode

+

7. Working in real mode

The AllianceFramework only manages symbolic layout as Alliance does. But Coriolis is also able to work directly in real mode, meaning that distances will be expressed in microns instead of lambdas.

@@ -1196,7 +1200,7 @@ the one of the FreePDK45, you must load it prior to calling the
-

8. Tool Engines (CRL Core)

+

8. Tool Engines (CRL Core)

The ToolEngine class is the base class for all tools developped in Coriolis. In the rest of the tutorial we will use the names tool or engine as synonyms.

@@ -1396,7 +1400,7 @@ case it is around 3%.

-

9. Advanced Topics

+

9. Advanced Topics

This is a place holder as well as a reminder to myself to write this part of the documentation.

diff --git a/documentation/output/pages/rds.html b/documentation/output/pages/rds.html index 36057170..7b11dc84 100644 --- a/documentation/output/pages/rds.html +++ b/documentation/output/pages/rds.html @@ -4,7 +4,7 @@ - + @@ -119,35 +119,39 @@ -

Disclaimer: This document is still far from complete.

-

Printable version of this document RDS.pdf.

+
-

Symbolic Layout

+

Symbolic Layout

-

Symbolic Components

+

Symbolic Components

A symbolic layout is, in practice, made of only of three objects:

@@ -308,7 +312,7 @@ name stuck...

-

Symbolic Segments

+

Symbolic Segments

In Alliance, segments are oriented (up, down, left, right). This disambiguate the left or right side when using the LCW and RCW rules in the rds file. It allows to generate, if needed, asymetric object in the real layout file.

@@ -317,7 +321,7 @@ It allows to generate, if needed, asymetric object in the real layout file.

-

The RDS File

+

The RDS File

The RDS file control how a symbolic layout is transformed into it's real conterpart.

@@ -357,7 +361,7 @@ conterpart.

-

Physical Grid & Lambda Value

+

Physical Grid & Lambda Value

RDS file:

 DEFINE  PHYSICAL_GRID  0.005
@@ -374,7 +378,7 @@ the LAMBDA value can be any multiple of the fo
 
 
-

The MBK_TO_RDS_SEGMENT table

+

The MBK_TO_RDS_SEGMENT table

The MBK_TO_RDS_SEGMENT table control the way segments are translated into real rectangles. Be aware that we are translating segments and not rectangles. Segments are defined by their axis (source & target points) and their width. @@ -469,7 +473,7 @@ rectangles).

-

The MBK_TO_RDS_VIA table

+

The MBK_TO_RDS_VIA table

This table is to translate default VIAs into real via. In the symbolic layout the default VIA is simply a point and a set of layers. All layers are converted in squares shapes centered on the VIA coordinate. The one dimension given is the @@ -503,7 +507,7 @@ END

-

The MBK_TO_RDS_BIGVIA_HOLE table

+

The MBK_TO_RDS_BIGVIA_HOLE table

In s2r, when generating BIGVIAs, the matrix of holes they contains is not draw relative to the position of the BIGVIA itself, but on a grid which is common througout all the design real layout. This is to allow overlap @@ -537,7 +541,7 @@ To avoid that case, if the either side of the BIGVIA is less than

-

The MBK_TO_RDS_BIGVIA_METAL table

+

The MBK_TO_RDS_BIGVIA_METAL table

This table describe how the metal part of a BIGVIA is expanded (for the hole part, see the previous table MBK_TO_RDS_BIGVIA_HOLE). The rule give for each metal:

@@ -568,7 +572,7 @@ END
-

The MBK_WIRESETTING table

+

The MBK_WIRESETTING table

From a strict standpoint this table shouldn't be here but put in a separate configuration file, because it contains informations only used by the symbolic layout tools (ocp, nero, ring).

diff --git a/documentation/output/pages/stratus-developpers.html b/documentation/output/pages/stratus-developpers.html index 72973c1f..3bf70959 100644 --- a/documentation/output/pages/stratus-developpers.html +++ b/documentation/output/pages/stratus-developpers.html @@ -4,7 +4,7 @@ - + @@ -119,17 +119,21 @@ -

Printable version of this document Stratus.pdf.

+
-

Class Model

+

Class Model

Synopsys

@@ -216,7 +220,7 @@ in separated files
 
-

Nets

+

Nets

Synopsys

@@ -328,7 +332,7 @@ operation with &, |, ^ ,
 
-

Instances

+

Instances

Synopsys

diff --git a/documentation/output/pages/stratus-dpgen.html b/documentation/output/pages/stratus-dpgen.html
index d917a85d..4f930bc8 100644
--- a/documentation/output/pages/stratus-dpgen.html
+++ b/documentation/output/pages/stratus-dpgen.html
@@ -4,7 +4,7 @@
         
         
         
-        
+        
         
         
 
@@ -119,52 +119,56 @@
 
 
 
-

Printable version of this document Stratus.pdf.

+
-

DpgenInv

+

DpgenInv

  • Name : DpgenInv – Inverter Macro-Generator

  • @@ -244,7 +248,7 @@ class inst_inv ( Model ) :
-

DpgenBuff

+

DpgenBuff

  • Name : DpgenBuff – Buffer Macro-Generator

  • @@ -324,7 +328,7 @@ class inst_buff ( Model ) :
-

DpgenNand2

+

DpgenNand2

  • Name : DpgenNand2 – Nand2 Macro-Generator

  • @@ -407,7 +411,7 @@ class inst_nand2 ( Model ) :
-

DpgenNand3

+

DpgenNand3

  • Name : DpgenNand3 – Nand3 Macro-Generator

  • @@ -493,7 +497,7 @@ class inst_nand3 ( Model ) :
-

Dpgennand4

+

Dpgennand4

  • Name : DpgenNand4 – Nand4 Macro-Generator

  • @@ -582,7 +586,7 @@ class inst_nand4 ( Model ) :
-

DpgenAnd2

+

DpgenAnd2

  • Name : DpgenAnd2 – And2 Macro-Generator

  • @@ -665,7 +669,7 @@ class inst_and2 ( Model ) :
-

DpgenAnd3

+

DpgenAnd3

  • Name : DpgenAnd3 – And3 Macro-Generator

  • @@ -751,7 +755,7 @@ class inst_and3 ( Model ) :
-

DpgenAnd4

+

DpgenAnd4

  • Name : DpgenAnd4 – And4 Macro-Generator

  • @@ -840,7 +844,7 @@ class inst_and4 ( Model ) :
-

DpgenNor2

+

DpgenNor2

  • Name : DpgenNor2 – Nor2 Macro-Generator

  • @@ -923,7 +927,7 @@ class inst_nor2 ( Model ) :
-

DpgenNor3

+

DpgenNor3

  • Name : DpgenNor3 – Nor3 Macro-Generator

  • @@ -1009,7 +1013,7 @@ class inst_nor3 ( Model ) :
-

DpgenNor4

+

DpgenNor4

  • Name : DpgenNor4 – Nor4 Macro-Generator

  • @@ -1099,7 +1103,7 @@ class inst_nor4 ( Model ) :
-

DpgenOr2

+

DpgenOr2

  • Name : DpgenOr2 – Or2 Macro-Generator

  • @@ -1183,7 +1187,7 @@ class inst_or2 ( Model ) :
-

DpgenOr3

+

DpgenOr3

  • Name : DpgenOr3 – Or3 Macro-Generator

  • @@ -1269,7 +1273,7 @@ class inst_or3 ( Model ) :
-

DpgenOr4

+

DpgenOr4

  • Name : DpgenOr4 – Or4 Macro-Generator

  • @@ -1358,7 +1362,7 @@ class inst_or4 ( Model ) :
-

DpgenXor2

+

DpgenXor2

  • Name : DpgenXor2 – Xor2 Macro-Generator

  • @@ -1441,7 +1445,7 @@ class inst_xor2 ( Model ) :
-

DpgenXnor2

+

DpgenXnor2

  • Name : DpgenXnor2 – Xnor2 Macro-Generator

  • @@ -1524,7 +1528,7 @@ class inst_xnor2 ( Model ) :
-

DpgenNmux2

+

DpgenNmux2

  • Name : DpgenNmux2 – Multiplexer Macro-Generator

  • @@ -1604,7 +1608,7 @@ class inst_nmux2 ( Model ) :
-

DpgenMux2

+

DpgenMux2

  • Name : DpgenMux2 – Multiplexer Macro-Generator

  • @@ -1692,7 +1696,7 @@ class inst_mux2 ( Model ) :
-

DpgenNbuse

+

DpgenNbuse

  • Name : DpgenNbuse – Tristate Macro-Generator

  • @@ -1770,7 +1774,7 @@ class inst_nbuse ( Model ) :
-

DpgenBuse

+

DpgenBuse

  • Name : DpgenBuse – Tristate Macro-Generator

  • @@ -1848,7 +1852,7 @@ class inst_buse ( Model ) :
-

DpgenNand2mask

+

DpgenNand2mask

  • Name : DpgenNand2mask – Programmable Mask Macro-Generator

  • @@ -1943,7 +1947,7 @@ class inst_nand2mask ( Model ) :
-

DpgenNor2mask

+

DpgenNor2mask

  • Name : DpgenNor2mask – Programmable Mask Macro-Generator

  • @@ -2038,7 +2042,7 @@ class inst_nor2mask ( Model ) :
-

DpgenXnor2mask

+

DpgenXnor2mask

  • Name : DpgenXnor2mask – Programmable Mask Macro-Generator

  • @@ -2133,7 +2137,7 @@ class inst_xnor2mask ( Model ) :
-

DpgenAdsb2f

+

DpgenAdsb2f

  • Name : DpgenAdsb2f – Adder/Substractor Macro-Generator

  • @@ -2224,7 +2228,7 @@ class inst_ADSB2F ( Model ) :
-

DpgenShift

+

DpgenShift

  • Name : DpgenShift – Shifter Macro-Generator

  • @@ -2304,7 +2308,7 @@ class inst_shifter ( Model ) :
-

DpgenShrot

+

DpgenShrot

  • Name : DpgenShrot – Shift/Rotation Macro-Generator

  • @@ -2388,7 +2392,7 @@ class inst_shrot ( Model ) :
-

DpgenNul

+

DpgenNul

  • Name : DpgenNul – Zero Detector Macro-Generator

  • @@ -2458,7 +2462,7 @@ class inst_nul ( Model ) :
-

DpgenConst

+

DpgenConst

  • Name : DpgenConst – Constant Macro-Generator

  • @@ -2532,7 +2536,7 @@ class inst_const ( Model ) :
-

DpgenRom2

+

DpgenRom2

  • Name : DpgenRom2 – 2 words ROM Macro-Generator

  • @@ -2610,7 +2614,7 @@ class inst_rom2 ( Model ) :
-

DpgenRom4

+

DpgenRom4

  • Name : DpgenRom4 – 4 words ROM Macro-Generator

  • @@ -2698,7 +2702,7 @@ class inst_rom4 ( Model ) :
-

DpgenRam

+

DpgenRam

  • Name : DpgenRam – RAM Macro-Generator

  • @@ -2778,7 +2782,7 @@ class inst_ram ( Model ) :
-

DpgenRf1

+

DpgenRf1

  • Name : DpgenRf1, DpgenRf1r0 – Register File Macro-Generator

  • @@ -2878,7 +2882,7 @@ class inst_rf1 ( Model ) :
-

DpgenRf1d

+

DpgenRf1d

  • Name : DpgenRf1d, DpgenRf1dr0 – Register File with Decoder Macro-Generator

    @@ -2987,7 +2991,7 @@ class inst_rf1d ( Model ) :
-

DpgenFifo

+

DpgenFifo

  • Name : DpgenFifo – Fifo Macro-Generator

  • @@ -3093,7 +3097,7 @@ class inst_fifo ( Model ) :
-

DpgenDff

+

DpgenDff

  • Name : DpgenDff – Dynamic Flip-Flop Macro-Generator

  • @@ -3173,7 +3177,7 @@ class inst_dff ( Model ) :
-

DpgenDfft

+

DpgenDfft

  • Name : DpgenDfft – Dynamic Flip-Flop with Scan-Path Macro-Generator

    @@ -3265,7 +3269,7 @@ class inst_dfft ( Model ) :
-

DpgenSff

+

DpgenSff

  • Name : DpgenSff – Static Flip-Flop Macro-Generator

  • @@ -3345,7 +3349,7 @@ class inst_sff ( Model ) :
-

DpgenSfft

+

DpgenSfft

-

Description of a layout

+

Description of a layout

Place

@@ -1145,7 +1149,7 @@ abtument box
-

Patterns generation extension

+

Patterns generation extension

Description of the stimuli

The stimuli used for the simulation are described in a Stimuli @@ -1172,7 +1176,7 @@ self._stim.add()

-

Place and Route

+

Place and Route

PlaceSegment

@@ -1796,7 +1800,7 @@ The pads must be placed before calling RoutageCk.
-

Instanciation facilities

+

Instanciation facilities

Buffer

@@ -2524,7 +2528,7 @@ The mapping file is not given in the environment variable.