Method for using a multi-master multi-slave bus for power management
First Claim
1. A system comprising:
- a bus configured to operate according to a bus protocol;
a plurality of devices coupled to the bus, wherein the plurality of devices are configured to transmit and receive information over the bus according to the bus protocol, wherein each of the plurality of devices is uniquely identified by corresponding one or more addresses;
wherein a first one of the plurality of devices is configured to initiate a bus operation on the bus, by placing a specified address of the one or more addresses that uniquely identifies the first one of the plurality of devices onto the bus, wherein the specified address is the initial address placed onto the bus;
wherein the bus operation comprises transmitting specified information onto the bus;
wherein at least a second one of the plurality of devices is configured to receive the specified address and the specified information, and utilize the specified information to perform one or more functions in response to receiving the specified address;
wherein at least a subset of the plurality of devices constitutes a group;
wherein for any given device in the group each one of the one or more addresses that uniquely identifies the given device comprises a respective first segment of bits and a respective second segment of bits;
wherein each respective first segment of bits specifies the group;
wherein each respective second segment of bits specifies the given device within the group;
wherein each device of the group comprises;
an address register configured to store at least one of the one or more addresses that uniquely identifies the device; and
a mask register configured to mask out at least a portion of the address register wherein the portion corresponds to the respective second segment of bits of the at least one of the one or more addresses that uniquely identifies the device.
4 Assignments
0 Petitions
Accused Products
Abstract
In one set of embodiments, a power management system comprises two or more devices, such as POL devices, configured to transmit and receive data over a shared bus, such as an I2C bus, according to the bus protocol of the shared bus. Each device may be configured with at least one respective address register, which may be programmed with an address uniquely identifying the device, and a mask register that may be configured to mask select bits of the respective address register, thereby enabling the device to identify device groups. In one embodiment, one of the devices identifying itself as a master device may distribute information to any of the other devices by transmitting the information, which may include commands and/or data, to itself, in effect targeting the address programmed into its own address register. The devices on the shared bus may be configured to monitor the bus for events, and respond to each event according to the requirements inherent within a transmitted command, thereby performing the necessary tasks to enable power management functions without the need for interconnecting analog signal lines.
-
Citations
42 Claims
-
1. A system comprising:
-
a bus configured to operate according to a bus protocol; a plurality of devices coupled to the bus, wherein the plurality of devices are configured to transmit and receive information over the bus according to the bus protocol, wherein each of the plurality of devices is uniquely identified by corresponding one or more addresses; wherein a first one of the plurality of devices is configured to initiate a bus operation on the bus, by placing a specified address of the one or more addresses that uniquely identifies the first one of the plurality of devices onto the bus, wherein the specified address is the initial address placed onto the bus; wherein the bus operation comprises transmitting specified information onto the bus; wherein at least a second one of the plurality of devices is configured to receive the specified address and the specified information, and utilize the specified information to perform one or more functions in response to receiving the specified address; wherein at least a subset of the plurality of devices constitutes a group; wherein for any given device in the group each one of the one or more addresses that uniquely identifies the given device comprises a respective first segment of bits and a respective second segment of bits; wherein each respective first segment of bits specifies the group; wherein each respective second segment of bits specifies the given device within the group; wherein each device of the group comprises; an address register configured to store at least one of the one or more addresses that uniquely identifies the device; and a mask register configured to mask out at least a portion of the address register wherein the portion corresponds to the respective second segment of bits of the at least one of the one or more addresses that uniquely identifies the device. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for communicating over a shared bus, the method comprising:
-
a first device of a plurality of devices initiating a bus operation over the shared bus, wherein said initiating the bus operation comprises; transmitting over the shared bus a specified address that uniquely identifies the first device; transmitting data onto the shared bus; and a second device of the plurality of devices receiving the specified address and the data, and utilizing the data to perform one or more functions in response to at least a first portion of the specified address; wherein at least the first device and the second device of the plurality of devices constitutes a group; wherein for any given device in the group, each one of the one or more addresses that uniquely identifies the given device comprises a respective first segment of bits and a respective second segment of bits; wherein each respective first segment of bits specifies the group; wherein each respective second segment of bits specifies the given device within the group; wherein each device of the group comprises; an address register configured to store at least one of the one or more addresses that uniquely identifies the device; and a mask register configured to mask out at least a portion of the address register wherein the portion corresponds to the respective second segment of bits of the at least one of the one or more addresses that uniquely identifies the device. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A power management system configured to allow digital information corresponding to power management functions to be passed between point-of-load (POL) converters using a standard multi-master multi-slave interface, the system comprising:
-
a shared bus; a plurality of POL converters coupled to the shared bus, wherein each of the plurality of POL converters is configured to transmit and receive information over the shared bus according to a bus protocol corresponding to the shared bus, wherein each of the plurality of POL converters is configured to be uniquely identified by respective one or more addresses; wherein at least one of the plurality of POL converters is configured to identify itself as a master POL converter, wherein the master POL converter is configured to initiate a bus operation on the shared bus, by placing a specified address of the respective one or more addresses that uniquely identify the master POL converter onto the bus, and wherein the master POL converter is further configured to transmit specified information onto the shared bus as part of the bus operation; wherein remaining respective ones of the plurality of POL converters are configured to identify themselves as respective slave POL converters, wherein the respective slave POL converters are configured to receive the specified address and the specified information, and utilize the specified information to perform one or more functions in response to receiving the specified address; wherein the plurality of POL converters are comprised in a group; wherein a first segment of bits of at least a first respective address of each of the respective one or more addresses identifies the group; wherein a second segment of bits of at least the first respective address identifies a respective one of the plurality of POL converters within the group; wherein each respective one of the plurality of POL converters within the group comprises; a respective address register configured to store the respective first address of the respective one of POL converters; and a respective mask register configured to mask out at least a portion of the respective address register, wherein the portion corresponds to the second segment of bits, thereby identifying the respective one of the POL converters as being part of the group. - View Dependent Claims (18, 19, 20, 21, 22)
-
-
23. A system comprising:
-
a shared bus; a plurality of point-of-load (POL) converters coupled to the shared bus, wherein each respective one of the plurality of POL converters is configured to; initiate one or more events on the shared bus by transmitting its own address onto the shared bus, thereby also identifying itself to other ones of the plurality of POL converters; after initiating each respective event, as part of the respective event transmit a respective command corresponding to a respective one of a plurality of power management functions; monitor the shared bus for the transmitted own address; and respond to the one or more respective events over the shared bus in response to recognizing the transmitted own address, wherein in responding to each respective event, the respective one of the plurality of POL converters is configured to respond according to the respective command, thereby performing one or more tasks corresponding to the respective one of the plurality of power management functions; wherein at least a subset of the plurality of POL converters constitutes a group; wherein for any given POL converter in the group the own address of the given POL converter comprises a respective first segment of bits and a respective second segment of bits; wherein each respective first segment of bits specifies the group; wherein each respective second segment of bits specifies the given POL converter within the group; wherein each POL converter of the group comprises; an address register configured to store the own address of the POL converter; and a mask register configured to mask out at least a portion of the address register wherein the portion corresponds to the respective second segment of bits of the own address of the POL converter.
-
-
24. A device comprising:
-
a bus interface configured to interface to a bus; a first memory element configured to store a first identifier that uniquely identifies the device, wherein a first portion of the first identifier identifies a first group wherein the device and one or more other devices are included in the first group, wherein a remaining portion of the first identifier identifies the device within the first group; and a second memory element configured to store masking information corresponding to the first identifier, wherein the masking information masks the remaining portion of the first identifier; wherein the device is configured to communicate with the one or more other devices through the bus interface by initiating a bus operation intended for the bus by transmitting the first identifier through the bus interface, wherein the first identifier uniquely identifies the device as a source of the bus operation, wherein the first portion of the first identifier also specifies the one or more other devices as targets of the bus operation. - View Dependent Claims (25, 26, 27, 28, 29, 30)
-
-
31. A method for communicating over a bus, the method comprising:
-
a first device coupled to the bus initiating a bus operation by transmitting, to the bus, a first address that uniquely identifies the first device; the first device transmitting data onto the bus as part of the bus operation; and a subset of remaining devices that are coupled to the bus receiving the first address and the data, and utilizing the data to perform one or more functions in response to receiving the first address; wherein the first device and the subset of the remaining devices constitutes a group; wherein each given device of the group comprises; an address register configured to store a respective address that uniquely identifies the given device, wherein the respective address comprises a respective first segment of bits and a respective second segment of bits, wherein the respective first segment of bits specifies the group and wherein the respective second segment of bits specifies the given device within the group; and a mask register configured to mask out at least a portion of the address register wherein the portion corresponds to the respective second segment of bits of the respective address that uniquely identifies the given device. - View Dependent Claims (32, 33, 34, 35, 36, 37)
-
-
38. A device comprising:
-
a bus interface configured to interface to a bus; and a first memory element configured to store a first address that uniquely identifies the device, wherein the first address comprises; a first segment of bits that specifies a group; and a second segment of bits that specifies the device within the group; and a second memory element configured to mask out at least a portion of the address register, wherein the portion corresponds to the second segment of bits; wherein the device is configured to initiate bus transactions intended for the bus, and communicate with other devices via the bus interface by transmitting information packets and receiving information packets from the other devices through the bus interface; wherein in initiating the bus transactions the device is configured to transmit the first address through the bus interface as a target address for the bus transactions; and wherein at least one of the other devices is configured to receive the first address and the information packets, and utilize information from the information packets to perform one or more functions in response to receiving the first address.
-
-
39. A device comprising:
-
a bus interface configured to interface to a bus, wherein the device is operable to communicate with other devices via the bus interface; a first register configured to store a first address that uniquely identifies the device; and a second register configured as a mask register for the first register wherein an unmasked segment of bits of the first address defines an address group, wherein a masked segment of bits of the first address identifies the device within the address group; wherein the device and at least one of the other devices are comprised in the address group; wherein the device configured to initiate a bus operation intended for the bus by transmitting the first address and data through the bus interface, wherein the first address is transmitted as a target address for the bus operation; and wherein at least one of the other devices is configured to receive the first address and the data, and utilize at least a portion of the data to perform one or more functions in response to receiving the first address. - View Dependent Claims (40, 41, 42)
-
Specification