aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-11-13Merge branch 'config_core_selector'Paul Selkirk
2015-06-30Fixed missing parenthesis in block memories that reduced mem sizes. Added ↵Joachim Strömbergson
test cases that verifies that we can work with 2048 bit operands.
2015-06-29Added testcases with 1024 bit and 2048 bit modulus, mem and short exponents.Joachim Strömbergson
2015-06-27Fixed the license in the header.Joachim Strömbergson
2015-06-27Adding block memory with internal address generator as used in modexp_core, ↵Joachim Strömbergson
but with 64 bit internal data width for the modexp_core. Adding a README to explain the purpose of the contents of the support source and what the files are for.
2015-06-26Adding note about experimental fused shift functionality in the adder stage.Joachim Strömbergson
2015-06-26Adding hold register and bit combine to create final s_mem data with fused ↵Joachim Strömbergson
add and div.
2015-06-26Added test case with small exponent and modulus, message that requires ↵Joachim Strömbergson
padding to work correctly.
2015-06-26Changed modexp core to use explicit exponent length to allow removal of ↵Joachim Strömbergson
padding of exponent and improving performance. Updated testbenches to match the changed lengths inside the device under test.
2015-06-26Removed extra digit in test case KAT that had creeped in.Joachim Strömbergson
2015-06-26Added test register for cycle trace. Moved index counter update under ↵Joachim Strömbergson
if-else to remove spurious s_mem read.
2015-06-25Removed obsolete register. Fixed name of trace signals.Joachim Strömbergson
2015-06-25Update of montprod after test implementation with different operand sizes.Joachim Strömbergson
2015-06-25Added a support wrapper used to test implementations of montprod with bigger ↵Joachim Strömbergson
operand sizes.
2015-06-25Added another state for setting s_mem_read_addr to allow shortcutting one ↵Joachim Strömbergson
cycle in each loop.
2015-06-25Minor nits.Joachim Strömbergson
2015-06-25Removed stale switch since we now do s_mem init integrated with calculation.Joachim Strömbergson
2015-06-24Removed stale mux state.Joachim Strömbergson
2015-06-24Fused the s_mem init loop into the adder loop.Joachim Strömbergson
2015-06-24Small improvement in report of test result.Joachim Strömbergson
2015-06-24Reorganized address generation and bit index generation.Joachim Strömbergson
2015-06-24Corrected suffixes and cleaned up product address generation.Joachim Strömbergson
2015-06-24(1) Untangled the word index address generator from the product logic. (2) ↵Joachim Strömbergson
Updated the montprod TB to match changed FSM states in montprod.
2015-06-23Fixed incorrect compile time expression for sizing the memory.Joachim Strömbergson
2015-06-23Changed name of files to reflect that the adder and the shifters are now not ↵Joachim Strömbergson
specifically working on 32-bit operands. HEADSUP: This breaks builds that use the old file names.
2015-06-23Updated all modules below modexp_core has been updated to have generic ↵Joachim Strömbergson
operand size. Updated module integrations in modexp_core to set the operand width and address width.
2015-06-23Updated the 2r1w block memory to be operand size generic. Minor fix in 1r1w ↵Joachim Strömbergson
block memory.
2015-06-23montprod now supports generic operand size.Joachim Strömbergson
2015-06-23Adding module parameters for generic operand size to modexp_core and top ↵Joachim Strömbergson
level localparams with explanation in modexp.v to control the core instantiation.
2015-06-23Updated residue module to use generic operand size.Joachim Strömbergson
2015-06-23Made the adder and shifters words size generic. Updated the montprod and ↵Joachim Strömbergson
residue to use the generic adder and shifters.
2015-06-22Changed blockmem1r1w used in montprod to generic data and address widths. ↵Joachim Strömbergson
Updated instantiation to use generics.
2015-06-22Adding a minor comment in the header to exmplain what the module parameters ↵Joachim Strömbergson
means.
2015-06-22Changing module interface and internal defines to use symbolic widths for ↵Joachim Strömbergson
operand data size and addresses. We need to update counters too.
2015-06-22Consolidated address settings, removed stale s logic mux control, removed ↵Joachim Strömbergson
extra lsw set.
2015-06-22Killed off debug in RTL since we now whow info from TB.Joachim Strömbergson
2015-06-22Removing stale states in FSM.Joachim Strömbergson
2015-06-22Removing state that has been collapsed.Joachim Strömbergson
2015-06-22Cleanup of prodcalc.Joachim Strömbergson
2015-06-22Adding write control of s_mem for first iteration and adding a new stage in ↵Joachim Strömbergson
priority mux.
2015-06-22Adding mux to allow integrating s_mem init with main adder loop.Joachim Strömbergson
2015-06-18Adding iteration flag to be used to remove zero fill of s_mem.Joachim Strömbergson
2015-06-18Moved s logic mux control to control fsm.Joachim Strömbergson
2015-06-18Correct update after linting.Joachim Strömbergson
2015-06-18Restored version of montprod to a version that actually works.Joachim Strömbergson
2015-06-18Combined case statements to make it easier to follow the sequences.Joachim Strömbergson
2015-06-18Update after linting after cycle collapsing.Joachim Strömbergson
2015-06-17(1) Collapsed the sm and sa adder states. Thisimoproves performance for ↵Joachim Strömbergson
modexp with 3%. (2) Updated montprod testbench to not use the now removed states. (3) Minor code cleanup to make it easier to work with for further improvements.
2015-06-17(1) Cleaned up bit select for operand b and a. (2) Fixed name of loop ↵Joachim Strömbergson
counter. (3) Reordered processes to main datapath first.
2015-06-17Fixed order of states.Joachim Strömbergson