najaeda 0.1.21__cp310-cp310-macosx_11_0_arm64.whl → 0.1.23__cp310-cp310-macosx_11_0_arm64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of najaeda might be problematic. Click here for more details.
- najaeda/docs/source/conf.py +2 -2
- najaeda/libnaja_python.dylib +0 -0
- najaeda/naja.so +0 -0
- najaeda/netlist.py +29 -5
- {najaeda-0.1.21.dist-info → najaeda-0.1.23.dist-info}/METADATA +12 -1
- {najaeda-0.1.21.dist-info → najaeda-0.1.23.dist-info}/RECORD +9 -9
- {najaeda-0.1.21.dist-info → najaeda-0.1.23.dist-info}/WHEEL +0 -0
- {najaeda-0.1.21.dist-info → najaeda-0.1.23.dist-info}/licenses/AUTHORS +0 -0
- {najaeda-0.1.21.dist-info → najaeda-0.1.23.dist-info}/licenses/LICENSE +0 -0
najaeda/docs/source/conf.py
CHANGED
|
@@ -15,7 +15,7 @@ sys.path.insert(0, os.path.abspath('../../../'))
|
|
|
15
15
|
project = 'najaeda'
|
|
16
16
|
copyright = '2024, Naja authors'
|
|
17
17
|
author = 'Naja authors'
|
|
18
|
-
release = '0.1.
|
|
18
|
+
release = '0.1.22'
|
|
19
19
|
|
|
20
20
|
# -- General configuration ---------------------------------------------------
|
|
21
21
|
# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
|
|
@@ -27,7 +27,7 @@ extensions = [
|
|
|
27
27
|
'sphinx.ext.todo', # (Optional) For TODOs in the documentation
|
|
28
28
|
]
|
|
29
29
|
|
|
30
|
-
autodoc_mock_imports = ["najaeda.
|
|
30
|
+
autodoc_mock_imports = ["najaeda.naja"]
|
|
31
31
|
templates_path = ['_templates']
|
|
32
32
|
exclude_patterns = []
|
|
33
33
|
|
najaeda/libnaja_python.dylib
CHANGED
|
Binary file
|
najaeda/naja.so
CHANGED
|
Binary file
|
najaeda/netlist.py
CHANGED
|
@@ -11,6 +11,7 @@ import struct
|
|
|
11
11
|
import sys
|
|
12
12
|
import os
|
|
13
13
|
from enum import Enum
|
|
14
|
+
from typing import Union, List
|
|
14
15
|
|
|
15
16
|
from najaeda import naja
|
|
16
17
|
|
|
@@ -352,6 +353,15 @@ class Net:
|
|
|
352
353
|
yield Term(path, term.getBitTerm())
|
|
353
354
|
path.pop()
|
|
354
355
|
|
|
356
|
+
def count_inst_terms(self) -> int:
|
|
357
|
+
"""
|
|
358
|
+
Count the instance terminals of this net.
|
|
359
|
+
|
|
360
|
+
:return: the number of instance terminals of this net.
|
|
361
|
+
:rtype: int
|
|
362
|
+
"""
|
|
363
|
+
return sum(1 for _ in self.get_inst_terms())
|
|
364
|
+
|
|
355
365
|
def get_design_terms(self):
|
|
356
366
|
"""
|
|
357
367
|
:return: an iterator over the design terminals of the net.
|
|
@@ -455,9 +465,9 @@ class Term:
|
|
|
455
465
|
term_str = (
|
|
456
466
|
f"{path}/{get_snl_term_for_ids(self.pathIDs, self.termIDs).getName()}"
|
|
457
467
|
)
|
|
458
|
-
if self.is_bus:
|
|
468
|
+
if self.is_bus():
|
|
459
469
|
term_str += f"[{self.get_msb()}:{self.get_lsb()}]"
|
|
460
|
-
elif self.is_bus_bit:
|
|
470
|
+
elif self.is_bus_bit():
|
|
461
471
|
term_str += f"[{self.get_lsb()}]"
|
|
462
472
|
return term_str
|
|
463
473
|
|
|
@@ -978,7 +988,7 @@ class Instance:
|
|
|
978
988
|
yield Instance(path_child)
|
|
979
989
|
# path.pop()
|
|
980
990
|
|
|
981
|
-
def
|
|
991
|
+
def count_child_instances(self) -> int:
|
|
982
992
|
"""
|
|
983
993
|
:return: the number of child instances of this instance.
|
|
984
994
|
:rtype: int
|
|
@@ -1467,7 +1477,14 @@ class VerilogConfig:
|
|
|
1467
1477
|
self.keep_assigns = keep_assigns
|
|
1468
1478
|
|
|
1469
1479
|
|
|
1470
|
-
def load_verilog(files:
|
|
1480
|
+
def load_verilog(files: Union[str, List[str]], config: VerilogConfig = None) -> Instance:
|
|
1481
|
+
"""Load verilog files into the top design.
|
|
1482
|
+
:param files: a list of verilog files to load or a single file.
|
|
1483
|
+
:param config: the configuration to use when loading the files.
|
|
1484
|
+
:return: the top Instance.
|
|
1485
|
+
"""
|
|
1486
|
+
if isinstance(files, str):
|
|
1487
|
+
files = [files]
|
|
1471
1488
|
if not files or len(files) == 0:
|
|
1472
1489
|
raise Exception("No verilog files provided")
|
|
1473
1490
|
if config is None:
|
|
@@ -1480,7 +1497,14 @@ def load_verilog(files: list, config: VerilogConfig = None) -> Instance:
|
|
|
1480
1497
|
return get_top()
|
|
1481
1498
|
|
|
1482
1499
|
|
|
1483
|
-
def load_liberty(files:
|
|
1500
|
+
def load_liberty(files: Union[str, List[str]]):
|
|
1501
|
+
"""Load liberty files.
|
|
1502
|
+
:param files: a list of liberty files to load or a single file.
|
|
1503
|
+
"""
|
|
1504
|
+
if isinstance(files, str):
|
|
1505
|
+
files = [files]
|
|
1506
|
+
if not files or len(files) == 0:
|
|
1507
|
+
raise Exception("No liberty files provided")
|
|
1484
1508
|
logging.info(f"Loading liberty files: {', '.join(files)}")
|
|
1485
1509
|
__get_top_db().loadLibertyPrimitives(files)
|
|
1486
1510
|
|
|
@@ -1,9 +1,20 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: najaeda
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.23
|
|
4
4
|
Summary: Naja EDA Python package
|
|
5
5
|
Author-Email: Naja Authors <contact@keplertech.io>
|
|
6
6
|
License: Apache License 2.0
|
|
7
|
+
Classifier: Development Status :: 4 - Beta
|
|
8
|
+
Classifier: Intended Audience :: Developers
|
|
9
|
+
Classifier: License :: OSI Approved :: Apache Software License
|
|
10
|
+
Classifier: Operating System :: MacOS
|
|
11
|
+
Classifier: Operating System :: POSIX :: Linux
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
17
|
+
Classifier: Topic :: Scientific/Engineering :: Electronic Design Automation (EDA)
|
|
7
18
|
Project-URL: Homepage, https://github.com/najaeda/naja
|
|
8
19
|
Requires-Python: >=3.8
|
|
9
20
|
Description-Content-Type: text/x-rst
|
|
@@ -1,11 +1,16 @@
|
|
|
1
|
-
najaeda
|
|
1
|
+
najaeda-0.1.23.dist-info/RECORD,,
|
|
2
|
+
najaeda-0.1.23.dist-info/WHEEL,sha256=nFSIsNnUJn_8RF-FUhBaXtCep1yHZRCxSkBom4ebATM,114
|
|
3
|
+
najaeda-0.1.23.dist-info/METADATA,sha256=fUZcD04Cf0r8tlSQgRGVIOQ9NeRfMJYPNLdAR5UcSZE,3046
|
|
4
|
+
najaeda-0.1.23.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
5
|
+
najaeda-0.1.23.dist-info/licenses/AUTHORS,sha256=7NYEGDAX_1QZvCCHfq8YVXC5ZbwH_pbNI8DcSmm70GU,377
|
|
6
|
+
najaeda/netlist.py,sha256=RA8jMz9uwwlLSLVli5mzqI5Z3RS6mk9YuFol-7SeEIM,53647
|
|
2
7
|
najaeda/libnaja_nl.dylib,sha256=O1pfUil1jLkWu89X3JGpKyTwuVqmpsnwZDOESYqjqeU,713152
|
|
3
8
|
najaeda/pandas_stats.py,sha256=yOb4ka965U7rN4D6AwvSGmRyeT_O7Ed-5cmT8BFbfeo,1070
|
|
4
9
|
najaeda/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
|
-
najaeda/naja.so,sha256=
|
|
10
|
+
najaeda/naja.so,sha256=JEs_riu9NVyeUxjM6zLrkvqMXW-_JAohjNiyh1J4sjw,99440
|
|
6
11
|
najaeda/net_visitor.py,sha256=P_esjibYb-wBDuF-AyF7es9sJYw1Ha8RhTPu-qKe7G4,1940
|
|
7
12
|
najaeda/libnaja_opt.dylib,sha256=91kz37-SLpztC7x1F_VYZlddwzCBoNVaD6NqL7OL2GQ,190816
|
|
8
|
-
najaeda/libnaja_python.dylib,sha256=
|
|
13
|
+
najaeda/libnaja_python.dylib,sha256=hIuCT1JSoC1yeSVVF4JXD90cXa0MNAwhmqoM7MGV1K8,904240
|
|
9
14
|
najaeda/stats.py,sha256=wackXsf0x24ic9v-UifECHj4t5yveUWssMDZp2B057A,16187
|
|
10
15
|
najaeda/instance_visitor.py,sha256=JMsPSQaWNiDjxS05rxg83a0PIsrOIuTi9G35hkwdibs,1530
|
|
11
16
|
najaeda/libnaja_bne.dylib,sha256=r9-g0qCILL6w_BgXYg62karCWloSPSpdNGEeS2Ey0Jk,134064
|
|
@@ -16,7 +21,7 @@ najaeda/docs/requirements.txt,sha256=1XIBGTIplm2arC9HhDCfLuAjozGdVSXkqmOj8ybuT6U
|
|
|
16
21
|
najaeda/docs/.readthedocs.yaml,sha256=nN_Psro-YdfPcIiueZkJcZepts68g23rqVThhKnmVRw,790
|
|
17
22
|
najaeda/docs/source/index.rst,sha256=80VMfeEGHObnOUXRBxIzISQsG_HNkgT-pUpsDZsCfOY,387
|
|
18
23
|
najaeda/docs/source/instance.rst,sha256=7B2IBB0p32Tb4qvOCE77OlrQaYpFADvmTlq1q8eyVqw,458
|
|
19
|
-
najaeda/docs/source/conf.py,sha256=
|
|
24
|
+
najaeda/docs/source/conf.py,sha256=XqCFo29gZCbaoPe1xEan9ZonYyQW5NZnWHGEWrB7p8Q,2021
|
|
20
25
|
najaeda/docs/source/preprocessor.py,sha256=TK4LsTdNbv2dxkKQaJ7cEyo9PU5v_56vlrFCJYIPKf8,2625
|
|
21
26
|
najaeda/docs/source/term.rst,sha256=QKWT6u1xjEjusvcZYknKQ-M83ibohO5y1EYTQnnXqak,690
|
|
22
27
|
najaeda/docs/source/net.rst,sha256=i6YEir8ZOldSY8-UmPxgVJ4Ot3y-Q6seRkBr2H-KmXc,732
|
|
@@ -33,8 +38,3 @@ najaeda/.dylibs/libtbb.12.15.dylib,sha256=MGGmYnvwo6PQYq7aVv_m2gKHBbOkAdwjPLJtYZ
|
|
|
33
38
|
najaeda/.dylibs/libkj-1.1.0.dylib,sha256=pB7dMks8b8ybJ6xKWqFR_hHjKsmpf7wzbcunZaS7gO4,578320
|
|
34
39
|
najaeda/primitives/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
35
40
|
najaeda/primitives/xilinx.py,sha256=Ka-jlu-OxixEZ_yR_niXLHtaUL8HxT1Bg9H9Kpnr4ns,26551
|
|
36
|
-
najaeda-0.1.21.dist-info/RECORD,,
|
|
37
|
-
najaeda-0.1.21.dist-info/WHEEL,sha256=nFSIsNnUJn_8RF-FUhBaXtCep1yHZRCxSkBom4ebATM,114
|
|
38
|
-
najaeda-0.1.21.dist-info/METADATA,sha256=F9KxuiPDRio9g80RxoIDE7lwBcbAwk85-8GA5c5Mmxo,2475
|
|
39
|
-
najaeda-0.1.21.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
40
|
-
najaeda-0.1.21.dist-info/licenses/AUTHORS,sha256=7NYEGDAX_1QZvCCHfq8YVXC5ZbwH_pbNI8DcSmm70GU,377
|
|
File without changes
|
|
File without changes
|
|
File without changes
|