IP Library Granted Patent US 10,318,406
Granted Patent B2
US 10,318,406 · App. 15/440,601 · Granted Jun 11, 2019

Determine soft error resilience while verifying architectural compliance

Inventors: Ophir Erez (Haifa, IL); Bodo Hoppe (Tamm, DE); Divya K. Joshi (Bangalore, IN); Gerrit Koch (Ammerbuch, DE); Parminder Singh (Bangalore, IN)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G06F11/3636
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 10,318,406
App. No.
15/440,601
Granted
Jun 11, 2019
Kind
B2
Abstract

Verifying architectural compliance of a processor core using processor-sparing functions. A simulation of a model for a register-transfer level design of the processor core is performed. A first state of the model is dumped, when no error exists. An error is injected in the model. A second state of the model is dumped, after the injected error is detected in the simulation. Upon dumping the second state, the model is reset and initialized with the first state. State information of the second state is loaded in the reset and initialized model.

Claims (44)

1. A computer program product for verifying architectural compliance of a processor core using processor-sparing functions of the processor core, the computer program product comprising:

a computer readable storage medium readable by a processing circuit and storing instructions for performing a method comprising:

performing a simulation of a model for a register-transfer level design of the processor core, wherein the simulation of the model is monitored by at least one test bench monitor;

dumping a first state of said model, based on no error existing;

injecting an error in said model, wherein the at least one test bench monitor is turned off based on performing the injecting the error into the model;

dumping a second state of said model, based on detecting the error in the simulation;

resetting and initializing said model with the first state, based on dumping the second state, wherein the at least one test bench monitor is re-enabled based on the resetting and initializing of the model; and

loading state information of the second state in the reset and initialized model.

2. The computer program product of claim 1 , wherein the dumping the first state of the model comprises:

waiting for a random cycle of the simulation;

suspending the performing the simulation during the dumping the first state of the model; and

resuming the performing the simulation after the dumping the first state has ended.

3. The computer program product of claim 1 , wherein the dumping the first state of the model is performed at a random time before the injecting the error.

4. The computer program product of claim 3 , wherein a basis of the random time is defined by a set of simulation cycles.

5. The computer program product of claim 3 , wherein the random time is a random point in time between two predefined points in time, the two predefined points in time being two different points in time.

6. The computer program product of claim 1 , wherein the error is a soft error.

7. The computer program product of claim 1 , wherein the injecting the error is performed at a random point in time while the simulation is performed.

8. The computer program product of claim 1 , wherein the dumping the first state is performed based on starting the performing the simulation.

9. The computer program product of claim 1 , wherein the resetting and initializing the model comprises reloading the first state and synchronizing the model with the first state.

10. The computer program product of claim 1 , wherein the state information of the second state is an architectural state of the model.

11. The computer program product of claim 1 , wherein the method further comprises resuming the simulation from the second state of the model based on loading the state information of the second state.

12. The computer program product of claim 11 , wherein the method further comprises performing an architectural compliance check after the simulation has ended, wherein a successful architectural compliance check indicates a successful processor-sparing function of the processor core.

13. The computer program product of claim 1 , wherein the re-enabling the at least one test bench monitor comprises synchronizing the at least one test bench monitor with the simulation of said model.

14. A computer system for verifying architectural compliance of a processor core using processor-sparing functions of the processor core, the computer system comprising:

a memory; and

a processor in communication with the memory, wherein the computer system is configured to perform a method, said method comprising:

performing a simulation of a model for a register-transfer level design of the processor core, wherein the simulation of the model is monitored by at least one test bench monitor;

dumping a first state of said model, based on no error existing;

injecting an error in said model, wherein the at least one test bench monitor is turned off based on performing the injecting the error into the model;

dumping a second state of said model, based on detecting the error in the simulation;

resetting and initializing said model with the first state, based on dumping the second state, wherein the at least one test bench monitor is re-enabled based on the resetting and initializing of the model; and

loading state information of the second state in the reset and initialized model.

15. The computer system of claim 14 , wherein the method further comprises resuming the simulation from the second state of the model based on loading the state information of the second state.

16. The computer system of claim 14 , wherein the method further comprises performing an architectural compliance check after the simulation has ended, wherein a successful architectural compliance check indicates a successful processor-sparing function of the processor core.

17. The computer system of claim 14 , wherein the re-enabling the at least one test bench monitor comprises synchronizing the at least one test bench monitor with the simulation of said model.

18. A computer-implemented method of verifying architectural compliance of a processor core using processor-sparing functions of the processor core, the computer-implemented method comprising:

performing a simulation of a model for a register-transfer level design of the processor core, wherein the simulation of the model is monitored by at least one test bench monitor;

dumping a first state of said model, based on no error existing;

injecting an error in said model, wherein the at least one test bench monitor is turned off based on performing the injecting the error into the mode;

dumping a second state of said model, based on detecting the error in the simulation;

resetting and initializing said model with the first state, based on dumping the second state, wherein the at least one test bench monitor is re-enabled based on the resetting and initializing of the model; and

loading state information of the second state in the reset and initialized model.

19. The computer-implemented method of claim 18 , further comprising resuming the simulation from the second state of the model based on loading the state information of the second state.

20. The computer-implemented method of claim 18 , further comprising performing an architectural compliance check after the simulation has ended, wherein a successful architectural compliance check indicates a successful processor-sparing function of the processor core.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 23, 2017
From: EREZ, OPHIR; HOPPE, BODO; JOSHI, DIVYA K.; KOCH, GERRIT; SINGH, PARMINDER
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 041360/0301 →
Continuity (1)
Related Publication 20180239691A1 · Aug 23, 2018
Cited By (1)
US 12,475,009