Dear Community Members,
I hope you are all well.
We are facing some problems with timers for CortexM4 on IMX8QM. Details are as follows.
Scenario:
We are using LPIT and TPM timers, both in free-running mode. One Timer (TPM) is configured to trigger an interrupt at a fixed interval, which is handled by the RTOS. Other timer (LPIT) is used to take measurements. One before the configuration of the TPM and one after the completion of the TPM ISR.
The difference between the expected time and the actual measurement should be 3-4% due to ISR overhead, but with IMX8QM the difference is in the range of 10-15%.
Summary of configurations and steps verified so far:
Questions:
Now the pending point is if the CPU is taking more time to execute the interrupt path. Our expectation with the difference in frequencies of CPU vs timers (264MHz vs 24Mhz) is that the tolerance levels we configured should be sufficient as tested with different derivatives of CortexM4 and with the same code base. So interrupt latencies are already considered for the tolerance levels.
Example Difference of measurements:
As a reference, I am attaching along the excel sheet containing the time difference with another CorteM4 derivative(CPU freq 80Mhz, Timer freq 48Mhz) and IMX8QM. The other derivative is also implementing LPIT timer which is present on IMX8QM.
Please let me know if some other information is required from my end.
Regards,
Waleed Abbasi
Hello,
Unfortunately, we could not provide the proper support until the whole documentation of the i.MX8QM is officially released. You could go with your sales, they could help you with your problem. I apologize for the inconvenience this may give you.
Best regards,
Diego.