Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

USART problems with elated to latency v/s throughput in input register buffer

Status
Not open for further replies.

mohi@608

Member level 4
Member level 4
Joined
Apr 4, 2012
Messages
69
Helped
1
Reputation
2
Reaction score
1
Trophy points
1,288
Activity points
1,719
i have design issues in USART (16x baud rate) related to latency v/s throughput in input register buffer ??? pls give ur suggestions ...
 

Re: USART related issues ???

My suggestion is that you explain in more details what the actual problem is.

cheers!
:)
 

Re: USART related issues ???

my issue is generally a usart has a max 8 bit transmitter register but i want to increase it till 16/32 bit . how will it effect the throughput and latency???
 

Re: USART related issues ???

throughput would remain pretty much the same since that depends on the clock speed, but latency would increase while you assemble the larger number of bits to start with. Of course if you are using a parallel load (which is true in most cases), then even latency would only increase by a small fraction for an 8-bit bus, but would be the same if the bus/ memory access was the same width as the usart length.

HOWEVER, for a "normal" usart system, and especially where you are using ASync transmission, the number of Start/ Stop + parity bits PER data bit is LARGER for an 8-bit usart Vs a 16/ 32 bit.

Hence for a 16/32 bit system, the data throughput will ALSO increase
 
Re: USART related issues ???

thanks for the previous post .. i wanted to ask you why we have only parity check in usual USART?? and what if error on two parity occurs??

- - - Updated - - -

and i wish to increase the data register length from conventional 8 bit USART to 16 or 32?? is it possible and what are the complication associated with it ???
 

Re: USART related issues ???

SIngle parity bit is enough to improve the average BER to some extent, but as you said, not for all cases. Usually there are higher-layer protocols also involved in any communication system which take care of further errors. Putting in a more complex error checking/ correcting system for EVERY 8/16 bits would reduce the throughput considerably. And since (usually) the errors are not THAT common at link layer, it would be an overkill.

As always, there are trade-offs, and which method is used depends to a large extent on what type of system you are designing. Thus (for example) for a high-speed satellite link where the link turn-around time is large, it is worthwhile to have many more bits of redundancy built in, and which include Forward Error Correction (FEC) capability. However to do the same for a simple Rs-422/ 232 asynch link working at lower speeds is not really worthwhile.

Lastly - i see no particular benefit to increasing the USART bit length. Where exactly do you want to use this for ?
 
Re: USART related issues ???

i have to make a USART compatible with a proceesor having 16/32 bit data bus . thus i was thinking to increase its bit length as the bus wont be transferring less then 16 bit as a time so why not increase it . whats your view on this?? pls comment ....
 

Re: USART related issues ???

My view is simple -- if your system is a 'closed' system, i.e. it sends data only to a similar 16bit system made by you, then go ahead and do whatever you want.

BUT if you need to send/ receive data from devices NOT made by you, i.e. general Usart interface, then you have to stick with 7,8 data bits for compatibility reasons.
 

Re: USART related issues ???

could you help me understand how the USART in receiver end able to generate the baud rate of the tramitted data???
 

Re: USART related issues ???

Thats easy.

The receiver has to already "know" what speed the transmitter is working at, and generate its OWN clock to be almost exactly the same, within maybe +/- 3% or better preferably. Then using this clock, the receiver synchronises to a known START transition of incoming data, and simply sample the receive line exactly N number of times with a gap of 1 bit period. The sample is taken as close to the middle of the (supposed) receive stream's bit boundaries.

So for a typical Async 8 bit data with 1 Start bit, 1-parity, 1-stop bit, the receiver looks for a Hi-Low transition (beginning of START bit). Then waits for 1.5 bit period. Samples the input. Waits for 1.0 bit period. Samples. Keeps doing this 9 times (8 data + 1 parity).

Get it ?
 

Re: USART related issues ???

so thats software programmable the "The receiver has to already "know" what speed the transmitter is working at" ??
 

Re: USART related issues ???

thanks for the above post. another thing i wanted to ask that can USART support transmit to device and reception from another device in case of full duplex mode ??? and that too at different baud rate.....
 
Last edited:

Re: USART related issues ???

Thats a very very strange & unusual requirement.
But hey... since YOU are designing the usart, then you can always design it to have different bauds for Tx & Rx. Why not ?
It's got nothing to do with FDX or HDX or whatever mode.... you want to make such a beastie, then go right ahead.

It's the upper layer software which will have to take care of all the issues which arise, and to use such a device meaningfully.
 
Re: USART related issues ???

could you help me out in designing the baud rate generator dedicated to USART and how will it work at transmitter and raceiver ...???
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top