Skip to main content

Fast VCD, GHW and FST wavedump reading.

Project description

Wellen Waveform Library

Crates.io Version docs.rs GitHub License DOI

wellen provides a common interface to read both FST and VCD waveform files. The library is optimized for use-cases where only a subset of signals need to be accessed, like in a waveform viewer. VCD parsing uses multiple-threads.

Overview

Overview of wellen components

The Wellen Hierarchy

All meta-data about the signals in a design is accumulated in the wellen::Hierarchy class. While all formats supported by wellen feature hierarchical scopes and variables and the associated signal data, they vary in how much additional information they provide. We thus had to make some choices on how to unify the data from various sources in a single data model.

Global Metadata

We record the following information for each file:

  • date: a string representation of when the file was created, the precise data / time format depends on the file source (VCD, FST)
  • version: a string, generally the version of the simulator that produced the file (VCD, FST)
  • timescale: time unit and factor that defines one tick of simulation time, GHW is always 1fs (ALL)
  • fileformat (ALL)

Scope

Each scope contains the following information:

  • name: the local name of the scope, ignoring its parent scopes (ALL)
  • full_name: the names of all parent scopes and the local scope, connected with a . (ALL)
  • scope_type: the kind of scope, e.g., module, function, wire (ALL)
  • component: an optional type name, e.g., the name of the module that was instantiated (FST)
  • instantiation_source_loc: optional filename and line number where the scope was instantiated; for VCDs, this information is encoded with non-standard attributes (FST, VCD)
  • source_loc: optional filename and line number where the scope was declared; for VCDs, this information is encoded with non-standard attributes (FST, VCD)
  • items: child variables and scopes
  • vars: child variables
  • scopes: child scopes

Variable

Each variables comes with the following information:

  • name: the local name of the scope, ignoring its parent scopes (ALL)
  • full_name: the names of all parent scopes and the local scope, connected with a . (ALL)
  • to be continued

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

pywellen-0.18.0.tar.gz (92.2 kB view details)

Uploaded Source

Built Distributions

pywellen-0.18.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.2 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

pywellen-0.18.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.1 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

pywellen-0.18.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.2 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

pywellen-0.18.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.1 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

pywellen-0.18.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.1 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

pywellen-0.18.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.1 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARM64

pywellen-0.18.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

pywellen-0.18.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

pywellen-0.18.0-cp313-cp313-macosx_11_0_arm64.whl (586.7 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pywellen-0.18.0-cp313-cp313-macosx_10_12_x86_64.whl (601.4 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

pywellen-0.18.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pywellen-0.18.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

pywellen-0.18.0-cp312-cp312-macosx_11_0_arm64.whl (588.4 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pywellen-0.18.0-cp312-cp312-macosx_10_12_x86_64.whl (602.6 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

pywellen-0.18.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

pywellen-0.18.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

pywellen-0.18.0-cp311-cp311-macosx_11_0_arm64.whl (593.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pywellen-0.18.0-cp311-cp311-macosx_10_12_x86_64.whl (605.8 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

pywellen-0.18.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

pywellen-0.18.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

pywellen-0.18.0-cp310-cp310-macosx_11_0_arm64.whl (592.9 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pywellen-0.18.0-cp310-cp310-macosx_10_12_x86_64.whl (605.8 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

pywellen-0.18.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

pywellen-0.18.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

File details

Details for the file pywellen-0.18.0.tar.gz.

File metadata

  • Download URL: pywellen-0.18.0.tar.gz
  • Upload date:
  • Size: 92.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.9.3

File hashes

Hashes for pywellen-0.18.0.tar.gz
Algorithm Hash digest
SHA256 4cde6d61f91532352b2a705330fcf6bf06a846da73e10f69006dfe0451eab7c5
MD5 98e3759dbc7a8d1cefcb5d7de3a84875
BLAKE2b-256 d88e0eada432b133fd0e6aa88d544fbc904f8c8870b07fc5e0c0d6ece8338ca1

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7640316de98d433bd126934be04fb6904d4c026b50438a200ce9b38578547a3d
MD5 982fd6cdd54498ef8ca467b3bd8f250d
BLAKE2b-256 6be1d819bf332e170e23fa45494a74842ea7b43b9e65f4619bfa2f0a11ebb085

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 00ebd25c2d8d97d0d1cab9e3159a4d9f456624601076ea233f07824a91714cf9
MD5 fcdec36d76c51ae7fd99bd5bfd9e7833
BLAKE2b-256 469b910968135d511b0835d89e64cfb0afe56fd0f8daa17a2b8ac883d49e6392

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9b0fcd57a88cbbf407b372e6bb9e5b550b08c038de2f958117315e715169f21d
MD5 4ea08279b267ae3617be488c9738aa16
BLAKE2b-256 98b8b53ab0f3306af5ea8da4fae7a52f8dfa00aa357a28aa3c76b77ca9abd03e

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 db3726b0898534d67d8c65380ba8277787b88190bb0e616f230f3a61a4acedfd
MD5 e25c0dff70013c93b9b1529d77ef5a39
BLAKE2b-256 5fa9565939c0fee68de16773fe8828397ace03ef8472061bd86145d0ad8a27d2

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 35df776a1187dbd974f4a18aabba3fc46751cc77f23ff1427dc7b34479a30e24
MD5 e78ec1727edbfe4d2a0dc15489fa63af
BLAKE2b-256 8b6225fa804dd688e633133506c0b8c8f6c14589a4e684676e05fc1853064994

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c603eba16464904d6677baa189e256b2f82331b168e299f7e4a2e813686313c2
MD5 93c759d55de85ba4d779aea2eda2176a
BLAKE2b-256 8656a95dac662e5f499296185d4bffd6ae4b804fbe03fba90b7979865bfc3608

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a5dc2ef81a63bcf47d5015be6af5e849206374fa4c2f8f577ad8130a6f0be955
MD5 4db1ecf84aeb5863bb937f1389fe70a3
BLAKE2b-256 822071d2147888ff2698226730cc5d219d8ca07457793bfd742363a0c516fa48

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 339808447e0149f9a5623f5395cb9d1d5c9ea22f7c10e472f089c518e7319617
MD5 99b5456063adcfa6ef7fcd9b0b10f833
BLAKE2b-256 be3ec0f4e2fd0cc84db367433a2e191e94c683aed1182ace72dd4b351a3ba32d

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7942588752065f8cb2fe23359eb477e0d8fadf7a3b9ff7ce2e79944fa396bcf0
MD5 30c2525b3c7e5cd2c2876b1ab9e1cc7b
BLAKE2b-256 9862e9661da97526dc1c970aeb4d4fd596b0a2f4e45e1eaf8a73ac9c1451d649

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2396580fb76f598fd239a84cb967aa38c68f3a386f0daebcb1120cffef4658cc
MD5 f9892d3e5d86f837b8d2fc94cafc639e
BLAKE2b-256 38d8cc390233ea141acb86246bbab1390ab7ace28192e922bd8a95a30b53e41d

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a12cf8dd28128a9f28bf3e217da20e2d730ee59c0ef14990a32cc18ea9bd343c
MD5 a6224d1f785617b1de722f78aafe1b66
BLAKE2b-256 5952571b9a9a70f4bca07c7451de0a72a5f00215f997a2bd78c5fe56c6cb861f

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b9c5da8533f0e6135518af7caa37b29ad98f9fd4584e14937f74f804f4a16c53
MD5 286ddcc62c12c948837acb2e3f6ec6c7
BLAKE2b-256 a34310035fbe828fccb8a2d1c31507f5040db21aee437735afa08e73678676f2

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 62dfab2fc4cbce7b8d0a16892fbb1b08647c94042e90855486c1d35cdaa310ba
MD5 3eacec7bf8a2204c04a03e5ca7b5b98a
BLAKE2b-256 0957bdd96e903965bc803c8dce608f06264fa2df63a548e541a49b6e3521ec87

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d8e1b59fdce4cf1b008d3a478cbcf60b47bdb26bfd6d64739e80801e9a81c6c4
MD5 07c99296de83d627f7cae5137127a099
BLAKE2b-256 d63ddfef20da6ff0cba04966327b442328b85245fa3cba379ddf38e2cf256394

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b2f169ff1f8192cbc24e7c3f365f2e5732523b9ed479e816c84dcf62d3f18f1d
MD5 895217fa5d2264cedff6e667de4c46a3
BLAKE2b-256 d15909af530169ed6c6ae5768d0bc670495ff6562c76dd476053863efabb139f

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 649149ab81a36e8c34bbeed1ef901619267f6dda5ee68e11697d437e3354a674
MD5 9698bb7c4ec80de2759fe7e0c8fb0855
BLAKE2b-256 6c7c22b89bfbce6e054ca690be2d8ea2d4df09f95eaebb77a3628bca249243c4

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1973a571001e02d7677973688f6331ddb7b3d3850c272932aa0fa6b0330c915c
MD5 05459efbfd966b45278abe8d74f274d8
BLAKE2b-256 015dab966503b89dc7289bd92fdb5c9e1f4c6c3a544ef7457da851a34e013bb9

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 975ee2fa70b9c8d39cf7eb5798ac3fd7a75ee53861726686d638d1b1c30309ba
MD5 082c82656601fe29155ea2a5d1a095b6
BLAKE2b-256 655727b5c8fd28d90799f8e74d50650fdab55156a12704a8387f92dfc4306e2a

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 78ebf984dcc676908e9e23f3efe6a9ad07b4350561a10136321b2a29906edf1c
MD5 e91f698f33a93706e43ba70736da09c7
BLAKE2b-256 1bbe57322debd38da2c054aefe172858c9d34d9c868ccd497b0a50abd28839be

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 abb4fd03e48576ad5b251fdffab8792a043333a2d6240f557c4c7c368a990a64
MD5 3b696ed2af78b906557a6848315bb595
BLAKE2b-256 1769320c589bda5b23a71855ad6841090ec4807a4f83dc61470d975f1807212b

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 15d3ea22b36a329e472664e415b17fc0149be811dcba9526c11824a8d375c1a4
MD5 e1911c8c9348472e5f22d9adcd769180
BLAKE2b-256 975026f53b5591593a7ac4b1ac3fef6a6c6e7bd82ff21e73d1dc579538f36959

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 38ba269caf975b0833ba0547b50270063fe5c04d8d48854e0cedaced671d831d
MD5 e407b2dee48d62d8ea5d0557e1f314b3
BLAKE2b-256 cdb5c8979c216eb8858f85ed1c9c3955cdbf178fc5f40350574ff2306198e64c

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2e874182c3cd2006eb129065746f4f3d8c639d516b5f2a70957dc860d274a5e9
MD5 064d04892f7130ddc97be34ac8743052
BLAKE2b-256 b57b6c3280b32dbb99242e699da800dc1192c66d9aa4048c92d10eb593404be7

See more details on using hashes here.

File details

Details for the file pywellen-0.18.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pywellen-0.18.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6cb0f74692a144da8ae7f50db93eb2821f980f655efb0d556484581386e8049d
MD5 d05f5e3eb0d537e30ba20c770bf74e1a
BLAKE2b-256 a4fb52c73160b4028cc6168d50cb479a9dfb4c76607ecb9e26eacd1049e9307c

See more details on using hashes here.

Supported by

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