FPGA 中并发控制器的部分重配置技术解析
1. FPGA 部分重配置的概念
现场可编程门阵列(FPGA)的部分重配置是一个相对较新的概念。目前市面上大多数流行的 FPGA 都支持部分重配置。与传统设计流程不同,原型系统的完整版本通常只实现一次,后续对 FPGA 的更改仅限于设计者预先选择的特定区域。
部分重配置从设计功能角度可分为两种主要类型:
- 静态部分重配置 :在重配置过程中,FPGA 会停止运行。当部分数据被发送到设备时,FPGA 的其余部分处于关闭模式(不活动)。部分配置完成后,设备重新启动。
- 动态部分重配置 :在重配置过程中,FPGA 保持活动状态(不停止)。当设备的一部分正在进行重配置时,FPGA 的其余部分仍在运行。也就是说,动态部分重配置允许在不停止设备的情况下对 FPGA 进行配置。
下面是部分重配置类型的简单表格总结:
| 重配置类型 | FPGA 运行状态 | 特点 |
| ---- | ---- | ---- |
| 静态部分重配置 | 停止 | 重配置时其余部分关闭,完成后重启 |
| 动态部分重配置 | 活动 | 重配置时其余部分仍运行 |
2. 并发系统的部分重配置
对于并发控制系统的部分重配置,假设原型系统至少有两个版本。第一个版本(主版本)仅在 FPGA 中实现一次,其他版本(称为上下文)用于交换设备的部分区域。
这种技术依赖于控制器的分解。上下文实际上是待替换的分解模块的不同版本,我们将这样的模块称为可重配置模块,即原型系统中包含至少两个(