From 774b2054d78d70e6d0efa1ecd2a877dd8c88fdd0 Mon Sep 17 00:00:00 2001 From: Enrico Pozzobon Date: Fri, 12 Jun 2020 18:30:41 +0200 Subject: [PATCH] Update README.md --- README.md | 50 ++++++++++++++++++++++++++++++++------------------ 1 file changed, 32 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index 49c8384..e14916a 100644 --- a/README.md +++ b/README.md @@ -45,24 +45,38 @@ As an example, let's look at the f1-libopencm3 template. This template is used t Here is a description of the files contained in templates/f1-libopencm3: -
-
test.py
-
This is an executable python file which imports and makes use of the functions in test_common.py. It implements, among other things, `flash()` for flashing the microcontroller over openocd, `get_serial()` for getting the correct USB-to-UART device by its serial number and `dump_ram()` to get a snapshot of the RAM.
-
uartp.c uartp.h
-
These files implement a simple protocol to use over UART which is shared across all the microcontrollers. If you don't wish to use this or you are using another interface, you can write your protocol and implement the client side in your test.py file
-
crypto_aead.h
-
This header defines the `crypto_aead_encrypt` and `crypto_aead_decrypt` functions signatures, which will be impelmented by the different ciphers
-
main.c
-
The implementation of the benchmark target. It takes care of receiving the plaintext, key and nonce, toggling the CRYPTO_BUSY pin and starting the encryption / decryption operation.
-
Makefile
-
Makefile copied from libopencm3 - every template needs a Makefile which to produce a firmware
-
stm32f103c8t6_128k.ld
-
Linker script copied from libopencm3
-
empty_ram.bin
-
A binary file containing random binary data to fill the RAM of the microcontroller with before starting the tests. This is then compared to a RAM dump of the microcontroller after the tests are run to check the total RAM utilization.
-
configure, cleanup
-
A pair of optional scripts executed respectively before and after the compilation, to compensate quirks of the specific platform.
-
+- test.py + +This is an executable python file which imports and makes use of the functions in test\_common.py. It implements, among other things, `flash()` for flashing the microcontroller over openocd, `get_serial()` for getting the correct USB-to-UART device by its serial number and `dump_ram()` to get a snapshot of the RAM. + +- uartp.c uartp.h + +These files implement a simple protocol to use over UART which is shared across all the microcontrollers. If you don't wish to use this or you are using another interface, you can write your protocol and implement the client side in your test.py file + +- crypto_aead.h + +This header defines the `crypto_aead_encrypt` and `crypto_aead_decrypt` functions signatures, which will be impelmented by the different ciphers + +- main.c + +The implementation of the benchmark target. It takes care of receiving the plaintext, key and nonce, toggling the CRYPTO_BUSY pin and starting the encryption / decryption operation. + +- Makefile + +Makefile copied from libopencm3 - every template needs a Makefile which to produce a firmware + +- stm32f103c8t6_128k.ld + +Linker script copied from libopencm3 + +- empty_ram.bin + +A binary file containing random binary data to fill the RAM of the microcontroller with before starting the tests. This is then compared to a RAM dump of the microcontroller after the tests are run to check the total RAM utilization. + +- configure, cleanup + +A pair of optional scripts executed respectively before and after the compilation, to compensate quirks of the specific platform. + ## Compilation of the test firmwares -- libgit2 0.26.0