Thank you very much for all the support from everybody, we are definitely getting somewhere with this!
Regarding the input polling, yes that is always an option however that leaves huge room for error, as well as it is inefficient. However, it IS one of the simplest methods, I will be making a comparison later regarding the simplicity of the methods and their efficiency.
As for Graynomad thank you very much for the information, that was exactly what I was looking for when i mentioned the example of the chip counter, i forgot it was called "timer counter"
It is late here and I need to go to sleep, but I will be back tomorrow in order to organize all the possible methods we have, If anybody gets around on finding out the register bits needed to be modified to achieve what Graynomad has mentioned that would be great, I will be doing my due diligence as well.
As for the A/D being 10 bits and not having the capacity for 4000 numbers, we can always divide the resolution by 4, It won't make much difference between 3024 and 3028 RPM. Besides, Other people visiting this topic might not have a number as high as 4000 RPM.
As for the concerns I've written about earlier regarding the frequency-to-voltage converter method that Si suggested, I've been able to find some guidelines that would help address them.
In a nut shell, since I need to go for the moment, pulse width that is generated by the timer is specified by the F/v (Frequency-to-voltage converter), the same applies for the lower/upper limits of RPM/frequency, however it's always easy to manipulate that by adding/removing magnets. But more of all that later in detail.
Keep the information coming guys/girls and thank you all again, this is a great step towards the goal of this topic, and maybe other future topics as well.