Are you proposing something like the following EXAMPLE?
An external free running counter. Say 8 bits. When it overflows, it triggers an interrupt. ISR keeps track of true time MSB bits.
When I detect one of my six events, what do I do? Do I read back the value of the external counter? Won't that take a large amount of time, killing the accuracy? And, how would I read them back? I currently use most of the IO pins on the Arduino to monitor the events and reset FF control latches. I guess if I give up my counter board, that frees up 3 or 4 of the pins.
So it sounds like a good idea, I just can't get the block diagram into my head!
--jim