In the following, the invention will be described in greater detail with reference to the embodiments and the accompanying drawings, in which
There are many different radio protocols that are used in communications systems. Some examples of different communication systems are the Universal Mobile Telecommunications System (UMTS) radio access network (UTRAN), Global System for Mobile Communications (GSM) and its modifications, Wireless Local Area Network (WLAN), Worldwide Interoperability for Microwave Access (WiMAX), Bluetooth, Personal Communications Services (PCS) and systems using ultra-wideband (UWB) technology.
The communications system of
The base station includes transceivers, for instance. From the transceivers of the base station, a connection is provided to an antenna unit that establishes bidirectional radio links to the user devices. The base station is further connected to a controller 110, such as a radio network controller (RNC), which further transmits the connections of the devices to the other parts of the network. The radio network controller controls in a centralized manner several base stations connected to it. The radio network controller is further connected to a core network 112 (CN). Depending on the system, the counterpart on the CN side may be a mobile services switching centre (MSC), a media gateway (MGW) or a serving GPRS (general packet radio service) support node (SGSN), for instance. It should be noticed that in future radio networks, the functionality of an RNC may be distributed among (possibly a subset on base stations.
The embodiments are not, however, restricted to the system given as an example but a person skilled in the art may apply the solution to other communication systems provided with the necessary properties. Different multiple radio protocols may be used in the communications systems in which embodiments of the invention are applicable. The communication system may also be able to communicate with other networks, such as a public switched telephone network or the Internet.
Next, an embodiment of a method is explained with reference to
In 202, a multiradio device processes hardware access requests from two simultaneously active radio protocols operated by the device. In the multiradio device, the receiver and transmitter chains are usually reconfigureable such that they may be used by different communications systems. In other words, there are no separate transceivers for each supported system but the systems may share common hardware resources, which may be accessed roughly at the same time by the different systems. There may be multiple receiver and transmitter chains if the protocols cannot be efficiently time multiplexed on one transceiver chain.
As an example of the importance of controlling shared resources, we may consider a TDMA (Time Division Multiple Access) system, where communicating radio devices rely on correct timing of transmissions, that is start and stop of transmit bursts. Even though the exact timing is usually a function of baseband processing, the radio frequency (RF) hardware must be controlled with a sufficient timing accuracy to ensure correct operation. For example, if the transmitter power amplifier is activated too early, the RF carrier is output to the air, thereby violating the radio standard. Similarly, if the activation of the hardware comes too late, the start of the transmit burst will not likely be recognized at the receiver due to missing or corrupted synchronization info.
Coordinating of the shared resources is also important in view of power consumption of the radio devices. Keeping the RF signal chain powered up consumes power and thus components should not be activated for too long. As one option, RF signal processing blocks may have small, distributed voltage regulators. Alternatively, a centralized control may be provided.
The resource requests made by the different radio systems may be divided into critical and pre-requisite operations, which pre-requisite operations happen before the critical operations. For example, if the main operation is the start of transmission burst, the critical deadline is determined by the radio protocol, and the power amplifier must be activated at that given moment. Thus the critical operation in this example is the activation of the power amplifier, which has to occur exactly at a specified moment. There are a number of tasks, pre-requisite operations, which have to be carried out before executing the critical operation. The pre-requisite operations might include powering up power to transmitter blocks, setting up a frequency synthesizer to output a carrier frequency and configuring the transmitter chain with the right output power.
In 204, a time window is determined for each operation. The time window defines an earliest activation time and a latest activation time for the operation. The operation may include writing a configuration, such as power gain of a hardware component, for instance, to a hardware register or provision of an enable/disable signal, thereby activating/de-activating the hardware component. In the case of critical operations, the earliest activation time and the latest activation time are the same, because the operation is to be executed exactly at a given time, defined by the radio protocol, for instance. The time windows of the pre-requisite operations may be longer. The only definite constraint is that the pre-requisite operations must have been executed before the critical operation.
In 206, the critical operations are scheduled to the dead-line. The latest allowed activation moment is the same as the earliest allowed activation moment for the critical operations. Scheduling may here include placing operations in a bus, which is shared by the communication processes operated by the device. Subsequently, the bus delivers and writes the operations to hardware registers such that the hardware is activated at the proper moment of time.
In 208, the pre-requisite operations of the at least two communication systems are scheduled. In one embodiment, the number of operations, such as hardware write requests, is calculated and a corresponding total time is reserved from a shared medium when the time needed for conveying one hardware write request is known. Then, the write requests may be written immediately following each other and there are no time gaps between the write operations in the bus.
In an embodiment, the pre-requisite operations have to be scheduled at least partly in a specified order. Some pre-requisite operation may be a pre-requisite operation for another pre-requisite operation, which has to be taken into account in the scheduling.
Additionally, the bus delay and hardware settling or activation time may need to be taken into account both with respect to the critical and pre-requisite operations. Such delay values may be taken into account by scheduling an operation early enough such that the activation of the hardware component is within the time window even though one or more additional delay components affect the execution of the write operation.
The critical operations of the communication processes A and B have been depicted by A0 and B0, respectively. The scheduling of the write operations of the critical operations are shown by dashed lines and as
Process A includes four pre-requisite processes A1 to A4, which must be performed before the critical operation A0. In the embodiment of
If we assume that A4 is a pre-requisite operation to the other pre-requisite operations A1, A2 and A3, it has to be noted that if the activation window A4 is moved to an earlier/later moment of time, this also may have effect on the other activation windows. For instance, is A4 is moved later, the activation windows of the other pre-requisite operations may have to be moved, or their length may have to be adjusted (shortened).
The communication process B includes three pre-requisite processes Bi to B3. Each pre-requisite process has a time window, of which the time window of operation B3 is shown by reference 302. The time window 302 defines an earliest allowed moment of time 304, and a latest allowed moment of time 306. It has to be noted that the window 302 defines the time window within which the component shall be activated. As the leftmost dashed line originating from block B3 in the bus 300 shows, the start of the write command is earlier than the earliest allowed activation time 304 of operation B3. However, the end of a timeslot reserved for command B3 in the bus 300 defines the actual activation moment of the hardware component and this is within the window 302.
Although not necessarily the case, B2 and B3 may be pre-requisite operations to the pre-requisite operation B1, because the activation windows of B2 and B3 finish before start of the activation window of B1. Alternatively, it may be assumed that B1 is scheduled late due to its great power consumption.
In one embodiment, if the order of the pre-requisite operations is not decisive, their order is defined by means of minimizing power consumption. Then, the most power-hungry operations are scheduled as late as possible.
The radio protocol in use gives the exact moment of an operation, which may be a start time of a transmission or a reception. The register write or hardware activation operations are set at this time (tS) minus hardware boot-up or settling time. The boot-up or settling time of a device is the time of its slowest component. If the components have greatly different start-up times, the write operations should be performed separately for the slow components and the fast components.
Next, a structure of a communication device 800 providing support for a plurality of different radio protocols will be described with reference to the embodiment of
The communication device 800 may comprise a user interface 806 connected to the control unit 802. The user interface 806 may comprise a keyboard, a microphone, a loudspeaker, a display, and/or a camera, for instance.
The communication device 800 of
The communication device 802 further includes a control unit 802 to control functions and provide services to other entities of the device 800. The control unit may provide software and hardware implementations for controlling two-way radio connections between the device 800 and any external radio networks. A memory 804 may be provided for storing software and any other information needed during operation of the device.
The control unit 802 may include a processing unit 830 configured to receive a plurality of operations relating to at least two communication processes, wherein each communication process includes a critical operation and one or more pre-requisite operations, and wherein a scheduling window defining a time window within which an operation is to be scheduled, is defined for each operation.
The multiradio device 800 also includes a scheduler 816. The scheduler may be configured to process any of the method steps disclosed with reference to other embodiments. The control unit may grant different radio protocols an access to hardware, and configure the hardware properly for the active radio protocol. It may also dynamically optimize parallel hardware chains to different systems based on the grants and system prioritization.
The device 800 may also include a hardware module 818. The module may include a pool 820 of hardware components available to different communication processes 810, 814 and the associated device units, such as transceivers 808 and 812, for instance. A shared hardware component may be include a frequency synthesiser, a power amplifier, a radio receiver, a radio transmitter or a crystal oscillator, for instance.
The module may also include a hardware register 822 for storing hardware write commands. A shared medium 824, such as a control bus for transferring hardware write commands, and shared by the multiple communication processes, may also be provided.
A memory 826 for storing configuration information relating to hardware components may also be provided. The hardware components are controlled by writing into their control registers. What is written into the registers depends upon the nature of the desired operation. Typically, the register values are not constant, and they need to be calculated in advance. It may be impossible to carry out the calculations just before the register values are written. Therefore, the values may be calculated and stored in memory in advance and “early enough” before the write operation. The stored value is then placed into the bus and subsequently written into the register at the right moment.
The operation of the device 800 may be such that the processing unit 830 identifies critical and pre-requisite operations relating to communication processes 808, 814, and provides these operations to the scheduler 816. The scheduler may calculate configuration information and put the calculated configuration information in memory 826. At the right moment, the scheduler reads the configuration information from the memory and provides a write command to the bus 824 for activating the associated hardware component. The write command is placed in the hardware register 822 of the hardware component, which activates the hardware component for use by a communication process.
Some of the embodiments performed mainly by the scheduler are provided in the following.
In one embodiment, the scheduler is configured to schedule the operations such that the pre-requisite operations of a communication process precede the critical operations of that communication process, and each pre-requisite operation is scheduled to its scheduling window. The scheduler may determine the scheduling window for each operation. One criterion for determining the scheduling windows is the minimizing of the power consumption of the device.
In one embodiment, the scheduler is configured to schedule the pre-requisite operations of the at least two communication processes at least partly alternately to the shared medium. The operations may be placed alternately in the bus if that is advantageous in view of some predetermined criterion, such as minimizing of power consumption.
In one embodiment, the scheduler is configured to calculate a number of the pre-requisite operations, and determine the time that shall be reserved from the shared medium such that all pre-requisite operations can be scheduled before critical operations. A simple example of this is that if 10 operations need to be scheduled, the time reserved from the bus is at least 10 times the time a single write command takes from the bus.
In one embodiment, the scheduler is configured to schedule the pre-requisite operations such that no time gaps are formed in the shared medium. Optimally, there are no time gaps in the scheduled bus. This is one indicator that the hardware components are not unnecessary in an active state. As a further measure, the scheduler may be configured to schedule the operations such that the most power-hungry operations occur near the deadline, that is the critical operation. This may be carried out on the condition that the order of the pre-requisite operations may be freely chosen.
The scheduler is configured to schedule the critical operations exactly to a predetermined moment of time. When performing this, the scheduler may have to take a bus delay, and a settling time of the critical operation into account. The scheduler may also have to ensure that all pre-requisite operations have been executed in time, that is they are active at the moment the critical operation is expected to be active.
In one embodiment, the scheduler is configured to schedule a de-activation scheduling sequence following the scheduling of operations of the at least two communication processes. In case of de-activating sequences, term post-requisite operation may be used instead of pre-requisite operation.
In a first embodiment, the de-activation scheduling sequence is opposite to the scheduling of operations. Thus, the first operation to be de-activated is the critical operation and then following the de-activation of the critical operation, one or more post-requisite operations are scheduled. In another embodiment, the de-scheduling sequence of the hardware components differs from an opposite of the scheduling sequence. In practise, de-scheduling of a component may include providing a disable signal to the hardware component, or providing a “power down” command changing a value of a hardware bit, for instance.
In one embodiment, the scheduler is configured to schedule two hardware components having different activating times such that they are activated simultaneously. This is called parallel dependency of the components. Then the combination device is activated at the activation moment of the two components.
In one embodiment, the scheduler is configured to schedule the operation such that the hardware component is activated in time by taking into account a voltage regulator power supply delay, the voltage regulator feeding power to the hardware component being activated. This is one example of a sequential dependency, wherein the hardware component is sequentially dependent on activation of the voltage regulator.
Embodiments of the invention or parts of them may be implemented as a computer program comprising instructions for executing a computer process for implementing the method according to the invention.
The computer program may be stored on a computer program distribution medium readable by a computer or a processor. The computer program medium may be, for example but not limited to, an electric, magnetic, optical, infrared or semiconductor system, device or transmission medium. The computer program medium may include at least one of the following media: a computer readable medium, a program storage medium, a record medium, a computer readable memory, a random access memory, an erasable programmable read-only memory, a computer readable software distribution package, a computer readable signal, a computer readable telecommunications signal, computer readable printed matter, and a computer readable compressed software package.
Other than a computer program implementation solutions are also possible, such as different hardware implementations (modules), e.g. a circuit built of separate logics components or one or more client-specific integrated circuits (Application-Specific Integrated Circuit, ASIC). A hybrid of these implementations is also feasible.
By the shown embodiments, power-efficient multiradio devices, which share a common control bus used by the multiple supported radio protocols, may be implemented.
Furthermore, late reservation of needed hardware components allows construction of power-efficient devices, since the hardware components need not be reserved for unnecessarily long times.
Even though the invention has been described above with reference to an example according to the accompanying drawings, it is clear that the invention is not restricted thereto but it can be modified in several ways within the scope of the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
20065620 | Oct 2006 | FI | national |