Sharing of functions between an embedded controller and a host processor
First Claim
1. A system for allowing shared access by at least two processors including an embedded controller and a host processor to at least two modules comprising:
- at least two modules; and
a transaction control;
wherein the embedded controller is capable of providing an indication of which of the at least two modules to access to said transaction control; and
the host processor is capable of providing an indication of which of the at least two modules to access to said transaction control.
2 Assignments
0 Petitions
Accused Products
Abstract
An improved system is described for allowing an embedded controller and a host processor to share access to modules in a computer system. The shared access system of the present invention enables exclusive, one-at-a-time access by a processor to a module and concurrent access by more than one processor to a module. An internal bus with two power sources is used to allow continued access by one of the processors when one of the two power sources is not providing power. Asynchronous clocking is provided to allow increased throughput to modules. An example of a protocol that allows an embedded controller to access more than one module is also described.
45 Citations
68 Claims
-
1. A system for allowing shared access by at least two processors including an embedded controller and a host processor to at least two modules comprising:
-
at least two modules; and
a transaction control;
wherein the embedded controller is capable of providing an indication of which of the at least two modules to access to said transaction control; and
the host processor is capable of providing an indication of which of the at least two modules to access to said transaction control. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system for allowing shared access by at least two processors including an embedded controller and a host processor to at least one module, comprising:
-
a main power supply;
an alternative power supply;
at least one module, wherein at least part of the at least one module is powered by said alternative power supply;
one internal bus connected to both said at least part of the at least one module which is powered by said alternative power supply and to at least part of at least one module which is powered by said main power supply; and
at least one processor interface powered by said alternative power supply;
wherein at least one of the at least two processors is capable of accessing through said one bus said at least part of the at least one module which is powered by said alternative power supply, even when said main power supply is off. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 28, 29, 30, 31)
-
-
18. A system for allowing shared access by at least two processors including an embedded controller and a host processor to at least one module, comprising:
-
at least one module;
at least one access block bit controlled by one of the at least two processors for blocking access by another of the at least two processors to the at least one module;
at least one access block violation flag bit capable of providing an indication to said one of the at least two processors if said another processor attempts access to the at least one module whose access has been blocked; and
circuitry for providing to said another of the at least two processors an indication that said at least one access block bit is set to block access.
-
-
27. A system for allowing shared access to at least one module by at least two processors including an embedded controller and a host processor, comprising:
- at least one module; and
at least one access block bit controlled by one of the at least two processors, wherein said at least one access block bit is capable of blocking access to the at least one module by another of the at least two processors and is capable of enabling the at least one module.
- at least one module; and
-
32. A system for allowing concurrent access to at least one module by at least two processors including an embedded controller and a host processor, comprising:
-
at least one module; and
access control circuitry included in the at least one module wherein said access control circuitry is capable of regulating access within the at least one module by the at least two processors, thereby allowing concurrent access. - View Dependent Claims (33, 34, 35, 36, 37, 38, 39)
-
-
40. A method for allowing concurrent access to at least one module by at least two processors including an embedded controller and a host processor;
- comprising the steps of;
receiving a transaction originating from one of the at least two processors;
receiving an indication of which of the at least two processors originated said transaction; and
processing said transaction within the at least one module based on said indication. - View Dependent Claims (41, 42, 43, 44, 45, 46, 48)
- comprising the steps of;
-
47. A method for allowing shared access to at least one module by at least two processors including an embedded controller and a host processor, comprising the steps of:
-
blocking the access of at least one processor to the at least one module;
indicating to said at least one blocked processor that the at least one module is blocked; and
indicating to a processor which has blocked access to the at least one module if said at least one blocked processor has attempted access.
-
-
49. A method for allowing shared access to at least one module by at least two processors including an embedded controller and a host processor comprising the steps of:
-
blocking access by at least one processor to said at least one module; and
enabling said at least one module, as a result of the blocking step.
-
-
50. A method for allowing shared access to at least two modules by at least two processors including an embedded controller and a host processor, comprising the steps of:
-
receiving an indication from each of the at least two processors of a module from among the at least two modules to access;
arbitrating between the at least two processors in favor of one of the at least two processors; and
accessing said module indicated by said one of the at least two processors. - View Dependent Claims (51, 52)
-
-
53. A method for allowing an embedded controller to access at least two modules affiliated with a device, comprising the steps of:
-
indicating the device;
indicating an access direction (read/write);
indicating one of the at least two modules for accessing;
indicating a location for accessing, within said indicated one of the at least two modules; and
transferring data between said indicated location and the embedded controller. - View Dependent Claims (54, 55, 56, 57, 58, 59, 60)
-
-
61. A method for preventing access by any of at least two processors including an embedded controller and a host processor to at least part of at least one module powered by a main power supply, when the main power supply is off, comprising the steps of:
-
determining that the main power supply is off;
indicating that the main power supply is off; and
preventing access to the at least part powered by the main power supply. - View Dependent Claims (62, 63)
-
-
64. A system for increasing throughput to at least one module whose access is shared by at least two processors including an embedded controller and a host processor, comprising:
-
at least one module;
said at least one module using a clock when processing a transaction which differs based on which of the at least two processors originated said transaction. - View Dependent Claims (65, 66, 67)
-
-
68. A method for increasing throughput to at least one module whose access is shared by at least two processors including an embedded controller and a host processor, comprising the steps of:
-
receiving a transaction from one of the at least two processors; and
processing said transaction by the at least one module using a different clock depending on which of the at least two processors originated said transaction.
-
Specification