I have laser sensor. I want to detect pulse signals below 10ns with MCU. What criteria are important for the MCU to detect this signal? e.g Instruction cycle speed, Clock speed or GPIO speed... Which one? or what is important?
Many thanks in advance.
At 10ns you'll need to use an interrupt signal. Depending on the MCU's interrupt input characteristics and the signal integrity and characteristics of the signal line, you may need to stretch the pulse or otherwise provide some external signal conditioning - unless the sensor does that for you.
An STM32F103 for example has a minimum external interrupt pulse width of 10ns, so your sensor pulse might work, but would be marginal. The signal path may degrade such a fast pulse - the signal path would have to be good for about 100MHz to carry pulses that narrow - at that speed, signal path resistance and capacitance behaves like a low-pass filter, slowing the signal rise/fall tile and possibly preventing the pulse from reaching the trigger level. Lower end MCUs might struggle.
A fast retriggerable monostable such as a 74VHC123A will stretch a minimum 5ns pulse with an output pulse width controlled by the external R and C components. Pulse widths as short as 150ns or as long as 1ms are easily achieved. At 1ms you could in many cases software poll it, though I would not recommend it.
Even if your MCU can handles 10ns interrupt pulses, stretching the pulse close to the sensor will allow greater distance and lower signal path quality between the sensor and the MCU.