US 11,860,794 B2
Generational physical address proxies
John G. Favor, San Francisco, CA (US); Srivatsan Srinivasan, Cedar Park, TX (US); and Robert Haskell Utley, Austin, TX (US)
Assigned to Ventana Micro Systems Inc., Cupertino, CA (US)
Filed by Ventana Micro Systems Inc., Cupertino, CA (US)
Filed on May 18, 2022, as Appl. No. 17/747,625.
Application 17/747,625 is a continuation in part of application No. 17/370,009, filed on Jul. 8, 2021, granted, now 11,481,332.
Application 17/370,009 is a continuation in part of application No. 17/351,927, filed on Jun. 18, 2021, granted, now 11,416,406.
Application 17/370,009 is a continuation in part of application No. 17/351,927, filed on Jun. 18, 2021.
Application 17/370,009 is a continuation in part of application No. 17/774,625.
Application 17/774,625 is a continuation in part of application No. 17/351,946, filed on Jun. 18, 2021, granted, now 11,397,686.
Application 17/370,009 is a continuation in part of application No. 17/351,946, filed on Jun. 18, 2021, granted, now 11,397,686.
Application 17/370,009 is a continuation in part of application No. 17/774,625.
Application 17/774,625 is a continuation in part of application No. 17/315,262, filed on May 7, 2021, granted, now 11,416,400.
Application 17/351,927 is a continuation in part of application No. 17/315,262, filed on May 7, 2021, granted, now 11,416,400.
Application 17/370,009 is a continuation in part of application No. 17/315,262, filed on May 7, 2021, granted, now 11,416,400.
Application 17/351,946 is a continuation in part of application No. 17/315,262, filed on May 7, 2021, granted, now 11,416,400.
Claims priority of provisional application 63/331,487, filed on Apr. 15, 2022.
Claims priority of provisional application 63/271,934, filed on Oct. 26, 2021.
Prior Publication US 2022/0358052 A1, Nov. 10, 2022
Int. Cl. G06F 12/12 (2016.01); G06F 12/0811 (2016.01)
CPC G06F 12/12 (2013.01) [G06F 12/0811 (2013.01)] 23 Claims
OG exemplary drawing
 
1. A microprocessor, comprising:
a physically-indexed physically-tagged second-level set-associative cache, wherein each entry in the second-level cache is uniquely identified by a set index and a way of the second-level cache;
wherein each entry of the second-level cache holds a generational identifier (GENID);
wherein the second-level cache is configured to:
detect a miss of a physical memory line address in the second-level cache, wherein a set index that selects a set of the second-level cache is obtained from the physical memory line address;
pick a way of the selected set for replacement;
increment the GENID held in the entry in the picked way of the selected set;
form a physical address proxy (PAP) for the physical memory line address with the obtained set index and the picked way, wherein the PAP uniquely identifies the entry in the second-level cache picked for replacement; and
form a generational PAP (GPAP) for the physical memory line address with the PAP and the incremented GENID held in the entry in the picked way of the selected set; and
a load/store unit configured to make available the GPAP as a proxy of the physical memory line address for comparisons with GPAPs of other physical memory line addresses, rather than making comparisons of the physical memory line address itself with the other physical memory line addresses, to determine whether the physical memory line address matches the other physical memory line addresses.