Hi,
An Arduino that uses crystal for the microcontroller can be quite good for generating pulses to test basic TDCs. With basic stuff like port writes, NOPs and loops, delays can be set to 1 clock cycle as long as the interrupts are off during the delay. I got the delay into the milliseconds that way, although it takes care since the compiler tries to optimize out that sort of thing. The compiler can change behaviour between versions too, so it may optimize differently.
IIRC, the results were mostly under 0.5ns P-P for a basic acam TDC-GP21 board.
I'm sure that there are more elegant ways to do it, but it's very simple for the sort of short delays that are usually needed with a GPSDO. Making a tester with a PIC like the dividers that Tom has on Leapsecond.com has been on my to-do list for a long time...