Stefan Holst 1 year ago
parent
commit
f4d875f7e5
  1. 13
      docs/circuit.rst
  2. 29
      docs/datastructures.rst
  3. 5
      docs/index.rst
  4. 7
      docs/logic.rst
  5. 7
      src/kyupy/circuit.py
  6. 2
      src/kyupy/logic.py
  7. 2
      src/kyupy/sdf.py

13
docs/circuit.rst

@ -0,0 +1,13 @@
Circuit Graph - :mod:`kyupy.circuit`
====================================
.. automodule:: kyupy.circuit
.. autoclass:: kyupy.circuit.Node
:members:
.. autoclass:: kyupy.circuit.Line
:members:
.. autoclass:: kyupy.circuit.Circuit
:members:

29
docs/datastructures.rst

@ -1,29 +0,0 @@
Data Structures
===============
KyuPy provides two types of core data structures, one for gate-level circuits, and a few others for representing and storing logic data and signal values.
The data structures are designed to work together nicely with numpy arrays.
For example, all the nodes and connections in the circuit graph have consecutive integer indices that can be used to access ndarrays with associated data.
Circuit graphs also define an ordering of inputs, outputs and other nodes to easily process test vector data and alike.
Circuit Graph - :mod:`kyupy.circuit`
------------------------------------
.. automodule:: kyupy.circuit
.. autoclass:: kyupy.circuit.Node
:members:
.. autoclass:: kyupy.circuit.Line
:members:
.. autoclass:: kyupy.circuit.Circuit
:members:
Multi-Valued Logic - :mod:`kyupy.logic`
---------------------------------------
.. automodule:: kyupy.logic
:members:

5
docs/index.rst

@ -4,9 +4,10 @@ API Reference
------------- -------------
.. toctree:: .. toctree::
:maxdepth: 2 :maxdepth: 1
datastructures circuit
logic
parsers parsers
simulators simulators
miscellaneous miscellaneous

7
docs/logic.rst

@ -0,0 +1,7 @@
Multi-Valued Logic - :mod:`kyupy.logic`
=======================================
.. automodule:: kyupy.logic
:members:

7
src/kyupy/circuit.py

@ -1,8 +1,13 @@
"""Data structures for representing non-hierarchical gate-level circuits. """Core module for handling non-hierarchical gate-level circuits.
The class :class:`Circuit` is a container of nodes connected by lines. The class :class:`Circuit` is a container of nodes connected by lines.
A node is an instance of class :class:`Node`, A node is an instance of class :class:`Node`,
and a line is an instance of class :class:`Line`. and a line is an instance of class :class:`Line`.
The data structures are designed to work together nicely with numpy arrays.
For example, all the nodes and connections in the circuit graph have consecutive integer indices that can be used to access ndarrays with associated data.
Circuit graphs also define an ordering of inputs, outputs and other nodes to easily process test vector data and alike.
""" """
from collections import deque, defaultdict from collections import deque, defaultdict

2
src/kyupy/logic.py

@ -1,4 +1,4 @@
"""This module contains definitions and tools for 2-, 4-, and 8-valued logic operations. """Core module for handling 2-, 4-, and 8-valued logic data and signal values.
Logic values are stored in numpy arrays with data type ``np.uint8``. Logic values are stored in numpy arrays with data type ``np.uint8``.
There are no explicit data structures in KyuPy for holding patterns, pattern sets or vectors. There are no explicit data structures in KyuPy for holding patterns, pattern sets or vectors.

2
src/kyupy/sdf.py

@ -42,7 +42,7 @@ class DelayFile:
Limited support of SDF spec: Limited support of SDF spec:
* ABSOLUTE delay values only * ABSOLUTE delay values only
* two delvals per delval_list. First is rising/posedge, second is falling/negedge * two delvals per delval_list. First is rising/posedge, second is falling/negedge
transition at the output of the IOPATH (SDF spec, pp. 3-17). transition at the output of the IOPATH (SDF spec, pp. 3-17).
* PATHPULSE declarations are ignored. * PATHPULSE declarations are ignored.
* Axis 0: dataset (usually 3 datasets per SDF-file) * Axis 0: dataset (usually 3 datasets per SDF-file)

Loading…
Cancel
Save