1、(19)中华人民共和国国家知识产权局 (12)发明专利申请 (10)申请公布号 (43)申请公布日 (21)申请号 201910291718.3 (22)申请日 2019.04.12 (71)申请人 南京吉相传感成像技术研究院有限 公司 地址 211135 江苏省南京市江宁区麒麟科 技创新园智汇路300号B单元二楼 (72)发明人 王瑶娄胜王宇宣 (74)专利代理机构 江苏法德东恒律师事务所 32305 代理人 李媛媛 (51)Int.Cl. G06N 3/04(2006.01) G06N 3/08(2006.01) G06F 17/16(2006.01) G06F 9/30(2006.01)
2、 (54)发明名称 基于光电计算阵列的深度卷积生成式对抗 网络的加速方法 (57)摘要 本发明公开了一种基于光电计算阵列的深 度卷积生成式对抗网络的加速方法。 其中, 光电 计算阵列包括由多个发光单元周期排列组成的 发光阵列和由多个计算单元周期排列组成的计 算阵列。 加速方法包括如下步骤: 发光阵列将深 度卷积生成式对抗网络的权重通过光输入的方 法输入到计算阵列中, 作为光输入量, 并保存在 计算阵列中; 将图像数据或噪声数据量化为单比 特的数据后输入到计算阵列中, 作为电输入量; 利用计算阵列分别对深度卷积生成式对抗网络 的生成网络和判别网络中的卷积层运算进行计 算, 计算完成后输出数字信号
3、, 再对该数字信号 进行移位累加操作, 得到最终结果。 本发明的加 速方法在较大提高运算速度的同时具备高能效 的特点。 权利要求书2页 说明书9页 附图6页 CN 109993283 A 2019.07.09 CN 109993283 A 1.基于光电计算阵列的深度卷积生成式对抗网络的加速方法, 其特征在于, 所述光电 计算阵列包括由多个发光单元周期排列组成的发光阵列和由多个计算单元周期排列组成 的计算阵列; 所述加速方法包括如下步骤: 发光阵列将深度卷积生成式对抗网络的权重通过光输入的方法输入到计算阵列中, 作 为光输入量, 并保存在计算阵列中; 将图像数据或噪声数据量化为单比特的数据后输入
4、到 计算阵列中, 作为电输入量; 利用计算阵列分别对深度卷积生成式对抗网络的生成网络和 判别网络中的卷积层运算进行计算, 计算完成后输出数字信号, 再对该数字信号进行移位 累加操作, 得到最终结果。 2.根据权利要求1所述的基于光电计算阵列的深度卷积生成式对抗网络的加速方法, 其特征在于, 所述计算单元包括载流子控制区、 耦合区、 以及光生载流子收集区和读出区; 所述载流子控制区用于控制并调制光生载流子收集区和读出区内的载流子; 所述光生载流 子收集区和读出区中的收集区用于吸收发光单元发射的光子并收集产生的光生载流子; 所 述载流子控制区或者光生载流子收集区和读出区中的读出区与电信号连接, 读
5、出区用于输 出被所述光生载流子和所述电信号作用后的载流子; 所述耦合区连接收集区和读出区。 3.根据权利要求1所述的基于光电计算阵列的深度卷积生成式对抗网络的加速方法, 其特征在于, 利用计算阵列对生成网络的卷积层中的微步幅卷积运算进行计算, 每一层卷 积层的计算过程如下: 对于当前卷积层的m个卷积核, 将每个卷积核按列展开然后拼接为一列向量, 如是m 个卷积核对应的m列向量则拼接为一个矩阵, 对于输入的n个通道的图像特征图, 将n个矩阵 上下拼接为一个新的大矩阵, 采用与该大矩阵尺寸相同的计算阵列, 计算阵列的光输入量 为大矩阵中对应的值; 对于输入的n个图像特征图进行批标准化操作; 当前卷
6、积层的输入为n个通道的图像特征图, 对于其中的每一个图像特征图进行如 下操作获得n个矩阵: 每两行或两列之间添加若干个全零行或者列, 再在周围添加填充行, 得到新的特征图; 随后选取和卷积核相同大小的区域, 按照规定的步幅, 在新的特征图上进 行p次移动, 每次移动均将特征图中所对应的值取出, 按照纵向顺序展开并拼接为一行向 量; 移动完成后, 便得到了p行向量, 将其按顺序上下拼接为一个矩阵; 将所述n个矩阵左右拼接, 得到最终的电输入矩阵; 按照从上到下的顺序依次将电 输入矩阵的每一行输入计算阵列, 行向量的每一列元素对应计算阵列的每一行; 行向量按照比特位输入到计算阵列中, 即每一次输入
7、一个比特; 当计算阵列计算完 成后, 每一列的结果都经过模数转换器转换得到数字信号, 再将数字信号分别按照对应位 进行移位, 然后累加得到结果, 结果的形式为长度为m的向量; 该结果即电输入矩阵的一行 向量进入计算阵列完成计算的结果, 对应着m个卷积核对n个图像特征图中相同区域进行一 次卷积运算然后求和的结果; 按照步骤和的方法, 电输入矩阵的p行向量按顺序完成计算后得到p个向量形式 的结果, 将这p行向量上下拼接为一个矩阵; 把该矩阵的每一列按照从补零后的图像特征图 中取值的顺序拼接成一个特征图, 即对应着每一个卷积核卷积运算的结果, 共得到m个特征 图; 对所述m个特征图添加偏置并进行激活
8、操作, 完成后即得到当前层卷积层的最终结 权利要求书 1/2 页 2 CN 109993283 A 2 果。 4.根据权利要求1所述的基于光电计算阵列的深度卷积生成式对抗网络的加速方法, 其特征在于, 利用计算阵列对判别网络的卷积层中的卷积运算进行计算, 每一层卷积层的 计算过程如下: 对于当前卷积层的m个卷积核, 将每个卷积核按列展开然后拼接为一列向量, 如是m 个卷积核对应的m列向量则拼接为一个矩阵, 对于输入的n个通道的图像特征图, 将n个矩阵 上下拼接为一个新的大矩阵, 采用与该大矩阵尺寸相同的计算阵列, 计算阵列的光输入量 为大矩阵中对应的值; 对于输入的n个图像特征图进行批标准化操
9、作; 当前卷积层的输入为n个通道的图像特征图, 对于其中的每一个图像特征图进行如 下操作获得n个矩阵: 选取和卷积核相同大小的区域, 按照规定的步幅, 在新的特征图上进 行p次移动, 每次移动均将特征图中所对应的值取出, 按照纵向顺序展开并拼接为一行向 量; 移动完成后, 便得到了p行向量, 将其按顺序上下拼接为一个矩阵; 将所述n个矩阵左右拼接, 得到最终的电输入矩阵; 按照从上到下的顺序依次将电 输入矩阵的每一行输入计算阵列, 行向量的每一列元素对应计算阵列的每一行; 行向量按照比特位输入到计算阵列中, 即每一次输入一个比特; 当计算阵列计算完 成后, 每一列的结果都经过模数转换器转换得到
10、数字信号, 再将数字信号分别按照对应位 进行移位, 然后累加得到结果, 结果的形式为长度为m的向量; 该结果即电输入矩阵的一行 向量进入计算阵列完成计算的结果, 对应着m个卷积核对n个图像特征图中相同区域进行一 次卷积运算然后求和的结果; 按照步骤和的方法, 电输入矩阵的p行向量按顺序完成计算后得到p个向量形式 的结果, 将这p行向量上下拼接为一个矩阵; 把该矩阵的每一列按照从补零后的图像特征图 中取值的顺序拼接成一个特征图, 即对应着每一个卷积核卷积运算的结果, 共得到m个特征 图; 对所述m个特征图添加偏置并进行激活操作, 完成后即得到当前层卷积层的最终结 果。 权利要求书 2/2 页 3
11、 CN 109993283 A 3 基于光电计算阵列的深度卷积生成式对抗网络的加速方法 技术领域 0001 本发明涉及一种利用光电计算阵列对深度卷积生成式对抗网络进行加速的方法, 属于计算机视觉领域和深度学习领域。 背景技术 0002 传统的计算机大多采取冯诺依曼架构, 然而, 由于冯诺依曼架构存储单元和运算 单元的分立, 导致了在数据传输上产生了极大的能量消耗, 并且影响运算速度。 0003 深度卷积生成对抗网络(简称DCGAN)是应用最广泛的GAN衍生模型, 在高质量图像 生成、 风格迁移、 图像修复等应用上均有良好表现。 DCGAN是指利用CNN的架构来约束GAN, 使 得GAN可以稳定
12、的训练。 0004 传统数字电路对深度残差网络进行加速的一般方法, 是将卷积运算展开为矩阵向 量乘法运算, 并使用相应的乘累加单元完成矩阵乘法运算。 但是, 单个乘法器需要较大的资 源(面积), 也带来较高的功耗; 并且存储墙的存在也限制了运算速度的进一步提升。 发明内容 0005 本发明提出一种基于光电计算阵列的深度卷积生成式对抗网络的加速方法, 该加 速方法在较大提高运算速度的同时具备高能效的特点。 0006 本发明采用的技术方案如下: 0007 基于光电计算阵列的深度卷积生成式对抗网络的加速方法, 所述光电计算阵列包 括由多个发光单元周期排列组成的发光阵列和由多个计算单元周期排列组成的计
13、算阵列; 所述加速方法包括如下步骤: 发光阵列将深度卷积生成式对抗网络的权重通过光输入的方 法输入到计算阵列中, 作为光输入量, 并保存在计算阵列中; 将图像数据或噪声数据量化为 单比特的数据后输入到计算阵列中, 作为电输入量; 利用计算阵列分别对深度卷积生成式 对抗网络的生成网络和判别网络中的卷积层运算进行计算, 计算完成后输出数字信号, 再 对该数字信号进行移位累加操作, 得到最终结果。 0008 进一步地, 所述计算单元包括载流子控制区、 耦合区、 以及光生载流子收集区和读 出区; 所述载流子控制区用于控制并调制光生载流子收集区和读出区内的载流子; 所述光 生载流子收集区和读出区中的收集
14、区用于吸收发光单元发射的光子并收集产生的光生载 流子; 所述载流子控制区或者光生载流子收集区和读出区中的读出区与电信号连接, 读出 区用于输出被所述光生载流子和所述电信号作用后的载流子; 所述耦合区连接收集区和读 出区。 0009 进一步地, 利用计算阵列对生成网络的卷积层中的微步幅卷积运算进行计算, 每 一层卷积层的计算过程如下: 对于当前卷积层的m个卷积核, 将每个卷积核按列展开然后 拼接为一列向量, 如是m个卷积核对应的m列向量则拼接为一个矩阵, 对于输入的n个通道的 图像特征图, 将n个矩阵上下拼接为一个新的大矩阵, 采用与该大矩阵尺寸相同的计算阵 列, 计算阵列的光输入量为大矩阵中对
15、应的值; 对于输入的n个图像特征图进行批标准化 说明书 1/9 页 4 CN 109993283 A 4 操作; 当前卷积层的输入为n个通道的图像特征图, 对于其中的每一个图像特征图进行如 下操作获得n个矩阵: 每两行或两列之间添加若干个全零行或者列, 再在周围添加填充行, 得到新的特征图; 随后选取和卷积核相同大小的区域, 按照规定的步幅, 在新的特征图上进 行p次移动, 每次移动均将特征图中所对应的值取出, 按照纵向顺序展开并拼接为一行向 量; 移动完成后, 便得到了p行向量, 将其按顺序上下拼接为一个矩阵; 将所述n个矩阵左 右拼接, 得到最终的电输入矩阵; 按照从上到下的顺序依次将电输
16、入矩阵的每一行输入计 算阵列, 行向量的每一列元素对应计算阵列的每一行; 行向量按照比特位输入到计算阵 列中, 即每一次输入一个比特; 当计算阵列计算完成后, 每一列的结果都经过模数转换器转 换得到数字信号, 再将数字信号分别按照对应位进行移位, 然后累加得到结果, 结果的形式 为长度为m的向量; 该结果即电输入矩阵的一行向量进入计算阵列完成计算的结果, 对应着 m个卷积核对n个图像特征图中相同区域进行一次卷积运算然后求和的结果; 按照步骤 和的方法, 电输入矩阵的p行向量按顺序完成计算后得到p个向量形式的结果, 将这p行向 量上下拼接为一个矩阵; 把该矩阵的每一列按照从补零后的图像特征图中取
17、值的顺序拼接 成一个特征图, 即对应着每一个卷积核卷积运算的结果, 共得到m个特征图; 对所述m个特 征图添加偏置并进行激活操作, 完成后即得到当前层卷积层的最终结果。 0010 进一步地, 利用计算阵列对判别网络的卷积层中的卷积运算进行计算, 每一层卷 积层的计算过程如下: 对于当前卷积层的m个卷积核, 将每个卷积核按列展开然后拼接为 一列向量, 如是m个卷积核对应的m列向量则拼接为一个矩阵, 对于输入的n个通道的图像特 征图, 将n个矩阵上下拼接为一个新的大矩阵, 采用与该大矩阵尺寸相同的计算阵列, 计算 阵列的光输入量为大矩阵中对应的值; 对于输入的n个图像特征图进行批标准化操作; 当前
18、卷积层的输入为n个通道的图像特征图, 对于其中的每一个图像特征图进行如下操作 获得n个矩阵: 选取和卷积核相同大小的区域, 按照规定的步幅, 在新的特征图上进行p次 移动, 每次移动均将特征图中所对应的值取出, 按照纵向顺序展开并拼接为一行向量; 移动 完成后, 便得到了p行向量, 将其按顺序上下拼接为一个矩阵; 将所述n个矩阵左右拼接, 得到最终的电输入矩阵; 按照从上到下的顺序依次将电输入矩阵的每一行输入计算阵列, 行向量的每一列元素对应计算阵列的每一行; 行向量按照比特位输入到计算阵列中, 即 每一次输入一个比特; 当计算阵列计算完成后, 每一列的结果都经过模数转换器转换得到 数字信号,
19、 再将数字信号分别按照对应位进行移位, 然后累加得到结果, 结果的形式为长度 为m的向量; 该结果即电输入矩阵的一行向量进入计算阵列完成计算的结果, 对应着m个卷 积核对n个图像特征图中相同区域进行一次卷积运算然后求和的结果; 按照步骤和 的方法, 电输入矩阵的p行向量按顺序完成计算后得到p个向量形式的结果, 将这p行向量上 下拼接为一个矩阵; 把该矩阵的每一列按照从补零后的图像特征图中取值的顺序拼接成一 个特征图, 即对应着每一个卷积核卷积运算的结果, 共得到m个特征图; 对所述m个特征图 添加偏置并进行激活操作, 完成后即得到当前层卷积层的最终结果。 0011 本发明提出了一种基于光电计算
20、阵列对深度卷积生成对抗网络进行加速的方法, 该方法利用的光电计算器件可以实现高精度的存-算一体功能, 单个器件即可以存储光输 入端的光信号并在断光后长时间保存, 并且可以实现单个器件即完成乘法运算, 非常适合 加速以神经网络算法、 CT算法为代表的一系列需要大量运算矩阵向量乘法的算法。 本发明 借助计算阵列的面积和功耗优势, 相比传统数字电路加速的方法, 无需反复访问片外存储, 说明书 2/9 页 5 CN 109993283 A 5 并可以节省大量的产品体积和能耗。 附图说明 0012 图1是计算单元的多功能区框图。 0013 图2是光电计算阵列的结构示意图。 0014 图3是实施例1计算单
21、元结构的(a)截面图和(b)立体图。 0015 图4是实施例2计算单元结构的(a)截面图和(b)立体图。 0016 图5是实施例3计算单元的(a)结构示意图和(b)多功能区示意图。 0017 图6是深度卷积生成式对抗网络的硬件加速器框图。 0018 图7是实施例4生成网络的结构示意图。 0019 图8是卷积操作展开为矩阵乘法的原理示意图, (a)为n个卷积核对一张特征图进 行卷积操作, 输出n个通道的结果; (b)为特征图中对应卷积核的区域按列方向展开作为输 入, n个卷积核按列方向展开后拼接为卷积核矩阵, 乘法的结果为n列矩阵, 每一列对应图 (a)中一个通道的结果。 0020 图9是实施例
22、5判别网络的结构示意图。 0021 图中: 1-发光阵列, 2-计算阵列。 具体实施方式 0022 本发明的目的在于利用光电计算阵列来搭建DCGAN的加速器模型(包括生成器与 判别器), 以获得更小的面积和更高的能效。 0023 DCGAN生成网络, 是指从服从正态分布的噪声中, 通过逐层训练最终得到模仿真实 分布的数据。 它的网络结构包括若干层卷积层(主要进行微步幅卷积操作), 除输出层以外 均使用批标准化操作, 除输出层使用tanh激活函数外, 其他层均使用ReLU作为激活函数。 0024 DCGAN判别网络, 是指在输入为图像的情况下, 通过逐层训练最终得到其为真实图 像的概率。 它的网
23、络结构包括若干层卷积层(主要进行卷积操作), 除输入层外均使用批标 准化操作, 除输出层为softmax分类器外, 其他层均使用leaky ReLU作为激活函数。 0025 光电计算阵列可以用极小的代价计算大规模矩阵乘法, 而通过展开卷积操作, 可 以使其表示为矩阵乘法。 本实施例利用光电计算阵列来实现DCGAN生成网络与判别网络中 卷积与微步幅卷积的操作。 生成器从符合一定分布的噪声中获取输入, 经过生成器中的各 层卷积层的处理, 得到一幅图像, 可以实现生成高质量图像等目的; 该图像作为输入送入判 别器, 经过判别器的各层卷积层的处理, 得到该图像为真实图像的概率。 0026 如图1所示,
24、 光电计算阵列中的计算单元为包括三大功能区的多功能区结构, 其中 三大功能区为: 载流子控制区、 耦合区、 光生载流子收集区和读出区, 具体功能分别如下: 0027 载流子控制区: 负责控制并调制光电计算单元内的载流子, 并且作为光电计算单 元的电输入端口, 输入其中一个运算量作为电输入量; 或者只控制并调制光电计算单元内 的载流子, 通过其他区域输入电输入量。 0028 耦合区: 负责连接光生载流子收集区和读出区, 使得光子入射产生的光生载流子 作用于光电计算单元内的载流子, 形成运算关系。 0029 光生载流子收集区和读出区: 其中收集区负责吸收入射的光子并收集产生的光生 说明书 3/9
25、页 6 CN 109993283 A 6 载流子, 并且作为光电计算单元的光输入端口, 输入其中一个运算量作为光输入量; 读出区 可以作为光电计算单元的电输入端口, 输入其中一个运算量作为电输入量, 并且作为光电 计算单元的输出端口, 输出被光输入量和电输入量作用后的载流子作为单元输出量; 或者 通过其他区域输入电输入量, 读出区只作为光电计算单元的输出端口, 输出被光输入量和 电输入量作用后的载流子, 作为单元输出量。 0030 发光单元发出的光作为入射计算单元光生载流子收集和读出区的光子, 参与运 算。 光电计算阵列包括发光阵列1和计算阵列2, 结构如图2所示。 发光阵列1由多个发光单元
26、周期性排列组成, 计算阵列2由多个计算单元周期性排列组成。 0031 实施例1 0032 如图3所示, 本实施例的计算单元包括: 作为载流子控制区的控制栅极、 作为耦合 区的电荷耦合层, 以及作为光生载流子收集区和读出区的P型衬底, P型衬底中分为左侧收 集区和右侧读出区, 其中右侧读出区中包括浅槽隔离、 通过离子注入形成的N型源端和N型 漏端。 浅槽隔离位于半导体衬底中部、 收集区和读出区的中间, 浅槽隔离通过刻蚀并填充入 二氧化硅来形成, 以用于隔离收集区和读出区的电信号。 N型源端位于读出区内靠近底层介 质层的一侧, 通过离子注入法掺杂而形成。 N型漏端位于半导体衬底中靠近底层介质层与N
27、 型源端相对的另一侧, 同样通过离子注入法进行掺杂法形成。 应理解, 本文中提及的左侧、 右侧、 上方以及下方只代表在通过图中所示视角观察下的相对位置随观察视角变化而变 化, 并不理解为对具体结构的限制。 0033 在收集区的衬底上施加一个电压范围为负压的脉冲, 或在控制栅上施加一个电压 范围为正压的脉冲, 使得收集区衬底中产生用于光电子收集的耗尽层, 并通过右侧读出区 读出收集的光电子数量, 作为光输入端的输入量。 读出时, 在控制栅极上施加一正电压, 使N 型源端和收集区N型漏端间形成导电沟道, 再通过在N型源端和N型漏端间施加一个偏置脉 冲电压, 使得导电沟道内的电子加速形成源漏之间的电
28、流。 源漏之间沟道内形成电流的载 流子, 受到控制栅电压、 源漏间电压和收集区收集的光电子数量共同作用, 作为被光输入量 和电输入量共同作用后的电子, 以电流的形式进行输出, 其中控制栅电压、 源漏间电压可以 作为器件的电输入量, 光电子数量则为器件的光输入量。 0034 耦合区的电荷耦合层用于连接收集区和读出区, 使收集区衬底内耗尽区开始收集 光电子以后, 收集区衬底表面势就会受到收集的光电子数量影响; 通过电荷耦合层的连接, 使得读出区半导体衬底表面势受到收集区半导体衬底表面势影响, 进而影响读出区源漏间 电流大小, 从而通过判断读出区源漏间电流来读出收集区收集的光电子数量。 0035 载
29、流子控制区的控制栅, 用以在其上施加一个脉冲电压, 使得在P型半导体衬底读 出区中产生用于激发光电子的耗尽区, 同时也可以作为电输入端, 输入其中一位运算量。 0036 此外, P型半导体衬底和电荷耦合层之间存在用于隔离的底层介质层; 电荷耦合层 和控制栅之间亦存在用于隔离的顶层介质层。 0037 实施例2 0038 如图4所示, 本实施例的计算单元包括: 作为载流子控制区的控制栅极、 作为耦合 区的电荷耦合层, 以及作为光生载流子收集区和读出区的P型半导体衬底, 其中P型衬底中 包含通过离子注入形成的N型源端和漏端。 P型半导体衬底可以同时承担感光和读出的工 作。 N型源端位于读出区内靠近底
30、层介质层的一侧, 通过离子注入法掺杂而形成。 N型漏端位 说明书 4/9 页 7 CN 109993283 A 7 于半导体衬底中靠近底层介质层与所述N型源端相对的另一侧, 同样通过离子注入法进行 掺杂法形成。 0039 感光时, 在P型半导体衬底上施加一个电压范围为负压的脉冲, 同时在作为载流子 控制区的控制栅极上施加一个电压范围为正压的脉冲, 使得P型衬底中产生用于光电子收 集的耗尽层, 产生在耗尽区内的电子在控制栅极和P型衬底两端之间的电场作用下被加速, 并在到达获得足够高的能量, 穿过P型衬底和电荷耦合层之间的底层介质层势垒, 进入电荷 耦合层并储存于此, 电荷耦合层中的电荷数量, 会
31、影响器件开启时的阈值, 进而影响读出时 的源漏间电流大小; 读出时, 在控制栅极上施加一脉冲电压, 使N型源端和N型漏端间形成导 电沟道, 再通过在N型源端和N型漏端间施加一个脉冲电压, 使得导电沟道内的电子加速形 成源漏之间的电流。 源漏之间的电流受到控制栅脉冲电压、 源漏间电压和电荷耦合层中存 储的电子数量共同作用, 作为被光输入量和电输入量共同作用后的电子, 以电流的形式进 行输出, 其中控制栅电压、 源漏间电压可以作为器件的电输入量, 电荷耦合层中存储的光电 子数量则为器件的光输入量。 0040 耦合区的电荷耦合层用于储存进入其中的光电子, 并改变读出时器件阈值大小, 进而影响读出区源
32、漏间电流, 从而通过判断读出区源漏间电流来读出感光时产生并且进入 电荷耦合层中的光电子数量。 0041 载流子控制区的控制栅, 用以在其上施加一个脉冲电压, 使得在P型半导体衬底读 出区中产生用于激发光电子的耗尽区, 同时也可以作为电输入端, 输入其中一位运算量。 0042 此外, P型半导体衬底和电荷耦合层之间存在一层用于隔离的底层介质层; 电荷耦 合层和控制栅之间亦存在一层用于隔离的顶层介质层。 0043 实施例3 0044 如图5所示, 本实施例的计算单元包括: 作为光生载流子收集和读出区的光电二极 管和读出管, 其中, 光电二极管通过离子掺杂形成, 负责感光。 光电二极管的N区通过作为
33、耦 合区的光电子耦合引线连接到读出管的控制栅和复位管的源端上, 读出管的漏端施加一正 电压脉冲, 作为读出电流的驱动电压; 曝光前, 复位管打开, 复位管漏端电压施加到光电二 极管上, 使作为收集区的光电二极管处于反偏状态, 产生耗尽层; 曝光时, 复位管关断, 光电 二极管被电学上隔离, 光子入射光电二极管耗尽区后产生光电子, 并在二极管中积累, 二极 管的N区和在电学上通过作为耦合区的光电子耦合引线和N区连接的读出管控制栅电势开 始下降, 进而影响读出管沟道内的电子浓度。 读出管负责读出, 其漏端施加一正脉冲电压, 源端和选址管漏端连接, 读出时, 打开选址管, 读出管中产生电流电流,电流
34、大小受到复位 管漏端电压、 读出管漏端电压和入射光子数共同影响, 读出管沟道内的电子, 作为被光输入 量和电输入量共同作用后的电子, 以电流的形式输出, 其中复位管漏端电压、 读出管漏端电 压可以作为器件的电输入量, 电入射光子数则为器件的光输入量。 0045 耦合区的光电子耦合引线用于连接作为光生载流子收集和读出区中收集区的光 电二极管和作为读出区的读出管, 将光电二极管N区电势施加到读出管控制栅上。 0046 作为载流子控制区的复位管, 通过其漏端输入一个正电压作用于光电二极管, 当 复位管打开时, 正电压即会作用在光电二极管上, 使光电二极管产生耗尽区并感光, 同时也 可以作为电输入端,
35、 输入其中一位运算量。 0047 此外, 选址管用于控制整个运算器件作为输出量的输出电流的输出, 可以在光电 说明书 5/9 页 8 CN 109993283 A 8 计算单元组成阵列时行列选址使用。 0048 实施例4 0049 本实例提出了一种基于光电计算阵列的DCGAN生成网络加速的具体实施方案, 通 过使用计算单元构建的光电计算阵列, 来加速DCGAN的生成网络, 其硬件框图如图6所示。 0050 输入数据由接口进入加速器, 通过辅助电路将其量化为可以输入计算阵列的单比 特数据; 同时利用LED阵列将网络的权值以光输入的方法输入计算阵列中; 运算完成后通过 AD阵列输出为数字信号, 再
36、通过辅助逻辑电路进行移位累加操作, 得到运算的结果。 0051 以图7中的第一层卷积层conv1为例, 上层输出大小为4*4*1024。 0052 (1)利用基本的数字电路, 对上层输出完成批标准化操作; 0053 (2)在4*4的图像中, 每两行/列插入3条0(行, 列都插入), 周围再加入3个边界填 充, 卷积核大小为5*5(共有512个)。 因此相当于大小为5*5的卷积核对大小为19(4+3*3+2*3 19)的图像进行卷积操作, 按照图8的方法, 依次将输入图像的5*5小块移动展开。 0054输入特征图(第n个通道) 0055 补零后得到, 0056 0057 补零后特征图 0058卷
37、积核(第n个) 0059 将卷积按如图8所述规律展开为矩阵乘法 说明书 6/9 页 9 CN 109993283 A 9 0060 0061 0062 CONV1的微步幅卷积(反卷积)操作可以表示如上, W(卷积核, 大小为(25*1024)* 512)即光电计算阵列的权值, a(上层输出, 大小为64*(25*1024)即计算阵列的输入。 0063 (3)计算阵列每次输入一行电信号(共64行), 输入向量按照bit位输入进光电计算 阵列中, 即一次输入一个bit。 假设每个元素有8bit, 则分8次输入, 当计算阵列中的运算完 成后, 每一列的结果都经过AD转换得到数字信号, 利用基本的数字
38、逻辑电路, 将这8次输出 分别按照对应位进行移位, 然后累加得到结果。 0064 (4)按照步骤(3)的方法, 电输入矩阵的64行向量按顺序完成运算后得到64个向量 形式的结果(每个向量有512个元素), 将这64行向量上下拼接为一个矩阵。 把矩阵的第一列 按照从特征图中取值的顺序拼接成一个特征图, 即对应着第一个卷积核卷积运算的结果, 第二个列拼接成的特征图对应第二个卷积核卷积运算的结果, 依次类推, 共得到512个特征 图(大小为8*8)。 0065 (5)利用基本的数字电路对得到的512个特征图添加偏置, 以及使用ReLU激活函数 进行激活。 完成后, 则得到该层卷积层的输出结果。 00
39、66 如上操作, 四层卷积层可以依次搭建, 最后一层不使用BN操作, 除最后一层使用 tanh激活函数外, 其余层均使用ReLU激活函数。 至此, DCGAN的生成网络搭建完成。 0067 实施例5 0068 本实例提出了一种基于光电计算阵列的DCGAN判别网络加速的具体实施方案, 通 过使用计算单元构建的光电计算阵列, 来加速DCGAN的判别网络, 其硬件框图如图6所示。 0069 以图9的第三层卷积层conv3为例, 上层输出大小为8*8*256。 0070 (1)利用基本的数字电路, 对上层输出完成批标准化操作; 说明书 7/9 页 10 CN 109993283 A 10 0071 (
40、2)在外围添加2行边界填充, 共有512个大小为5*5的卷积核, 步幅为2。 输入特征图(第n个通道) 0072 添加边界填充后, 0073添加边界填充后特征图 0074卷积核(第n个卷积核) 0075 按照图8方法将卷积操作展开为矩阵乘法 0076 说明书 8/9 页 11 CN 109993283 A 11 0077 0078 CONV4的卷积操作可以表示如上, W(卷积核, 大小为(25*256)*512)即计算阵列的 权值, a(上层输出, 大小为16*(25*256)即计算阵列的输入。 0079 (3)计算阵列每次输入一行电信号(共16行), 输入向量按照bit位输入进计算阵列 中,
41、 即一次输入一个bit。 假设每个元素有8bit, 则分8次输入, 当计算阵列中的运算完成后, 每一列的结果都经过AD转换得到数字信号, 利用基本的数字逻辑电路, 将这8次输出分别按 照对应位进行移位, 然后累加得到结果。 0080 (4)按照步骤(3)的方法, 电输入矩阵的16行向量按顺序完成运算后得到16个向量 形式的结果(每个向量有512个元素), 将这16行向量上下拼接为一个矩阵。 把矩阵的第一列 按照从特征图中取值的顺序拼接成一个特征图, 即对应着第一个卷积核卷积运算的结果, 第二个列拼接成的特征图对应第二个卷积核卷积运算的结果, 依次类推, 共得到512个特征 图(大小为4*4)。
42、 0081 (5)利用基本的数字电路对得到的512个特征图添加偏置, 以及使用leakyReLU激 活函数进行激活操作。 完成后, 则得到该层卷积层的输出结果。 0082 如上操作, 四层卷积层可以依次搭建, 图像输入层不适用BN操作, 除最后一层为 softmax外, 其余卷积层均使用LeakyReLU作为激活函数。 至此, DCGAN的判别网络搭建完成。 0083 以上对本发明提供的基于光电计算阵列的DCGAN的加速方法进行了详细介绍, 以 便于理解本发明和其核心思想。 对于本领域的一般技术人员, 在具体实施时, 可根据本发明 的核心思想进行多种修改和演绎。 综上所述, 本说明书不应视为对本发明的限制。 说明书 9/9 页 12 CN 109993283 A 12 图1 图2 说明书附图 1/6 页 13 CN 109993283 A 13 图3 说明书附图 2/6 页 14 CN 109993283 A 14 图4 说明书附图 3/6 页 15 CN 109993283 A 15 图5 说明书附图 4/6 页 16 CN 109993283 A 16 图6 图7 说明书附图 5/6 页 17 CN 109993283 A 17 图8 图9 说明书附图 6/6 页 18 CN 109993283 A 18