US 12,307,219 B2
Residue number system in a photonic matrix accelerator
Eric Hein, Atlanta, GA (US); Ayon Basumalik, Framingham, MA (US); Nicholas C. Harris, Menlo Park, CA (US); Darius Bunandar, Boston, MA (US); and Cansu Demirkiran, Brookline, MA (US)
Assigned to Lightmatter, Inc., Boston, MA (US)
Filed by Lightmatter, Inc., Boston, MA (US)
Filed on Oct. 27, 2023, as Appl. No. 18/496,494.
Application 18/496,494 is a continuation of application No. 17/543,676, filed on Dec. 6, 2021, granted, now 11,836,466.
Claims priority of provisional application 63/253,999, filed on Oct. 8, 2021.
Claims priority of provisional application 63/122,329, filed on Dec. 7, 2020.
Prior Publication US 2024/0152331 A1, May 9, 2024
Int. Cl. G06F 7/72 (2006.01); G06E 1/00 (2006.01)
CPC G06F 7/729 (2013.01) [G06E 1/00 (2013.01)] 18 Claims
OG exemplary drawing
 
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.