一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于平衡预充与组译码的数据读取电路的制作方法

2021-03-17 00:42:00 来源:中国专利 TAG:译码 电路 读取 平衡 集成电路设计
基于平衡预充与组译码的数据读取电路的制作方法

本发明涉及集成电路的设计领域,尤其涉及一种基于平衡预充与组译码的数据读取电路。



背景技术:

目前计算机体系中普遍采用的是冯诺依曼体系,然而随着大数据时代的到来,在面对如卷积神经网络、人工智能等这些需要频繁读写操作的数据密集型应用时,冯诺依曼瓶颈逐渐显现。人们试图开发新的计算方式来避开冯诺依曼瓶颈,以实现更为有效的数据运算和更大的数据吞吐量,其中内存内计算(computinginmemory,缩写为cim)是最有前途的方法之一。

内存内计算模式与传统计算机运行模式不同的地方是,它提出了将计算模块嵌入存储模块。存储模块不仅会起到存储器的作用,同时还是一个计算器,这样就可以形成一种存储-计算紧密交织在一起的结构。这种思路的主要特点是,在存储/读取数据的同时能完成运算。而不需要像传统架构一样,需要在读取数据后,在空间分离的计算模块中进行计算,因此可以大大减少计算过程中的数据传输的能耗。

目前,内存内计算已经实现了许多算术运算和逻辑运算。对于许多应用来说,常常会进行连续的多次数据读取,对于这种大规模持续性读取操作,目前主要有两种方法来实现。第一种方法是多行读取,通常以位线(bl/blb)累积电压的形式,通过二进制加权字线脉冲宽度或加权高度多行同时读取。该方法的好处是可以同时读取存储阵列中多行的数据,这增加了吞吐量,减小了读取时间;但是,在实际操作中,由于器件匹配度问题、电路的非理想性等问题,难以保证其线性度,例如在一个阵列中,较大二进制数(如1111b')和较小二进制数(如0001b')的压降(δv)不是成比例的。这样可能会导致其读出的数据存在误差,难以满足一些对精度要求较高的应用。而且需要加入模数转换模块,增加了面积与功耗。第二种方法使用传统的sram读取模式进行单行读取,它的优点是可以根据bl电压是否下降得到结果。位线bl和blb的电压差被转换成0或1,精度很高,缺点是一次只能读一行数据。尤其对于一些具有大量数据的应用程序,它需要许多周期。



技术实现要素:

本发明的目的是提供一种基于平衡预充与组译码的数据读取电路,该方式提高了整体计算速度,同时提高了存储器的性能,降低了功耗。

本发明的目的是通过以下技术方案实现的:

一种基于平衡预充与组译码的数据读取电路,包括:依次设置的分组译码模块、6tsram存储阵列、预充电路、数据选择模块以及计算模块;其中:

所述6tsram存储阵列中最小单位为6tsram单元;所述6tsram单元与预充电路中所有晶体管均连接位线;

位线预充至vdd后,所述分组译码模块产生不同脉冲宽度的脉宽作用于不同的字线wl上,字线wl控制所述6tsram存储阵列中相应行的激活时间,以进行数据读取;并且,由预充电路中的平衡晶体管根据外部输入的控制信号平衡读取操作后的位线电压,将平衡的电压作为下次读取时的初始电压,从而实现一次预充连续读取功能;在连续读取过程中,数据选择模块根据控制信号自动读取相应的列数据;所读取的数据将传输至计算模块做后续计算。

由上述本发明提供的技术方案可以看出,通过控制信号,利用预充电路中的平衡晶体管将读取操作后的位线电压再次平衡,将再次平衡的电压作为下次读取时的初始电压。逐渐降低的位线电压提高了单元的稳定性,降低了读错误发生率。并且结合组译码这种译码方式,实现了阵列中数据的连续读取。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。

图1为本发明实施例提供的一种基于平衡预充与组译码的数据读取电路的示意图;

图2为本发明实施例提供的6tsram单元的结构示意图;

图3为本发明实施例提供的阵列中实现平衡预充的电路结构示意图;

图4为本发明实施例提供的平衡预充电路结构示意图;

图5为本发明实施例提供的连续读取8行数据时的工作波形示意图。

具体实施方式

下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。

本发明实施例提供一种基于平衡预充与组译码的数据读取电路,相较于传统“预充-译码-读取,预充-译码-读取……”的读模式,本发明结合内存内计算,实现“预充-译码-读取-平衡-读取……”这一模式,如图1所示,该电路主要包括:依次设置的分组译码模块、6tsram存储阵列、预充电路、数据选择模块以及计算模块;其中:

所述6tsram存储阵列中最小单位为6tsram单元;所述6tsram单元与预充电路中所有晶体管均连接位线;位线预充至vdd后,所述分组译码模块产生不同脉冲宽度的脉宽作用于不同的字线wl上,字线wl控制所述6tsram存储阵列中相应行的激活时间,以进行数据读取;之后,由预充电路中的平衡晶体管根据外部输入的控制信号平衡读取操作后的位线电压,将平衡的电压作为下次读取时的初始电压,从而实现一次预充连续读取功能;在连续读取过程中,数据选择模块根据控制信号自动读取相应的列数据;所读取的数据将传输至计算模块做后续计算。此后,计算模块在计算完成后,将所得结果再次输入到阵列中。

本发明实施例中,连续读是针对行操作,数据选择模块起到选择作用,不参与连续读。数据选择模块由多个8选1数据选择器组成,每8列数据共享一个8选1数据选择器,通过控制信号选择8列数据中的一列,根据控制信号自动读取相应的列数据,从而将整个8选1数据选择器控制的8列数据完整读出。

本发明实施例中,所述分组译码模块由寄存器组构成,首先将6tsram存储阵列按照行分割成不同模块,通过控制信号确定需要读取的模块,进而通过寄存器实现模块内数据连续读取的功能,无需重复译码,从而减少了译码时间。所述数据选择模块根据输入的控制信号来确定所要读取的列,进而实现相关行列数据的读取。如图1所示,6tsram存储阵列以一整行为一个小模块,如果一次连续读取8行数据,则连续的8个小模块构成一大模块,在大模块能够连续读取数据;同时,由数据选择模块依次读取8列数据,数据选择模块即为图1中的列选8选1模块,控制列8选1的信号是自动变化的,假如控制信号为a0a1a2,那么在工作时,信号会自动由000变化到111,依次读取这8列的数据,从而将整个大模块内的数据完整的读出。

如图2所示,为6tsram单元的主要结构,其包括:两个交叉耦合的反相器i0与i1,以及两个nmos晶体管n0与n1;其中,nmos晶体管n0和与n1的栅极与同一字线wl相连;nmos晶体管n0的源极与位线信号bl相连,nmos管n0的漏极与反相器i0的输入端q相连;nmos晶体管n1的源极与位线信号blb相连,nmos晶体管n1的漏极与反相器i1的输入端qb相连,反相器i0的输出端与反相器i1的输入端qb相连,反相器i1的输出端与反相器i0的输入端q相连。

本发明实施例中,所述平衡预充电路包括若干个预充电路单元,如图3的虚线框所示,每一个预充电路均为一个单元,预充电路单元的数目与6tsram存储阵列的列数相同;每一预充电路单元包括三个预充电路晶体管,各自与6tsram存储阵列中一列6tsram单元(图3中简写为6t)连接,构成平衡预充电路。利用预充电路中的平衡晶体管实现一次预充连续读取功能,本发明在不增加晶体管数量的情况下实现连续读取操作,具有普适性,并且数据抗干扰能力大大提高,可以适应各种复杂的应用场景。

本发明实施例中,针对同列数据不同行的连续读操作,位线bl和blb电压只需在第一次读取时预充电到电源电压,在随后的连续读数期间均不需要再次预充电,读相同行数,与传统方式相比减少了预充次数;并且,除了第一次读取随后进行的几次读取时的位线电压均低于vdd,低位线电压在一定程度上能提高单元稳定性,并降低功耗;同时,利用的是预充模块中已有的平衡预充管m0将读取后的位线bl和blb电压平衡后直接用于下一次的读操作,无需像传统位线电荷循环技术一样增加列与列之间额外的晶体管。

为了便于理解平衡预充电和组译码的工作原理,下面结合附图做详细介绍。

如图4所示,将三个预充电路晶体管记为m0、m1与m2,6tsram存储阵列为n行n列,平衡预充电路结构如下:n个6tsram单元内部的左右两个晶体管的源极各自连接位线bl与blb,左右两个晶体管的栅极连接同一字线wl,不同行的6tsram单元连接不同字线,不同列的6tsram单元连接不同的位线bl与blb;预充电路晶体管m0的源极与位线bl连接,漏极与位线blb连接,栅极与控制信号va相连接;预充电路晶体管m1的漏极与位线bl连接,源极vdd相连接;晶体管m2的漏极与位线blb连接,源极vdd相连接;预充电路晶体管m1与m2的栅端均接预充信号pre。此外,电路中还包含两个电容,电容c1、c2分别模拟位线bl和blb上的寄生电容,电容c1的上端接位线bl的另一端,下端接gnd,电容c2的上端接位线blb的另一端,下端接gnd。

对n行n列6tsram存储阵列进行数据读取的过程包括:

在开始阶段,控制信号va置为1;列中的n个6tsram单元中存储了n个数据,其中,每一个6tsram单元的存储节点q(q0~qn-1)存储1个数据,每个数据的反码存储在同一个6tsram单元的存储节点qb(qb0~qbn-1)中;所述存储节点q与存储节点qb各自为6tsram单元中一个反相器的输入端,角标表示单元的列号;

对行数据操作:开始第一行数据的读取操作,首先将预充信号pre置为0,位线信号bl和blb都被预充到vdd;若第一行的字线wl的值由0置为1,存储节点q中的值为1时,位线blb开始释放电荷量,位线bl保持不变;字线wl的值再次为0时,数据通过位线bl和位线blb末端灵敏放大器读出,此时位线bl和blb的电压分别为vbl(1)、vblb(1);然后控制信号va置0,位线bl和blb存在电压差,当预充电路晶体管m0的栅极电压为0时,此时电流由预充电路晶体管m0的源极流向m0的漏极,最后源极漏级电压达到平衡,此时的位线bl和blb的电压均为(vbl(1) vblb(1))/2;平均后的位线电压作为下一次读操作时的初始电压;

开始第二行数据的读取操作,将平衡后的位线电压作为初始电压,此阶段内的预充信号pre置始终保持为1,位线bl和blb此时电压均为(vbl(1) vblb(1))/2;若第二行的字线wl的值由0置为1,第一行6tsram单元存储节点q1的值为1时,位线blb开始释放电荷,位线bl保持不变;字线wl的值再次为0时,数据通过位线bl和位线blb末端灵敏放大器读出,此时位线bl和blb的电压分别为vbl(2)、vblb(2);然后控制信号va置0,位线bl和blb存在电压差,当预充电路晶体管m0的栅极电压为0时,此时电流由预充电路晶体管m0的源极流向m0的漏极,最后源极漏级电压达到平衡,此时的位线bl和blb的电压均为(vbl(2) vblb(2))/2;平均后的bl/blb电压作为下一次读操作时的初始电压;重复与第二行数据读取操作相同的操作,直至读取完第n行6tsram单元中的数据。

对列进行操作:在连续读取过程中,由数据选择模块对列进行操作。数据选择模块由多个8选1数据选择器组成。每8列数据共享一个8选1数据选择器,通过控制信号选择8列数据中的一列,每个选择器的控制信号相同均为a2a1a0。在本文采用的分组译码方法中,列选信号a2a1a0被忽略,所有控制信号将由译码电路控制从000自动变化为111,对8选1数据选择器内数据进行完整读取。

上述电路只有第一次读取时需要将位线bl和blb预充到vdd,后续读取操作均不再需要预充。在一定位线电压范围,可以实现一次预充连续读取数据的功能。

本发明实例所提供基于均衡预充和分组译码的读取电路,只需一次预充电操作就可以实现连续的读操作。与多行同时读取的模拟计算相比,该结构采用数字域计算,提高了计算精度;与传统sram读取方式相比,提高了计算速度。并提高了存储器的性能。此外,它还可以广泛应用于各种存储结构中。

为了更加清晰地展现出本发明所提供的技术方案及所产生的技术效果,在sram阵列的一列中截取8行(行数可以根据灵敏放大器的灵敏度设定)进行一次预充连续读取的详细过程,下面结合图4和图5,介绍本发明实施例所提供一次预充连续读取过程仿真验证过程:

如图4所示,此时n=8;如图5所示,为连续读取8行数据时的工作波形示意图。首先,设定6tsram单元内存储节点q0~q7内的数据均为1,存储节点qb0~qb7内的数据均为0;预充阶段开始工作,位线信号bl和blb均预充到vdd;读取阶段:字线wl0置1,开始读取,nmos晶体管n1、n2导通,位线blb开始释放电荷,位线bl的电压保持不变;直至wl0再次变回0,此时将控制信号va置0,由于位线bl和blb存在电压差,当m0的栅极电压为0时,此时有电流由m0的源极流向m0的漏极,最后源极漏极电压达到平衡。平均后的位线bl和blb电压作为下一次读操作时的初始电压。读取第二行数据时,字线wl1置1,开始读取,nmos晶体管n3、n4导通,位线blb开始释放电荷,位线bl的电压保持不变;直至wl1再次变回0,此时将控制信号va置0,由于位线bl和blb存在电压差,当m0的栅极电压为0时,此时有电流由m0的源极流向m0的漏极,最后源极漏级电压达到平衡。平均后的bl/blb电压作为下一次读操作时的初始电压。以此类推连续读取8行数据。

传统的内存计算中,进行读取操作时,每次都需要对位线bl和blb电压进行预充电。而在该方法中,位线bl和blb电压只需在第一次读取操作时将位线电压预充到电源电压vdd,在随后的连续读数期间均不再需要预充电。以连续读8行数据为例,由于在之后的几次读取中,位线初始电压均低于vdd,使得单元的稳定性得到改善,降低了整体读错误概率。

综上所述,本发明提供电路结构简单,采用平衡预充电和分组译码的实现数据读取。该方法只需一次预充电操作就可以实现连续的读操作。与存内计算中多行同时读取的模拟计算读取方式相比,该结构采用数字域计算,提高了计算精度;与传统sram读取方式相比,提高了读取速度。并提高了存储器的性能。此外,它还可以广泛应用于各种存储结构中。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。

再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜