IP Library › Granted Patent US 12,482,518
Granted Patent B2
US 12,482,518 · App. 18/137,159 · Granted Nov 25, 2025

Enhanced accuracy of bit line reading for an in-memory compute operation by accounting for variation in read current

Inventors: Kedar Janardan Dhori (Ghaziabad, IN); Nitin Chawla (Noida, IN); Promod Kumar (Greater Noida, IN); Harsh Rawat (Faridabad, IN); Manuj Ayodhyawasi (Noida, IN)
Assignee: STMicroelectronics International N.V.
G11C11/4096G11C7/1006G11C11/4085G11C11/4094G11C11/419G11C11/54G06N3/065
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,482,518
App. No.
18/137,159
Granted
Nov 25, 2025
Kind
B2
Abstract

An in-memory computation circuit includes a memory array with SRAM cells connected in rows by word lines and in columns by bit lines. A row controller circuit simultaneously actuates word lines in parallel for an in-memory compute operation. A column processing circuit includes a read circuit that operates to reduce sensitivity to variation in bit line read current. Additionally, a testing circuit senses analog signals on the complementary bit lines to identify one of the complementary bit lines as having a less variable read current. That identified one of the complementary bit lines is coupled to the read circuit for the in-memory compute operation.

Claims (34)

1 . An in-memory computation circuit, comprising:

a memory array including a plurality of memory cells arranged in a matrix with plural rows and plural columns, each row including a word line connected to the memory cells of the row, and each column including a first bit line and second bit line connected to the memory cells of the column;

a word line driver circuit for each row having an output connected to drive the word line of the row;

a row controller circuit configured to simultaneously actuate the plurality of word lines by applying pulses through the word line driver circuits to the word lines in response to feature data for an in-memory compute operation; and

a column processing circuit including a read circuit coupled to the first and second bit lines, wherein each read circuit comprises:

a first sensing circuit comprising a first analog-to-digital converter circuit configured to convert a first bit line signal generated on the first bit line in response to the in-memory compute operation and generate a first digital signal;

a second sensing circuit comprising a second analog-to-digital converter circuit configured to convert a second bit line signal generated on the second bit line in response to the in-memory compute operation and generate a second digital signal; and

a digital signal processing circuit configured to average the first and second digital signals to generate an output signal indicative of a result of the in-memory compute operation.

2 . The circuit of claim 1 , wherein the first and second bit lines are complementary bit lines coupled to the memory cells of the column.

3 . The circuit of claim 1 , wherein the first analog-to-digital converter circuit is configured to implement a first analog-to-digital encoding operation in response to the first bit line signal, wherein the second analog-to-digital converter circuit is configured to implement a second analog-to-digital encoding operation in response to the second bit line signal, and wherein the second analog-to-digital encoding operation is a logical inversion of the first analog-to-digital encoding operation.

4 . An in-memory computation The circuit of claim 1 , comprising:

a memory array including a plurality of memory cells arranged in a matrix with plural rows and plural columns, each row including a word line connected to the memory cells of the row, and each column including a first bit line and second bit line connected to the memory cells of the column;

a word line driver circuit for each row having an output connected to drive the word line of the row;

a row controller circuit configured to simultaneously actuate the plurality of word lines by applying pulses through the word line driver circuits to the word lines in response to feature data for an in-memory compute operation; and

a column processing circuit including a read circuit coupled to the first and second bit lines, wherein each read circuit comprises:

an analog-to-digital converter circuit selectively coupled to the first and second bit lines to receive first and second bit line signals, respectively, using a multiplexer circuit and configured to:

convert the first bit line signal generated on the first bit line in response to the in-memory compute operation and generate a first digital sense signal; and

convert the second bit line signal generated on the second bit line in response to the in-memory compute operation and generate a second digital sense signal; and

a digital signal processing circuit configured to average the first and second digital signals to generate an output signal indicative of a result of the in-memory compute operation.

5 . The circuit of claim 4 , wherein said analog-to-digital converter circuit is configured to implement a first analog-to-digital encoding operation in response to the first bit line signal and implement a second analog-to-digital encoding operation in response to the second bit line signal, and wherein the second analog-to-digital encoding operation is a logical inversion of the first analog-to-digital encoding operation.

6 . The circuit of claim 4 , wherein the first and second bit lines are complementary bit lines coupled to the memory cells of the column.

7 . A read method for an in-memory computation circuit, including: a memory array including a plurality of memory cells arranged in a matrix with plural rows and plural columns, each row including a word line connected to the memory cells of the row, and each column including a first bit line and second bit line connected to the memory cells of the column; a word line driver circuit for each row having an output connected to drive the word line of the row; and a row controller circuit configured to simultaneously actuate the plurality of word lines by applying pulses through the word line driver circuits to the word lines in response to feature data for an in-memory compute operation, said read method comprising:

performing a first analog-to-digital conversion of a first bit line signal generated on the first bit line in response to the in-memory compute operation to generate a first digital signal;

performing a second analog-to-digital conversion of a second bit line signal generated on the second bit line in response to the in-memory compute operation to generate a second digital signal; and

averaging the first and second digital signals to generate an output signal indicative of a result of the in-memory compute operation.

8 . The method of claim 7 , wherein the first and second bit lines are complementary bit lines coupled to the memory cells of the column.

9 . The method of claim 7 , wherein the first analog-to-digital conversion is performed using a first encoding operation in response to the first bit line signal, wherein the second analog-to-digital conversion is performed using a second encoding operation in response to the second bit line signal, and wherein the second analog-to-digital encoding operation is a logical inversion of the first analog-to-digital encoding operation.

10 . A read method for an in-memory computation circuit, including: a memory array including a plurality of memory cells arranged in a matrix with plural rows and plural columns, each row including a word line connected to the memory cells of the row, and each column including a first bit line and second bit line connected to the memory cells of the column; a word line driver circuit for each row having an output connected to drive the word line of the row; and a row controller circuit configured to simultaneously actuate the plurality of word lines by applying pulses through the word line driver circuits to the word lines in response to feature data for an in-memory compute operation, the method comprising:

selecting the first bit line signal;

performing a first analog-to-digital conversion using an analog-to-digital converter circuit to generate a first digital signal;

performing a second analog-to-digital conversion using said analog-to-digital converter circuit to generate a second digital signal; and

averaging the first and second digital signals to generate an output signal indicative of a result of the in-memory compute operation.

11 . The method of claim 10 , wherein said analog-to-digital converter circuit implements a first analog-to-digital encoding operation when converting the first bit line signal and implements a second analog-to-digital encoding operation when converting the second bit line signal, and wherein the second analog-to-digital encoding operation is a logical inversion of the first analog-to-digital encoding operation.

12 . The method of claim 10 , wherein the first and second bit lines are complementary bit lines coupled to the memory cells of the column.

Continuity (2)
Provisional Application 63345558 · May 25, 2022
Related Publication 20230386564A1 · Nov 30, 2023
References Cited (35)
US 9396795B1 · Jeloka et al. · 2016 [cited by applicant]
US 10860682B2 · Knag et al. · 2020 [cited by applicant]
US 11615256B1 · Far · 2023 [cited by examiner]
US 20190042160A1 · Kumar · 2019 [cited by examiner]
US 20190102170A1 · Chen · 2019 [cited by examiner]
US 20210158854A1 · Sinangil · 2021 [cited by applicant]
US 20220012580A1 · Srivastava · 2022 [cited by examiner]
US 20220027723A1 · Kolter et al. · 2022 [cited by applicant]
US 20220028444A1 · Papageorgiou · 2022 [cited by examiner]
US 20220138545A1 · Muthiah · 2022 [cited by examiner]
US 20220398438A1 · Zhang · 2022 [cited by examiner]
WO 2022029790A1 · 2022 [cited by applicant]
EPO Search Report and Written Opinion for counterpart EP Appl. No. 23174859.1, report dated Nov. 8, 2023, 9 pgs. [cited by applicant]
Lee Kyeongho et al Bit Parallel 6T SRAM 1-14 In-Memory Computing With Reconfigurable Bit-Precision 2020 57th ACM/IEEE Design Automation Conference (DAC), IEEE Jul. 20, 2020 pp. 1-6 XP033838070. [cited by applicant]
Jain Saurabh et al Broad-Purpose 1-14 In-Memory Computing for Signal Monitoring and Machine Learning Workloads IEEE Solid-State Circuits Letters, IEEE vol. 3, Sep. 17, 2020 pp. 394-397, XP011814078. [cited by applicant]
X. Si , “24.5 A Twin-8T SRAM Computation-In-Memory Macro for Multiple-Bit CNN-Based Machine Learning,” IEEE International Solid-State Circuits Conference (ISSCC), 2019. [cited by applicant]
Area-Efficient and Variation-Tolerant In-Memory BNN Computing using 6T SRAM Array , Symposium on Circuits VLSI 2019. [cited by applicant]
X-SRAM: Enabling In-Memory Boolean Computations in CMOS Static Random Access Memories , IEEE Transactions on Circuits and Systems-I: Regular Papers, vol. 65, No. 12, Dec. 2018. [cited by applicant]
M. Kang et al., “A Multi-Functional In-Memory Inference Processor Using a Standard 6T SRAM Array,” IEEE Journal of Solid-State Circuits, vol. 53, No. 2, 2018. [cited by applicant]
J. Zhang et al., “In-memory computation of a machine-learning classifier in a standard 6T SRAM array,” IEEE Journal of Solid-State Circuits, vol. 52, No. 4, 2017. [cited by applicant]
A. Biswas and A. P. Chandrakasan, “CONV-SRAM: An Energy-Efficient SRAM with In-Memory Dot-Product Computation for Low-Power Convolutional Neural Networks,” IEEE Journal of Solid-State Circuits (JSSC), vol. 54, No. 1, 20… [cited by applicant]
X. Si et al., “A 28nm 64Kb 6T SRAM Computing-in-Memory Macro with 8b MAC Operation for AI Edge Chips,” IEEE International Solid-State Circuits Conference (ISSCC), 2020. [cited by applicant]
J.-W. Su et al., “A 28nm 64Kb Inference-Training Two-Way Transpose Multibit 6T SRAM Compute-in-Memory Macro for AI Edge Chips,” IEEE International Solid-State Circuits Conference (ISSCC), 2020. [cited by applicant]
S. Yin et al., “XNOR-SRAM: In-Memory Computing SRAM Macro for Binary/Ternary Deep Neural Networks,” IEEE Journal of Solid-State Circuits (JSSC), vol. 55, No. 6, 2020. [cited by applicant]
H. Jia et al., “A Programmable Heterogeneous Microprocessor Based on Bit-Scalable In-Memory Computing,” in IEEE Journal of Solid-State Circuits, vol. 55, No. 9, 2020. [cited by applicant]
Z. Jiang et al., “C3SRAM: An In-Memory-Computing SRAM Macro Based on Robust Capacitive Coupling Computing Mechanism,” IEEE Journal of Solid-State Circuits (JSSC), vol. 55, No. 7, 2020. [cited by applicant]
H. Valaviet al., “A 64-Tile 2.4-Mb In-Memory-Computing CNN Accelerator Employing Charge-Domain Compute,” IEEE Journal of Solid-State Circuits, vol. 54, No. 6, 2019. [cited by applicant]
Q. Dong , “A 351TOPS/W and 372.4GOPS Compute-in-Memory SRAM Macro in 7nm FinFET CMOS for Machine-Learning Applications,” IEEE International Solid-State Circuits Conference (ISSCC), 2020. [cited by applicant]
Aga, Shaizeen, et al: “Compute Caches,” 2017 IEEE International Symposium on High Performance Computer Architecture, 12 pages. [cited by applicant]
Chen, Zhiyu, et al: “CAP-RAM: A Charge-Domain In-Memory Computing 6T-SRAM for Accurate and Precision-Programmable CNN Inference,” IEEE Journal of Solid-State Circuits, 2021, 12 pages. [cited by applicant]
Jeloka, Supreet, et al: “A 28 nm Configurable Memory (TCAM/BCAM/SRAM) Using Push-Rule 6T Bit Cell Enabling Logic-in-Memory,” IEEE Journal of Solid-State Circuits, vol. 51, No. 4, Apr. 2016, 13 pages. [cited by applicant]
Kang, Mingu, et al: “A Multi-functional In-memory Inference Processor using a Standard 6T SRAM Array,” IEEE, 2017, 17 pages. [cited by applicant]
Mittal, Sparsh, et al: “A Survey of SRAM-based In-Memory Computing Techniques and Applications,” Journal of Systems Architecture, Aug. 2021, 55 pages. [cited by applicant]
Sun, Xiaoyu, et al: “Computing-in-Memory with SRAM and RRAM for Binary Neural Networks,” 2018 IEEE, 4 pages. [cited by applicant]
Zhang, Jiantao, et al: “In-Memory Computation of a Machine-Learning Classifier in a Standard 6T SRAM Array,” IEEE Journal of Solid-State Circuits, 2017, 10 pages. [cited by applicant]