CRCLA编译前端中代码检测与DFG生成技术研究
TP314; 针对密码算法自动映射到可重构密码逻辑阵列(CRCLA)的需求,并为给后端映射提供准确、精简的数据流图,提出了一种数据流图生成与优化的前端设计.该前端以Flex、Bison为编译框架,对高级语言C++编写的代码进行词法、语法分析得到语法树,并依据密码算法指令特点和CRCLA硬件结构进行语义分析生成数据流图;源代码中存在不同方式实现的功能如S盒替换、比特置换,但其在CRCLA中可用单算子代替实现.设计了基于注意力机制的图嵌入模型进行检测识别,并进行图结构替换;同时函数展开、冗余节点消除与数据流图分层等操作优化了数据流图.实验结果表明,该设计经代码识别、优化后,实现了精简的数据流图自动...
Saved in:
Published in | 计算机工程与应用 Vol. 59; no. 23; pp. 63 - 72 |
---|---|
Main Authors | , , |
Format | Journal Article |
Language | Chinese |
Published |
战略支援部队信息工程大学 密码工程学院,郑州 450001
01.12.2023
|
Subjects | |
Online Access | Get full text |
ISSN | 1002-8331 |
DOI | 10.3778/j.issn.1002-8331.2301-0102 |
Cover
Loading…
Summary: | TP314; 针对密码算法自动映射到可重构密码逻辑阵列(CRCLA)的需求,并为给后端映射提供准确、精简的数据流图,提出了一种数据流图生成与优化的前端设计.该前端以Flex、Bison为编译框架,对高级语言C++编写的代码进行词法、语法分析得到语法树,并依据密码算法指令特点和CRCLA硬件结构进行语义分析生成数据流图;源代码中存在不同方式实现的功能如S盒替换、比特置换,但其在CRCLA中可用单算子代替实现.设计了基于注意力机制的图嵌入模型进行检测识别,并进行图结构替换;同时函数展开、冗余节点消除与数据流图分层等操作优化了数据流图.实验结果表明,该设计经代码识别、优化后,实现了精简的数据流图自动化生成,与其他编译器的编译前端相比性能提高了约37%. |
---|---|
ISSN: | 1002-8331 |
DOI: | 10.3778/j.issn.1002-8331.2301-0102 |