Page 182 - 《软件学报》2021年第8期
P. 182
2464 Journal of Software 软件学报 Vol.32, No.8, August 2021
件开销是α n+1 个 RRAM 交叉开关阵列.
(2) SA 模块的输入是模拟信号,输出是数字信号.如图 5(a)所示,SA 模块可以由两个运算放大器和一个
NAND 门组成.为了方便估计 SA 模块的硬件开销,我们使用现有的模型分别统计组成运算放大器和 NAND 门
所需要的晶体管等元器件的数量.
(a) SA 模块 (b) SR 模块
Fig.5 SA module and SR module
图 5 SA 模块与 SR 模块
(3) SR 模块的目的是为了放大激活的木马神经元的影响.如图 5(b)所示,SR 模块由多个 D 型触发器组成,
例如一个 8 比特的 SR 由 8 个 D 型触发器组成.同样地,我们可以根据每一个 D 型触发器所需要的晶体管等元
器件的数量来估计 SR 的硬件开销.
3.4 整个系统的框架
如图 6 所示,神经网络模型在映射到 RRAM 计算系统之前,我们先要选择木马要插入在网络模型的位置,
然后根据木马所插入的位置来训练木马突触参数,之后再将含有木马的神经网络映射至 RRAM 计算系统中.
RRAM 计算系统在芯片设计过程中嵌入 SA 模块和 SR 模块.请注意,以上过程是离线的,即只需要执行一次.
Fig.6 Overview of the whole system framework
图 6 整个系统的框架概览
除了木马之外,RRAM 计算系统还需要嵌入一个授权模块.Trigger RRAM 单元默认处于允许激活状态.用
户输入正确密钥时,授权通过,系统则发出写 RRAM 指令,将 Trigger RRAM 单元调整为禁止激活状态;否则,授权
不通过,Trigger RRAM 单元的状态不变,仍处于允许激活状态.这个过程是在线的,即 RRAM 计算系统每次被使
用时都需要进行授权验证操作.为了更好地管理密钥,授权模块可使用 PUF [20] 实现给每一颗芯片分配不同密钥.