CN114446350A - A row-column Boolean operation circuit for in-memory computing - Google Patents
A row-column Boolean operation circuit for in-memory computing Download PDFInfo
- Publication number
- CN114446350A CN114446350A CN202210090221.7A CN202210090221A CN114446350A CN 114446350 A CN114446350 A CN 114446350A CN 202210090221 A CN202210090221 A CN 202210090221A CN 114446350 A CN114446350 A CN 114446350A
- Authority
- CN
- China
- Prior art keywords
- electrically connected
- nmos transistor
- bitcell
- column
- row
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/41—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
- G11C11/413—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
- G11C11/414—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction for memory cells of the bipolar type
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/41—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
- G11C11/413—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
- G11C11/414—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction for memory cells of the bipolar type
- G11C11/416—Read-write [R-W] circuits
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Semiconductor Memories (AREA)
Abstract
本发明公开了一种用于存内计算的行列布尔运算电路,包括SRAM阵列、行译码单元、读字线控制单元和灵敏放大器SA;SRAM阵列中的每个Bitcell均采用8管SRAM单元;该8管SRAM单元在传统6管SRAM单元基础上增加了可以读出数据的控制端口,即NMOS晶体管N5和NMOS晶体管N6,并且增加了读字线RWL和读位线RBL,从而使本发明不仅能实现列的布尔运算,而且能实现行的布尔运算,还能实现矩阵的转置计算,这大大提高了存内计算的能力。
The invention discloses a row-column Boolean operation circuit for in-memory calculation, comprising an SRAM array, a row decoding unit, a read word line control unit and a sense amplifier SA; each Bitcell in the SRAM array adopts an 8-tube SRAM unit; On the basis of the traditional 6-tube SRAM cell, the 8-tube SRAM cell adds a control port that can read data, that is, an NMOS transistor N5 and an NMOS transistor N6, and adds a read word line RWL and a read bit line RBL, so that the present invention not only It can realize the Boolean operation of the column, the Boolean operation of the row, and the transpose calculation of the matrix, which greatly improves the ability of in-memory calculation.
Description
技术领域technical field
本发明涉及存内计算电路领域,尤其涉及一种用于存内计算的行列布尔运算电路。The invention relates to the field of in-memory computing circuits, in particular to a row-column Boolean operation circuit for in-memory computing.
背景技术Background technique
人类科技发展至今,已经进入人工智能时代,与之相关的机器学习、语音识别、图像识别、照片搜索、目标定位等等应用大量涌现。这些应用所需要进行的计算给目前的计算设备带来巨大的挑战,因为它们需要高效的计算处理,大量的数据存储,并在计算和存储之间高速的交换数据。目前,几乎所有最先进的计算平台都基于总线结构,即著名的冯·诺依曼体系结构,数据从处理单元外的存储器获取,处理完毕之后,再写回存储器,即便不考虑计算核心处理速度和访问存储器速度的差异,有限的总线带宽就直接限制了在处理器和存储之间交换数据的速度,这就是所谓的冯·诺依曼瓶颈。因此实现一种用于存内计算的行列布尔运算电路来突破冯·诺依曼瓶颈是非常有意义的。Since the development of human science and technology, it has entered the era of artificial intelligence, and related applications such as machine learning, speech recognition, image recognition, photo search, target positioning, etc. have emerged. The computations required for these applications pose great challenges to current computing devices because they require efficient computational processing, large amounts of data storage, and high-speed data exchange between computation and storage. At present, almost all state-of-the-art computing platforms are based on a bus structure, the famous von Neumann architecture. Data is acquired from memory outside the processing unit, and after processing, it is written back to memory, even if the processing speed of the computing core is not considered. Unlike the speed of accessing memory, the limited bus bandwidth directly limits the speed at which data can be exchanged between the processor and storage, a so-called von Neumann bottleneck. Therefore, it is very meaningful to implement a row-column Boolean operation circuit for in-memory computing to break through the von Neumann bottleneck.
如图1所示,为传统的6管SRAM(Static Random Access Memory,中文为静态随机存储器)单元结构,其PMOS晶体管P1、NMOS晶体管N1和PMOS晶体管P2、NMOS晶体管N2分别构成两个反相器从而锁存住数据,字线WL控制NMOS晶体管N3、NMOS晶体管N4,从而控制该SRAM单元结构的读写;这种传统的6管SRAM单元结构的数据都是通过位线BL和位线BLB传出的,目前只能实现列布尔运算,还不能实现行布尔运算。As shown in Figure 1, it is a traditional 6-tube SRAM (Static Random Access Memory, Chinese for static random access memory) cell structure, its PMOS transistor P1, NMOS transistor N1 and PMOS transistor P2, NMOS transistor N2 constitute two inverters respectively Thus, the data is latched, and the word line WL controls the NMOS transistor N3 and NMOS transistor N4, thereby controlling the reading and writing of the SRAM cell structure; the data of this traditional 6-tube SRAM cell structure is transmitted through the bit line BL and the bit line BLB. Currently, only column Boolean operations can be implemented, and row Boolean operations cannot be implemented yet.
有鉴于此,特提出本发明。In view of this, the present invention is proposed.
发明内容SUMMARY OF THE INVENTION
本发明的目的是提供了一种用于存内计算的行列布尔运算电路,以解决现有技术中存在的上述技术问题。本发明不仅能实现列的布尔运算,而且能实现行的布尔运算,还能够实现矩阵转置操作,从而大大提高了存内计算的能力。The purpose of the present invention is to provide a row-column Boolean operation circuit for in-memory calculation, so as to solve the above-mentioned technical problems existing in the prior art. The invention can realize not only the Boolean operation of the column, but also the Boolean operation of the row, and also the transposition operation of the matrix, thereby greatly improving the ability of in-memory calculation.
本发明的目的是通过以下技术方案实现的:The purpose of this invention is to realize through the following technical solutions:
一种8管SRAM单元,该8管SRAM单元可以包括6个NMOS晶体管和2个PMOS晶体管,这6个NMOS晶体管分别定义为N1、N2、N3、N4、N5、N6;这2个PMOS晶体管分别定义为P1、P2;PMOS晶体管P1和NMOS晶体管N1构成第一个反向器,PMOS晶体管P2和NMOS晶体管N2构成第二个反向器,这两个反向器交叉耦合组成一个数据锁存器;PMOS晶体管P1的漏极与NMOS晶体管N1的漏极电连接于存储节点QB,PMOS晶体管P2的漏极与NMOS晶体管N2的漏极电连接于存储节点Q;NMOS晶体管N3的源极与左列位线BLB电连接,NMOS晶体管N3的栅极与字线WL电连接,NMOS晶体管N3的漏极与存储节点QB电连接,NMOS晶体管N4的源极与右列位线BL电连接,NMOS晶体管N4的栅极与字线WL电连接,NMOS晶体管N4的漏极与存储节点Q电连接;NMOS晶体管N6的栅极与存储节点Q电连接,NMOS晶体管N6的源极与接地端GND电连接,NMOS晶体管N6的漏极与NMOS晶体管N5的漏极电连接;NMOS晶体管N5的栅极与读字线RWL电连接,NMOS晶体管N5的源极与读位线RBL电连接。An 8-tube SRAM cell, the 8-tube SRAM cell can include 6 NMOS transistors and 2 PMOS transistors, the 6 NMOS transistors are respectively defined as N1, N2, N3, N4, N5, N6; these 2 PMOS transistors are respectively Defined as P1, P2; PMOS transistor P1 and NMOS transistor N1 form the first inverter, PMOS transistor P2 and NMOS transistor N2 form the second inverter, and the two inverters are cross-coupled to form a data latch The drain of the PMOS transistor P1 and the drain of the NMOS transistor N1 are electrically connected to the storage node QB, the drain of the PMOS transistor P2 and the drain of the NMOS transistor N2 are electrically connected to the storage node Q; the source of the NMOS transistor N3 is connected to the left column The bit line BLB is electrically connected, the gate of the NMOS transistor N3 is electrically connected to the word line WL, the drain of the NMOS transistor N3 is electrically connected to the storage node QB, the source of the NMOS transistor N4 is electrically connected to the right column bit line BL, and the NMOS transistor N4 The gate of the NMOS transistor N4 is electrically connected to the word line WL, the drain of the NMOS transistor N4 is electrically connected to the storage node Q; the gate of the NMOS transistor N6 is electrically connected to the storage node Q, the source of the NMOS transistor N6 is electrically connected to the ground terminal GND, and the NMOS transistor N6 is electrically connected to the ground terminal GND. The drain of the transistor N6 is electrically connected to the drain of the NMOS transistor N5; the gate of the NMOS transistor N5 is electrically connected to the read word line RWL, and the source of the NMOS transistor N5 is electrically connected to the read bit line RBL.
优选地,所述数据锁存器的结构包括:PMOS晶体管P1的源极与电源VDD电连接,PMOS晶体管P1的漏极与NMOS晶体管N1的漏极电连接于存储节点QB,NMOS晶体管N1的源极与接地端GND电连接,PMOS晶体管P1的栅极与NMOS晶体管N1的栅极电连接,从而构成第一个反向器;PMOS晶体管P2的源极与电源VDD电连接,PMOS晶体管P2的漏极与NMOS晶体管N2的漏极电连接于存储节点Q,NMOS晶体管N2的源极与接地端GND电连接,PMOS晶体管P2的栅极与NMOS晶体管N2的栅极电连接,从而构成第二个反向器;PMOS晶体管P1的栅极和NMOS晶体管N1的栅极均与存储节点Q电连接,PMOS晶体管P2的栅极和NMOS晶体管N2的栅极均与存储节点QB电连接,从而使所述第一个反向器与所述第二个反向器交叉耦合,组成一个数据锁存器。Preferably, the structure of the data latch includes: the source of the PMOS transistor P1 is electrically connected to the power supply VDD, the drain of the PMOS transistor P1 and the drain of the NMOS transistor N1 are electrically connected to the storage node QB, and the source of the NMOS transistor N1 is electrically connected to the storage node QB. The electrode of the PMOS transistor P1 is electrically connected to the ground terminal GND, and the gate of the PMOS transistor P1 is electrically connected to the gate of the NMOS transistor N1 to form the first inverter; the source of the PMOS transistor P2 is electrically connected to the power supply VDD, and the drain of the PMOS transistor P2 The electrode and the drain of the NMOS transistor N2 are electrically connected to the storage node Q, the source of the NMOS transistor N2 is electrically connected to the ground terminal GND, and the gate of the PMOS transistor P2 is electrically connected to the gate of the NMOS transistor N2, thereby forming a second inverter. The gate of the PMOS transistor P1 and the gate of the NMOS transistor N1 are both electrically connected to the storage node Q, and the gate of the PMOS transistor P2 and the gate of the NMOS transistor N2 are both electrically connected to the storage node QB, so that the first An inverter is cross-coupled with the second inverter to form a data latch.
一种用于存内计算的行列布尔运算电路,包括:SRAM阵列、行译码单元、读字线控制单元和灵敏放大器SA;SRAM阵列中的每个Bitcell均采用上述的8管SRAM单元;同一行Bitcell的字线WL均与同一根字线WL电连接,不同行Bitcell的字线WL不与同一根字线WL电连接,每行Bitcell的字线WL均与行译码单元电连接,从而行译码单元通过这些字线WL控制每个Bitcell内NMOS晶体管N3和NMOS晶体管N4的开关;同一列Bitcell的读字线RWL均与同一根读字线RWL电连接,不同列Bitcell的读字线RWL不与同一根读字线RWL电连接,每列Bitcell的读字线RWL均与读字线控制单元电连接,从而读字线控制单元通过这些读字线RWL控制每个Bitcell内NMOS晶体管N5的开关;同一列Bitcell的左列位线BLB均与同一根左列位线BLB电连接,不同列Bitcell的左列位线BLB不与同一根左列位线BLB电连接,每列Bitcell的左列位线BLB各与一个灵敏放大器SA电连接,且这些灵敏放大器SA分别外接参考电压Vref;同一列Bitcell的右列位线BL均与同一根右列位线BL电连接,不同列Bitcell的右列位线BL不与同一根右列位线BL电连接,每列Bitcell的右列位线BL各与一个灵敏放大器SA电连接,且这些灵敏放大器SA分别外接参考电压Vref;通过与左列位线BLB电连接的灵敏放大器SA和/或与右列位线BL电连接的灵敏放大器SA,从而实现该SRAM阵列的列布尔运算;同一行Bitcell的读位线RBL均与同一根读位线RBL电连接,不同行Bitcell的读位线RBL不与同一根读位线RBL电连接,每行Bitcell的读位线RBL各与一个灵敏放大器SA电连接,且这些灵敏放大器SA分别外接参考电压Vref,从而实现该SRAM阵列的行布尔运算。A row and column Boolean operation circuit for in-memory calculation, comprising: SRAM array, row decoding unit, read word line control unit and sense amplifier SA; each Bitcell in the SRAM array adopts the above-mentioned 8-tube SRAM cell; the same The word lines WL of a row of Bitcells are all electrically connected to the same word line WL, the word lines WL of different rows of Bitcells are not electrically connected to the same word line WL, and the word lines WL of each row of Bitcells are electrically connected to the row decoding unit, thereby The row decoding unit controls the switches of the NMOS transistor N3 and the NMOS transistor N4 in each Bitcell through these word lines WL; the read word lines RWL of the same column of Bitcells are all electrically connected to the same read word line RWL, and the read word lines of different columns of Bitcells RWL is not electrically connected to the same read word line RWL, and the read word line RWL of each column of Bitcells is electrically connected to the read word line control unit, so that the read word line control unit controls the NMOS transistor N5 in each Bitcell through these read word lines RWL The left column bit lines BLB of the same column of Bitcells are all electrically connected to the same left column bit line BLB, and the left column bit lines BLB of different columns of Bitcells are not electrically connected to the same left column bit line BLB. Each of the column bit lines BLB is electrically connected to a sense amplifier SA, and these sense amplifiers SA are respectively connected to the reference voltage Vref; the right column bit lines BL of the same column of Bitcells are all electrically connected to the same right column of bit lines BL, and the right column of bit cells of different columns The column bit lines BL are not electrically connected to the same right column bit line BL. The right column bit lines BL of each column of Bitcells are each electrically connected to a sense amplifier SA, and these sense amplifiers SA are respectively connected to the reference voltage Vref; The sense amplifier SA electrically connected to the line BLB and/or the sense amplifier SA electrically connected to the right column bit line BL, so as to realize the column Boolean operation of the SRAM array; the read bit lines RBL of the same row of Bitcells are all connected to the same read bit line RBL Electrically connected, the read bit lines RBL of different rows of Bitcells are not electrically connected to the same read bit line RBL, the read bit lines RBL of each row of Bitcells are electrically connected to a sense amplifier SA, and these sense amplifiers SA are respectively connected to the reference voltage Vref, Thus, the row Boolean operation of the SRAM array is realized.
优选地,所述的SRAM阵列为256行×64列存内计算模块。Preferably, the SRAM array is a 256-row×64-column in-memory computing module.
优选地,所述行译码单元通过SRAM的地址位来控制对应字线的使能,从而控制每行对应的Bitcell的读写使能。Preferably, the row decoding unit controls the enable of the corresponding word line through the address bit of the SRAM, so as to control the read and write enable of the bitcell corresponding to each row.
优选地,所述读字线控制单元通过SRAM的外部地址来控制读字线RWL的使能,从而控制每列对应的Bitcell的读使能。Preferably, the read word line control unit controls the enable of the read word line RWL through the external address of the SRAM, so as to control the read enable of the bitcell corresponding to each column.
与现有技术相比,本发明采用了由8管SRAM单元组成的SRAM阵列,该8管SRAM单元是在传统的6管SRAM单元的基础上,增加了两个NMOS晶体管(即NMOS晶体管N5和NMOS晶体管N6),并且在这两个NMOS晶体管上增设了一条读字线RWL和一条读位线RBL,这为8管SRAM单元增加了一个可以读出数据的控制端口,SRAM阵列中的每个8管SRAM单元都与字线WL、读字线RWL、左列位线BLB、右列位线BL、读位线RBL电连接,采用行译码单元控制字线WL的使能,采用读字线控制单元控制读字线RWL的使能,采用灵敏放大器SA对左列位线BLB、右列位线BL、读位线RBL读出的数据进行电压比较,从而能够实现行方向布尔运算、列方向的布尔运算和矩阵转置计算,这比传统6管SRAM单元增加了行方向布尔运算和矩阵转置计算的功能,大大提高了存内计算的能力。Compared with the prior art, the present invention adopts an SRAM array composed of 8-tube SRAM cells. The 8-tube SRAM cell is based on the traditional 6-tube SRAM cell, and two NMOS transistors (namely NMOS transistors N5 and NMOS transistors are added). NMOS transistor N6), and a read word line RWL and a read bit line RBL are added to the two NMOS transistors, which adds a control port for reading data to the 8-tube SRAM cell, each in the SRAM array. The 8-tube SRAM cells are all electrically connected to the word line WL, the read word line RWL, the left column bit line BLB, the right column bit line BL, and the read bit line RBL. The row decoding unit is used to control the enable of the word line WL, and the read word line is used. The line control unit controls the enable of the read word line RWL, and uses the sense amplifier SA to compare the voltages of the data read by the left column bit line BLB, the right column bit line BL, and the read bit line RBL, so as to realize the row direction Boolean operation, column Directional Boolean operation and matrix transposition calculation, which increase the function of row direction Boolean operation and matrix transposition calculation compared with the traditional 6-tube SRAM unit, which greatly improves the ability of in-memory calculation.
附图说明Description of drawings
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。In order to illustrate the technical solutions of the embodiments of the present invention more clearly, the following briefly introduces the accompanying drawings used in the description of the embodiments. Obviously, the drawings in the following description are only some embodiments of the present invention. For those of ordinary skill in the art, other drawings can also be obtained from these drawings without any creative effort.
图1为现有技术中传统的6管SRAM单元结构示意图;1 is a schematic diagram of a conventional 6-tube SRAM cell structure in the prior art;
图2为本发明实施例所提供的8管SRAM单元结构示意图;2 is a schematic structural diagram of an 8-tube SRAM cell provided by an embodiment of the present invention;
图3为本发明实施例所提供的用于存内计算的行列布尔运算电路的结构示意图。FIG. 3 is a schematic structural diagram of a row-column Boolean operation circuit for in-memory computing provided by an embodiment of the present invention.
具体实施方式Detailed ways
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述;显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,这并不构成对本发明的限制。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention; obviously, the described embodiments are only a part of the embodiments of the present invention, not all of the embodiments, which do not It does not constitute a limitation of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative work fall within the protection scope of the present invention.
首先对本文中可能使用的术语进行如下说明:First a description of terms that may be used in this article:
术语“和/或”是表示两者任一或两者同时均可实现,例如,X和/或Y表示既包括“X”或“Y”的情况也包括“X和Y”的三种情况。The term "and/or" means that either or both can be achieved, eg, X and/or Y means both the case of "X" or "Y" and the three cases of "X and Y" .
术语“包括”、“包含”、“含有”、“具有”或其它类似语义的描述,应被解释为非排它性的包括。例如:包括某技术特征要素(如原料、组分、成分、载体、剂型、材料、尺寸、零件、部件、机构、装置、步骤、工序、方法、反应条件、加工条件、参数、算法、信号、数据、产品或制品等),应被解释为不仅包括明确列出的某技术特征要素,还可以包括未明确列出的本领域公知的其它技术特征要素。The terms "comprising", "comprising", "containing", "having" or other descriptions with similar meanings should be construed as non-exclusive inclusions. For example: including certain technical characteristic elements (such as raw materials, components, ingredients, carriers, dosage forms, materials, dimensions, parts, components, mechanisms, devices, steps, processes, methods, reaction conditions, processing conditions, parameters, algorithms, signals, data, products or products, etc.), should be construed to include not only a certain technical feature element explicitly listed, but also other technical feature elements known in the art that are not explicitly listed.
下面对本发明所提供的用于存内计算的行列布尔运算电路进行详细描述。本发明实施例中未作详细描述的内容属于本领域专业技术人员公知的现有技术。本发明实施例中未注明具体条件者,按照本领域常规条件或制造商建议的条件进行。本发明实施例中所用试剂或仪器未注明生产厂商者,均为可以通过市售购买获得的常规产品。The row-column Boolean operation circuit for in-memory calculation provided by the present invention will be described in detail below. Contents that are not described in detail in the embodiments of the present invention belong to the prior art known to those skilled in the art. If the specific conditions are not indicated in the examples of the present invention, it is carried out according to the conventional conditions in the art or the conditions suggested by the manufacturer. The reagents or instruments used in the examples of the present invention without the manufacturer's indication are conventional products that can be purchased from the market.
实施例1Example 1
如图2和图3所示,本发明提供了一种用于存内计算的行列布尔运算电路,其具体结构包括:SRAM阵列、行译码单元、读字线控制单元、字线WL、左列位线BLB、右列位线BL、读字线RWL、读位线RBL和灵敏放大器SA。As shown in FIG. 2 and FIG. 3 , the present invention provides a row and column Boolean operation circuit for in-memory calculation, the specific structure of which includes: an SRAM array, a row decoding unit, a read word line control unit, a word line WL, a left Column bit line BLB, right column bit line BL, read word line RWL, read bit line RBL and sense amplifier SA.
SRAM阵列为256行×64列存内计算模块,包括256×64个Bitcell;SRAM阵列中的每个Bitcell均采用8管SRAM单元,即该SRAM阵列包括256×64个8管SRAM单元。如图2所示,该8管SRAM单元包括6个NMOS晶体管和2个PMOS晶体管,这6个NMOS晶体管分别定义为N1、N2、N3、N4、N5、N6;这2个PMOS晶体管分别定义为P1、P2。PMOS晶体管P1和NMOS晶体管N1构成第一个反向器,PMOS晶体管P2和NMOS晶体管N2构成第二个反向器,这两个反向器交叉耦合组成一个数据锁存器,即第一个反向器的输出连接第二个反向器的输入,第二个反向器的输出连接第一个反向器的输入,这就能实现两个反相器的输出状态的锁定、保存,即存储了一位的状态。PMOS晶体管P1的漏极与NMOS晶体管N1的漏极电连接于存储节点QB,PMOS晶体管P2的漏极与NMOS晶体管N2的漏极电连接于存储节点Q。NMOS晶体管N3和NMOS晶体管N4作为传输晶体管;NMOS晶体管N3的源极与左列位线BLB电连接,NMOS晶体管N3的栅极与字线WL电连接,NMOS晶体管N3的漏极与存储节点QB电连接,NMOS晶体管N4的源极与右列位线BL电连接,NMOS晶体管N4的栅极与字线WL电连接,NMOS晶体管N4的漏极与存储节点Q电连接,实现字线WL对数据读写的控制。NMOS晶体管N6的栅极与存储节点Q电连接,NMOS晶体管N6的源极与接地端GND电连接,NMOS晶体管N6的漏极与NMOS晶体管N5的漏极电连接;NMOS晶体管N5的栅极与读字线RWL电连接,NMOS晶体管N5的源极与读位线RBL电连接,实现数据的行方向的读出。The SRAM array is a 256-row×64-column in-memory computing module, including 256×64 Bitcells; each Bitcell in the SRAM array adopts 8-tube SRAM cells, that is, the SRAM array includes 256×64 8-tube SRAM cells. As shown in Figure 2, the 8-tube SRAM cell includes 6 NMOS transistors and 2 PMOS transistors. The 6 NMOS transistors are defined as N1, N2, N3, N4, N5, and N6 respectively; the 2 PMOS transistors are respectively defined as P1, P2. The PMOS transistor P1 and the NMOS transistor N1 form the first inverter, the PMOS transistor P2 and the NMOS transistor N2 form the second inverter, and the two inverters are cross-coupled to form a data latch, that is, the first inverter The output of the inverter is connected to the input of the second inverter, and the output of the second inverter is connected to the input of the first inverter, so that the output state of the two inverters can be locked and saved, that is, The state of one bit is stored. The drain of the PMOS transistor P1 and the drain of the NMOS transistor N1 are electrically connected to the storage node QB, and the drain of the PMOS transistor P2 and the drain of the NMOS transistor N2 are electrically connected to the storage node Q. The NMOS transistor N3 and the NMOS transistor N4 serve as pass transistors; the source of the NMOS transistor N3 is electrically connected to the left column bit line BLB, the gate of the NMOS transistor N3 is electrically connected to the word line WL, and the drain of the NMOS transistor N3 is electrically connected to the storage node QB connected, the source of the NMOS transistor N4 is electrically connected to the bit line BL of the right column, the gate of the NMOS transistor N4 is electrically connected to the word line WL, the drain of the NMOS transistor N4 is electrically connected to the storage node Q, and the data read from the word line WL is realized. write control. The gate of the NMOS transistor N6 is electrically connected to the storage node Q, the source of the NMOS transistor N6 is electrically connected to the ground terminal GND, the drain of the NMOS transistor N6 is electrically connected to the drain of the NMOS transistor N5; the gate of the NMOS transistor N5 is electrically connected to the read The word line RWL is electrically connected, and the source of the NMOS transistor N5 is electrically connected to the read bit line RBL, so that data is read in the row direction.
同一行Bitcell的字线WL均与同一根字线WL电连接,不同行Bitcell的字线WL不与同一根字线WL电连接,每行Bitcell的字线WL均与行译码单元电连接,从而行译码单元通过这些字线WL控制每个Bitcell内NMOS晶体管N3和NMOS晶体管N4的开关;行译码单元通过SRAM的地址位来控制对应字线的使能,从而控制每行对应的Bitcell的读写使能。The word lines WL of the same row of Bitcells are all electrically connected to the same word line WL, the word lines WL of different rows of Bitcells are not electrically connected to the same word line WL, and the word lines WL of each row of Bitcells are electrically connected to the row decoding unit, Thus, the row decoding unit controls the switches of the NMOS transistor N3 and the NMOS transistor N4 in each Bitcell through these word lines WL; the row decoding unit controls the enable of the corresponding word line through the address bit of the SRAM, thereby controlling the corresponding Bitcell of each row read and write enable.
同一列Bitcell的读字线RWL均与同一根读字线RWL电连接,不同列Bitcell的读字线RWL不与同一根读字线RWL电连接,每列Bitcell的读字线RWL均与读字线控制单元电连接,从而读字线控制单元通过这些读字线RWL控制每个Bitcell内NMOS晶体管N5的开关;读字线控制单元通过SRAM的外部地址来控制读字线RWL的使能,从而控制每列对应的Bitcell的读使能。The read word lines RWL of the same column of Bitcells are all electrically connected to the same read word line RWL. The read word lines RWL of different columns of Bitcells are not electrically connected to the same read word line RWL. The read word lines RWL of each column of Bitcells are connected to the read word line RWL. The line control unit is electrically connected, so that the read word line control unit controls the switch of the NMOS transistor N5 in each Bitcell through these read word lines RWL; the read word line control unit controls the enable of the read word line RWL through the external address of the SRAM, thereby Controls the read enable of the Bitcell corresponding to each column.
同一列Bitcell的左列位线BLB均与同一根左列位线BLB电连接,不同列Bitcell的左列位线BLB不与同一根左列位线BLB电连接,每列Bitcell的左列位线BLB各与一个灵敏放大器SA电连接,且这些灵敏放大器SA分别外接参考电压Vref;同一列Bitcell的右列位线BL均与同一根右列位线BL电连接,不同列Bitcell的右列位线BL不与同一根右列位线BL电连接,每列Bitcell的右列位线BL各与一个灵敏放大器SA电连接,且这些灵敏放大器SA分别外接参考电压Vref;左列位线BLB所连接的灵敏放大器SA与右列位线BL所连接的灵敏放大器SA不是同一个灵敏放大器SA;通过将左列位线BLB的电压与灵敏放大器SA外接参考电压Vref进行比较可以实现与逻辑,通过将右列位线BL的电压与灵敏放大器SA外接参考电压Vref进行比较可以实现或非逻辑,从而实现SRAM阵列的列布尔运算。The left column bit lines BLB of the same column of Bitcells are all electrically connected to the same left column bit line BLB. The left column bit lines BLB of different columns of Bitcells are not electrically connected to the same left column bit line BLB. The left column bit lines of each column of Bitcells are electrically connected. Each BLB is electrically connected to a sense amplifier SA, and these sense amplifiers SA are respectively connected to the reference voltage Vref; the right column bit lines BL of the same column of Bitcells are all electrically connected to the same right column bit line BL, and the right column bit lines of different columns of Bitcells are all electrically connected to the same right column bit line BL. BL is not electrically connected to the same right column bit line BL, and the right column bit line BL of each column of Bitcells is electrically connected to a sense amplifier SA, and these sense amplifiers SA are respectively connected to the reference voltage Vref; The sense amplifier SA and the sense amplifier SA connected to the bit line BL of the right column are not the same sense amplifier SA; by comparing the voltage of the bit line BLB of the left column with the external reference voltage Vref of the sense amplifier SA, an AND logic can be realized, Comparing the voltage of the bit line BL with the external reference voltage Vref of the sense amplifier SA can realize NOR logic, thereby realizing the column Boolean operation of the SRAM array.
同一行Bitcell的读位线RBL均与同一根读位线RBL电连接,不同行Bitcell的读位线RBL不与同一根读位线RBL电连接,每行Bitcell的读位线RBL各与一个灵敏放大器SA电连接,且这些灵敏放大器SA分别外接参考电压Vref,通过将读位线RBL的电压与灵敏放大器SA外接参考电压Vref进行比较,可以实现与逻辑和与非逻辑,从而实现SRAM阵列的行布尔运算。The read bit lines RBL of the same row of Bitcells are all electrically connected to the same read bit line RBL, the read bit lines RBL of different rows of Bitcells are not electrically connected to the same read bit line RBL, and the read bit lines RBL of each row of Bitcells are connected to a sensitive The amplifiers SA are electrically connected, and these sense amplifiers SA are respectively connected to a reference voltage Vref. By comparing the voltage of the read bit line RBL with the external reference voltage Vref of the sense amplifier SA, AND logic and NAND logic can be realized, thereby realizing the row of the SRAM array. Boolean operations.
具体地,该用于存内计算的行列布尔运算电路可以包括以下实施方案:Specifically, the row-column Boolean operation circuit for in-memory computing may include the following implementations:
(1)如图2所示,该8管SRAM单元中,NMOS晶体管N3和NMOS晶体管N4是由字线WL控制,数据的读出写入都通过右列位线BL和左列位线BLB传入传出,NMOS晶体管N5和NMOS晶体管N6是由读字线RWL控制,数据从读位线RBL传出,从而实现数据能够分别在行方向和列方向上传输出去。所述数据锁存器的具体结构可以包括:PMOS晶体管P1的源极与电源VDD电连接,PMOS晶体管P1的漏极与NMOS晶体管N1的漏极电连接于存储节点QB,NMOS晶体管N1的源极与接地端GND电连接,PMOS晶体管P1的栅极与NMOS晶体管N1的栅极电连接,从而构成第一个反向器;PMOS晶体管P2的源极与电源VDD电连接,PMOS晶体管P2的漏极与NMOS晶体管N2的漏极电连接于存储节点Q,NMOS晶体管N2的源极与接地端GND电连接,PMOS晶体管P2的栅极与NMOS晶体管N2的栅极电连接,从而构成第二个反向器;PMOS晶体管P1的栅极和NMOS晶体管N1的栅极均与存储节点Q电连接,PMOS晶体管P2的栅极和NMOS晶体管N2的栅极均与存储节点QB电连接,从而使所述第一个反向器与所述第二个反向器交叉耦合组成一个数据锁存器,从而实现数据的锁存。(1) As shown in Figure 2, in the 8-tube SRAM cell, the NMOS transistor N3 and the NMOS transistor N4 are controlled by the word line WL, and the reading and writing of data are transmitted through the right column bit line BL and the left column bit line BLB. For input and output, the NMOS transistor N5 and the NMOS transistor N6 are controlled by the read word line RWL, and the data is transmitted from the read bit line RBL, so that the data can be transmitted in the row direction and the column direction respectively. The specific structure of the data latch may include: the source of the PMOS transistor P1 is electrically connected to the power supply VDD, the drain of the PMOS transistor P1 and the drain of the NMOS transistor N1 are electrically connected to the storage node QB, and the source of the NMOS transistor N1 is electrically connected to the storage node QB. It is electrically connected to the ground terminal GND, and the gate of the PMOS transistor P1 is electrically connected to the gate of the NMOS transistor N1 to form a first inverter; the source of the PMOS transistor P2 is electrically connected to the power supply VDD, and the drain of the PMOS transistor P2 The drain of the NMOS transistor N2 is electrically connected to the storage node Q, the source of the NMOS transistor N2 is electrically connected to the ground terminal GND, and the gate of the PMOS transistor P2 is electrically connected to the gate of the NMOS transistor N2, thereby forming a second reverse The gate of the PMOS transistor P1 and the gate of the NMOS transistor N1 are both electrically connected to the storage node Q, and the gate of the PMOS transistor P2 and the gate of the NMOS transistor N2 are both electrically connected to the storage node QB, so that the first The two inverters are cross-coupled with the second inverter to form a data latch, thereby realizing data latching.
(2)列布尔运算功能的实现:如图3所示,本发明实施例1所提供的用于存内计算的行列布尔运算电路包括256行×64列存内计算模块,每一列上有256个Bitcell,即每一列上有256个8管SRAM单元;同一列上的256个Bitcell分别与256根字线WL(例如:图3中的WL0~WL255这256根字线WL)相连,这256根字线WL是由行译码单元控制的,行译码单元主要是通过SRAM的地址位来控制对应字线的使能,从而控制对应行的64个Bitcell的读写使能;同一列上的256个Bitcell的左列位线BLB均与同一根左列位线BLB电连接(例如:图3中第1列上的256个Bitcell的左列位线BLB均与同一根左列位线BLB0电连接),同一列上的256个Bitcell的右列位线BL均与同一根右列位线BL电连接(例如:图3中第1列上的256个Bitcell的右列位线BL均与同一根右列位线BL0电连接);每列Bitcell的左列位线BLB各与一个灵敏放大器SA电连接,且这些灵敏放大器SA分别外接参考电压Vref(例如:图3中第1列Bitcell的左列位线BLB0与一个单独的灵敏放大器SA电连接,并且该灵敏放大器SA外接参考电压Vref1);每列Bitcell的右列位线BL各与一个灵敏放大器SA电连接,且这些灵敏放大器SA分别外接参考电压Vref(例如:图3中第1列Bitcell的右列位线BL0与一个单独的灵敏放大器SA电连接,并且该灵敏放大器SA外接参考电压Vref2);主要通过比较左列位线BLB和右列位线BL的电压与灵敏放大器SA外接的参考电压Vref可以得出列布尔运算的结果(例如:图3中通过比较左列位线BLB0的电压与灵敏放大器SA外接的参考电压Vref1可以得出第1列中Bitcell A和Bitcell B的与运算结果(即A AND B的结果),图3中通过比较右列位线BL0的电压与灵敏放大器SA外接的参考电压Vref2可以得出第1列中Bitcell A和Bitcell B的或非运算结果(即A NOR B的结果),图3中通过将Bitcell A和Bitcell B的与运算结果同Bitcell A和Bitcell B的或非运算结果进行或运算可以得出第1列中Bitcell A和Bitcell B的同或运算结果(即A XNOR B的结果))。(2) Implementation of the column Boolean operation function: As shown in FIG. 3 , the row and column Boolean operation circuit for in-memory calculation provided by Embodiment 1 of the present invention includes 256 rows×64 columns of in-memory calculation modules, and each column has 256 in-memory calculation modules. There are 256 8-tube SRAM cells on each column; 256 Bitcells on the same column are respectively connected with 256 word lines WL (for example: 256 word lines WL of WL 0 to WL 255 in FIG. 3 ), The 256 word lines WL are controlled by the row decoding unit. The row decoding unit mainly controls the enable of the corresponding word line through the address bits of the SRAM, thereby controlling the read and write enable of the 64 Bitcells of the corresponding row; the same The left column bit lines BLB of the 256 Bitcells on the column are all electrically connected to the same left column bit line BLB (for example, the left column bit lines BLB of the 256 Bitcells on the first column in FIG. 3 are all connected to the same left column bit line BLB. Line BLB 0 is electrically connected), the right column bit lines BL of the 256 Bitcells on the same column are all electrically connected to the same right column bit line BL (for example: the right column bit lines of the 256 Bitcells on the first column in FIG. 3 ) BL are all electrically connected to the same right column bit line BL 0 ); the left column bit line BLB of each column of Bitcells is electrically connected to a sense amplifier SA, and these sense amplifiers SA are respectively connected to the reference voltage Vref (for example: the first in FIG. 3 ). The left column bit line BLB 0 of one column of Bitcells is electrically connected to a single sense amplifier SA, and the sense amplifier SA is externally connected to the reference voltage Vref 1 ); the right column bit line BL of each column of Bitcells is electrically connected to a sense amplifier SA, And these sense amplifiers SA are respectively connected to the reference voltage Vref (for example, the bit line BL 0 of the right column of Bitcell in the first column in FIG. 3 is electrically connected to a single sense amplifier SA, and the sense amplifier SA is connected to the reference voltage Vref 2 ); mainly By comparing the voltages of the left column bit line BLB and the right column bit line BL with the reference voltage Vref external to the sense amplifier SA, the result of the column Boolean operation can be obtained (for example: in FIG. 3, by comparing the voltage of the left column bit line BLB 0 with the sensitive The reference voltage Vref 1 external to the amplifier SA can obtain the result of the AND operation of Bitcell A and Bitcell B in the first column (that is, the result of A AND B). In Figure 3, by comparing the voltage of the bit line BL 0 in the right column with the sense amplifier SA The external reference voltage Vref 2 can obtain the NOR operation result of Bitcell A and Bitcell B in the first column (that is, the result of A NOR B). The OR operation of the result of the NOR operation of Bitcell B can obtain the result of the exclusive OR operation of Bitcell A and Bitcell B in the first column (that is, the result of A XNOR B).
(2)行布尔运算功能的实现:如图3所示,本发明实施例1所提供的用于存内计算的行列布尔运算电路包括256行×64列存内计算模块,每一行上有64个Bitcell,即每一行上有64个8管SRAM单元;同一行上的64个Bitcell分别与64根读字线RWL(例如:图3中的RWL0~RWL63这64根读字线RWL)相连,这64根读字线RWL是由读字线控制单元控制的,读字线控制单元主要是通过SRAM的外部地址来控制读字线RWL的使能,从而控制每列对应的256个Bitcell的读使能;同一行上的64个Bitcell的读位线RBL均与同一根读位线RBL电连接(例如:图3中第256行上的64个Bitcell的读位线RBL均与同一根读位线RBL255电连接),每行Bitcell的读位线RBL各与一个单独的灵敏放大器SA电连接,且这些灵敏放大器SA分别外接参考电压Vref(例如:图3中第256行Bitcell的读位线RBL255与一个灵敏放大器SA电连接,并且该灵敏放大器SA外接参考电压Vref3);主要通过比较读位线RBL的电压与灵敏放大器SA外接的参考电压Vref可以得出行布尔运算的结果(例如:图3中通过比较读位线RBL255的电压与灵敏放大器SA外接的参考电压Vref3可以得出第256行中Bitcell C和Bitcell D的与运算结果(即C AND D的结果))。(2) Realization of row Boolean operation function: As shown in FIG. 3 , the row and column Boolean operation circuit for in-memory calculation provided by Embodiment 1 of the present invention includes 256 rows×64 columns of in-memory calculation modules, and each row has 64 in-memory calculation modules. Bitcells, that is, there are 64 8-tube SRAM cells on each row; 64 Bitcells on the same row are respectively associated with 64 read word lines RWL (for example: RWL 0 to RWL 63 in Figure 3 are the 64 read word lines RWL) Connected, these 64 read word lines RWL are controlled by the read word line control unit. The read word line control unit mainly controls the enable of the read word line RWL through the external address of the SRAM, thereby controlling the corresponding 256 Bitcells of each column. read enable; the read bit lines RBL of the 64 Bitcells on the same row are all electrically connected to the same read bit line RBL (for example: the read bit lines RBL of the 64 Bitcells on the 256th row in Figure 3 are all connected to the same root RBL). The read bit line RBL 255 is electrically connected), the read bit line RBL of each row of Bitcells is electrically connected to a separate sense amplifier SA, and these sense amplifiers SA are respectively connected to the reference voltage Vref (for example: the read bit cell in row 256 in FIG. 3 ) The bit line RBL 255 is electrically connected to a sense amplifier SA, and the sense amplifier SA is connected to an external reference voltage Vref 3 ); the result of the row Boolean operation can be obtained mainly by comparing the voltage of the read bit line RBL with the reference voltage Vref external to the sense amplifier SA ( For example, in FIG. 3, by comparing the voltage of the read bit line RBL 255 with the reference voltage Vref 3 connected to the sense amplifier SA, the AND operation result of Bitcell C and Bitcell D in row 256 (ie, the result of C AND D) can be obtained.
进一步地,本发明实施例1所提供的用于存内计算的行列布尔运算电路的原理如下:Further, the principle of the row-column Boolean operation circuit for in-memory calculation provided by Embodiment 1 of the present invention is as follows:
(1)与传统的6管SRAM单元相比,本发明实施例1所提供的8管SRAM单元增加了两个NMOS晶体管(即NMOS晶体管N5和NMOS晶体管N6),并且在这两个NMOS晶体管上增设了一条读字线RWL和一条读位线RBL,通过这条读字线RWL和这条读位线RBL可以实现数据的读出,从而使该8管SRAM单元拥有两个读出数据的端口,为实现用于存内计算的行列布尔运算电路提供了基础。(1) Compared with the traditional 6-tube SRAM cell, the 8-tube SRAM cell provided in Embodiment 1 of the present invention adds two NMOS transistors (ie, the NMOS transistor N5 and the NMOS transistor N6), and on the two NMOS transistors A read word line RWL and a read bit line RBL are added. Data can be read out through this read word line RWL and this read bit line RBL, so that the 8-tube SRAM cell has two ports for reading data. , which provides a basis for implementing a row-column Boolean operation circuit for in-memory computing.
(2)本发明实施例1所提供的用于存内计算的行列布尔运算电路主要实现了列布尔运算和行布尔运算这两部分的功能:(2) The row-column Boolean operation circuit for in-memory calculation provided by Embodiment 1 of the present invention mainly realizes the functions of the column Boolean operation and the row Boolean operation:
①列布尔运算:先预充右列位线BL0和左列位线BLB0至高电平,若行译码单元控制字线WL0和字线WL1为高电平,此时Bitcell A和Bitcell B的字线WL都为高电平,即作为Bitcell A的8管SRAM单元和作为Bitcell B的8管SRAM单元中的NMOS晶体管N3和NMOS晶体管N4打开,Bitcell A和Bitcell B中的数据会通过放电的方式读入右列位线BL0和左列位线BLB0中;当Bitcell A和Bitcell B中的数据为不同的值时,它们对右列位线BL0和左列位线BLB0的放电程度也会不同,可以分为四种情况:Bitcell A数据为低电平,Bitcell B数据为低电平;Bitcell A数据为低电平,Bitcell B数据为高电平;Bitcell A数据为高电平,Bitcell B数据为低电平;Bitcell A数据为高电平,Bitcell B数据为高电平。这时通过将右列位线BL0和左列位线BLB0的电压与灵敏放大器SA设置的参考电压Vref进行比较,就可以实现与逻辑和或非逻辑的布尔运算,进而通过将与逻辑和或非逻辑的布尔运算结果进行或运算,可以得出同或运算的结果。①Column Boolean operation: first precharge the right column bit line BL 0 and the left column bit line BLB 0 to high level, if the row decoding unit controls word line WL 0 and word line WL 1 to be high level, then Bitcell A and The word line WL of Bitcell B is at high level, that is, the NMOS transistor N3 and NMOS transistor N4 in the 8-tube SRAM cell of Bitcell A and the 8-tube SRAM cell of Bitcell B are turned on, and the data in Bitcell A and Bitcell B will be turned on. The right column bit line BL 0 and the left column bit line BLB 0 are read in by discharging; when the data in Bitcell A and Bitcell B are different values, they are opposite to the right column bit line BL 0 and the left column bit line BLB The discharge degree of 0 will also be different, which can be divided into four cases: Bitcell A data is low level, Bitcell B data is low level; Bitcell A data is low level, Bitcell B data is high level; Bitcell A data is high level; It is high level, Bitcell B data is low level; Bitcell A data is high level, Bitcell B data is high level. At this time, by comparing the voltages of the right column bit line BL 0 and the left column bit line BLB 0 with the reference voltage Vref set by the sense amplifier SA, the Boolean operation of AND logical sum or non-logical logic can be realized, and then by combining the AND logical sum The result of the NOR logical Boolean operation is ORed to obtain the result of the XOR operation.
②行布尔运算:先预充读位线RBL255至高电平,若读字线控制单元控制读字线RWL0和RWL1为高电平,此时Bitcell C和Bitcell D中的读字线RWL都为高电平,即作为BitcellC的8管SRAM单元和作为Bitcell D的8管SRAM单元中的NMOS晶体管N5打开;当Bitcell中的数据为高电平时,NMOS晶体管N6打开,读位线RBL放电为0,当Bitcell中的数据为低电平时,NMOS晶体管N6关闭,读位线RBL保持高电平,即Bitcell C和Bitcell D中的数据会读入读位线RBL255中;只有当Bitcell C和Bitcell D中的数据都为高电平时,读位线RBL255才为高电平。这时通过将读位线RBL255的电压与灵敏放大器SA设置的参考电压Vref3进行比较,就可以实现与逻辑和与非逻辑的布尔运算。②Row Boolean operation: first precharge the read bit line RBL 255 to high level, if the read word line control unit controls the read word lines RWL 0 and RWL 1 to be high level, at this time, the read word line RWL in Bitcell C and Bitcell D Both are high level, that is, the NMOS transistor N5 in the 8-tube SRAM unit as BitcellC and the 8-tube SRAM unit as Bitcell D are turned on; when the data in the Bitcell is high, the NMOS transistor N6 is turned on, and the read bit line RBL discharges is 0, when the data in the Bitcell is low, the NMOS transistor N6 is turned off, and the read bit line RBL remains high, that is, the data in Bitcell C and Bitcell D will be read into the read bit line RBL 255 ; only when Bitcell C The read bit line RBL 255 is high only when the data in Bitcell D and Bitcell D are both high. At this time, by comparing the voltage of the read bit line RBL 255 with the reference voltage Vref 3 set by the sense amplifier SA, the Boolean operation of AND logic and NAND logic can be realized.
(3)本发明实施例1所提供的用于存内计算的行列布尔运算电路还可以实现矩阵转置计算。若有一个256×64矩阵,先控制读字线RWL0为高电平,则这一列上的256个Bitcell中的读字线都为高电平,即这一列上的256个8管SRAM单元中的NMOS晶体管N5都打开,则数据都读入读位线RBL中,即256个Bitcell中的数据都读入读位线RBL0至读位线RBL255中,从而实现整个矩阵的列读取,然后依次使能RWL1至RWL63,将矩阵所有列都读出,再将读出的列按行写入其他存储单元结构中,从而实现了矩阵转置计算。(3) The row-column Boolean operation circuit for in-memory calculation provided in Embodiment 1 of the present invention can also realize matrix transposition calculation. If there is a 256×64 matrix, first control the read word line RWL 0 to be high, then the read word lines in the 256 Bitcells in this column are all high, that is, 256 8-tube SRAM cells in this column The NMOS transistors N5 are all turned on, then the data is read into the read bit line RBL, that is, the data in the 256 Bitcells are read into the read bit line RBL 0 to the read bit line RBL 255 , so as to realize the column reading of the entire matrix. , and then enable RWL 1 to RWL 63 in turn, read out all the columns of the matrix, and then write the read columns into other memory cell structures in rows, thereby realizing the matrix transposition calculation.
与现有技术相比,本发明实施例1使用8管SRAM单元结构的存内计算架构不仅可以实现列的布尔运算,还可以实现行的布尔运算,并且此结构还支持矩阵的转置计算,从而大大提高了存内计算的能力。Compared with the prior art, the in-memory computing architecture using the 8-tube SRAM cell structure in Embodiment 1 of the present invention can not only realize the Boolean operation of the column, but also the Boolean operation of the row, and this structure also supports the transposition calculation of the matrix, Thereby greatly improving the ability of in-memory computing.
综上可见,本发明实施例不仅能实现列的布尔运算,而且能实现行的布尔运算,还能够实现矩阵转置操作,从而大大提高了存内计算的能力。From the above, it can be seen that the embodiment of the present invention can not only realize the Boolean operation of the column, but also can realize the Boolean operation of the row, and can also realize the matrix transposition operation, thereby greatly improving the ability of in-memory computing.
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。本文背景技术部分公开的信息仅仅旨在加深对本发明的总体背景技术的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域技术人员所公知的现有技术。The above description is only a preferred embodiment of the present invention, but the protection scope of the present invention is not limited to this. Substitutions should be covered within the protection scope of the present invention. Therefore, the protection scope of the present invention should be based on the protection scope of the claims. The information disclosed in this Background section is only for enhancement of understanding of the general background of the invention and should not be taken as an acknowledgement or any form of suggestion that this information forms the prior art already known to a person skilled in the art.
Claims (6)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210090221.7A CN114446350A (en) | 2022-01-25 | 2022-01-25 | A row-column Boolean operation circuit for in-memory computing |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210090221.7A CN114446350A (en) | 2022-01-25 | 2022-01-25 | A row-column Boolean operation circuit for in-memory computing |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114446350A true CN114446350A (en) | 2022-05-06 |
Family
ID=81369944
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210090221.7A Pending CN114446350A (en) | 2022-01-25 | 2022-01-25 | A row-column Boolean operation circuit for in-memory computing |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114446350A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115482847A (en) * | 2022-10-12 | 2022-12-16 | 安徽财经大学 | A 10T1C SRAM cell structure capable of performing in-situ storage logic operations |
WO2024138905A1 (en) * | 2022-12-28 | 2024-07-04 | 上海科技大学 | Cryogenic high-energy-efficiency computing-in-memory accelerator |
US12112797B1 (en) * | 2023-06-13 | 2024-10-08 | Shanghai Jiao Tong University | Cross-layer reconfigurable static random access memory (SRAM) based compute-in-memory macro and method for edge intelligence |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070115739A1 (en) * | 2005-11-24 | 2007-05-24 | Via Technologies Inc. | Output circuit of a memory and method thereof |
CN110415748A (en) * | 2018-04-27 | 2019-11-05 | 华为技术有限公司 | Memory and signal processing method |
US20200117398A1 (en) * | 2016-12-06 | 2020-04-16 | Gsi Technology, Inc. | Results processing circuits and methods associated with computational memory cells |
CN111883191A (en) * | 2020-07-14 | 2020-11-03 | 安徽大学 | 10T SRAM cell, and memory logic operation and BCAM circuit based on 10T SRAM cell |
CN113205846A (en) * | 2021-05-13 | 2021-08-03 | 上海科技大学 | SRAM cell suitable for high speed content addressing and memory Boolean logic computation |
-
2022
- 2022-01-25 CN CN202210090221.7A patent/CN114446350A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070115739A1 (en) * | 2005-11-24 | 2007-05-24 | Via Technologies Inc. | Output circuit of a memory and method thereof |
US20200117398A1 (en) * | 2016-12-06 | 2020-04-16 | Gsi Technology, Inc. | Results processing circuits and methods associated with computational memory cells |
CN110415748A (en) * | 2018-04-27 | 2019-11-05 | 华为技术有限公司 | Memory and signal processing method |
CN111883191A (en) * | 2020-07-14 | 2020-11-03 | 安徽大学 | 10T SRAM cell, and memory logic operation and BCAM circuit based on 10T SRAM cell |
CN113205846A (en) * | 2021-05-13 | 2021-08-03 | 上海科技大学 | SRAM cell suitable for high speed content addressing and memory Boolean logic computation |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115482847A (en) * | 2022-10-12 | 2022-12-16 | 安徽财经大学 | A 10T1C SRAM cell structure capable of performing in-situ storage logic operations |
WO2024138905A1 (en) * | 2022-12-28 | 2024-07-04 | 上海科技大学 | Cryogenic high-energy-efficiency computing-in-memory accelerator |
US12112797B1 (en) * | 2023-06-13 | 2024-10-08 | Shanghai Jiao Tong University | Cross-layer reconfigurable static random access memory (SRAM) based compute-in-memory macro and method for edge intelligence |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11404114B2 (en) | Low voltage memory device | |
US7483332B2 (en) | SRAM cell using separate read and write circuitry | |
Chen et al. | A reliable 8T SRAM for high-speed searching and logic-in-memory operations | |
Chen et al. | Analysis and optimization strategies toward reliable and high-speed 6T compute SRAM | |
CN114446350A (en) | A row-column Boolean operation circuit for in-memory computing | |
CN101154442A (en) | Static random access memory macro and dual port static random access memory device | |
KR20130009818A (en) | Low-power 5t sram with improved stability and reduced bitcell size | |
CN113205846A (en) | SRAM cell suitable for high speed content addressing and memory Boolean logic computation | |
CN110176264A (en) | A kind of high-low-position consolidation circuit structure calculated interior based on memory | |
CN115810374A (en) | Memory circuit and memory computing circuit with BCAM addressing and logic operation functions | |
US12119052B2 (en) | Low voltage memory device | |
CN115588446A (en) | A storage operation circuit, an in-memory calculation circuit and a chip thereof | |
Chen et al. | Reconfigurable 2T2R ReRAM with split word-lines for TCAM operation and in-memory computing | |
US20250157530A1 (en) | Low-power static random access memory | |
US20250087265A1 (en) | Memory cell and method of operating the same | |
Gupta et al. | Exploration of 9T SRAM cell for in memory computing application | |
CN111899775A (en) | An SRAM memory cell circuit that can realize multiple logic functions and BCAM operations | |
Monga et al. | Design of In-Memory Computing Enabled SRAM Macro | |
CN115035931A (en) | Circuit structure, chip and module based on 8T-SRAM unit | |
CN103928049B (en) | Multiport memory with match address control | |
WO2023137696A1 (en) | Logical operation storage unit, storage array and logical operation memory | |
TWI534802B (en) | Five transistor sram cell | |
US12131776B2 (en) | Non-volatile memory based compute-in-memory cell | |
Gupta et al. | Multiplexer SRAM Combination-Based Design of Multiple Combinational Gates for In-Memory Computation | |
Roshna | Design of Energy Efficient SRAM Based In Memory Computing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |