This demo (customInstructionDemo directory) shows how to use a custom instruction to accelerate the processing time of an algorithm. It demonstrates how performing an algorithm in hardware can provide significant acceleration vs, using software only. This demo uses the Tiny encryption algorithm to encrypt two 64-bit unsigned integers with a 128-bit key.
The demo first processes the algorithm with a custom instruction, and then processes the same algorithm in software. Timestamps indicate how many clock cycles are needed to output results.
By default, newlib-nano is used for this demo.
The following shows the expected execution sequence: