Altera_Forum
Honored Contributor
15 years agoSoft realtime with PREEMPT-RT for NIOS II
Dear all,
We have made an effort to port PREEMPT-RT on NIOS II. It is possible to use PREEMPT-RT for NIOS II (with MMU) under Linux. PREEMPT-RT is a soft realtime extension for Linux. The PREMPT-RT port for NIOS II is available here: http://uuu.enseirb.fr/~kadionik/nios2-preempt-rt/ (http://uuu.enseirb.fr/%7ekadionik/nios2-preempt-rt/) We have written a quick and dirty tutorial for using PREEMPT-RT for NIOS II under Linux: http://uuu.enseirb.fr/~kadionik/nios2-preempt-rt/#howtos (http://uuu.enseirb.fr/%7ekadionik/nios2-preempt-rt/#howtos) Be careful in your SoPC design. You must add these peripherals (and respect names): - NIOS softcore processor MMU. - 2 timers: * 64-bit Timer hrclock for PREEMPT-RT. * 32-bit Timer sys_clk_timer for Linux. PREEMPT for NIOS II (with MMU) has been tested on these boards ( http://uuu.enseirb.fr/~kadionik/nios2-preempt-rt/#testing (http://uuu.enseirb.fr/%7ekadionik/nios2-preempt-rt/#testing) )- Altera Stratix 1S10. - Altera Cyclone III 3C25. We have added the hrtimer support to the initial Linux port. With this initial PREEMPT-RT port, we have measured latency with cyclictest when we stress the board with tools like dd, hackbench, stress and ping flooding. We have until now extra max latency < 1500 µs when we stress the board with dd. We found that the Linux port for NIOS II seems to be weak in the thread creation/destruction and needs to be improved. If you make improvements to this initial port, please contact us (kadionik AT enseirb-matmeca.fr). Sincerely Yours; Patrice