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 .
Information Disclosure Statement
The prior art documents submitted by applicant in the Information Disclosure Statements filed on 10/03/2024 have all been considered and made of record with the exception of lined-through references for which a copy of the foreign patent documents with drawings were not filed, a translation of a foreign language references were not provided, or the citations were incorrect (note the attached copies of form PTO-1449).
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 §§ 706.02(l)(1) - 706.02(l)(3) 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 USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The 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/process/file/efs/guidance/eTD-info-I.jsp.
Claims 1-20 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1, 1+2, 3-6, 1+5, 8-12, 14, 14+15, 16-17, 14+17, 14+19, and 20 of U.S. Patent 12141890. This is a nonstatutory double patenting rejection.
Regarding claim 1:
18905803
US 12141890
1. A multi-chip module comprising:
a package assembly comprising a plurality of semiconductor dies and a plurality of die-to-die interconnects, the plurality of semiconductor dies comprising:
a first semiconductor die including: a plurality of graphics processing resources including a graphics multiprocessor coupled with a first cache memory;
an interconnect fabric coupled with the first cache memory, wherein the first cache memory is associated with the graphics multiprocessor; and a second cache memory coupled with the interconnect fabric; and
a die interface configurable to couple the interconnect fabric with one or more of a plurality semiconductor dies, the die interface including an interconnect cache to cache data transmitted via the die interface, the plurality of semiconductor dies including a second semiconductor die that includes a third cache memory and a third semiconductor die that includes a high bandwidth memory (HBM).
1. A multi-chip module comprising: a package assembly comprising a plurality of semiconductor dies and a plurality of die-to-die interconnects, the plurality of semiconductor dies included within a plurality of distinct chiplets, the plurality of distinct chiplets comprising: a first chiplet comprising a first semiconductor die including:
a plurality of graphics processing resources including a graphics multiprocessor coupled with a first cache memory, wherein the graphics multiprocessor has a single instruction multiple thread (SIMT) architecture and includes functional units configured to perform general-purpose graphics processing operations;
an interconnect fabric coupled with the first cache memory, wherein the first cache memory is associated with the graphics multiprocessor; and
a second cache memory coupled with the plurality of graphics processing resources via the interconnect fabric, the second cache memory associated with a plurality of graphics multiprocessors of the plurality of graphics processing resources; and
a die interface configurable to couple the interconnect fabric with one or more of a plurality semiconductor dies included within one or more second chiplets, the die interface including an interconnect cache to cache data transmitted via the die interface and an interconnect buffer to temporarily store commands or data received via the interconnect fabric, the plurality of semiconductor dies including:
a second semiconductor die that includes a third cache memory and a memory controller coupled with the third cache memory; and
a third semiconductor die that includes a first high bandwidth memory (HBM).
Although the conflicting claims are not identical, they are not patentably distinct from each other (see the comparison between claim 1 of the instant invention and claim 1 of the US 12020384).
Likewise instant dependent claims 2-13 are anticipated by dependent claims 1+2, 3-6, 1+5, 8-12 of the US 12020384, and is not patentably distinct from claims 1+2, 3-6, 1+5, 8-12 of the US 12020384.
Regarding claim 14:
18905803
US 12141890
14. An apparatus comprising: a memory device; and a multi-chip module comprising a package assembly including a plurality of semiconductor dies and a plurality of die-to-die interconnects, the plurality of semiconductor dies comprising a first semiconductor die including:
a plurality of graphics processing resources including a graphics multiprocessor coupled with a first cache memory;
an interconnect fabric coupled with the first cache memory, wherein the first cache memory is associated with the graphics multiprocessor, wherein the graphics multiprocessor has a single instruction multiple thread (SIMT) architecture; and
a second cache memory coupled with the interconnect fabric; and
a die interface configurable to couple the interconnect fabric with one or more of a plurality semiconductor dies, the die interface including an interconnect cache to cache data transmitted via the die interface, the plurality of semiconductor dies including a second semiconductor die that includes a third cache memory and a third semiconductor die that includes a high bandwidth memory (HBM).
14. An apparatus comprising: a memory device; and a multi-chip module comprising a package assembly including a plurality of semiconductor dies and a plurality of die-to-die interconnects, the plurality of semiconductor dies included within a plurality of distinct chiplets, the plurality of distinct chiplets comprising a first chiplet comprising a first semiconductor die including:
a plurality of graphics processing resources including a graphics multiprocessor coupled with a first cache memory, wherein the graphics multiprocessor has a single instruction multiple thread (SIMT) architecture and includes functional units configured to perform general-purpose graphics processing operations;
an interconnect fabric coupled with the first cache memory, wherein the first cache memory is associated with the graphics multiprocessor; and
a second cache memory coupled with the plurality of graphics processing resources via the interconnect fabric, the second cache memory associated with a plurality of graphics multiprocessors of the plurality of graphics processing resources; and
a die interface configurable to couple the interconnect fabric with one or more of a plurality semiconductor dies included within one or more second chiplets, the die interface including an interconnect cache to cache data transmitted via the die interface and an interconnect buffer to temporarily store commands or data received via the interconnect fabric, the plurality of semiconductor dies including:
a second semiconductor die that includes a third cache memory and a memory controller coupled with the third cache memory; and
a third semiconductor die that includes a first high bandwidth memory (HBM).
Although the conflicting claims are not identical, they are not patentably distinct from each other (see the comparison between claim 1 of the instant invention and claim 1 of the US 12020384).
Likewise instant dependent claims 14-20 are anticipated by dependent claims 14+15, 16-17, 14+17, 14+19, and 20 of the US 12020384, and is not patentably distinct from claims 14+15, 16-17, 14+17, 14+19, and 20 of the US 12020384.
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-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over U.S. PGPubs 2019/0057061 to Targowski et al. in view of U.S. PGPubs 2016/0026494 to Rauchfuss et al., further in view of U.S. PGPubs 2018/0102251 to Delacruz et al., further in view of U.S. PGPubs 2013/0031313 to Ryan et al..
PNG
media_image1.png
361
416
media_image1.png
Greyscale
Regarding claim 1, Targowski et al. teach a multi-chip module comprising (Figs 11B-12, par 0140-0142, disclose a SOC system with processors):
a package assembly comprising a plurality of semiconductor dies and a plurality of die-to-die interconnects, the plurality of semiconductor dies comprising (Fig 11B-12, par 0136-0138, “The integrated circuit package assembly 1170 illustrates an implementation of one or more processor or accelerator devices as described herein. The package assembly 1170 includes multiple units of hardware logic 1172, 1174 connected to a substrate 1180. The logic 1172, 1174 may be implemented at least partly in configurable logic or fixed-functionality logic hardware, and can include one or more portions of any of the processor core(s), graphics processor(s), or other accelerator devices described herein. Each unit of logic 1172, 1174 can be implemented within a semiconductor die and coupled with the substrate 1180 via an interconnect structure 1173. The interconnect structure 1173 may be configured to route electrical signals between the logic 1172, 1174 and the substrate 1180, and can include interconnects such as, but not limited to bumps or pillars “, par 0141, “FIG. 12 is a block diagram illustrating an exemplary system on a chip integrated circuit 1200 that may be fabricated using one or more IP cores, according to an embodiment. Exemplary integrated circuit 1200 includes one or more application processor(s) 1205 (e.g., CPUs), at least one graphics processor 1210, and may additionally include an image processor 1215 and/or a video processor 1220, any of which may be a modular IP core from the same or multiple different design facilities“ ….disclose a plurality of based die have interconnect structures):
a first semiconductor die including (Fig 11B-12, par 0136-0138) :
a plurality of graphics processing resources including a graphics multiprocessor coupled with a first cache memory (Fig 11B-12, par 0136-0138, “The integrated circuit package assembly 1170 illustrates an implementation of one or more processor or accelerator devices as described herein. The package assembly 1170 includes multiple units of hardware logic 1172, 1174 connected to a substrate 1180. The logic 1172, 1174 may be implemented at least partly in configurable logic or fixed-functionality logic hardware, and can include one or more portions of any of the processor core(s), graphics processor(s), or other accelerator devices described herein. Each unit of logic 1172, 1174 can be implemented within a semiconductor die and coupled with the substrate 1180 via an interconnect structure 1173. The interconnect structure 1173 may be configured to route electrical signals between the logic 1172, 1174 and the substrate 1180, and can include interconnects such as, but not limited to bumps or pillars“, Fig 14, par 0146-0147, “FIG. 14A illustrates a graphics core 1400 that may be included within the graphics processor 1210 of FIG. 12, and may be a unified shader core 1355A-1355N as in FIG. 13B … As shown in FIG. 14A, the graphics core 1400 includes a shared instruction cache 1402, a texture unit 1418, and a cache/shared memory 1420 that are common to the execution resources within the graphics core 1400”);
an interconnect fabric coupled with the first cache memory (par 0103, par 0107, “The graphics processor 800 has an interconnect bus, interconnect fabric, or some other interconnect mechanism that allows data and message passing amongst the major components of the processor. In some embodiments, execution units 852A-852B and associated logic units (e.g., L1 cache 851, sampler 854, texture cache 858, etc.) interconnect via a data port 856 to perform memory access and communicate with render output pipeline components of the processor”),wherein the first cache memory is associated with the graphics multiprocessor (Fig 14, par 0146-0147, “FIG. 14A illustrates a graphics core 1400 that may be included within the graphics processor 1210 of FIG. 12, and may be a unified shader core 1355A-1355N as in FIG. 13B … As shown in FIG. 14A, the graphics core 1400 includes a shared instruction cache 1402, a texture unit 1418, and a cache/shared memory 1420 that are common to the execution resources within the graphics core 1400”); and
a die interface configurable to couple the interconnect fabric with one or more of a plurality semiconductor dies (Fig 11B-12, abstract, par 0136-0138, “The integrated circuit package assembly 1170 illustrates an implementation of one or more processor or accelerator devices as described herein. The package assembly 1170 includes multiple units of hardware logic 1172, 1174 connected to a substrate 1180. The logic 1172, 1174 may be implemented at least partly in configurable logic or fixed-functionality logic hardware, and can include one or more portions of any of the processor core(s), graphics processor(s), or other accelerator devices described herein. Each unit of logic 1172, 1174 can be implemented within a semiconductor die and coupled with the substrate 1180 via an interconnect structure 1173. The interconnect structure 1173 may be configured to route electrical signals between the logic 1172, 1174 and the substrate 1180, and can include interconnects such as, but not limited to bumps or pillars”), the plurality of semiconductor dies including a second semiconductor die that includes a third cache memory (Fig 11B, par 0136, “The logic 1172, 1174 may be implemented at least partly in configurable logic or fixed-functionality logic hardware, and can include one or more portions of any of the processor core(s), graphics processor(s), or other accelerator devices described herein”, par 0141, “FIG. 12 is a block diagram illustrating an exemplary system on a chip integrated circuit 1200 that may be fabricated using one or more IP cores, according to an embodiment … Memory interface may be provided via a memory controller 1265 for access to SDRAM or SRAM memory devices. Some integrated circuits additionally include an embedded security engine 1270”, par 0037, par 0048, “the processor 102 also uses an external cache (e.g., a Level-3 (L3) cache or Last Level Cache (LLC)) (not shown), which may be shared among processor cores 107 using known cache coherency techniques”, par 0043, “The internal cache units 204A-204N and shared cache units 206 represent a cache memory hierarchy within the processor 200. The cache memory hierarchy may include at least one level of instruction and data cache within each processor core and one or more levels of shared mid-level cache, such as a Level 2 (L2), Level 3 (L3), Level 4 (L4), or other levels of cache, where the highest level of cache before external memory is classified as the LLC. In some embodiments, cache coherency logic maintains coherency between the various cache units 206 and 204A-204N”) and a third semiconductor die that includes an external memory (abstract, par 0039, “The memory device 120 can be a dynamic random-access memory (DRAM) device, a static random-access memory (SRAM) device, flash memory device, phase-change memory device, or some other memory device having suitable performance to serve as process memory”).
But Targowski et al. keep silent for teaching a second cache memory coupled with the interconnect fabric.
PNG
media_image2.png
447
323
media_image2.png
Greyscale
In related endeavor, Rauchfuss et al. teach an interconnect fabric coupled with the first cache memory, wherein the first cache memory is associated with the graphics multiprocessor (Fig 1, par 0017-0018, “the cache 108 (that may be shared) may be a mid-level cache (MLC), a last level cache (LLC), etc. Also, each of the cores 106 may include a level 1 (L1) cache (116-1) (generally referred to herein as “L1 cache 116”) or other levels of cache such as a level 2 (L2) cache. Moreover, various components of the processor 102-1 may communicate with the cache 108 directly, through a bus (e.g., the bus 112), and/or a memory controller or hub”), a second cache memory coupled with the interconnect fabric, (Fig 4, par 0017, par 0031, “As shown in FIG. 4, processor 400 may be a multicore processor including a plurality of cores 410.sub.a-410.sub.n. The various cores may be coupled via an interconnect 415 to a system agent or uncore 420 that may include various components. As seen, the uncore 420 may include a shared cache 430, which may be a last level cache”).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify Targowski et al. to include a second cache memory coupled with the interconnect fabric as taught by Rauchfuss et al. to provide a highly flexible solution that could be used in other applications, e.g., where workloads need to be stopped before completion to make way for higher priority operations to improve the responsiveness of hardware to application requests and also allow for the graphics logic to be multipurpose.
But Targowski et al. as modified by Rauchfuss et al. keep silent for teaching the plurality of semiconductor dies including a third semiconductor die that includes a high bandwidth memory (HBM).
PNG
media_image3.png
512
400
media_image3.png
Greyscale
In related endeavor, Delacruz et al. teach a plurality of semiconductor dies and a plurality of die-to-die interconnects, the plurality of semiconductor dies comprising (Fig 5, abstract, par 0069-0070, “Direct-bonded native interconnects and active base dies are provided. In a microelectronic architecture, active dies or chiplets connect to an active base die via their core-level conductors…. The base die may contain custom logic, allowing the attached dies to provide stock functions. The architecture can connect diverse interconnect types and chiplets from various process nodes, operating at different voltages. The base die may have state elements for drive. Functional blocks aboard the base die receive native signals from diverse chiplets, and communicate with all attached chiplets. The chiplets may share processing and memory resources of the base die): a die interface configurable to couple with one or more of a plurality semiconductor dies (Figs 1-2, and 4-5, abstract, par 006-008, par 0031- 0033, par 0045, par 0069-0072, par 0079; par 0081-0084, par 0094, par 0117-0118, “The active base die 108 uses chiplets 506 & 508 & 510 . . . n and communicatively connects them together”; par 0094, “the example native interconnection using an active base die 108 directly couples with native core-side interconnects 504, which are already natively present on the chiplet 506”; “The active base die receives native core-side signals from multiple diverse chiplets, and enables two-way communication between functional elements of the active base die and the attached chiplets “; “The native interconnects can be made during die-to-die or die-to-wafer direct-bonding that creates native interconnects between a first die, such as an active die or a chiplet, and a second die, which may be an active base die “; “The example microelectronics package 106 has functional blocks 110 & 204 & 206 coupled to the active base die 108 as chiplets, via the native interconnects 210 of the chiplets 110 & 204 & 206. The active base die 108 has incorporated functional block 202 into the active base die 108 as a purposeful part of the design “; “the example native interconnection using an active base die 108 directly couples with native core-side interconnects 504, which are already natively present on the chiplet 506”); the plurality of semiconductor dies including a second semiconductor die that includes a third cache memory (Fig 5, par 0071, par 0091, par 0118, “The active base die 108 can enable chiplets of various technologies to share one or more common memories, whereas conventionally each processor has its own dedicated coupled memory. The active base die 108 can allow external memory to be utilized as embedded memory with process sharing. In such a configuration, memory access does not need to proceed each time through a memory interface, such as the DBI bonds of the native interconnect 504 to attached chiplets 506 & 508 & 510 . . . n, but instead memory access can go straight through the active base die configuration”) and a third semiconductor die that includes a high bandwidth memory (HBM) (par 0052, “Example microelectronic device 430 includes chiplets 432 & 434 & 436 direct-bonded in a stack to an example active base die 108 of the same size or footprint as the chiplets 432 & 434 & 436. This example configuration of a microelectronic device 430 using the active base die 108 to host one or more memory controllers, for example, may be useful in fabricating or emulating various types of high bandwidth memory modules, such as DDR4 SDRAM, DDRS SDRAM, high bandwidth memory (HBM), hybrid memory cube (HMC), and so forth”).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify Targowski et al. as modified by Rauchfuss et al. to include the plurality of semiconductor dies including a third semiconductor die that includes a high bandwidth memory (HBM) as taught by Delacruz et al. to build direct-bonded native interconnects and active base dies to stack chiplets with same size and footprint to allow user to configure these chiplets for various type high bandwidth memory modules to build a minimal routing blockages to improve signal quality and timing.
But Targowski et al. as modified by Rauchfuss et al. and Delacruz et al. keep silent for teaching the die interface including an interconnect cache to cache data transmitted via the die interface.
In related endeavor, Ryan et al. teach the die interface including an interconnect cache to cache data transmitted via the die interface (Fig 1, par 0026-0027, “As is schematically shown in FIG. 1, the network-on-chip 14 is connected via a communication path 18 to a cache arrangement 12. This will be described in more detail later. The network-on-chip 14 is connected to an interface 6 via a communication path 20. The communication paths 18 and 20 may be interconnects”, Fig 2, par 0041-0045, “A first cache arrangement 12 is provided on a first die with a second cache arrangement 25 on a second die. The first cache arrangement has a cache memory 56 and a cache controller 54 for controlling the cache memory. The interconnect between the two dies is represented by reference numeral 43. Reference numeral 41 schematically represents the communication path between the cache arrangement 12 of the first die and the interconnect 43. This communication path may include the interface and/or any other circuitry between the cache arrangement 12 and the interconnect 43”).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify Targowski et al. as modified by Rauchfuss et al. and Delacruz et al. to include the die interface including an interconnect cache to cache data transmitted via the die interface as taught by Ryan et al. to provide data caching which exploits a property of data access known as temporal locality to accessible data more quickly and efficiently to increase the overall speed of data access.
Regarding claim 2, Targowski et al. as modified by Rauchfuss et al., Delacruz et al., and Ryan et al. teach all the limitation of claim 1, and Delacruz et al. further teach wherein the first semiconductor die and the one or more of the plurality of semiconductor dies couple with a package substrate via an interposer (Fig 1, par 0034, “FIG. 1 shows an example comparison between a conventional microelectronics package 100 with multiple conventional chiplets 102 on a conventional interposer 104, versus an example microelectronics package 106 rendered on an active base die 108, as described herein“, Fig 5, par 0069, par 0075-0076, “FIG. 5 shows an example active base die 108 as included within an example microelectronic device 502, such as an integrated circuit package 502. In an implementation, the native conductors 504 of dies, such as example chiplets 506 & 508 & 510 . . . n, connect directly to the active base die 108 instead of connecting to conventional components, such as industry standard interfaces 112, conventional interconnect layers, or passive interposers that conventionally connect chiplets and dies into a package”), and Ryan et al. further teach the die interface includes an interconnect buffer to temporarily store commands or data received via the interconnect fabric (par 0009-0010, “an input configured to receive a memory request from a second cache arrangement; a first cache memory for storing data; an output configured to provide a response to said memory request for said second cache arrangement ….. a second input configured to receive a response to said memory transaction; and a first cache arrangement comprising a first cache memory, a first cache controller, an input configured to receive said output from said second cache arrangement and an output configured to provide a response to said memory transaction to said second input of the second cache arrangement”, Fig 1, par 0026-0027, “As is schematically shown in FIG. 1, the network-on-chip 14 is connected via a communication path 18 to a cache arrangement 12. This will be described in more detail later. The network-on-chip 14 is connected to an interface 6 via a communication path 20. The communication paths 18 and 20 may be interconnects”, Fig 2, par 0041-0045, “A first cache arrangement 12 is provided on a first die with a second cache arrangement 25 on a second die. The first cache arrangement has a cache memory 56 and a cache controller 54 for controlling the cache memory. The interconnect between the two dies is represented by reference numeral 43. Reference numeral 41 schematically represents the communication path between the cache arrangement 12 of the first die and the interconnect 43. This communication path may include the interface and/or any other circuitry between the cache arrangement 12 and the interconnect 43”). This would be obvious for the same reason given in the rejection for claim 1.
Regarding claim 3, Targowski et al. as modified by Rauchfuss et al., Delacruz et al., and Ryan et al. teach all the limitation of claim 1, and Delacruz et al. further teach wherein the first semiconductor die and the one or more of the plurality of semiconductor dies of the multi-chip module have a 2.5-dimensional (2.5D) arrangement (par 0075, par 0087, par 0096, “DBI® (direct bond interconnect) hybrid bonding technology is applied. DBI bonding is currently available for fine-pitch bonding in 3D and 2.5D integrated circuit assembly, and can be applied to bond the native conductors 504 of the chiplets 506 & 508 & 510 . . . n to the active base die 108 (Ziptronix, Inc., an Xperi Corporation company, San Jose, Calif.)”). This would be obvious for the same reason given in the rejection for claim 1.
Regarding claim 4, Targowski et al. as modified by Rauchfuss et al., Delacruz et al., and Ryan et al. teach all the limitation of claim 1, and Delacruz et al. further teach wherein the first semiconductor die and the one or more of the plurality of semiconductor dies of the multi-chip module have a 3- dimensional (3D) arrangement (par 0075, par 0087, par 0096, “DBI® (direct bond interconnect) hybrid bonding technology is applied. DBI bonding is currently available for fine-pitch bonding in 3D and 2.5D integrated circuit assembly, and can be applied to bond the native conductors 504 of the chiplets 506 & 508 & 510 . . . n to the active base die 108 (Ziptronix, Inc., an Xperi Corporation company, San Jose, Calif.)”). This would be obvious for the same reason given in the rejection for claim 1.
Regarding claim 5, Targowski et al. as modified by Rauchfuss et al., Delacruz et al., and Ryan et al. teach all the limitation of claim 1, and further teach wherein the third cache memory of the second semiconductor die is accessible to the plurality of graphics processing resources of the first semiconductor die (Targowski et al.: par 0037, par 0048, “the processor 102 also uses an external cache (e.g., a Level-3 (L3) cache or Last Level Cache (LLC)) (not shown), which may be shared among processor cores 107 using known cache coherency techniques”, par 0043, “The internal cache units 204A-204N and shared cache units 206 represent a cache memory hierarchy within the processor 200. The cache memory hierarchy may include at least one level of instruction and data cache within each processor core and one or more levels of shared mid-level cache, such as a Level 2 (L2), Level 3 (L3), Level 4 (L4), or other levels of cache, where the highest level of cache before external memory is classified as the LLC. In some embodiments, cache coherency logic maintains coherency between the various cache units 206 and 204A-204N”, par 0108, “a shared L3 cache 875 is available to all graphics components, allowing the sharing of data without the use of main system memory”, Rauchfuss et al.: par 0017-0018, “The cache 108 may store data (e.g., including instructions) that are utilized by one or more components of the processor 102-1, such as the cores 106. For example, the cache 108 may locally cache data stored in a memory 114 for faster access by the components of the processor 102 (e.g., faster access by cores 106). As shown in FIG. 1, the memory 114 may communicate with the processors 102 via the interconnection 104. In an embodiment, the cache 108 (that may be shared) may be a mid-level cache (MLC), a last level cache (LLC), etc. Also, each of the cores 106 may include a level 1 (L1) cache (116-1) (generally referred to herein as “L1 cache 116”) or other levels of cache such as a level 2 (L2) cache. Moreover, various components of the processor 102-1 may communicate with the cache 108 directly, through a bus (e.g., the bus 112), and/or a memory controller or hub”).
Regarding claim 6, Targowski et al. as modified by Rauchfuss et al., Delacruz et al., and Ryan et al. teach all the limitation of claim 5, and Delacruz et al. further teach wherein the second semiconductor die includes multiple dies associated with the third cache memory (Targowski et al.: par 0037, par 0048, “the processor 102 also uses an external cache (e.g., a Level-3 (L3) cache or Last Level Cache (LLC)) (not shown), which may be shared among processor cores 107 using known cache coherency techniques”, par 0043, “The internal cache units 204A-204N and shared cache units 206 represent a cache memory hierarchy within the processor 200. The cache memory hierarchy may include at least one level of instruction and data cache within each processor core and one or more levels of shared mid-level cache, such as a Level 2 (L2), Level 3 (L3), Level 4 (L4), or other levels of cache, where the highest level of cache before external memory is classified as the LLC. In some embodiments, cache coherency logic maintains coherency between the various cache units 206 and 204A-204N”, par 0108, “a shared L3 cache 875 is available to all graphics components, allowing the sharing of data without the use of main system memory”, Rauchfuss et al.: Fig 1, par 0017-0018, “The cache 108 may store data (e.g., including instructions) that are utilized by one or more components of the processor 102-1, such as the cores 106. For example, the cache 108 may locally cache data stored in a memory 114 for faster access by the components of the processor 102 (e.g., faster access by cores 106). As shown in FIG. 1, the memory 114 may communicate with the processors 102 via the interconnection 104. In an embodiment, the cache 108 (that may be shared) may be a mid-level cache (MLC), a last level cache (LLC), etc. Also, each of the cores 106 may include a level 1 (L1) cache (116-1) (generally referred to herein as “L1 cache 116”) or other levels of cache such as a level 2 (L2) cache. Moreover, various components of the processor 102-1 may communicate with the cache 108 directly, through a bus (e.g., the bus 112), and/or a memory controller or hub”).
Regarding claim 7, Targowski et al. as modified by Rauchfuss et al., Delacruz et al., and Ryan et al. teach all the limitation of claim 1, and further teach wherein the second semiconductor die includes a memory controller coupled with the third cache memory, the memory controller to enable memory access on behalf of the plurality of graphics processing resources of the first semiconductor die (Targowski et al.: par 0037-0039, par 0042-0044, “FIG. 2 is a block diagram of an embodiment of a processor 200 having one or more processor cores 202A-202N, an integrated memory controller 214, and an integrated graphics processor 208. …. Each of processor cores 202A-202N includes one or more internal cache units 204A-204N. In some embodiments, each processor core also has access to one or more shared cached units 206”, par 0141, par 0150, “Storage may be provided by a flash memory subsystem 1260 including flash memory and a flash memory controller. Memory interface may be provided via a memory controller 1265 for access to SDRAM or SRAM memory devices. Some integrated circuits additionally include an embedded security engine 1270”, Rauchfuss et al.: Fig 1, par 0015, par 0017-0018, par 0046, “The cache 108 may store data (e.g., including instructions) that are utilized by one or more components of the processor 102-1, such as the cores 106. For example, the cache 108 may locally cache data stored in a memory 114 for faster access by the components of the processor 102 (e.g., faster access by cores 106). As shown in FIG. 1, the memory 114 may communicate with the processors 102 via the interconnection 104. In an embodiment, the cache 108 (that may be shared) may be a mid-level cache (MLC), a last level cache (LLC), etc. Also, each of the cores 106 may include a level 1 (L1) cache (116-1) (generally referred to herein as “L1 cache 116”) or other levels of cache such as a level 2 (L2) cache. Moreover, various components of the processor 102-1 may communicate with the cache 108 directly, through a bus (e.g., the bus 112), and/or a memory controller or hub”, Delacruz et al.: par 0052, “a microelectronic device 430 using the active base die 108 to host one or more memory controllers, for example, may be useful in fabricating or emulating various types of high bandwidth memory modules”).
Regarding claim 8, Targowski et al. as modified by Rauchfuss et al., Delacruz et al., and Ryan et al. teach all the limitation of claim 7, and Delacruz et al. further teach
wherein the second semiconductor die additionally includes a high bandwidth memory (HBM) (par 0052, “Example microelectronic device 430 includes chiplets 432 & 434 & 436 direct-bonded in a stack to an example active base die 108 of the same size or footprint as the chiplets 432 & 434 & 436. This example configuration of a microelectronic device 430 using the active base die 108 to host one or more memory controllers, for example, may be useful in fabricating or emulating various types of high bandwidth memory modules, such as DDR4 SDRAM, DDRS SDRAM, high bandwidth memory (HBM), hybrid memory cube (HMC), and so forth”). This would be obvious for the same reason given in the rejection for claim 1.
Regarding claim 9, Targowski et al. as modified by Rauchfuss et al., Delacruz et al., and Ryan et al. teach all the limitation of claim 1, and further teach wherein the third semiconductor die additionally includes a memory die associated with the third cache memory (Targowski et al.: par 0039, par 0048, “which facilitates communication between various processor components and a high-performance embedded memory module 218, such as an eDRAM module. In some embodiments, each of the processor cores 202A-202N and graphics processor 208 use embedded memory modules 218 as a shared Last Level Cache”, Rauchfuss et al.: Fig 1, par 0015, par 0017-0018, par 0046, “the processor 102-1 may include one or more processor cores 106-1 through 106-M (referred to herein as “cores 106,” or “core 106”), a cache 108, and/or a router 110. The processor cores 106 may be implemented on a single integrated circuit (IC) chip. Moreover, the chip may include one or more shared and/or private caches (such as cache 108), buses or interconnections (such as a bus or interconnection 112), graphics and/or memory controllers (such as those discussed with reference to FIGS. 6-8), or other components”, par 0052-0053, “The processors 702 and 704 may each include a local memory controller hub (MCH) 706 and 708 to enable communication with memories 710 and 712. The memories 710 and/or 712 may store various data such as those discussed with reference to the memory 612 of FIG. 6. … the processors 702 and 704 may each exchange data with a chipset 720 via individual PtP interfaces 722 and 724 using point-to-point interface circuits 726, 728, 730, and 732.”, Delacruz et al.: abstract, par 0052, “a microelectronic device 430 using the active base die 108 to host one or more memory controllers, for example, may be useful in fabricating or emulating various types of high bandwidth memory modules”).
Regarding claim 10, Targowski et al. as modified by Rauchfuss et al., Delacruz et al., and Ryan et al. teach all the limitation of claim 1, and further teach wherein the first cache memory is a level 1 (L1) cache memory, the second cache memory is a level 2 (L2) cache memory, and the third cache memory is a level 3 (L3) cache memory (Targowski et al.: par 0043, “The internal cache units 204A-204N and shared cache units 206 represent a cache memory hierarchy within the processor 200. The cache memory hierarchy may include at least one level of instruction and data cache within each processor core and one or more levels of shared mid-level cache, such as a Level 2 (L2), Level 3 (L3), Level 4 (L4), or other levels of cache, where the highest level of cache before external memory is classified as the LLC”, Venishetti et al.: Fig 1, par 0017-0018, “the cache 108 (that may be shared) may be a mid-level cache (MLC), a last level cache (LLC), etc. Also, each of the cores 106 may include a level 1 (L1) cache (116-1) (generally referred to herein as “L1 cache 116”) or other levels of cache such as a level 2 (L2) cache. Moreover, various components of the processor 102-1 may communicate with the cache 108 directly, through a bus (e.g., the bus 112), and/or a memory controller or hub”).
Regarding claim 11, Targowski et al. as modified by Rauchfuss et al., Delacruz et al., and Ryan et al. teach all the limitation of claim 1, and Delacruz et al. further teach wherein the first semiconductor die couples with the second semiconductor die or the third semiconductor die (Fig. 5, par 0008, par 0045, par 0069-0072, “FIG. 5 shows an example active base die 108 as included within an example microelectronic device 502, such as an integrated circuit package 502. In an implementation, the native conductors 504 of dies, such as example chiplets 506 & 508 & 510 . . . n, connect directly to the active base die 108 instead of connecting to conventional components, such as industry standard interfaces 112, conventional interconnect layers, or passive interposers that conventionally connect chiplets and dies into a package”). This would be obvious for the same reason given in the rejection for claim 1.
Regarding claim 12, Targowski et al. as modified by Rauchfuss et al., Delacruz et al., and Ryan et al. teach all the limitation of claim 1, and Delacruz et al. further teach wherein the first semiconductor die couples with the second semiconductor die and the third semiconductor die (Fig. 5, par 0008, par 0045, par 0069-0072, “FIG. 5 shows an example active base die 108 as included within an example microelectronic device 502, such as an integrated circuit package 502. In an implementation, the native conductors 504 of dies, such as example chiplets 506 & 508 & 510 . . . n, connect directly to the active base die 108 instead of connecting to conventional components, such as industry standard interfaces 112, conventional interconnect layers, or passive interposers that conventionally connect chiplets and dies into a package”). This would be obvious for the same reason given in the rejection for claim 1.
Regarding claim 13, Targowski et al. as modified by Rauchfuss et al., Delacruz et al., and Ryan et al. teach all the limitation of claim 1, and Targowski et al. further teach wherein the graphics multiprocessor has a single instruction multiple thread (SIMT) architecture (par 0078, “Each of the execution units 608A-608N is capable of multi-issue single instruction multiple data (SIMD) execution and multi-threaded operation enables an efficient execution environment in the face of higher latency memory accesses. Each hardware thread within each execution unit has a dedicated high-bandwidth register file and associated independent thread-state”).
Regarding claim 14, Targowski et al. teach apparatus comprising: a memory device; and a multi-chip module (Fig 12, par 0140-0141, “Exemplary integrated circuit 1200 includes one or more application processor(s) 1205 (e.g., CPUs), at least one graphics processor 1210, and may additionally include an image processor 1215 and/or a video processor 1220, any of which may be a modular IP core from the same or multiple different design facilities. Integrated circuit 1200 includes peripheral or bus logic including a USB controller 1225, UART controller 1230, an SPI/SDIO controller 1235, and an I.sup.2S/I.sup.2C controller 1240. Additionally, the integrated circuit can include a display device 1245 coupled to one or more of a high-definition multimedia interface (HDMI) controller 1250 and a mobile industry processor interface (MIPI) display interface 1255. Storage may be provided by a flash memory subsystem 1260 including flash memory and a flash memory controller. Memory interface may be provided via a memory controller 1265 for access to SDRAM or SRAM memory devices. Some integrated circuits additionally include an embedded security engine 1270”). The remaining limitations of the claim are similar in scope to claim 1 and rejected under the same rationale.
Regarding claims 15-20, Targowski et al. as modified by Rauchfuss et al., Delacruz et al., and Ryan et al. teach all the limitation of claim 14, the claims 15-20 are similar in scope to claims 2, 3+4, 5+6, 7, 8+9+11/12, and 10 and are rejected under the same rational.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Jin Ge whose telephone number is (571)272-5556. The examiner can normally be reached 8:00 to 5:00.
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, Jason Chan can be reached at (571)272-3022. 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.
JIN . GE
Examiner
Art Unit 2619
/JIN GE/Primary Examiner, Art Unit 2619