IP Library Granted Patent US 9,047,264
Granted Patent B2
US 9,047,264 · App. 14/111,432 · Granted Jun 2, 2015

Low pin count controller

Inventors: Balaji Kanigicherla (Andhra Pradesh, IN); Siva Raghuram Voleti (Hyderabad, IN); Rajani Lotti (Hyderabad, IN); Krishna Mohan Tandaboina (Hyderabad, IN)
Assignee: INEDA SYSTEMS PVT. LTD.
G06F13/24G06F13/28G06F2213/0038
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,047,264
App. No.
14/111,432
Granted
Jun 2, 2015
Kind
B2
Abstract

Described herein is a system having a multi-host low pin count (LPC) controller ( 100 ) configured to facilitate sharing of common peripheral devices by multiple hosts ( 115 ) of a multi-host computing system ( 110 ). In one implementation, the multi-host LPC controller ( 100 ) interfaces with the hosts ( 115 ) via an ON-chip bus or an LPC-IN-chip bus. Further, the multi-host LPC controller ( 100 ) includes a LPC-IN controller ( 160 ) and a microcontroller ( 155 ) to moderate among requests generated by the hosts ( 115 ). The requests can be target accesses, DMA accesses, and BM accesses. Also, the multi-host LPC controller ( 100 ) is configured to operate in a software mode and an auto mode. Based on the mode the multi-host LPC controller ( 100 ) is operating in, the requests generated by the various hosts are moderated.

Claims (37)

1. A Low Pin Count (LPC) controller ( 100 ) comprising:

an LPC-IN unit ( 130 ) configured to receive one or more target access requests for accessing a LPC device coupled to a multi-host computing system ( 110 ), from at least one host of the multi-host computing system ( 110 );

a LPC-IN controller ( 160 ) configured to,

generate an interrupt for each of the one or more target access requests, based on an operational mode of the LPC controller ( 100 );

analyze the one or more target access requests based on an operational mode of the LPC controller ( 100 ) on generation of the interrupt;

a microcontroller ( 155 ) configured to

arbitrate the one or more target access requests on receiving the interrupt based on the analysis; and

provide access to the LPC device based in part on the arbitration and a sharing mechanism supported by the LPC device.

2. The LPC controller ( 100 ) as claimed in claim 1 , wherein the operational mode of the LPC controller ( 100 ) is at least one of a software mode, wherein access is provided to at least one host of the multi-host computing system ( 110 ) based on the arbitration, an active host mode wherein the access is provided to a currently active host of the multi-host computing system ( 110 ), and a fixed host mode wherein the access is provided to a pre-selected host of the multi-host computing system ( 110 ).

3. The LPC controller ( 100 ) as claimed in claim 1 , wherein the arbitration is based in part on power states of the at least one host of the multi-host computing system ( 110 ), a round robin mode, and an user-defined mode.

4. The LPC controller ( 100 ) as claimed in claim 1 , wherein the microcontroller ( 155 ) is further configured to,

ascertain the operational mode of the LPC controller ( 100 ) to be an active host mode;

determine whether a currently active host of multi-host computing system ( 110 ), is configured for accessing the LPC device based on an address range of the currently active host, on ascertaining the operational mode of the LPC controller ( 100 ) to be the active host mode;

provide access of the LPC device, to the currently active host, based on the configuration of the currently active host.

5. The LPC controller ( 100 ) as claimed in claim 1 , wherein the microcontroller ( 155 ) is further configured to,

ascertain the operational mode of the LPC controller ( 100 ) to be a fixed host mode;

determine whether a pre-selected host of multi-host computing system ( 110 ), is configured for accessing the LPC device based on an address range of the pre-selected host on ascertaining the operational mode of the LPC controller ( 100 ) to be the fixed host mode;

provide access of the LPC device, to the pre-selected host, based on the configuration of the pre-selected host.

6. The LPC controller ( 100 ) as claimed in claim 1 , wherein the LPC-IN unit ( 130 ) is further configured to intercept the one or more target access requests for accessing the LPC device from the at least one host of the multi-host computing system ( 110 ).

7. The LPC controller ( 100 ) as claimed in claim 1 , wherein the LPC controller ( 100 ) is configured as a slave LPC device of the at least one host of the multi-host computing system ( 110 ).

8. The LPC controller ( 100 ) as claimed in claim 1 , wherein the LPC controller ( 100 ) is configured as a dedicated LPC device of the at least one host of the multi-host computing system ( 110 ).

9. The LPC controller ( 100 ) as claimed in claim 1 , wherein the LPC device is coupled with a bus to communicate with the at least one host of the multi-host computing system ( 110 ), wherein the bus conform to at least one of an Advanced Extensible Interface (AXI) bus specification, an Advanced High Performance Bus (AHB) specification, a Peripheral Connect Interface (PCI) bus specification, an open core protocol bus specification, and a PCI Express bus specification.

10. The LPC controller ( 100 ) as claimed in claim 1 , wherein the LPC controller ( 100 ) is further configured to:

receive a command to power off the LPC device coupled to the multi-host computing system ( 110 ), from at least one host of the multi-host computing system ( 110 );

determine whether the LPC device is in use by at least another host of the multi-host computing system ( 110 );

masking the command to power off the LPC device on determining the LPC device to be in use by the at least another host.

11. The LPC controller ( 100 ) as claimed in claim 10 , wherein the LPC controller ( 100 ) is further configured to execute the command so as to power off the LPC device on determining the LPC device not to be in use by the at least another host of the multi-host computing system ( 110 ).

12. A multi-host computing system ( 110 ) comprising:

a plurality of processors;

a LPC controller ( 100 ) as claimed in claim 1 , communicatively coupled to at least one of the plurality of processors.

13. A method for providing at least one of a direct memory access (DMA) and a bus master (BM) access in a multi-host computing system ( 110 ) running a plurality of operating systems, the method comprising:

receiving at least one of a direct memory access (DMA) access request, and a bus master (BM) access request from a peripheral device coupled to at least one host of the multi-host computing system ( 110 );

determine an operational mode of a DMA channel of the multi-host computing system ( 110 ) to identify a currently active host of the multi-host computing system ( 110 );

route at least one of the DMA access request, and the BM access request to a DMA controller of the currently active host; and

provide at least one of a DMA access and a BM access to the peripheral device of the currently active host, based on the routing, so as to provide access to at least one LPC device coupled to the multi-host computing system ( 110 ).

14. The method as claimed in claim 13 , wherein the method further comprises:

route at least one of the DMA access request, and the BM access request to a DMA controller of a pre-selected host of the multi-host computing system ( 110 ) on determining the operational mode of the DMA channel to be a fixed host mode.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2020
From: INEDA SYSTEMS, INC
To: SOCTRONICS
Reel/Frame 051937/0900 →
RELEASE OF SECURITY INTEREST Recorded Jan 17, 2020
From: SILICON VALLEY BANK
To: INEDA SYSTEMS, INC.
Reel/Frame 051546/0586 →
SECURITY INTEREST Recorded Feb 2, 2017
From: INEDA SYSTEMS, INC.
To: SILICON VALLEY BANK
Reel/Frame 041158/0665 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2016
From: INEDA SYSTEMS PVT. LTD.
To: INEDA SYSTEMS INC.
Reel/Frame 040663/0014 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 11, 2013
From: KANIGICHERLA, BALAJI; VOLETI, SIVA RAGHURAM; LOTTI, RAJANI; TANDABOINA, KRISHNA MOHAN
To: INEDA SYSTEMS PVT. LTD.
Reel/Frame 031391/0272 →
Priority Claims (1)
IN 1260/CHE/2011 · Apr 11, 2011 · national
Continuity (1)
Related Publication 20140032792A1 · Jan 30, 2014