A research-grade simulation suite for fault-aware memristive crossbars, side-channel attacks, and PUF-based hardware security countermeasures, built on MemTorch + PyTorch.
- MemTorch-based mapping of DNN weights onto resistive-RAM crossbars
- Stuck-at (SA0/SA1) fault injection with configurable fault rates
- Correlation Power Analysis (CPA) on simulated crossbar current traces
- Memristive PUF generation, CRP database, and metric evaluation
- Key result: characterised the Fault Rate vs. Security (CPA success / PUF reliability) trade-off
conda env create -f environment.yml
conda activate memristive-securitypython src/main.py --config config/default.yamlpytest tests/ -v| Notebook | Topic |
|---|---|
01_memtorch_baseline.ipynb |
MemTorch mapping & inference accuracy |
02_fault_injection_analysis.ipynb |
Stuck-at fault sweep |
03_side_channel_attack.ipynb |
CPA demo |
04_fault_security_cross.ipynb |
Fault–Security trade-off |
05_puf_evaluation.ipynb |
PUF uniqueness & reliability |
memristive-security-framework/
├── config/ # YAML hyper-parameters
├── src/ # Python source package
│ ├── models/ # Neural-network & mapping utilities
│ ├── hardware/ # Crossbar, fault, variability
│ ├── attacks/ # CPA & leakage models
│ ├── defense/ # PUF generation & metrics
│ └── utils/ # Data, metrics, plotting
├── notebooks/
├── tests/
├── scripts/
├── results/
└── docs/