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 .
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.
Claims 6, 9, 19 are 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 6 recites the limitation "memory" in line 3. There is insufficient antecedent basis for this limitation in the claim. Further, it is unclear if “memory” is meant to refer to map memory components, kernel memory components, or other.
Claim 9 recites the limitation "memory" in line 2. There is insufficient antecedent basis for this limitation in the claim. Further, it is unclear if “memory” is meant to refer to map memory components, kernel memory components, or other.
Claim 19 recites the limitation "load data" in line 3. There is insufficient antecedent basis for this limitation in the claim.
Claim Construction
Regarding claim 1, the preamble is given patentable weight. Claim 12 contains the limitation “the device” in the body, which is referring to the limitations as recited in the preamble of claim 1. A skilled person in the art reading the claims would consider the claim in view of the body and preamble, and identify them limited to the technological environment of the device. The body of the claim depends on the preamble for completeness, and gives life, meaning, and vitality to this claim. Therefore, the preamble of claim 1 should be afforded patentable weight.
Claim Rejections - 35 USC § 103
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.
Claims 1-5, 9-10, 17-20 are rejected under 35 U.S.C. 103 as being unpatentable over US 10872038 B1 Nair et al. (hereinafter “Nair”) in view of US 20190042252 A1 Kaul et al. (hereinafter “Kaul”).
Regarding claim 1, Nair teaches a device (Fig. 1 “100” co. 8 ln. 3-6), comprising:
a plurality of matrix-matrix (MM) components (Fig. 1 “101” co. 8 ln. 3-9; Fig. 2 “200” co. 9 ln. 48-53, 67; co. 10 ln. 1-15) that each include:
a plurality of map memory components (Fig. 1 “103” co. 8 ln. 6-9; Fig. 2 “203” co. 9 ln. 50-53) each configured to store (co. 8 ln. 42-46) map data (Fig. 7B “703” co. 21 ln. 42-47; co. 8 ln. 1-2),
a plurality of kernel memory components (Fig. 1 “105” co. 8 ln. 6-9; Fig. 2 “205” co. 9 ln. 50-53) each configured to store (co. 8 ln. 42-46) kernel data (Fig. 7A “701” co. 21 ln. 42-47; co. 8 ln. 1-2), and
a plurality of matrix-vector (MV) components (Fig. 1 “107” co. 8 ln. 9-10; Fig. 2 “201” co. 9 ln. 50-56) that each include a plurality of vector-vector (VV) components (Fig. 1 “111”, “121”, “131”, “141” co. 8 ln. 9-10, 17-21; Fig. 2 “211”, “221” co. 9 ln. 53-58; co. 10 ln. 5-7) that are each configured to generate a VV output (Fig. 1 output of “107” co. 8 ln. 27-30; Fig. 2 output of “201” co. 9 ln. 62-67) based on an input precision mode, an output precision mode, and an accumulation of products that is based on the map data and the kernel data (co. 7 ln. 60-67, co. 8 ln. 1-2; co. 9 ln. 10-18; co. 12, ln. 20-34),
wherein the input precision mode indicates an input word length for data input to a VV component (Fig. 1 inputs of “107” from “103” and “105” co. 8 ln. 39-42; Fig. 2 inputs of “201” from “203” and “205” co. 10 ln. 16-50),
wherein the output precision mode indicates an output word length for data output from the VV component (Fig. 1 output from “107” co. 8 ln. 28-38; Fig. 2 output from “201” co. 9 ln. 58-67), and
wherein each VV component, of the plurality of VV components included in a corresponding MV component (Fig. 1 “111”, “121”, “131”, “141” co. 8 ln. 9-10, 17-21; Fig. 2 “211”, “221” co. 9 ln. 53-58; co. 10 ln. 5-7), is coupled with each map memory component, of the plurality of map memory components (Fig. 1 output of “103” to “107” co. 8 ln. 7-18; Fig. 2 output of “203” to “201” co. 10 ln. 16-24), and is coupled with a single kernel memory component of the plurality of kernel memory components (Fig. 1 output of “105” to “107” co. 8 ln. 39-46; Fig. 2 output of “205” to “201” co. 9 ln. 59-67); and
a data distribution component (Fig. 1 “161” co. 8 ln. 3-6, 46-51) coupled with the plurality of MM components (Fig. 1 output of “161” to “107” through “103” and “105” co. 8 ln. 46-56) and configured to load the map data into the plurality of map memory components (co. 8 ln. 46-56).
Nair discloses the claimed invention except for a plurality of matrix-matrix (MM) components, a plurality of map memory components, a plurality of kernel memory components, and a plurality of matrix-vector (MV) components.
It would have been obvious to one having ordinary skill in the art at the time the invention was made to make a plurality of: matrix-matrix (MM) components, map memory components, kernel memory components, and matrix-vector (MV) components, since it has been held that mere duplication of the essential working parts of a device involves only routine skill in the art. St. Regis Paper Co. v. Bemis Co., 193 USPQ 8.
Nair is silent with disclosing based on an input precision mode, an output precision mode, wherein the input precision mode indicates an input word length, and wherein the output precision mode indicates an output word length.
Kaul discloses based on an input precision mode (Fig. 2A mode1b at “234”, mode4b at “236”, mode8b at “238” [0026]; Fig. 3A mode1b at “334”, mode4b OR mode8b at “336”, “338” [0029], [0032]; Fig. 4A mode1b [0032]), an output precision mode (Fig. 2B mode1b at “244” [0027]; Fig. 3B mode1b mux on lefthand side and mode1b, mode8b at “316” [0030-0031]; Fig. 4B mode [0032]), wherein the input precision mode indicates an input word length ([0024-0025], [0026] 1/2/4/8-bit modes, [0029-0030] as one example with reference to Fig. 3A, [0043]), and wherein the output precision mode indicates an output word length ([0024-0025], [0026] 1/2/4/8-bit modes, [0031] as one example with reference to Fig. 3B, [0043]).
It would have been obvious to one of ordinary skill in the art before the effective
filing date to modify Nair’s artificial intelligence circuitry with Kaul’s input and output precision modes features because they are in the claimed invention’s same field of endeavor of machine learning accelerator architecture ([0001]). Modifying with Kaul’s precision modes would be beneficial as doing so provides greater support for different bit width precisions to be selected and computed ([0029]), ranging from 1-bit, 2-bit, and 4-bit modes. Therefore, it would have been obvious to one of ordinary skill in the art to configure Nair’s artificial intelligence circuitry with Kaul’s precision modes features as making the modification would lead to more configurability of precision modes by operating in the designated mode and utilizing computing components appropriately ([0034]).
Regarding claim 2, the teachings addressed in the claim 1 analysis and rejection
are incorporated.
Nair is silent with disclosing an input precision mode port configured to receive a value that indicates the input precision mode; and an output precision mode port configured to receive a value that indicates the output precision mode.
Kaul discloses an input precision mode port (Fig. 2A “234”, “236”, “238” [0026]; Fig. 3A “334”, “336”, “338” [0029], [0032]; Fig. 4A mode1b multiplexer [0032]) configured to receive a value that indicates the input precision mode (Fig. 2A mode1b at “234”, mode4b at “236”, mode8b at “238” [0026]; Fig. 3A mode1b at “334”, mode4b OR mode8b at “336”, “338” [0029], [0032]; Fig. 4A mode1b [0032]); and an output precision mode port (Fig. 2B “244” [0027]; Fig. 3B mode1b mux on lefthand side, “316” [0030-0031]; Fig. 4B multiplexer [0032]) configured to receive a value that indicates the output precision mode (Fig. 2B mode1b at “244” [0027]; Fig. 3B mode1b mux on lefthand side and mode1b, mode8b at “316” [0030-0031]; Fig. 4B mode [0032]).
The motivation to combine provided with respect to claim 1 similarly applies.
Regarding claim 3, the teachings addressed in the claim 2 analysis and rejection
are incorporated.
Nair is silent with disclosing wherein the input precision mode port is a 1-bit port and the output precision mode port is a 1-bit port.
Kaul discloses wherein the input precision mode port is a 1-bit port (multiplexer selection signals of Fig. 2A mode1b at “234”, mode4b at “236”, mode8b at “238” [0026]; Fig. 3A mode1b at “334”, mode4b OR mode8b at “336”, “338” [0029], [0032]; Fig. 4A mode1b [0032]) and the output precision mode port is a 1-bit port (multiplexer selection signals of Fig. 2B mode1b at “244” [0027]; Fig. 3B mode1b mux on lefthand side and mode1b, mode8b at “316” [0030-0031]; Fig. 4B mode [0032]).
The motivation to combine provided with respect to claim 1 similarly applies.
Regarding claim 4, the teachings addressed in the claim 1 analysis and rejection
are incorporated, and Nair teaches the device of claim 1, wherein
each kernel memory component (Fig. 1 “105” co. 8 ln. 6-9; Fig. 2 “205” co. 9 ln. 50-53), of the plurality of kernel memory components, is coupled with a single VV component (Fig. 1 “111”, “121”, “131”, “141” co. 8 ln. 9-10, 17-21; Fig. 2 “211”, “221” co. 9 ln. 53-58; co. 10 ln. 5-7) per each MV component of the plurality of MV components (Fig. 1 “107” co. 8 ln. 9-10; Fig. 2 “201” co. 9 ln. 50-56).
Nair discloses the claimed invention except for a plurality of kernel memory components and a plurality of matrix-vector MV components.
It would have been obvious to one having ordinary skill in the art at the time the invention was made to make a plurality of: kernel memory components and matrix-vector MV components, since it has been held that mere duplication of the essential working parts of a device involves only routine skill in the art. St. Regis Paper Co. v. Bemis Co., 193 USPQ 8.
Regarding claim 5, the teachings addressed in the claim 1 analysis and rejection
are incorporated, and Nair teaches the device of claim 1, further comprising
a plurality of data input ports (Fig. 1 “103” connection to “161”, “105” connection to “161”; co. 8 ln. 39-64; Fig. 2 “203” incoming arrow, “205” incoming arrow; co. 9 ln. 50-67) configured to receive a corresponding plurality of input values (co. 8 ln. 39-64; co. 9 ln. 50-67); and
wherein the data distribution component (Fig. 1 “161” co. 8 ln. 3-6, 46-51) is configured to load a subset of input values, of the corresponding plurality of input values (co. 8 ln. 51-56), into the plurality of map memory components as the map data (Fig. 1 “103” co. 8 ln. 6-9; Fig. 2 “203” co. 9 ln. 50-53).
Regarding claim 9, the teachings addressed in the claim 1 analysis and rejection
are incorporated, and Nair teaches the device of claim 1, further comprising
an output port (Fig. 1 output from “107” to “151” co. 8 ln. 28-38; Fig. 2 output from “201” to “251” co. 9 ln. 62-67) configured to output processed map data to memory (Fig. 1 “151” co. 8 ln. 28-38; Fig. 2 “251” co. 10 ln. 1-5) that is separate from the plurality of MM components (Fig. 1 “101” co. 8 ln. 3-9; Fig. 2 “200” co. 9 ln. 48-53, 67; co. 10 ln. 1-15) and that is separate from the data distribution component (Fig. 1 “151” is included in “101” is not included in “161”; Fig. 2 “251” is included in “200”).
Nair discloses the claimed invention except for the plurality of MM components.
It would have been obvious to one having ordinary skill in the art at the time the invention was made to make a plurality of: MM components, since it has been held that mere duplication of the essential working parts of a device involves only routine skill in the art. St. Regis Paper Co. v. Bemis Co., 193 USPQ 8.
Further, Nair discloses the claimed invention except for memory separate from the plurality of MM components. It would have been obvious to one having ordinary skill in the art at the time the invention was made to make the memory separable, since it has been held that constructing a formerly integral structure in various elements involves only routine skill in the art. Nerwin v. Erlichman, 168 USPQ 177, 179.
Regarding claim 10, the teachings addressed in the claim 1 analysis and rejection
are incorporated, and Nair teaches the device of claim 1, wherein
each MM component, of the plurality of MM components (Fig. 1 “101” co. 8 ln. 3-9; Fig. 2 “200” co. 9 ln. 48-53, 67; co. 10 ln. 1-15), further comprises a map data bus (Fig. 1 arrows connecting “103” to “107”; Fig. 2, arrows connecting “203” to “201”; co. 8 ln. 64-67, co. 9 ln. 1-3) configured to connect every VV component (Fig. 1 “111”, “121”, “131”, “141” co. 8 ln. 9-10, 17-21; Fig. 2 “211”, “221” co. 9 ln. 53-58; co. 10 ln. 5-7), included in that MM component, with every map memory component included in that MM component (Fig. 1 “111”, “121”, “131”, “141” included in “107” connected to “103” co. 8 ln. 9-10, 17-21; Fig. 2 “211”, “221” included in “201” connected to “203” co. 9 ln. 53-58; co. 10 ln. 5-7).
Nair discloses the claimed invention except for a plurality of MM components.
It would have been obvious to one having ordinary skill in the art at the time the invention was made to make a plurality of: MM components, since it has been held that mere duplication of the essential working parts of a device involves only routine skill in the art. St. Regis Paper Co. v. Bemis Co., 193 USPQ 8.
Claim 17 is directed to an apparatus that recites similar limitations to those recited in claim 1. The claim 1 analysis similarly applies. Additionally, claim 17 recites a system that includes a memory and a processor; and provide processed map data to at least one of the memory of the system. Nair is silent with disclosing these limitations.
However, Kaul discloses a system (Fig. 1 “100” [0024]) that includes a memory (Fig. 1 “124” [0024]) and a processor (Fig. 1 “160” [0024]); and provide processed map data to at least one of the memory of the system ([0024] dot product instruction).
It would have been obvious to one of ordinary skill in the art before the effective
filing date to modify Nair’s artificial intelligence circuitry with Kaul’s processor and memory circuitry because they are in the claimed invention’s same field of endeavor of machine learning accelerator architecture ([0001]). Modifying with Kaul’s processor and memory circuitry would have been obvious to try with predictable results as doing so provides greater support for data and instructions management ([0024]). Therefore, it would have been obvious to one of ordinary skill in the art to configure Nair’s artificial intelligence circuitry with Kaul’s processor and memory features as making the modification would lead to predictable results, programs stored in the memory and executed by the processor ([0075-0079]).
Claim 18 recites similar limitations to those recited in claim 1. The claim 1 analysis similarly applies.
Claim 19 recites similar limitations to those recited in claim 1. The claim 1 analysis similarly applies. Additionally, claim 19 recites receive load data from the memory of the system and load the load data. Nair is silent with disclosing these limitations.
However, Kaul discloses receive load data from the memory (Fig. 1 “124” [0024]) of the system (Fig. 1 “100” [0024]) and load the load data ([0024] dot product instruction indicating operands and corresponding addresses for processing).
The motivation to combine provided with respect to claim 17 similarly applies.
Claim 20 recites similar limitations to those recited in claim 2. The claim 2 analysis similarly applies.
Claims 6-8 are rejected under 35 U.S.C. 103 as being unpatentable over Nair in view of Kaul as applied to claim 1 above, and further in view of US 20180046900 A1 Dally et al. (hereinafter “Dally”) in view of US 20200134417 A1 Mohapatra et al. (hereinafter “Mohapatra”).
Regarding claim 6, the teachings addressed in the claim 5 analysis and rejection
are incorporated, and Nair teaches the device of claim 5, wherein
the plurality of data input ports (see claim 5 mapping) includes at least one of:
a load port configured to receive map data (Fig. 7B “703” co. 21 ln. 42-47; co. 8 ln. 1-2) from memory that is separate from the plurality of MM components (Fig. 1 “101” co. 8 ln. 3-9; Fig. 2 “200” co. 9 ln. 48-53, 67; co. 10 ln. 1-15),
a max pool port configured to receive max pool data generated based on a max pooling operation, or
one or more MM data input ports (Fig. 1 arrows to “103” and “105” co. 8 ln. 3-21; Fig. 2 arrows to “203” and “205” co. 10 ln. 14-50) configured to receive MM data based on output generated by an MM component of the plurality of MM components (Fig. 1 “101” co. 8 ln. 3-9; Fig. 2 “200” co. 9 ln. 48-53, 67; co. 10 ln. 1-15).
Nair discloses the claimed invention except for a plurality of MM components.
It would have been obvious to one having ordinary skill in the art at the time the invention was made to make a plurality of: MM components, since it has been held that mere duplication of the essential working parts of a device involves only routine skill in the art. St. Regis Paper Co. v. Bemis Co., 193 USPQ 8.
Further, Nair is silent with disclosing a load port configured to receive from memory that is separate from the plurality of MM components; a max pool port configured to receive max pool data generated based on a max pooling operation, or one or more MM data input ports configured to receive MM data based on output generated by an MM component.
Kaul discloses a load port (Fig. 1 double arrow from “122” to “116” [0024]) configured to receive from memory that is separate from (Fig. 1 “124” [0024]) the plurality of MM components.
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify Nair’s artificial intelligence circuitry with Kaul’s load port and separate memory features because they are in the claimed invention’s same field of endeavor of machine learning accelerator architecture ([0001]). Modifying with Kaul’s load port and separate memory would be beneficial as doing so provides dedicated connectivity to load information and provides the option to retire instructions and write back results ([0024]). Therefore, it would have been obvious to one of ordinary skill in the art to configure Nair’s artificial intelligence circuitry with Kaul’s load port and separate memory features as making the modification would lead to more configurability of loading data and effectively disposing instructions.
Kaul is silent with disclosing a max pool port configured to receive max pool data generated based on a max pooling operation, or one or more MM data input ports configured to receive MM data based on output generated by an MM component.
Dally discloses or one or more MM data input ports configured to receive MM data based on output generated by (Fig. 2A central “210” interconnections between border of “210” [0044], [0070]) an MM component.
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify Nair in view of Kaul’s modified artificial intelligence circuitry with Dally’s receive features because they are in the claimed invention’s same field of endeavor of neural network accelerator architecture ([0002]). Modifying with Dally’s receiving feature would be beneficial as doing so provides more support for connectivity to send data between components ([0044]), and would result in reducing unnecessary reads and writes from memory as data can now be more easily shared between neighboring components ([0070]). Therefore, it would have been obvious to one of ordinary skill in the art to configure Nair in view of Kaul’s modified artificial intelligence circuitry with Dally’s receive features as making the modification would lead to more configurability of sharing data.
Dally is silent with disclosing a max pool port configured to receive max pool data generated based on a max pooling operation.
Mohapatra discloses a max pool port (Fig. 6 ‘Maxpool’ arrow [0058]) configured to receive max pool data generated based on a max pooling operation (Fig. 1 “160” [0040]).
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify Nair in view of Kaul in view of Dally’s modified artificial intelligence circuitry with Mohapatra’s max pool operation because they are in the claimed invention’s same field of endeavor of neural network accelerator architecture ([0001]). Mohapatra discloses that max pool operations are a common technique used in neural networks ([0070]). Modifying with Mohapatra’s max pool operation would have been obvious as the operation is a known technique in the art, and would also be beneficial since performing max pool operations prunes the size of feature maps ([0070]).
Regarding claim 7, the teachings addressed in the claim 1 analysis and rejection are incorporated, and Nair teaches the device of claim 1, further comprising
a coordination mode port configured to receive a value that indicates whether outputs from different MM components, of the plurality of MM components (Fig. 1 “101” co. 8 ln. 3-9; Fig. 2 “200” co. 9 ln. 48-53, 67; co. 10 ln. 1-15), are to be combined.
Nair discloses the claimed invention except for a plurality of MM components.
It would have been obvious to one having ordinary skill in the art at the time the invention was made to make a plurality of: MM components, since it has been held that mere duplication of the essential working parts of a device involves only routine skill in the art. St. Regis Paper Co. v. Bemis Co., 193 USPQ 8.
Nair is silent with disclosing a coordination mode port configured to receive a value that indicates whether outputs from different MM components, of the plurality of MM components, are to be combined.
Kaul is silent with disclosing a coordination mode port configured to receive a value that indicates whether outputs from different MM components, of the plurality of MM components are to be combined.
Dally discloses a coordination mode port (Fig. 3C “366” in the scatter accumulator which includes “335” and “368”, [0097]) configured to receive a value that indicates whether outputs from different MM components, of the plurality of MM components are to be combined ([0050] scatter accumulator; Fig. 3C output signals from “365” inputted to “366” [0097-0099]).
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify Nair in view of Kaul’s modified artificial intelligence circuitry with Dally’s coordination mode features because they are in the claimed invention’s same field of endeavor of neural network accelerator architecture ([0002]). Modifying with Dally’s coordination mode feature would be beneficial as doing so provides more support for connectivity to send data between components ([0050]). Therefore, it would have been obvious to one of ordinary skill in the art to configure Nair in view of Kaul’s modified artificial intelligence circuitry with Dally’s receive features as making the modification would lead to more configurability of sharing data.
Regarding claim 8, the teachings addressed in the claim 7 analysis and rejection are incorporated, and Nair in view of Kaul in view of Dally teaches the device of claim 7, wherein the coordination mode port (see claim 7 mapping).
Dally further teaches the coordination mode port is a 1-bit port (Fig. 3C gr[i][j] [0099]).
The motivation to combine provided with respect to claim 7 similarly applies.
Claim 11 is rejected under 35 U.S.C. 103 as being unpatentable over Nair in view of Kaul as applied to claim 1 above, and further in view of US 20210124794 A1 Nair et al. (hereinafter “Nair’794”).
Regarding claim 11, the teachings addressed in the claim 1 analysis and rejection are incorporated, and Nair teaches the device of claim 1, wherein
each MM component, of the plurality of MM components (Fig. 1 “101” co. 8 ln. 3-9; Fig. 2 “200” co. 9 ln. 48-53, 67; co. 10 ln. 1-15), further comprises a plurality of kernel data buses (Fig. 1 arrows connecting “105” to “107”; Fig. 2, arrows connecting “205” to “201”; co. 8 ln. 64-67, co. 9 ln. 1-3) each configured to connect an individual VV component (Fig. 1 “111”, “121”, “131”, “141” co. 8 ln. 9-10, 17-21; Fig. 2 “211”, “221” co. 9 ln. 53-58; co. 10 ln. 5-7), included in a particular MV component of the plurality of MV components (Fig. 1 “107” co. 8 ln. 9-10; Fig. 2 “201” co. 9 ln. 50-56), with a corresponding individual kernel memory component, of the plurality of kernel memory components, such that each individual VV component, included in the particular MV component, is connected to a different kernel memory component of the plurality of kernel memory components (Fig. 1 “105” co. 8 ln. 6-9; Fig. 2 “205” co. 9 ln. 50-53).
Nair discloses the claimed invention except for a plurality of MM components and a plurality of MV components.
It would have been obvious to one having ordinary skill in the art at the time the invention was made to make a plurality of: MM components and MV components, since it has been held that mere duplication of the essential working parts of a device involves only routine skill in the art. St. Regis Paper Co. v. Bemis Co., 193 USPQ 8.
Nair is silent with disclosing a corresponding individual kernel memory component where each individual VV component is connected to a different kernel memory component.
Further, Kaul is silent with disclosing a corresponding individual kernel memory component where each individual VV component is connected to a different kernel memory component.
Nair’794 teaches a corresponding individual kernel memory component (Fig. 2A “207” “209” [0028]) where each individual VV component is connected to a different (Fig. 2A “207” connected to “211” and “209” connected to “221” [0029]) kernel memory component.
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify Nair in view of Kaul’s modified artificial intelligence circuitry with Nair’794 corresponding connection features because they are in the claimed invention’s same field of endeavor of artificial intelligence accelerator architecture ([0022]). Modifying with Nair’794’s corresponding connection feature would be beneficial as doing so provides more support for parallelization of components and computations ([0029]). Therefore, it would have been obvious to one of ordinary skill in the art to configure Nair in view of Kaul’s modified artificial intelligence circuitry with Nair’794’s corresponding connection features as making the modification would lead to more configurability of parallelization of operations and thus yield in more efficient computations.
Claim 12 is rejected under 35 U.S.C. 103 as being unpatentable over Nair in view of Kaul as applied to claim 1 above, and further in view of Vitez, Marko. “Micron AI Solutions”. Partner talk: Micron DLA. CERN openlab Technical Workshop. Jan 22-23, 2020. (hereinafter “Vitez”).
Regarding claim 12, the teachings addressed in the claim 1 analysis and rejection are incorporated, and Nair teaches the device of claim 1, wherein
the device includes four MM components, four map memory components per MM component, four kernel memory components per MM component, four MV components per MM component, and four VV components per MV component (see claim 1 mapping).
While Nair teaches the particular components of the device, they are silent with disclosing the particular quantities of each component based on the other components.
Kaul is silent with disclosing the particular quantities of each component based on the other components.
Vitez discloses four MM components (Pg. 24 4 MM), four map memory components per MM component (Pg. 22-23 Maps Bank 0-3), four kernel memory components per MM component (Pg. 22-23 Kernel Buffer [four square copies and line per square]), four MV components per MM component (Pg. 22-23 combination of VV Unit [four square copies and line per square] and Kernel Buffer [four square copies and line per square] as one MV unit is illustrated in Pg. 21), and four VV components per MV component (Pg. 21 four VV Unit).
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify Nair in view of Kaul’s modified artificial intelligence circuitry with Vitez’s particular quantities features because they are in the claimed invention’s same field of endeavor of artificial intelligence accelerator architecture (Pg. 5). Modifying with Vitez’s particular quantities feature would be beneficial as doing so provides good performance per power, efficient use of memory bandwidth, and low latency (Pg. 7). Therefore, it would have been obvious to one of ordinary skill in the art to configure Nair in view of Kaul’s modified artificial intelligence circuitry with Vitez’s particular quantities features as making the modification would lead to the purported benefits.
Claims 13 and 15 are rejected under 35 U.S.C. 103 as being unpatentable over Nair in view of Kaul as applied to claim 1 above, and further in view of US 20210182024 A1 Mueller et al. (hereinafter “Mueller”) in view of US 20190339944 A1 Olsen (hereinafter “Olsen”).
Claim 13 is directed to a method that would be performed by the apparatus of claim 1 and 9. The claim 1 and 9 analysis similarly applies. In addition, claim 13 recites the following: an integrated circuit, an accumulation of products based on the input precision mode, generating, using the integrated circuit, a first rounded output, and generating, using the integrated circuit, a second rounded output based on the first rounded output and an activation function.
Nair in view of Kaul discloses an integrated circuit (Kaul, [0076]), and an accumulation of products (Nair, co. 7 ln. 60-67, co. 8 ln. 1-2; co. 9 ln. 10-18; co. 12, ln. 20-34) based on the input precision mode (Kaul, Fig. 2A mode1b at “234”, mode4b at “236”, mode8b at “238” [0026]; Fig. 3A mode1b at “334”, mode4b OR mode8b at “336”, “338” [0029], [0032]; Fig. 4A mode1b [0032]).
It would have been obvious to one of ordinary skill in the art before the effective
filing date to modify Nair’s artificial intelligence circuitry with Kaul’s basing features and integrated circuitry features because they are in the claimed invention’s same field of endeavor of machine learning accelerator architecture ([0001]). Modifying with Kaul’s basing features would be beneficial as doing so provides consistent sizing of bit widths prior to the accumulation ([0026]), and thus reducing possible inconsistencies with bit sizing. Therefore, it would have been obvious to one of ordinary skill in the art to configure Nair’s artificial intelligence circuitry with Kaul’s basing features as making the modification would lead to more configurability of consistent bit width sizing. Modifying with Kaul’s integrated circuitry would have been obvious to try with predictable results as doing so provides greater support for data and instructions management ([0076-0077]). Therefore, it would have been obvious to one of ordinary skill in the art to configure Nair’s artificial intelligence circuitry with Kaul’s integrated circuitry features as making the modification would lead to predictable results, executing in the processor ([0075-0079]).
Nair in view of Kaul are silent with disclosing generating, using the integrated circuit, a first rounded output, and generating, using the integrated circuit, a second rounded output based on the first rounded output and an activation function.
Mueller discloses generating, using the integrated circuit, a first rounded output (Fig. 1 “103” output [0029], [0032-0033]), and generating, using the integrated circuit, a second rounded output (Fig. 1 “104” output [0029], [0032-0033]) based on the first rounded output (Fig. 1 “103” output is input into “104” [0029], [0032-0033]) and an activation function.
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify Nair in view of Kaul’s modified artificial intelligence circuitry with Mueller’s rounded features because they are in the claimed invention’s same field of endeavor of neural network accelerator architecture ([0005]). Modifying with Mueller’s rounded features would be beneficial as doing so yields at least improvements in throughput and latency ([0029]). Therefore, it would have been obvious to one of ordinary skill in the art to configure Nair in view of Kaul’s modified artificial intelligence circuitry with Mueller’s rounded features as making the modification would lead to the purported benefits.
Nair in view of Kaul in view of Mueller are silent with disclosing an activation function.
Olsen discloses an activation function ([0005-0006]).
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify Nair in view of Kaul in view of Mueller’s modified artificial intelligence circuitry with Olsen’s activation function because they are in the claimed invention’s same field of endeavor of neural network accelerator architecture ([0095]). Olsen discloses that activation functions are a common technique used in neural networks ([0005-0006]). Modifying with Olsen’s activation function would have been obvious as activation functions are a known technique in the art, and would also be beneficial since performing activation functions assists with neural network training ([0006]).
Regarding claim 15, the teachings addressed in the claim 13 analysis and rejection are incorporated, and Nair in view of Kaul in view of Mueller teaches the device of claim 13, further comprising
formatting (Mueller, [0034-0035] IEEE format precisions) the second rounded output (Mueller, Fig. 1 “104” output [0029], [0032-0033]) based on a least one of the output precision mode (Kaul, Fig. 2B mode1b at “244” [0027]; Fig. 3B mode1b mux on lefthand side and mode1b, mode8b at “316” [0030-0031]; Fig. 4B mode [0032]) or a coordination mode that indicates whether the accumulation of products is to be combined with one or more other accumulations of products prior to rounding (NOTE: the logical OR in the claim limitation is interpreted to be fully disclosed by the prior art as at least one of the conditions is met, the output precision mode).
The motivation to combine provided with respect to claim 13 similarly applies.
Claim 14 is rejected under 35 U.S.C. 103 as being unpatentable over Nair in view of Kaul in view of Mueller in view of Olsen as applied to claim 13 above, and further in view of Dally.
Claim 14 is directed to a method that would be performed by the apparatus of claim 7. The claim 7 analysis similarly applies. In addition, claim 14 recites the following: combining prior to rounding; and wherein the first rounded output is generated based on the coordination mode. Nair in view of Kaul in view of Mueller in view of Olsen discloses combining prior to rounding (Mueller, [0029]). The motivation to combine provided with respect to claim 13 similarly applies.
Nair in view of Kaul in view of Mueller in view of Olsen in view of Dally discloses wherein the first rounded output is generated based on the coordination mode (Dally, Fig. 3C “366” in the scatter accumulator which includes “335” and “368”, [0097]).
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify Nair in view of Kaul in view of Mueller in view of Olsen’s modified artificial intelligence circuitry with Dally’s coordination mode features because they are in the claimed invention’s same field of endeavor of neural network accelerator architecture ([0002]). Modifying with Dally’s coordination mode feature would be beneficial as doing so provides more support for connectivity to send data between components ([0050]). Therefore, it would have been obvious to one of ordinary skill in the art to configure Nair in view of Kaul in view of Mueller in view of Olsen’s modified artificial intelligence circuitry with Dally’s coordination mode features as making the modification would lead to more configurability of sharing data.
Claim 16 is rejected under 35 U.S.C. 103 as being unpatentable over Nair in view of Kaul in view of Mueller in view of Olsen as applied to claim 13 above, and further in view of Dally in view of Mohapatra.
Claim 16 is directed to a method that would be performed by the apparatus of claims 1 and 9. The claims 1 and 9 analysis similarly applies. In addition, claim 16 recites the following: generating the processed map data based on the second rounded output; and routing the processed map data to a multiplexer, of a plurality of multiplexers, based on a coordination mode, and loaded based on selection by the multiplexer.
Nair in view of Kaul in view of Mueller in view of Olsen in view of Dally discloses generating the processed map data (Nair, Fig. 1 “151” co. 8 ln. 28-38; Fig. 2 “251” co. 10 ln. 1-5) based on the second rounded output (Mueller, Fig. 1 “104” output [0029], [0032-0033]); based on the coordination mode (Dally, Fig. 3C “366” in the scatter accumulator which includes “335” and “368”, [0097]). The motivation to combine provided with respect to claim 14 similarly applies.
Mohapatra discloses routing the processed map data to a multiplexer, of a plurality of multiplexers (Fig. 6 “625, 630, 635, 640, 645, 650, 655, 660” [0058]), and loaded based on selection by the multiplexer (Fig. 6, “635” [0060]).
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify Nair in view of Kaul in view of Mueller in view of Olsen in view of Dally’s modified artificial intelligence circuitry with Mohapatra’s routing and multiplexers features because they are in the claimed invention’s same field of endeavor of neural network accelerator architecture ([0001]). Modifying with Mohapatra’s routing and multiplexers features would be beneficial as doing so provides more support for connectivity to send data between components and are included as part of the shared logic which achieves efficient hardware resource reuse ([0058]). Therefore, it would have been obvious to one of ordinary skill in the art to configure Nair in view of Kaul in view of Mueller in view of Olsen in view of Dally’s modified artificial intelligence circuitry with Mohapatra’s routing and multiplexers features as making the modification would lead to more configurability of sharing data.
Double Patenting
The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The filing of a terminal disclaimer by itself is not a complete reply to a nonstatutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13.
The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/apply/applying-online/eterminal-disclaimer.
Claims 1, 13, and 17 are provisionally rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1, 10, and 16 of copending Application No. 17/807,288 in view of Nair in view of Kaul with respect to claims 1 and 17, and in view of Nair in view of Kaul in view of Mueller in view of Olsen with respect to claim 13.
This is a provisional nonstatutory double patenting rejection.
17/807,273 (instant application)
17/807,288 (reference application)
1. A device, comprising:
a plurality of matrix-matrix (MM) components that each include:
a plurality of map memory components each configured to store map data,
a plurality of kernel memory components each configured to store kernel data, and
a plurality of matrix-vector (MV) components that each include a plurality of vector-vector (VV) components that are each configured to generate a VV output based on an input precision mode, an output precision mode, and an accumulation of products that is based on the map data and the kernel data,
wherein the input precision mode indicates an input word length for data input to a VV component,
wherein the output precision mode indicates an output word length for data output from the VV component, and
wherein each VV component, of the plurality of VV components included in a corresponding MV component, is coupled with each map memory component, of the plurality of map memory components, and is coupled with a single kernel memory component of the plurality of kernel memory components; and
a data distribution component coupled with the plurality of MM components and configured to load the map data into the plurality of map memory components.
A device, comprising:
a plurality of matrix-vector (MV) components that each include:
a plurality of vector-vector (VV) components that are each configured to generate a respective VV output based on an input precision mode, an output precision mode, and an accumulation of products, wherein each VV component includes a respective one or more map data ports and a respective one or more kernel data ports,
wherein the accumulation of products is calculated by adding a plurality of products based on the input precision mode,
wherein each product, of the plurality of products, is calculated by multiplying, based on the input precision mode, a map data segment that is input to a VV component using the respective one or more map data ports and a kernel data segment that is input to the VV component using the respective one or more kernel data ports,
wherein the input precision mode indicates a word length for the map data segment and for the kernel data segment, and
wherein the output precision mode indicates a word length for the VV output; and
one or more components configured to concatenate a plurality of VV outputs, generated by the plurality of VV components included in an MV component of the plurality of MV components, to generate a concatenated VV output; and a plurality of activation function components that are each configured to:
receive a corresponding concatenated VV output;
generate an activation function output based on the corresponding concatenated VV output and the output precision mode; and
output the activation function output.
13. A method, comprising:
receiving map data from a plurality of map memory components;
receiving kernel data from a plurality of kernel memory components;
receiving an indication of an input precision mode that indicates an input word length for the map data and for the kernel data;
receiving an indication of an output precision mode that indicates an output word length;
calculating, using an integrated circuit, an accumulation of products based on the map data, the kernel data, and the input precision mode;
generating, using the integrated circuit, a first rounded output based on the input precision mode, the output precision mode, and the accumulation of products;
generating, using the integrated circuit, a second rounded output based on the first rounded output, the output precision mode, and an activation function; and
loading processed map data into the plurality of map memory components based on the second rounded output.
10. A method, comprising:
receiving map data via one or more map data ports of a vector-vector (VV) component;
receiving kernel data via one or more kernel data ports of the VV component;
receiving, via a third port, an indication of an input precision mode that indicates an input word length for the map data and for the kernel data;
receiving, via a fourth port, an indication of an output precision mode that indicates an output word length;
generating, using the VV component, a VV output based on the map data, the kernel data, the input precision mode, the output precision mode, and an accumulation of products; and
generating, using an activation function component, an activation function output based on the VV output and the output precision mode.
17. An apparatus, comprising:
a system that includes a memory and a processor; and
a device that includes:
a plurality of matrix-matrix (MM) components that each include:
a plurality of memory components, and
a plurality of matrix-vector (MV) components that each include a plurality of vector-vector (VV) components that are each configured to:
calculate an accumulation of products based on data stored in a subset of memory components, of the plurality of memory components, and based on an input precision mode that indicates an input word length for the data, and
generate a VV output based on the accumulation of products, the input precision mode, and an output precision mode that indicates an output word length for the data; and
a data distribution component coupled with the plurality of MM components and configured to provide processed map data, generated based on the VV output, to at least one of: the memory of the system, or one or more memory components of the plurality of memory components.
16. An apparatus, comprising:
means for receiving map data using one or more map data ports of a vector-vector (VV) component;
means for receiving kernel data using one or more kernel data ports of the VV component;
means for receiving an indication of an input precision mode that indicates an input word length for the map data and for the kernel data;
means for receiving an indication of an output precision mode that indicates an output word length;
means for generating a plurality of VV outputs based on the map data, the kernel data, the input precision mode, the output precision mode, and a plurality of accumulations of products;
means for generating a plurality of activation function outputs based on the plurality of VV outputs and the output precision mode;
means for concatenating the plurality of activation function outputs to form a concatenated activation function output; and
means for outputting the concatenated activation function output.
Regarding claim 1, the reference application does not explicitly disclose: a plurality of matrix-matrix (MM) components that each include: a plurality of map memory components each configured to store map data, a plurality of kernel memory components each configured to store kernel data, and is coupled with each map memory component, of the plurality of map memory components, and is coupled with a single kernel memory component of the plurality of kernel memory components; and a data distribution component coupled with the plurality of MM components and configured to load the map data into the plurality of map memory components. However, the combination of Nair in view of Kaul disclose the outstanding limitations and it would have been obvious to modify as discussed in the 35 USC 103 analysis above. Therefore, claim 1 of the reference application as modified in view of Nair in view of Kaul disclose the device of the instant application.
Regarding claim 13, the reference application claim 10 does not explicitly disclose: calculating, using an integrated circuit, an accumulation of products based on; using the integrated circuit, a first rounded output based on; using the integrated circuit, a second rounded output based on the first rounded output; and loading processed map data into the plurality of map memory components based on the second rounded output. However, the combination of Nair in view of Kaul in view of Mueller in view of Olsen disclose the outstanding limitations and it would have been obvious to modify as discussed in the 35 USC 103 analysis above. Therefore, claim 10 of the reference application as modified in view of Nair in view of Kaul in view of Muller in view of Olsen disclose the device of the instant application.
Regarding claim 17, the reference application claim 16 does not explicitly disclose: a plurality of matrix-matrix (MM) components that each include: a system that includes a memory and a processor; and a device that includes: a plurality of matrix-matrix (MM) components that each include: a plurality of memory components, and a plurality of matrix-vector (MV) components that each include a plurality of vector-vector (VV) components that are each configured to: calculate an accumulation of products based on data stored in a subset of memory components, of the plurality of memory components, and based on; a data distribution component coupled with the plurality of MM components and configured to provide processed map data, generated based on the VV output, to at least one of: the memory of the system, or one or more memory components of the plurality of memory components. However, the combination of Nair in view of Kaul disclose the outstanding limitations and it would have been obvious to modify as discussed in the 35 USC 103 analysis above. Therefore, claim 16 of the reference application as modified in view of Nair in view of Kaul disclose the device of the instant application.
Claims 1, 13, and 17 are provisionally rejected on the ground of nonstatutory double patenting as being unpatentable over claim 1, 10, and 16 of copending Application No. 17/807,277 in view of Nair in view of Kaul with respect to claims 1 and 17, and in view of Nair in view of Kaul in view of Mueller in view of Olsen with respect to claim 13.
This is a provisional nonstatutory double patenting rejection.
17/807,273 (instant application)
17/807,277 (reference application)
1. A device, comprising:
a plurality of matrix-matrix (MM) components that each include:
a plurality of map memory components each configured to store map data,
a plurality of kernel memory components each configured to store kernel data, and
a plurality of matrix-vector (MV) components that each include a plurality of vector-vector (VV) components that are each configured to generate a VV output based on an input precision mode, an output precision mode, and an accumulation of products that is based on the map data and the kernel data,
wherein the input precision mode indicates an input word length for data input to a VV component,
wherein the output precision mode indicates an output word length for data output from the VV component, and
wherein each VV component, of the plurality of VV components included in a corresponding MV component, is coupled with each map memory component, of the plurality of map memory components, and is coupled with a single kernel memory component of the plurality of kernel memory components; and
a data distribution component coupled with the plurality of MM components and configured to load the map data into the plurality of map memory components.
1. A device, comprising:
a plurality of vector-vector (VV) components that are each configured to generate a VV output based on an input precision mode, an output precision mode, and at least one accumulation of products,
wherein each accumulation of products, of the at least one accumulation of products, is calculated by adding a plurality of products based on the input precision mode,
wherein each product, of the plurality of products, is calculated by multiplying a map word and a kernel word based on the input precision mode,
wherein the input precision mode indicates an input word length for the map word and for the kernel word, and
wherein the output precision mode indicates an output word length for the VV output;
one or more components configured to concatenate a plurality of VV outputs, corresponding to the plurality of VV components, to generate a concatenated VV output; and
an output port configured to output the concatenated VV output.
13. A method, comprising:
receiving map data from a plurality of map memory components;
receiving kernel data from a plurality of kernel memory components;
receiving an indication of an input precision mode that indicates an input word length for the map data and for the kernel data;
receiving an indication of an output precision mode that indicates an output word length;
calculating, using an integrated circuit, an accumulation of products based on the map data, the kernel data, and the input precision mode;
generating, using the integrated circuit, a first rounded output based on the input precision mode, the output precision mode, and the accumulation of products;
generating, using the integrated circuit, a second rounded output based on the first rounded output, the output precision mode, and an activation function; and
loading processed map data into the plurality of map memory components based on the second rounded output.
10. A method, comprising:
receiving map data via a first port;
receiving kernel data via a second port;
receiving, via a third port, an indication of an input precision mode that indicates an input word length for the map data and for the kernel data;
receiving, via a fourth port, an indication of an output precision mode that indicates an output word length;
generating, using a plurality of vector-vector (VV) components, a corresponding plurality of VV outputs based on the map data, the kernel data, the input precision mode, the output precision mode, and at least one accumulation of products;
concatenating, using one or more integrated circuits, the corresponding plurality of VV outputs to generate a concatenated VV output; and
outputting the concatenated VV output via a fifth port.
17. An apparatus, comprising:
a system that includes a memory and a processor; and
a device that includes:
a plurality of matrix-matrix (MM) components that each include:
a plurality of memory components, and
a plurality of matrix-vector (MV) components that each include a plurality of vector-vector (VV) components that are each configured to:
calculate an accumulation of products based on data stored in a subset of memory components, of the plurality of memory components, and based on an input precision mode that indicates an input word length for the data, and
generate a VV output based on the accumulation of products, the input precision mode, and an output precision mode that indicates an output word length for the data; and
a data distribution component coupled with the plurality of MM components and configured to provide processed map data, generated based on the VV output, to at least one of: the memory of the system, or one or more memory components of the plurality of memory components.
16. An apparatus, comprising:
means for receiving map data;
means for receiving kernel data;
means for receiving an indication of an input precision mode that indicates an input word length for the map data and for the kernel data;
means for receiving an indication of an output precision mode that indicates an output word length;
means for calculating at least one accumulation of products based on a set of map words included in the map data, a set of kernel words included in the kernel data, and the input precision mode;
means for generating an output based on the at least one accumulation of products, the input precision mode, and the output precision mode;
means for concatenating the output with one or more other outputs to generate a concatenated output; and
means for outputting the concatenated output.
Regarding claim 1, the reference application does not explicitly disclose: a plurality of matrix-matrix (MM) components that each include: a plurality of map memory components each configured to store map data, a plurality of kernel memory components each configured to store kernel data, and a plurality of matrix-vector (MV) components; wherein each VV component, of the plurality of VV components included in a corresponding MV component, is coupled with each map memory component, of the plurality of map memory components, and is coupled with a single kernel memory component of the plurality of kernel memory components; and a data distribution component coupled with the plurality of MM components and configured to load the map data into the plurality of map memory components. However, the combination of Nair in view of Kaul disclose the outstanding limitations and it would have been obvious to modify as discussed in the 35 USC 103 analysis above. Therefore, claim 1 of the reference application as modified in view of Nair in view of Kaul disclose the device of the instant application.
Regarding claim 13, the reference application claim 10 does not explicitly disclose: a plurality of map memory components; a plurality of kernel memory components; calculating, using an integrated circuit, an accumulation of products; using the integrated circuit, a first rounded output; generating, using the integrated circuit, a second rounded output based on the first rounded output, the output precision mode, and an activation function; and loading processed map data into the plurality of map memory components based on the second rounded output. However, the combination of Nair in view of Kaul in view of Mueller in view of Olsen disclose the outstanding limitations and it would have been obvious to modify as discussed in the 35 USC 103 analysis above. Therefore, claim 10 of the reference application as modified in view of Nair in view of Kaul in view of Mueller in view of Olsen disclose the device of the instant application.
Regarding claim 17, the reference application claim 16 does not explicitly disclose: a system that includes a memory and a processor; and a device that includes: a plurality of matrix-matrix (MM) components that each include: a plurality of memory components, and a plurality of matrix-vector (MV) components that each include a plurality of vector-vector (VV) components that are each configured to of memory components, of the plurality of memory components; a data distribution component coupled with the plurality of MM components and configured to provide processed map data, generated based on the VV output, to at least one of: the memory of the system, or one or more memory components of the plurality of memory components. However, the combination of Nair in view of Kaul disclose the outstanding limitations and it would have been obvious to modify as discussed in the 35 USC 103 analysis above. Therefore, claim 16 of the reference application as modified in view of Nair in view of Kaul disclose the device of the instant application.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to MARKUS A VILLANUEVA whose telephone number is (703)756-1603. The examiner can normally be reached M - F 8:30 am - 5:30 pm.
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, James Trujillo can be reached at (571) 272-3677. 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.
/MARKUS ANTHONY VILLANUEVA/Examiner, Art Unit 2151
/James Trujillo/Supervisory Patent Examiner, Art Unit 2151