FPGA网表逆向与原始RTL对比验证实战
📚 共计 30 章节
01
FPGA逆向工程概述
什么是网表逆向、应用场景(IP保护、安全审计、竞品分析)、课程目标与学习路径
概念
入门
02
数字电路基础回顾
组合逻辑(与或非门、多路选择器、加法器)、时序逻辑(触发器、锁存器、寄存器)、状态机基础
基础
电路
03
FPGA架构与网表基础
主流FPGA架构(LUT、FF、BRAM、DSP、IO)、网表格式(EDIF、Verilog网表、BLIF)、综合与映射概念
架构
网表
04
网表解析工具入门
Tcl脚本基础、Vivado/Quartus命令行操作、网表文件结构分析
工具
Tcl
05
网表解析工具进阶
Python解析EDIF/Verilog网表、正则表达式提取关键信息、网表数据库构建
Python
解析
06
逻辑门级网表分析
门级网表结构、标准单元库识别、基本逻辑门提取与功能还原
门级
还原
07
组合逻辑还原技术
多级逻辑化简、布尔代数应用、从LUT配置表还原真值表
组合
LUT
08
时序逻辑还原技术
触发器识别(D-FF、T-FF、JK-FF)、时钟与复位网络分析、寄存器堆提取
时序
触发器
09
层次化网表分析
模块边界识别、实例化关系提取、层次化结构重建
层次
模块
10
网表连通性分析
信号线追踪、扇入扇出分析、关键路径识别
连通
路径
11
网表与RTL对比方法论
对比维度(结构、功能、时序)、等价性检查概念、形式化验证与仿真对比
方法论
等价
12
功能等价性检查(一)
组合逻辑等价性、使用SAT/SMT求解器进行布尔可满足性检查
SAT
组合
13
功能等价性检查(二)
时序逻辑等价性、状态机等价性、带记忆元件电路的验证
时序
FSM
14
仿真对比验证
搭建对比仿真环境、测试向量生成、波形对比与自动比对
仿真
波形
15
网表到RTL的结构映射
模块级映射、信号名匹配、端口连接关系重建
映射
结构
16
网表到RTL的代码生成
从网表生成行为级Verilog/VHDL、代码风格优化、可读性提升
代码生成
RTL
17
网表逆向中的常见陷阱
优化导致的网表变形(常量传播、资源共享)、异步电路处理、时钟域交叉问题
陷阱
异步
18
网表逆向工具实践(一)
开源工具介绍(Yosys、ABC、Netlist2RTL)、工具链搭建与使用
Yosys
ABC
19
网表逆向工具实践(二)
使用Yosys进行网表读取与转换、脚本化处理流程
Yosys
脚本
20
网表逆向工具实践(三)
使用ABC进行逻辑优化与等价性检查、自定义脚本开发
ABC
优化
21
网表逆向工具实践(四)
使用SymbiYosys进行形式化验证、属性定义与证明
形式化
SymbiYosys
22
网表逆向工具实践(五)
使用GTKWave进行波形查看与分析、调试技巧
GTKWave
波形
23
网表逆向工具实践(六)
综合案例——从EDIF网表还原RTL代码
案例
EDIF
24
网表逆向工具实践(七)
综合案例——从加密网表提取功能模块
加密
提取
25
网表逆向工具实践(八)
综合案例——网表与RTL的自动化对比脚本开发
自动化
脚本
26
网表逆向中的安全与法律问题
知识产权保护、逆向工程的法律边界、合规使用场景
法律
安全
27
网表逆向在IP保护中的应用
水印检测、硬件木马检测、设计完整性验证
IP保护
木马
28
网表逆向在安全审计中的应用
后门检测、侧信道漏洞分析、固件逆向
审计
后门
29
网表逆向在竞品分析中的应用
功能提取、性能评估、设计思路还原
竞品
分析
30
课程总结与进阶方向
学习路径回顾、推荐书籍与论文、社区资源与开源项目、未来趋势(AI辅助逆向、大规模网表处理)
总结
进阶