This is a repository for the board design and case study HDL for the OffRAMPS board. The OffRAMPS enables a user to insert a Digilent CMOD-A7 FPGA as a machine-in-the-middle between an Arduino Mega and a RAMPS 1.4. This enables us to insert or potentially detect Trojans in hardware at print-time.
This repository is organized in three parts: kicad, hdl, and captures
./
├── hdl
│ ├── scripts -- Python scripts related to Trojan detection
│ └── src -- VHDL source files and Xilinx constraints
│
├── kicad
│ ├── docs -- Assorted documentation for parts used in the board design
│ ├── parts -- Downloaded part files used in the schematic and board layout
│ └── revA -- KiCAD project itself, revision A of the board design
│
├── captures
│ ├── golden.csv -- A known good pulse profile for comparison
│ └── trojans -- Pulse profiles of simulated Flaw3D trojans
│
├── README.md -- This document
└── LICENSE -- CC BY-NC 4.0 License
If you wish to cite this work, please cite as:
@misc{blocklove2024offramps,
title={OffRAMPS: An FPGA-based Intermediary for Analysis and Modification of Additive Manufacturing Control Systems},
author={Jason Blocklove and Md Raz and Prithwish Basu Roy and Hammond Pearce and Prashanth Krishnamurthy and Farshad Khorrami and Ramesh Karri},
year={2024},
eprint={2404.15446},
archivePrefix={arXiv},
primaryClass={cs.CR}
}
This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.
