You have multiple alternatives, each one of them with different trade offs.
- The conceptually simplest and most precise one, would be to use a pulse counter.
This is probably what you implemented with your micro controller. Gate a known fast clock with each cycle of the input signal and compare that count to a reference.
- Translate that same idea to the analog domain. Using a ramp as the “counter”.
Start a known slew-rate ramp with an edge of the signal and capture the value on the next edge. Compare this value to a reference. Monolithic latching comparators make this simpler than it sounds.
- Use a retriggerable monostable. With the duration being the comparison value.
A retriggerable monostable with a period of 20ms will remain triggered as long as the signal is above 50Hz, and will generate pulses when it’s below that. A second retriggerable monostable can “filter” these pulses into a continuous signal.
- use a filter slope and a peak detector (just as some cheap FM radios)
A filter slope (high-pass or low-pass will do) attenuates different frequencies differently. By detecting the amplitude of the output signal you can compare to a threshold. The higher the filter slope the higher the frequency gain.
- use a known pulse size to convert to PWM. (Frequency to voltage conversion).
By triggering a known-size pulse with each signal edge (with a monostable or just an edge detector) you convert the signal to PWM whose DC average will be proportional to the frequency. You can then use an analog comparator to detect the transition.
Given that you are talking of thousands of signals, any analog solution might be difficult to use reliably with a desired tolerance. Besides, you will need multiple components for each channel; at least 1 IC and multiple passives.
If you simply program a 14-pin microcontroller to implement just this function on several channels, you can use 1 IC for 5 channels or so. With much better precision, reliability, and repeatability. Even a 6-pin micro at 1 IC per channel would be smaller and simpler.