Source: http://www.allindianpatents.com/patents/260015-a-method-of-characterising-data-stream-of-binary-symbols
Timestamp: 2018-07-19 03:58:07
Document Index: 148209518

Matched Legal Cases: ['ART 20', 'ART 20', 'ART 20', 'ART 20', 'ART 20', 'ART 20', 'ART 20', 'ART 20']

Indian Patents. 260015:A METHOD OF CHARACTERISING DATA STREAM OF BINARY SYMBOLS
A METHOD OF CHARACTERISING DATA STREAM OF BINARY SYMBOLS
A method of characterising a data stream of binary symbols, applied to a mobile apparatus at least having a processor and a memory which are used to execute the method, the method comprising: sampling the data stream at a predetermined rate sufficient to capture an entire character to obtain a sample train having at least two samples per binary symbol, storing the sample train in the memory, identifying the shortest continuous run of samples having the same logic level by scanning the sample train in the memory, assigning, using a look-up table, a symbol rate to the data stream on the basis that the identified shortest continuous run is one symbol in length, and reconstructing the stream from the sample train in the memory using the assigned symbol rate.
It is common practice to provide a mobile telephone with a UART (universal asynchronous receiver/transmitter) for exchanging data with an external device such as a PC, over an RS232 link. The advantages of including a UART in a mobile telephone are widely understood. For example, a PC can use a mobile telephone as an "external modem" for sending and receiving data over the wireless network to which the telephone belongs by connecting to the telephone by means of an RS232 link.
The invention also encompasses a method of characterising an RS232-format data stream comprising a series of characters each packaged in a frame, the method comprising sampling the stream at a predetermined rate, identifying the shortest continuous run of samples having the same logic level, assigning a baud rate to the stream on the basis that
the identified run is one baud in length, recovering one or more frames from the stream on the basis of the assigned baud rate and determining the parity of one or more recovered frames in order to estimate whether or not characters are being transmitted with parity bits. The invention also relates to apparatus for carrying out such a method.
Figure 1 is a block diagram illustrating an RS232 link between a PC and a mobile telephone; and
Figure 2 illustrates the wave form of a typical ASCII character received asynchronously over an RS232 to link.
In Figure 1, a PC 2 is shown connected to a mobile telephone 4 via an RS232 link 10. The structure of the telephone 4 is presented in simplified form in Figure 1, including only those elements that are necessary for describing the operation of the present embodiment of the invention.
The RS232 link 10 connects the PC 2 to a UART 20 within the telephone 4. The data line 8 of the RS232 link is shown extending between the PC 2 and the UART 20. Data signals travelling between the PC 2 and the UART 20 10 have the general wave form shown in Figure 2, in which a positive voltage level V, typically between 8 and 14 volts, represents a logical 0 and a nominally equally negative voltage level represents a logical 1. The wave form shown in Figure 2 represents a single ASCII eight bit character being transferred as a group often pulses, where:
•	prior to the first pulse 11, the wave form remains at the negative voltage level;
•	the first pulse 11 is a start bit, which is a logical 0, signalling the start of the character;
•	a payload section 12 of eight bits for conveying the ASCII character follows the start bit;
•	in the event that the character in the payload section 12 is seven bits long, a parity bit 13 is added to complete the payload section and force the parity of the payload section 12 to even or odd to conform with the parity setting of the transmission;
•	a stop bit of logical 1 is appended to the pay load section 12 to indicate the end of the group
of pulses defining the character (the stop bit essentially defines the minimum inter-
character gap, although other values of inter-character gap are permissible, such as 1.5 and
2 bauds); and
•	each pulse is of the same duration, indicated 15, this duration being the reciprocal of the
The PC 2 is configured to send data through the RS232 link 10 at a certain baud rate and with a certain parity setting and the UART 20 must be configured to match these settings if the data sent from the PC is to be received correctly be the telephone 4. The UART 20 is configured and controlled by a general purpose microprocessor 24 in the telephone 4. A memory resource within the telephone includes an auto-detect software module 9 that can be run by the processor 24 to discriminate the baud rate and parity setting that are being used by the PC 2 so that the user of the telephone 4 does not have to make these settings manually. The processor executes the auto-detect component 9 following a reported error in the incoming data stream (e.g. start bit not detected, stop bit not detected or incorrect parity) or a change in control line (DTR, CTS) state. The auto-detect component 9 does not, therefore, operate continuously, thereby lessening the processing burden on the processor 24. As is commonly the case, the telephone 4 includes, in addition to the UART 20, a programmable serial input/output circuit 22 and the auto-detect module 9 is arranged to use this circuit to analyse data travelling to the telephone 4 on the data line 8.
The auto-detect component 9 configures the i/o circuit 22 to sample the data line 8, as indicated by notional path 3. The baud rate used by the PC 2 is selected from a standard range of rates, which in this example are 4,800, 9,600, 19,200, 57,600, 115,200 and 230,400Hz and the auto-detect component 9 configures the i/o circuit 22 to sample the data line 8 at twice the maximum baud rate that can be used by the PC 2, i.e. at 460,800Hz. The auto-detect component 9 is arranged to cause the i/o circuit 22 to co-ordinate the capture of samples to commence with the start bit on the data line 8 that follows the error that triggered the processor 24 into executing the auto-detect component. The auto-detect component 9 causes the i/o circuit 22 to capture a train of samples that is sufficient to capture an entire character, i.e. ten pulses, at the slowest baud rate that is to be
Given that the sampling rate of the i/o circuit 22 is set to 460,800Hz and the slowest baud rate that can be used by the PC 2 is 4,800Hz, the captured train of samples is to be at least 960 samples long. This sampling process occurs in parallel with the normal data communication activities of the UART 20, which continues to interpret the signal arriving at the telephone 4 on the data line 8 at the current baud rate and parity settings until a decision to change either or both of the settings is made by the auto-detect component 9.
Once the auto-detect component 9 has completed the collection of a train of samples, it scans the train to determine the shortest run of samples that share the same logical state. The length of the run so identified is then assumed to correspond to the period of a single baud. As all RS232 command queries start with the characters "A" and "T", this assumption is likely to be valid ("A" is 0010000011 and "T" is 0010101001 - including start and stop bits).
The auto-detect component 9 then translates the minimum run length into a baud rate for the data stream arriving at the telephone 4 through the RS232 link by comparing the minimum run length with a look-up table. The use of a look-up table means that the baud rate of the arriving data stream can be determined rapidly without having to perform computations. Also, the use of a look¬up table allows significant tolerances between the baud rate of the PC 2 and that of the UART 20 to be accommodated.
Once a baud rate has been allocated to the data stream, the incoming bits on the data line can, if desired, be reconstructed. For example, if the auto-detect component 9 samples the
incoming data stream at a rate of 460,800 Hz, then a received character "T" transmitted at 57,600 bps would, if the start and stop bits are neglected, be received as the following train of samples:
Assuming that the auto-detect component 9 has correctly determined the number of samples in a single baud, then the auto-detect component 9 will reduce the above signal train to a binary sequence of:
Since this recovered payload section contains only three symbols of logical 1, it has odd parity. The auto-detect component 9 can therefore conclude that this payload section contains either an eight bit character without a parity bit or a seven bit character with a parity bit that has been set to give the payload section odd parity. Therefore, the auto-detect component 9 needs to analyse several successive recovered payload sections in order to make a determination about the parity setting of the incoming data stream with a degree of confidence. For example, if the next three payload sections from the data stream are also perceived by the auto-detect component 9 to have odd parity, then the auto-detect component can conclude that the arriving data stream contains seven bit characters with accompanying parity bits that have been set to give their payload sections odd parity; otherwise, the auto-detect component could conclude that the incoming data stream consists of payload sections containing eight bit characters with no accompanying parity bits.
1. A method of characterising a data stream of binary symbols, applied to a mobile apparatus at least having a processor and a memory which are used to execute the method, the method comprising: sampling the data stream at a predetermined rate sufficient to capture an entire character to obtain a sample train having at least two samples per binary symbol, storing the sample train in the memory, identifying the shortest continuous run of samples having the same logic level by scanning the sample train in the memory, assigning, using a look-up table, a symbol rate to the data stream on the basis that the identified shortest continuous run is one symbol in length, and reconstructing the stream from the sample train in the memory using the assigned symbol rate.
2.	A method as claimed in claim 1, wherein assigning a symbol rate to the stream comprises comparing the length of the identified run with a set of ranges, each range being associated with a symbol rate, and assigning the symbol rate associated with the range into which the length of the identified run falls.
3.	A method as claimed in claim 1, wherein assigning a symbol rate to the stream comprises taking the reciprocal of the duration of the identified run.
4.	A method as claimed in claim 1, wherein assigning a symbol rate to the stream comprises processing the identified run through a software decision tree.
5.	A method as claimed in claim 1, further comprising recovering one or more frames of symbols from the stream on the basis of the assigned symbol rate and determining the parity of one or more recovered frames in order to estimate whether or not characters are being transmitted with parity bits.
6.	An apparatus for characterising a data stream of binary symbols, the apparatus comprising:
means for sampling the data stream at a predetermined rate sufficient to capture an entire character to obtain a sample train having at least two samples per binary symbol, means for storing the sample train in memory, means for identifying the shortest continuous run of samples having the same logic level by scanning the sample train in the memory, means for assigning, using a look-up table, a symbol rate to the data stream on the basis that the identified shortest continuous run is one symbol in length, and means for reconstructing the data stream from the sample train in the memory using the assigned symbol rate.
7.	An apparatus as claimed in claim 6, wherein the means for assigning a
symbol rate to the stream comprises means for comparing the length of the identified
run with a set of ranges, each range being associated with a symbol rate, and means for
assigning the symbol rate associated with the range into which the length of the identified run falls.
8.	An apparatus as claimed in claim 6, wherein the means for assigning a symbol rate to the stream comprises means for taking the reciprocal of the duration of the identified run.
9.	An apparatus as claimed in claim 6, wherein the means for assigning symbol rate to the stream comprises means for processing the identified run through a software decision tree.
10.	An apparatus as claimed in claim 6, further comprising means for
recovering one or more frames of symbols from the stream on the basis of the assigned
data rate and means for determining the parity of one or more recovered frames in order
to estimate whether or not characters are being transmitted with parity bits.
11.	A method of determining the baud rate of an RS232-format data stream,
applied to a mobile apparatus at least having a processor and a memory which are used
to execute the method, the method comprising:
sampling the data stream at a predetermined rate to capture an entire character to obtain a sample train having at least two samples per binary symbol, storing the sample train in the memory, identifying the shortest continuous run of samples having the same logic level by scanning the sample train in the memory, assigning, using a look-up table, a baud rate to the data stream on the basis that the identified shortest continuous run is one baud in length, and reconstructing the data stream from the sample train in the memory using the assigned baud rate.
12.	A method of characterising an RS232-format data stream comprising a
series of characters each packaged in a frame, applied to a mobile apparatus at least
having a processor and a memory which are used to execute the method, the method
sampling the data stream at a predetermined rate to capture an entire character to obtain a sample train having at least two samples per binary symbol, storing the sample train in the memory, identifying the shortest continuous run of samples having the same logic level by scanning the sample train in the memory, assigning, using a look-up table, a baud rate to the data stream on the basis that the identified shortest continuous run is one baud in length, recovering one or more frames from the sample train in the memory on the basis of the assigned baud rate, and determining parity of the one or more recovered frames in order to estimate whether or not characters are being transmitted with parity bits.
13.	An apparatus for determining the baud rate of an RS232-format data stream,
means for sampling the data stream at a predetermined rate to capture an entire character to obtain a sample train having at least two samples per binary symbol, means for storing the sample train in memory, means for identifying the shortest continuous run of samples having the same logic level by scanning the sample train in the memory, means for assigning, using a look-up table, a baud rate to the data stream on the basis that the identified shortest continuous run is one baud in length, and means for reconstructing the data stream from the sample train in the memory using the assigned baud rate.
14. An apparatus for characterising an RS232-format data stream comprising a series of characters each packaged in a frame, the apparatus comprising: means for sampling the data stream at a predetermined rate to capture an entire character to obtain a sample train having at least two samples per binary symbol, means for storing the sample train in memory, means for identifying the shortest continuous run of samples having the same logic level by scanning the sample train in the memory, means for assigning, using a look-up table, a baud rate to the data stream on the basis that the identified shortest continuous run is one baud in length, means for recovering one or more frames from the sample train in the memory on the basis of the assigned baud rate, and means for determining parity of the one or more recovered frames in order to estimate whether or not characters are being transmitted with parity bits.
"A METHOD OF CHARACTERISING DATA STREAM OF
BINARY SYMBOLS"
A method of characterising a data stream of binary symbols, applied to a mobile apparatus at least having a processor and a memory which are used to execute the method, the method comprising:
sampling the data stream at a predetermined rate sufficient to capture an entire character to obtain a sample train having at least two samples per binary symbol, storing the sample train in the memory, identifying the shortest continuous run of samples having the same logic level by scanning the sample train in the memory, assigning, using a look-up table, a symbol rate to the data stream on the basis that the identified shortest continuous run is one symbol in length, and reconstructing the stream from the sample train in the memory using the assigned symbol rate.
03843-kolnp-2006 abstract.pdf
03843-kolnp-2006 claims.pdf
03843-kolnp-2006 correspondence others.pdf
03843-kolnp-2006 description(complete).pdf
03843-kolnp-2006 drawings.pdf
03843-kolnp-2006 form-1.pdf
03843-kolnp-2006 form-2.pdf
03843-kolnp-2006 form-3.pdf
03843-kolnp-2006 form-5.pdf
03843-kolnp-2006 international publication.pdf
03843-kolnp-2006 international search authority report.pdf
03843-kolnp-2006-correspondence-1.1.pdf
03843-kolnp-2006-form-1-1.1.pdf
03843-kolnp-2006-form-26.pdf
03843-kolnp-2006-form-5-1.1.pdf
03843-kolnp-2006-pct request.pdf
03843-kolnp-2006-priority document.pdf
3843-KOLNP-2006-(13-03-2012)-CORRESPONDENCE.pdf
3843-KOLNP-2006-(13-07-2012)-CORRESPONDENCE.pdf
3843-KOLNP-2006-(24-10-2013)-ABSTRACT.pdf
3843-KOLNP-2006-(24-10-2013)-ANNEXURE TO FORM 3.pdf
3843-KOLNP-2006-(24-10-2013)-ASSIGNMENT.pdf
3843-KOLNP-2006-(24-10-2013)-CLAIMS.pdf
3843-KOLNP-2006-(24-10-2013)-CORRESPONDENCE.pdf
3843-KOLNP-2006-(24-10-2013)-DESCRIPTION (COMPLETE).pdf
3843-KOLNP-2006-(24-10-2013)-DRAWINGS.pdf
3843-KOLNP-2006-(24-10-2013)-FORM-1.pdf
3843-KOLNP-2006-(24-10-2013)-FORM-2.pdf
3843-KOLNP-2006-(24-10-2013)-FORM-3.pdf
3843-KOLNP-2006-(24-10-2013)-FORM-5.pdf
3843-KOLNP-2006-(24-10-2013)-OTHERS.pdf
3843-KOLNP-2006-(24-10-2013)-PA.pdf
3843-KOLNP-2006-(24-10-2013)-PETITION UNDER RULE.pdf
3843-KOLNP-2006-ASSIGNMENT-1.1.pdf
3843-KOLNP-2006-ASSIGNMENT.pdf
3843-KOLNP-2006-CANCELLED PAGES.pdf
3843-KOLNP-2006-CORRESPONDENCE.pdf
3843-KOLNP-2006-EXAMINATION REPORT.pdf
3843-KOLNP-2006-FORM 18-1.1.pdf
3843-kolnp-2006-form 18.pdf
3843-KOLNP-2006-FORM 26-1.1.pdf
3843-KOLNP-2006-FORM 26.pdf
3843-KOLNP-2006-FORM 6.pdf
3843-KOLNP-2006-GRANTED-ABSTRACT.pdf
3843-KOLNP-2006-GRANTED-CLAIMS.pdf
3843-KOLNP-2006-GRANTED-DESCRIPTION (COMPLETE).pdf
3843-KOLNP-2006-GRANTED-DRAWINGS.pdf
3843-KOLNP-2006-GRANTED-FORM 1.pdf
3843-KOLNP-2006-GRANTED-FORM 2.pdf
3843-KOLNP-2006-GRANTED-FORM 3.pdf
3843-KOLNP-2006-GRANTED-FORM 5.pdf
3843-KOLNP-2006-GRANTED-SPECIFICATION-COMPLETE.pdf
3843-KOLNP-2006-INTERNATIONAL PUBLICATION.pdf
3843-KOLNP-2006-INTERNATIONAL SEARCH REPORT & OTHERS.pdf
3843-KOLNP-2006-OTHERS.pdf
3843-KOLNP-2006-PETITION UNDER RULE 137.pdf
3843-KOLNP-2006-REPLY TO EXAMINATION REPORT-1.1.pdf
3843-KOLNP-2006-REPLY TO EXAMINATION REPORT.pdf
abstract-03843-kolnp-2006.jpg
3843/KOLNP/2006
2ND FLOOR,COMPASS CENTRE,P.O. BOX 10338,SHEDDEN ROAD, GRAND CAYMAN,KY1-1003,CAYMAN ISLANDS
1 HUNT,Richard,Neil 11 Wakelin Avenue,Sawston Cambridge CB2 4DS
H04L25/02; H04L25/02
PCT/GB2005/002596
1 0414793.0 2004-07-01 U.K.