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.4.tar.gz (93.9 kB view details)

Uploaded Source

Built Distributions

pywellen-0.18.4-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.3 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

pywellen-0.18.4-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.2 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

pywellen-0.18.4-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.3 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

pywellen-0.18.4-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.2 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

pywellen-0.18.4-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.2 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

pywellen-0.18.4-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.2 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARM64

pywellen-0.18.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

pywellen-0.18.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

pywellen-0.18.4-cp313-cp313-macosx_11_0_arm64.whl (602.6 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pywellen-0.18.4-cp313-cp313-macosx_10_12_x86_64.whl (615.3 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

pywellen-0.18.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pywellen-0.18.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

pywellen-0.18.4-cp312-cp312-macosx_11_0_arm64.whl (602.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pywellen-0.18.4-cp312-cp312-macosx_10_12_x86_64.whl (616.0 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

pywellen-0.18.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

pywellen-0.18.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

pywellen-0.18.4-cp311-cp311-macosx_11_0_arm64.whl (606.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pywellen-0.18.4-cp311-cp311-macosx_10_12_x86_64.whl (620.2 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

pywellen-0.18.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

pywellen-0.18.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

pywellen-0.18.4-cp310-cp310-macosx_11_0_arm64.whl (605.8 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pywellen-0.18.4-cp310-cp310-macosx_10_12_x86_64.whl (620.0 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

pywellen-0.18.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

pywellen-0.18.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.2 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

File details

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

File metadata

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

File hashes

Hashes for pywellen-0.18.4.tar.gz
Algorithm Hash digest
SHA256 240fe6d31d8b0c71c39a1a2eb1a41ce85dd067507f983de55d6d2707a4d59023
MD5 2c9b1969b9702b8720a2ce7791c168b9
BLAKE2b-256 8a5ba76d1ec4d0a067566e67c74467233a9f470594f27377fa056d6d1dc60ad0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 38c1093a4f45a9928f923ae4e8db6a235a2afa68290cb8957789e8e65d39b10c
MD5 654cdb61655a8d5ea5fdb3e935dd26b2
BLAKE2b-256 afd75b9101812471a42cc0d2e9a00bdb7a368b54fc890c28e6d202b76564b239

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 94b2f1192ef749b669a1b10b518f6e7102be7f565039fc8ced482049e861620c
MD5 6c2c3c8dca18aef2561679ee6a855630
BLAKE2b-256 0871be9ae099a26017dccfc6a584a46df28dcb446256a10ff7b1d4838326a92c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bf78ca4e13d9a0dfd4e20b3efe6bc7825143c602b30530ebf02f3a2caccc7a38
MD5 d05d7d99935d921f12c8651960787f1e
BLAKE2b-256 95c43b61622e83a29a1dbf5f69d79eddf3d7bda5aa438d214cd5bbdbab084d1b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2afb4c8f812cd70e2fcf95cce31ed350473b9677f6f079b40901f3235209062c
MD5 4704e254b6a490cf1d010fa4e479253b
BLAKE2b-256 85a14bf25f79dc1a137c9d2034d72b50b21a28b638151d9826800d7549b9495b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 87e392516aefd3adeb74e29b3918b7f3bac41f3817fa341a810673a5c56ade6e
MD5 2cc71b5b95414a6869a6899443e579dc
BLAKE2b-256 3f7d4bf6e0236051cec78d93e8eadb72a01c85470fb25b6cfbda821c13448ad1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7b8a0d77a4c8a8d21bc850dd0e5c1f518206c64b614bd5825ab3538633f29cf1
MD5 1327dcde7f8543d696196d8d97b504c1
BLAKE2b-256 f3293ac3a4ed03730023e5d471aa6af28bc787a14bdf6668462798c7a0f8713e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1e3f3dad8e076a85abd45e8077e1585122f0d0e6e716de10d09e53436fdde4b4
MD5 55b2ad5fd154af74d104f61a5737b499
BLAKE2b-256 bba1fba13688450954a09c765c779878b96c17c32969cae0b3b96dbb8f42b791

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c6337a14520325bd95e7e9e7919967ac92a43a9ee2bbfa796d02d31e98fe269e
MD5 dce4b7adde0918d78ad08e255243b3ba
BLAKE2b-256 76afb69f8cf89c56ae210e6b69552c72ad663b0a96f9ebab81c4f3052c8a02d5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a259cd45939a8ac8203d4dc2bd25caa00bb49594e496ad667ce9944a496406d0
MD5 5640cd22becf3065a911109e3cdafcb5
BLAKE2b-256 64bbaaa5e8e990db6614ffb1244a5307130e5fd04cb2c93ed5bbc99a4741593b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c43f3779d8b2bde613f5a9356a1345f789ec3d22b4d118022381de638a481689
MD5 2e21099262f3d5bdbdcd8af8f1cc1cea
BLAKE2b-256 d20bc87b9db2ec05671a7aa46f3cc5d9ce929953583498c81aa5be375706024b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c1b3734e2fbcb58468d82aca4d0db2f62d771450ef7d185120fd732342a9c84f
MD5 d09eb7003debd9b959effb5a92137ec4
BLAKE2b-256 6e71f6e108b150211a36c1aa14d178e66a6c712e51db6ff2038a5d8a46e0b37b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ace2dc098579a9fb529e5e4338361a43fc7b31f5314afca0052a10c5980a4c1b
MD5 3b1d0acb80fab30a332311ccb8e7aadf
BLAKE2b-256 93e74e26acea3bd67ac22bcc580511471c30234d39a42b1757c332b68b78c21b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 49772668aed46b7a0500c0e8dec1ccbcabfddf8ff1b7f84388315d977de8cad9
MD5 473c644749f8be26c9b7f80169e59968
BLAKE2b-256 fea28444017bcef71aee810f765caac89f407b4be6d4e178da3a7410bb5618f8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2a368400ecaeee5563b1f63553ba2dc35829292952fb40afb63b498adddf2c94
MD5 e7e89ff83a43c10a022b93d24c20ef5d
BLAKE2b-256 1d151557f122301916c21469a631d2deb0ce9e5d50e5f2dae14866289239dd73

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fd8331fda7396aee0cfa24aa3837667731b9042cf262346d9421d58ed00f7fbd
MD5 7754b8a22a607aa764294281ea5421b6
BLAKE2b-256 053a7c1e01a3b825eb09e8abe6d0e37a0faeaccd9df87540935d0fbb7d10bc7a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 1acef14781041ed92b8999e559378a42bcf5d443103f5728009a4ca76562cdfe
MD5 f62e1f97a93a3a0c31eeebdee3c37943
BLAKE2b-256 301a71bbaa395eb2ac73918f507398b939e709f7cf814013565a83cc0cb7c09d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9644da2db0ded46f2808115b7f511c4c7d0b90ae25a3bc67b9141293525c1652
MD5 a171662a8e819c083a1062f79c4959d4
BLAKE2b-256 1749b8a42ca733bab1360b9d470b04d0798d3c84b0e0c7990f051006dc300fa5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 25b86fea3ad74b44a4749e9b97022d261081692e2636bee92dca8b0a8404f957
MD5 9688877e4be5a2d6f0e65a6403c2c7dd
BLAKE2b-256 5ba0a6bc00cf0d2fc75f6d3d9f325f456f4ca6627027829a3c15acab15fb65b9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b458ee08d679bbe6d14ad68d7a5adc3f25d7998b010ca86050186380abeac6ed
MD5 4924392379c5c4eff398b72e86f0b533
BLAKE2b-256 8c49c15712bd0cdfd2bc415dc1ae13b4cac6c9cd4431e47a2537643cfc8067b0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ad62925bd0f6503b7a341638029f7362cee7218d65dd18f3d1322b235f81dc54
MD5 39e6e489f39a5c70d771be6da972c2e1
BLAKE2b-256 20ab6026f99071ed0fb5087a12abba8735d467ec1bc39ead2e093df6cf69c63e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fbb79c388a46cdaccc2b93643e8e09861871e34fc3af3731b945627428ac2e06
MD5 82e622b8940e1763c0453bf6a6451632
BLAKE2b-256 b4455789200c1a0ea838e0f6f1838f2186aad2cc5cbe503ea1f72403df886b00

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9703fbe7d9c58630b026544494dbc485d4e958a148b3ecddaf2dc20d3efe2375
MD5 010ad0d54dfeca0df2c4f547d4d1a214
BLAKE2b-256 a44247b9aba597a10e3beafcc468d80b02ed81c685c7a5683a9ae71b422baf7f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0829f93cfa599bbd9fd7aac088369189a8009a24735955c1ee50e6e8df9136d0
MD5 95cd37084cc8cca98b5215b3ad1a887a
BLAKE2b-256 09440f15ff7b624bd18b3a5c575f69bdd4147963becd62ebfe159c6797a477e3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4d8e4528e5eef8fdf717f816954552a171912762342745cb3c51112047383fa7
MD5 dcb33c3c6f3333594a19d236422cc2a5
BLAKE2b-256 07f44d6a7d3d0220a2b8062434d62b724fe2d32f9160c95905f05357b25e79ef

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