Skip to main content

Python binding generator for veriltor-based simulators of verilog designs.

Project description

Python binding generator for veriltor-based simulators of verilog designs.

In the context of the side-channel analysis of hardware implementations, an evaluator usually requires to have access to the internal values of a target circuitry. For this purpose, a circuit oracle simulating these values is implemented, which may turn out to be time consuming to do manually (e.g., each probed internal value should be modeled and any modification of the original circuitry implies to rewrite the circuit oracle) and/or achieve poor performances (e.g., spawning a simulator process for each simulation).

The Verime tool is proposed to tackle these issues. In particular, it automatically generates a prediction library of a circuit (described in Verilog). More precisely, it performs behavioral verilog simulations during an arbitrary amount of clock cycles thanks to a Verilator backend. Verilator is a powerful tool, but requires some expertise and predicting certain internal states using the \* verilator public *\ pragma can be challenging and time consuming to setup for a non-experienced user. Based on that, the Verime tools acts as a wrapper for verilator and aims to (significantly) reduce the evaluator work: it automatically generates the C++ Verilator backend code and generates a user friendly python package thant can be easily integrated and used.

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

verime-1.0.2.tar.gz (33.1 kB view details)

Uploaded Source

Built Distribution

verime-1.0.2-py3-none-any.whl (32.2 kB view details)

Uploaded Python 3

File details

Details for the file verime-1.0.2.tar.gz.

File metadata

  • Download URL: verime-1.0.2.tar.gz
  • Upload date:
  • Size: 33.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for verime-1.0.2.tar.gz
Algorithm Hash digest
SHA256 caa27106370b5b28f47efe9c62e22bc675890addcc0e01f089ef61b42e2f7835
MD5 9c6949556ffc3aeb36481130f1351b63
BLAKE2b-256 5d8d21bbc8e5cb4b5f7621bbeae4c9279433799f263c900bb22918ab871c2eb5

See more details on using hashes here.

File details

Details for the file verime-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: verime-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 32.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for verime-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 780368d5a0b691648b68234f2ff86ccc0aeab2a35c1036b4731392d475022ede
MD5 f37c19138004d1b5d0298da08fc2c44b
BLAKE2b-256 94cfd6ba397e3abaddab942f73a3faa4904d72c34921d62d58ea25d68131bc3c

See more details on using hashes here.

Supported by

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