Unverified Commit b9f50ba9 authored by Eric Gouriou's avatar Eric Gouriou
Browse files

Zvkned AES-CBC Proof of Concept



The aes-cbc-test.c file contains a set of functions verifying and
showcasing usage of instructions defined by the Zvkned extension to
implement the AES-CBC algorithm routines.

Pre-requisites:

- riscv64-linux-gnu toolchain available in PATH.
- Zvkned-enabled binutils-gdb available in PATH overriding the above
  toolchain.
- Zvkned-enabled Spike available in PATH.
- RISC-V Proxy kernel (riscv-pk) compiled and available in
  ~/RISC-V/riscv64-linux-gnu/bin/pk (can be overridden with PK make
  variable).

The default make target will compile all examples and run them in Spike
simulator.

Example make invocation:

    # Build and run Zvkned tests with default parameters
    make run-aes-cbc
    # Override riscv-pk location
    make run-aes-cbc PK=/opt/prefix/riscv64-linux-gnu/bin/pk
    # Override target triplet and riscv-pk location
    make run-aes-cbc TARGET=riscv64-unknown-linux-gnu \
                     PK=/opt/prefix/riscv64-linux-gnu/bin/pk

Make targets:

- aes-cbc-test - compiles the PoC code.
- run-aes-cbc - Executes the compiled binary in Spike.
- clean - Cleans the build artifacts.

Make variables:

- TARGET - Target triplet to use. By default riscv64-linux-gnu.
- PK - Location of the riscv-pk binary. By default it's
  ~/RISC-V/$(TARGET)/bin/pk

See Makefile for more details.

Signed-off-by: default avatarKornel Dulęba <mindal@semihalf.com>
Signed-off-by: default avatarStanislaw Kardach <kda@semihalf.com>
Signed-off-by: default avatarEric Gouriou <ego@rivosinc.com>
parent 0526475d
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment