Residue number system in a photonic matrix accelerator

US12307219B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12307219-B2
Application numberUS-202318496494-A
CountryUS
Kind codeB2
Filing dateOct 27, 2023
Priority dateDec 7, 2020
Publication dateMay 20, 2025
Grant dateMay 20, 2025

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A photonic processor uses light signals and a residue number system (RNS) to perform calculations. The processor sums two or more values by shifting the phase of a light signal with phase shifters and reading out the summed phase with a coherent detector. Because phase winds back every 2π radians, the photonic processor performs addition modulo 2π. A photonic processor may use the summation of phases to perform dot products and correct erroneous residues. A photonic processor may use the RNS in combination with a positional number system (PNS) to extend the numerical range of the photonic processor, which may be used to accelerate homomorphic encryption (HE)-based deep learning.

First claim

Opening claim text (preview).

What is claimed is: 1. A photonic processor for representing numbers using a redundant residue number system (RRNS) that includes a set of moduli, the set of moduli including n moduli and k redundant moduli, the photonic processor comprising: at least one optical transmitter configured to, for each modulus of the set of moduli: provide a first value associated with the modulus; and provide a second value associated with the modulus; at least one phase shifter configured to, for each modulus of the set of moduli: shift, by each of the first value and the second value, a phase of a light signal; and at least one receiver configured to, for each modulus of the set of moduli: detect the shifted phase of the light signal; and output the detected phase of the light signal as representing a residue of a sum of the first value and the second value, the residue being associated with the modulus, wherein the photonic processor is further configured to use a residue associated with a modulus of the k redundant moduli to detect and/or correct an error of a residue associated with a modulus of the n moduli, wherein the photonic processor is configured to detect and/or correct the error by: forming a plurality of sets of moduli, each set of moduli comprising p moduli; determining a plurality of representations by, for each set of moduli of the plurality of sets of moduli, converting a set of residues associated with the set of moduli to a representation of the set of residues; determining a correct representation using the plurality of representations. 2. The photonic processor of claim 1 , wherein determining the correct representation using the plurality of representations comprises: selecting a representation of the plurality of representations that occurs most often in the plurality of representations. 3. The photonic processor of claim 1 , wherein the representation of the set of residues comprises an integer. 4. The photonic processor of claim 1 , wherein converting the set of residues associated with the set of moduli to the representation of the set of residues comprises: converting the set of residues associated with the set of moduli to the representation without using Chinese Remainder Theorem (CRT). 5. The photonic processor of claim 1 , wherein p is equal to n. 6. The photonic processor of claim 1 , wherein the photonic processor is configured to detect and/or correct the error by: providing a first residue associated with a redundant modulus of the k redundant moduli; using a residue associated with a modulus of the n moduli, computing a second residue associated with the redundant modulus of the k redundant moduli; comparing the first residue with the second residue; and determining that there is an erroneous residue when the first residue does not match the second residue. 7. The photonic processor of claim 6 , wherein the photonic processor is further configured to detect and/or correct the error by: determining whether the erroneous residue is associated with a modulus of the n moduli, or a redundant modulus of the k redundant moduli. 8. The photonic processor of claim 7 , wherein the photonic processor is further configured to detect and/or correct the error by: responsive to determining that the erroneous residue is associated with a modulus of the n moduli: computing an index using the first residue and the second residue each associated with the redundant modulus of the k redundant moduli; using the index, looking up a correction factor in an error correction table; and computing a corrected residue using the erroneous residue and the correction factor. 9. The photonic processor of claim 1 , wherein the photonic processor is configured to: responsive to determining that there is a number of errors that is greater than an error correction threshold, perform maximum likelihood (ML) decoding to determine a set of corrected residues that are closest to a set of residues associated with the detected phases of light. 10. A method of using a photonic processor to represent numbers using a redundant residue number system (RRNS) that includes a set of moduli, the set of moduli including n moduli and k redundant moduli, the method comprising: for each modulus of the set of moduli: providing a first value associated with the modulus; providing a second value associated with the modulus; shifting, by each of the first value and the second value, a phase of a light signal; detecting the shifted phase of the light signal; and outputting the detected phase of the light signal as representing a residue of a sum of the first value and the second value, the residue being associated with the modulus; and using a residue associated with a modulus of the k redundant moduli to detect and/or correct an error of a residue associated with a modulus of the n moduli, wherein detecting and/or correcting the error comprises: forming a plurality of sets of moduli, each set of moduli comprising p moduli; determining a plurality of representations by, for each set of moduli of the plurality of sets of moduli, converting a set of residues associated with the set of moduli to a representation of the set of residues; determining a correct representation using the plurality of representations. 11. The method of claim 10 , wherein determining the correct representation using the plurality of representations comprises: selecting a representation of the plurality of representations that occurs most often in the plurality of representations. 12. The method of claim 10 , wherein the representation of the set of residues comprises an integer. 13. The method of claim 10 , wherein converting the set of residues associated with the set of moduli to the representation of the set of residues comprises: converting the set of residues associated with the set of moduli to the representation without using Chinese Remainder Theorem (CRT). 14. The method of claim 10 , wherein p is equal to n. 15. The method of claim 10 , wherein detecting and/or correcting the error comprises: providing a first residue associated with a redundant modulus of the k redundant moduli; using a residue associated with a modulus of the n moduli, computing a second residue associated with the redundant modulus of the k redundant moduli; comparing the first residue with the second residue; and determining that there is an erroneous residue when the first residue does not match the second residue. 16. The method of claim 15 , wherein detecting and/or correcting the error further comprises: determining whether the erroneous residue is associated with a modulus of the n moduli, or a redundant modulus of the k redundant moduli. 17. The method of claim 16 , wherein detecting and/or correcting the error further comprises: responsive to determining that the erroneous residue is associated with a modulus of the n moduli: computing an index using the first residue and the second residue each associated with the redundant modulus of the k redundant moduli; using the index, looking up a correction factor in an error correction table; and computing a corrected residue using the erroneous residue and the correction factor. 18. The method of claim 10 , wherein detecting and/or correcting the error further comprises: responsive to determining that there is a number of errors that is greater than an error correction threshold, perform maximum likelihood (ML) decoding to determine a set of corrected residues that are closest to a set of residues associated w

Assignees

Inventors

Classifications

  • Devices for processing exclusively digital data · CPC title

  • involving Lattices or polynomial equations, e.g. NTRU scheme · CPC title

  • involving homomorphic encryption · CPC title

  • Backpropagation, e.g. using gradient descent · CPC title

  • using electro-optical, acousto-optical or opto-electronic means · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US12307219B2 cover?
A photonic processor uses light signals and a residue number system (RNS) to perform calculations. The processor sums two or more values by shifting the phase of a light signal with phase shifters and reading out the summed phase with a coherent detector. Because phase winds back every 2π radians, the photonic processor performs addition modulo 2π. A photonic processor may use the summation of …
Who is the assignee on this patent?
Lightmatter Inc
What technology area does this patent fall under?
Primary CPC classification G06F7/729. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 20 2025 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).