Coder Social home page Coder Social logo

dashtroyer / acme-tool Goto Github PK

View Code? Open in Web Editor NEW
6.0 1.0 2.0 5.87 MB

ACME (Automatic Configuration Memory Error-injection) is a tool designed to translate the configuration memory essential bits of an SRAM-based FPGA region into injection addresses for the Xilinx SEM IP Controller.

License: GNU General Public License v3.0

C++ 100.00%

acme-tool's Introduction

ACME-tool

ACME (Automatic Configuration Memory Error-injection) is a tool designed to translate the configuration memory essential bits of an SRAM-based FPGA region into injection addresses for the Xilinx SEM IP Controller.

ACME is developed in C and currently supports the KCU105 UltraScale device. However, it can be modified to add new devices prior a characterization step explained in the user manual. ACME requires the essential bit file (EBD file) generated by Vivado to perform the translation from configuration bits to injection addresses for the Xilinx SEM IP Controller. To constraint the amount of bits translated to those inside a pBlock region, the coordinates of the rectangle containing the design can be used to extract only these addresses from the EBD file.

Apart from the user manual and the code, this project also contains the papers describing the first and the second version of ACME. Both are in the project, but I recommend using ACMEv2 since it is more accurate (as explained in the paper).

Please, cite one (or both) of the following papers if you use ACME for your research:

[1] Aranda, L. A., Sánchez-Macián, A., & Maestro, J. A. (2019). ACME: A tool to improve configuration memory fault injection in SRAM-based FPGAs. IEEE Access, 7, 128153-128161.

[2] Aranda, L. A., Ruano, O., Garcia-Herrero, F., & Maestro, J. A. (2021). ACME-2: Improving the Extraction of Essential Bits in Xilinx SRAM-based FPGAs. IEEE Transactions on Circuits and Systems II: Express Briefs.

acme-tool's People

Contributors

dashtroyer avatar

Stargazers

 avatar  avatar 阿瑞 avatar  avatar George avatar Salvatore Gabriele La Greca avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.