CONTROLLER FOR MANAGING A RESET OF A SUBSET OF THREADS IN A MULTI-THREAD SYSTEM
First Claim
1. A method of managing a reset of a first thread of a plurality of threads executed in an integrated circuit (IC) device, the method comprising:
- initiating a thread reset process for the first thread in response to detecting a reset request for the first thread, the thread reset process comprising de-allocating hardware resources of a controller that are allocated to the first thread, returning a specified value from the controller to a processor core of the IC device in response to a first command intended for the first thread, and dropping responses intended for the first thread from other devices;
completing the thread reset process in response to determining that all expected responses intended for the first thread have been either received or dropped; and
continuing to issue requests to other devices in response to commands from other threads of the plurality of threads and processing corresponding responses during the thread reset process.
31 Assignments
0 Petitions
Accused Products
Abstract
An integrated circuit device includes a processor core, and a controller. The processor core issues a command intended for a first thread of a plurality of threads. The controller initiates de-allocates hardware resources of the controller that are allocated to the first thread during a thread reset process for the first thread, returns a specified value to the processor core in response to the first command intended for the first thread during the thread reset process, drops responses intended for the first thread from other devices during the thread reset process, completes the thread reset process in response to a determination that all expected responses intended for the first thread have been either received or dropped, and continues to issue requests to other devices in response to commands from other threads of the plurality of threads and processing corresponding responses during the thread reset process.
10 Citations
21 Claims
-
1. A method of managing a reset of a first thread of a plurality of threads executed in an integrated circuit (IC) device, the method comprising:
-
initiating a thread reset process for the first thread in response to detecting a reset request for the first thread, the thread reset process comprising de-allocating hardware resources of a controller that are allocated to the first thread, returning a specified value from the controller to a processor core of the IC device in response to a first command intended for the first thread, and dropping responses intended for the first thread from other devices; completing the thread reset process in response to determining that all expected responses intended for the first thread have been either received or dropped; and continuing to issue requests to other devices in response to commands from other threads of the plurality of threads and processing corresponding responses during the thread reset process. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of managing a soft reset of a first thread of a plurality of threads executed in an integrated circuit (IC) device, the method comprising:
-
receiving, at a controller, a first command associated with the first thread from a processor core in the IC device; sending a first transmission packet associated with the first command to another device in communication with the IC device; receiving a first response packet associated with the first transmission packet from the another device; sending response data within the response packet to the processor core; initiating a thread reset process for the first thread in response to detecting a reset request for the first thread, the thread reset process comprising de-allocating hardware resources of a controller that are allocated to the first thread, dropping additional response packets associated with the first transmission packet from the another device, decrementing a counter associated with the first thread in response to dropping each of the additional response packets, returning a specified value from the controller to the processor core in response to a second command intended for the first thread, completing the thread reset process in response to determining that the counter is equal to a predetermined value, and continuing to issue requests to other devices in response to commands from other threads of the plurality of threads; and receiving, at the controller, a third command associated with the first thread from the processor core after the thread reset process is completed; and sending a second transmission packet associated with the second command to the another device. - View Dependent Claims (10, 11, 12, 13)
-
-
14. An integrated circuit (IC) device comprising:
-
at least one processor core, the processor core to issue commands intended for a plurality of threads; and a controller in communication with the processor core, the controller to initiate thread reset processes for threads in response to detected reset requests for the threads, the controller to de-allocate hardware resources of the controller that are allocated to a thread being reset during a thread reset process, the controller to return a specified value to the processor core to issue the commands to the thread in response to a command intended for the thread being reset during the thread reset process, the controller to drop responses intended for the thread being reset from other devices during the thread reset process, and the controller to complete the thread reset process in response to a determination that all expected responses intended for the thread being reset have been either received or dropped, during the thread reset of the thread the controller to issue requests to other devices in response to commands from other threads of the plurality of threads and the controller to process corresponding responses. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21)
-
Specification