Patent Description:
The invention relates to a power management arrangement as well as a method of operation of the power management arrangement in a system.

Systems are known which comprise a plurality of peripherals and a power supply, such as a battery or energy harvesting.

One example of a system is a battery powered wireless system for temperature monitoring. Similarly, the system could also be a cellular phone with many different peripheral components which need to be managed.

The term "Internet of Things" (abbreviated to IoT) has been developed to describe interconnected devices and refers to interconnection of uniquely identifiable external devices within an Internet infrastructure. Each one of the interconnected devices is allocated a unique IP address to enable the devices to be identified in the IoT network. Take-up of the IoT networks has been increasing and ultimately, IoT technology is expected to result in new, wide-ranging types of applications in which virtually any type of physical thing may be monitored and provide information about itself or its surroundings and/or may be remotely accessed over a network, such as a local network, an intranet, or the Internet.

Such IoT networks are known, for example, from US Patent No <CIT>, assigned to Afero, Inc. ) which teaches an IoT network and a method with a so-called IoT hub connected via a wireless system to an IoT device and a local communication interface to communicatively couple the IoT hub with a plurality of different types of IoT devices. The IoT device has a memory for storing program code and a microprocessor for executing the program code. The program code in this patent is described as including basic building blocks to enable a developer to implement any type of IoT device.

Similarly, <CIT>, assigned to Afero, Inc), describes an IoT network with the connectivity between a plurality of IoT devices and an IoT hub. The patent discloses an apparatus and method for adjusting a scan interval or scan width of BLE devices, which are located in the IoT devices. The IoT devices have one or more peripherals, such as sensors, which are located within the IoT devices. The focus of this patent is linked to low power sleep states of the BLE modules in the IoT devices but addresses how the wireless connection can be reinstated between the IoT device and the IoT hub following wake up of the BLE module. The patent does not address how a low power state can be enabled or managed within the IoT device.

The development and adoption of IoT solutions have been comparatively slow due to issues related to connectivity, a lack of standardization, and power consumption.

Connectivity for IoT solutions is currently commonly solved using the Bluetooth protocol. Other protocols are used, such as IEEE <NUM>, DECT, Zigbee, and proprietary protocols. The Bluetooth protocol for wireless communication is an open specification that facilitate low-power, short-range, and low-cost connections between the IoT devices and an IoT hub. There are several Bluetooth devices, such as but not limited to, smartphones, connected cars, electronic cameras, toys, health monitoring systems, etc. that are commercially available. However, the devices implementing the Bluetooth protocol, especially the standalone ones, also have limited energy resources for keeping a Bluetooth transceiver running the Bluetooth protocol for longer periods of time.

The Bluetooth <NUM> protocol was released in June <NUM> to address power consumption issues and has led to very low energy consumption. The Bluetooth <NUM> protocol includes a Bluetooth Low Energy feature (BLE) which enables Bluetooth devices to transmit very small packets of data at a time, while consuming significantly less power compared to those devices implementing previous Bluetooth protocols. Thus, using this small data packets, broadcasting feature, Bluetooth devices can function for months or even years on small-sized batteries.

The same principle is applicable to other communication technologies, like Wi-Fi, Zig Bee, GSM/Cellular, however their requirements in terms of power are typically significantly larger than BLE.

Connecting IoT devices such as door locks, environmental sensors, home security sensors, beacons, or asset trackers, for example, requires an electrical source or power storage such as a battery to power each of the connected IoT devices. External electrical sources are often not conveniently located or available, while batteries have a finite lifetime depending on their size and the power consumption of the IoT device in different modes of operation.

The continuous reduction of the size of electronic devices has led to the development of new power management arrangements in order to keep battery sizes small and battery longevity acceptable. A more recent trend in microcontroller systems is the low power consumption while maintaining communication features. It is now common with small systems including protocols such as BLE, GPS, Wi-Fi or Zig Bee that are powered by a simple CR2450 battery. Additional techniques to reduce power consumption involve keeping microcontrollers and other components in some form of idle mode for as long as possible to save power and thereby to increase the battery lifetime.

Despite these improvements in power consumption, there are still power consumption issues to be resolved for the battery powered devices. Firstly, microcontrollers do not perform power management. Secondly, microcontroller-based systems will always experience a continuous power consumption due to the continuous consumption of power by the microcontroller itself. Finally, the process of waking up a wireless chip from an idle mode to an active mode or wake-up takes some time (as discussed in the above-referenced <CIT>) and there is an additional increase in current and thus power consumption during the wake-up period. This means that a wireless chip is seldom a good choice for systems powering on/off to save energy.

The patent application <CIT> discloses a low power control and monitoring network that comprises devices connected to a wired medium. Each device has a CPU with a minimum power consumption state while powered by a power supply; a transceiver controllable by the CPU for communication on the wired medium a wakeup circuit generating a pulse of predetermined data or pulse characteristics for waking up the CPU and transceiver and for waking up the CPU of another device. Power supplies supply power to the devices. The power supplies can be provided and removed. The patent application does not teach a device that, apart from comprising the processing module, the interrupt channels, and the local storage, further comprises a power management unit to provide an adjustable supply voltage to peripherals and the processing module and other possibly connected devices.

<CIT> discloses methods, apparatuses, systems for including interrupt functionality in sensor interconnects field. A System on a Chip (SOC) includes a host and a unified sensor interconnect. A unified sensor interconnect is to be coupled to the host and at least one device. In one or more implementations, the unified sensor interconnect includes a clock line, data line, ground line, and power source line. The unified sensor interconnect is to enable interrupts from at least one of the host or the at least one device.

<CIT> discloses an apparatus and method for adjusting a scan interval or scan width of a BTLE device. One embodiment of the method comprises: placing a Bluetooth Low Energy (BTLE) device of an IoT device into a low power or sleep state; waking the BTLE device from the low power or sleep state in response to a specified schedule or set of conditions; attempting to establish a connection between the BTLE device and a BTLE device of an IoT hub using a first scan width and/or scan interval; dynamically adjusting the first scan width and/or scan interval to a second scan width and/or scan interval, respectively, based on a randomly-selected value if a connection is not established after a specified time period; and reattempting to establish a connection between the BTLE device of the IoT device and the BTLE device of the IoT hub using the second scan width and/or scan interval.

<CIT> discloses an apparatus and method for power management in limited-powered devices. One embodiment of the method comprises providing interrupt events which are designed as wakeup events. When the CPU is in a reduced power state, an interrupt signal is directed to a wakeup event handler. In response to the signal, the wakeup event handler causes full power to be restored to the CPU, so that the event can be subsequently serviced. The wakeup event handler sends a signal to a power management unit that is connected between the CPU and a power source. In response to the signal, the PMU restores power to the power rail that supplies the CPU.

To address these problems, an improved power management arrangement has been developed.

A power management arrangement and a method for managing power consumption in a connection system is described in this document. The device connection system comprises the power management arrangement and one or more peripherals.

A power management arrangement can be implemented as discrete components or can be entirely embedded on silicon.

The power management arrangement is located in a device and is configured for managing a power consumption of the device, such as an IoT device, and comprises a processing module, connected to one or more data communication lines which are configured to exchange data within the power management arrangement and with one or more peripherals, and interrupt channels, configured to send and receive a bidirectional interrupt signal within the power management arrangement to and from one or more of the peripherals, to wake up the processing module and the one or more peripherals and thereby initiate exchange of items of data between the one or more peripherals and the processing module, are present in the power management arrangement. A local storage is connected to the processing module and is configured to store logic operations relating to communication with and operation of the power management arrangement and the one or more peripherals. The power management arrangement further comprises a power management unit connected to power lines and configured to provide an adjustable supply voltage within the power management arrangement and to the peripherals and to the processing module through power lines.

The interrupts are bidirectional within the power management arrangement and to and from the peripherals. The interrupts can be sent from the processing module to one of the peripherals to initiate communication between the processing module and the peripheral. The peripheral will acknowledge the interrupt and data can be exchanged between the peripheral and the processing module. In another aspect, the peripheral will initiate the communication by sending the interrupt to the processing module. The receipt of the interrupt will trigger the processing module to wake up from an idle mode or sleep mode. The processing module will acknowledge the receipt of the interrupt and will then exchange data with the peripheral.

Interrupts can either be direct or via an interrupt interface to wake up the processing module and the peripherals.

The power management arrangement may also include a timer which is configured to send interrupts to the processing module or peripherals over the interrupt channels at a desired interval or time and date.

The peripherals can be a multitude of different types, both with master and slave capabilities. Masters are bidirectional, i.e., can both receive and give settings or commands, powering off or going into sleep/idle mode. One non-limiting example of the host is a wireless chip. One or more secondary hosts may be further connected to the data communication lines, the interrupt channels, and the power lines. The power management arrangement may comprise interruptable power lines connected to the one or more peripherals, the host, or the one or more secondary hosts.

The power management arrangement also includes a local storage connected to the processing module which stores a plurality of logic operation rules and data related to communication and operation of the power management arrangement and the peripherals. During operation, the local storage is also available for runtime operations as well as storage of state variables for the power management arrangement and peripherals. Generally, the local storage is of a volatile type, but can be supplemented by a non-volatile storage for certain standalone or preconfigured cases that need to keep the storage without the need of power supply.

As noted above, the power management arrangement is connected to the peripherals over one or more data communication lines. These data communication lines can be idle, i.e., not carry any data and, in this idle time, the peripherals do not transmit any data to the power management arrangement. The peripherals may continue recording data and store the recorded data in local registers before passing the recorded data to the processing module and/or the host at a later point in time. The peripherals are, in other words, not continuously active transmitting data, thus lowering the power consumption.

In one aspect, the power management arrangement has a host which is also connected to the data communication lines, the interrupt channels, and the power lines. The host is able to exchange data directly with the peripherals through the data communication lines. The host is also able to exchange data through the processing module. The host will also be connected to the power management arrangement via bidirectional interrupt channels. The host is the master that in active mode can control and set rules for the power management arrangement and the peripherals. The host may have its own master devices directly attached to it as secondary hosts, e.g., for specific tasks. The host can in active mode be directly connected to the peripherals if required. As for the peripherals, the host will often be powered off to conserve power, handing over control to the power management arrangement when powering off or going into sleep/idle mode. One non-limiting example of the host is a wireless chip. One or more secondary hosts may be further connected to the data communication lines, the interrupt channels, and the power lines.

A plurality of the power lines carry through a power multiplexer a supply voltage to the peripherals, the host, and components within the power management arrangement. The level of the supply voltage can be made adjustable through an adjustable voltage supply, such as a pulse width modulator, configured to supply a voltage that is just sufficient to ensure the operation of the different consumers of power. In other words, the components are not necessarily supplied with a standard <NUM>, <NUM>, or 5V supply voltage, but at a voltage to enable them to operate whilst consuming the minimum amount of power. The power management arrangement may comprise the power multiplexer or the pulse width modulator.

The power management arrangement may also include a connection unit, e.g., as part of the host, such as a wireless transceiver, configured to connect the device with the power management arrangement to a controlling unit, such as an IoT hub as known from the art.

A method for managing a power consumption in a device comprising a power management arrangement and one or more peripherals is also disclosed. The power management arrangement comprises a processing module. The method comprises initiating a bidirectional connection between the one or more peripherals and the processing module by exchanging an interrupt signal within the power management arrangement; waking up the processing module and the one or more peripherals; initiating exchange of items of data between the one or more peripherals and the processing module, and providing, by means of a power management unit of the power management device an adjustable supply voltage within the power management arrangement and to the one or more peripherals and to the processing module through power lines. The waking up of the processing module can be initiated either on receipt of the interrupt signal from the at least one peripheral or on receipt of a wake-up signal from a timer.

In a further aspect of the invention instructions can be accessed, for example from a local storage in the power management arrangement and the accessed instructions are used by one of the peripherals or the processing module to perform a logic operation. The storage of the instructions in the local storage enables the processing module, the host and/or one or more of the peripherals to be switched off or put into idle or sleep mode and then recover its state on waking up.

The waking up of the processing module is in one aspect of the disclosure initiated on receipt of the interrupt signal from the at least one peripheral or of a wake-up signal from a timer.

In a further aspect of the disclosure, the method further comprises further comprising access of instructions from a local storage; and performing a logic operation using the accessed instructions on the at least one peripheral.

In yet a further aspect of the disclosure, the method further comprises performing a logic operation to start a host for receiving data from the processing module or directly from the one or more peripherals, the host being configured to control, and set rules for, the power management arrangement and the peripherals. The method may comprise powering up the host.

The method may comprise storage of updated instructions in the local storage.

In another aspect of the disclosure, the method further comprises transferring instructions from the host to the local storage.

In a further aspect of the disclosure, the method further comprises setting the adjustable supply voltage.

<FIG> show an example of a device connection system <NUM> as described in this document. The device connection system <NUM> illustrated here is merely one example of a typical device connection system and that the invention is not limited to any particular device connection system <NUM>.

The device connection system <NUM> has a power management arrangement <NUM> which is connected to one or more peripherals <NUM> by means of data communication lines <NUM> (<FIG>), interrupt channels <NUM> (<FIG>), and power lines <NUM> (<FIG>) from a power management unit <NUM> to provide a supply voltage to the peripherals <NUM>. The data communication lines <NUM>, interrupt channels <NUM>, and power lines <NUM> could be implemented as different lines at the physical level or could be implemented as a single wire connection. The power management arrangement <NUM> also has a processing module <NUM>, a timer <NUM>, and a local storage <NUM>. The functions of these modules within the power management arrangement <NUM> will be explained later.

The data communication lines <NUM> can be, for example, tracks on a semiconductor (e.g. silicon chip) or wired connections.

A host <NUM> is a processing unit which is separate from the processing module <NUM> in the power management arrangement <NUM> and is connected to and able to control the power management arrangement <NUM> and the one or more peripherals <NUM>. The functions of the host <NUM> include further processing of the data, wireless transfer of data, etc. There may also be secondary hosts <NUM> connected to the power management arrangement <NUM> and, possibly, one or more of the peripherals <NUM>. Typically, the secondary hosts <NUM> are master devices utilized for special tasks or due to specific capabilities like optimized for real-time execution or low power processing. Such secondary hosts <NUM> are known in multi-core arrangements and offer optimized processing units for dedicated tasks to offload some of the processing power needed by the host <NUM>. It would be possible, for example, to have one of the cores handling data transfers under the Bluetooth protocol whilst another one of the cores is handling image processing.

The peripherals <NUM> can have either master or slave capabilities and be either analog or digital. Examples include sensors which monitor physical properties, such as but not limited to movement, temperature, air pressure, fluid flow, and tilt/angle. Non-limiting examples of the sensors include accelerometer, gyroscopes, tilt sensors, microphones, cameras/videos, and hygrometers. The peripherals <NUM> may collect and transmit data. Some of the peripherals <NUM> will have internal registers <NUM> and may write a limited amount of this collected data into one or more of the internal registers <NUM>. The peripherals <NUM> may or may not also perform a limited range of operations depending on the peripherals selected. The amount of power consumed by the peripherals <NUM> depends on their type and activity.

An overview of the power management unit <NUM> is shown in <FIG>. The power management unit <NUM> is, for example, a variable supply voltage device or a pulse-width modulator which can be applied to vary the output voltage and power over the power lines <NUM>. Some peripherals <NUM> may have a power supply through the same physical connections as data communication lines <NUM>.

The power management unit <NUM> can handle different power sources, e.g., batteries / energy storage <NUM>, energy harvesting <NUM>, and external power supply <NUM>. The setup will vary the power through an all-to-all power multiplexer <NUM> setup, e.g., to facilitate operation based on energy harvesting <NUM> in different modes of operation by being able to switch between sources. As will be explained below, the small amount of power required to operate the power management arrangement means that in many cases the energy harvesting <NUM> may be sufficient to power at least parts of the device connection system.

The power management unit <NUM> is set up to supply the optimal voltage to the individual power consumer; peripherals <NUM>, internal components of the power management arrangement <NUM>, the host <NUM>, the secondary hosts <NUM>, etc. The power multiplexer <NUM> is used to supply one of several alternatives to achieve a solution for each use case. One exemplary use case uses a pulse width modulator <NUM> where the length of the duty cycle of the pulse width modulator <NUM> adjusts the level of the supply voltage and thus the amount of power supplied to the power consumer of the power (e.g. one or more of the peripherals <NUM>) over the power lines <NUM>. A filter <NUM> can be connected between the pulse width modulator <NUM> and the power consumer to smooth out the level of the supply voltage. Typical operating ranges would be <NUM>-5V, but the specifications of the power consumer in question will give the operating voltage range of each individual power consumer.

The length of the duty cycle from the pulse width modulator <NUM> is initially set to provide the minimum operating voltage while maintaining necessary functionality to the relevant power consumer, such as one of the peripherals <NUM>, in order to reduce the amount of power required by the power consumer. It is known that, as certain components in the power consumers age, then there may be a need to provide a higher operating voltage and more power. The peripherals <NUM>, like for example the sensors 100a, 100b or 100c, have an output pin <NUM> which provides a feedback signal from the peripherals <NUM> to the pulse width modulator <NUM> to extend or shorten the duty cycle depending on the amount of power and/or the required operating voltage that is required. This would happen if, for example, the data from the peripheral <NUM> is no longer being produced accurately. It is also possible for one of the peripherals <NUM> to be in an idle or sleep state such that the peripheral is consuming only a small amount of power (in the nanoampere range, for example). On receipt of a signal from the interrupt channel <NUM> connected to the peripheral, the peripheral will be woken up and need to consume more power which is signaled to the attached pulse width modulator <NUM> to lengthen the duty cycle and supply more power.

Each pair of pulse width modulators <NUM> and filters <NUM> will be connected to different power lines <NUM> (shown in <FIG>) as the operating voltages of the power consumers, e.g. the peripherals, will be different.

The power management arrangement <NUM> will be connected to a host <NUM> or one or more secondary hosts <NUM> through the data connection lines <NUM> and interrupt channels <NUM>. The peripherals <NUM> may be controlled directly by the host <NUM> or the one or more secondary hosts <NUM> whilst the host <NUM> or the secondary hosts <NUM> are in operation. When the host <NUM> or the secondary host <NUM> are shut down to save energy any operations will be taken over by the power management arrangement <NUM>.

The power management arrangement <NUM> as shown in <FIG> provides data communication lines <NUM> to the peripherals <NUM> for bidirectional communication, i.e. control and exchange of data between all components connected to the device connection system, e.g., peripherals <NUM>, host <NUM>, secondary hosts <NUM>, and internal components of the power management arrangement <NUM> like the processing module <NUM>, the internal storage <NUM>, and the timer <NUM>.

The power management arrangement <NUM>, as can be seen in <FIG>, is also provided with the interrupt interface <NUM> which connects the processing module <NUM>, host <NUM>, secondary hosts <NUM>, peripherals <NUM>, and other components of the power management arrangement <NUM> through interrupt channels <NUM>. The interrupt interface <NUM> routes bidirectional interrupts to one or more of the connected components. For example, the peripherals <NUM> may be instructed to transfer any data which may be stored in the respective internal registers <NUM> of the peripherals <NUM> and pass the collected data through the data communication lines <NUM> to, e.g., the processing module <NUM>, the host <NUM>, or the secondary hosts <NUM>. Similarly, the processing module <NUM> can be asked to wake-up from a low power state to an active mode for receiving data from the peripherals <NUM>.

A local storage <NUM> is present on the power management arrangement <NUM>. The local storage <NUM> stores rules, tasks, data and state variables for the processing module <NUM>, host <NUM>, secondary hosts <NUM>, and the individual peripherals <NUM>. The rules and tasks are generated by the host <NUM> or predefined and written to the local storage <NUM> from the processing module <NUM>. The combination of the processing module <NUM> and the local storage <NUM> is to provide a type of "mirror" for the host <NUM> to control the peripherals <NUM>. The local storage <NUM> stores, in one aspect of the invention, only those operations that are necessary to wake up the peripherals <NUM> to obtain data from the peripherals <NUM> along the data communication lines <NUM>. In one further aspect, there is no host <NUM> present in the system and the power management arrangement <NUM> is pre-programmed in production or an external memory added to or connected to the power management arrangement <NUM> to provide the rules and tasks. The local storage will consist of a volatile storage which can be upheld with power. It may store rules from the host <NUM> before host <NUM> sleep mode is engaged and/or state variables form any component of the system for faster wake up, as well as provide necessary storage for runtime operations. An optional non-volatile storage is necessary for all standalone applications or where predefined settings must be upheld also without power supply.

The processing module <NUM> can wake up the host <NUM> by sending an interrupt to the host <NUM>, directly or via the aforementioned interrupt interface <NUM>.

The deep sleep mode of the device connection system <NUM> is a mode in which the processing module <NUM> is unresponsive to any external signal along the communication lines <NUM>. Still, the processing module <NUM> responds by waking up based on interrupts over the interrupt channels <NUM>. The processing module <NUM> will require about <NUM> ns to wake up.

The power management arrangement <NUM> includes a timer <NUM> which is connected to the processing module <NUM> and also to the interrupt interface <NUM>. The timer <NUM> provides an interrupt signal along the interrupt channels <NUM> to initiate the processing module <NUM> waking up and entering a processing mode.

The timer <NUM> is arranged as a countdown timer and is programmed to send an interrupt along the interrupt channels <NUM> at certain intervals to wake up the processing module <NUM> when the countdown time reaches zero. The initial value set in the countdown timer <NUM> is variable and depends on the requirements of the environment in which the device communication system <NUM> is used. The timer <NUM> is a simple device and consumes very little power. In a deep sleep mode, the device connection system <NUM> in total, including timer, will have a power consumption in the <NUM>-<NUM> nA range.

The timer <NUM> can also be set to count up, and combined with a calendar it is able to wake up on a set time and date, and adjust for variations between weekdays, holidays, time of day, etc. For example, should a peripheral <NUM> be used during the day but not at night, it would be possible to program the timer <NUM> to wake up the processing module <NUM> at different intervals depending on the time of day. At night, for example, it is likely that less data would be collected, and less data needed to be processed, as a result the timer <NUM> could wake up the processing module <NUM> at less frequent intervals. The local storage <NUM> stores more complicated rules and actions for waking up using the timer <NUM>.

The processing module <NUM> on waking up, will send a signal via the interrupt interface <NUM> through the interrupt channels <NUM> to the peripherals <NUM> to inform the peripherals <NUM> that the processing module <NUM> is able to accept data. The selected peripherals <NUM> are powered up or already on depending on settings, and data is then transferred from the peripherals <NUM> over the data communication lines <NUM> to the processing module <NUM>, host <NUM>, or secondary host <NUM> and processed as usual.

In one version of the power management arrangement <NUM>, it is possible to program the processing module <NUM> to merely collect data from selected peripherals <NUM> when waking up. Since the peripherals <NUM> consumes power, the processing module <NUM> will send the interrupt through the interrupt interface <NUM> only to those peripherals <NUM> from which data is required. Those peripherals <NUM> for which the data is not required would not receive an interrupt. So, for example, some of the peripherals <NUM> could be instructed to transfer the data every five minutes, while other peripherals <NUM> would be instructed to transfer at, for example, hourly intervals. This gives opportunities to further reduce the power consumption.

<FIG> shows an example of the operation of the power management arrangement <NUM>. In a first step <NUM> the processing module <NUM> is operating normally, and data is being transferred through the data communication lines <NUM> to and from the processing module <NUM>. In the subsequent step <NUM>, a countdown value for the time until when a wake-up signal shall be sent to the processing module <NUM> is written into an internal register of the timer <NUM>. This countdown value could be a pre-stored default value or could depend on the time of day or other circumstances, as explained in the previous text.

The processing module <NUM> shuts down the power to the peripherals <NUM> in step <NUM>. Finally, in step <NUM>, the processing module <NUM> enters the sleep mode and shuts down the data communication lines <NUM>. The processing module <NUM> is now in deep sleep mode and will wake itself up in step <NUM> following an interrupt from the timer <NUM> when the timer <NUM> has counted down (step <NUM>) from the value set into its internal register in step <NUM>. The processing module <NUM> resumes normal operation (step <NUM>). It is also possible for a wake-up signal to be issued from one or more of the peripherals <NUM> when the peripheral <NUM> needs to wake up the processing module <NUM>. This could happen, for example, when a value of the data collected by the peripheral exceeded a threshold level. One example could be when the peripheral <NUM> is a temperature sensor. If the temperature decreases below a certain threshold value, then a heating unit might need to be switched on. Should the temperature be higher than the threshold value, then a cooling unit needs to be switched on. In both cases, the processing module <NUM> will need to be woken up to send the control signals to the required devices.

On waking up, the processing module <NUM> will in step <NUM> try to fetch instructions from any possible external host <NUM> or secondary hosts <NUM>, and will automatically revert to instructions in the local storage <NUM> if no host <NUM> or secondary host <NUM> is present, awake or set to send instructions. In step <NUM> the processing module <NUM> will pass these instructions, for example, to one or more of the peripherals <NUM>, host <NUM>, or secondary hosts <NUM> where different logic operations are performed. These logic operations include transferring of data in step <NUM> from the peripherals <NUM> to/from the processing module <NUM>, host <NUM>, or secondary host <NUM>. The instructions will have been previously stored in step <NUM> on the local storage <NUM> by the processing module <NUM>, host <NUM>, or secondary hosts <NUM>. The processing module <NUM> will also access instructions concerning the amount of power to be supplied to the peripherals <NUM>, processing module <NUM>, host <NUM>, and secondary hosts <NUM> by the power management unit <NUM>. This is done setting the duty cycle in the pulse width modulator <NUM> to provide this specific operating voltage.

In order to reduce the power requirements on starting up of the peripherals <NUM>, the peripherals are woken up with a minimum of power required to operate the peripherals <NUM>. This minimum amount can be programmed initially, or the amount of power supplied to the peripherals <NUM> along the power lines <NUM> can be increased. The power management arrangement <NUM> wake up in around 7ns but depending on type and booting it will be appreciated that it may take longer time for peripherals <NUM> to wake up.

Finally, and optionally, in step <NUM>, the data can be passed from the processing module <NUM> to the host <NUM>. In some cases the data might be passed directly from the peripherals <NUM> to the host <NUM> or one of the secondary hosts <NUM>.

A library to communicate with and configure the power management arrangement is provided which enable the power management arrangement <NUM> including the timer <NUM>, the processing module <NUM>, and the interrupt interface <NUM> to be programmed. API documentation is also provided for the developer to be able to use the library.

Claim 1:
A power management arrangement (<NUM>) located in a device (<NUM>), the power management arrangement (<NUM>) being configured for managing a power consumption of the device (<NUM>) comprising:
- one or more peripherals (<NUM>);
- a processing module (<NUM>) connected to data communication lines (<NUM>) configured to exchange data within the power management arrangement (<NUM>) and with the one or more
peripherals (<NUM>);
- interrupt channels (<NUM>) configured to send and receive a bidirectional interrupt signal within the power management arrangement (<NUM>), to and from the one or more of the peripherals (<NUM>) to wake up the processing module (<NUM>) and the one or more peripherals (<NUM>) and thereby initiate exchange of items of data between the one or more peripherals (<NUM>) and the processing module (<NUM>);
- a local storage (<NUM>) connected to the processing module (<NUM>) and configured to store logic operations relating to communication with and operation of the power management arrangement (<NUM>) and the one or more peripherals (<NUM>); and
- a power management unit (<NUM>) connected to power lines (<NUM>) and configured to provide an adjustable supply voltage within the power management arrangement (<NUM>) and to the one or more peripherals (<NUM>) and to the processing module (<NUM>) through power lines (<NUM>).