Patents by Inventor Shailendra S. Desai
Shailendra S. Desai has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 9367474Abstract: Systems and methods for translating cache hints between different protocols within a SoC. A requesting agent within the SoC generates a first cache hint for a transaction, and the first cache hint is compliant with a first protocol. The first cache hint can be set to a reserved encoding value as defined by the first protocol. Prior to the transaction being sent to the memory subsystem, the first cache hint is translated into a second cache hint. The memory subsystem recognizes cache hints which are compliant with a second protocol, and the second cache hint is compliant with the second protocol.Type: GrantFiled: June 12, 2013Date of Patent: June 14, 2016Assignee: Apple Inc.Inventors: Shailendra S. Desai, Gurjeet S. Saund, Deniz Balkan, James Wang
-
Patent number: 9176913Abstract: A system, apparatus, and method for routing traffic in a SoC from I/O devices to memory. A coherence switch routes coherent traffic through a coherency port on a processor complex to a real-time port of a memory controller. The coherence switch routes non-coherent traffic to a non-real time port of the memory controller. The coherence switch can also dynamically switch traffic between the two paths. The routing of traffic can be configured via a configuration register, and while software can initiate an update to the configuration register, the actual coherence switch hardware will implement the update. Software can write to a software-writeable copy of the configuration register to initiate an update to the flow path to memory for a transaction identifier. The coherence switch detects the update to the software-writeable copy, and then the coherence switch updates the working copy of the configuration register and implements the new routing.Type: GrantFiled: September 7, 2011Date of Patent: November 3, 2015Assignee: Apple Inc.Inventors: Timothy J. Millet, Muditha Kanchana, Shailendra S. Desai
-
Publication number: 20140372699Abstract: Systems and methods for translating cache hints between different protocols within a SoC. A requesting agent within the SoC generates a first cache hint for a transaction, and the first cache hint is compliant with a first protocol. The first cache hint can be set to a reserved encoding value as defined by the first protocol. Prior to the transaction being sent to the memory subsystem, the first cache hint is translated into a second cache hint. The memory subsystem recognizes cache hints which are compliant with a second protocol, and the second cache hint is compliant with the second protocol.Type: ApplicationFiled: June 12, 2013Publication date: December 18, 2014Inventors: Shailendra S. Desai, Gurjeet S. Saund, Deniz Balkan, James Wang
-
Patent number: 8495257Abstract: In one embodiment, a system comprises at least a first node and a second node coupled to a network. The second node comprises a local memory and a direct memory access (DMA) controller coupled to the local memory. The first node is configured to transmit at least a first packet to the second node to access data in the local memory and at least one other packet that is not coded to access the local memory. The second node is configured to capture the packet from a data link layer of a protocol stack, and wherein the DMA controller is configured to perform one more transfers with the local memory to access the data specified by the first packet responsive to the first packet received from the data link layer. The second node is configured to process the other packet to a top of the protocol stack.Type: GrantFiled: October 20, 2010Date of Patent: July 23, 2013Assignee: Apple Inc.Inventors: Shailendra S. Desai, Mark D. Hayter, Dominic Go
-
Publication number: 20130061003Abstract: A system, apparatus, and method for routing traffic in a SoC from I/O devices to memory. A coherence switch routes coherent traffic through a coherency port on a processor complex to a real-time port of a memory controller. The coherence switch routes non-coherent traffic to a non-real time port of the memory controller. The coherence switch can also dynamically switch traffic between the two paths. The routing of traffic can be configured via a configuration register, and while software can initiate an update to the configuration register, the actual coherence switch hardware will implement the update. Software can write to a software-writeable copy of the configuration register to initiate an update to the flow path to memory for a transaction identifier. The coherence switch detects the update to the software-writeable copy, and then the coherence switch updates the working copy of the configuration register and implements the new routing.Type: ApplicationFiled: September 7, 2011Publication date: March 7, 2013Inventors: Timothy J. Millet, Muditha Kanchana, Shailendra S. Desai
-
Publication number: 20110035459Abstract: In one embodiment, a system comprises at least a first node and a second node coupled to a network. The second node comprises a local memory and a direct memory access (DMA) controller coupled to the local memory. The first node is configured to transmit at least a first packet to the second node to access data in the local memory and at least one other packet that is not coded to access the local memory. The second node is configured to capture the packet from a data link layer of a protocol stack, and wherein the DMA controller is configured to perform one more transfers with the local memory to access the data specified by the first packet responsive to the first packet received from the data link layer. The second node is configured to process the other packet to a top of the protocol stack.Type: ApplicationFiled: October 20, 2010Publication date: February 10, 2011Inventors: Shailendra S. Desai, Mark D. Hayter, Dominic Go
-
Patent number: 7836220Abstract: In one embodiment, a system comprises at least a first node and a second node coupled to a network. The second node comprises a local memory and a direct memory access (DMA) controller coupled to the local memory. The first node is configured to transmit at least a first packet to the second node to access data in the local memory and at least one other packet that is not coded to access the local memory. The second node is configured to capture the packet from a data link layer of a protocol stack, and wherein the DMA controller is configured to perform one more transfers with the local memory to access the data specified by the first packet responsive to the first packet received from the data link layer. The second node is configured to process the other packet to a top of the protocol stack.Type: GrantFiled: August 17, 2006Date of Patent: November 16, 2010Assignee: Apple Inc.Inventors: Shailendra S. Desai, Mark D. Hayter, Dominic Go
-
Publication number: 20100188980Abstract: In one embodiment, a system comprises a communication medium; a first controller coupled to the communication medium; and a second controller coupled to the communication medium. The first controller is configured to interrupt transmission of a packet on the communication medium to the second controller subsequent to transmission of a first portion of the packet. The first controller is configured to transmit at least one control symbol on the communication medium in response to interrupting transmission of the packet, and wherein the first controller is configured to continue transmission of the packet with a second portion of the packet. The controller(s) may include, in some embodiments, a media access controller and a physical coding sublayer.Type: ApplicationFiled: April 2, 2010Publication date: July 29, 2010Inventors: Shailendra S. Desai, Mark D. Hayter
-
Publication number: 20080043732Abstract: In one embodiment, a system comprises at least a first node and a second node coupled to a network. The second node comprises a local memory and a direct memory access (DMA) controller coupled to the local memory. The first node is configured to transmit at least a first packet to the second node to access data in the local memory and at least one other packet that is not coded to access the local memory. The second node is configured to capture the packet from a data link layer of a protocol stack, and wherein the DMA controller is configured to perform one more transfers with the local memory to access the data specified by the first packet responsive to the first packet received from the data link layer. The second node is configured to process the other packet to a top of the protocol stack.Type: ApplicationFiled: August 17, 2006Publication date: February 21, 2008Applicant: P.A. Semi, Inc.Inventors: Shailendra S. Desai, Mark D. Hayter, Dominic Go
-
Patent number: 7320022Abstract: A packet processing system may include a processor, a cache, a memory controller, and at least one packet interface circuit integrated into a single integrated circuit. In one embodiment (which may be used in integrated or non-integrated systems), the packet interface circuit is configured to cause allocation in the cache of a portion of a received packet. In one embodiment (which may be used in integrated or non-integrated systems), the memory controller may be configured to selectively block memory transactions. Particularly, the memory controller may implement at least two block signals, one for the packet interface circuit and one for other devices. The block signals may be used to control the initiation of memory transactions when the memory controller's input queue is approaching fullness.Type: GrantFiled: July 25, 2002Date of Patent: January 15, 2008Assignee: Broadcom CorporationInventors: Mark D. Hayter, Shailendra S. Desai, Daniel W. Dobberpuhl, Kwong-Tak A. Chui
-
Patent number: 7287649Abstract: A packet processing system may include a processor, a cache, a memory controller, and at least one packet interface circuit integrated into a single integrated circuit. In one embodiment (which may be used in integrated or non-integrated systems), the packet interface circuit is configured to cause allocation in the cache of a portion of a received packet. In one embodiment (which may be used in integrated or non-integrated systems), the memory controller may be configured to selectively block memory transactions. Particularly, the memory controller may implement at least two block signals, one for the packet interface circuit and one for other devices. The block signals may be used to control the initiation of memory transactions when the memory controller's input queue is approaching fullness.Type: GrantFiled: May 18, 2001Date of Patent: October 30, 2007Assignee: Broadcom CorporationInventors: Mark D. Hayter, Shailendra S. Desai, Daniel W. Dobberpuhl, Kwong-Tak A. Chui
-
Patent number: 7076586Abstract: A system may include two or more agents, one of which may be identified as a default agent. If none of the agents arbitrate for the bus, the default agent may be given a default grant of the bus. If the default agent has information to transfer on the bus, the default agent may take the default grant and my transfer the information without first arbitrating for the bus and winning the arbitration. In one embodiment, the default agent may arbitrate for the bus when it has information to transfer and no default grant is received. The default agent may be an equal participant in arbitration. A fair arbitration scheme may thus be implemented in arbitrations in which there is contention for the bus.Type: GrantFiled: October 6, 2000Date of Patent: July 11, 2006Assignee: Broadcom CorporationInventors: Joseph B. Rowlands, Shailendra S. Desai
-
Patent number: 6957290Abstract: A distributed arbitration scheme includes arbiters with each agent. The arbiters receive request signals indicating which agents are arbitrating for the bus. Additionally, the agent currently using the bus broadcasts an agent identifier assigned to that agent. The arbiters receive the agent identifier and use the agent identifier as an indication of the winner of the preceding arbitration. Accordingly, the arbiters determine if the corresponding agent wins the arbitration, but may not attempt to calculate which other agent wins the arbitration. In one embodiment, the arbiter maintains a priority state indicative of which of the other agents are higher priority than the corresponding agent and which of the other agents are lower priority. In one implementation, the bus may be a split transaction bus and thus each requesting agent may include an address arbiter and each responding agent may include a data arbiter.Type: GrantFiled: October 6, 2000Date of Patent: October 18, 2005Assignee: Broadcom CorporationInventors: Joseph B. Rowlands, David L. Anderson, Shailendra S. Desai
-
Publication number: 20020174252Abstract: A packet processing system may include a processor, a cache, a memory controller, and at least one packet interface circuit integrated into a single integrated circuit. In one embodiment (which may be used in integrated or non-integrated systems), the packet interface circuit is configured to cause allocation in the cache of a portion of a received packet. In one embodiment (which may be used in integrated or non-integrated systems), the memory controller may be configured to selectively block memory transactions. Particularly, the memory controller may implement at least two block signals, one for the packet interface circuit and one for other devices. The block signals may be used to control the initiation of memory transactions when the memory controller's input queue is approaching fullness.Type: ApplicationFiled: May 18, 2001Publication date: November 21, 2002Applicant: Broadcom CorporaionInventors: Mark D. Hayter, Shailendra S. Desai, Daniel W. Dobberpuhl, Kwong-Tak A. Chui
-
Publication number: 20020174255Abstract: A packet processing system may include a processor, a cache, a memory controller, and at least one packet interface circuit integrated into a single integrated circuit. In one embodiment (which may be used in integrated or non-integrated systems), the packet interface circuit is configured to cause allocation in the cache of a portion of a received packet. In one embodiment (which may be used in integrated or non-integrated systems), the memory controller may be configured to selectively block memory transactions. Particularly, the memory controller may implement at least two block signals, one for the packet interface circuit and one for other devices. The block signals may be used to control the initiation of memory transactions when the memory controller's input queue is approaching fullness.Type: ApplicationFiled: July 25, 2002Publication date: November 21, 2002Applicant: Broadcom CorporationInventors: Mark D. Hayter, Shailendra S. Desai, Kwong-Tak A. Chui