IP Library Granted Patent US 12,591,946
Granted Patent B2
US 12,591,946 · App. 18/736,418 · Granted Mar 31, 2026

Detecting error in safety-critical GPU by monitoring for response to an instruction

Inventors: Mario Sopena Novales (Hertfordshire, GB); Philip Morris (Hertfordshire, GB)
Assignee: Imagination Technologies Limited
G06T1/20G06F9/44505G06T1/60G06F11/1004
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,591,946
App. No.
18/736,418
Granted
Mar 31, 2026
Kind
B2
Abstract

A method of detecting an error at a graphics processing unit causes an instruction including a request for a response from a graphics processing unit to be provided to the graphics processing unit. A timer being configured to expire after a time period is initialised, and during the time period the graphics processing unit is monitored for the response from the graphics processing unit. An error is determined to have occurred in response to determining that no response was received from the graphics processing unit before the timer expired.

Claims (43)

1 . A method of detecting an error at a graphics processing unit, the method comprising:

causing an instruction to be provided to the graphics processing unit, said instruction comprising a request for a response to be sent from the graphics processing unit to a safety controller;

initialising a timer, said timer being configured to expire after a time period;

monitoring, during said time period, for the response from the graphics processing unit; and

determining that an error has occurred in response to determining that the response is not received from the graphics processing unit before the timer expires.

2 . The method as claimed in claim 1 , wherein the method further comprises causing the graphics processing unit to be reset in response to determining that the error has occurred.

3 . The method as claimed in claim 1 , wherein the graphics processing unit is configured to perform safety-critical rendering.

4 . The method as claimed in claim 1 , wherein the instruction is for initialising rendering of graphical data at the graphics processing unit, and wherein the time period is determined in dependence on the graphical data to be rendered.

5 . The method as claimed in claim 4 , wherein the graphical data is safety critical graphical data.

6 . The method as claimed in claim 1 , wherein the instruction is for initialising rendering of graphical data at the graphics processing unit, and wherein the time period is determined in dependence on the expected duration of the graphical processing being initialised.

7 . The method as claimed in claim 1 , wherein the timer is initialised when the instruction is sent to the graphics processing unit from the safety controller.

8 . The method as claimed in claim 1 , wherein the method comprises determining by the safety controller that the error has occurred in response to determining that the response is not received from the graphics processing unit before the timer expires.

9 . A graphics processing system comprising a graphics processing unit and a safety controller, in which the safety controller is configured to:

cause an instruction to be provided to the graphics processing unit, said instruction comprising a request for a response to be sent from the graphics processing unit to the safety controller;

initialise a timer, said timer being configured to expire after a time period;

monitor, during said time period, for the response from the graphics processing unit; and

determine that an error has occurred if the response is not received from the graphics processing unit before the timer expires.

10 . A graphics processing system comprising a graphics processing unit and a safety controller, in which the safety controller is configured to:

generate configuration data for the graphics processing unit;

cause an instruction to be provided to the graphics processing unit, said instruction comprising the configuration data and a request for a response to be sent from the graphics processing unit to the safety controller;

initialise a timer, said timer being configured to expire after a time period;

monitor, during the time period, for the response from the graphics processing unit;

configure the graphics processing unit in accordance with the configuration data;

determine whether the graphics processing unit is correctly configured in accordance with the configuration data; and

determine that an error has occurred in response to determining that:

(i) the graphics processing unit is not correctly configured in accordance with the configuration data; or

(ii) the response is not received from the graphics processing unit before the timer expires.

11 . The graphics processing system as claimed in claim 10 , in which the safety controller is further configured to cause the graphics processing unit to be reset in response to determining that the error has occurred.

12 . The graphics processing system as claimed in claim 10 , wherein the safety controller is external to the graphics processing unit.

13 . The graphics processing system as claimed in claim 10 , wherein the configuration data comprises one or more register entries to be written into one or more registers of the graphics processing unit, said configuration data specifying a configuration to be adopted by the graphics processing unit.

14 . The graphics processing system as claimed in claim 13 , in which the safety controller is further configured to determine whether the graphics processing unit is correctly configured in accordance with the configuration data by determining whether the configuration data has been correctly written into one or more registers of the graphics processing unit.

15 . The graphics processing system as claimed in claim 13 , in which the safety controller is further configured to determine whether the graphics processing unit has been correctly configured in accordance with the configuration data by:

reading the one or more register entries corresponding to the configuration data back from each of the one or more registers of the graphics processing unit after the graphics processing unit has been configured; and

comparing the one or more register entries read back from each register with an expected data entry for that register specified by the configuration data.

16 . The graphics processing system as claimed in claim 13 , in which the safety controller is further configured to determine whether the graphics processing unit has been correctly configured in accordance with the configuration data by:

reading the one or more register entries corresponding to the configuration data back from each of the one or more registers of the graphics processing unit after the graphics processing unit has been configured;

performing a checksum over the one or more register entries read back from the one or more registers;

performing a checksum over the configuration data; and

comparing the results of said checksums.

17 . The graphics processing system as claimed in claim 10 , wherein the graphics processing unit is configured to perform safety-critical rendering.

18 . The graphics processing system as claimed in claim 10 , wherein the configuration data is for initialising rendering of graphical data at the graphics processing unit.

19 . The graphics processing system as claimed in claim 18 , wherein the graphical data is safety critical graphical data.

20 . The graphics processing system as claimed in claim 10 , wherein the timer is initialised when the instruction is sent from the safety controller.

Assignments (1)
SECURITY INTEREST Recorded Jul 31, 2024
From: IMAGINATION TECHNOLOGIES LIMITED
To: FORTRESS INVESTMENT GROUP (UK) LTD
Reel/Frame 068221/0001 →
Priority Claims (1)
GB 2002897 · Feb 28, 2020 · national
Continuity (3)
Continuation 18100510 · Jan 23, 2023
Continuation 17187844 · Feb 28, 2021
Related Publication 20240320781A1 · Sep 26, 2024
References Cited (33)
US 8250412B2 · Cheng · 2012 [cited by examiner]
US 9298556B2 · Mueller · 2016 [cited by applicant]
US 10673439B1 · Ahmad et al. · 2020 [cited by applicant]
US 11587197B2 · Novales et al. · 2023 [cited by applicant]
US 20120317576A1 · Mueller et al. · 2012 [cited by applicant]
US 20140267328A1 · Banack · 2014 [cited by examiner]
US 20140325274A1 · Mueller · 2014 [cited by applicant]
US 20150235338A1 · Alla et al. · 2015 [cited by applicant]
US 20160253230A1 · Hui et al. · 2016 [cited by applicant]
US 20160295205A1 · Lim et al. · 2016 [cited by applicant]
US 20170154402A1 · Viggers et al. · 2017 [cited by applicant]
US 20170177458A1 · Viggers et al. · 2017 [cited by applicant]
US 20180121282A1 · Gonzalez et al. · 2018 [cited by applicant]
US 20180231609A1 · Jain et al. · 2018 [cited by applicant]
US 20190139263A1 · Gruber et al. · 2019 [cited by applicant]
US 20190155678A1 · Hsiong et al. · 2019 [cited by applicant]
US 20190171538A1 · Gulati et al. · 2019 [cited by applicant]
US 20190196926A1 · Jong et al. · 2019 [cited by applicant]
US 20190197651A1 · Johnson et al. · 2019 [cited by applicant]
US 20190250974A1 · Van De et al. · 2019 [cited by applicant]
US 20210182432A1 · Margalit · 2021 [cited by applicant]
US 20210279834A1 · Novales et al. · 2021 [cited by applicant]
CN 103946888A · 2014 [cited by applicant]
CN 105786426A · 2016 [cited by applicant]
CN 105809728A · 2016 [cited by applicant]
CN 107025681A · 2017 [cited by applicant]
CN 108305318A · 2018 [cited by applicant]
CN 113327189A · 2021 [cited by applicant]
DE 102015200292A1 · 2016 [cited by applicant]
EP 3355188A1 · 2018 [cited by applicant]
Anonymous, Checksum—Wikipedia, Apr. 15, 2015. [cited by applicant]
Rodriguez et al., “Testing Permanent Faults in Pipeline Registers of GPGPUs: A Multi-kemel Approach,” 25th Int'l Symposium on On-line Testing and Robust System Design, pp. 97-102 (2019). [cited by applicant]
*(note: copies of NPL in parent application(s)). [cited by applicant]