[Cryptech-Commits] [core/platform/common] 01/04: Added support for ModExpNG core: * new 'modexpng' target builds just the ModExpNG (this is mostly for various testing purposes) * new 'hsm_ng' target buils the plain old 'hsm' config + 1x ModExpNG
git at cryptech.is
git at cryptech.is
Tue Feb 11 13:09:42 UTC 2020
This is an automated email from the git hooks/post-receive script.
meisterpaul1 at yandex.ru pushed a commit to branch master
in repository core/platform/common.
commit 4f5c4453343430cce0067007deace5c1ddd7c29e
Author: Pavel V. Shatov (Meister) <meisterpaul1 at yandex.ru>
AuthorDate: Thu Jan 23 13:05:09 2020 +0300
Added support for ModExpNG core:
* new 'modexpng' target builds just the ModExpNG (this is mostly for various
testing purposes)
* new 'hsm_ng' target buils the plain old 'hsm' config + 1x ModExpNG
Also added high-speed clock for the new clock manager.
---
config/core.cfg | 42 +++++++++++++++++++++++++++++++++++++++++-
1 file changed, 41 insertions(+), 1 deletion(-)
diff --git a/config/core.cfg b/config/core.cfg
index d6de1fa..6efc4af 100644
--- a/config/core.cfg
+++ b/config/core.cfg
@@ -36,8 +36,9 @@ modexp = modexpa7
extra wires =
output wire mkm_sclk,
output wire mkm_cs_n,
- input wire mkm_do,
+ input wire mkm_do,
output wire mkm_di,
+ input wire core_clk,
requires = mkmif/dummy-mkmif
[board dev-bridge]
@@ -73,6 +74,10 @@ cores = trng
# for testing just the Modular Exponentiation
cores = modexp
+[project modexpng]
+# for testing just the ModExpNG
+cores = modexpng
+
[project mkmif]
# for testing just the Master Key Memory Interface
cores = mkmif
@@ -86,6 +91,10 @@ cores = sha256 aes trng modexp
# Make me one with everything, except we want two modexp cores for parallel CRT
cores = sha1 sha256 sha512 aes trng modexp modexp mkmif ecdsa256 ecdsa384
+[project hsm_ng]
+# Make me one with everything, except we want the new ModExpNG core
+cores = sha1 sha256 sha512 aes trng modexp modexp modexpng mkmif ecdsa256 ecdsa384
+
# [core] sections
#
# vfiles: A list of Verilog files to include in the vfiles list when
@@ -211,6 +220,37 @@ vfiles =
lib/lowlevel/artix7/dsp48e1_wrapper.v
lib/lowlevel/artix7/dsp48e1_wrapper_modexp.v
+[core modexpng]
+# ModExpNG for Xilinx Artix-7
+core blocks = 16
+block memory = yes
+error wire = no
+module name = modexpng_wrapper
+reset name = rst_n
+extra ports =
+ .clk_core(core_clk),
+vfiles =
+ ../user/shatov/modexpng/rtl/modexpng_wrapper.v
+ ../user/shatov/modexpng/rtl/modexpng_core_top.v
+ ../user/shatov/modexpng/rtl/modexpng_general_worker.v
+ ../user/shatov/modexpng/rtl/modexpng_mmm_dual.v
+ ../user/shatov/modexpng/rtl/modexpng_reductor.v
+ ../user/shatov/modexpng/rtl/modexpng_dsp_array_block.v
+ ../user/shatov/modexpng/rtl/modexpng_io_block.v
+ ../user/shatov/modexpng/rtl/modexpng_io_manager.v
+ ../user/shatov/modexpng/rtl/modexpng_storage_block.v
+ ../user/shatov/modexpng/rtl/modexpng_storage_manager.v
+ ../user/shatov/modexpng/rtl/modexpng_uop_rom.v
+ ../user/shatov/modexpng/rtl/modexpng_uop_engine.v
+ ../user/shatov/modexpng/rtl/modexpng_recombinator_block.v
+ ../user/shatov/modexpng/rtl/modexpng_recombinator_cell.v
+ ../user/shatov/modexpng/rtl/modexpng_dsp_slice_mult_wrapper_xilinx.v
+ ../user/shatov/modexpng/rtl/modexpng_dsp_slice_addsub_wrapper_xilinx.v
+ ../user/shatov/modexpng/rtl/modexpng_sdp_36k_x18_wrapper_xilinx.v
+ ../user/shatov/modexpng/rtl/modexpng_sdp_36k_x16_x32_wrapper_xilinx.v
+ ../user/shatov/modexpng/rtl/modexpng_sdp_36k_x32_x16_wrapper_xilinx.v
+ ../user/shatov/modexpng/rtl/modexpng_tdp_36k_x16_x32_wrapper_xilinx.v
+
[core modexps6]
# ModExp for Xilinx Spartan-6
core blocks = 4
More information about the Commits
mailing list