Skip to main content

Liberty Metric Utility

Project description

Liberty Metric Extraction

installation

pip install libertymetric

import package

from libertymetric.classLiberty import liberty as lutil

load & convert CCS to JSON

lnode = lutil.read_lib('ccs.lib') lutil.dump_json(lnode,out='ccs.json') lnode.keys()

load liberty from JSON

lnode = lutil.load_json('ccs.json') lnode.keys()

list cells in the liberary

[v for v in lnode['cell']]

grab cell node by cell-name, e.g., 'ND2D1LVT'

cnode = lnode['cell']['ND2D1LVT']

encapsulate all timing/power tables by timing-arc into a dataframe

lutT = lutil.get_cell_timing(cnode,todf=True) lutP = lutil.get_cell_power(cnode,todf=True) lutT.index # enumerate all lookup tables encapsulated by timing-arc lutP.index # enumerate all lookup tables encapsulated by timing-arc

lookup table interpolation, e.g., timing-arc ('A1,ZN,', 'combinational', 'cell_rise')

lut = lutT.loc[('A1,ZN,', 'combinational', 'cell_rise')] y,x,v = map(np.array,lut.values) # unpack values as numpy array

timing interpolation based on the specified transition & load

lutil.table_lookup(lut,trans=0.0207,load=0.0010072,dflag=True)

LS regression & prediction

lutil.lut2lsCoeff(lut.to_dict(),trans=0.03,load=0.0017,dflag=True)

visualization

lutT = lutT.T.to_dict() # convert dataframe to JSON lutil.plot_lut(lutT,keys=('A1,ZN,', 'combinational', 'cell_rise'))

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

libertymetric-0.1.4.tar.gz (11.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

libertymetric-0.1.4-py3-none-any.whl (13.2 kB view details)

Uploaded Python 3

File details

Details for the file libertymetric-0.1.4.tar.gz.

File metadata

  • Download URL: libertymetric-0.1.4.tar.gz
  • Upload date:
  • Size: 11.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.3 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.24.3 tqdm/4.64.1 importlib-metadata/4.8.3 keyring/19.0.2 rfc3986/1.5.0 colorama/0.4.5 CPython/3.6.7

File hashes

Hashes for libertymetric-0.1.4.tar.gz
Algorithm Hash digest
SHA256 af42a084f9671f3a426cc760b822be08e9af7a068f096c07e4361797b4c91aa8
MD5 f424898a548d44113035dfd7cb68337d
BLAKE2b-256 c84b8539dfe64b68c5e912cb1f73dcb8788db1b90e4fe6a6aa129f8fae5dd650

See more details on using hashes here.

File details

Details for the file libertymetric-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: libertymetric-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 13.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.3 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.24.3 tqdm/4.64.1 importlib-metadata/4.8.3 keyring/19.0.2 rfc3986/1.5.0 colorama/0.4.5 CPython/3.6.7

File hashes

Hashes for libertymetric-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 e4d193a61aab131e67a7e72f025d6b91692755c9a427a9eeaebf3a10f7f1dc91
MD5 dc3287f64352ebec04f7526c1f2c5391
BLAKE2b-256 8bfe289818130449971fed72079c4c769db5d1da633e6303099e9f3813defc56

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page