SM4 algorithm FPGA implementation and optimization with agile development

NIE Huaihao, HAN Yueping, LI Kexin

Integrated Circuits and Embedded Systems ›› 2024, Vol. 24 ›› Issue (7) : 80-84.

PDF(4485 KB)
PDF(4485 KB)
Integrated Circuits and Embedded Systems ›› 2024, Vol. 24 ›› Issue (7) : 80-84. DOI: 10.20193/j.ices2097-4191.2024.07.013
Research Paper

SM4 algorithm FPGA implementation and optimization with agile development

Author information +
History +

Abstract

This article uses agile development technology to design and improve the SM4 algorithm,and completes the implementation and verification on the Xilinx FPGA platform.In view of the shortcomings of the SM4 algorithm featuring long critical path and low throughput,a register group consisting of 32 registers is inserted into the round function calculation process as a cache area,and the pipeline method is used to shorten the critical path and optimize the S-box module structure,thus greatly improving the work efficiency.Frequency and throughput reach 340 MHz and 1.2 Gbit/s,respectively.At the same time,the new high-level hardware description language BSV is used for development,which greatly reduces the design complexity.Compared with the design using Verilog,the performance is 40% higher and the complexity is 60% lower without notable difference in hardware overhead.Compared with the earlier solution,the resource overhead is reduced by 70%,the performance is doubled,and it has higher application value.

Key words

agile development / BSV / SM4 / critical path / FPGA

Cite this article

Download Citations
NIE Huaihao , HAN Yueping , LI Kexin. SM4 algorithm FPGA implementation and optimization with agile development[J]. Integrated Circuits and Embedded Systems. 2024, 24(7): 80-84 https://doi.org/10.20193/j.ices2097-4191.2024.07.013

References

[1]
GAO X, LU E, XIAN L, et al. FPGA Implementation of the SMS block cipher in the Chinese WAPI Standard[C]// Proceedings of the 2008 International Conference on the Embeddef Software and Systems Symposia, 2008:104-106.
[2]
ZHAO J, GUO Z C, ZENG X W. High throughput implementation of SMS4 on FPGA[J]. IEEE Access, 2019(7):88836-88844.
[3]
RISHIYUR S NIKHIL, KATHY R CZECK. BSV by Example[DB/OL].[2023-12-04]. http://csg.csail.mit.edu/6.S078/6_S078_2012_www/resources/bsv_by_example.pdf.
[4]
何诗洋, 李晖, 李凤华. SM4算法的FPGA优化实现方法[J]. 西安电子科技大学学报, 2021, 48(3):155-162.
HE SH Y, LI H, LI F H. FPGA optimization implementation method for SM4 algorithm[J]. Journal of Xi'an University of Electronic Science and Technology, 2021, 48(3):155-162 (in Chinese).
[5]
LIANG H, WU L, ZHANG X, et al. Design of a masked SBox for SM4 based on composite field[C]//2014 Tenth International Conferenceon Computational Intelligence and Security. Kunming:IEEE, 2014:387-391.
[6]
Bluespec Inc.Bluespec System Verilog and Bluespec Development Workstation User Guide[DB/OL].(2017-07-21)[2023-12-04]. http://csg.csail.mit.edu/6.375/6_375_2019_www/resources/bsv-user-guide.pdf.
[7]
JIN Y, SHEN H, YOU R. Implementation of SM4 Block Cipher on FPGA[C]//Proceedings of the 2006 First International Conference on Commun-ications and Networking in China. Piscataway:IEEE, 2006:1-4.
[8]
JOHN L HENNESSY, DAVID A PATTERSON. Computer Architecture:A Quantitative Approach[DB/OL].[2023-12-04]. http://site.ebrary.com/lib/mitlibraries/docDetail.action?docID=10506454.
[9]
申懿鑫, 韩跃平, 唐道光. 高层次综合的SM4算法硬件实现与优化[J]. 单片机与嵌入式系统应用, 2023, 13(8):11-14.
SHEN Y X, HAN Y P, TANG D G. Hardware Implementation and Optimization of High Level Integrated SM4 Algorithm[J]. Microcontrollers & Embedded Systems, 2023, 13(8):11-14 (in Chinese).
[10]
GUAN Z Y, LI Y H, SHANG T, et al. Implementation of SM4 on FPGA: Trade-off Analysis Between Area and Speed[C]//Proceedings of the 2018 IEEE International Conference on Intelligence and Safety for Robotics(ISR). Piscataway:IEEE. 2018:192-197.
PDF(4485 KB)

Accesses

Citation

Detail

Sections
Recommended

/