Commit Graph

121 Commits

Author SHA1 Message Date
Cloud User 406a5bae2a Updated files for bls12-381 to compile on AWS 2019-08-21 09:18:45 +00:00
bsdevlin 99444db3bb Testbench for bls12-381 updated with control test. 2019-08-21 14:09:50 +08:00
bsdevlin 0bee1e1cd3 Adding control instructions for bls12-381 coprocessor 2019-08-21 14:09:25 +08:00
bsdevlin d437d3a165 Enable bls12-381 point multiplication using the miller loop of the
pairing engine instead of a dedicated unit to save area on the FPGA.
Updated the bls12-381 testbench.
2019-08-20 21:05:08 +08:00
bsdevlin 11bde6e1a8 Updates to reduce FF usage for bls12-381 core 2019-08-20 04:29:10 -04:00
bsdevlin e5f4555381 Updates to top level bls12-381 and testbench to use new inverter block. 2019-08-19 15:20:05 +08:00
bsdevlin 0aada9c6b1 Update bls12-381 package function for miller loop to also return the
doubled point so we can use it for point multiplication.
2019-08-16 17:29:42 +08:00
bsdevlin c579406f94 Update inversion block and pairing engine to use external multiplier
blocks.
2019-08-16 17:27:06 +08:00
bsdevlin 5f74545e77 Update pairing engine to calculate full ate pairing, along with
testbench with several cases, will add more self checking and
optimizations next.
2019-08-14 19:46:29 +08:00
bsdevlin 7b3d971e63 Updates for the ate pairing final exponentiation stage, passing
testbench now.
2019-08-14 00:26:12 +08:00
bsdevlin 891dd214dc Updates for bls12-381 Fp12 inversion and wrapper files. 2019-08-10 23:31:58 +08:00
bsdevlin 3faee7b780 Added square mode to bls12-381 Fp12 multiplier and updated testbench,
pairing algorithm.
2019-08-09 00:39:45 +08:00
bsdevlin c8acd6c775 Updates to pairing engine to use new multiplication and resource
arbitrator blocks.
2019-08-08 12:45:47 +08:00
bsdevlin 1ff4d46cac Update top level to include streaming pairing engine 2019-08-06 19:37:22 +08:00
bsdevlin c3178ba18d Updates to pairing engine to use streaming inteferace 2019-08-06 19:27:58 +08:00
bsdevlin f8371eba2e Add files for calculating the Frobenius map used in ate pairing. 2019-08-01 20:24:46 +08:00
bsdevlin 3b4693d407 Adding pairing test to bls12-381 top level testbench (only testing
miller loop right now)
2019-07-28 23:55:42 +08:00
bsdevlin 5136bc8fe9 Add the pairing engine to bls12_381 top level 2019-07-26 19:14:51 +08:00
bsdevlin 789a33351d Adding bls12-381 pairing wrapper to hold all arithmetic for pairing,
will consolidate the bls12-381 logic at a later time.
2019-07-26 16:04:55 +08:00
bsdevlin 481944c547 bls12-381 pairing miller loop working, using full multiplication (will
update to sparse multiplication next)
2019-07-26 14:18:14 +08:00
bsdevlin 2044d52db1 First cut of pairing engine for bls12-381 2019-07-24 21:37:37 +08:00
bsdevlin 0b26ad7372 Bug fix for control bit widths 2019-07-21 10:12:23 +08:00
bsdevlin c25d20a2ce Update Fp6 logic to use formulas 2019-07-20 23:33:34 +08:00
bsdevlin 82ed9c4dd9 Files for Fp12 logic, and fixes to testbench / Fp6 logic 2019-07-20 15:39:30 +08:00
bsdevlin 9bbc0d9516 Functions for multiplication in fp6 2019-07-16 17:43:01 +08:00
bsdevlin 06316acf3b First cut of fp6 areithmetic block 2019-07-12 07:19:32 +08:00
bsdevlin 647707aa2e bug fix for zcash_fpga c++ lib return type 2019-07-05 14:09:56 +08:00
bsdevlin b0d10b1b82 Updates to add point_mult function and testcases, add date and time to
synthesis script for AWS
2019-07-04 17:47:10 +08:00
bsdevlin 81afb93757 Fix bug with sending interrupts back to back 2019-07-03 15:25:00 +08:00
bsdevlin 2c5d835dd9 bugfix for bls tx interface 2019-07-02 21:15:24 +08:00
bsdevlin 692d051e55 Bug fix for adder that would cause it to lock up state machine 2019-07-02 17:46:04 +08:00
bsdevlin eed8841655 update to testbench 2019-07-02 15:09:34 +08:00
bsdevlin 7486579897 updates to prevent writing to RAM while reset is in progress 2019-07-02 15:02:23 +08:00
bsdevlin bb3630a21d more readme updates 2019-07-01 15:20:43 +08:00
bsdevlin 5ed7af923a Updates to c++ library and test case 2019-07-01 13:26:56 +08:00
bsdevlin cb18f7446e Updated to add ADD and SUB functions, memory map fixes, and test bench
updates
2019-06-30 22:25:49 +08:00
bsdevlin e2b90fbad0 Update typo for multi driven net and test case 2019-06-30 14:07:33 +08:00
bsdevlin 23bc7bf5b4 Fixed bls12_381 testbench 2019-06-30 09:32:51 +08:00
bsdevlin 261842a774 add element inversion operations 2019-06-29 14:01:37 +08:00
bsdevlin fcdc3c4975 Update bls12_381 to use atomic writes, and have programmable reset 2019-06-26 18:44:08 +08:00
bsdevlin 4b772fed16 Fix multi driven net 2019-06-26 18:43:44 +08:00
bsdevlin 6200ee1a05 Fix errors in building on AWS 2019-06-26 14:31:52 +08:00
bsdevlin ae2f524c6b updates for v1.1.0 which includes bls12-381 co processor first cut 2019-06-26 13:41:07 +08:00
bsdevlin f8d4341a68 Update to fix testbench for bls12 coprocessor 2019-06-25 17:53:50 +08:00
bsdevlin 3ac213ee3b updates for AWS build and to help timing 2019-06-25 15:11:57 +08:00
bsdevlin c052ddb40e Include files for sim 2019-06-24 23:02:00 +08:00
bsdevlin 485414409e Remove unused files 2019-06-24 22:58:30 +08:00
bsdevlin 23b3d534f7 Fix multi driven net 2019-06-24 22:04:22 +08:00
bsdevlin af5f552a51 synthesis bug fix for bls12_381 module 2019-06-24 21:39:33 +08:00
bsdevlin adf8630be3 update vivado include file 2019-06-24 21:36:23 +08:00