Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
HANDLING STATUS DATA UNITS FROM MULTIPLE DATA STREAMS
Document Type and Number:
WIPO Patent Application WO/2013/167339
Kind Code:
A1
Abstract:
Methods and apparatuses for communications via multiple data flows are disclosed. At least one status data unit can be received via a radio link control layer link of a multiple of possible links. Control of radio link control resets comprises determining how sequence information of the at least one status data unit received via the radio link control layer link relates to a predefined window. It is then determined, based on the determined relation and at least one of information associated with said radio link control layer link and the received at least one status data unit whether to at least partially ignore the at least one status data unit or to perform a radio link control reset.

Inventors:
MOILANEN JANI MATTI JOHANNES (FI)
HOEHNE HANS THOMAS (FI)
SAYENKO ALEXANDER (FI)
Application Number:
PCT/EP2013/057644
Publication Date:
November 14, 2013
Filing Date:
April 12, 2013
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
NOKIA SIEMENS NETWORKS OY (FI)
International Classes:
H04W76/06
Foreign References:
EP1758408A12007-02-28
EP1337125A22003-08-20
EP2136570A12009-12-23
EP2015526A22009-01-14
Other References:
None
Download PDF:
Claims:
Claims

1. A method for handling communications via multiple data streams, comprising

receiving at least one status data unit via a radio link control layer link of a multiple of possible links, and

controlling radio link control resets, the controlling comprising

determining how sequence information of the at least one status data unit received via the radio link control layer link relates to a predefined window, and

determining, based on the determined relation and at least one of information associated with said radio link control layer link and the received at least one status data unit whether to at least partially ignore the at least one status data unit or to perform a radio link control reset.

2. A method according to claim 1, comprising performing the determining whether to at least partially ignore the at least one status data unit or to perform the radio link control reset in response to determining whether a radio link control status data unit refers to at least one sequence number which is outside a radio link control transmission window.

3. A method according to any preceding claim, comprising determining that sequence information of the at least one status data unit received via said link is within the

predefined window and in response thereto storing information identifying said link.

4. A method according to any preceding claim, comprising determining, in response to determining that the sequence information of the at least one status data unit is outside the predefined window, whether identity of said one link corresponds to stored link identity information, wherein when the identity of said one link corresponds to the stored link identity information, performing the radio link control reset, and

when the identity of said one link does not correspond to the stored link identity information, ignoring at least part of the at least one status data unit.

5. A method according to any preceding claim, comprising storing sequence information of at least one previously received status data unit for said one link.

6. A method according to claim 5, comprising comparing the sequence information of the at least one status data unit to the stored sequence information to determine timing of the status data unit, wherein

when it is determined that the at least one status data unit is older than the previously received status data unit, the radio control link reset is performed, and

when it is determined that the at least one status data unit is more recent or the same than the previously received status data unit, at least a part of the at least one status data unit is ignored.

7. A method according to claim 6, comprising, in response to determination that the at least one status data unit is more recent or the same than the latest received status data unit, updating the stored latest sequence information for the one link.

8. A method according to claim 6 or 7, wherein the

comparing comprises calculating a normalised sequence number for a received status data unit based on a stored latest sequence number and size of the window.

9. A method according to any of claims 5 to 8, wherein the storing of sequence information comprises storing the latest sequence number of the latest received status data unit per each link or per each base station.

10. A method according to any of claims 5 to 9, comprising ensuring that the distance between the value of stored latest sequence number and beginning of the predefined window is less than the size of a radio link control transmission window .

11. An apparatus for a communication device for controlling communications via multiple data streams, the apparatus comprising at least one processor, and at least one memory including computer program code, wherein the at least one memory and the computer program code are configured, with the at least one processor, to

receive at least one status data unit via a radio link control layer link of a multiple of possible links,

determine how sequence information of the at least one status data unit received via the radio link control layer link relates to a predefined window, and

determine, based on the determined relation and at least one of information associated with said radio link control layer link and the received at least one status data unit whether to at least partially ignore the at least one status data unit or to perform a radio link control reset.

12. An apparatus according to claim 11, configured to determine whether a radio link control status data unit refers to at least one sequence number which is outside a radio link control transmission window, and in response thereto to determine whether to at least partially ignore the at least one status data unit or to perform the radio link control reset.

13. An apparatus according to claim 11 or 12, wherein the at least one memory is configured for storing information identifying a link in response to determination that sequence information of the at least one status data unit received via said link is within the predefined window.

14. An apparatus according to any of claims 11 to 13, configured to determine, when the sequence information of the at least one status data unit is outside the predefined window, whether the identity of said one link corresponds to link identity information stored in the at least one memory, and in response thereto to cause wherein

performing the radio link control reset when the

identity of said one link corresponds to the stored link identity information, and

ignoring at least part of the at least one status data unit when the identity of said one link does not correspond to the stored link identity information,

15. An apparatus according to any of claims 11 to 14, configured to

store sequence information of at least one previously received status data unit for said one link,

compare the sequence information of the at least one status data unit to the stored sequence information to determine timing of the status data unit,

reset the radio control link reset when the at least one status data unit is older than the previously received status data unit, and

ignore at least a part of the at least one status data unit and/or update stored latest sequence information for the one link when the at least one status data unit is more recent or the same than the previously received status data unit .

16. An apparatus according to any of claims 11 to 15, configured to store the latest sequence number of the latest received status data unit on per link or per base station basis .

17. A mobile device comprising the apparatus according to any of claims 11 to 16.

18. A computer program comprising code means adapted to perform the steps of any of claims 1 to 10 when the program is run on a processor.

Description:
Description

Title

Handling status data units from multiple data streams

This disclosure relates to wireless communications and more particularly to handling of status data units from a multiple of data streams in a wireless communication system.

A wireless communication system can be seen as a facility that enables wireless carriers between two or more nodes such as fixed or mobile communication devices, access points such as base stations, servers machine type devices, and so on. A communication system and compatible communicating devices typically operate in accordance with a given standard or specification which sets out what the various entities associated with the system are permitted to do and how that should be achieved. For example, the standards,

specifications and related protocols can define the manner how and what communication devices shall communicate, how various aspects of the communications shall be implemented and how the devices shall be configured. Examples of wireless systems include public land mobile networks (PLMN) such as cellular networks, satellite based communication systems and different wireless local networks, for example wireless local area networks (WLAN) . Wireless systems can be divided into coverage areas referred to as cells.

A user can access the communication system by means of an appropriate communication device. A communication device of a user is often referred to as user equipment (UE) or terminal. A communication device is provided with an appropriate signal receiving and transmitting arrangement for enabling

communications with other parties. Wireless systems enable mobility for users where a mobile device can communicate over an air interface with another communication device such as e.g. a base station and/or other user equipment.

Examples of mobile communication systems are those based on standards by the 3rd Generation Partnership Project (3GPP) . A recent 3GPP development is often referred to as the long-term evolution (LTE) of the Universal Mobile Telecommunications System (UMTS) radio-access technology. A scheme known as High-Speed Downlink Packet Access (HSDPA) Multiflow transmission (Tx) has been proposed in 3GPP

standardisation. In multiflow transmission arrangements data rates and robustness for example at a cell edge can be improved by receiving transmissions from a plurality of sources, typically from neighbouring cells. It has been agreed in the 3GPP that in case of inter-site multiflow, downlink data flow can be split to two independent data streams at radio link control (RLC) layer. For example, feedback for uplink traffic sent in downlink may experience multiflow transmission. An example of the feedback are RLC protocol data units (PDUs) carrying RLC status information as payload. Such a PDU is referred in this description as a radio link control (RLC) status PDU. One RLC status PDU may define status information of a multiple of RLC PDUs and may thus refer to a multiple of PDU sequence numbers (SN) . The feedback information can comprise for example ACK/NACK

(acknowledged / not acknowledged) information. Although the multiflow has only been proposed for the downlink, downlink related feedback information can also affect uplink

performance .

In high-speed packet access (HSPA) systems without a

multiflow capability it can be assumed that RLC status PDUs arrive in the same sequence at a mobile device as they were sent by the element controlling the transmission. Therefore, the current HSPA RLC protocols define that if a mobile device receives a RLC status PDU that refers to a sequence number which is outside a RLC transmission window of the receiving mobile device it shall be considered as a sign of unexpected behaviour and the mobile device shall initiate a RLC reset to recover from this situation. A RLC receive/transmission window refers to the number of outstanding received/sent packets. In normal operation a RLC transmission window must not exceed a RLC window divided by two.

However, with multiflow it can happen that a controlling element, for example a RNC, sends a RLC PDU first via a first NodeB. When it is time to create the next status PDU, the RNC may decide to send it via a second NodeB. This may happen e.g. if the radio link of the second NodeB is expected to have a better signal quality, for reasons of congestion and so on. If the first status PDU is delayed in the first NodeB it is possible that the status PDU sent via the second NodeB arrives at the mobile device first and the mobile device will shift its RLC window forward accordingly. When the status PDU from the first NodeB finally arrives, this PDU may be

referring to sequence numbers that fall outside the RLC transmission window of the receiving device. This can result an unnecessary RLC reset.

It may also be desirable in some applications to use

multiflow for bicasting. In this case the same RLC status PDU can be transmitted from more than one NodeB. Also in this case a status PDU that arrives first at a mobile device causes shift of the RLC transmission window, where after the (bicasted) status PDU arriving from another NodeB can cause a RLC reset.

In accordance with LTE and WiMAX (IEEE 802.16e)

specifications a mobile device shall ignore any parts of RLC status PDU that refer to sequence numbers that fall outside the relevant RLC transmission window. A problem with this approach can be that it may not provide sufficient robustness in a case where the RLC state machines at the network and the mobile device are out of synchronisation. A result of this can be that a RLC reset might not be provided when it would actually be needed.

It is noted that the above discussed issues are not limited to any particular communication environment and station apparatus but may occur in any appropriate system where cells are selected by mobile devices.

Embodiments of the invention aim to address one or several of the above issues.

In accordance with an embodiment there is provided a method for handling communications via multiple data streams, comprising receiving at least one status data unit via a radio link control layer link of a multiple of possible links, and controlling radio link control resets. The

controlling comprises determining how sequence information of the at least one status data unit received via the radio link control layer link relates to a predefined window, and

determining, based on the determined relation and at least one of information associated with said radio link control layer link and the received at least one status data unit whether to at least partially ignore the at least one status data unit or to perform a radio link control reset. In accordance with another embodiment there is provided an apparatus for a communication device for controlling communications via multiple data streams, the apparatus comprising at least one processor, and at least one memory including computer program code, wherein the at least one memory and the computer program code are configured, with the at least one processor, to receive at least one status data unit via a radio link control layer link of a multiple of possible links, determine how sequence information of the at least one status data unit received via the radio link control layer link relates to a predefined window, and determine, based on the determined relation and at least one of information associated with said radio link control layer link and the received at least one status data unit whether to at least partially ignore the at least one status data unit or to perform a radio link control reset.

In accordance with a more detailed embodiment the determining whether to at least partially ignore the at least one status data unit or to perform the radio link control reset is provided in response to determining whether a radio link control status data unit refers to at least one sequence number which is outside a radio link control transmission window .

If it is determined that sequence information of the at least one status data unit received via said link is within the predefined window, information identifying said link may be stored. If it is determined that the sequence information of the at least one status data unit is outside the

predefined window, it can be determined whether identity of said one link corresponds to the stored link identity

information. When the identity of said one link corresponds to the stored link identity information, the radio link control reset is performed. When the identity of said one link does not correspond to the stored link identity

information, at least part of the at least one status data unit is ignored.

Sequence information of at least one previously received status data unit for said one link may be stored. The

sequence information of the at least one status data unit may be compared to the stored sequence information to determine timing of the status data unit. When it is determined that the at least one status data unit is older than the previously received status data unit, the radio control link reset is performed. When it is determined that the at least one status data unit is more recent or the same than the previously received status data unit, at least a part of the at least one status data unit is ignored. In response to determination that the at least one status data unit is more recent or the same than the latest received status data unit, the stored latest sequence information may be updated for the one link. The comparing can comprise calculating a normalised sequence number for a received status data unit based on a stored latest sequence number and size of the window. The storing of sequence information may comprise storing the latest sequence number of the latest received status data unit per each link or per each base station.

It may be ensured that the distance between the value of stored latest sequence number and beginning of the predefined window is less than the size of a radio link control

transmission window.

A mobile device arranged to implement the embodiments may also be provided.

A computer program comprising program code means adapted to perform the herein described methods may also be provided. In accordance with further embodiments apparatus and/or computer program product that can be embodied on a computer readable medium for providing at least one of the above methods is provided .

It should be appreciated that any feature of any aspect may be combined with any other feature of any other aspect.

Embodiments will now be described in further detail, by way of example only, with reference to the following examples and accompanying drawings, in which:

Figure 1 shows a schematic diagram of a communication system where the invention may be embodied;

Figure 2 shows a schematic diagram of a mobile device implementing certain embodiments;

Figure 3 shows an example of an arrangement where data can be received on multiple links;

Figure 4 shows an example of a problematic scenario with the multiple data floes of Figure 3; and Figures 5 to 7 show flowcharts according certain embodiments.

In the following certain exemplifying embodiments are

explained with reference to a wireless or mobile

communication system serving mobile communication devices. Before explaining in detail the exemplifying embodiments, certain general principles of wireless communications and radio link control are briefly explained with reference to Figures 1 to 4 to assist in understanding the technical detail underlying the described examples.

A non-limiting example of communication system architectures is Universal Mobile Telecommunications System (UMTS)

standardized by the 3rd Generation Partnership Project

(3GPP) . 3GPP base stations are known as Node Bs (for UMTS) and enhanced Node Bs (for 3GPP Long Term Evolution, LTE) . The base station typically provide features such as user plane Radio Link Control/Medium Access Control/Physical layer protocol (RLC/MAC/PHY) and control plane Radio Resource

Control (RRC) protocol terminations towards the communication devices. Other examples of radio access system include those provided by base stations of systems that are based on technologies such as wireless local area network (WLAN) and/or WiMax (Worldwide Interoperability for Microwave

Access) .

Mobile communication devices 1 can be provided with wireless access via base stations or similar wireless transmitter and/or receiver nodes providing radio service areas or cells. Figure 1 shows two bases stations 2 and 4 proving cell 3 and 5, respectively. A mobile communication device 1 may be located in the service areas of different cells, communicate with more than one cell and be handed over from a cell to another. The base station nodes can be connected to a core communications network via appropriate gateways and/or backhaul systems. It is noted that the base stations and mobile devices are only schematically shown for illustration purposes in Figure 1, and that the number and type of these can vary considerably from that shown. Base stations are typically controlled by at least one appropriate controller apparatus so as to enable operation thereof and management of mobile communication devices in communication with the base stations. The control apparatus can be interconnected with other control entities. The control apparatus can be

configured to execute an appropriate software code to provide the control functions. The control apparatus and functions may be distributed between a plurality of control units. Two or more base stations may be controlled a control apparatus 6.

A possible mobile device for communications with the base stations is often referred to as user equipment (UE) or terminal. A mobile device for implementing the embodiments may be provided by any device capable of sending radio signals to and/or receiving radio signals from multiple cells. Non-limiting examples include a mobile station (MS) such as a mobile phone or what is known as a 'smart phone', a portable computer provided with a wireless interface card or other wireless interface facility, personal data assistant (PDA) provided with wireless communication capabilities, or any combinations of these or the like. A mobile device may provide, for example, communication of data for carrying communications such as voice, electronic mail (email) , text message, multimedia and so on. Users may thus be offered and provided numerous services via their devices. Non-limiting examples of these services include two-way or multi-way calls, data communication or multimedia services or simply an access to a data communications network system, such as the Internet. User may also be provided broadcast or multicast data. Non-limiting examples of the content include downloads, television and radio programs, videos, advertisements, various alerts and other information.

A mobile device may receive and transmit signals over an air interface with multiple base stations via an appropriate transceiver apparatus. In Figure 2 transceiver apparatus of a mobile device 20 is designated schematically by block 26. The transceiver apparatus 26 may be provided for example by means of a radio part and associated antenna arrangement. The antenna arrangement may be arranged internally or externally to the mobile device.

A mobile device is also provided with at least one data processing entity 21, at least one memory 22, and other possible components 23 for use in software and hardware aided execution of tasks it is designed to perform, including control of access to and communications with access systems and other communication devices. The data processing, storage and other relevant control apparatus can be provided on an appropriate circuit board and/or in chipsets. This feature is denoted by reference 24.

The user may control the operation of the mobile device by means of a suitable user interface such as key pad 25, voice commands, touch sensitive screen or pad, combinations thereof or the like. A display 28, a speaker and a microphone can be also provided. Furthermore, a mobile communication device may comprise appropriate connectors (either wired or wireless) to other devices and/or for connecting external accessories, for example hands-free equipment, thereto.

A wireless communication device, such as a base station and/or a mobile station, can be provided for example with a Multiple Input / Multiple Output (MIMO) antenna system for enabling multi-flow communications. MIMO arrangements as such are known. MIMO systems use multiple antennas at the

transmitter and receiver along with advanced digital signal processing to improve link quality and capacity. More data can be received and/or sent where there are more antenna elements .

In case of inter-site multiflow, downlink data flow can be split to independent data streams at radio link control (RLC) layer. The splitting can be done in a radio network

controller (RNC) . This is illustrated in Figure 3 showing a serving radio network controller (SRNC) , two base station provided by Node B' s and a mobile device UE . As shown, the

RLC protocol termination points are provided in the SRNC and the UE . Downlink data between the terminations flows via the two Node Bs .

Figure 4 shows an example of a possible scenario. With multiflow it can happen that the controlling element, in the example RNC sends a RLC status PDU first via a first NodeB (NB1) . The RNC may decide to send the next RLC status PDU via a second NodeB (NB2) . This may happen e.g. if the radio link of the second NodeB is expected to have a better signal quality, for reasons of congestion and so on. If for some reason the first RLC status PDU is delayed in the first

NodeB, e.g. if the first NodeB decides to schedule other, higher priority traffic, it may happen that the RLC status PDUs arrive at the mobile device in "wrong" order, i.e. PDU2 arrives before PDU1. After reception of PDU2 the mobile device advances its RLC window forward based thereon. When the status PDU from the first NodeB finally arrives it can refer to sequence numbers that fall outside the RLC transmission window of the receiving device, resulting an unnecessary RLC reset.

In accordance with the herein described embodiments a mobile device, for example a user equipment (UE) is adapted to utilize information regarding the link wherefrom it has received a RLC status PDU and/or information regarding a received RLC status PDU to determine whether it should ignore the RLC status PDU or perform a RLC reset. The determination can be provided when sequence information, typically in the form of sequence numbers (SNs) , of the PDU referring to the relevant PDUs falls outside a RLC transmission window.

In accordance with an embodiment shown in the flowchart of Figure 5 in a method for handling communications at least one status data unit is received at 50 via one RLC link of a multiple possible links. Control of radio link control resets comprises determining at 52 how sequencing information of a status data unit or a plurality of status data units received via the one link relates to a predefined window. It is then determined at 54, based on the determined relation between the sequencing information and the predefined window and also at least one of information associated with said one link and the received status data unit whether to ignore the at least one status data unit or to perform a radio link control reset.

The determining whether to ignore the status data unit or to perform the radio link control reset can be provided in response to determining whether a radio link control status data unit refers to a sequence number of a PDU that is outside a radio link control transmission window.

In accordance with a more detailed embodiment shown in the flowchart of Figure 6, when a user equipment (UE) capable of receiving via a multiple of links receives a radio link control (RLC) status PDU at 60, following operation may follow. If it is determined at 62 that at least one of the SNs of an acknowledged PDU falls inside a RLC transmission window of the UE, the UE can update a RLC state machine thereof at 65. The UE can store at 64 information regarding the identity (ID) of the link on which it received the PDU. A variable can be provided in the state machine of the UE to store information of the latest link ID. In the example this is done by setting the latest link ID parameter to equal with ID value X of the latest received link.

It can be alternatively determined at 62 that at least one of the SNs of PDU the RLC status PDU associates with falls outside the RLC transmission window of the UE . In this case a further determination is made at 66 to check if the PDU was received from same link as the latest stored link ID. If yes, UE can perform RLC reset at 67. If it is determined that the PDU was received from a different link than the latest stored link ID, the UE can ignore the status PDU, or at least those parts thereof that are determined as falling outside transmission window, at 68.

It is noted that a RLC status PDU may define status information for a multiple of RLC PDUs and thus the RLC status PDU may refer to a multiple of sequence numbers. As the status information of PDUs is typically sent in ascending order, it is possible to determine that if the first sequence number (SN) is already out of RLC transmission window so are the others and there is no need to check the other SNs.

Similarly, if the first SN is acceptable then the rest of them in a RCL status PDU may also be considered to be so.

According to an embodiment only a part of a RLC status PDU may be ignored, meaning that the status of those PDUs with SNs falling outside RLC transmission window are ignored but the rest of the status information, i.e. the part associated with SNs that fall inside RLC transmission window, is used normally to update the RLC state variables of the UE .

In accordance with another embodiment shown in the flowchart of Figure 7, when a UE receives a RLC status PDU at 70, the operation may be as follows. The UE can maintain a local state variable where it writes the last sequence number (LSN) of the latest received status PDU. A check is made at 71 if the RLC status PDU is within the RLC transmission window. If yes, the LSN(x) value is set accordingly at 72 and the status machine is updated at 73. If the RLC status PDU is not within the RLC transmission window, further determinations can follow .

If the RLC status PDU is determined at 74 to be "older" than the most recent RLC status PDU received from the same link, UE performs RLC reset at 75. If the RLC status PDU is determined to be newer, or the same, than the most recent RLC status PDU received from the same link and if the SNs it refers to fall (at least partly) outside the RLC transmission window the UE can ignore the RLC status PDU (or at least the parts that fall outside transmission window) at 77 and update the last sequence number (LSN) for the link at 76.

This embodiment may provide protection against false RLC resets also in cases where several consecutive "out-of- window" status PDUs are received from a link.

A UE can store one variable, for example the last sequence number (LSN) per each link or per each base station site.

The LSN of status report can be compared to the stored LSN to determine which one is "older". This can be done e.g. with a normalization procedure, for example with a normalization procedure used elsewhere in the RLC protocol. The stored LSN value can be used as the RLC window basis to calculate the "normalized" LSN value of the received status PDU. If it is out of the transmission window it is considered to be older than the stored value and the RLC reset procedure is

triggered. As an example, this can be calculated based on: (SN - basis_SN+ WINDOW_SIZE) MOD WINDOW_SIZE.

Thus, if the stored LSN value is 200, and a status PDU with LSN 100 is received, then assuming the maximum RLC sequence number value of 1024 and 200 as a basis for the RLC window, the result is 924. This value is larger than the total number of outstanding packets as governed by the RLC transmission window size (1024 / 2) .

It should also be noted that the stored LSN value can become outdated if a RNC does not send status PDUs for a long period of time over a particular link. To avoid any unwanted

consequences, a UE advancing forward its RLC window can ensure that the distance between the stored LSN value and the beginning of the RLC window is less than the RLC transmission window size, i.e., the RLC window size divided by two.

The embodiments may provide advantage e.g. because data flow disruptions can be avoided during the serving cell change. This is so since transmission of RLC status PDUs is not limited to a certain link, for example to a serving link only, and thus a user equipment does not have to ignore valid RLC status PDUs even if these come from a "wrong" link. Good flexibility for a RNC to schedule RLC status PDUs may be provided. This can improve robustness of the links.

Robustness against genuine RLC "out-of-sync" issues may also be provided. No additional overhead is introduced and no change to current RLC PDU formats is necessary. The operation at the network side is not necessarily affected.

It is noted that whilst embodiments have been described using an UMTS based system as an example, similar principles can be applied to any other communication system or indeed to further developments with UMTS where status data units can be communicated via multiple flows. Thus, instead of the UMTS and HSPA, the invention may be applied to other cellular standards and technologies as well. Also, instead of carriers provided by base stations at least one of the carriers may be provided by a communication device such as mobile user equipment. For example, this may be the case in application where no fixed equipment provided but a communication system is provided by means of a plurality of user equipment, for example in adhoc networks. Therefore, although certain embodiments were described above by way of example with reference to certain exemplifying architectures for wireless networks, technologies and standards, embodiments may be applied to any other suitable forms of communication systems than those illustrated and described herein.

The required data processing apparatus and functions of a base station apparatus, a communication device and any other appropriate apparatus may be provided by means of one or more data processors. The described functions at each end may be provided by separate processors or by an integrated

processor. The data processors may be of any type suitable to the local technical environment, and may include one or more of general purpose computers, special purpose computers, microprocessors, digital signal processors (DSPs) ,

application specific integrated circuits (ASIC) , gate level circuits and processors based on multi core processor

architecture, as non-limiting examples. The data processing may be distributed across several data processing modules. A data processor may be provided by means of, for example, at least one chip. Appropriate memory capacity can also be provided in the relevant devices. The memory or memories may be of any type suitable to the local technical environment and may be implemented using any suitable data storage technology, such as semiconductor based memory devices, magnetic memory devices and systems, optical memory devices and systems, fixed memory and removable memory.

In general, the various embodiments may be implemented in hardware or special purpose circuits, software, logic or any combination thereof. Some aspects of the invention may be implemented in hardware, while other aspects may be

implemented in firmware or software which may be executed by a controller, microprocessor or other computing device, although the invention is not limited thereto. While various aspects of the invention may be illustrated and described as block diagrams, flow charts, or using some other pictorial representation, it is well understood that these blocks, apparatus, systems, techniques or methods described herein may be implemented in, as non-limiting examples, hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controller or other computing devices, or some combination thereof. The software may be stored on such physical media as memory chips, or memory blocks implemented within the processor, magnetic media such as hard disk or floppy disks, and optical media such as for example DVD and the data variants thereof, CD.

The foregoing description has provided by way of exemplary and non-limiting examples a full and informative description of the exemplary embodiment of this invention. However, various modifications and adaptations may become apparent to those skilled in the relevant arts in view of the foregoing description, when read in conjunction with the accompanying drawings and the appended claims. However, all such and similar modifications of the teachings of this invention will still fall within the spirit and scope of this invention as defined in the appended claims. Indeed there is a further embodiment comprising a combination of one or more of any of the other embodiments previously discussed.