Title of Invention

A METHOD FOR DYNAMIC DATA ADJUSTMENT OF A WIRELESS TRANSPORT CHANNEL AND A WIRELESS MULTIMEDIA SYSTEM THEREFOR.

Abstract The present invention relates to a method for dynamic data rate adjustment of a wireless transport channel of a plurality of wireless channels in a wireless multimedia system (10) having a multimedia server (12), a plurality of client modules (14-22) and a plurality of wireless transport channels, the method comprises: monitoring by one of the plurality of client modules, channel characteristics of the wireless transport channel at or below a receive packet rate to determine variations in the channel characteristics from at least one packet to at least one other packet received via the wireless transport channel; determining, by the one of the plurality of client modules or the multimedia server, whether the variations in the channel characteristics affect data rate of data contained in received packets; when the variations in the channel characteristics affect the data rate, providing, by the one of the plurality of client modules or the multimedia server, data rate adjustment regarding transmission via the wireless transport channel between the at least one of the plurality of client modules and the multimedia server; and adjusting, by the multimedia server, data rate of data contained in packets being transported via the wireless transport channel in accordance with the data rate adjustment.
Full Text A METHOD FOR DYNAMIC DATA RATE ADJUSTMENT OF A WIRELESS
TRANSPORT CHANNEL AND A WIRELESS MULTIMEDIA SYSTEM
THEREFOR
TECHNICAL FIELD OF THE INVENTION
This invention related generally to wireless communication systems and more particularly
to data rate adjustments within such wireless communication systems.
BACKGROUND OF THE INVENTION
As is known, wireless communication systems include a plurality of wireless
communication devices that communicate via an assigned radio frequency (RF) channel or
channels, which may be done directly (i.e., point-to-point) or indirectly (i.e., via the wireless
communication system infrastructure). For point-to-point wireless communications,
wireless communication devices communicate directly via an RF channel, which is selected
by one of the wireless communication devices from a list of RF channels allocated for
point-to-point communications. For indirect wireless communications, the wireless
communication devices communicate via the system's infrastructure, which includes base
stations (e.g., for cellular wireless communication systems, dispatched based wireless
communication systems, et cetera) and/or access points (for wireless local area networks).
As is known, a base station or access point receives a request from a wireless
communication device within its coverage area to establish a communication with another
wireless communication device. Upon receiving the request, the base station or access point
determines whether the targeted wireless communication device is within its coverage area.
If so, the base station or access point provides an RF channel for the wireless
communication devices to use for their communication. If, however, the targeted wireless
communication device is not within the coverage area of the base station or access point, the
base station or access point forwards the request to a wireless communication system
controller. The wireless communication system controller determines the particular base
station or access point that the targeted wireless communication device is affiliated with.
The identified base station or access point allocates an RF channel for the targeted wireless
communication device and, via a communication path established by the controller between
the base stations or access points, the wireless communication devices are able to
communicate.
As is known, a wireless communication device may be a cellular telephone, mobile
radio, personal digital assistant with a wireless modem, personal computer with a wireless
modem, local area network server with a wireless modem, computer with a wireless
modem, interactive television, interactive home entertainment equipment, et cetera. As is
also known, the content of the communication may be voice data, text data, and/or video
data. Multimedia communications typically include all three, with video and audio
comprising a majority of the communication.
Figure 1 illustrates a wireless communication of multimedia data between wireless
communication devices. In this illustration, a video transmitter is transmitting packets of
encoded video data to a video receiver. The video transmitter includes a video encoder,
buffer, baseband processor, and an RF transceiver. The baseband processor performs a
media-specific access control protocol (MAC) in accordance with an IEEE 802
specification and the RF transceiver performs physical layer (PHY) functions in accordance
with the IEEE 802 specification.
The video encoder encodes raw video and/or audio data based on a corresponding
encoding function. For example, the encoding may be done in accordance with morion
picture expert group (MPEG) standards. The resulting encoded data is stored in the buffer.
The encoded data is retrieved from the buffer and processed via the baseband processor and
transmitted by the RF transceiver as packets of data to the video receiver via a wireless
communication channel. The video receiver includes an RF transceiver, baseband
processor, buffer and a video decoder. The RF transceiver and baseband processor perform
the inverse functions of the corresponding devices in the video transmitter. The retrieved
data is stored in the buffer and eventually decoded via the video decoder to recapture the
raw data.
As mentioned, the encoded data is transmitted by the video transmitter in packets of
data via a wireless communication channel. For each packet of data that is successfully
received by the RF transceiver of the video receiver, an acknowledgment is transmitted
back to the RF transceiver of the video transmitter. If an acknowledgement is not received
within a given time frame, the baseband processor (MAC layer) retransmits the packet of
data and will continue the retransmission until an acknowledgment is received or the
channel is dropped. Typically, if the video receiver does not provide an acknowledgment it
was because the receiver was unable to accurately recapture the data contained in the
packet, which is commonly referred to as packet error.
The quality of the wireless communication channel on which the packet was
received greatly affects the receiver's ability to accurately recapture the data. As is known,
if the quality of the wireless communication channel between the video transmitter and
video receiver is high (i.e., received signals have good signal to noise ratio), the video
receiver is able to accurate recapture data from most, if not all, of the packets it receives.
As the quality of the RF channel decreases, the signal to noise ratio decreases, as does the
receiver's ability to recapture data from the received packets, as such the packet error rate
increases.
As the packet error rate increases, the baseband processor (MAC layer) is
retransmitting more and more packets, which means the baseband processor is retrieving
less encoded data from the buffer. As a result, the volume of data stored in the buffer
increases. If the volume of data consumes the buffer's capacity, the buffer saturates (i.e.,
overflows), which causes data to be lost and distortion in the resulting transmitted video.
Conversely, if the packet error rate is very low, the baseband processor increases the
amount of data retrieved from the buffer. If the buffer empties (i.e., underflows), video
transmission is interrupted and quality is compromised.
To avoid overflow or underflow, the targeted fill rate of the buffer is to keep the
buffer about 50% full. If the buffer fill increases by a predetermined amount (e.g., 10-25%
above 50%), the video encoder changes its encoding rate to reduce the amount of data
placed in the buffer. Conversely, if the data fill rate decreases by 10-25% from 50%, the
video encoder will increase the data rate of information placed in the buffer.
Accordingly, the buffer must be sized in the video transmitter to prevent the
overflow or underflow condition. Since the packet error rate detection may take hundreds
or even thousands of packets to alter the fill of the buffer, the size of the buffer is large.
Having a large memory device in an integrated circuit increases the size of the integrated
circuit, increases power consumption of the integrated circuit, and thus increases the cost of
the integrated circuit.
Therefore, a need exists for a method and apparatus for a dynamically adjusting data
rate of wireless communications thus allowing a reduction in the amount of data buffering
needed to maintain an acceptable rate of data transference.

BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS
Figure 1 is a schematic block diagram illustrating a prior art wireless
communication;
Figure 2 is a schematic block diagram illustrating a wireless multimedia system in
accordance with the present invention;
Figure 3 is a schematic block diagram of a multimedia server and client module in
accordance with the present invention;
Figure 4 is a graph representing an acceptable error rate in accordance with the
present invention;
Figure 5 is a graph depicting signal-to-noise ratio over time and data rate over time
in accordance with the present invention;
Figure 6 is a graph illustrating a buffer fill over time in accordance with the present
invention;
Figure 7 is a schematic block diagram of a client module in accordance with the
present invention;
Figure 8 is a logic diagram illustrating a method for dynamic data rate adjustment of
a wireless transport channel in accordance with the present invention; and
Figure 9 is a logic diagram illustrating an alternate method for dynamic data rate
adjustment of a wireless transport channel in accordance with the present invention.
DETAILED DESCRIPTION OF THE INVENTION
Generally, the present invention provides a method and apparatus for dynamic data
rate adjustment of a wireless transport channel. Such a method and apparatus includes
processing that begins with one of a plurality of client modules within a wireless
multimedia system monitors channel characteristics of a wireless transport channel. The
monitoring is done at or below a received packet rate (i.e., the rate at which the packets are
received) to determine variations in the channel characteristics (e.g., signal strength, signal-
to-noise ratio, et cetera) on a packet-by-packet basis or on a group-of-packets by group-of
packets basis. The processing continues when the client module determines whether the
variations in the channel characteristics affect the data rate of data contained in the packets
received via the wireless transport channel. When the variations in the channel
characteristics affect the data rate, the client module provides data rate adjustment feedback
to a multimedia server of the wireless multimedia system via the wireless transport channel.
The data rate may be affected in two ways: first, the data rate is too high for the current
characteristics of the channel and thus should be decreased; and second, the data rate is too
low for the current characteristics of the channel and should be increased. The processing
continues when the multimedia server adjusts the data rate of the data contained in the
packets being transported via the wireless transport channel in accordance with the data rate
adjustment feedback. The data rate adjustment feedback may contain a variety of
information ranging from an increased data rate signal, decreased data rate signal, increased
data rate to a specific data rate, decreased the data rate to a specific data rate, and/or an
indication of the particular channel characteristics. With such a method and apparatus, the
data rate at which the multimedia server is processing the data may be more dynamically
and quickly adjusted based on the channel characteristics of the wireless transport channel
carrying the data. The more dynamic and more instantaneous the ability to adjust the data
rate, the less there is a need for a large buffer in the transmitting path. As such, integrated
circuits that include a video and/or multimedia transceiver, requires less memory space for
buffering encoded data thereby decreasing the power consumption of the integrated circuit,
decreasing its size, and reducing its cost. Further, better link response time is obtained (i.e.,
reduced latency), which provides high video quality than previous systems especially during
initial start-up or when the RF channel is changed.
The present invention can be more fully described with reference to Figures 2-9.
Figure 2 illustrates a wireless multimedia system 10 that includes a multimedia server 12, a
plurality of client modules 14-22, and a plurality of multimedia sources. The multimedia
sources include one or more of a video cassette recorder (VCR) 36, DVD player 38, digital
audio storage 40, DVD audio player 42, radio receiver 44, CD player 46, multimedia source
.24, public switch telephone network 48, and/or a wide area network connection 50. The
multimedia source 24 may be a satellite connection, cable connection, antenna connection
for (National Television Standards Committee) NTSC television broadcasts, High
Definition Television (HDTV) broadcasts, Phase Alternate Line (PAL) broadcasts, et cetera.
Each of the client modules 14-22 is operably coupled to a client 26-34. A client 26-34 may
be a personal digital assistant, a personal computer, a monitor (e.g., liquid crystal display
(LCD) monitor, flat-panel monitor, cathode ray tube (CRT) monitor, et cetera) and may
include speakers, a television set, high-definition television set, standard definition
television, a home theater system, et cetera, and/or a laptop computer. As one of average
skill in the art will appreciate, the client module may be a separate device from its
associated client or embedded within the client. In addition, one of average skill in the art
will further appreciate that the client modules 14-22 may be implemented utilizing discrete
components and/or integrated circuits.
The multimedia server 12 communicates with the plurality of client modules via
wireless transport channels 52. The wireless transport channels 52 may be radio frequency
(RF) communication paths, infrared communication paths, other means for wirelessly
conveying data between devices, and/or a combination thereof. Accordingly, the
multimedia server 12 and each of the client modules include a receiver and/or a transmitter
operably coupled to convey data via the wireless transport channel 52. For example, if the
wireless transport channel is a RF communication path, the multimedia server 12 and each
of the client modules include a radio receiver and a radio transmitter.
In this system 10, the clients 26-34 may select playback from, and/or connection to,
any one of the multimedia sources. The selection request from each client is provided to its
corresponding client module and identifies the desired multimedia source, a client, the
desired service and any other information to assist the multimedia server 12 in processing
the request. As such, one client may be accessing the Internet, while another client is
watching a satellite broadcast channel, while yet another is listening to a CD playback, and
a still further client is talking on the telephone. For a more detailed discussion of the
wireless multimedia system of Figure 2 refer to co-pending patent application entitled
METHOD AND APPARATUS FOR A MULTIMEDIA SYSTEM, having a filing date of
5/24/2001, and a serial number of 09/864,524.
Figure 3 illustrates a schematic diagram of multimedia server 12 and of client
module 22. Multimedia server 12 includes a processing module 60, memory 62, channel
mixer 64, which includes buffer 65, transceiving module 66, tuning module 68, and control
module 70. The processing module 60 may be a single processing device or a plurality of
processing devices. Such a processing device may be a microprocessor, micro-controller,
digital signal processor, microcomputer, central processing unit, field programmable gate
array, programmable logic device, state machine, logic circuitry, analog circuitry, digital
circuitry, and/or any device that manipulates signals (analog and/or digital) based on
operational instructions. The memory 62 may be a single memory device or a plurality of
memory devices. Such a memory device may be a read-only memory, random access
memory, volatile memory, non-volatile memory, static memory, dynamic memory, flash
memory, and/or any device that stores digital information. Note that when the processing
module 60 implements one or more of its functions via a state machine, analog circuitry,
digital circuitry, and/or logic circuitry, the memory storing the corresponding operational
instructions is embedded with the circuitry comprising the state machine, analog circuitry,
digital circuitry, and/or logic circuitry. The memory 62 stores, and the processing module
60 executes, operational instructions corresponding to at least some of the steps and/or
functions illustrated in Figures 3-9.
In operation, the transceiving module 66 of multimedia server 12 receives requests
via the plurality of client modules 14-22. The requests are provided as selection request 80
to the control module 70. The control module 70 verifies the authenticity of the selection
request 80 and provides corresponding commands 82 to the tuning module 68. The tuning
module 68, based on the commands 82, selects the appropriate input from the plurality of
multimedia sources. The selected channels are provided to the channel mixer 64 as a set of
channels 84. The channel mixer 64 processes the set of channels 84 and stores the
corresponding processed data in buffer 65. One form of processing performed by the
channel mixer and/or the tuning module 68 may be encoding video data wherein the
encoded video data is stored in buffer 65.
The transceiving module 66 retrieves the stored data from buffer 65 as streams of
channel data 86. The transceiving module 66 packetizes the stream of channel data 86 and
provides packets of data 92 at a data rate 94 to the particular client module or modules.
The rate at which information is stored into buffer 65 is in accordance with the data
rate 88, which is produced by the processing module 60. The processing module 60
performs an adjust data rate process 98, which will be described in greater detail with
reference to Figures 4-9, to produce the data rate 88 based on data rate adjustment feedback
90.
The client module 22, which includes a network interface 78, client interface 76,
processing module 72 and memory 74, generates the data rate adjustment feedback 90 at or
below the packet rate 96. The packet rate 96 corresponds to the rate at which the packets of
data 92 are provided to the client module 22. The data rate 94 corresponds to the particular
data rate of the data contained in each packet of the packets of data 92. For example,
depending on the modulation scheme used within the transceiving module 66, the data rate
94 may vary from 6 megabit per second to 54 megabits per second in accordance with the
IEEE 802.11a standard or at other rates for other types of wireless communication
standards.
The client module 22 receives the packets of data 92 via a network interface 78,
which includes a radio transceiver. The client interface 76 provides the interface to the
particular client and supports the corresponding protocols with the particular client. The
processing module 72 may be a single processing device or a plurality of processing
devices. Such a processing device may be a microprocessor, micro-controller, digital signal
processor, microcomputer, central processing unit, field programmable gate array,
programmable logic device, state machine, logic circuitry, analog circuitry, digital circuitry,
and/or any device that manipulates signals (analog and/or digital) based on operational
instructions. The memory 74 may be a single memory device or a plurality of memory
devices. Such a memory device may be a read-only memory, random access memory,
volatile memory, non-volatile memory, static memory, dynamic memory, flash memory,
and/or any device that stores digital information. Note that when the processing module 72
implements one or more of its functions via a state machine, analog circuitry, digital
circuitry, and/or logic circuitry, the memory storing the corresponding operational
instructions is embedded with the circuitry comprising the state machine, analog circuitry,
digital circuitry, and/or logic circuitry. The memory 74 stores, and the processing module
72 executes, operational instructions corresponding to at least some of the steps and/or
functions illustrated in Figures 3-9.
The processing module 72 performs a data rate adjustment feedback deternination
process 100 on each packet received and/or on a group of packets received. For each
processing of a group of packets or individual packet, the processing module, in accordance
with the data rate adjustment feedback determination process 100, generates the data rate
adjustment feedback 90. The functionality of the data rate adjustment feedback
determination process 100 will be described in greater detail with reference to Figures 4-9.
The data rate adjustment feedback 90 may be an indication as to the signal-to-noise
ratio of the wireless transport channel on which the packets of data 92 are received, a
request to increment the data rate, a request to decrement the data rate, a request to increase
the data rate to a particular data rate value, a request to decrease the data rate to a particular
data rate value, and/or a running average of packet error rate.
Because the client module is providing the data rate adjustment feedback 90 at or
below the packet rate 96 (i.e., on a packet-by-packet basis or a grouping of packets by
grouping of packets basis), the data rate 88 may be more immediately adjusted to
accommodate for changes in the quality of the wireless transport channel. As such, buffer
65, in comparison to prior art systems, may be significantly smaller. Since buffer 65 is
smaller, less integrated circuit die area is required to implement buffer 65 thereby
decreasing the power consumption of an integrated circuit incorporating one or more
components of the multimedia server 12, reducing its overall size, and reducing its cost. As
one of average skill in the art will appreciate, the client module 22 may monitor the received
signal strength indication of the packets received, the signal-to-noise ratio of the packets
received, packet error rate and/or any other mechanism for determining quality of the
wireless transport channel.
Figure 4 illustrates a graph of data rate versus signal-to-noise ratio (SNR). In most,
if not all wireless communication systems, a level of acceptable error is provided (e.g., 50
errors per million packets). This level of acceptable error is illustrated as the acceptable
error rate curve 110 with respect to data rate and SNR. As shown, as the signal-to-noise
ratio increases, the corresponding data rate increases as well while maintaining the
acceptable level of error. However, once the signal-to-noise ratio reaches a particular value,
the data rate is limited by the processing speed of the circuitry generating the data.
As shown, the acceptable error rate curve 110 divides the graph into two sections:
one section indicating too many errors and another section too few errors. Too many errors
occur when the data rate is too large for the current signal-to-noise ratio. As such, with
reference to figure 3, the transceiving module 66 has to retransmit many packets, thus
causing buffer 65 to fill. If the signal-to-noise ratio does not improve or the data rate is not
decreased, the buffer 65 will overflow.
The other region of the graph of Figure 4 is when too few errors are produced. In
this region, the data rate is lower than optimal for the given signal-to-noise ratio. In this
instance, more data is being retrieved from the buffer by the transceiving module 66 than is
being put in by the channel mixer 64. As such, the data rate can be increased. As one of
average skill in the art will appreciate, the signal-to-noise ratio of any data transmission via
a wireless transport channel may vary significantly on a packet-by-packet basis or even
within the transmission of the same packet. As such, the data rate to signal-to-noise ratio
curve of Figure 4 varies frequently and may vary dramatically from packet to packet.
Figure 5 illustrates a graph of signal-to-noise ratio over time and data rate over time.
The signal-to-noise ratio curve 112 is shown to vary over time. In prior art systems, since it
took hundreds or even thousands of packets to recognize an overflow or underflow
condition, the data rate did not change correspondingly to the signal-to-noise ratio curve
112. As shown, the prior art data rate changes from a higher level to a lower level as the
signal-to-noise curve 112 decreases, but significantly later in time as to when the curve 112
began to decrease. Similarly, the prior art data rate increases significantly later in time with
respect to when the signal-to-noise ratio curve increases. As a result, the buffer fill rate
varies significantly from the 50% fill rate.
Referring simultaneously to Figures 5 and 6, Figure 6 illustrates the fill rate of the
buffer for the prior art as well as for embodiments of the present invention with respect to a
50% level. As the signal-to-noise ratio curve 112 decreases (Figure 5), and the prior art
data rate adjust remains the same (Figure 5), the buffer fill increases (Figure 6). When the
prior art buffer fill reaches a predetermined threshold (Figure 6), the prior art data rate is
adjusted down (Figure 5). At this point, the buffer fill begins to decrease as the signal-to-
noise curve 112 stabilizes. As the signal-to-noise curve increases (Figure 5), the buffer fill
decreases (Figure 6) and the prior art data rate adjust remains constant.
When the buffer fill rate for the prior art system reaches a predetermined threshold
below 50%, the prior art data rate is adjusted upward. This process continues as shown
wherein the prior art buffer fill rate toggles between a threshold above 50% and a threshold
below 50% and the corresponding data rate is adjusted based thereon.
In accordance with the present invention, the data rate may be adjusted to more
closely follow the signal-to-noise curve 112. This may be done on a packet-by-packet data
rate adjustment 112 or an average data rate adjustment 114, i.e., on a group of packets by
group of packets basis. The packet-by-packet data rate adjustment 112 is shown in Figure 5
to track the signal-to-noise curve 112. Simultaneously referring to Figure 6, the buffer fill
rate for buffer 65 stays almost linear with respect to the 50% reference point Accordingly,
the buffer 65 may be a significantly smaller buffer than the prior art buffer since its
deviation with respect to the data rate is substantially less. For example, the buffer size
reduction between buffer 65 and the prior art buffer may be in the range of a few percent to
80%.
The average data rate adjust 114 is based on the signal-to-noise ratio of groups of
packets and averaged over time. As such, the average data rate adjust 114 follows the
signal-to-noise curve 112 and has more subtle deviations than the packet-by-packet data rate
adjust 112. As one of average skill in the art will appreciate, other methods for determining
the data rate adjust based on a packet-by-packet determination of signal-to-noise ratio or
groupings of packets signal-to-noise ratio to achieve the desired affects illustrated in Figure
6 may be used.
Figure 7 illustrates a schematic block diagram of a client module 14-22. The client
module 14-22 includes the processing module 72, the network interface 78, memory 74,
buffer 124, an audio/video decoder 126 and the client interface 76. The network interface
78 includes an RF transceiver 120 that performs the physical layer function for the client
module. The processing module 72 is configured to provide a data rate adjustment
determination module 128 and a baseband processor 122 that performs the MAC layer
function for client module 14-22. In operation, the RF transceiver 120 receives packets of
data via the associated antenna. The RF transceiver 120, which may include a signal-to-
noise ratio module, a receive signal strength indication module, and/or any other mechanism
for determining the signal strength, signal to noise ratio, and/or signal to interference ratio,
produces a signal strength indication 130. In addition, the RF transceiver 120 converts the
RF packets of data into baseband packets of data that are provided to the baseband
processor 122. The data rate adjustment determination module 128, which may implement
portions of the processes illustrated in Figures 8 or 9, determines the data rate adjustment
feedback 90 based on the signal strength indication 130.
Alternatively, the baseband processor 120 may determine the signal strength from
the baseband signals received from the RF transceiver 120. In this alternative, the baseband
processor 122 provides signal strength indication 132 to the data rate adjustment
determination module 128. The baseband processor 122, to determine the signal strength
indication 132, may include a signal-to-noise ratio module, receive signal strength
indication module, and/or any other mechanism for determining signal strength with respect
to noise and/or interference.
The data rate adjustment determination module 128 provides the data rate
adjustment feedback 90 to the baseband processor 122. The baseband processor 122
encodes and/or modulates the data rate adjustment feedback 90 in accordance with the
particular wireless communication standard being implemented by the multimedia
communication system. For example, the baseband processor 122 may encode and/or
modulate the data rate adjustment feedback 90 in accordance with one of the IEEE 802
standards. The baseband processor 122 provides the encoded and/or modulated data rate
adjustment feedback 90 to the RF transceiver 120. The RF transceiver converts the
baseband representation of the data rate adjustment feedback 90 into an RF signal that is
transmitted via the antenna to the multimedia server 12.
For the data packets received, the baseband processor 122 decodes them and
provides the decoded or raw information to buffer 124. The audio/video decoder 126
retrieves the decoded data from buffer 124 and recaptures raw video data 134 therefrom.
The raw video data may be RGB information, YUV information, et cetera. The client
interface 76 receives the raw data 134 and provides it to its associated client 26-34.
Figure 8 illustrates a logic diagram of a method for dynamic data rate adjustment of
a wireless transport channel in a wireless multimedia system. The process begins at Step
140 where a client module monitors channel characteristics of a wireless transport channel
at or below a receive packet rate to determine variations in the channel characteristics. The
channel characteristics include signal-to-noise ratio, receive strength indication, signal to
interference ratio, frequency response, and/or nay other measure that provides information
regarding the quality of the channel. Such a determination may be done on a packet-by-
packet basis or on a grouping-of-packets by grouping-of-packets basis and may be done in a
variety of ways including receive signal strength indication, spectral analysis, signal-to-
interference calculations, received packet error, et cetera.
The process then proceeds to Step 142 where the client module determines whether
the variations in the channel characteristics affect data rate of data contained within the
received packets. In this instance, the client module is comparing the current channel
characteristics of a packet or group of packets with channel characteristics of previous
packets. From this comparison, variations in the channel characteristics are obtained. For
example, if the signal rate substantially decreases, the variations may affect the data rate.
Conversely, if the signal-to-noise ratio dramatically increases, this also may affect the data
rate. A relationship between the signal-to-noise ratio and data rate was graphically
illustrated in Figure 5.
The process then proceeds to Step 144 where the process branches based on the
determination of whether the variations affect the data rate. If not, the client module
continues to monitor the channel characteristics of the transport channel on which it is
receiving packets of data. If, however, the variations do affect the data rate, the process
proceeds to Step 146. At Step 146, client module provides data rate adjustment feedback to
the multimedia server via the wireless transport channel. The data rate adjustment feedback
may be a message requesting that the data rate be incremented or it may be a message
indicating that the data rate should be decremented. The incrementing and/or decrementing
of the data rate by the multimedia server would be in predetermined steps as programmed in
the multimedia server. The data rate adjustment feedback may also be a message requesting
that the data rate be increased to a particular data rate value or a message indicating that the
data rate should be decreased to a particular data rate value. The determination of a
particular data rate value is readily obtainable from the signal-to-noise ratio versus data rate
curve and further in accordance with the particular wireless communication standard being
implemented as well as the particular video encoding standard being implemented. For
example, the particular data rate adjustment may be requesting a shift from 54 megabits per
second to 48 megabits per second and/or a switching of video quality with respect to the
video encoding performed by the multimedia server.
The process then proceeds to Step 148 where the multimedia server adjusts the data
rate of the data contained in the packets that are transported to the client module via the
wireless transport channel. Such an adjustment is based on the data rate adjustment
feedback. For example, the multimedia server may increment the data rate based on an
increment value included in the data rate adjustment feedback, decrease the data rate based
on a decrement value contained in the data rate adjustment feedback, et cetera.
Figure 9 illustrates an alternate method for dynamic data rate adjustment of a
wireless transport channel in a wireless multimedia system. The process begins at Step 150
where a client module determines channel characteristics of a wireless transport channel at
or below a received packet rate to produce determine channel characteristics. The
determination of the channel characteristics may be done to determine the signal-to-noise
ratio, frequency response, and/or any other characteristics of the channel that may indicate
degradation in performance or an increase in performance of the channel. The
determination of the channel characteristics may be done on a packet-by-packet basis or on
a grouping-of-packets by grouping-of-packets basis. For example, a per packet signal-to-
noise ratio value may be generated or an average signal-to-noise ratio may be generated.
The process then proceeds to Step 152 where the client module generates data rate
adjustment feedback based on the channel characteristics. The content of the data rate
adjustment feedback may vary from providing the channel characteristics (e.g., the signal-
to-noise ratio, frequency response, et cetera), in the data rate adjustment feedback packet
error rate, and/or interpretive data thereof indicating the channel characteristics. The
process then proceeds to Step 154 where the client module provides the data rate adjustment
feedback to the multimedia server. The data rate adjustment feedback may be transmitted
on a packet-by-packet basis, a grouping of packets by grouping-of-packet basis, at
predetermined time intervals, or at random time intervals. The process then proceeds to
Step 156 where the multimedia server interprets the data rate adjustment feedback to
determine whether the data rate of the data contained in the packets transported via the
wireless transport channel should be adjusted.
The process then proceeds to Step 158 where the process splits based on whether the
data rate is to be adjusted. If not, the process reverts to Step 150. If, however, the data rate
is to be adjusted, the process proceeds to Step 160. At Step 160, the multimedia server
adjusts the data rate of packets being transported via the wireless transport channel based on
its interpretation. By providing feedback on the quality of the wireless transport channel on
a packet-by-packet basis or a grouping of packet by grouping-of-packet basis, the loop
response to adjust the data rate of data contained in the packets is much faster than in prior
art embodiments. As such, much less buffering is needed when the present invention is
implemented. By reducing the size of required buffering, integrated circuits are required to
support less memory, which reduces the size, power consumption and cost of such
integrated circuits. Further, less than 100% capacity of the channel may be used to convey
the data and the data rate adjusted accordingly. As one of average skill in the art will
appreciate, other embodiments may be derived from the teaching of the present invention,
without deviating from the scope of the claims.
We Claim:
1. A method for dynamic data rate adjustment of a wireless transport channel of
a plurality of wireless channels in a wireless multimedia system having a multimedia
server, a plurality of client modules and a plurality of wireless transport channels, the
method comprises:
monitoring by one of the plurality of client modules, channel characteristics
of the wireless transport channel at or below a receive packet rate to determine variations
in the channel characteristics from at least one packet to at least one other packet received
via the wireless transport channel;
determining, by the one of the plurality of client modules or the multimedia
server, whether the variations in the channel characteristics affect data rate of data
contained in received packets;
in the event of the variations in the channel characteristics affecting the data
rate, providing, by the one of the plurality of client modules or the multimedia server,
data rate adjustment regarding transmission via the wireless transport channel between
the at least one of the plurality of client modules and the multimedia server; and
adjusting, by the multimedia server, data rate of data contained in packets
being transported via the wireless transport channel in accordance with the data rate
adjustment.
2. The method as claimed in claim 1, wherein the monitoring of the channel
characteristics comprises at least one of:
monitoring signal to noise ratio of the wireless transport channel on a packet
by packet basis;
monitoring average signal to noise ratio of the wireless transport channel on a
grouping of packets by grouping of packets basis;
monitoring received packet error rate for a plurality of packets.
3. The method as claimed in claim 1, wherein the determining as to whether the
variations in the channel characteristics affect the data rate comprises:
determining whether the variations in the channel characteristics allow for a
greater data rate; and
determining as to whether the variations in the channel characteristics allow
for a lower data rate.
4. The method as claimed in claim 1, wherein the providing data rate adjustment
feedback comprises at least one of:
providing an increment data rate message;
providing a decrement data message;
providing an increased data rate value; and
providing a decreased data rate value.
5. The method as claimed in claim 4, which involves:
determining the increment data rate message in the event of the variations in
the channel characteristics indicating at least one of greater signal to noise ratio, greater
average signal to noise ratio, and less packet error rate;
determining the decrement data rate message in the event of the variations in
the channel characteristics indicating at least one of lower signal to noise ratio, lower
average signal to noise ratio, and greater packet error rate; and
determining the increased data rate value or the decreased data rate based on
magnitude of the variations in the channel characteristics.
6. The method as claimed in claim 4, wherein the adjusting the data rate of data
contained in packets further comprises at least one of:
incrementing the data rate by an increment amount in accordance with the
increment data rate message;
decrementing the data rate by an increment amount in accordance with the
decrement data message;
increasing the data rate in accordance with the increased data rate value; and
decreasing the data rate in accordance with the decreased data rate value.
7. A wireless multimedia system comprising:
a multimedia server that has a server processing module and server memory;
and
a plurality of client modules, where each client module of the plurality of
client modules includes a client processing module and client memory, wherein at least
one of the client memory and the server memory contains operational instructions that
cause at least one of the client processing module and the server processing module to:
monitor, by one of the plurality of client modules, channel characteristics of a
wireless transport channel of a plurality of wireless channels at or below a receive packet
rate to determine variations in the channel characteristics from at least one packet to at
least one other packet received via the wireless transport channel;
determine, by one of the plurality of client modules or the multimedia server,
whether the variations in the channel characteristics affect data rate of data contained in
received packets;
in the event of the variations in the channel characteristics affecting the data
rate, determine, by the one of the plurality of client modules or the multimedia server, a
data rate adjustment regarding transmission via the wireless transport channel between
the at least one of the plurality of client modules and the multimedia server; and
adjust, by the multimedia server, data rate of data contained in packets being
transported via the wireless transport channel in accordance with the data rate adjustment.
8. The wireless multimedia system as claimed in claim 7, wherein at least one of
the client memory and the server memory comprises operational instructions that cause
monitoring of the channel characteristics by at least one of:
monitoring signal to noise ratio of the wireless transport channel on a packet
by packet basis;
monitoring average signal to noise ratio of the wireless transport channel on a
grouping of packets by grouping of packets basis;
monitoring received packet error rate for a plurality of packets.
9. The wireless multimedia system as claimed in claim 7, wherein at least one of
the client memory and the server memory comprises operational instructions to determine
whether the variations in the channel characteristics affect the data rate by:
determining whether the variations in the channel characteristics allow for a
greater data rate; and
determining whether the variations in the channel characteristics allow for a
lower data rate.
10. The wireless multimedia system as claimed in claim 7, wherein at least one of
the client memory and the server memory comprises operational instructions that provide
the data rate adjustment feedback by at least one of:
providing an increment data rate message;
providing a decrement data message;
providing an increased data rate value; and
providing a decreased data rate value.
11. The wireless multimedia system as claimed in claim 10, wherein the memory
comprises operational instructions that cause the client processing module or server to:
determine the increment data rate message when the variations in the channel
characteristics indicate at least one of greater signal to noise ratio, greater average signal
to noise ratio and less packet error rate;
determine the decrement data rate message when the variations in the channel
characteristics indicate at least one of lower signal to noise ratio, lower average signal to
noise ratio, and greater packet error rate; and
determine the increased data rate value or the decreased data rate based on
magnitude of the variations in the channel characteristics.
12. The wireless multimedia system as claimed in claim 10, wherein the server
memory comprises operational instructions that cause the server processing module to
adjust the data rate of data contained in packets by at least one of:
incrementing the data rate by an increment amount in accordance with the
increment data rate message;
decrementing the data rate by an increment amount in accordance with the
decrement data message;
increasing the data rate in accordance with the increased data rate value; and
decreasing the data rate in accordance with the decreased data rate value.
The present invention relates to a method for dynamic data rate adjustment of a wireless transport channel of a plurality of wireless channels in a wireless multimedia system (10) having a multimedia server (12), a plurality of client modules (14-22) and a plurality of wireless transport channels, the method comprises: monitoring by one of the plurality of client modules, channel characteristics of the wireless transport channel at or below a receive packet rate to determine variations in the channel characteristics from at least one packet to at least one other packet received via the wireless transport channel; determining, by the one of the plurality of client modules or the multimedia server, whether the variations in the channel characteristics affect data rate of data contained in received packets; when the variations in the channel characteristics affect the data rate, providing, by the one of the plurality of client modules or the multimedia server, data rate adjustment regarding transmission via the wireless transport channel between the at least one of the plurality of client modules and the multimedia server; and adjusting, by the multimedia server, data rate of data contained in packets being transported via the wireless transport channel in accordance with the data rate adjustment.

Documents:

1598-KOLNP-2004-ABSTRACT 1.1.pdf

1598-KOLNP-2004-ABSTRACT 1.2.pdf

1598-kolnp-2004-abstract.pdf

1598-KOLNP-2004-AMANDED CLAIMS.pdf

1598-KOLNP-2004-AMANDED PAGES OF SPECIFICATION 1.1.pdf

1598-KOLNP-2004-AMANDED PAGES OF SPECIFICATION.pdf

1598-kolnp-2004-assignment.pdf

1598-kolnp-2004-claims.pdf

1598-KOLNP-2004-CORRESPONDENCE 1.2.pdf

1598-KOLNP-2004-CORRESPONDENCE 1.3.pdf

1598-KOLNP-2004-CORRESPONDENCE 1.4.pdf

1598-KOLNP-2004-CORRESPONDENCE-1.1.pdf

1598-kolnp-2004-correspondence.pdf

1598-kolnp-2004-description (complete).pdf

1598-kolnp-2004-drawings.pdf

1598-kolnp-2004-examination report.pdf

1598-KOLNP-2004-FORM 1-1.1.pdf

1598-KOLNP-2004-FORM 1-1.2.pdf

1598-KOLNP-2004-FORM 1-1.3.pdf

1598-kolnp-2004-form 1.pdf

1598-kolnp-2004-form 18.pdf

1598-KOLNP-2004-FORM 27.pdf

1598-kolnp-2004-form 3.pdf

1598-kolnp-2004-form 5.pdf

1598-KOLNP-2004-FORM-27-1.pdf

1598-KOLNP-2004-FORM-27.pdf

1598-kolnp-2004-gpa.pdf

1598-KOLNP-2004-GRANTED LETTER PATENT.pdf

1598-kolnp-2004-granted-abstract.pdf

1598-kolnp-2004-granted-assignment.pdf

1598-kolnp-2004-granted-claims.pdf

1598-kolnp-2004-granted-correspondence.pdf

1598-kolnp-2004-granted-description (complete).pdf

1598-kolnp-2004-granted-drawings.pdf

1598-kolnp-2004-granted-form 1.pdf

1598-kolnp-2004-granted-form 18.pdf

1598-kolnp-2004-granted-form 3.pdf

1598-kolnp-2004-granted-form 5.pdf

1598-kolnp-2004-granted-gpa.pdf

1598-kolnp-2004-granted-reply to examination report.pdf

1598-kolnp-2004-granted-specification.pdf

1598-KOLNP-2004-OTHERS 1.1.pdf

1598-KOLNP-2004-OTHERS.pdf

1598-kolnp-2004-reply to examination report.pdf

1598-kolnp-2004-specification.pdf


Patent Number 235599
Indian Patent Application Number 1598/KOLNP/2004
PG Journal Number 28/2009
Publication Date 10-Jul-2009
Grant Date 08-Jul-2009
Date of Filing 25-Oct-2004
Name of Patentee VIXS SYSTEMS INC.
Applicant Address 2235 SHEPPARD AVENUE EAST, #1705, TORONTO, ONTARIO M2J 5B5, CANADA.
Inventors:
# Inventor's Name Inventor's Address
1 GIRARDEAU JAMES 2000 MOUNTAINVIEW ROAD, AUSTIN, TX 78703
2 KELTON JAMES R 8304 CLIFFSAGE, AUSTIN TX 78759
PCT International Classification Number H04N 7/24
PCT International Application Number PCT/CA2003/00868
PCT International Filing date 2003-06-11
PCT Conventions:
# PCT Application Number Date of Convention Priority Country
1 10/174,371 2002-06-18 U.S.A.