Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
12/20/05 17:45
Modified:
  12/20/05 18:04

Read: times


 
#105612 - 1 x T
Responding to: ???'s previous message
Joseph said:
For a random data sequence you could look for a quanta period T such that every measured period is equal to n x T for some n = 1, 2, 3, 4, ..., 8, (9, maybe?), within some acceptable %error tolerance (n = 8 or 9 maximum assumes that the random data stream is limited to a single character).

Yes, that was the idea! But only the "1 x T" periods is checked, by what I wrote.

Joseph said:
Hasn't it been shown in another thread(s) that the unitary period must be within 2% or 3% of the ideal in order for the UART to work. I suspect that would define the acceptable error in any test.

As a rough approximation you can assume the following:
UART divides the bit time into 16ths. Each bit is checked then at 7th, 8th and 9th state. If the bit clock is wrong, then about one half bit out-of-synchronization at the 10th bit (if ten bits are transmitted) is allowed. This gives a maximum allowed relative error of about 0.5 x 100% / 10 = 5%.
If 11 bits are transmitted then maximum allowed error is about 0.5 x 100% / 11 = 4.5%

This is the theoretical limitation, if there's neither jitter nor noise. Of course, a tolerance of only 2% or 3% would give much safer results.

In the methode I mentioned in the last post, the shortest interval is looked for, and it's checked then whether there are other intervals which's duration are as short or up to 5% longer. This means a window of about +-2.5%. This is done only, to find out, whether this interval is a regular bit time or created by noise. Of course, to find the correct interval of bit time all these same short inervals need to be averaged.

Joseph said:
Frankly, I like the way Atmel does it. The firmware assumes that the autobaud character is an uppercase 'U', which means that the data stream is a series of alternating 1's and 0's. In other word, every transition occurs after a single (n = 1 above) untary period. That's got to make for the simplest algorithm possible.

Of course. But I interpreted the OP like that he has to deal with a random stream.

Kai

List of 11 messages in thread
TopicAuthorDate
Help to sense baud rate of incoming data            01/01/70 00:00      
   Search for Auto-baud or Automatic baud..            01/01/70 00:00      
      Search            01/01/70 00:00      
         a good link to have (save it)            01/01/70 00:00      
   Normally not needed            01/01/70 00:00      
      Known start sequence            01/01/70 00:00      
   In the code Library            01/01/70 00:00      
   Time machine(part 2!)            01/01/70 00:00      
   If signal transmitted is randomly            01/01/70 00:00      
      n x T            01/01/70 00:00      
         1 x T            01/01/70 00:00      

Back to Subject List