Delegating a poll operation to another device
First Claim
Patent Images
1. An apparatus comprising:
- a core to generate a registration message to delegate a poll operation to an input/output (IO) interconnect;
the IO interconnect coupled to the core, the IO interconnect to include a poll table having a plurality of entries each having a first address field to store a first address to be received in a registration message, a destination address field to store a destination address in a system memory to be received in the registration message, and an initial value field to store an initial value associated with the first address received in the registration message; and
at least one device coupled to the IO interconnect to perform an operation for an application to be executed on the core and to include at least one status register, the IO interconnect including a poll delegation logic to poll the at least one status register responsive to information in a poll table entry, and to issue a write transaction to the destination address if a polled value of the at least one status register differs from an initial value of the at least one status register stored in the poll table entry.
0 Assignments
0 Petitions
Accused Products
Abstract
In one embodiment, the present invention includes a method for handling a registration message received from a host processor, where the registration message delegates a poll operation with respect to a device from the host processor to another component. Information from the message may be stored in a poll table, and the component may send a read request to poll the device and report a result of the poll to the host processor based on a state of the device. Other embodiments are described and claimed.
-
Citations
16 Claims
-
1. An apparatus comprising:
-
a core to generate a registration message to delegate a poll operation to an input/output (IO) interconnect; the IO interconnect coupled to the core, the IO interconnect to include a poll table having a plurality of entries each having a first address field to store a first address to be received in a registration message, a destination address field to store a destination address in a system memory to be received in the registration message, and an initial value field to store an initial value associated with the first address received in the registration message; and at least one device coupled to the IO interconnect to perform an operation for an application to be executed on the core and to include at least one status register, the IO interconnect including a poll delegation logic to poll the at least one status register responsive to information in a poll table entry, and to issue a write transaction to the destination address if a polled value of the at least one status register differs from an initial value of the at least one status register stored in the poll table entry. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system comprising:
-
a system on a chip (SoC) including; at least one core including a first logic to execute a first instruction to set up a monitored address in a memory, a second logic to cause the at least one core to enter a low power state when a predetermined instruction follows the first instruction, and a third logic to monitor for a write to the monitored address; a first input/output (TO) interconnect to include a poll table to store a tuple including an identifier of a register in an intellectual property (IP) block coupled to the first IO interconnect, the monitored address in the memory, and an initial value associated with the register, and a delegation logic to receive a delegation message from the at least one core, and based on the tuple, obtain a current value of the register and responsive to a difference between the current value and the initial value, issue a coherent write operation to write data corresponding to the current value to the monitored address in the memory via a message signaling interrupt; and the IP block coupled to the first IO interconnect to include the register and to perform a function for an application to execute on the at least one core; and the memory coupled to the SoC via a memory interconnect, wherein the third logic is to cause the at least one core to exit the low power state responsive to the data being written to the monitored address. - View Dependent Claims (10, 11, 12)
-
-
13. A method comprising:
-
receiving a registration message from a host processor in an interconnect coupled between the host processor and a device, the registration message to delegate a poll operation with respect to the device to the interconnect; storing information regarding a device monitored location, a memory monitored address, and an initial value of the device monitored location in a poll table associated with the interconnect; sending, via a poll delegation logic of the interconnect, a read request to the device to poll the device, comparing the initial value with a device value obtained from the device monitored location, and reporting a result of the poll to the host processor if the device value is different than the initial value; issuing a write request from the interconnect to the memory monitored address in a system memory to report the result; issuing a message signaling interrupt from the interconnect to the system memory to issue the write request; and wherein the host processor is placed into a low power state after sending the registration message, and responsive to the write to the memory monitored address, the host processor is to exit the low power state. - View Dependent Claims (14, 15, 16)
-
Specification