Skip to content
Iodine: Verifying Constant-Time Execution of Hardware
C++ Verilog C Yacc Haskell Python Other
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
app
benchmarks
examples
iverilog-parser
liquid-fixpoint @ 2e459c1
scripts
src/Iodine
test
.ghci
.gitignore
.gitmodules
.hspec
.ignore
ChangeLog.md
LICENSE
README.md
annotation-schema.json
iodine
package.yaml
stack.yaml
t

README.md

Iodine

Instructions

To build, you need to install stack. When installed, just run ./iodine. For the test suite, run ./t.

Command Line Options

iodine v1.0, (C) Rami Gokhan Kici 2019

iodine [OPTIONS] FILE MODULE

Common flags:
     --iverilog-dir=DIR        path of the iverilog-parser directory
     --ir                      just generate the IR file
  -v --vcgen                   just generate the .fq file
  -m --minimize                run delta-debugging of fixpoint
     --no-save --nosave        do not save the fq file
  -a --abduction               run abduction algorithm
  -t --time                    print the runtime
     --no-output --nofpoutput  disable the output from fixpoint
  -h --help                    Display help message
  -V --version                 Print version information
     --numeric-version         Print just the version number

Checks whether the given Verilog file runs in constant time.

First argument is the path the to the verilog file.
Second argument is the name of the root Verilog module in that file.

Example

./iodine -- examples/verilog/stall.v stalling_cpu
You can’t perform that action at this time.