add galois insns subtasks
[libreriscv.git] / nlnet_2021_crypto_router / discussion.mdwn
1 # 19th September 2023 - Diagram for proposed grant budget reallocation
2
3 *(Subject to change based on this evening's discussion)*
4
5 Bug 589 - NLnet top-level gigabit crypto router 2021-02-052
6 |- (DONE) Bug 770 - Discussion and Finalisation of Which Cryptographic Primitives to Implement - 2000
7 |- (DONE) Bug 771 - Creation of Cryptographic-Primitive OpenPower ISA Pseudo-code - 6000
8 |- (DONE) Bug 817 - Big Integer Math (sv.adde, sv.subfe, sv.madded, 128 by 64-bit -> 64-bit div/rem, maybe more...) - 3500
9 |- (DONE) Bug 906 - change HDL code to not use type annotations even for dataclasses - 0
10 |- (DONE) Bug 966 - create shift-and-add instruction - 750
11 |- (!!!) Unallocated 1750EUR. Move budget for Jacob's bigint tasks?
12 |- (IN PROGESS) Bug 772 - Creation of the HDL Code for the cryptoprimitive (bitmanip, bigint, etc.) Instructions - 9000
13 |- (IN PROGRESS) Bug 741 - bitmanip ALU implementation - 5500
14 |- (IN PROGRESS) Bug 782 - add galois field bitmanip instructions - 3000
15 |- (IN PROGRESS) Bug 784 - Implement cl* instructions - 3000
16 |- (MOVE TO FUTURE) Bug 785 - Implement gfb* instructions - 0
17 |- (MOVE TO FUTURE) Bug 786 - Implement gfp* instructions - 0
18 |- (DONE) Bug 964 - binutils: support maddedu, divmod2du instructions - 500
19 |- (!!!) Unallocated 3000EUR, allocate more to bitmanip or binutils?
20 maybe allocate some to add cl* insns to binutils (depends on Bug 784)
21 |- (IN PROGRESS) Bug 773 - High-Level Demos of Cryptographic and Other Relevant Algorithms - 5500
22 |- (IN PROGRESS?) Bug 965 - implement chacha20 - 1000
23 |- (DONE) Bug 1007 - implement chacha20 in svp64 assembler - 1500
24 |- (IN PROGRESS) Bug 1151 - Ed25519 demo - 1500
25 |- (IN PROGRESS) Bug 1153 - 2048-bit RSA demo using SVP64 and bigint insns - 0
26 |- (IN PROGRESS) Bug 1157 - Implement poly1305 - 1500
27 |- (DONE) Bug 774 - Equipment needed, such as FPGA boards and Ethernet PMODs - 4000
28 |- (DONE) Bug 775 - Project Management - 4000
29 |- (IN PROGRESS) Bug 776 - Documentation of designs, code, processes, and other relevant things as needed - 8000
30 |- (DONE) Bug 968 - document shift-and-add instruction - 900
31 |- (DONE) Bug 1006 - document chacha20 SVP64 assembler - 2500
32 |- (IN PROGRESS) Bug 1158 - poly1305 documentation - 2300
33 |- (IN PROGRESS) Bug 1166 - Ed25519 documentation. - 2300
34 |- (PARTLY USED) Bug 840 - Formal proofs and unit tests for cryptoprimitives - 9500
35 |- (DONE) Bug 967 - unit test for shift-and-add instruction - 150
36 |- (DONE) Bug 977 - chacha20 round unit test - 1600
37 |- (IN PROGRESS) Bug 1159 - poly1305 unit tests - 2500
38 |- (IN PROGRESS) Bug 1167 - Ed25519 unit tests - 2500
39 |- Unallocated 2750 (!!!) - Allocate to unit tests for Jacob's pow(x,y,z)
40 work? Or perhaps for more chacha20 tests?
41 |- (IN PROGRESS) Bug 1044 - SVP64 implementation of pow(x,y,z) - 2000
42