US12216518B2ActiveUtilityA1

Power saving in a network device

Assignee: MARVELL ASIA PTE LTDPriority: Feb 23, 2023Filed: Feb 23, 2023Granted: Feb 4, 2025
Est. expiryFeb 23, 2043(~16.6 yrs left)· nominal 20-yr term from priority
G06F 1/3203G06F 1/3209
55
PatentIndex Score
0
Cited by
17
References
18
Claims

Abstract

A first component of a network device determines that the first component is to provide packet data to a second component of the network device for processing by the second component. In connection with determining that the first component is to provide packet data to the second component of the network device, the first component prompts the second component to activate a clock network of the second component. In connection with prompting the second component to activate the clock network, the first component sends the packet data to the second component to be processed by the second component. The first component determines when the second component has completed processing of the packet data, and prompts the second component to deactivate the clock network in response to determining that the second component has completed processing of the packet data.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method for power saving in a network device, the method comprising:
 determining, at a first component implemented on an integrated circuit (IC) chip of the network device, that the first component is to provide packet data to a second component implemented on the IC chip of the network device for processing by the second component; 
 in connection with determining that the first component is to provide packet data to the second component of the network device, prompting, by the first component, the second component to activate a clock network of the second component; 
 in connection with prompting the second component to activate the clock network, sending the packet data from the first component to the second component to be processed by the second component; 
 determining, at the first component, when the second component has completed processing of the packet data; and 
 in response to determining that the second component has completed processing of the packet data, prompting, by the first component, the second component to deactivate the clock network. 
 
     
     
       2. The method of  claim 1 , further comprising:
 starting at a timer of the first component in connection with sending the packet data to the second component; 
 wherein determining when the second component has completed processing of the packet data comprises determining that the second component has completed processing of the packet data in connection with the timer expiring. 
 
     
     
       3. The method of  claim 2 , further comprising:
 retrieving from a memory an indication of a time period corresponding to a time required by the second component to perform a packet data processing function; and 
 in connection with retrieving the indication of the time period from the memory, configuring the timer to measure the time period. 
 
     
     
       4. The method of  claim 2 , wherein:
 the second component is a memory device; 
 sending the packet data from the first component to the second component is performed in connection with a write command from the first component to the memory device to write the packet data to the memory device; 
 starting the timer of the first component is performed in connection with sending the write command to the memory device; and 
 determining that the second component has completed processing of the packet data in connection with the timer expiring comprises determining that the memory device has completed writing the packet data in connection with the timer expiring. 
 
     
     
       5. The method of  claim 1 , further comprising:
 receiving, at the first component, a signal from the second component that indicates an availability of the second component to process packet data; 
 wherein determining when the second component has completed processing of the packet data comprises determining that the second component has completed processing of the data using the signal from the second component that indicates an availability of the second component to process packet data. 
 
     
     
       6. The method of  claim 1 , further comprising:
 maintaining, at the first component, a credit counter to measure an availability of the second component to process packet data; 
 wherein determining when the second component has completed processing of the packet data comprises determining that the second component has completed processing of the data using the credit counter. 
 
     
     
       7. A method for power saving in a network device, the method comprising:
 determining, at a component implemented on an integrated circuit (IC) of the network device, that the component is to retrieve packet data stored in a memory implemented on the IC of the network device; 
 in connection with determining that the component is to is to retrieve packet data stored in the memory of the network device, prompting, by the component, the memory to activate a clock network of the memory; 
 in connection with prompting the memory to activate the clock network, sending a read command from the component to the memory to be processed by the memory; 
 determining, at the component, when the memory has completed processing of the read command; and 
 in response to determining that the memory has completed processing of the read command, prompting, by the component, the memory to deactivate the clock network. 
 
     
     
       8. The method of  claim 7 , further comprising:
 starting at a timer of the first component in connection with sending the read command to the memory; 
 wherein determining when the memory has completed processing of the read command comprises determining that the memory has completed processing of the read command in connection with the timer expiring. 
 
     
     
       9. The method of  claim 8 , wherein the memory is a first memory and wherein the method further comprises:
 retrieving from a second memory configuration information that includes an indication of a time period corresponding to a time required by the first memory to execute the read command; and 
 in connection with retrieving the configuration information that includes the indication of the time period from the second memory, configuring the timer to measure the time period. 
 
     
     
       10. The method of  claim 8 , wherein the memory is a first memory and wherein the method further comprises:
 retrieving from a second memory configuration information that includes an indication that a control signal for controlling activation and deactivation of the clock network is to be generated based on the timer expiring; and 
 generating the control signal is in response to the configuration information that includes the indication that the control signal is to be generated based on the timer expiring. 
 
     
     
       11. A network device, comprising:
 a memory configured to store packet data corresponding to packets received via a plurality of network interfaces of the network device; 
 a packet processor configured to process packets received via the plurality of network interfaces of the network device, the packet processor including a clock network; and 
 circuitry configured to:
 manage queues in the memory, 
 selectively release to the packet processor packet data in queues in the memory for processing by the packet processor, 
 in connection with determining that packet data is to be released to the packet processor, prompt the packet processor to activate the clock network of the packet processor, 
 in connection with prompting the packet processor to activate the clock network, releasing the packet data to the packet processor, 
 determine when the packet processor has completed processing of the packet data, and 
 in response to determining that the packet processor has completed processing of the packet data, prompt the packet processor to deactivate the clock network. 
 
 
     
     
       12. The apparatus of  claim 11 , wherein:
 the packet processor is configured to generate a signal that indicates an availability of the packet processor to process packet data; and 
 the circuitry is configured to determine that the packet processor has completed processing of the packet data using the signal from the packet processor that indicates the availability of the packet processor to process packet data. 
 
     
     
       13. The apparatus of  claim 11 , wherein:
 the packet processor is configured to use a credit mechanism to inform the circuitry of an availability of the packet processor to process packet data; 
 the circuitry includes a counter configured to count credits corresponding to the credit mechanism used by the packet processor; and 
 the circuitry is configured to determine that the packet processor has completed processing of the packet data using the counter. 
 
     
     
       14. The apparatus of  claim 11 , wherein the clock network is a first clock network, and wherein the circuitry is further configured to:
 issue memory access commands to the memory corresponding to reading packet data from and writing packet data to the memory; 
 in connection with determining that a memory access command is to be issued to the memory, prompt the memory to activate a second clock network of the memory; 
 in connection with prompting the memory to activate the second clock network, sending the memory access command to memory; 
 determine when the memory has completed processing of the memory access command; and 
 in response to determining that the memory has completed processing of the memory access command, prompt the memory to deactivate the second clock network. 
 
     
     
       15. The apparatus of  claim 14 , wherein:
 the circuitry includes a timer; and 
 the circuitry is configured to:
 start the timer in connection with sending the memory access command to the memory, and 
 determine when the memory has completed processing of the memory access command in connection with the timer expiring. 
 
 
     
     
       16. The apparatus of  claim 15 , wherein:
 the memory is a first memory; 
 the circuitry includes a second memory configured to store configuration information regarding the second clock network of the first memory; and 
 the circuitry is configured to:
 retrieve from the second memory configuration information that includes an indication of a time period corresponding to a time required by the first memory to execute the memory access command, and 
 in connection with retrieving the configuration information that includes the indication of the time period from the second memory, configure the timer to measure the time period. 
 
 
     
     
       17. The apparatus of  claim 16 , wherein:
 the timer is a first timer; 
 the circuitry includes a second timer associated with generating a first control signal to prompt the packet processor to deactivate the first clock network of the packet processor; 
 the circuitry includes a third memory configured to store configuration information regarding the first clock network of the packet processor; and 
 the circuitry is configured to:
 retrieve from the third memory configuration information that includes an indication that the circuitry is to disregard the second timer when generating the first control signal, 
 in response to the indication that the circuitry is to disregard the second timer when generating the first control signal, generate the first control signal to prompt the packet processor to deactivate the first clock network of the packet processor without regard to the second timer, 
 retrieving from the second memory configuration information that includes an indication that the circuitry is to generate a second control signal for controlling deactivation of the second clock network of the first memory based on the first timer expiring, and 
 in response to the indication that the circuitry is to generate the second control signal based on the first timer expiring, generate the second control signal based on the first timer expiring. 
 
 
     
     
       18. The apparatus of  claim 15 , wherein:
 the memory access command is a read command; 
 the timer is a first timer configured to measure a first time duration corresponding to executing the read command; 
 the circuitry includes a second timer configured to measure a second time duration corresponding to executing a write command; 
 the first time duration is different than the second time duration; 
 the circuitry is configured to:
 in connection with determining that the read command is to be issued to the memory, prompt the memory to activate the second clock network of the memory, 
 in connection with prompting the memory to activate the second clock network, sending the read command to memory, 
 start the first timer in connection with sending the read command to the memory, 
 determine when the memory has completed processing of the read command in connection with the first timer expiring, 
 in response to determining that the memory has completed processing of the read command, prompt the memory to deactivate the second clock network, 
 in connection with determining that a write command is to be issued to the memory, prompt the memory to activate the second clock network of the memory, 
 in connection with prompting the memory to activate the second clock network, sending the write command to memory, 
 start the second timer in connection with sending the write command to the memory, 
 determine when the memory has completed processing of the write command in connection with the second timer expiring, 
 in response to determining that the memory has completed processing of the write command, prompt the memory to deactivate the second clock network.

Join the waitlist — get patent alerts

Track US12216518B2 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.