`
`(19; United States
`(12; Patent Application Publication (10) Pub. No.: US 2008/0059658 A1
`Williams
`(43) Pub. Date:
`Mar. 6, 2008
`
`(54)
`
`CONTROLLING THE FEEDING OF DATA
`FROM A FEED BUFFER
`
`(57)
`
`ABSTRACT
`
`(75)
`
`Inventor:
`
`Richard Williams, Surrey (GB)
`
`Correspondence Address:
`HARRINGTON & SMITH, PC
`4 RESEARCH DRIVE
`SIIELTON, CT 06484-6212
`
`(73)
`
`Assignee:
`
`Nokia Corporation
`
`(21)
`
`Appl. No.:
`
`11/479,170
`
`(22)
`
`Filed:
`
`Jun. 29, 2006
`
`Publication Classification
`
`Int. Cl.
`
`(2006.01)
`G06F 3/00
`U.S. Cl.
`......................................................... .. 710/8
`
`(51)
`
`(52)
`
`*A method includes feeding data from a feed buifer to an
`interface, receiving at
`least one signal dependent on a
`temperature external to the interface, determining from the
`at least one received signal that a temperature of the device
`has risen above a first threshold, and in response to a positive
`determination, reducing a feeding rate of data from the feed
`buifer to the interface to a first predetermined rate, the first
`predetermined rate being non-zero. Another method
`includes maintaining a transmit buifer, controlling a trans-
`mitter to transmit data from the transmit buifer at a transmit
`
`data rate, the transmit data rate being dependent on the
`amount of data stored in the transmit buifer, feeding data
`from a feed buifer to the transmit buifer; and in response to
`determining that a temperature has risen above a first
`threshold, reducing a feeding rate of data from the feed
`buifer to the transmit buifer to a first predetermined rate, the
`first predetermined rate being non-zero.
`
`40
`
`41
`42
`43
`
`WWAN
`
`-
`
`I
`
`/>
`
`19
`
`»
`
`3°° m
`21
`
`26
`I IEIII
`I I
`I
`'
`
`\ 13
`
`39
`
`11
`
`I
`
`
`
`
`15
`
`26
`
`‘
`29A
`
`E
`
`35
`
`18
`
`16
`
`ne ace
`
`31
`
` ' Feed
`
`buffer
`
`2
`
`14
`
`'
`
`36
`
`33
`
`Temperature
`sens”
`
`38
`
`37
`
`I Driver
`program
`
`34
`
`1
`
`APPLE 1010
`
`APPLE 1010
`
`1
`
`
`
`Patent Application Publication Mar. 6, 2008 Sheet 1 of 3
`
`US 2008/0059658 A1
`
`_
`
`'
`
`14
`
`i
`
`31
`
`Feed
`buffer
`
`2
`
`r
`
`Temperature
`
`sensor
`
`38
`
`36
`
`A
`
`33
`
`Driver
`program
`
`(10
`
`Figure 1
`
`2
`
`
`
`Patent Application Publication Mar. 6, 2008 Sheet 2 of 3
`
`US 2008/0059658 A1
`
`52
`
`
`
`o
`
`53
`
`
`
`* e
`
`Fault mode e0
`
`Module on
`
`
`
`9
`
`ea
`
`
`
`3
`
`
`
`Patent Application Publication Mar. 6, 2008 Sheet 3 of 3
`
`US 2008/0059658 A1
`
`I 'II
`
`I
`
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`
`I
`
`I
`I
`I
`I
`I
`I
`I
`I
`
`I
`I
`I
`I
`I
`
`I
`I
`I
`I
`I
`I
`I
`I
`
`H.m
`
`MR
`
`m
`
`
`
`\ .I............--.0GW
`
`m
`
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`
`I
`
`I
`I
`I
`I
`I
`I
`I
`I
`
`I
`I
`I
`I
`I
`
`I
`I
`I
`I
`I
`I
`I
`I
`
`--na4Ammmmmmwxphl.ddmhaaCT_.mmTn
`
`C
`
`B
`
`-11Im
`
`E
`
`.Fmfi._
`D
`
`Figure 3
`
`4
`
`
`
`US 2008/0059658 A1
`
`Mar. 6, 2008
`
`CONTROLLING THE FEEDING OF DATA
`FROM A FEED BUFFER
`
`FIELD OF THE INVENTION
`
`[0001] The invention relates to controlling the feeding of
`data from a feed buffer.
`
`BACKGROUND TO THE INVENTION
`
`It is well known to attach modules to laptop or
`[0002]
`notebook computers to provide additional
`functionality
`thereto. Examples include Wi-Fi (IEEE 802.11) and 3G data
`card modules which connect to a laptop via a PCMCIA
`(Personal Computer Memory Card International Associa-
`tion) interface. It is known also to provide a Wi-Fi module
`as an ExpressCard, which is a form of PCI-Express device.
`Wi-Fi and 3G data modules also can be connected by USB
`(Universal Serial Bus) interface to a laptop computer.
`[0003]
`Such modules can be external or internal. Amodule
`is powered by electrical power provided over the interface
`by which it is connected to the laptop computer. The main
`components of a module are a transceiver, a processor
`(which provides a control function as well as a processing
`function), buffer memory and an antenna connector. An
`antenna within the laptop can be connected to the module via
`the antenna connector. The presence of the processor and the
`memory results in operation of the modules being dependent
`on the ambient temperature falling within an acceptable
`range.
`It is known to provide a module with a temperature
`[0004]
`sensor by which it can be detected whether the temperature
`of the module is above the upper limit of the acceptable
`range and thus close down the module’s transmitter.
`
`SUMMARY OF THE INVENTION
`
`[0005] A first aspect of the invention relates to a method
`comprising:
`feeding data from a feed buffer to an interface;
`[0006]
`receiving at
`least one signal dependent on a
`[0007]
`temperature external to the interface;
`[0008]
`determining from the at least one received signal
`that a temperature of the device has risen above a first
`threshold, and
`[0009]
`in response to a positive determination, reducing
`a feeding rate of data from the feed buffer to the
`interface to a first predetermined rate, the first prede-
`termined rate being non-zero.
`[0010] This provides the advantage that it can allow an
`external
`transmitter to continue to operate, albeit at a
`reduced data rate, whilst reducing the possibility of a maxi-
`mum operating temperature being exceeded and transmitter
`operation ceased. Although data rate is reduced when the
`temperature rises above a threshold, this is considered to be
`acceptable considering that the probability of the transmitter
`being available at a given time is increased. The advantage
`is achieved because the heat generated by the transmitter is
`reduced as the transmit data rate is reduced.
`
`[0011] The method may comprise receiving the at least
`one signal dependent on the temperature external to the
`interface via the interface. This provides a simple arrange-
`ment in which a device to which data is being fed need be
`connected only by one connection.
`[0012] The method may comprise buffering data which
`has not been fed to the interface. This allows normal
`
`operation of applications providing data for transmission but
`whilst allowing data feeding to the interface to be restricted.
`[0013] The method may comprise responding to an indi-
`cation that
`the temperature has fallen below a second
`threshold by increasing a rate of feeding data to the interface
`to a rate greater than the first rate. This allows transmission
`at increased data rate when appropriate.
`[0014] The first and the second thresholds may have the
`same value. Alternatively they may be different. When they
`are dilferent, hysteresis is provided.
`[0015] The method may comprise responding to an indi-
`cation that the temperature has risen above a third threshold
`by reducing a feeding rate of data from the feed buffer to the
`interface to a second predetermined rate, wherein the second
`predetermined rate is less than the first predetermined rate.
`Provision of two different restricted data feeding rates is
`advantageous since it allows for a finer resolution of control
`over the heat generated by the external transmitter.
`[0016] The method may comprise responding to an indi-
`cation that the temperature has fallen below a fourth thresh-
`old by increasing a rate of feeding data to the interface at the
`first rate. The third and fourth thresholds may have the same
`value.
`
`[0017] The method may comprise controlling a feeding
`rate of data from the feed buffer to the interface by limiting
`the amount of data that is sent in each of plural consecutive
`time periods. This allows data transfer at conventional
`speeds whilst allowing overall data rate to be limited to a
`suitable level. Controlling a feeding rate of data from the
`feed buffer to the interface may comprise repeating a
`sequence comprising the steps of:
`[0018]
`starting a timer,
`[0019]
`after the timer started, feeding data to the inter-
`face until a predetermined amount of data has been fed
`to the interface, and
`[0020]
`refraining from feeding data to the interface until
`following expiration of the timer.
`[0021] A second aspect of the invention provides a com-
`puter program, preferably stored on a medium, comprising
`machine-readable instructions which when executed by
`computer apparatus cause the computer apparatus to per-
`form a method comprising:
`[0022]
`feeding data from a feed buffer to an interface;
`[0023]
`receiving at
`least one signal dependent on a
`temperature external to the interface;
`[0024]
`determining from the at least one received signal
`that a temperature of the device has risen above a first
`threshold, and
`[0025]
`in response to a positive determination, reducing
`a feeding rate of data from the feed buffer to the
`interface to a first predetermined rate, the first prede-
`termined rate being non-zero.
`[0026] A third aspect of the invention provides apparatus
`comprising:
`a feed buffer;
`[0027]
`an interface;
`[0028]
`a feeder for feeding data from the feed buffer to
`[0029]
`the interface;
`[0030]
`a receiver for receiving at least one signal depen-
`dent on a temperature external to the interface; and
`[0031]
`a determiner for determining from the at least
`one received signal that a temperature of the device has
`risen above a first threshold,
`
`5
`
`
`
`US 2008/0059658 A1
`
`Mar. 6, 2008
`
`[0032] wherein the feeder is response to the determiner
`to reduce a feeding rate of data from the feed buffer to
`the interface to a first predetermined rate,
`the first
`predetermined rate being non-zero.
`[0033] A fourth aspect of the invention provides a method
`comprising:
`[0034] maintaining a transmit buffer;
`[0035]
`controlling a transmitter to transmit data from
`the transmit bulfer at a transmit data rate, the transmit
`data rate being dependent on the amount of data stored
`in the transmit bulfer;
`[0036]
`feeding data from a feed buffer to the transmit
`bulfer; and
`[0037]
`in response to determining that a temperature has
`risen above a first threshold, reducing a feeding rate of
`data from the feed bulfer to the transmit bulfer to a first
`
`predetermined rate, the first predetermined rate being
`non-zero.
`
`[0038] This provides the advantage that it can allow the
`transmitter to continue to operate, albeit at a reduced data
`rate, whilst reducing the possibility of a maximum operating
`temperature being exceeded and transmitter operation
`ceased. Although data rate is reduced when the temperature
`rises above a threshold, this is considered to be acceptable
`considering that the probability of the transmitter being
`available at a given time is increased. The advantage is
`achieved because the heat generated by the transmitter is
`reduced as the transmit data rate is reduced.
`
`[0039] The method may comprise responding to a deter-
`mination that the temperature has fallen below a second
`threshold by increasing a rate of feeding data from the feed
`bulfer to the transmit bulfer to a rate greater than the first
`rate. This allows transmission at increased data rate when
`
`appropriate.
`[0040] The first and the second thresholds may have the
`same value.
`
`[0041] The method may comprise responding to a deter-
`mination that the temperature has risen above a third thresh-
`old by reducing a feeding rate of data from the feed buffer
`to the interface to a second predetermined rate, wherein the
`second predetermined rate is less than the first predeter-
`mined rate. Provision of two different restricted data feeding
`rates is advantageous since it allows for a finer resolution of
`control over the heat generated by the external transmitter.
`[0042] The method may comprise responding to a deter-
`mination that the temperature has fallen below a fourth
`threshold by increasing a rate of feeding data from the feed
`buffer to the transmit buffer to the first predetermined rate.
`The third and fourth thresholds may have the same value.
`[0043] The method may comprise controlling a feeding
`rate of data from the feed bulfer to the transmit bulfer by
`limiting the amount of data that is sent in each of plural
`consecutive time periods. This allows data transfer at con-
`ventional speeds whilst allowing overall data rate to be
`limited to a suitable level. Controlling a feeding rate of data
`from the feed buffer to the transmit buffer may comprise
`repeating a sequence comprising the steps of:
`[0044]
`starting a timer,
`[0045]
`after the timer started, feeding data to the trans-
`mit bulfer until a predetermined amount of data has
`been fed to the feed bulfer, and
`[0046]
`refraining from feeding data to the feed bulfer
`until following expiration of the timer.
`
`[0047] A fifth aspect of the invention provides apparatus
`comprising:
`a transmit bulfer;
`[0048]
`a transmitter;
`[0049]
`the controller being arranged to
`a controller,
`[0050]
`control the transmitter to transmit data from the trans-
`mit buffer at a transmit data rate, the transmit data rate
`being dependent on the amount of data stored in the
`transmit bulfer;
`[0051]
`a feed buffer; and
`[0052]
`a feeder for feeding data from the feed bulfer to
`the transmit buffer; and
`[0053]
`the feed bulfer being responsive to a determina-
`tion that a temperature has risen above a threshold to
`reduce a feeding rate of data from the feed bulfer to the
`transmit bulfer to a first predetermined rate, the first
`predetermined rate being non-zero.
`[0054] A sixth aspect of the invention provides a computer
`program, preferably stored on a medium, comprising
`machine-readable instructions which when executed by
`computer apparatus cause the computer apparatus to per-
`form a method comprising:
`[0055] maintaining a transmit bulfer;
`[0056]
`controlling a transmitter to transmit data from
`the transmit bulfer at a transmit data rate, the transmit
`data rate being dependent on the amount of data stored
`in the transmit bulfer;
`[0057]
`feeding data from a feed bulfer to the transmit
`bulfer; and
`[0058]
`in response to determining that a temperature has
`risen above a first threshold, reducing a feeding rate of
`data from the feed buffer to the transmit bulfer to a first
`
`predetermined rate, the first predetermined rate being
`non-zero.
`
`[0059] Embodiments of the invention will now be
`described by way of example only, with reference to the
`accompanying drawings.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`n the drawings:
`[0060]
`7IG. 1 is a schematic drawing of a system com-
`[0061]
`prising a module and a laptop computer, the system embody-
`ing various aspects of the invention;
`[0062]
`7IG. 2 is a state machine diagram illustrating
`operation of part if the FIG. 1 system; and
`[0063]
`7IG. 3 is a drawing illustrating operation of the
`FIG. 1 system in certain conditions.
`
`DETAILED DESCRIPTION OF THE
`EMBODIMENTS
`
`In the drawings, like reference numerals refer to
`[0064]
`like elements.
`
`[0065] Referring to FIG. 1, a system 10 comprises a
`module 11 connected to a laptop computer 12. The module
`11 is a 3G data card, implemented on a mini PCIe (PCI
`Express) card. The module 11 is internal
`to the laptop
`computer 12, in the sense that it is contained wholly within
`a housing 13 of the laptop computer 12 and cannot be
`removed therefrom without removing a cover (not shown)
`forming part of the housing. As such, the module is required
`to operate in a relatively high ambient temperature environ-
`ment inside the laptop computer 12. The laptop computer 12
`includes a fan 14 which is operable to expel hot air from
`
`6
`
`
`
`US 2008/0059658 A1
`
`Mar. 6, 2008
`
`within the housing 13 so as to maintain the temperature
`within the housing 13 within acceptable limits. As is usual,
`the fan 14 is operated only when necessary, and is operated
`at a speed which is appropriate taking into account the
`ambient temperature within the housing 13, as measured by
`a temperature sensor 38. The laptop computer is shown in
`very schematic form. It will be appreciated that the laptop
`computer 12 includes many other components (display,
`keyboard, graphics card, etc), components are omitted from
`the Figure because they are not useful in understanding the
`invention.
`
`[0066] The laptop computer 12 includes a USB connector
`15, which is mated with a corresponding USB connector 16
`forming part of the module 11. Thus, the laptop computer 12
`and the module 11 are able to communicate data and
`commands to one another. Furthermore, the USB connection
`allows the laptop computer 12 to provide electrical power to
`the module 11.
`
`[0067] A bus 17 of the laptop 12 is connected to the USB
`connector 15, 16 by a hardware interface 18. Similarly, an
`interface 20 connects the USB connector 15, 16 to a bus 19
`of the module 11.
`
`[0068] The bus 19 of the module 11 allows communica-
`tion between a number of devices, namely a ROM 21, a
`microprocessor 22, and some RAM 23. Some of the RAM
`23 constitutes a transmit bulfer 24 for the module 11. A
`transmitter 25 is connected to the bus 19 via a transmitter-
`bus interface 26. Areceiver 27 is connected to the bus 19 via
`a receiver-bus interface 28. The transmitter 25 and the
`receiver are connected to and share a common antenna 29A,
`which is located in the laptop 12 and is coupled to the
`transmitter 25 and the receiver 27 by an antenna connector
`29B. A temperature sensor 30 is connected to provide
`temperature measurements to the microprocessor 22.
`[0069] The bus 17 of the laptop allows communication
`between some RAM 31, some of which constitutes a feed
`bufier 32 for the laptop 12, a CPU 33, storage 34, a dial-up
`modem 35 and a controller 36. Stored in the storage 34 is a
`program 37 constituting a driver for the USB interface 16,
`18 and a user interface. Some filnctions of the driver part of
`the program 37 are described in more detail below. For the
`purposes of this explanation,
`the driver program 37 is
`considered to be part of the module 11, although it physi-
`cally resides on the laptop 12.
`[0070] The module 11 is a cellular radio transceiver. It is
`operable to communicate with a 3G mobile telephone net-
`work 9 according to a WCDMA (Wideband Code Division
`Multiple Access) communications protocol of the 3G stan-
`dard. The module 11 may or may not be operable according
`to the Rel5 version, relating to HSDPA (High Speed Down-
`link Packet Access). The module 11 is subscribed to cellular
`data service provided by the network 9. This is achieved by
`the cooperation of the microprocessor 22 and the RAM 23
`to implement a protocol stack 40. The protocol stack 40 is
`conventional. It includes a layer 1 (L1) 41. The L1 41 is also
`known as the WCDMA physical layer. Above the L1 41 is
`a MAC (Medium Access Control) layer 42. This layer is also
`known as a WCDMA L2 protocol layer. Above the MAC
`layer 43 is an RLC (Radio Link Control) layer 44. This is
`also known as a WCDMA L3 protocol layer. The RLC layer
`44 owns the transmit bulfer 24. The protocol stack 40 is
`shown in the Figure, although it will be appreciated that it
`has no physical form but instead is formed by hardware
`
`operating under the control of software, relevant parts of
`which is held at run-time in the RAM 23.
`
`[0071] Receiver operation is not described here since it is
`not relevant to this explanation. Transmit operation is as
`follows. The protocol stack 40 maintains the transmit bulfer
`24 in the RAM 23. The transmit bulfer stores data received
`
`from the laptop 12 prior to transmission through the trans-
`mitter 25 through the antenna 29.
`[0072]
`In WCDMA, a number of diiferent transmit data
`rates are defined. A sample configuration is:
`
`Number of 336
`bit blocks
`12
`4
`2
`
`User Data
`Rate [kbps]
`384
`128
`64
`
`Typical Weighting
`[User Data/Control Data]
`15/4
`15/8
`15/15
`
`It can be seen from this that reducing the number
`[0073]
`of 336 bit blocks transmitted reduces the user data rate and
`also reduces the ratio of user data to control data. The
`
`configurations are known by UEs (User Equipments) such as
`the module 11. the number of blocks transmitted per unit of
`time determines the user data rate. If the network 9 allows
`
`the module 11 to transmit at 12><336 bits every 10 ms, this
`gives a user data rate of 384 kbps. This means that there is
`available uplink (UL) capacity to transmit 384 kbps, and is
`termed a 384 kbps bearer.
`[0074] Conventionally, the L1 protocol layer 41 of the
`module 11 causes transmission of the data that is queued in
`the transmit buifer 24. If there is no data in the transmit
`bulfer 24, there is no transmission to the network 9. If there
`is sufiicient data in the bulfer,
`then convention is that
`transmission occurs at the configuration specified by the
`network 9.
`
`[0075] However, if the amount of data in the transmit
`bulfer 24 is less than the available uplink capacity, the MAC
`layer 42 reduces the transmit data rate by reducing the
`number of blocks of 336 bits. In this example, if the rate of
`data entering the transmit buffer is about 128 kbps, the L1
`layer 41 requires only 4 blocks of data (each of 336 bits) per
`10 ms slot. In this case, the MAC layer 42 automatically
`adapts the transmits configuration to use the 4><336 bit
`configuration (128 kbps bearer). Similarly, if the rate of data
`entering the transmit bulfer is around 64 kbps, the L1 layer
`41 requires only 2 blocks of data per 10 ms slot. In this case,
`the MAC layer 42 automatically adapts the transmits con-
`figuration to use the 2><336 bit configuration (64 kbps
`bearer).
`If the rate of data entering the transmit bulfer is
`[0076]
`between 64 kbps and 128 kbps, the L1 layer 41 switches
`between transmitting 2 blocks of data per 10 ms slot and 4
`blocks of data per 10 ms slot. This occurs because the
`protocol stack 40 selects the number of blocks to transmit in
`a unit of time depending on the amount of data in the bulfer.
`Similarly, if the rate of data entering the transmit bulfer is
`between 0 kbps and 64 kbps,
`the L1 layer 41 switches
`between not transmitting and transmitting 2 blocks of data
`per 10 ms slot. Also, if the rate of data entering the transmit
`bulfer is between 128 kbps and 384 kbps, the L1 layer 41
`switches between transmitting 4 blocks of data per 10 ms
`slot and 12 blocks of data per 10 ms slot. Thus, by this
`
`7
`
`
`
`US 2008/0059658 A1
`
`Mar. 6, 2008
`
`scheme, the module 11 selects a transmit data rate which is
`dependent on the amount of data in the transmit buifer 24.
`This is conventional.
`
`In addition to this, the network 9 may define Traffic
`[0077]
`Volume Measurements (TVM). TVM currently is not widely
`supported by 3G networks, but it has some advantages. A
`TVM is a measure of the amount of data queued in the
`transmit bulfer 24. TVMs are calculated in the MAC layer
`42. If a TVM exceeds a network-defined threshold, it is an
`indication that the available uplink capacity on the allocated
`bearer is insufficient. The module 11 informs the network 9,
`and the network 9 can choose to allocate a larger bearer, and
`the module 11 is notified as appropriate. Conversely, if the
`amount of data queued in the transmit bulfer 24 is less than
`a network-defined threshold,
`it
`is an indication that the
`available uplink capacity on the allocated bearer is exces-
`sive. The module 11 informs the network 9, and the network
`9 then reconfigures the module 11 to use a lower data rate
`bearer. For example, it may withdraw the l2><336 bit (384
`kbps) configuration. In this case, the network 9 may allocate
`the bearer to one or more other users.
`
`If the network 9 supports TVM, the module 11 still
`[0078]
`selects a transmit data rate which is dependent on the amount
`of data in the transmit buifer 24, although the transmit data
`rate cannot be greater than that allocated by the network 9.
`[0079] The microprocessor 22 of the module 11 is
`arranged under control of a program permanently stored in
`the ROM 21 to monitor the temperature of the module 11.
`This program is a WWAN (Wireless Wide Area Network)
`server 39, which is described below. Monitoring of the
`temperature of the module 11 involves periodic interrogation
`of the temperature sensor 30, with the sensor 30 responding
`with a signal indicative of the temperature of the module 11.
`The exact way in which the temperature of the module 11 is
`monitored is not crucial to the invention. It is however
`
`preferred that the module 11 is provided with two or more
`temperature sensors.
`[0080]
`In the embodiment of FIG. 1, the module 11 has
`three on-board temperature sensors 30a, 3017, 30c. The first
`sensor 30a is associated with an RF part of the module,
`which includes the transmitter 25 and the receiver 37. The
`
`second sensor 30b is associated with a VCTCXO (Voltage
`Controlled Temperature Compensated Oscillator)
`(not
`shown) which provides the transmitter 25 and the receiver
`27 with oscillator signals. The third sensor 30c is associated
`with the RAM 23. For simplicity, the module temperature is
`taken to be the highest of the temperatures provided by the
`three sensors 30a-30c including any sensor tolerance. How-
`ever,
`the temperature of the module 11 may instead be
`derived in any other suitable way.
`[0081] The WWAN server 39 is run on the module 11
`using the microprocessor 22 and the RAM 23 to cause the
`microprocessor 22 to monitor the temperature of the tem-
`perature sensors 30a, 30/), 300 and thus the temperature of
`the module 11. The WWAN server 39 of the module 11
`
`causes the microprocessor 22 to report to the laptop 12 via
`the USB interface 15, 16 when the temperature of the
`module 11 crosses one of a number of predetermined
`thresholds.
`
`[0082] Alternatively, the WWAN server 39 of the module
`11 may be arranged to report, for instance periodically, the
`temperature of the module 11 to the laptop 12.
`
`[0083] Altematively temperature reporting may occur in
`response to a request, generated by the program 37, to the
`WWAN server 39 for a temperature measurement.
`[0084] Whichever way it is achieved, the laptop 12 is able
`to determine when the temperature sensors 30a-30c indicate
`that a temperature has risen above certain thresholds. The
`laptop 12 also is able to determine when the temperature
`sensors 30a-30c indicate that a temperature has fallen below
`certain thresholds. These determinations are made from data
`received over the USB interface 15, 16.
`[0085] The driver program 37 causes the laptop 12 to
`adjust its operation on the basis of the monitored tempera-
`ture of the module 11. In particular, the driver program 37
`causes the laptop 12 to provide data to the module 11 for
`transmission at a rate which is dependent on the temperature
`of the module 11, as will now be described.
`[0086] A number of temperature thresholds are defined.
`Example thresholds are:
`
`Threshold
`TCritical
`TRadioOff
`TRadioOn
`TThrottle2
`TThrottlel
`
`Value [° C.]
`80
`75
`73
`70
`65
`
`[0087] The driver program is operable to operate in a state
`defined by the state machine 50 diagram of FIG. 2. The
`driver can operate in one of six states: ‘module on’ 51, ‘fault
`mode’ 52, ‘radio on’ 53, ‘radio off’ 54, ‘throttle 1’ 55 and
`‘throttle 2’ 56.
`
`[0088] The ‘module on’ state 51 is entered when the laptop
`12 boots up and power is applied to the module 11; or
`following recovery from the ‘fault mode’ 52. The WWAN
`server 39 reads the temperature of the module 11, and in
`conjunction with a software radio enable/disable feature (not
`shown) of the laptop 12, and W_DISABLE configurations,
`causes a state transition to ‘radio of state 54, ‘radio on’ state
`53 or ‘fault mode’ state 52 as appropriate
`
`W_DISABLE state
`USB state
`Module Processor
`State
`
`Same state as when laptop 12 was last powered
`Alive: state is transitory only
`MCU: Awake
`DSP: Sleep
`
`[0089] The ‘fault mode’ state 52 is the fault condition and
`is only entered (from any state), when the module tempera-
`ture exceeds a critical component temperature: TCritical.
`This can be used to prove that the warranty of the module 11
`has been violated.
`
`[0090] The module 11 first informs the laptop 12 that this
`state is being entered, and then enters a ‘power down’ state.
`This ensures that the module 11 is in its lowest operational
`state, even though power is still supplied to the module 11
`by the USB interface 15, 16.
`[0091] The laptop thermal design should be such that the
`‘fault mode’ state 52 is never entered, as the excessive
`module temperature will be due a high ambient temperature
`in the laptop 12, and not from the module 11. However if this
`
`8
`
`
`
`US 2008/0059658 A1
`
`Mar. 6, 2008
`
`mode is entered, then the WWAN server 39 writes data to
`permanent memory (i.e. the ROM 21) to indicate that this
`has happened
`[0092] The ‘fault mode’ state 52 can only be exited when
`the laptop 12 reboots: ‘module on’ state 51 is then entered.
`
`W_DISABLE state
`USB state
`Module Processor
`State
`
`N/A
`Selective Suspend
`MCU: Sleep
`DSP: Sleep
`
`Module
`Processor
`State
`
`W_DISABLE INACTIVE (High)
`state
`USB state
`
`Cellular Idle: Selective Suspend with Remote Wakeup to
`report module temperature and signal strength; and
`Resume Signalling from laptop as necessary.
`Cellular Connected: Intenupt EPs polled every 8 ms;
`BULK IN/OUT EPs posted when active data.
`Cellular Idle: MCU & DSP: Sleep, Awake for Page read
`Cellular Connected: MCU & DSP: Fully Awake
`
`[0093] The ‘radio on’ state 53 is the usual operational state
`of the module 11. In this state, the module temperature is low
`enough to permit data transmission at full rate; and both
`software and hardware radio controls are set to enable a
`network connection. This state is left if either there is a rise
`
`in module temperature or there is a reason why the radio
`cannot be operated (e.g. on entering “flight mode”, where
`radio operation is prohibited).
`
`W_DISABLE INACTIVE (High)
`state
`USB state
`
`Cellular Idle: Selective Suspend with Remote Wakeup
`to report module temperature and signal strength;
`and Resume Signalling from laptop as necessary.
`Cellular Connected: Intenupt EPs polled every 8 ms;
`BULK IN/OUT EPs posted when active data.
`Cellular Idle: MCU & DSP: Sleep, Awake for Page read
`Cellular Connected: MCU & DSP: Fully Awake
`
`Module
`Processor
`State
`
`[0094] The ‘radio off state 54 is the mode in which
`communication to/from the network 9 is prohibited. The
`most likely triggers for entering this state are excessive
`module temperature and either software or hardware radio
`controls preventing radio operation (e. g. entering “flight
`mode”). The module 11 informs the laptop 12 that this state
`is being entered, and a timer is started in the laptop by the
`driver program 37. Once the timer (ElapsedTime) exceeds a
`predetermined value, equal to CoolingTime, the driver pro-
`gram 37 of the laptop 12 polls the WWAN server 39 to report
`the temperature of the module 11. The WWAN Server 39
`then reads the module temperature and reports the tempera-
`ture to the driver program 37. If the module temperature is
`still high, such that only the ‘radio ofi’ state 54 or the ‘fault
`mode’ state 52 can be entered,
`then the procedure is
`repeated, but with an increased CoolingTime timer value.
`
`W_DISABLE
`state
`USB state
`
`ACTIVE (Low)
`
`Selective Suspend with occasional Remote Wakeup to
`report module temperature; and occasional Resume
`Signalling from laptop to request the temperature.
`Module Processor MCU: Sleep, Awake only to make temperature
`State
`measurements, or when instructed by laptop.
`DSP: Sleep
`
`[0095] The ‘throttle 1’ state 55 is identical to the ‘radio on’
`state 53, except that the UL data rate is throttled.
`
`[0096] The ‘throttle 2’ state 56 is identical to the ‘throttle
`1’ state 55, except that the UL data rate is throttled to an even
`lower data rate.
`
`W_DISABLE INACTIVE (High)
`state
`USB state
`
`Cellular Idle: Selective Suspend with Remote Wakeup to
`report module temperature and signal strength; and
`Resume Signalling from laptop as necessary.
`Cellular Connected: Intenupt EPs polled every 8 ms;
`BULK IN/OUT EPs posted when active data.
`Cellular Idle: MCU & DSP: Sleep, Awake for Page read
`Cellular Connected: MCU & DSP: Fully Awake
`
`Module
`Processor
`State
`
`State change 1 (denoted by a l in a circle in the
`[0097]
`Figure) occurs only when power is first applied to the
`module (3.3 V rail), the WWAN server 39 detects that the
`module temperature is below TCritical, a software command
`is set to enable the WWAN radio, and a hardware W_DIS-
`ABLE is disabled (high) to enable the WVVAN radio. This
`causes the module to transition to the ‘radio on’ state 53.
`
`State change 2 (denoted by a 2 in a circle in the
`[0098]
`Figure) occurs from either the initial power on (‘module on’
`state 51) or ‘radio on’ state 53. This state change occurs only
`when the WWAN server 39 detects that the module tem-
`
`perature is above TRadioOli but below TCritical, or soft-
`ware command is set
`to disable the WWAN radio, or
`hardware W_DISABLE is (low) to disable the WWAN
`radio. With this state change, the module 11 transitions to the
`‘radio off state 54.
`
`State change 3 (denoted by a 3 in a circle in the
`[0099]
`Figure) can occur from any state. It occurs when the WWAN
`server 39 detects that the module temperature is above
`TCritical, the state change is into the ‘fault mode’ 52.
`[0100]
`State change 4 (denoted by a 4 in a circle in the
`Figure) occurs when the module is in the ‘fault mode’ state
`52 and the laptop 12 powers off and reboots. Here, the
`module leaves the ‘fault mode’ state 52 and transitions to the
`
`‘module on’ state 51 such that “normal” operation can be
`resumed. This is the only recovery from the ‘fault mode’
`state 52.
`
`State change 5 (denoted by a 5 in a circle in the
`[0101]
`Figure) occurs from any state where there are restrictions on
`radio operation (disabled o