US 11,989,556 B2
Detecting infinite loops in a programmable atomic transaction
Tony Brewer, Plano, TX (US)
Assigned to Micron Technology, Inc., Boise, ID (US)
Filed by Micron Technology, Inc., Boise, ID (US)
Filed on Feb. 20, 2023, as Appl. No. 18/111,744.
Application 18/111,744 is a continuation of application No. 17/074,834, filed on Oct. 20, 2020, granted, now 11,586,439.
Prior Publication US 2023/0205524 A1, Jun. 29, 2023
Int. Cl. G06F 9/30 (2018.01); G06F 9/32 (2018.01); G06F 9/46 (2006.01); G06F 12/0815 (2016.01); G06F 12/0875 (2016.01); G06F 15/78 (2006.01)
CPC G06F 9/3004 (2013.01) [G06F 9/325 (2013.01); G06F 9/466 (2013.01); G06F 12/0815 (2013.01); G06F 12/0875 (2013.01); G06F 15/781 (2013.01)] 20 Claims
OG exemplary drawing
 
1. An apparatus comprising:
a memory controller;
a memory array coupled to the memory controller;
a programmable atomic unit coupled to the memory controller and comprising a processor, the processor configured to perform operations comprising:
receive a request from a requesting processor, the request requesting execution of a programmable atomic transaction at the programmable atomic unit of the memory controller, the request including an identifier of the programmable atomic transaction;
locate instructions of the programmable atomic transaction in a memory of the programmable atomic unit based upon the identifier;
execute the instructions of the programmable atomic transaction, starting at a first instruction, the executing comprising incrementing an instruction counter for every executed instruction;
determine that the instruction counter exceeded a specified instruction execution limit; and
responsive to determining that the instruction counter exceeded the specified instruction execution limit, terminating execution of the programmable atomic transaction.