[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: serial ports on devboard_lx



Hi,

With ETRAX it is a bit difficult to detect that a small
number of characters has been received (and there won't
be any more characters). We have three different 
implementations that solves this in software (you can only
enable one of them at any time):

1. CONFIG_ETRAX_SERIAL_RX_TIMEOUT_TICKS. Set this to 0 for
minimum latency
2. Enable CONFIG_ETRAX_SERIAL_FAST_TIMER (requires
CONFIG_ETRAX_FAST_TIMER)
3. CONFIG_ETRAX_SERIAL_FLUSH_DMA_FAST gives minimum latency
but impacts performance severely.

Can you try if any of these improves the numbers?

Another not yet implemented approach would be to make the
driver interrupt driven.

/Mikael

-----Original Message-----
From: Amit Kucheria [mailto:akucheria@xxxxxxx.com]
Sent: Wednesday, March 19, 2003 11:16 PM
To: Johan Adolfsson; Mikael Starvik; dev-etrax
Subject: Re: serial ports on devboard_lx


Hi all,

Continuing my quest in evaluating the devboard_lx, I performed some very
simple tests over the serial and ethernet ports of the board. These are
compared to similar tests between two Pentium-class PCs.

The results are attached in the Excel sheet (had to share it with the
"suits"!). As seen from the table showing the difference between the two
results (PC-PC and PC-Axis) and from the figures, there is an inherent
delay of about 130ms on the Axis serial port. This could be due to any
of the following (in increasing order of "gut-feeling" factor):

1. CPU architecture (on-chip serial code)
2. Board architecture (improper?? interrupt handling)
3. Flaw in testing procedure.
4. Sub-optimal serial driver.

Since the Ethernet tests show decent results, I feel it *might* be the
serial driver. Before I started measuring performance of the driver I
wanted to lay it out for everybody to see if others have faced this
problem.

Also, what is the size of the FIFO buffers in the serial ports?

Thanks in advance.

Regards,
Amit

On Tue, 2003-03-18 at 02:28, Johan Adolfsson wrote:
> > Linux|Extern|Axis|                |        |   Other
> > Name |Name  |Name|     Type       |Status  | Functions
> > ------------------------------------------------------
> > ttyS0|com1  |ser0|RS-232 w/fifo   |Enabled |  -
> > ttyS1| -    |ser1|RS-232?? wo/fifo|Disabled|  -
> > ttyS2|com2  |ser2|RS-232 w/fifo   |Enabled |  Debug/Rescue
> > ttyS3| -    |ser3|RS-422          |Enabled |  -
> 
> Just to clarify:
> All serial ports in ETRAX 100LX has a fifo, in ETRAX 100
> ser1 doesn't have a fifo and there is a note about that
> left in the schematics I guess.
> 
> /Johan