LS1021A ethernet and video performance

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

LS1021A ethernet and video performance

674 Views
amin_altabich
Contributor II

Hi,

I have 2 questions regarding LS1021A. We are testing our firmware on LS1021A TWR evaluation board and we encountered some issues with performance:

1. Pinging LS1021A (Realtek RS8211) board gives much slower response time compared to the LS1012A evaluation board. The difference is large, 40μs on 1012 vs upwards of 120μs on 1021 (over 400μs when tested with Ubuntu). Our first guess is that the RS8211 FS driver on LS1021A needs updating. Where can we find such a driver? We would also appreciate any other suggestions explaining this ping time difference.

2. We loaded gstreamer1.0-RTSP-server to stream h264 coded video (h264parse and rtph264pay), but we can't stream high bitstream video in the current configuration. Setting the bitrate and fps to higher settings is possible, but the outgoing stream is still low quality. The software environment is ls1021a QorIQ Linux SDK v2.0.

If anyone has some experience with using GStreamer on the LS platform, we would appreciate information on performance limitations in this configuration. Is a higher version of GStreamer available and would it possibly rise the bottleneck? If so, where can a higher version be found, since the 1.4.5 is a default?

Thanks

Labels (1)
0 Kudos
2 Replies

516 Views
bpe
NXP Employee
NXP Employee

Please find my comments inline below:

1. Pinging LS1021A (Realtek RS8211) board gives much slower response time compared to the LS1012A evaluation board. The difference is large, 40μs on 1012 vs upwards of 120μs on 1021 (over 400μs when tested with Ubuntu). Our first guess is that the RS8211 FS driver on LS1021A needs updating. Where can we find such a driver? We would also appreciate any other suggestions explaining this ping time difference.

[Platon] My LSDK 19.06 Linux on TWR-LS1021A board shows between  
120uS and 130uS round trip when pinging itself which doesn't
involve any actual transmission, so what you are observing is
normal, that is how  ping tool in combination with the kernel IP
stack works. My remark in this regard is that ping is not a proper
tool for measuring network performance. If you are concerned with
your system network performance: (a) do one of tests described
here; (b) Open a Support Case to discuss your results.

Regarding the PHY, IEEE802.3 specifies a very tight delay budget for
a PHY of any type. Any properly working PHY, if only it is able
to synchronize with the incoming stream, should not introduce
latency over the specification.  Problems with PHY should be quite
visible when pinging because they result in corrupt data and subsequent
bad CRC packet drop, ping normally prints sent/received packet counts.

For Realtek drivers, try drivers/net/phy/realtek.c If this driver fails
to detect or initialize your PHY, consult at the PHY manufacturer.

2. We loaded gstreamer1.0-RTSP-server to stream h264 coded video
(h264parse and rtph264pay), but we can't stream high bitstream
video in the current configuration. Setting the bitrate and fps to
higher settings is possible, but the outgoing stream is still low
quality. The software environment is ls1021a QorIQ Linux SDK v2.0.

[Platon] Your chip does not have any dedicated accelerators for video
encoding or streaming a video to network. The maximum you can offload is
egress UDP checksum. The suggestion here is to monitor the processor core load

with generic Linux tools like 'top'. If your application consumes all CPU bandwidth,

the only suggestion  is, profile the code to identify the bottleneck.  

Is a higher version of GStreamer available and would it possibly
rise the bottleneck? If so, where can a higher version be found,
since the 1.4.5 is a default?

[Platon] NXP LSDK supports Ubuntu userland. Check the version available
from Ubuntu repositories.

516 Views
amin_altabich
Contributor II

Thank you for suggestions. We will perform some additional tests to evaluate network performance.

Regarding the video stream, we are not using LS1021A for any data processing or encoding except conversion from USB input to ETH output. The bitrate shouldn't exceed 50-60% of this chip's capabilities. Would you have any suggestions regarding the GStreamer configuration for LS1021A to reach these higher bitrates?

0 Kudos