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

Uploaded Source

Built Distributions

pywellen-0.18.3-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.3-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.2 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

pywellen-0.18.3-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.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.2 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

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

Uploaded PyPymanylinux: glibc 2.17+ ARM64

pywellen-0.18.3-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.3-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.3-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.3-cp313-cp313-macosx_11_0_arm64.whl (595.7 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pywellen-0.18.3-cp313-cp313-macosx_10_12_x86_64.whl (609.1 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

pywellen-0.18.3-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.3-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.3-cp312-cp312-macosx_11_0_arm64.whl (597.1 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pywellen-0.18.3-cp312-cp312-macosx_10_12_x86_64.whl (610.1 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

pywellen-0.18.3-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.3-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.3-cp311-cp311-macosx_11_0_arm64.whl (601.1 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pywellen-0.18.3-cp311-cp311-macosx_10_12_x86_64.whl (613.4 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

pywellen-0.18.3-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.3-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.3-cp310-cp310-macosx_11_0_arm64.whl (601.0 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pywellen-0.18.3-cp310-cp310-macosx_10_12_x86_64.whl (613.5 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

pywellen-0.18.3-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.3-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.3.tar.gz.

File metadata

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

File hashes

Hashes for pywellen-0.18.3.tar.gz
Algorithm Hash digest
SHA256 fa95e6fbc32136eb908645a3876037b71aed8e2947eb9bf5cb6c5043e5659329
MD5 0bc3395f5d2a885dd70b60c05d4f9ac2
BLAKE2b-256 5be8905393c9e76c39614159e812fcfbf914c8e4b332959b5e4856eb6fa4923c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1b2b30b16182b1c21766c15f210b1829c7ac11f92972c88dee487e3b6b4f5363
MD5 141fd2bf2078687891c7a4517c60d6a4
BLAKE2b-256 eed9b54f916bac5f0db3d4da8ce69b4c01b01051e63378cde861188331b2f6ac

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 32edc213803178a691077ba4931973c55d13c5728c3bcadce97c39d6b0b4d128
MD5 d10ea08302c2b1e1ded8edb20cf8c344
BLAKE2b-256 a8ef8ce1923248c11a685d2f6644d79d01f7afcd9e9ab34186e8480875ccdbe4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 29b9322853d78bef9edded75be78469bedfe300191db53bc7bb16a612ff93a30
MD5 e0ded00a3b7cde22e92f5892425d6e7b
BLAKE2b-256 fffe9e6e40db1b922904add4df016472162c030fde525a4c2b22034654635487

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 322b21d1ff98668c434fb76191a698ae015d65ea0e989e7c121b6acfb7266376
MD5 8bc8bf3caa2f44889fb11c494b7c29b5
BLAKE2b-256 f730bb04c8c00e5311c778eca419bf38c1496825e1a22a5e582dfd96c6ba9d56

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 541ecdef4c7413e1e2d12bd169c9701ee76d6dc043564da5597dc499668b5fca
MD5 ac398f1ecc84a63abc75186acc16430e
BLAKE2b-256 0a22b8413c11e43e767b556be8dc3821f7b46a1324d92743b002d8c71d0dc325

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 89fc9ced5a8850b521e49f8efcc0ca2214b23ee7138d82250d7ee91cfab314fc
MD5 de5662c8e74e530185fd5bd2da533278
BLAKE2b-256 01d037c0b53e6f0ea988fb09a7f9207b241cebe8e3bb93e6c28d82a78143da87

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9f23b9c96a7f0cd6e7d9ceff785e8f698a89c539b40e9825566fa57b380ad1ce
MD5 02697fce1a75a465eb66446770f9cf01
BLAKE2b-256 4181a487dc8eee16d3a0a76d00c1fe6a5480143d5fd278ceb235f1caacdbc7e6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 bf2bea2ab7bbcc06ae613a8de1d2562f75ec289040e56ccdec5c2e891b5b50d3
MD5 23f9355e49df5ee5c825f25ca450c427
BLAKE2b-256 443d2248feefb0764410fffa3fc888f77336640783b0c4160aed36c4a9c49221

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a493f95057f98147d850f0db912789a2d6a60ca49086dd86bc22e8dcce130400
MD5 a9cb4c5cbcfcee1661753392428a83a2
BLAKE2b-256 a2af1f85f66394425c546d0e6ed41515dbabf6c25d33a4a62180e90c11beb16a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ad99b1e3d97edfc0a44d28682a81f97669da035e8dcb33b3a58bbfecf887cb41
MD5 fbd31c4776ccb7ceffa396ac5c59d67d
BLAKE2b-256 d5088eb7e4c85eccf9daf07f8592039b2133bc7d4a902fee144032bf79bde110

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 506f5eb7b5de9a0d02b0186128687b95a4d98b9a091b5cae77847e5f890bdbcd
MD5 ce397b383cdddd4b4aa278b933bcfb26
BLAKE2b-256 5a64c07cb8b04202ce0450fe863270c8ad5f476698ca07b0027cced89ac9090c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 152138eafa6fb2796a9af3cf97b9b4f9f9f045ab9bce0c17777222dcf3685c23
MD5 6e62555e3bd8009cb0fec9f56aecd1e4
BLAKE2b-256 434234fb8f2196d6cd3aa16a0f940c4e4055ad315fa6e77d6a74c99142f318a9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ca45240922f84cfbba694074d5d024106fe68a4ac67653c86cba17ba45d255da
MD5 ab6437b5da74886ee99cb835601ad44e
BLAKE2b-256 9b8dace293f66660f1a07a4d7d8aa6e9110edc14f8a87d21f6ba152390130cc9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ba37ce68df1bddfd4dd7f427a3f750c44d80f77410f008c48ba05676bf6527f1
MD5 ea87cfc7264d282fb519185796568d0c
BLAKE2b-256 4859232800e2df845c644380491f2c18fee45628cc76156311834917c22b8ded

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cb10f0a19c4d034bbe029704c330f5da9d7806cd33bcac9143ea5f5c7f57c1a2
MD5 a60b9e0fc1f16ef0f6308d9be61f3cb8
BLAKE2b-256 812b3ff00d8b45a2832b8f09dc68cc8a51296b0c9db29b0ff8e3eb74dbdbe4d5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d306014e6e81fde90e1d7b9ff97badde420fbdd2357aeb8c32f02ad1f979ce80
MD5 21cf06b4677187d5d08a84affe34971e
BLAKE2b-256 b26c34124fabf14dd563fb17e7ada917115b5fa3d3264eca6d37730808630191

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f727f6165d9661bf77259b7b39c2d16c3799bf5de5c0fdb1384ed8ab0fe48bc1
MD5 3ca1bec9d427428edeaa5653f6c3e7c7
BLAKE2b-256 f028a6c5ae418b7371ce13a5cc4e5c10089f7902b7848b0b6a3d71209b8ea08c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 28ccdf27fb590a4b0d3ec91766659b4c27fe6c83568625d936ec2762521a4f77
MD5 831707b4b4743a68f0a74be9c388014f
BLAKE2b-256 e40038a6b5937ff0f851031b548d38bf33eebcd1ec109e611d6a8cc85bb89d49

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5c855421b4783cde6cc1de52f2ae911db0bebd31fba10a681bc661febb067635
MD5 74a00fe1ee03f6e4855299ea82582830
BLAKE2b-256 593700aab51d3764d4a83eb82253d6457baaeab947458805fffa94f382ff8da1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7e891c571fa8139c3a0b7e0f4031dc2e671f35e681954407be1c30cb83715936
MD5 b327109c08f7ec6c83b2495a2144a04a
BLAKE2b-256 3b437fdc809a1f4ab061ccac0a6421b226eb0d18de2eecead73f86e552f8f8b7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 73e45dfd2690ac2db37fdb7d1d7b619911fcede54648b0d8a1a1eb699735ce86
MD5 8a235b64b55f0471b584dc99f796a37b
BLAKE2b-256 1657d89aaf4492fc4fbca77ecbb1b7a747353edb3eaebaacb64eacbf4e597bf8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 210830bb3cb578dc5d29bcb2ca21938628dd3b3a6dff805408688ba7ecaf153f
MD5 d9eec821daed18eb7f428b95745595be
BLAKE2b-256 b2f82c24957491b0aebbf04f0a3538319ef15fe20866342ade87891a79f0c1e1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a364a809f7f7c5647f7641b03008ce8692531ebf5b6e248ca60f6e1ab9c0098a
MD5 5801603ef14ce24aab47b9dbd0eca2db
BLAKE2b-256 3322e6e3479339d6237c21a7eaf4745ca0fa28e482656d9afbe2d29e52132515

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pywellen-0.18.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e6e43bdcdc7309ecde3bf7ff6d40acd9b18619d015b7c23fea2fde306aa4dbda
MD5 9dae657ac4db47b79c58c903415f8c68
BLAKE2b-256 89e9f7a4be0ef192e50ca2c87047df32a7e1b0a3787ad3e715f89e79de16734c

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