Commit Graph

142 Commits

Author SHA1 Message Date
bsdevlin d33639a2fc update barret mod overflow control 2020-09-06 18:50:06 -04:00
bsdevlin 13dfe26bfc Bug fix in barret reduction localparam was not assigning correctly in
actual hardware.
2020-08-20 12:09:53 -04:00
bsdevlin c4c0ad9188 Override should be 1 2020-04-18 16:49:37 -04:00
bsdevlin 472257b6a5 Merge branch 'master' of https://github.com/ZcashFoundation/zcash-fpga.git into HEAD 2020-04-11 18:42:34 -04:00
bsdevlin 9a6d20b385 Add option to not override 2020-04-11 18:40:34 -04:00
bsdevlin 8c2c77b2fb Make sure we reset error signal when we clear valid 2020-03-29 17:11:34 -04:00
bsdevlin c32bc5a7a8 Merge branch 'master' of https://github.com/bsdevlin/zcash-fpga.git 2020-03-29 10:20:26 -04:00
bsdevlin 3b65b386b3 Update for correctly clearing output valid 2020-03-29 10:20:05 -04:00
Ben Devlin d2d050234e bugfix for error condition 2020-02-02 21:20:48 -05:00
bsdevlin 59d8d9ddd3 Merge branch 'master' of https://github.com/ZcashFoundation/zcash-fpga.git 2019-11-30 14:32:59 -05:00
bsdevlin d560d34334 Update readme and remove dependency on bls package for the adder 2019-11-30 14:32:46 -05:00
bsdevlin 2df6113fd9 Add parameters to allow for using montgomery form, default to not using 2019-11-30 14:27:18 -05:00
bsdevlin 7973f4e2e3 Update testbench for loading RAM values, change back to use accum_mult
multiplier, change generate script to always generate RAM_A_W bits worth
(makes testbench easier), and set default build to jus tbe bls12-381
coprocessor
2019-09-28 11:36:28 +08:00
bsdevlin deb8298626 Update testbench to test writing to RAM used in multiplier, fixed bug in
multiplier generation code for loading RAM
2019-09-27 19:27:24 +08:00
bsdevlin 142be15d8d Update to fix bug with building on AWS with the new RAM lookup
multiplier, files were not getting copied properly in AWS encrypt
script.
2019-09-26 21:28:56 +08:00
bsdevlin ddcca9acfa Updating README and pdf files for v1.4 2019-09-15 22:11:04 +08:00
bsdevlin 57ee6c8ad2 New multiplier with RAM for modulo reduction, pairing is 30% faster.
Updated several testbenches to use new multiplier.
2019-09-15 13:42:52 +08:00
bsdevlin dbed8ccb0d Bugfix: Multiplier was not handeling backpressure correctly in some
cases so fixed it to be similier for now. Updated testbench.
2019-08-22 16:22:30 +08:00
bsdevlin 7220251fb2 Update to fix synthesis errors. 2019-08-20 04:28:32 -04:00
bsdevlin c579406f94 Update inversion block and pairing engine to use external multiplier
blocks.
2019-08-16 17:27:06 +08:00
bsdevlin 38b8284194 Bug fix: Update to reduction multiplier to properly handle back
pressure.
2019-08-16 17:23:52 +08:00
bsdevlin 7b3d971e63 Updates for the ate pairing final exponentiation stage, passing
testbench now.
2019-08-14 00:26:12 +08:00
bsdevlin d01edec6a9 bls12_381 exponent calculation module and testbench 2019-08-11 10:22:24 +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 4c9fc76048 Updates to resource multipliers and new stream version for fe6
multiplication
2019-08-08 12:40:05 +08:00
bsdevlin 9a6268eb13 Remove old fe6 multiplication module 2019-08-08 12:33:18 +08:00
bsdevlin c3178ba18d Updates to pairing engine to use streaming inteferace 2019-08-06 19:27:58 +08:00
bsdevlin 82a1710564 Updates for streaming mode fp12 multiplication and testbench 2019-08-05 15:23:30 +08:00
bsdevlin d7163efef2 Updates for streaming logic and test bench 2019-08-04 11:45:12 +08:00
bsdevlin f8371eba2e Add files for calculating the Frobenius map used in ate pairing. 2019-08-01 20:24:46 +08:00
bsdevlin 4245604b13 Remove double driver 2019-07-28 23:54:51 +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 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 77afff4e48 Bugfix for arbitrator locking 2019-07-20 15:37:19 +08:00
bsdevlin 2719f4e3d0 Fix control and add multiplication to fp6 2019-07-16 17:42:41 +08:00
bsdevlin 51e5ca0628 Update to testbench 2019-07-16 17:42:21 +08:00
bsdevlin 9e36dd5a15 Multiple by non-residue fp2 2019-07-16 17:41:20 +08:00
bsdevlin d54b2ba5ba Fix error signal 2019-07-16 17:40:48 +08:00
bsdevlin 06316acf3b First cut of fp6 areithmetic block 2019-07-12 07:19:32 +08:00
bsdevlin 7486579897 updates to prevent writing to RAM while reset is in progress 2019-07-02 15:02:23 +08:00
bsdevlin d1ab35d9cd Made point checking optional 2019-06-26 00:17:41 +08:00
bsdevlin 189a301918 Add input checks option and add TKEEP to aws axi 2019-06-25 23:20:54 +08:00
bsdevlin 05761baaf9 updates to testbench and fixing synthesis errors 2019-06-24 19:17:47 +08:00
bsdevlin 8e91a27370 Update ec point mult test bench 2019-06-24 18:47:55 +08:00
bsdevlin 1bc56cc5b1 updates to common interfaces to add AXI4 and AXI lite 2019-06-24 18:41:25 +08:00
bsdevlin af96867535 Updates for BLS coprocessor and testbench 2019-06-24 18:40:27 +08:00
bsdevlin 78dadeff48 removed old comment 2019-06-21 21:21:53 +08:00