# UART problem of Clock Data Recovery

• posted

Hi, all, Usually, microcontroller has UART baud rates 0f 2.4k, 9.6k=85115.2k, etc. I want to use UART to implement a near-distance communication between two boards with a data rate of 1Mbps. The communication channel does not connect use cable directly, but rather include several circuits contain capacitive load. My question is how to avoid the error caused by jitter or skew of the data wave. Should I design a clock data recovery circuit to deal with it and how to choose the best CDR method?

Yu

• posted

The 1Mbps is within the reach of manymicro controller's UART. The biggest problem is with what exactly your channel will do to the data. Work out what happens to a 1uS pulse and a 500KHz square wave as it goes through.

Chances are, once you have done this, the signal will either obviously be good enough or obviously way too ugly. At this point, your choice will be made for you.

• posted

I've done UARTing up to 2 Mbaud through the long cables without much=20 problems.

There is no need to do anything special until the channel cutoff=20 frequency is higher then bitrate/2. If the cutoff is lower, apply a high =

frq boost at the transmit side.

Don't put silly ideas in your head especially as the clock recovery=20 doesn't work for UART due to the asynchronous nature of the communication= =2E

Vladimir Vassilevsky DSP and Mixed Signal Design Consultant

• posted

Thanks for reply. From the experiment I found that the channel will cause attenuation, delay and much overshooting. A 30v square wave will become 20mV. The overshooting almost be 50% of the square wave=92s magnitude. Thanks very much. Yu

• posted

Measure rise time on a square wave. If the RX UART samples halfway the bit time, then the level should be

100% a bit before that. On capacitive loads only the rise and fall times count. There is no real upper limit for the speed, it could be gigabits / seconds. Clock recovery is only used in synchronous communication. In HDLC for example. Those chips are not called 'UART' , where 'the 'A' stands for Asynchr., but for example SCC.
• posted

I've done UARTing up to 2 Mbaud through the long cables without much problems.

There is no need to do anything special until the channel cutoff frequency is higher then bitrate/2. If the cutoff is lower, apply a high frq boost at the transmit side.

Don't put silly ideas in your head especially as the clock recovery doesn't work for UART due to the asynchronous nature of the communication.

Vladimir Vassilevsky DSP and Mixed Signal Design Consultant

Biphase signals with a constant pulse width say 100 ns. one polarity for a positive transition the opposite for a negative transition. Constant width pulses have the same delay characteristics.

Bob

• posted

.

To Mr. Vassilevsky,

Thanks for reply. Although the channel cutoff frequency is higher than my bit rate/2, it features severe attenuation. A 30v square wave will become 20mV. I do not understand exactly what do you mean by using a high frequency boost (such as LM2731). Do you want to use it to acquire a stronger transmit signal?

Thanks very much.

Yu

• posted

a
t

What does the 30V look like at the sender? Does it look messed up too?

The overshoot is likely because you are transmitting into an open ended line. If you weren't losing 60dB worth of signal, I'd suggest just clipping at the receiver

Boosting the high frequencies in what you send is a worth while thing to consider

• posted

h
a
t

on.

Consider a circuit like this:

ASCII Art:

C1 R1 ---!!--/\\/\\---- ! ! In ---+---/\\/\\--------++--/\\/\\-------- ! ! R2 -!-\\ ! ! >---------+----Out GND--!+/

In the frequency band from:

F1 =3D 1/ (2 * PI * R2 * C1)

to:

F2 =3D 1 / (2 * PI * R1 * C1)

The gain will rise with frequency. If F1 is where the channel cuts off and F2 is above anything important, the rising gain can correct for the decreasing gain of the channel.

• posted

You are describing a 'channel' that is not a properly terminated transmission line. If you don't like it, change it. No one uses '30v square wave' anymore, a simple differential transceiver system (like RS-422) can move data over terminated paired wiring with a single +5V power supply and circa 3V signals.

• posted

uart already has CDR, you may get better results with some other encoding (EG manchester)

• posted

you mentioned overshoot, that suggests the channel passes signals at higher frequencies better than at your bitrate, have you considered using a switched carrier, eg: turn a 13.56MHz signal (or some other ISM band carrier) on and off to represent your UART data,

• posted

Overshoot does not mean that the channel carries the higher frequencies well. The noise may also rise.

The idea of using a modulated carrier may be a good one if the signal to noise is better at higher frequencies.

• posted

9.6k=E2=80=A6115.2k,

communication.

a=20

width=20

Manchester encosing in an option. Mainly has value for bit stream over character (group) situations.

It will be a lot easier for others to understand your posts of you used quoting properly. See: =20

Cheers.

• posted

Manchester encosing in an option. Mainly has value for bit stream over character (group) situations.

It will be a lot easier for others to understand your posts of you used quoting properly. See:

Cheers.

negative polarity pulse on negative transitions positive polarity pulse on positive transitions. The modulaton of the signal over the cable not the type of data encoding.

Bob

• posted

high

a

best

communication.

for a

width

on=20

=20

In some cases they are and in some cases they are not. When discussing Manchester / bi-phase line encoding they are. .

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.