From RTwiki
Jump to: navigation, search

Vortex86SX Chip

Hello World!

I have just tested the RT Patch with Vortex86SX chip. The square wave example is really great as it provided me with great intuition into the effectiveness of this patch. However, the results of using clock_nanosleep() are CATASTROPHIC on this chip! The maximum frequency achieved with this chip was 50Hz!!!! This means a minimum achievable sleep time of 10 ms! This is not real-time in any sense!

What I did exactly was the following:

  • Downloaded the Linux kernel from
  • Downloaded the RT Patch patch-2.6.18-rt7 and applied it
  • Downloaded the patch-2.6.18-DMP.gz provided by the manufacturer of the Vortex86SX chip
  • Configured the kernel using the configuration file provided by the manufacturer of the Vortex86SX chip
  • Compiled (make bzImage)
  • Prepared a minimal root filesystem using busybox and glibc
  • Deployed the whole image on the board with the swave program
  • Booted the image on the board (kernel+initramfs)
  • Run the swave program and measured with the oscilloscope

The result of

  1. swave 90
  2. swave 90 10000
  3. swave 90 10000000

are all a square wave with 50 Hz frequency!

However, the result of

  1. swave 90 20000000

is a correct square wave with 25 Hz frequency

So, I suppose the maximum achievable frequency on this board with clock_nanosleep() is 50 Hz. BUT, does this make any snese???? Can anybody help me, please!

==> (Self-note) I found the problem, the timer frequency was set to 100Hz in the default configuration file on the website of DM&P, the manufacturer of the Vortex86SX chip! Just.... NO COMMENT!

I gonna do further tests on this board. I just want to ask how to contribute the results on this article?

Personal tools