Patent ID: 8762761
Filing Date: 2014-06-24
Classification: G06F,Y02D

Abstract:
1. A method comprising: receiving a request, by a power gating arbiter of an integrated circuit from one or more engine level power gating controllers of the integrated circuit, to turn on or off a corresponding engine of the one or more engine level power gating controllers; sequencing, by the power gating arbiter, the received requests from the one or more engine level power gating controllers for servicing in a predetermined order, wherein sequencing the received requests includes; iteratively prioritizing the received requests, sending the indication to turn on or off the corresponding engine, and receiving the indication that the corresponding engine has completed power on or off, for each received request after receiving the indication from the previously serviced engine level power gating controller that its corresponding engine is turned on or off; causing, by the given engine level power gating controller, the corresponding engine of the given engine level power gating controller to turn on or off in a predetermined sequence after receiving the indication to turn on or of the corresponding engine; determining, by the given engine level power gating controller, that the corresponding engine of the given engine level power gating controller is idle for at least a predetermined threshold; receiving a request, by the power gating arbiter from one or more engine level power gating controllers of the integrated circuit, to turn off the corresponding engine of the one or more engine level power gating controllers if the corresponding engine is idle for at least the predetermined threshold; sequencing, by the power gating arbiter, the received requests from the one or more engine level power gating controllers to turn off the corresponding engine for servicing in the predetermined order; sending, according to the sequencing of the received turn off requests, an indication, from the power gating arbiter to the given engine level power gating controller, to turn off the corresponding engine of the given engine level power gating controller; and causing, by the given engine level power gating controller, the corresponding engine of the given engine level power gating controller to turn off in the predetermined, sequence.