Patentable/Patents/US-11301752
US-11301752

Memory configuration for implementing a neural network

PublishedApril 12, 2022
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

Weights of a neural network are initialized by programming a plurality of unit cells. A given one of the plurality of unit cells includes one or more static random-access memory cells and a digital to analog converter device. The digital to analog converter device is configured to receive one or more outputs produced by respective ones of the one or more static random-access memory cells. An amount of error associated with the initialized weights is determined. The initialized weights are adjusted in response to the amount of error exceeding a threshold amount of error.

Patent Claims
20 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. An apparatus comprising: circuitry configured to implement a neural network and comprising a plurality of unit cells, wherein a given one of the plurality of unit cells comprises one or more static random-access memory cells and a digital to analog converter device, wherein the one or more static random-access memory cells implement an n-bit static-access memory, wherein the digital to analog converter device is configured to receive one or more outputs produced by respective ones of the one or more static random-access memory cells, and wherein the given unit cell further comprises a set of transistors forming at least one cross-coupled inverter and a set of programming transistors coupling the cross-coupled inverter to a set of bit-lines associated with the given unit cell; and at least one processor operatively coupled to a memory and configured to: initialize weights of the neural network by programming the unit cells; determine an amount of error associated with the initialized weights; and adjust the initialized weights in response to the amount of error exceeding a threshold amount of error.

2

2. The apparatus of claim 1 , wherein the digital to analog converter device comprises a resistor ladder.

3

3. The apparatus of claim 2 , wherein the resistor ladder is an R-2R resistor ladder.

4

4. The apparatus of claim 2 , wherein the resistor ladder is comprised of a precision resistor material.

5

5. The apparatus of claim 4 , wherein the precision resistor material comprises polysilicon or a back-end-of-line metal.

6

6. The apparatus of claim 1 , wherein the digital to analog converter device comprises a field-effect transistor.

7

7. The apparatus of claim 1 , wherein the n-bit static-access memory is a five bit static-access memory.

8

8. The apparatus of claim 1 , wherein the given unit cell comprises four transistors forming the at least one cross-coupled inverter and two programming transistors coupling the cross-coupled inverter to the set of bit-lines associated with the given unit cell.

9

9. The apparatus of claim 1 , wherein the neural network is a feedforward neural network.

10

10. The apparatus of claim 9 , wherein the neural network is a convolutional neural network.

11

11. The apparatus of claim 1 , wherein the neural network is a recurring neural network.

12

12. A method for implementing a neural network, the method comprising: initializing weights of the neural network by programming a plurality of unit cells, wherein a given one of the plurality of unit cells comprises one or more static random-access memory cells and a digital to analog converter device, wherein the one or more static random-access memory cells implement an n-bit static-access memory, wherein the digital to analog converter device is configured to receive one or more outputs produced by respective ones of the one or more static random-access memory cells, and wherein the given unit cell further comprises a set of transistors forming at least one cross-coupled inverter and a set of programming transistors coupling the cross-coupled inverter to a set of bit-lines associated with the given unit cell; determining an amount of error associated with the initialized weights; and adjusting the initialized weights in response to the amount of error exceeding a threshold amount of error; wherein the steps of the method are implemented by at least one processing device comprising a processor operatively coupled to a memory.

13

13. The method of claim 12 , wherein the digital to analog converter device comprises a resistor ladder.

14

14. The method of claim 13 , wherein the resistor ladder is an R-2R resistor ladder.

15

15. The method of claim 13 , wherein the resistor ladder is comprised of a precision resistor material.

16

16. The method of claim 12 , wherein the digital to analog converter device comprises a field-effect transistor.

17

17. The method of claim 12 , wherein the n-bit static-access memory is a five bit static-access memory.

18

18. The method of claim 12 , wherein the given unit cell comprises four transistors forming the at least one cross-coupled inverter and two programming transistors coupling the cross-coupled inverter to the set of bit-lines associated with the given unit cell.

19

19. The method of claim 12 , wherein the neural network is one of a feedforward neural network and a recurring neural network.

20

20. An article of manufacture comprising a processor-readable storage medium for storing computer-readable program code which, when executed, causes at least one processor to implement a neural network by performing steps of: initializing weights of the neural network by programming a plurality of unit cells, wherein a given one of the plurality of unit cells comprises one or more static random-access memory cells and a digital to analog converter device, wherein the one or more static random-access memory cells implement an n-bit static-access memory, wherein the digital to analog converter device is configured to receive one or more outputs produced by respective ones of the one or more static random-access memory cells, and wherein the given unit cell further comprises a set of transistors forming at least one cross-coupled inverter and a set of programming transistors coupling the cross-coupled inverter to a set of bit-lines associated with the given unit cell; determining an amount of error associated with the initialized weights; and adjusting the initialized weights in response to the amount of error exceeding a threshold amount of error.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

October 24, 2017

Publication Date

April 12, 2022

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Memory configuration for implementing a neural network” (US-11301752). https://patentable.app/patents/US-11301752

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.