US 12,292,839 B2
Write merging on stores with different privilege levels
Naveen Bhoria, Plano, TX (US); Timothy David Anderson, University Park, TX (US); and Pete Hippleheuser, Murphy, TX (US)
Assigned to Texas Instruments Incorporated, Dallas, TX (US)
Filed by TEXAS INSTRUMENTS INCORPORATED, Dallas, TX (US)
Filed on Oct. 30, 2023, as Appl. No. 18/497,005.
Application 18/497,005 is a continuation of application No. 17/842,257, filed on Jun. 16, 2022, granted, now 11,803,486.
Application 17/842,257 is a continuation of application No. 17/744,810, filed on May 16, 2022, granted, now 11,762,780, issued on Sep. 19, 2023.
Application 17/744,810 is a continuation of application No. 16/882,387, filed on May 22, 2020, granted, now 11,334,494.
Claims priority of provisional application 62/852,494, filed on May 24, 2019.
Prior Publication US 2024/0078190 A1, Mar. 7, 2024
Int. Cl. G06F 12/128 (2016.01); G06F 9/30 (2018.01); G06F 9/54 (2006.01); G06F 11/10 (2006.01); G06F 12/02 (2006.01); G06F 12/0802 (2016.01); G06F 12/0804 (2016.01); G06F 12/0806 (2016.01); G06F 12/0811 (2016.01); G06F 12/0815 (2016.01); G06F 12/0817 (2016.01); G06F 12/0853 (2016.01); G06F 12/0855 (2016.01); G06F 12/0864 (2016.01); G06F 12/0884 (2016.01); G06F 12/0888 (2016.01); G06F 12/0891 (2016.01); G06F 12/0895 (2016.01); G06F 12/0897 (2016.01); G06F 12/1027 (2016.01); G06F 12/12 (2016.01); G06F 12/121 (2016.01); G06F 12/126 (2016.01); G06F 12/127 (2016.01); G06F 13/16 (2006.01); G06F 15/80 (2006.01); G11C 5/06 (2006.01); G11C 7/10 (2006.01); G11C 7/22 (2006.01); G11C 29/42 (2006.01); G11C 29/44 (2006.01)
CPC G06F 12/128 (2013.01) [G06F 9/3001 (2013.01); G06F 9/30043 (2013.01); G06F 9/30047 (2013.01); G06F 9/546 (2013.01); G06F 11/1064 (2013.01); G06F 12/0215 (2013.01); G06F 12/0238 (2013.01); G06F 12/0292 (2013.01); G06F 12/0802 (2013.01); G06F 12/0804 (2013.01); G06F 12/0806 (2013.01); G06F 12/0811 (2013.01); G06F 12/0815 (2013.01); G06F 12/082 (2013.01); G06F 12/0853 (2013.01); G06F 12/0855 (2013.01); G06F 12/0864 (2013.01); G06F 12/0884 (2013.01); G06F 12/0888 (2013.01); G06F 12/0891 (2013.01); G06F 12/0895 (2013.01); G06F 12/0897 (2013.01); G06F 12/1027 (2013.01); G06F 12/12 (2013.01); G06F 12/121 (2013.01); G06F 12/126 (2013.01); G06F 12/127 (2013.01); G06F 13/1605 (2013.01); G06F 13/1642 (2013.01); G06F 13/1673 (2013.01); G06F 13/1689 (2013.01); G06F 15/8069 (2013.01); G11C 5/066 (2013.01); G11C 7/10 (2013.01); G11C 7/1015 (2013.01); G11C 7/106 (2013.01); G11C 7/1075 (2013.01); G11C 7/1078 (2013.01); G11C 7/1087 (2013.01); G11C 7/222 (2013.01); G11C 29/42 (2013.01); G11C 29/44 (2013.01); G06F 2212/1016 (2013.01); G06F 2212/1021 (2013.01); G06F 2212/1024 (2013.01); G06F 2212/1041 (2013.01); G06F 2212/1044 (2013.01); G06F 2212/301 (2013.01); G06F 2212/454 (2013.01); G06F 2212/603 (2013.01); G06F 2212/6032 (2013.04); G06F 2212/6042 (2013.01); G06F 2212/608 (2013.01); G06F 2212/62 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A device comprising:
a processor configured to perform a first set of instructions associated with a first privilege level and a second set of instructions associated with a second privilege level;
a cache controller coupled to the processor;
a cache memory coupled to the cache controller and that includes a cache line; and
a second memory coupled to the cache controller, wherein the cache controller is configured to:
receive a write command associated with writing a first set of data to the cache line, wherein the first set of data is associated with the first privilege level; and
based on the write command:
determine whether the cache line currently stores a second set of data associated with the second privilege level; and
when the cache line stores the second set of data:
merge the first set of data with the second set of data to produce a merged set of data;
store the merged set of data in the cache line;
determine a merged indicator that specifies a third privilege level associated with the merged set of data; and
store the merged indicator in the second memory.