前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基于光芯片的内存内计算(memory-in computing)

基于光芯片的内存内计算(memory-in computing)

作者头像
光学小豆芽
发布2020-08-13 10:26:55
1.3K0
发布2020-08-13 10:26:55
举报
文章被收录于专栏:硅光技术分享硅光技术分享

这篇笔记介绍一篇牛津大学在光子计算领域的最新进展,该文章发表于最新一期的Science Advances,标题为“In-memory computing on a photonic platform”。

传统计算机采用的架构为冯·诺依曼架构,在该架构中,中央处理器CPU与存储单元是分离的,如下图所示。

(图片来自https://en.wikipedia.org/wiki/Von_Neumann_architecture)

数据与指令存放在存储器中,它们通过总线传输给CPU进行处理。但是随着数据量的增大,CPU与存储器之间的数据传输速率限制了计算速度,即所谓的冯·诺依曼瓶颈(von Neumann bottleneck)。受限于内存的存取速度,CPU需要等待数据的到来。人们提出了很多办法来解决这一问题,这其中有一种方案,称为内存内计算(memory-in computing),也就是将计算单元嵌入到内存单元里。内存不仅存储数据,同时也对数据进行计算,由此减少了数据在内存与CPU之间传递的时间,如下图所示,

(图片来自https://ercim-news.ercim.eu/en115/r-i/2115-in-memory-computing-towards-energy-efficient-artificial-intelligence)

牛津大学研究组通过光芯片的方法,实现了光学的内存内计算。他们在SiN波导上方生长一层Ge2Sb2Te5(以下简称GST), 如下图所示,

(图片来自文献1)

SiN波导与GST层之间存在消逝波耦合,因此会有部分能量被GST吸收。GST材料在吸收了一定的能量后,会发生相变,从晶体变成非晶态。当逐渐增加SiN波导中的光强,达到阈值后,GST材料发生相变,成为部分非晶态,如下图所示。根据光强吸收的比例变化, 可以编码信息。

(图片来自文献1)

实验中,需要首先输入write脉冲,其能量大于阈值,使得GST材料发生相变。接着输入in脉冲,其能量小于阈值,不会使得GST材料的状态发生改变。in脉冲经过SiN波导后,其能量会因为GST层的吸收而发生改变,由此最终光场的能量,携带了两部分信息,也即完成了乘法运算c=a*b,如下图所示。其中a是GST相变后系统的透过率,b为输入脉冲in的能量,c为最终的光强。由于Pin小于阈值能量,因此其不会改变GST的状态,由write脉冲存储在GST中的信息不会改变。

(图片来自文献1)

为了证实透过率与输入脉冲的能量成线性关系,研究人员进行了相关的实验表征,如下图所示。在340pJ以下,透过率的改变与输入脉冲的能量变化满足线性关系。

(图片来自文献1)

此外,为了证实GST的状态不会随着时间变化,他们进行了长时间的光强测试(约9小时),

(图片来自文献1)

从上图可以看出,即便write脉冲撤离后,系统的透过率也不会发生变化,GST的状态只有在输入清除(erase)脉冲,重新输入write脉冲后才会发生变化。这一性质,与非易失性(non-volatile)存储器非常类似。

实验中,他们演示了标量相乘,即c=a*b, a和b只能取0或者1,实验结果如下图所示,

(图片来自文献1)

其中Pin_1=1, Pin_2=0.4, 对应的计算为1*0=0, 1*1=1, 1*0.4=0.4。最终的输出结果对应上图中40-70ns内的光强。

此外,他们也演示了1*2维矩阵与 2*1维矢量的相乘,其光路图如下,

(图片来自文献1)

上述结构通过不同时刻输入多个脉冲,还可演示更大的矩阵相乘。例如2*2矩阵与2*1向量的相乘,其光路图如下图所示,

(图片来自文献1)

以上是对该进展的简单介绍。虽然目前该体系只能演示较简单的矩阵乘法运算,但毕竟迈出了最重要的一步。几点comments:

1) 采用了GST相变材料,利用其相变带来的透过率变化,来存储信息。但GST材料对加工工艺有特殊的要求。

2)所有信息都是通过光学方法写入,矩阵元的信息通过write脉冲写入,而矢量的信息由in脉冲写入。信息全部编码在光脉冲上,而不是通过电光转换的传统方法。

3)GST相变带来的透过率改变可以编码为多个比特,实验中演示了13个不同的状态。这一点非常诱人,信息容量非常大。

4)实验中没有演示较大的矩阵乘法,期待后续工作的更新。只有能够进行较大的矩阵乘法计算,证明该系统的可扩展性,才有实用的可能性。

5)由于采用了pump-probe方法,光芯片的外部光路非常复杂,这也对其实用化带来了挑战。

文章中如果有任何错误和不严谨之处,还望大家不吝指出,欢迎大家留言讨论。


参考文献:

1. C. Rios, et.al., "In-memory computing on a photonic platform ", Science Advances 5, 5759(2019)

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-02-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 光学小豆芽 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档