【技术实现步骤摘要】
一种用于余弦距离最近邻搜索的存内计算架构及操作方法
[0001]本专利技术涉及存储、计算、电路领域,实现了用于余弦距离最近邻搜索的存内计算架构及操作方法。
技术介绍
[0002]在人工智能时代,各种二值神经网络(Binary Neural Networks,BNN)及超高维度向量计算(Hyperdimensional Computing,HDC)已经被证明可以高效地应用于不同实际场景如:物体追踪,声音识别,图像聚类等等。而其中基于余弦近似搜索被广泛研究于算法层面,并基于现今冯
‑
诺依曼计算机架构来完成其操作。然而,受限于现有计算机架构,进行此操作会造成极大的能耗和延时。
[0003]虽然近年来,各种存内计算单元的设计已经被广泛提出,解决了传统冯
‑
诺依曼计算机架构的延时和能耗问题,并且利用存内计算单元,实现了汉明码计算。但基于余弦距离的存内计算单元的相关工作仍十分稀缺,目前仅有利用存算单元来实现HDC的近似余弦相似计算,而相关实现并不适用于更广泛的应用如二值神经网络。
[0 ...
【技术保护点】
【技术特征摘要】
1.一种用于余弦距离最近邻搜索的存内计算架构,其特征在于,包括两个基于FeFET的存储阵列、Translinear电路和WTA电路,两个存储阵列分别为第一存储阵列和第二存储阵列;所述存储阵列包括若干存储行,每个存储行由若干存储单元并联形成,所述存储单元包括电连接的FeFET和电阻,同一个存储阵列中每个存储行存有不同的存储向量;两个存储阵列中的存储行一一对应,对应的两个存储行所存的存储向量相同;输入向量经所述第一存储阵列,输出所述输入向量与所有所述第一存储阵列的存储向量的内积X;所述第二存储阵列输出其存储向量中所有向量元素的平方和Y;所述第一存储阵列和所述第二存储阵列的输出值分别经电流镜输入所述Translinear电路;所述Translinear电路输出X2/Y至所述WTA电路;所述WTA电路用于选出所有存储行对应的X2/Y最大值,所述X2/Y最大值对应的存储行即为所述输入向量与所有存储向量的余弦距离的最近邻。2.根据权利要求1所述的存内计算架构,其特征在于,所述存储阵列具有M个存储行;所述存储行具有N个存储单元;所述存储单元中的电阻电连接FeFET的漏极;所述存储行的所有电阻背向对应FeFET一端相连构成所述存储行的行线WL;所述存储行的所有FeFET的源极相连后,直接接地或通过开关接地;所述存储阵列中每列存储单元中所有的FeFET的栅极相连,作为所述输入向量对应的位线BL。3.根据权利要求1所述的存内计算架构,其特征在于,所述第一存储阵列和所述第二存储阵列的对应存储行具有一个共用的Translinear电路;所述第一存储阵列每个存储行的输出通过电流镜拷贝至少两份后输入该行对应的Translinear电路;所述第二存储阵列每个存储行的输出通过电流镜拷贝一份后输入该行对应的Tra...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。