k210-sdk-stuff/README.md
Wladimir J. van der Laan 92945318ab src: Add secp256k1 tests and sign/verify benchmarks
For checking CPU speed/reliability and testing secp256k1 on weird
architectures.
2019-05-12 23:54:47 +00:00

2.7 KiB
Raw Blame History

Maix Go / K210 stuff

First, get the Kendryte C toolchain and copy or symlink the contents of the src/ folder to a checkout of https://github.com/sipeed/LicheeDan_K210_examples.git.

Then to build a certain project do:

mkdir build && cd build
cmake .. -DPROJ=<ProjectName> -DTOOLCHAIN=/opt/riscv-toolchain/bin && make

You will get 2 files, build/<ProjectName> and build/<ProjectName>.bin. The former is an ELF executable, the latter a raw binary that can be flashed or written to 0x80000000 in SRAM and directly executed.

Documentation

Additional register documentation that is not in the datasheet can be found here:

External:

  • k210.svd - Peripheral description for rust K210 BSP (k210-pac project)

Projects

glyph_mapping

Variation of the DVP sample that processes the camera input through a simple DOS 8×8 font glyph-mapping algorithm and shows it on the display.

README

dump_otp

Dumps the contents of the OTP (One-Time Programmable memory) of the K210 CPU to serial output in Intel HEX format.

README

secp256k1_{tests,bench}

Run tests and benchmarks for the secp256k1 elliptic curve cryptographic library on this RISC-V CPU.

rust/k210-console

Console emulator written in Rust for the Maix Go.

Barely functional at the moment. This is really a test for some functionality like SPI and driving the display from Rust, and for playing with Rust RISC-V 64 in general.

README

rust/mandelbrot

Mandelbrot fractal zoom.

README

ROM re'ing

Annotated radare2 config files for the Boot ROM and OTP can be found under r2.

Other projects

Some interesting K210-based projects and demos by other people: