The present disclosure relates to synchronising a transmitter and receiver. Suitably, the present disclosure is implemented in a system comprising a 3D television and 3D glasses, to maintain synchronisation between each shutter of the glasses and the corresponding image transmitted by the television.
The revival of 3D entertainment has led to a surge of 3D televisions entering the domestic market. In conjunction with a pair of 3D glasses, the 3D televisions enable viewers to perceive a 3D image. Typically, 3D images are conveyed by a 3D television using stereoscopy and filtered for viewing by liquid crystal (LC) shutter glasses. Filming in 3D is carried out using two cameras separated by the average distance between a person's pupils. The 3D television displays alternate images from the two cameras, one image intended for the right eye and the other image intended for the left eye. The rate at which the images alternate between the right and left image is sufficiently high to give the impression to a viewer that a continuous 3D image is being displayed rather than alternate 2D images. The LC shutters “open” and “close” alternately, such that the right shutter is open when the image for the right eye is displayed by the 3D television and closed when the image for the left eye is displayed. Conversely, the left shutter is open when the image for the left eye is displayed by the 3D television and closed when the image for the right eye is displayed. The liquid crystal layer in the LC shutters changes state on application of a voltage across it. When no voltage is applied, the LC layer is visibly transparent, and when a voltage is applied across it the layer turns dark. Thus, the shutters are “opened” and “closed” by application and removal of a voltage across the LC layer of the shutters.
The application and deactivation of the voltage across the LC layer of the shutters may be controlled by a small device that can be incorporated into the 3D glasses, for example a Bluetooth device. In such an application, the controller device in the LC shutters operates in conjunction with a controller device in the 3D television to maintain synchronisation of the shutters with the images displayed by the television. Maintaining synchronisation is very important. If the shutters are not precisely synchronised with the images displayed by the television, then one of the shutters of the glasses may be open when the television switches between the image intended for one eye and the image intended for the other eye. This may result in the viewer experiencing flickering and/or a distorted picture (crosstalk).
It is advantageous for the power drawn by the controller device in the 3D glasses to be very low because the 3D glasses are typically battery operated.
Thus, there is a need for a low power controller device that is able to maintain precise synchronisation.
According to a first aspect of the disclosure there is provided a transmitter operable in accordance with a protocol which mandates that some transmissions are jittered, the transmitter configured to synchronise with a receiver by: transmitting a pseudo-random seed to the receiver; determining a jitter value based on the pseudo-random seed; and transmitting a synchronisation packet to the receiver at a time determined by the jitter value.
Suitably, the protocol is the Bluetooth Low Energy protocol.
Suitably, the synchronisation packet is a Bluetooth Low Energy advertising packet.
Suitably, the transmitter is incorporated into a 3D television.
Suitably, the synchronisation packet comprises timing information indicative of the times at which the television displays images for reception by left and right eyes.
According to a second aspect of the disclosure there is provided a method by which a transmitter synchronises with a receiver, the transmitter and receiver operable in accordance with a protocol which mandates that some transmissions are jittered, the method comprising: transmitting a pseudo-random seed to the receiver; determining a jitter value based on the pseudo-random seed; and transmitting a synchronisation packet to the receiver at a time determined by the jitter value.
According to a third aspect of the disclosure there is provided a receiver operable in accordance with a protocol which mandates that some transmissions are jittered, the receiver configured to synchronise with a transmitter by receiving a pseudo-random seed from the transmitter; determining timing of a receive window for a synchronisation packet based on the pseudo-random seed; opening the receive window at the determined time; receiving the synchronisation packet within the receive window; and closing the receive window following receipt of the synchronisation packet.
Suitably, determining timing of a receive window comprises: determining an expected time of arrival of a synchronisation packet based on the pseudo-random seed; and determining a time period of the receive window based on the expected time of arrival of the synchronisation packet.
Suitably, the protocol is the Bluetooth Low Energy protocol.
Suitably, the receiver is incorporated into a pair of 3D glasses.
Suitably, the receiver is further configured to control the timing of the shutters of the 3D glasses based on timing information in the synchronisation packet.
According to a fourth aspect of the disclosure there is provided a method by which a receiver synchronises with a transmitter, the transmitter and receiver operable in accordance with a protocol which mandates that some transmissions are jittered, the method comprising: receiving a pseudo-random seed from the transmitter; determining timing of a receive window for a synchronisation packet based on the pseudo-random seed; opening the receive window at the determined time; receiving the synchronisation packet within the receive window; and closing the receive window following receipt of the synchronisation packet.
Suitably, determining timing of a receive window comprises: determining an expected time of arrival of a synchronisation packet based on the pseudo-random seed; and determining a time period of the receive window based on the expected time of arrival of the synchronisation packet.
Suitably, the receiver is incorporated into a pair of 3D glasses, the method further comprising: controlling the timing of the shutters of the 3D glasses based on timing information in the synchronisation packet.
The present invention will now be described by way of example with reference to the accompanying drawings. In the drawings:
In the example of the 3D television and 3D glasses being controlled by respective Bluetooth devices, the Bluetooth device in the television and the Bluetooth device in the glasses may communicate in accordance with the Bluetooth Low Energy (BLE) protocol defined in the Bluetooth Specification version 4.0. This is preferred to those devices communicating in accordance with the Bluetooth Basic Rate/Enhanced Data Rate protocol because the 3D glasses are battery powered and may be required to operate for lengthy periods, thus minimising the power required for communication with the television is desirable.
In accordance with the BLE protocol, streams of advertising packets are transmitted from the television (acting as a BLE master device) to the glasses (acting as a BLE slave device) approximately every 500 ms. These advertising packets comprise timing information about the timing of the alternating images displayed by the television. The glasses use this timing information to correct the timing of the shutters, so as to synchronise the shutters with the alternating images.
The BLE protocol in the Bluetooth specification version 4.0 requires that the advertising packets be jittered. This means that each packet is transmitted at a small deviation in time from the nominal time at which the receiver expects the packet to be transmitted. Jittering is required in the BLE protocol to reduce the likelihood of a transmitted packet colliding with a packet transmitted from another source that happens to be synchronised to the nominal time and transmitting on the same frequency.
As a result of jittering, the Bluetooth receiver in the 3D glasses does not know exactly when it will receive an advertising packet from the Bluetooth transmitter in the 3D television. In the example illustrated in
The receive window during which the receiver is operable to receive a packet is significantly longer than the duration of the received packet. Long receive windows drain the power of a receiver. In low energy platforms, for example those running off coin cells (as is typical in the case of 3D glasses), this power drain is particularly problematic.
The following description relates to communications between devices which operate according to a protocol which mandates that some transmissions are jittered. In an exemplary case, this protocol is the Bluetooth Low Energy protocol. The example system described below operates in accordance with the Bluetooth Low Energy protocol. However, the methods described below apply equally to any protocol which requires that some transmissions are jittered.
In an exemplary Bluetooth Low Energy system, a first device communicates with a second device. The accuracy of an internal device clock is limited by the regularity of the frequency of the crystal oscillator which generates the clocking signal. Hence, clocks in different devices drift away from each other over time. This is a particular problem for low energy, low cost devices which generally operate using relatively inaccurate clocks. To maintain synchronisation between the devices, the first device transmits synchronisation packets to the second device. Suitably, these synchronisation packets contain timing information which the second device uses to adjust the clocking of its operations. For example, the timing information may be an indication of the timing of the clock of the first device. As a result of the clock drift problem, frequent synchronisation packets are exchanged to maintain synchronisation.
In the exemplary Bluetooth Low Energy system, synchronisation information may be transmitted in advertising packets. Advertising packets are defined in the Bluetooth specification version 4.0. The Bluetooth specification requires that advertising packets are transmitted with a random jitter, i.e. with a random time offset from the expected time of transmittal. The value of the jitter is determined by a pseudo-random seed which is generated by the transmitter. In known methods, the jitter applied by a transmitter to an advertising packet is not known by the receiver of the advertising packet. Thus, the receiver opens its receive window for a long time prior to and after the expected time of arrival of the advertising packet to ensure that the jittered advertising packet is received. When the receive window is open, the receiver processes every signal that it receives, i.e. amplifies, mixes, demodulates, filters and performs baseband processing of every signal. All of this processing is power intensive. When the receive window is closed, the receiver ignores all signals that it could otherwise receive. Thus, the receiver mode in which the receive window is open is a high power consumption mode relative to the receiver mode in which the receiver window is closed.
The methods described with respect to
The operation of the transmitter will now be described with respect to
An exemplary implementation of the operation of the transmitter will now be described with reference to
advDelay(i)=GenAdvDelay(state(i)) (equation 1)
where advDelay(i) is the delay (jitter) applied to the ith advertising packet's transmission, state(i) is the ith state of the shift register, and GenAdvDelay is a function which maps the register state bits to a time delay (jitter). This is illustrated at step 802 on
Suitably, the advDelay represents a value between 0 and 10 milliseconds.
At step 804 of
T_advEvent(i)=advInterval+advDelay(i) (equation 2)
where T_advEvent(i) is the time in between the transmissions of the i−1th and ith advertising packets, advInterval is the predetermined minimal interval between advertising packet transmissions, and advDelay(i) is the delay (jitter) applied to the ith advertising packet transmission.
At step 806 on
In the case that a LFSR is used to generate the pseudo-random seed, the LFSR is preferably implemented in hardware with associated hardware or software logic. Suitably, the LFSR produces a maximum-length sequence. It cycles through all possible states within the shift register excluding the state in which all the bits are zero. This maximises the randomness of the number sequence outputted from that LFSR.
The operation of the receiver will now be described with respect to
Thus, the receive window is only open during the time period when the synchronisation packet is being received. This is in contrast to known methods in which the receive window is open for much longer to receive the synchronisation packet. Thus, the methods disclosed herein reduce power consumption at the receiver compared to known methods.
An exemplary implementation of the operation of the receiver will now be described with reference to
At step 900, the receiver 900 receives an advertising packet from the transmitter, referred to in
As described above, the receiver also has a shift register. The receiver operates such that the state of the receiver shift register is maintained in synch with the state of the transmitter shift register. At step 904 the receiver clocks the receiver shift register. Following this operation, the receiver shift register outputs a state. This is illustrated on
At step 906, the receiver performs a check to see if the state of the receiver shift register matches the received state of the transmitter shift register. If it does not, then the receiver replaces the receiver shift register state with the received transmitter shift register state. This is calculated as:
If state′(n)!=state(n)
Set state′(n)=state(n) (equation 3)
where state′(n) is the nth state of the receiver shift register, and state(n) is the nth state of the transmitter shift register.
At step 908, the receiver determines the jitter value using the same method as described above for the transmitter with reference to
advDelay(n)=GenAdvDelay(state′(n)) (equation 4)
where advDelay(n) is the delay (jitter) to be applied to the next advertising packet's transmission, state(n) is the nth state of the shift register, and GenAdvDelay is a function which maps the register state bits to a time delay (jitter).
Suitably, the advDelay represents a value between 0 and 10 milliseconds.
At step 910 of
T_advEvent(n)=advInterval+advDelay(n) (equation 5)
where T_advEvent(n) is the time in between the receipt of the n−1th and nth advertising packets, advInterval is the predetermined minimal interval between advertising packet transmissions, and advDelay(n) is the delay (jitter) applied to the nth advertising packet transmission.
At step 910 on
In the case that a LFSR is used to generate the pseudo-random seed, the LFSR is preferably implemented in hardware with associated hardware or software logic. Suitably, the LFSR produces a maximum-length sequence. It cycles through all possible states within the shift register excluding the state in which all the bits are zero. This maximises the randomness of the number sequence outputted from that LFSR.
In order to save power, the receiver may not receive one or more advertising packets. In this case, the receiver still performs steps 904, 908 and 910 of
Reference is now made to
Computing-based device 400 comprises a processor 402 for processing computer executable instructions configured to control the operation of the device in order to perform the synchronisation method. The computer executable instructions can be provided using any computer-readable media such as memory 404. Further software that can be provided at the computer-based device 400 includes pseudo-random seed generating logic 406 which implements step 200 of
Computing-based device 500 comprises a processor 502 for processing computer executable instructions configured to control the operation of the device in order to perform the synchronisation method. The computer executable instructions can be provided using any computer-readable media such as memory 504. Further software that can be provided at the computer-based device 500 includes receive window logic 506 which implements steps 302 and 304 of
In
In a specific example, the methods described with respect to
The transmitter described with respect to
The receiver described with respect to
The switches in the circuits shown in
Suitably, the synchronisation packets transmitted by the transmitter comprise timing information indicative of the times at which the television will display images for reception by left and right eyes.
Thus, the receiver in the 3D glasses uses the timing information in the synchronisation packets to accurately synchronise the opening and closing of the shutters with the alternating images displayed by the 3D television. The receive window of the receiver in the 3D glasses is open for a shorter period than in known glasses and thus the power consumption of the glasses is reduced compared to known glasses.
The advertising packets defined in the Bluetooth specification can be broadcast packets. Suitably, the transmitter in the 3D television broadcasts the advertising packets to a plurality of pairs of 3D glasses, each comprising a receiver as previously described. Each receiver synchronises to the transmitter in the 3D television by implementing the method described with respect to
The applicant draws attention to the fact that the present invention may include any feature or combination of features disclosed herein either implicitly or explicitly or any generalisation thereof, without limitation to the scope of any of the present claims. In view of the foregoing description it will be evident to a person skilled in the art that various modifications may be made within the scope of the invention.