Yes it is surface mount, but they are pretty straight forward to solder by hand. The way you do it is to put a blob of solder on each pad of the crystal and on each pad of the board and then just put the chip on the board (it will be suspended in mid air) and then one by one use a soldering iron to join each of the blobs together - there are only 4 to do.
You are unlikely to find a DIP IC which runs at 100MHz for the simple reason that next to nobody would by one. When you start dealing with those sorts of frequencies, everything is carefully designed around as small as possible components. DIP ICs aren't designed for high frequencies (someone may correct me on that).
@Erni - Looked promising but cannot see how I pre-scale/divide the 16.2MHz internal oscillator to get 100MHz (The binary counter it will drive tops out at 103MHz)
@Tom - That looks a good candidate. Better price, the pads break out to the sides so able to solder and reasonable PPM accuracy.
RE: thru hole high speed logic...
I have built several 600 MHz frequency counters using ECL/TTL logic as well as ECL/TTL/CMOS logic. All were thru hole. The ECL was an 11C90 divide by 10 prescaler and the first counter in either design had to be a 74S90 for it's 100 MHz + clock speed.
All the parts were thru hole and both designs worked well enough to be copied by others. When I did the PC boards I made 3 boards and had no trouble selling the unused boards to others at a local Ham Radio flea market. All in the early 90's...
@Erni - Looked promising but cannot see how I pre-scale/divide the 16.2MHz internal oscillator to get 100MHz (The binary counter it will drive tops out at 103MHz)
Why a PLL? when clocks can be had ready to go... to 150 MHz+ Why not an NCO? A numerically controlled oscillator could do the same task.
The 16 MHz clock source from the Arduino isn't as accurate as the clock oscillator chips are... By an order of magnitude at that and "Locking' the 100 MHz? clock to the Arduino isn't a possibility that has any validity, IMO. In that the device, an ATMega328P-PU isn't fast enough to deal with any measurements relative to the 100 MHz clock at any rate. It's a lot like putting a Formula One racing engine into a VW... It might go really fast but control is another issue entirely.
High Speed stuff is a world unto it's own and not really easy to manipulate with an 8 bit machine with any resolution whatsoever. Best I think to make a high speed box with Arduino capable I/O and SPI bus it to the Arduino... The Granularity is terrible because of the 6.25 to 1 ratio of clock speed. This is further compounded by the Arduino limitations of 8 MHz speed for the SPI bus.. At a 12.5 to 1 ratio or 12.5 cycles of 100 MHZ stuff happens in one clock cycle (one bit) of the SPI bus...
Your project sounds interesting but I wonder at the details that are missing... Because of IP concerns or because they haven''t been formulated yet.. ? Which
If you figure out how to DIVIDE 16MHZ into 100MHZ, please follow-up this thread with a [solved] because I'm stumped about how you would do that with an external binary counter and I'm really curious now.
The binary counter is needed to divide down the 100MHz clock to 12.5MHz so it's slow enough for the Arduino to count it. The fasted binary counter I could sensibly find maxes out at 103MHz.
Early days on the idea but the principle is to clear & start the binary counter from the arduino and then stop it when a trigger event happens (maybe a comparator interrupt). The arduino will count the 'Ripple Carry Outputs' while the counter is running and when the counting stops the arduino will add the Qx outputs to the multiplied ripple count. This I hope will give me quite an accurate time interval for a TDR
pwillard:
If you figure out how to DIVIDE 16MHZ into 100MHZ, please follow-up this thread with a [solved] because I'm stumped about how you would do that with an external binary counter and I'm really curious now.
Perhaps he was talking about a PLL (Phase Locked Loop) and really meant that he didn't know how to divide 100MHz down to match a 16MHz reference clock. Of course, you don't, you first divide 16MHz down to something that 100MHz can divide into. 16 is 2^4, 100 is 5^2x2^2 and so both are divisible down to 4MHz, so divide 16MHz by 4 to get 4MHz, then 100MHz divides by 25 (two divide by 5) to match 4MHz in the PLL.
I don't think I'd use the Arduino itself as part of the phase detector in a PLL. PLLs are a tried-and-true design, there are a lot of stable designs out there and chips dedicated to them. Phase noise can be a problem, but there are ways to solve it. What is the 100MHz signal for?
I haven't built anything digital that accurate in 30 years... But I do know that counters are available that are good to several GHz.. Prescalers for PLL's and I do know that accurate time can be generated my mention of an NCO was one... The AD9851 is good to 125 MHz... I think.. 180 MHz actually but I can't attach the data sheet...
A most agile time base because the phase can be adjusted in 12.5 deg increments...
Remember, not every problem is a nail for the Arduino hammer.
is one of the Very Best comments on Arduino use in general.
A crystal is one thing, A Stable and accurate oscillator over 50 Deg C is completely another. Oscillators ared easy to make..
Accurate ones are as difficult as the required accuracy. Surplus ones are relatively rare... Note the lack of 5V parts.. Which are more likely to be surplus than their 3V3 counterparts. The OP needs an accurate 10 Ns increment oscillator to be used as a ruler... for a Time Domain Reflectometer... In a cable, time is distance and the limit is somewhat less than the inverse of the speed of light. An NCO can shift frequency in 100 nS and do so with 12.5 degree increments.
Thanks Doc. I did not glean that information from the OPs original post or sample XO. I thought he may of wanted something cheaper than that (and of course you usually get what you pay for).
If you re-read my first response you will see that I didn't either.. there was no reason to use a 100 MHz clock with a 16 MHz control... Until the OP added the TDR call Then I knew exactly what he was after and the reason for my suggestion about the AD9851... 5.5 nS @ 180 MHz and with an NCO you specify where the marker is.. I just wonder how he plans to profile a cable with a discontinuity that is 'normal'... Make a great lineman's tool for finding open/shorted cables though.
This has all moved on a bit while I slept. Thanks for all the ideas & help, as this project is still in the dream stage I have not finalized on specific components & methods yet but on Docedison comments I did search further and found a faster device (74VHC161 @ 183MHz) but as it's surface mount this means a custom PCB that I was hoping to avoid for now but this may be the way to go in the end.
The thing would be used to find breaks in camera Triax cables.