MATLAB: Target on Simulink Real-Time not running real time when setting Auto (PCI only) as interrupt source

HDL Coderinterrupt sourcereal timesimulinkSimulink Real-Timespeedgoat

Hi, I'm using a Speedgoat IO331-06-21. I have a simple model generated with HDL Coder with no errors. In the Configurations Parameters I have these opotions:
Execution Mode: Real-Time
Real-time interrupt source: Auto (PCI only)
I/O board generating the interrupt: Speedgoat_IO331
PCI slots (-1 autosearch): -1
The solver options are Fixed-step with the discrete (no continuous state) solver. The size of the step is 1e-4.
All these options are the recommended in the Speedgoat manuals for Simulink Real-Time applications. The problem is that the execution time of the target (Speedgoat CPU) doesn't run at real-time. It does in a way that the step I set, in this case 1e-4 (0.0001s), advances in a 1 sec (real) rate, so in 5 real secs, the execution times gets to 0.0005. And this is it at any step size I set (e.g., for step size of 0.02s, in 5 real secs, the execution is at 0.1s).
Now, if I set the Real-time interrupt source as Timer, it goes at Real-time no matter what step size I set (that's the goal). The problem is I need PCI interrupt source for the ADC triggers. Why it doesn't run as a Real-time execution?

Best Answer

I'm dumb, easy solution, just read the things