- 预先安装
iverilog
或modelsim
仿真器,确保仿真器在系统环境目录内。 - 执行顶层仿真
./sim/mmp_iddmm_sp_tb/run_iverilog.bat
或./sim/mmp_iddmm_sp_tb/run_modelsim.bat
。 - 可在run_iverilog.bat内或do.do内定义宏
_VIEW_WAVEFORM_
用来查看单次波形,否则testbench将会进行随机测试,比较IDDMM-MMP和R2MM算法的一致性。 - 使用vivado 2017.4打开
./vivado-mmp
内的vivado工程,时序情况可在该工程内查看,xdc内默认时钟304MHz。 - 说明文档在
./output-doc
内。所有源码包括python模型在./src
内
- 4096bit蒙哥马利域模乘算法
- 纯verilog描述
- 乘法器使用*实现
- FPGA综合频率 304 MHz
- 周期数 2293 cycles
- 等效逻辑门数147KGate
- 等效RAM用量 16Kbit
- 可进行m固定的随机验证
- 算法返回 x * y * R-1 mod m, R 需要预先计算
2020, HDU E-M-T GROUP
helrori2011 helrori2011@gmail.com
muyexinya
MIT