Hello;
That is happening because you are doing Software timed operation, and since Windows manages all tasks that runs on the machine at any given time, your VI might take different times to execute, and that might be enough for you to miss some pulses.
The best way to do that is by using a 660x board, and have three counters doing the job. The firts counter can be configured as the first pulse train generator, the second counter can be used to generate a pulse that will trigger the third counter of. That pulse will be generated when the delay of 90 degrees is reached. So, the second counter will count events and will be triggered of by the pulse train generated by the first counter.
The third counter is configured as triggered pulse train generator, and t
he output pulse of the second counter is used as the trigger pulse for the third counter.
If you don't use that approach, you won't be able to reach fast speeds and might also miss some pulses, due to the Software timed approach.
Hope this helps.
Filipe A.
Applicaions Engineer
National Instruments