Prosecution Insights
Last updated: October 25, 2026
Application No. 18/930,643

COMPILATION FOR SYNCHRONOUS PROCESSOR

Non-Final OA §102§103
Filed
Oct 29, 2024
Priority
Aug 22, 2019 — provisional 62/890,495 +2 more
Examiner
RAMPURIA, SATISH
Art Unit
2193
Tech Center
2100 — Computer Architecture & Software
Assignee
Google LLC
OA Round
1 (Non-Final)
89%
Grant Probability
Favorable
1-2
OA Rounds
11m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 89% — above average
89%
Career Allowance Rate
760 granted / 854 resolved
+34.0% vs TC avg
Strong +25% interview lift
Without
With
+24.9%
Interview Lift
resolved cases with interview
Typical timeline
2y 11m
Avg Prosecution
14 currently pending
Career history
879
Total Applications
across all art units

Statute-Specific Performance

§101
19.8%
-20.2% vs TC avg
§103
51.1%
+11.1% vs TC avg
§102
10.5%
-29.5% vs TC avg
§112
12.4%
-27.6% vs TC avg
Black line = Tech Center average estimate • Based on career data from 854 resolved cases

Office Action

§102 §103
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 . DETAILED ACTION This action is in response to the preliminary amendment filed on 03/05/2025. Claim 1 is cancelled by the applicants. Claims 2-19 are added by the applicants. Claims 2-19 are pending. Examiner’s Note Please note that Examiner cites particular columns and line numbers in the references as applied to the claims below for the convenience of the applicant. Although the specified citations are representative of the teachings in the art and are applied to the specific limitations within the individual claim, other passages and figures may apply as well. It is respectfully requested that, in preparing responses, the applicant fully consider the references in entirely as potentially teaching all or part of the claimed invention, as well as the context of the passage as taught by the prior art or disclosed by the examiner. Claim Objections Claim 12-19 objected to because of the following informalities: claims 12-19 depends on claim 2 which is a different set of independent claim rather claims 12-19 should have been dependent on claim 11. Appropriate correction is required. Claim Rejections - 35 USC § 102 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 the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action: A person shall be entitled to a patent unless – (a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention. Claim(s) 1-4, 6, 8-13, 15 and 17-19 is/are rejected under 35 U.S.C. 102(a)(1) as being anticipated by USPN 20100122105 to Arslan et al. Per claim 2: Arslan discloses: 2. (New) A method performed using a compiler for a hardware synchronous processor, the method comprising: processing an input program received by the compiler (paragraph [0051] “a front end module adapted to receive the program instructions”; paragraph [0131] “the standard GNU C Compiler (gcc) is used to compile C/C++ code 50 into assembly format 52”; paragraph [0145] “front end 610 of the RICA compiler is an instruction parser that deals with instructions such as addition, logic, div, shift, multiply”); generating, based on the input program, timing information used by the synchronous processor to execute an operation corresponding to an instruction (paragraph [0124] “amount of clock cycles the RRC waits for before generating the Enable signal is configurable by the decoder 11 as part of the array's configuration instruction 10”; paragraph [0148] “resource and time constraints are given in the machine description 616 where pre-scheduling estimated routing times are utilized and post-scheduling the routing time delays from VPR are used”); generating, based on the timing information, instructions used by the synchronous processor to execute operations of the input program the include computing an inference (paragraph [0139] “Each netlist contains a block of instructions that will be executed in a single clock cycle”; paragraph [0153] “VLIW DSP can only execute independent instructions in parallel while RICA can execute both independent and dependent assembly instructions in the same clock cycle because it allows connections in series”); and scheduling when the instructions and the operations will be executed by the synchronous processor based on a constraint of the synchronous processor (paragraph [0148] “the scheduling and chaining of operations affects the register reuse, the scheduling algorithm also performs register assignment. The resource and time constraints are given in the machine description 616 where pre-scheduling estimated routing times are utilized and post-scheduling the routing time delays from VPR are used”; paragraph [0154] “Scheduling is a critical task in this process. Scheduling partitions the Control Data Flow Graph (CDFG) into time steps thereby generating a scheduled CDFG mode”). Per claim 3: Arslan discloses: 3. (New) The method of claim 2, wherein the input program comprises a set of operations and processing the input program comprises: generating an intermediate representation of the input program by traversing dependencies between program nodes that correspond to operations in the set of operations of the input program (paragraph [0138] “the high-level compiler 604 takes the high-level code 602 and transforms it into an intermediate assembly language format 60”; paragraph [0186] “scheduler is the assembly code or other intermediate representation, a dependence graph (DG) is generated by removing the registers to represent instruction dependences”). Per claim 4: Arslan discloses: 4. (New) The method of claim 3, wherein generating the intermediate representation comprises: assigning a respective clock cycle value to each operation in the set of operations of the input program (paragraph [0120] “assembly code of a program is sliced into blocks of instructions that are executed in a single variable length clock cycle”; paragraph [0192] “CPRS scheduling, nodes with the greatest critical-path lengths are selected to be scheduled at cycle t”). Per claim 6: Arslan discloses: 6. (New) The method of claim 4, wherein each respective clock cycle value that is assigned to a corresponding operation indicates when that corresponding operation will be executed by the synchronous processor (paragraph [0147] “computing priories in a sophisticated way, they try to schedule the most critical cells first, and to assign them to the right resource. LS usually employ a priority vector to determine what tasks to consider first”). Per claim 8: Arslan discloses: 8. (New) The method of claim 2, wherein the constraint is a clock timing constraint for executing the input program on the synchronous processor (paragraph [0124] “amount of clock cycles the RRC waits for before generating the Enable signal is configurable by the decoder 11 as part of the array's configuration instruction 10”; paragraph [0148] “time constraints include not only the programmable computational unit delay but also the routing delays”). Per claim 9: Arslan discloses: 9. (New) The method of claim 8, further comprising: generating the clock timing constraint based on clock latency values for each respective operation of the input program (paragraph [0148] “resource and time constraints are given in the machine description 616 where pre-scheduling estimated routing times are utilized and post-scheduling the routing time delays from VPR are used”). Per claim 10: Arslan discloses: 10. (New) The method of claim 2, wherein the constraint is a clock timing constraint that specifies when particular operations in the set of operations must occur relative to other operations in the set of operations, when the set of operations is executed on the synchronous processor (paragraph [0147] “the precedence relations also need to be respected in list scheduling. All operations, whose predecessors in the DFG have completed their executions at a certain cycle t, are put in the so-called ready list R[t]”). Claims 11-13 and 15 and 17-19 is/are the method claim corresponding to apparatus/system claims 1-4, 6 and 8-10 respectively and rejected under the same rational set forth in connection with the rejection of claims 1-4, 6 and 8-10 respectively, as noted above. 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. Claim(s) 5, 7, 14 and 16 is/are rejected under 35 U.S.C. 103 as being unpatentable over USPN 20100122105 to Arslan et al. in view of USPN 20060004997 et al. Per claim 2: Arslan discloses: 5. (New) The method of claim 3, wherein generating the intermediate representation comprises, for a subsequent operation in the set of operations that precedes a first operation: assigning a clock cycle value to the subsequent operation based on: i) a dependency between the first operation and the subsequent operation (paragraph [0131] “analysing the dependencies between them. Dependent program instructions are connected serially and independent program instructions are connected in parallel in the netlists”). Arslan does not explicitly disclose ii) a cycle latency of a node that corresponds to the first operation. However, Mykland discloses in an analogous computer system ii) a cycle latency of a node that corresponds to the first operation (Paragraph [0537] “creates a block operation that will take up the latency and similarly tries to schedule it earlier in the execution chain so the data will be available when the latency stall would have been hit”). Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention was made to incorporate the method of ii) a cycle latency of a node that corresponds to the first operation as taught by Mykland into the method of reconfiguring processor as taught by Arslan. The modification would be obvious because of one of ordinary skill in the art would be motivated to add/incorporate the features of ii) a cycle latency of a node that corresponds to the first operation to provide an efficient technique to perform reprogrammable tasks so as to fulfill the requirements of general purpose computers as suggested by Mykland (paragraph [0002]). Per claim 7: The rejection of claim 2 is incorporated and further Arslan does not explicitly disclose i) the input program is latency insensitive; and ii) the compiler is operable to compile the latency insensitive program for different underlying hardware designs of the synchronous processor. However, Mykland discloses in an analogous computer system i) the input program is latency insensitive (Paragraph [0537] “creates a block operation that will take up the latency and similarly tries to schedule it earlier in the execution chain so the data will be available when the latency stall would have been hit”); and ii) the compiler is operable to compile the latency insensitive program for different underlying hardware designs of the synchronous processor (paragraph [0008] “the operating system executed by the integrated circuit computing device may be MICROSOFT NT, MICROSOFT WINDOWS 98, MAC O/S 10, LINUX, or another suitable operating system known in the art”). The feature of providing disclose i) the input program is latency insensitive; and ii) the compiler is operable to compile the latency insensitive program for different underlying hardware designs of the synchronous processor would be obvious for the reasons set forth in the rejection of claim 5. Claims 14 and 16 is/are the method claim corresponding to apparatus/system claims 5 and 7 respectively and rejected under the same rational set forth in connection with the rejection of claims 5 and 7 respectively, as noted above. Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. Related cited arts: Graillat, Amaury, et al. "Parallel code generation of synchronous programs for a many-core architecture." 2018 Design, Automation & Test in Europe Conference & Exhibition (DATE). IEEE, 2018. pp. 1139-1142. Carloni, Luca P., et al. "A methodology for correct-by-construction latency insensitive design." 1999 IEEE/ACM International Conference on Computer-Aided Design. Digest of Technical Papers (Cat. No. 99CH37051). IEEE, 1999. pp. 309-315. Carloni, Luca P. "From latency-insensitive design to communication-based system-level design." Proceedings of the IEEE 103.11 (2015): pp. 2133-2151. US20020156995 - An asynchronous processor having pipelined instruction fetching and execution to implement concurrent execution of instructions by two or more execution units. A writeback unit is connected to execution units and memory units to control information updates and to handle precise exception. A pipelined completion mechanism can be implemented to improve the throughput. US6625797 - The compilation of a high-level software-based description of an algorithm into efficient digital hardware implementation(s) is addressed. This is done through the definition of new semantics for software constructs with respect to hardware implementations. This approach allows a designer to work at a high level of abstraction, while the semantic model can be used to infer the resulting hardware implementation. These semantics are interpreted through the use of a compilation tool that analyzes the software description to generate a control and data flow graph. This graph is then the intermediate format used for optimizations, transformations and annotations. The resulting graph is then translated to either a register transfer level or a netlist-level description of the hardware implementation. US5544342 - A method and system are provided for prefetching information in a processing system. A first memory has multiple first locations. At least one of the first locations stores information including an address of a different first location, the different first location having been referenced in the first memory after a previous reference to the one first location. A second memory has at least one second location storing information from the one first location, including the address. Information is prefetched to the second memory from the address of the first memory, in response to a reference to the second location. Any inquiry concerning this communication or earlier communications from the examiner should be directed to Satish Rampuria whose telephone number is 571-272-3732. The examiner can normally be reached on Monday-Friday from 8:30 AM to 5:00 PM. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Chat Do, can be reached at telephone number 571-272-3721. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. 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) Form at https://www.uspto.gov/patents/uspto-automated- interview-request-air-form. 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. /Satish Rampuria/Primary Examiner, Art Unit 2193 *****
Read full office action

Prosecution Timeline

Oct 29, 2024
Application Filed
Mar 05, 2025
Response after Non-Final Action
Oct 14, 2026
Non-Final Rejection mailed — §102, §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12769542
LIBRARY DEVELOPMENT ENSURING LIBRARY COMPATIBILITY AND MINIMIZING DEPENDENCY CONFLICTS
2y 7m to grant Granted Oct 20, 2026
Patent 12769536
SOFTWARE UPDATING SERVER, SOFTWARE UPDATING SYSTEM, SOFTWARE UPDATING METHOD, AND NON-TRANSITORY STORAGE MEDIUM
2y 6m to grant Granted Oct 20, 2026
Patent 12761898
DISTRIBUTION SERVER
2y 7m to grant Granted Oct 13, 2026
Patent 12762038
METHOD AND SYSTEM FOR SOURCE CODE VERIFICATION USING MACHINE LEARNING BASED STRATEGY PREDICTION
2y 7m to grant Granted Oct 13, 2026
Patent 12743258
SYSTEMS AND METHODS FOR GENERATING CARBON EFFICIENT CODE
2y 7m to grant Granted Sep 22, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
89%
Grant Probability
99%
With Interview (+24.9%)
2y 11m (~11m remaining)
Median Time to Grant
Low
PTA Risk
Based on 854 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month