DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Election/Restrictions
Applicant’s election without traverse of Group II Claims 9-20 in the reply filed on 04/15/2026 is acknowledged.
Drawings
The drawings are objected to as failing to comply with 37 CFR 1.84(p)(5) because they do not include the following reference sign(s) mentioned in the description:
In par.49, ll.5, “memristors 512” was stated, but not shown in figure 5. Examiner notes that it could be “memristors 517” (Emphasis added) based on the figure.
In par.59, ll.5, “cursor control 816” was stated, but not shown in figure 6. Examiner notes that it could be “cursor control 616” (Emphasis added) based on the figure.
Corrected drawing sheets in compliance with 37 CFR 1.121(d) are required in reply to the Office action to avoid abandonment of the application. Any amended replacement drawing sheet should include all of the figures appearing on the immediate prior version of the sheet, even if only one figure is being amended. Each drawing sheet submitted after the filing date of an application must be labeled in the top margin as either “Replacement Sheet” or “New Sheet” pursuant to 37 CFR 1.121(d). If the changes are not accepted by the examiner, the applicant will be notified and informed of any required corrective action in the next Office action. The objection to the drawings will not be held in abeyance.
Specification
The disclosure is objected to as failing to comply with 37 CFR 1.71(a) because of the following informalities:
In par.18, p.6, ll.6-7, “(e.g., implemented by a transimpedance amplifier when combining DPE and aCAM circuits, and reduced power consumption” Should read as “(e.g., implemented by a transimpedance amplifier when combining DPE and aCAM circuits), and reduced power consumption” (Emphasis added).
Appropriate correction is required.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claim 18 rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Claim 18 recites the limitation "the (DPE) circuit" in line 1. There is insufficient antecedent basis for this limitation in the claim. As it is unclear if “(DPE)” is included with “the circuit” as “the circuit” alone may represent either the DPE circuit or the CI-aCAM circuit. Examiner suggests to remove the parentheses from “(DPE)”. For purposes of examination the “the (DPE) circuit” will be considered “the DPE circuit”
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 9-20 are rejected under 35 U.S.C. 103 as being unpatentable over Song et al. (NPL: “BRAHMS: Beyond Conventional RRAM-based Neural Network Accelerators Using Hybrid Analog Memory System”), hereinafter Song, and in view of Karunaratne et al. (US 12,141,692 B2), hereinafter Karunaratne, further in view of Li et al. (US 10,998,047 B1), hereinafter Li, further in view of pHionics Inc. (NPL: “Analog Signals: Current vs. Voltage”), hereinafter pHionics.
Regarding claim 9, Song discloses:
A circuit, comprising:
a dot product engine (DPE) circuit, the DPE circuit performing matrix multiplication; and an analog content addressable memory (aCAM) array circuit coupled to the DPE, the aCAM array circuit performing an aCAM search based on the matrix multiplication of the DPE circuit [Figure 8, shows a pipeline for analog domain; See fig.3; "The RAM-PEs not only perform in-situ dot products for MVMs, but also support data routing." Sec.3.C; "RRAM crossbars perform MVMs in the analog domain based on the Ohm’s Law," Sec.I; "CAM-PEs, they natively support CAM search operations which are for implementing nonlinear functions." Sec.3.C].
However, Song does not explicitly disclose:
a current-input analog content addressable memory (CI-aCAM) array circuit coupled to the DPE, the CI-aCAM array circuit performing an aCAM search based on the matrix multiplication of the DPE circuit.
In the analogous art of Neural network systems and crossbar implementations, Karunaratne teaches a current-output based DPE circuit [Figs.5 and 4; "Matrix-vector multiplication may be computed by applying voltages along the rows of the crossbar and summing up currents (using Kirchhoff's current law) along the columns in the crossbar. Net output current is usually measured using analog to digital converter (ADC) for further computations" Col.9,ll.34-38];
It would have been obvious to one of ordinary skill in the art, having the teachings of Song and Karunaratne before him before the effective filing date of the claimed invention to modify the RAM-PEs disclosed by Song, to implement the crossbar array taught by Karunaratne, in order to implement efficiently compute dot products in O(1) time complexity by exploiting Kirchhoff’s circuit laws [Karunaratne: Col.14-16, see fig.5A/B]. The combination of Song and Karunaratne discloses current-based matrix multiplication output of the DPE circuit.
However, Song and Karunaratne does not explicitly disclose:
a current-input analog content addressable memory (CI-aCAM) array circuit coupled to the DPE, the CI-aCAM array circuit performing an aCAM search based on the matrix multiplication of the DPE circuit.
In the analogous art of analog Content Addressable Memory, Li teaches a current-input analog content addressable memory (CI-aCAM) array circuit, the CI-aCAM array circuit performing an aCAM search [ Fig.2A, 205; "An analog CAM… the memristor-based analog CAM can search analog voltages and store analog values." Col.4,ll.31-37; "the analog values described herein are voltages, but is should be understood that these values can be implemented as other analog characteristics, such as current and the like." Col.6, ll.1-4].
It would have been obvious to one of ordinary skill in the art, to seek an implementation of the aCAM to handle the current output of the Crossbar array of Karunaratne and convert from analogue current into digital. Additionally, pHionics teaches various benefits of using current signals such as: current is more immune to noise, reduction in troubleshooting, low power usage, and easier to supply current in series for multiple devices [pHionics: p.2]. As such, it would have been obvious to one of ordinary skill in the art, having the teachings of Song, Karunaratne, Li, and pHionics before him before the effective filing date of the claimed invention to modify the CAM-PEs disclosed by Song, to implement the aCAM taught by Li, in order to use an aCAM capable of handling current and still implement the aCAM search function that leads to advantages in area and power savings [Li: Col.4,ll.27-55, and Col.6,ll.1-19]. The combination of Song, Karunaratne, Li, and pHionics discloses a current-input analog content addressable memory (CI-aCAM) array circuit coupled to the DPE, the CI-aCAM array circuit performing an aCAM search based on the matrix multiplication of the DPE circuit.
Regarding claim 10, Song, Karunaratne, Li, and pHionics disclose the invention substantially as claimed. See the discussion of claim 9 above.
Song discloses wherein the DPE circuit comprises a memristor crossbar matrix of a plurality of resistive memory elements arranged in rows and columns ["The size of each RRAM array is 128 x 128" Sec.III.A; "resistive random-access memories (RRAMs)… RRAM crossbars perform MVMs in the analog domain based on the Ohm’s Law," Sec.I].
Karunaratne also teaches wherein the DPE circuit comprises a memristor crossbar matrix of a plurality of resistive memory elements arranged in rows and columns [Fig.2,5; See col.7-8]
Regarding claim 11, Song, Karunaratne, Li, and pHionics disclose the invention substantially as claimed. See the discussion of claim 10 above.
Song discloses wherein the plurality of resistive memory elements determines matrix multiplication values, and further wherein the memristor crossbar matrix comprises a plurality of columns of output lines to collect all analogue output from the resistive memory elements, the collected analogue values on each column equaling a corresponding matrix multiplication value [Fig.4 and 8; "RRAM crossbars perform MVMs in the analog domain based on the Ohm’s Law," Sec.I].
However, Song does not explicitly disclose further wherein the memristor crossbar matrix comprises a plurality of columns of output lines to collect all currents output from the resistive memory elements, the collected currents on each column equaling a corresponding matrix multiplication value.
In the analogous art of Neural network systems and crossbar implementations, Karunaratne teaches wherein the memristor crossbar matrix comprises a plurality of columns of output lines to collect all currents output from the resistive memory elements, the collected currents on each column equaling a corresponding matrix multiplication value. ["Matrix-vector multiplication may be computed by applying voltages along the rows of the crossbar and summing up currents (using Kirchhoff's current law) along the columns in the crossbar." Col.9,ll.34-37]
It would have been obvious to one of ordinary skill in the art, having the teachings of Song and Karunaratne before him before the effective filing date of the claimed invention to modify the RAM-PEs disclosed by Song, to implement the crossbar array taught by Karunaratne, in order to implement efficiently compute dot products in O(1) time complexity by exploiting Kirchhoff’s circuit laws [Karunaratne: Col.14-16, see fig.5A/B]. The combination of Song and Karunaratne discloses the additional limitations of claim 11
Regarding claim 12, Song, Karunaratne, Li, and pHionics disclose the invention substantially as claimed. See the discussion of claim 11 above.
Song discloses wherein the aCAM array comprises a plurality of aCAM circuits ["The size of each ARCAM array is 128 x 64" Col.III.A].
Karunaratne teaches an array of ADCs [Fig.2B, shows an ADC per current column; "Net output current is usually measured using analog to digital converter (ADC) for further computations" Col.9,ll.37-38].
However, Song and Karunaratne does not explicitly disclose wherein the CI-aCAM array comprises a plurality of CI-aCAM circuits.
In the analogous art of analog Content Addressable Memory, Li teaches a current-input analog content addressable memory (CI-aCAM) array [Fig.2A, 205a-d; "An analog CAM… the memristor-based analog CAM can search analog voltages and store analog values." Col.4,ll.31-37; "the analog values described herein are voltages, but is should be understood that these values can be implemented as other analog characteristics, such as current and the like." Col.6, ll.1-4].
It would have been obvious to one of ordinary skill in the art, to seek an implementation of the aCAM to handle the current output of the Crossbar array of Karunaratne and convert from analogue current into digital. Additionally, pHionics teaches various benefits of using current signals such as: current is more immune to noise, reduction in troubleshooting, low power usage, and easier to supply current in series for multiple devices [pHionics: p.2]. As such, it would have been obvious to one of ordinary skill in the art, having the teachings of Song, Karunaratne, Li, and pHionics before him before the effective filing date of the claimed invention to modify the CAM-PEs disclosed by Song, to implement the aCAM taught by Li, in order to use an aCAM capable of handling current and still implement the aCAM search function that leads to advantages in area and power savings [Li: Col.4,ll.27-55, and Col.6,ll.1-19]. The combination of Song, Karunaratne, Li, and pHionics discloses wherein the CI-aCAM array comprises a plurality of CI-aCAM circuits.
Regarding claim 13, Song, Karunaratne, Li, and pHionics disclose the invention substantially as claimed. See the discussion of claim 12 above.
Song discloses the columns of the DPE output analogue values to be processed by the aCAM array in parallel for various functions [Fig.4, shows the RRAM crossbar and the connected mux array; ”Since the ARCAM array size is 128x64, 64 inputs can be searched in parallel” Sec.III.D; “using a single CAM-PE to process activation functions, max-pooling and AD conversion for 128 outputs of a RAM-PE…” Sec.IV.B]
However, Song does not explicitly disclose wherein each of the plurality of CI-aCAM circuits is coupled to a column of the plurality of columns of the memristor crossbar matrix.
In the analogous art of Neural network systems and crossbar implementations, Karunaratne teaches a current-output based DPE circuit wherein each column of the DPE is connected to an ADC array [Figs.5 and 4; "Matrix-vector multiplication may be computed by applying voltages along the rows of the crossbar and summing up currents (using Kirchhoff's current law) along the columns in the crossbar. Net output current is usually measured using analog to digital converter (ADC) for further computations" Col.9,ll.34-38];
It would have been obvious to one of ordinary skill in the art, having the teachings of Song and Karunaratne before him before the effective filing date of the claimed invention to modify the RAM-PEs disclosed by Song, to implement the crossbar array taught by Karunaratne, in order to implement efficiently compute dot products in O(1) time complexity by exploiting Kirchhoff’s circuit laws [Karunaratne: Col.14-16, see fig.5A/B]. The combination of Song and Karunaratne discloses wherein each of the plurality of aCAM circuits is coupled to a column of the plurality of columns of the memristor crossbar matrix.
However, Song and Karunaratne does not explicitly disclose:
a current-input analog content addressable memory (CI-aCAM) array circuit.
In the analogous art of analog Content Addressable Memory, Li teaches a current-input analog content addressable memory (CI-aCAM) array circuit [ Fig.2A, 205; "the analog values described herein are voltages, but is should be understood that these values can be implemented as other analog characteristics, such as current and the like." Col.6, ll.1-4].
It would have been obvious to one of ordinary skill in the art, to seek an implementation of the aCAM to handle the current output of the Crossbar array of Karunaratne and convert from analogue current into digital. Additionally, pHionics teaches various benefits of using current signals such as: current is more immune to noise, reduction in troubleshooting, low power usage, and easier to supply current in series for multiple devices [pHionics: p.2]. As such, it would have been obvious to one of ordinary skill in the art, having the teachings of Song, Karunaratne, Li, and pHionics before him before the effective filing date of the claimed invention to modify the CAM-PEs disclosed by Song, to implement the aCAM taught by Li, in order to use an aCAM capable of handling current and still implement the aCAM search function that leads to advantages in area and power savings [Li: Col.4,ll.27-55, and Col.6,ll.1-19]. The combination of Song, Karunaratne, Li, and pHionics discloses the additional limitations of the claim.
Regarding claim 14, Song, Karunaratne, Li, and pHionics disclose the invention substantially as claimed. See the discussion of claim 13 above.
Song discloses wherein each of the plurality of aCAM circuits comprises an input line coupled to a transistor [Fig.5, discloses a transistor S1].
However, Song and Karunaratne does not explicitly disclose: wherein each of the plurality of CI-aCAM circuits comprises an input line coupled to a transistor.
In the analogous art of analog Content Addressable Memory, Li teaches a current-input analog content addressable memory (CI-aCAM) array circuit, the CI-aCAM array circuit comprises an input line coupled to a transistor [Fig.2A, 205; "the analog values described herein are voltages, but is should be understood that these values can be implemented as other analog characteristics, such as current and the like." Col.6, ll.1-4; See figures 3, 7A, and 8A, wherein the input line is connected to a transistor i.e. DL and 315a].
It would have been obvious to one of ordinary skill in the art, to seek an implementation of the aCAM to handle the current output of the Crossbar array of Karunaratne and convert from analogue current into digital. Additionally, pHionics teaches various benefits of using current signals such as: current is more immune to noise, reduction in troubleshooting, low power usage, and easier to supply current in series for multiple devices [pHionics: p.2]. As such, it would have been obvious to one of ordinary skill in the art, having the teachings of Song, Karunaratne, Li, and pHionics before him before the effective filing date of the claimed invention to modify the CAM-PEs disclosed by Song, to implement the aCAM taught by Li, in order to use an aCAM capable of handling current and still implement the aCAM search function that leads to advantages in area and power savings [Li: Col.4,ll.27-55, and Col.6,ll.1-19]. The combination of Song, Karunaratne, Li, and pHionics discloses wherein each of the plurality of CI-aCAM circuits comprises an input line coupled to a transistor.
Regarding claim 15, Song, Karunaratne, Li, and pHionics disclose the invention substantially as claimed. See the discussion of claim 14 above.
Song discloses the DPE performs in-situ dot products for MVMs producing analog signals and aCAM array performs various operations on the analog signals [Fig.8, “data is transmitted… converted to analog form to execute MVMs in the RAM-PEs and CAM-PEs… using a single CAM-PE to process activation functions, max-pooling and AD conversion for 128 outputs of a RAM-PE…” Sec.IV.B]
However, Song does not explicitly disclose wherein each input line of the plurality of CI-aCAM circuits receives the collected current on each correspondingly coupled column of output lines of the memristor crossbar matrix.
In the analogous art of Neural network systems and crossbar implementations, Karunaratne teaches a current-output based DPE circuit outputting the collected current on each column of output lines of the memristor crossbar matrix [Figs.5 and 4; "Matrix-vector multiplication may be computed by applying voltages along the rows of the crossbar and summing up currents (using Kirchhoff's current law) along the columns in the crossbar. Net output current is usually measured using analog to digital converter (ADC) for further computations" Col.9,ll.34-38];
It would have been obvious to one of ordinary skill in the art, having the teachings of Song and Karunaratne before him before the effective filing date of the claimed invention to modify the RAM-PEs disclosed by Song, to implement the crossbar array taught by Karunaratne, in order to implement efficiently compute dot products in O(1) time complexity by exploiting Kirchhoff’s circuit laws [Karunaratne: Col.14-16, see fig.5A/B]. The combination of Song and Karunaratne discloses wherein each input line of the plurality of aCAM circuits receives the collected current on each correspondingly coupled column of output lines of the memristor crossbar matrix.
However, Song and Karunaratne does not explicitly disclose: wherein each input line of the plurality of CI-aCAM circuits receives the collected current on each correspondingly coupled column of output lines of the memristor crossbar matrix.
In the analogous art of analog Content Addressable Memory, Li teaches a current-input analog content addressable memory (CI-aCAM) array circuit, the CI-aCAM array circuit performing an aCAM search [ Fig.2A, 205; "An analog CAM… the memristor-based analog CAM can search analog voltages and store analog values." Col.4,ll.31-37; "the analog values described herein are voltages, but is should be understood that these values can be implemented as other analog characteristics, such as current and the like." Col.6, ll.1-4].
It would have been obvious to one of ordinary skill in the art, to seek an implementation of the aCAM to handle the current output of the Crossbar array of Karunaratne and convert from analogue current into digital. Additionally, pHionics teaches various benefits of using current signals such as: current is more immune to noise, reduction in troubleshooting, low power usage, and easier to supply current in series for multiple devices [pHionics: p.2]. As such, it would have been obvious to one of ordinary skill in the art, having the teachings of Song, Karunaratne, Li, and pHionics before him before the effective filing date of the claimed invention to modify the CAM-PEs disclosed by Song, to implement the aCAM taught by Li, in order to use an aCAM capable of handling current and still implement the aCAM search function that leads to advantages in area and power savings [Li: Col.4,ll.27-55, and Col.6,ll.1-19]. The combination of Song, Karunaratne, Li, and pHionics discloses wherein each input line of the plurality of CI-aCAM circuits receives the collected current on each correspondingly coupled column of output lines of the memristor crossbar matrix.
Regarding claim 16,
Song discloses:
A method comprising:
performing, by a circuit block, matrix multiplication [“RRAM crossbars perform MVMs in the analog domain based on the Ohm’s Law,” Sec.I; Fig.8, RAM-PE];
outputting, by the circuit block, analog signals conveying results of the matrix multiplication [Fig.8, RAM-PE MVM; “the convolution outputs are routed to the OpAmps” Sec.IV.B];
receiving, by an additional circuit block, the analog signals conveying the results of the matrix multiplication as input signals, wherein each of the input signals are associated with the results of the matrix multiplication; and outputting, by the additional circuit block, output signals corresponding to search operations performed based on the input signals associated with the results of the matrix multiplication [Fig.8, CAM-PE Activation Pooling AD conversion; “using a single CAM-PE to process activation functions, max-pooling and AD conversions for 128 outputs of a RAM-PE” Sec.IV.B “The new cell still supports the same functionality of analog value search as the original cell.” Sec.III.B].
However, Song does not explicitly disclose:
outputting, by the circuit block, current signals conveying results of the matrix multiplication; and receiving, by an additional circuit block, the current signals conveying the results of the matrix multiplication as input signals.
In the analogous art of Neural network systems and crossbar implementations, Karunaratne teaches outputting, by the circuit block, current signals conveying results of the matrix multiplication; [Figs.5 and 4; "Matrix-vector multiplication may be computed by applying voltages along the rows of the crossbar and summing up currents (using Kirchhoff's current law) along the columns in the crossbar. Net output current is usually measured using analog to digital converter (ADC) for further computations" Col.9,ll.34-38];
It would have been obvious to one of ordinary skill in the art, having the teachings of Song and Karunaratne before him before the effective filing date of the claimed invention to modify the RAM-PEs disclosed by Song, to implement the crossbar array taught by Karunaratne, in order to implement efficiently compute dot products in O(1) time complexity by exploiting Kirchhoff’s circuit laws [Karunaratne: Col.14-16, see fig.5A/B]. The combination of Song and Karunaratne discloses outputting, by the circuit block, current signals conveying results of the matrix multiplication;
However, Song and Karunaratne does not explicitly disclose: receiving, by an additional circuit block, the current signals conveying the results of the matrix multiplication as input signals.
In the analogous art of analog Content Addressable Memory, Li teaches receiving, by an additional circuit block, the current signals [ Fig.2A, 205; "An analog CAM… the memristor-based analog CAM can search analog voltages and store analog values." Col.4,ll.31-37; "the analog values described herein are voltages, but is should be understood that these values can be implemented as other analog characteristics, such as current and the like." Col.6, ll.1-4].
It would have been obvious to one of ordinary skill in the art, to seek an implementation of the aCAM to handle the current output of the Crossbar array of Karunaratne and convert from analogue current into digital. Additionally, pHionics teaches various benefits of using current signals such as: current is more immune to noise, reduction in troubleshooting, low power usage, and easier to supply current in series for multiple devices [pHionics: p.2]. As such, it would have been obvious to one of ordinary skill in the art, having the teachings of Song, Karunaratne, Li, and pHionics before him before the effective filing date of the claimed invention to modify the CAM-PEs disclosed by Song, to implement the aCAM taught by Li, in order to use an aCAM capable of handling current and still implement the aCAM search function that leads to advantages in area and power savings [Li: Col.4,ll.27-55, and Col.6,ll.1-19]. The combination of Song, Karunaratne, Li, and pHionics discloses receiving, by an additional circuit block, the current signals conveying the results of the matrix multiplication as input signals.
Regarding claim 17, Song, Karunaratne, Li, and pHionics disclose the invention substantially as claimed. See the discussion of claim 16 above.
Song discloses wherein the circuit block comprises a dot product engine (DPE) circuit [Fig.4/8 RAM-PE] and the additional circuit block comprises a analog-input analog content addressable memory (CI-aCAM) array circuit [Fig.4/8 CAM-PE].
However, Song does not disclose the additional circuit block comprises a current-input analog content addressable memory (CI-aCAM) array circuit.
In the analogous art of Neural network systems and crossbar implementations, Karunaratne teaches an current-output based DPE circuit [Figs.5 and 4; "Matrix-vector multiplication may be computed by applying voltages along the rows of the crossbar and summing up currents (using Kirchhoff's current law) along the columns in the crossbar. Net output current is usually measured using analog to digital converter (ADC) for further computations" Col.9,ll.34-38];
It would have been obvious to one of ordinary skill in the art, having the teachings of Song and Karunaratne before him before the effective filing date of the claimed invention to modify the RAM-PEs disclosed by Song, to implement the crossbar array taught by Karunaratne, in order to implement efficiently compute dot products in O(1) time complexity by exploiting Kirchhoff’s circuit laws [Karunaratne: Col.14-16, see fig.5A/B].
In the analogous art of analog Content Addressable Memory, Li teaches the additional circuit block comprises a current-input analog content addressable memory (CI-aCAM) array circuit [ Fig.2A, 205; "An analog CAM… the memristor-based analog CAM can search analog voltages and store analog values." Col.4,ll.31-37; "the analog values described herein are voltages, but is should be understood that these values can be implemented as other analog characteristics, such as current and the like." Col.6, ll.1-4].
It would have been obvious to one of ordinary skill in the art, to seek an implementation of the aCAM to handle the current output of the Crossbar array of Karunaratne and convert from analogue current into digital. Additionally, pHionics teaches various benefits of using current signals such as: current is more immune to noise, reduction in troubleshooting, low power usage, and easier to supply current in series for multiple devices [pHionics: p.2]. As such, it would have been obvious to one of ordinary skill in the art, having the teachings of Song, Karunaratne, Li, and pHionics before him before the effective filing date of the claimed invention to modify the CAM-PEs disclosed by Song, to implement the aCAM taught by Li, in order to use an aCAM capable of handling current and still implement the aCAM search function that leads to advantages in area and power savings [Li: Col.4,ll.27-55, and Col.6,ll.1-19]. The combination of Song, Karunaratne, Li, and pHionics discloses the additional limitations of the claim.
Regarding claim 18, Song, Karunaratne, Li, and pHionics disclose the invention substantially as claimed. See the discussion of claim 17 above.
Song discloses wherein the DPE circuit comprises a memristor crossbar matrix having columns ["The size of each RRAM array is 128 x 128" Sec.III.A; "resistive random-access memories (RRAMs)… RRAM crossbars perform MVMs in the analog domain based on the Ohm’s Law," Sec.I];
wherein the aCAM array comprises a plurality of aCAM circuits ["The size of each ARCAM array is 128 x 64" Col.III.A];
and the columns of the DPE output analogue values to be processed by the aCAM array in parallel for various functions [Fig.4, shows the RRAM crossbar and the connected mux array; ”Since the ARCAM array size is 128x64, 64 inputs can be searched in parallel” Sec.III.D; “using a single CAM-PE to process activation functions, max-pooling and AD conversion for 128 outputs of a RAM-PE…” Sec.IV.B]
However, Song does not explicitly disclose the CI-aCAM array circuit comprises a plurality of individual CI-aCAM circuits, each individual CI-aCAM circuit coupled to a corresponding one of the columns of the memristor crossbar matrix.
In the analogous art of Neural network systems and crossbar implementations, Karunaratne teaches:
wherein the DPE circuit comprises a memristor crossbar matrix of a plurality of resistive memory elements arranged in rows and columns [Fig.2,5; See col.7-8]
an ADCs array [Fig.2B, shows an ADC per current column and 5A shows the ADC array].
a current-output based DPE circuit wherein each column of the DPE is connected to an ADC array [Figs.5 and 4; "Matrix-vector multiplication may be computed by applying voltages along the rows of the crossbar and summing up currents (using Kirchhoff's current law) along the columns in the crossbar. Net output current is usually measured using analog to digital converter (ADC) for further computations" Col.9,ll.34-38];
It would have been obvious to one of ordinary skill in the art, having the teachings of Song and Karunaratne before him before the effective filing date of the claimed invention to modify the RAM-PEs disclosed by Song, to implement the crossbar array taught by Karunaratne, in order to implement efficiently compute dot products in O(1) time complexity by exploiting Kirchhoff’s circuit laws [Karunaratne: Col.14-16, see fig.5A/B]. The combination of Song and Karunaratne discloses each individual aCAM circuit coupled to a corresponding one of the columns of the memristor crossbar matrix
However, Song and Karunaratne does not explicitly disclose the CI-aCAM array circuit comprises a plurality of individual CI-aCAM circuits, each individual CI-aCAM circuit coupled to a corresponding one of the columns of the memristor crossbar matrix.
In the analogous art of analog Content Addressable Memory, Li teaches a current-input analog content addressable memory (CI-aCAM) array [Fig.2A, 205a-d; "An analog CAM… the memristor-based analog CAM can search analog voltages and store analog values." Col.4,ll.31-37; "the analog values described herein are voltages, but is should be understood that these values can be implemented as other analog characteristics, such as current and the like." Col.6, ll.1-4].
It would have been obvious to one of ordinary skill in the art, to seek an implementation of the aCAM to handle the current output of the Crossbar array of Karunaratne and convert from analogue current into digital. Additionally, pHionics teaches various benefits of using current signals such as: current is more immune to noise, reduction in troubleshooting, low power usage, and easier to supply current in series for multiple devices [pHionics: p.2]. As such, it would have been obvious to one of ordinary skill in the art, having the teachings of Song, Karunaratne, Li, and pHionics before him before the effective filing date of the claimed invention to modify the CAM-PEs disclosed by Song, to implement the aCAM taught by Li, in order to use an aCAM capable of handling current and still implement the aCAM search function that leads to advantages in area and power savings [Li: Col.4,ll.27-55, and Col.6,ll.1-19]. The combination of Song, Karunaratne, Li, and pHionics discloses the CI-aCAM array circuit comprises a plurality of individual CI-aCAM circuits, each individual CI-aCAM circuit coupled to a corresponding one of the columns of the memristor crossbar matrix.
Regarding claim 19, Song, Karunaratne, Li, and pHionics disclose the invention substantially as claimed. See the discussion of claim 18 above.
Song discloses wherein the plurality of resistive memory elements determines matrix multiplication values, and further wherein the memristor crossbar matrix comprises a plurality of columns of output lines to collect all analogue output from the resistive memory elements, the collected analogue values on each column equaling a corresponding matrix multiplication value [Fig.4 and 8; "RRAM crossbars perform MVMs in the analog domain based on the Ohm’s Law," Sec.I].
and aCAM array performs various operations on the analog signals [Fig.8, “data is transmitted… converted to analog form to execute MVMs in the RAM-PEs and CAM-PEs… using a single CAM-PE to process activation functions, max-pooling and AD conversion for 128 outputs of a RAM-PE…” Sec.IV.B]
However, Song does not explicitly disclose further outputting, by each column of the memristor crossbar matrix, a current signal conveying an element associated with the results of matrix multiplication performed by the DPE circuit; receiving, by each of the plurality of individual CI-aCAMs circuits, the current signal from the corresponding column of the memristor crossbar matrix as an input signal, wherein each input signal corresponds to the element associated with the results of the matrix multiplication from the corresponding column of the memristor crossbar matrix.
In the analogous art of Neural network systems and crossbar implementations, Karunaratne teaches wherein the memristor crossbar matrix comprises a plurality of columns of output lines to collect all currents output from the resistive memory elements, the collected currents on each column equaling a corresponding matrix multiplication value [Figs.5 and 4; "Matrix-vector multiplication may be computed by applying voltages along the rows of the crossbar and summing up currents (using Kirchhoff's current law) along the columns in the crossbar. Net output current is usually measured using analog to digital converter (ADC) for further computations" Col.9,ll.34-38];
It would have been obvious to one of ordinary skill in the art, having the teachings of Song and Karunaratne before him before the effective filing date of the claimed invention to modify the RAM-PEs disclosed by Song, to implement the crossbar array taught by Karunaratne, in order to implement efficiently compute dot products in O(1) time complexity by exploiting Kirchhoff’s circuit laws [Karunaratne: Col.14-16, see fig.5A/B]. The combination of Song and Karunaratne discloses outputting, by each column of the memristor crossbar matrix, a current signal conveying an element associated with the results of matrix multiplication performed by the DPE circuit; and receiving, by each of the plurality of individual aCAMs circuits, the current signal from the corresponding column of the memristor crossbar matrix as an input signal, wherein each input signal corresponds to the element associated with the results of the matrix multiplication from the corresponding column of the memristor crossbar matrix.
However, Song and Karunaratne does not explicitly disclose: receiving, by each of the plurality of individual CI-aCAMs circuits, the current signal from the corresponding column of the memristor crossbar matrix as an input signal, wherein each input signal corresponds to the element associated with the results of the matrix multiplication from the corresponding column of the memristor crossbar matrix.
In the analogous art of analog Content Addressable Memory, Li teaches a current-input analog content addressable memory (CI-aCAM) array circuit, the CI-aCAM array circuit performing an aCAM search [ Fig.2A, 205; "An analog CAM… the memristor-based analog CAM can search analog voltages and store analog values." Col.4,ll.31-37; "the analog values described herein are voltages, but is should be understood that these values can be implemented as other analog characteristics, such as current and the like." Col.6, ll.1-4].
It would have been obvious to one of ordinary skill in the art, to seek an implementation of the aCAM to handle the current output of the Crossbar array of Karunaratne and convert from analogue current into digital. Additionally, pHionics teaches various benefits of using current signals such as: current is more immune to noise, reduction in troubleshooting, low power usage, and easier to supply current in series for multiple devices [pHionics: p.2]. As such, it would have been obvious to one of ordinary skill in the art, having the teachings of Song, Karunaratne, Li, and pHionics before him before the effective filing date of the claimed invention to modify the CAM-PEs disclosed by Song, to implement the aCAM taught by Li, in order to use an aCAM capable of handling current and still implement the aCAM search function that leads to advantages in area and power savings [Li: Col.4,ll.27-55, and Col.6,ll.1-19]. The combination of Song, Karunaratne, Li, and pHionics discloses receiving, by each of the plurality of individual CI-aCAMs circuits, the current signal from the corresponding column of the memristor crossbar matrix as an input signal, wherein each input signal corresponds to the element associated with the results of the matrix multiplication from the corresponding column of the memristor crossbar matrix.
Regarding claim 20, Song, Karunaratne, Li, and pHionics disclose the invention substantially as claimed. See the discussion of claim 19 above.
Song discloses wherein outputting the output signals comprises: performing, by each of the plurality of individual aCAMs circuits, a search operation on the corresponding input signal received; and outputting, by each of the plurality of individual aCAMs circuits, an output signal conveying a match from the search operation based on the corresponding element associated with the results of the matrix multiplication performed by the DPE circuit [“The fundamental idea Is to utilize the analog search functionality of ARCAMs and use the search results to control the data paths…. Since the ARCAM array size is 128x64, 64 inputs can be searched in parallel” Sec.III.D; “using a single CAM-PE to process activation functions, max-pooling and AD conversion for 128 outputs of a RAM-PE…” Sec.IV.B; “Only when VDL is within a certain range indirectly defined by the two RRAMs, the ML voltage remains high (i.e., a “match” result).” Sec.II.B].
Karunaratne teaches a current-output DPE [See above claims and Figs.5 and 4; Col.9,ll.34-38].
However, Song and Karunaratne does not explicitly disclose wherein outputting the output signals comprises: performing, by each of the plurality of individual CI-aCAMs circuits, a search operation on the corresponding input signal received; and outputting, by each of the plurality of individual CI-aCAMs circuits, an output signal conveying a match from the search operation.
In the analogous art of analog Content Addressable Memory, Li teaches a current-input analog content addressable memory (CI-aCAM) array circuit, the CI-aCAM array circuit performing an aCAM search and outputting a match signal [Fig.2A, 205; "An analog CAM… the memristor-based analog CAM can search analog voltages and store analog values." Col.4,ll.31-37; "the analog values described herein are voltages, but is should be understood that these values can be implemented as other analog characteristics, such as current and the like." Col.6, ll.1-4; “the disclosed analog CAM can match all values between an "upper bound" and a "lower bound" of variance, or within a variance range” Col.4,ll.56-59]
It would have been obvious to one of ordinary skill in the art, to seek an implementation of the aCAM to handle the current output of the Crossbar array of Karunaratne and convert from analogue current into digital. Additionally, pHionics teaches various benefits of using current signals such as: current is more immune to noise, reduction in troubleshooting, low power usage, and easier to supply current in series for multiple devices [pHionics: p.2]. As such, it would have been obvious to one of ordinary skill in the art, having the teachings of Song, Karunaratne, Li, and pHionics before him before the effective filing date of the claimed invention to modify the CAM-PEs disclosed by Song, to implement the aCAM taught by Li, in order to use an aCAM capable of handling current and still implement the aCAM search function that leads to advantages in area and power savings [Li: Col.4,ll.27-55, and Col.6,ll.1-19]. The combination of Song, Karunaratne, Li, and pHionics discloses the additional limitations of the claim.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Li et al. (US 10,930,348 B1) discloses a current-output DPE, see fig.2 and 6A.
Shafiee et al. (NPL: “ISAAC: A Convolutional Neural Network Accelerator with IN-Situ Analog Arithmetic in Crossbars”) discloses a current-output DPE and an pipeline, see fig.1 and 4.
Tseng et al. (US 11,657,876 B2) discloses analog CAMs, see fig.1-3 and 12.
Choi et al. (NPL: “Content Addressable Memory Based Binarized Neural Network Accelerator Using Time-Domain Signal Processing”) discloses CAM operations replacing BNN operations, see fig.1 and 3.
Imani et al. (NPL: “RAPIDNN: In-Memory Deep Neural Network Acceleration Framework”) discloses a relevant Crossbar into CAM architecture, see fig,7.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Kenny K. Bui whose telephone number is (571)270-0604. The examiner can normally be reached 8:00 am to 3:00 pm on Monday, 8:00 am to 4:00 pm on Tuesday to Friday ET.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Andrew T Caldwell can be reached at (571)272-3702. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/KENNY K. BUI/Patent Examiner, Art Unit 2182 (571)270-0604
/ANDREW CALDWELL/Supervisory Patent Examiner, Art Unit 2182