Skip to content

siquus/HDFIT.SystolicArray

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HDFIT.SystolicArray

This repository is part of the Hardware Design Fault Injection Toolkit (HDFIT). HDFIT enables end-to-end fault injection experiments and comprises additionally HDFIT.NetlistFaultInjector and HDFIT.ScriptsHPC.

HDFIT HPC Toolchain

This repository provides a System Verilog systolic array implementation with a test bench, plus the interface "systolicArraySim.a" between the cycle-based simulation of the former and high-level matrix multiplication invocations in OpenBLAS. To this end, this repository also contains an 'openblas' make target, which clones OpenBLAS, applies a git-patch to implement the fault injection interface and compiles the OpenBLAS library (see openblas folder).

Dependencies

When using Ubuntu, please install these dependencies by hand as Ubuntu versions are more than two years old.

Compiling

  • In the Makefile, set VERILATOR_TOP and NETLIST_FAULT_INJECTOR_TOP on top of the file to the correct locations (and compile netlistFaultInjector!).
  • In sv2v.sh and sv2v_fma.sh, it is assumed that the sv2v command can be found via PATH.
  • 'make testNetlist && ./testNetlist' to run unit tests.
  • 'make systolicArraySim.a' to generate the library used as HDFIT RTL fault simulation interface.

Releases

No releases published

Packages

No packages published

Languages

  • C++ 56.6%
  • SystemVerilog 37.8%
  • Makefile 5.2%
  • Shell 0.4%