Skip to content

Latest commit

 

History

History
81 lines (52 loc) · 1.77 KB

README.md

File metadata and controls

81 lines (52 loc) · 1.77 KB

Spike-MCryptCores: A light-weight neuromorphic controlling clock-gating-based multi-core cryptography platform

Source code for the paper: Pham-Khoi Dong, Khanh N. Dang, Duy-Anh Nguyen, Xuan-Tu Tran, *''A light-weight neuromorphic controlling clockgating based multi-core cryptography platform'', Microprocessors and Microsystems (accepted), 2024. [PDF]

Setup

The project can be run on Google Collab. For local Python environments, following are the dependencies

  • spikingjelly
  • gdown (can be replaced by a local copy of the dataset)
  • onnxruntime
  • numpy
  • panda
  • pytorch
  • matplotlib

Source code

The Jupyter Notebook

Setting up

The source code only works with Python 3.7, therefore, we will use conda to manage. Please install miniconda from https://conda.io/.

Then, let's create a virtual environment

conda create --name py37 python=3.7

Then, let's activate the new virtual environment.

conda activate py37

Please check the version of Python with

python3 --version

After confirming it, please install the following packages:

pip3 install spikingjelly==0.0.0.0.8
pip3 install gdown
pip3 install onnxruntime
pip3 install pandas
pip3 install protobuf==3.17.3

To download the latest files of data:

gdown --id 19GNGsv7x25WfQcOtWTmOOpDHK9fVQNNf&usp=drive_fs
gdown --id 19B2aNLO9IxIR4jqXERF4VEKN4OslC352&usp=drive_fs
gdown --id 1hJ_vMbVLauuS5i_sriJ8OXRbK1LZ8uc4

We also provide copies in this repo (data_training.csv, output.csv, and data_testing-Full-random.csv).

To run the training and testing

python3 main.py

Citation

Contact

If you have any questions, please contact

  • Khanh N. Dang (khanh [at] u-aizu.ac.jp)