Maximum peripheral clock speed on i.MX7

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Maximum peripheral clock speed on i.MX7

911 Views
tcr000
Contributor I

We are using the Toradex i.MX7 and would like to make use of the counter function on the GPT in order to count external pulses with the M4 core (FreeRTOS).  The pulses are 9ns wide and are asynchronous to any i.MX7 clock. The maximum pulse rate is 35MHz.  From the i.MX7 datasheet, the maximum external clock is 1/4 of the peripheral clock. I believe the peripheral clock is running at 24MHz, so this would not be fast enough. Can the peripheral clock speed be increased without breaking either Linux or FreeRTOS? If so, what is the maximum peripheral clock speed and what needs to be changed?

Thanks,

Tom

Labels (2)
0 Kudos
3 Replies

511 Views
CarlosCasillas
NXP Employee
NXP Employee

Hi Tom,

If you refer to Table 5-11 of the i.MX7D Reference Manual, you could verify that the clock source option for GPTs include the SYS_PLL_PFD0. Then, if you refer to section 5.1.3.4 “PLL and PFD” of the same document, it is mentioned that PFD0, PFD1 and PFD2 will be fixed at 392MHz, 332MHz and 270MHz, so, this seems to be suitable for your requirements.

Regarding Linux/FreeRTOS functionality, it will be required to verify the hardware resources used by the OS itself, to avoid altering the tic timers or any other time-based configurations.


Hope this will be useful for you.
Best regards!
/Carlos
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos

511 Views
tcr000
Contributor I

What I really want to know is what is the minimum pulse width that can be used on the external clock input of the GPT or Flexitimer.

0 Kudos

511 Views
Noel_V
Contributor III

Hi  Tom, 

At this time I'm evaluating the IMX7d ( on a SABRE dev board) , and facing same question.

A Cortex-M4  'IRQ-Test' APP tells me that with STANDARD configurations ( as in the demos)... shows me that this takes up to 400nS to read ( or write)  an IO pin. 

For example an IRQ that just toggles an IO pin high ( enter IRQ) .. and back to low ( just before leave IRQ) .. shows me that it takes approximately   800ns !  

( I would like to read a BUNCH of INPUT-pins on the CORTEX.. under timer IRQ... but it seems that IO seems to be very slow )

TOM >>"Can the peripheral clock speed be increased without breaking either Linux or FreeRTOS? If so, what is the maximum peripheral clock speed and what needs to be changed?"

Any info/ solution ?  and willing to share ?

Thank you.

0 Kudos