Dynamic thread status retrieval using inter-thread communication
First Claim
1. A method for retrieving statuses for hardware threads in a network on a chip (NOC) processing system comprising a plurality of hardware threads configured in a plurality of interconnected integrated processor blocks, wherein each hardware thread includes an inbox and an outbox connected to a network of the NOC processing system with a direct inter-thread communication interface, the method comprising:
- processing a software thread at a first hardware thread that causes the first hardware thread to perform the operations of a master hardware thread;
communicating a configuration message to the inboxes of a subset of the hardware threads from the master hardware thread that associates each hardware thread of the subset as a slave hardware thread for the master hardware thread, wherein the configuration message configures status logic associated with each slave hardware thread to automatically communicate a status response to the master hardware thread responsive to receiving a status request from the master hardware thread;
determining a plurality of slave hardware threads to retrieve a status from based at least in part on the processing of the software thread by the master hardware thread;
communicating a status request to the plurality of slave hardware threads from the master hardware thread;
receiving the status request at the inbox of each of the plurality of slave hardware threads;
in response to receiving the status request at the inbox of each of the plurality of slave hardware threads, determining a status for each of the plurality of slave hardware threads with status logic configured at each of the plurality of slave hardware threads and communicating a status response for each of the plurality of slave hardware threads based at least in part on the determined status;
receiving the status responses from the plurality of slave hardware threads at the inbox of the master hardware thread; and
storing status information to a memory of the NOC processing system for each of the plurality of slave hardware threads based at least in part on the status response received from each of the plurality of hardware threads.
1 Assignment
0 Petitions
Accused Products
Abstract
A circuit arrangement, method, and program product for dynamically providing a status of a hardware thread/hardware resource independent of the operation of the hardware thread/hardware resource using an inter-thread communication protocol. A master hardware thread may be configured to communicate status requests to associated slave hardware threads and/or hardware resources. Each slave hardware thread/hardware resource may be configured with hardware logic configured to automatically determine status information for the slave hardware thread/hardware resource and communicate a status response to the master hardware thread independent of the operation of the slave hardware thread/hardware resource.
-
Citations
18 Claims
-
1. A method for retrieving statuses for hardware threads in a network on a chip (NOC) processing system comprising a plurality of hardware threads configured in a plurality of interconnected integrated processor blocks, wherein each hardware thread includes an inbox and an outbox connected to a network of the NOC processing system with a direct inter-thread communication interface, the method comprising:
-
processing a software thread at a first hardware thread that causes the first hardware thread to perform the operations of a master hardware thread; communicating a configuration message to the inboxes of a subset of the hardware threads from the master hardware thread that associates each hardware thread of the subset as a slave hardware thread for the master hardware thread, wherein the configuration message configures status logic associated with each slave hardware thread to automatically communicate a status response to the master hardware thread responsive to receiving a status request from the master hardware thread; determining a plurality of slave hardware threads to retrieve a status from based at least in part on the processing of the software thread by the master hardware thread; communicating a status request to the plurality of slave hardware threads from the master hardware thread; receiving the status request at the inbox of each of the plurality of slave hardware threads; in response to receiving the status request at the inbox of each of the plurality of slave hardware threads, determining a status for each of the plurality of slave hardware threads with status logic configured at each of the plurality of slave hardware threads and communicating a status response for each of the plurality of slave hardware threads based at least in part on the determined status; receiving the status responses from the plurality of slave hardware threads at the inbox of the master hardware thread; and storing status information to a memory of the NOC processing system for each of the plurality of slave hardware threads based at least in part on the status response received from each of the plurality of hardware threads.
-
-
2. A method for retrieving a status for a slave hardware thread in a network on a chip (NOC) processing system comprising a plurality of hardware threads configured in a plurality of interconnected integrated processor blocks, the method comprising:
-
receiving a status request for the slave hardware thread from a master hardware thread at an inbox associated with the slave hardware thread; in response to receiving the status request at the inbox, determining a status associated with the slave hardware thread using status logic associated with the slave hardware thread, wherein the status logic is configured to determine the status associated with the slave hardware thread without interrupting processing of the slave hardware thread; communicating a status response based on the status to the master hardware thread; receiving a configuration message at the slave hardware thread from the master hardware thread; processing the configuration message at the slave hardware thread to configure the status logic of the slave hardware thread to automatically communicate a status response responsive to receiving a status request to the master hardware thread; communicating the status request from the master hardware thread; and monitoring the receipt of the status response at the master hardware thread to determine whether the status response was received within a predefined amount of time from communicating the status request. - View Dependent Claims (3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method for retrieving a status for a slave hardware thread in a network on a chip (NOC) processing system comprising a plurality of hardware threads configured in a plurality of interconnected integrated processor blocks, the method comprising:
-
receiving a status request for the slave hardware thread from a master hardware thread at an inbox associated with the slave hardware thread; in response to receiving the status request at the inbox, determining a status associated with the slave hardware thread using status logic associated with the slave hardware thread, wherein the status logic is configured to determine the status associated with the slave hardware thread without interrupting processing of the slave hardware thread; and communicating a status response based on the status to the master hardware thread; receiving the status response at the master hardware thread; storing status information for the slave hardware thread to memory based at least in part on the received status response; prior to storing the status information for the slave hardware thread to memory, determining whether the status response is of a particular type by filtering the status response with a mask using thread status logic associated with the master hardware thread, wherein the status information is stored to memory responsive to determining that the status response is of the particular type; receiving a configuration message at the slave hardware thread from the master hardware thread; and processing the configuration message at the slave hardware thread to configure the status logic of the slave hardware thread to automatically communicate a status response responsive to receiving a status request to the master hardware thread. - View Dependent Claims (13, 14, 15, 16, 17, 18)
-
Specification