NI-9403 Unable Parallel Execute Multiple Loops

Updated Jun 23, 2023

Reported In

Hardware

  • NI-9403
  • CompactRIO Controller

Driver

  • NI CompactRIO

Issue Details

I'm using cRIO system with inserted NI-9403 c series digital module. When I create individual loop for each PWM generation and encoder measurements tasks in FPGA vi, it execute those tasks as sequence order instead of parallel. However, my application require executing tasks in parallel.

Is this expected behavior? How should I solve this issue?

Solution

The NI-9403 is behaving as designed. It uses a serial interface to talk to the module. Each individual node takes about 7us to talk to the module.

 To resolve this issue, you can refer one of the following method:

  • Use a high-speed parallel digital module (ex: 9401 or 9402). These modules have a parallel interface allowing each line to be used independently.
  • Re-write application to place all of the IO into a single grown IO node. When all the I/O is in a single node, then one ~7us serial transaction is used to communicate the I/O data for all the channels at the same time.