Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
On Sun, Dec 2, 2012 at 3:16 PM, Magnus Danielson mag...@rubidium.dyndns.org wrote: Erich, On 12/02/2012 08:54 PM, Erich Heine wrote: Jonathan, My research group has had some good experiences using products from Endace ( http://www.endace.com/) for network timing measurement at the ethernet level. I don't have a pointer immediately to the work, but if there is interest can ask tomorrow at work. The gist of it though was to understand precise timing characteristics of network switches for better simulation. Examining the time in switch for various packets at the microsecond level was needed to understand various delay curves for different network loads, with an ultimate goal of proper statistical modeling reflecting reality as close as possible. This is a bold challenge, it's a difficult task (clear speak: there is a reason for this to be a research field, industry never *really* got it under control). It is a challenge. I'll have to re evaluate my understanding of the timing characteristics of the card in light of my new and growing knowledge on timing. However, this is what I understand now: I'm sure the timing isn't perfect, but we mitigated some of the potential clock issues by doing many runs of tests. Further a single endace DAG card has 2 or 4 network ports on it, so timing can be measured across a network to the same card with the same reference clock which helps simplify error source. (The card has a feature which allows time stamping packets on the card from that reference clock). Also there is a mechanism by which the endace cards can be connected directly to each other to synchronize their clocks to each other, so packet timings across cards can well measured. I wasn't very involved in the details of the project I'm describing, so I can't speak to how well any one of those functionalities of the cards performed, nor how much error we saw or tolerated, I'll ask those folks later today (as I happen to have a meeting with them about other stuff anyway :)) One thing I can speak to though, is that in simulation of the type they are doing - the general granularity of the simulation results are on the order of 10^-3, so understanding the switches at 10^-6 isn't used directly in the simulation, but rather to build probability distribution functions that capture the behavior of the switches well enough to see cumulative results comparable to observed networking conditions (e.g. the result of N switches handling serializing events under certain loads will get packet trains like $X and other loads like $Y and so on). One thing the PI on that project mentioned was the shape of those functions being correct is the highest priority. I understand this to mean that the errors average out (not an actual mean, but through some statistics I don't understand all the way yet they stop being significant compared to other issues). Perhaps I'll need to point those researchers at this list to find out ways to better get the timings they want :) I personally have also used endace products to measure packet timings for research, but I didn't need so much precision for that work - however I can say they have a good API and decent tech support for interacting with their cards and products. Is there native support with Linux kernels? It would be very nice to have the support using SO_TIMESTAMP and friends. It's been a couple of years since I got deep on this, so I don't remember details. I do know all the work we've done with the cards was on Linux, and it worked nicely - I had no issues that were OS related. One thing about the paradigm for the DAG cards is they are not in the standard networking stack. They expose themselves from the kernel in a different way via an API (which Endace provides the source for). To do IP networking with them, you need to provided your own network stack in userland - however this is out of the scope of the companies goal. They are really about providing high speed layer2 access. I believe their primary use cases are research like we did, and extremely low-latency communications between machines in clusters (targeting high frequency traders and the like). Cheers, Magnus __**_ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/** mailman/listinfo/time-nutshttps://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
I'm an applications engineer for a company that makes Ethernet controllers and PHYs. Some of our customers use crystals (more often oscillators) that they selected based on price rather than performance. when i'm debugging a customer issue replacing the clock source with a synthesizer is a good troubleshooting aid. I's also useful when trying to prove that a low quality clock source (or clock distribution network) in a link partner is producing a poor (usually jittery) output that makes it hard for our parts to achieve link. On Fri, Nov 30, 2012 at 5:06 PM, Jim Welch welc...@comcast.net wrote: OK, I'll bite. Why? Jim I've never done it using to the RTC crystal, but I do it quite frequently in my Day Job to Ethernet controllers on those same pc mother boards. -Eric On Fri, Nov 30, 2012 at 4:10 PM, Sarah White kuze...@gmail.com wrote: On 11/30/2012 6:30 PM, Eric Garner wrote: the actual RTC on modern (Intel based) PC's is driven from a standard 32,768 Hz crystal attached to the PCH. some of them are in incredibly small packages now instead of the old tuning fork-in-a-can ones. peeling off the load caps and crystal from the board would allow you plenty of spaces to tack down a lead from an external synthesizer. Yeah, the one on the (Soekis) example was pretty small. So far none of of the replies have indicated that anyone on here has experience beyond an embedded system. Mostly I started this thread because there have been a few with people discussing implementing NTP on embedded microcontrollers, arduino, etc. and I was thinking of doing it from the other side (turning a nice-ish server into a rock-solid timekeeper) Thanks so far everyone. Really impressed that I already managed to get 4x replies so quickly :) ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. -- --Eric _ Eric Garner ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. -- --Eric _ Eric Garner ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
My research group has had some good experiences using products from Endace ( http://www.endace.com/) for network timing measurement at the ethernet level. I don't have a pointer immediately to the work, but if there is interest can ask tomorrow at work. The gist of it though was to understand Hi Erich, You are welcome to post your experiences with synchronization or network timing measurements on the list or to solicit methods to time packets to the microsecond or nanosecond. The rest of your agenda is straying far off-topic and you need to find or create a forum elsewhere. It appears you have misread the focus of this group. Please re-read the intro page (leapsecond.com/time-nuts.htm) or the archives (www.febo.com/pipermail/time-nuts/). If you have questions contact me directly. Thanks, /tvb ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
Hi Maybe I'm just shopping in the right places. I have yet to build up a desktop machine that does *not* have at least one COM port on the motherboard. That's been true all the way from simple little Atom based ITX boards right through monster boards with all sorts of crazy stuff on them. Yes, it's not out the back, but that's very easy to take care of if you need the port. Laptops are a bit different. They seem to die of some sort of display issue long before a desktop. I don't use them in test setups. Bob On Dec 1, 2012, at 11:37 PM, David davidwh...@gmail.com wrote: On Sat, 01 Dec 2012 19:10:54 -0800, Hal Murray hmur...@megapathdsl.net wrote: davidwh...@gmail.com said: One of my favorite tricks back when the ISA bus was still available was to use a custom expansion board I built and an oscilloscope to measure the interrupt latency. You can do the same trick without special hardware. Use the printer port. Of course, that assumes your PC/Laptop still has a printer port. I almost always end up installing a PCI/PCIe serial and parallel expansion card into my systems even now. I have a laptop with a printer port on the thing Dell calls a MediaBase. It's an extender/fattener that includes a CD drive with connectors for printer port and serial port. It plugs into a big connector on the bottom of the laptop. Many laptops plug into docking stations for use at a desk. Sometimes/often they have printer ports and/or serial ports. You could probably do it with just a serial port by flapping one of the output modem control signals. I could not always depend on having access to built in serial or parallel ports. These days of course both are pretty much deprecated in favor of USB which is useless for this type of work. If you don't have a printer port or serial port, how are you getting the interrupt into your box? Since this was back in the ISA days, I had access to the whole ISA bus including the interrupts. I never built a version for PCI but I did consider it. The card I built had a pair of 8254 timers, hexadecimal display, keypad, a bunch of auxiliary I/O, and all of the decoding to use it. I usually end up building something similar for microcontroller projects that operates via SPI although serial to a PC running a terminal program is often better. Many years ago, I helped a friend with this sort of thing. We were working for DEC back in the days before Intel had captured everything and workstations still needed lots of chips and chips had big pins so you could get a scope probe on them. My part was to connect scope probes to the interrupt line from the ethernet chip and the chip select for the MAC address ROM. He patched the driver's interrupt routine to read the ROM. I have also done that on occasion and sometimes still do. Usually I solder a little grab point for the probe into place. Sometimes I will just add a resistor or transistor buffer depending on impedance issues and an RG-316 pigtail. The funny part is that back then, I was using one of the early Tektronix series TDS oscilloscopes. Now I do the same thing with an older Tektronix 2230, 2232, or 2440 series oscilloscope and I have a word recognizer for my 2440 which works surprisingly well. At some point, I need to pick up a DSO that supports variable and infinite persistence. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
On Sun, 2 Dec 2012 08:43:39 -0500, Bob Camp li...@rtty.us wrote: Hi Maybe I'm just shopping in the right places. I have yet to build up a desktop machine that does *not* have at least one COM port on the motherboard. That's been true all the way from simple little Atom based ITX boards right through monster boards with all sorts of crazy stuff on them. Yes, it's not out the back, but that's very easy to take care of if you need the port. Laptops are a bit different. They seem to die of some sort of display issue long before a desktop. I don't use them in test setups. Bob When I built my most recent workstation a couple years ago, I specifically looked for motherboards that included a COM port and thought I had found one but when it arrived, I discovered that they left off everything except the UART which was integrated. Instead of trying to figure out what level translator they used, I just bought a PCI serial card instead. None of the USB serial dongles I tried worked well. I have stopped using laptops as well. They are too fragile even when just sitting in one place. I have seen a lot of old used working ones for sale at HAM swap meets though that are inexpensive. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
Hi Strange - I must indeed have been lucky on the last dozen or so systems I built up. Bob On Dec 2, 2012, at 1:14 PM, David davidwh...@gmail.com wrote: On Sun, 2 Dec 2012 08:43:39 -0500, Bob Camp li...@rtty.us wrote: Hi Maybe I'm just shopping in the right places. I have yet to build up a desktop machine that does *not* have at least one COM port on the motherboard. That's been true all the way from simple little Atom based ITX boards right through monster boards with all sorts of crazy stuff on them. Yes, it's not out the back, but that's very easy to take care of if you need the port. Laptops are a bit different. They seem to die of some sort of display issue long before a desktop. I don't use them in test setups. Bob When I built my most recent workstation a couple years ago, I specifically looked for motherboards that included a COM port and thought I had found one but when it arrived, I discovered that they left off everything except the UART which was integrated. Instead of trying to figure out what level translator they used, I just bought a PCI serial card instead. None of the USB serial dongles I tried worked well. I have stopped using laptops as well. They are too fragile even when just sitting in one place. I have seen a lot of old used working ones for sale at HAM swap meets though that are inexpensive. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
Jonathan, My research group has had some good experiences using products from Endace ( http://www.endace.com/) for network timing measurement at the ethernet level. I don't have a pointer immediately to the work, but if there is interest can ask tomorrow at work. The gist of it though was to understand precise timing characteristics of network switches for better simulation. Examining the time in switch for various packets at the microsecond level was needed to understand various delay curves for different network loads, with an ultimate goal of proper statistical modeling reflecting reality as close as possible. I personally have also used endace products to measure packet timings for research, but I didn't need so much precision for that work - however I can say they have a good API and decent tech support for interacting with their cards and products. HTH. Regards, Erich On Sat, Dec 1, 2012 at 2:35 PM, Jonatan Walck jwa...@netnod.se wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Eric, your experiences here is of great interest to me too, I've been exploring external clocking of Ethernet controllers as of late but have not dived into it yet. I'm more interested in your how, but of course also in your why. // jwalck PS. Hey everyone, new to this list since two days joining after attending my first PTTI. Working with time and frequency distribution in Sweden and with time getting deeper into the field both on and off work. On 12/01/2012 01:15 AM, Eric Garner wrote: I've never done it using to the RTC crystal, but I do it quite frequently in my Day Job to Ethernet controllers on those same pc mother boards. -Eric On Fri, Nov 30, 2012 at 4:10 PM, Sarah White kuze...@gmail.com wrote: On 11/30/2012 6:30 PM, Eric Garner wrote: the actual RTC on modern (Intel based) PC's is driven from a standard 32,768 Hz crystal attached to the PCH. some of them are in incredibly small packages now instead of the old tuning fork-in-a-can ones. peeling off the load caps and crystal from the board would allow you plenty of spaces to tack down a lead from an external synthesizer. Yeah, the one on the (Soekis) example was pretty small. So far none of of the replies have indicated that anyone on here has experience beyond an embedded system. Mostly I started this thread because there have been a few with people discussing implementing NTP on embedded microcontrollers, arduino, etc. and I was thinking of doing it from the other side (turning a nice-ish server into a rock-solid timekeeper) Thanks so far everyone. Really impressed that I already managed to get 4x replies so quickly :) -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.12 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://www.enigmail.net/ iQIcBAEBAgAGBQJQumoZAAoJEFwg9i9GDX+nF10P/jRTK9oCZrPz9e4++FoO9NvN +THbxwsGpGq8c1OdDDo+1ewbzmRi9SehVPngzq0Lc6rfpEwYCIqnfiM9kWokhJDW vgRwc4Re/ensYLDpGG+fMxqkKucpNS2UfsqND0xyCK4BGxDMqWbfwyukKGlKAGn+ oFoPX0+QGkgTq8tLs6HxhuSyi1Y1vc3reuZZpFDLqI+7OwwGlTFsTlSzcz2sF9/A 6TV1hcYLOnxwfNPKbSURqz5s2/3rCZf3KnlcTzxr3LLWNKJYcrW795WHpvMIYbC9 me+Oq+24EyJ69Io1ruClxMdi6vU9UC8bU8wy2J27ume4oD2E5JWPr4uY6xXlvYx6 ddkRb+p8K+NwyswNXNa3q+XFwAgsCImOusq9eOL7jc0J7M/NIrJj9GpCgn91/VGd /ZUpH7nZA7I7Um3uMgXe6zsoKHToyzYu5CtfRkS8INPS/vWfo0X+Ysos1FlfFhQS kFq306FgBpX5DRhD1e0uKSqMPuGM+Pv5uqB7DeuuY0qJS1H1RvCBatnvt1KAiVSA vh0z2s3I3Z1FnZE0/LeDSXZS3lDPfT39CdDpKqiEN4P2ifBzJI78v/3IUSykSKor aC6XHVI2eRbXjop59wcWT2gGt3a1u1uRCSv2MaQ0To8kb/+QMlxUqupqNToYHMFt UsPHLL5m4bg5+l6669VR =gybO -END PGP SIGNATURE- ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
Erich, On 12/02/2012 08:54 PM, Erich Heine wrote: Jonathan, My research group has had some good experiences using products from Endace ( http://www.endace.com/) for network timing measurement at the ethernet level. I don't have a pointer immediately to the work, but if there is interest can ask tomorrow at work. The gist of it though was to understand precise timing characteristics of network switches for better simulation. Examining the time in switch for various packets at the microsecond level was needed to understand various delay curves for different network loads, with an ultimate goal of proper statistical modeling reflecting reality as close as possible. This is a bold challenge, it's a difficult task (clear speak: there is a reason for this to be a research field, industry never *really* got it under control). I personally have also used endace products to measure packet timings for research, but I didn't need so much precision for that work - however I can say they have a good API and decent tech support for interacting with their cards and products. Is there native support with Linux kernels? It would be very nice to have the support using SO_TIMESTAMP and friends. Cheers, Magnus ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
Date: Sun, 02 Dec 2012 22:16:52 +0100 From: Magnus Danielson mag...@rubidium.dyndns.org On 12/02/2012 08:54 PM, Erich Heine wrote: Examining the time in switch for various packets at the microsecond level was needed to understand various delay curves for different network loads, with an ultimate goal of proper statistical modeling reflecting reality as close as possible. This is a bold challenge, it's a difficult task (clear speak: there is a reason for this to be a research field, industry never *really* got it under control). I agree with Magus, but measuring in-host (or in-switch) timing is still possible. The research team I am with presented a paper at ISPCS this year on the measuring of in-host latencies and looking at where packet timestamps take place, such as SO_TIMESTAMP as Magnus mentions below. I will point you to a link to our docs, email me off the list if you do not have access to the IEEE online journals. The paper is mainly focused on BSD systems; however, BSD is not unheard of in the switch world so maybe it can give you a few tricks for what you want to accomplish regarding your in-switch timing. Paper: Probing the Latencies of Software Timestamping http://www.synclab.org/docs/ I personally have also used endace products to measure packet timings for research, but I didn't need so much precision for that work - however I can say they have a good API and decent tech support for interacting with their cards and products. Is there native support with Linux kernels? It would be very nice to have the support using SO_TIMESTAMP and friends. Our team also uses Endace. But we only host the Endcace DAG cards on our BSD boxes. -Matt ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
Matt, On 12/02/2012 11:51 PM, Matt Davis wrote: Date: Sun, 02 Dec 2012 22:16:52 +0100 From: Magnus Danielsonmag...@rubidium.dyndns.org On 12/02/2012 08:54 PM, Erich Heine wrote: Examining the time in switch for various packets at the microsecond level was needed to understand various delay curves for different network loads, with an ultimate goal of proper statistical modeling reflecting reality as close as possible. This is a bold challenge, it's a difficult task (clear speak: there is a reason for this to be a research field, industry never *really* got it under control). I agree with Magus, but measuring in-host (or in-switch) timing is still possible. Indeed. It is possible to measure, but difficult to fully model and characterize. A friend of me did his PhD on the fractal behaviour of network trafic. Then, even he didn't nailed it in a good way. The research team I am with presented a paper at ISPCS this year on the measuring of in-host latencies and looking at where packet timestamps take place, such as SO_TIMESTAMP as Magnus mentions below. I will point you to a link to our docs, email me off the list if you do not have access to the IEEE online journals. The paper is mainly focused on BSD systems; however, BSD is not unheard of in the switch world so maybe it can give you a few tricks for what you want to accomplish regarding your in-switch timing. Paper: Probing the Latencies of Software Timestamping http://www.synclab.org/docs/ People should dive into that link, there is a few goodies there it seems from just pulling one paper. Thanks for providing the pointer, Matt! Cheers, Magnus ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
In message ecc7f999-673e-4f70-95ef-1d888761a...@rtty.us, Bob Camp writes: It's most commonly done with things like a Soekris 45xx series board. You don't need anything very exotic for the frequency conversion. The jitter in the PC is way worse than what the external chips will be creating. Actually that is _not_ true anymore. Modern CPU's are very finicky about clock jitter because the PLL the frequency up to GHz range. Some of the clock-chips used now discipline a low-UHF range oscillator to the XTAL to cope with this, but most just PLL the frequency up there. The real question is - what is the magic frequency on the particular mother board you are going to modify? Once upon a time they all were a pretty predictable 14.xxx MHz. These days, who knows what's going in where It's pretty much still 14.318 Mhz pretty universally. -- Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 p...@freebsd.org | TCP/IP since RFC 956 FreeBSD committer | BSD since 4.3-tahoe Never attribute to malice what can adequately be explained by incompetence. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Eric, your experiences here is of great interest to me too, I've been exploring external clocking of Ethernet controllers as of late but have not dived into it yet. I'm more interested in your how, but of course also in your why. // jwalck PS. Hey everyone, new to this list since two days joining after attending my first PTTI. Working with time and frequency distribution in Sweden and with time getting deeper into the field both on and off work. On 12/01/2012 01:15 AM, Eric Garner wrote: I've never done it using to the RTC crystal, but I do it quite frequently in my Day Job to Ethernet controllers on those same pc mother boards. -Eric On Fri, Nov 30, 2012 at 4:10 PM, Sarah White kuze...@gmail.com wrote: On 11/30/2012 6:30 PM, Eric Garner wrote: the actual RTC on modern (Intel based) PC's is driven from a standard 32,768 Hz crystal attached to the PCH. some of them are in incredibly small packages now instead of the old tuning fork-in-a-can ones. peeling off the load caps and crystal from the board would allow you plenty of spaces to tack down a lead from an external synthesizer. Yeah, the one on the (Soekis) example was pretty small. So far none of of the replies have indicated that anyone on here has experience beyond an embedded system. Mostly I started this thread because there have been a few with people discussing implementing NTP on embedded microcontrollers, arduino, etc. and I was thinking of doing it from the other side (turning a nice-ish server into a rock-solid timekeeper) Thanks so far everyone. Really impressed that I already managed to get 4x replies so quickly :) -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.12 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://www.enigmail.net/ iQIcBAEBAgAGBQJQumoZAAoJEFwg9i9GDX+nF10P/jRTK9oCZrPz9e4++FoO9NvN +THbxwsGpGq8c1OdDDo+1ewbzmRi9SehVPngzq0Lc6rfpEwYCIqnfiM9kWokhJDW vgRwc4Re/ensYLDpGG+fMxqkKucpNS2UfsqND0xyCK4BGxDMqWbfwyukKGlKAGn+ oFoPX0+QGkgTq8tLs6HxhuSyi1Y1vc3reuZZpFDLqI+7OwwGlTFsTlSzcz2sF9/A 6TV1hcYLOnxwfNPKbSURqz5s2/3rCZf3KnlcTzxr3LLWNKJYcrW795WHpvMIYbC9 me+Oq+24EyJ69Io1ruClxMdi6vU9UC8bU8wy2J27ume4oD2E5JWPr4uY6xXlvYx6 ddkRb+p8K+NwyswNXNa3q+XFwAgsCImOusq9eOL7jc0J7M/NIrJj9GpCgn91/VGd /ZUpH7nZA7I7Um3uMgXe6zsoKHToyzYu5CtfRkS8INPS/vWfo0X+Ysos1FlfFhQS kFq306FgBpX5DRhD1e0uKSqMPuGM+Pv5uqB7DeuuY0qJS1H1RvCBatnvt1KAiVSA vh0z2s3I3Z1FnZE0/LeDSXZS3lDPfT39CdDpKqiEN4P2ifBzJI78v/3IUSykSKor aC6XHVI2eRbXjop59wcWT2gGt3a1u1uRCSv2MaQ0To8kb/+QMlxUqupqNToYHMFt UsPHLL5m4bg5+l6669VR =gybO -END PGP SIGNATURE- ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
Originally the IBM PC design used an 8253 or 8254 PIT, programmable interval timer, located at ports 40h to 43h with Timer 0 clocked at 1.193182 MHz (1/3rd of 3.579545 MHz or 1/12th of 14.318 MHz) and set to divide by 65536 which generated about an 18.2 Hz interrupt rate on IRQ 0. Timer 1 generated the since deprecated DRAM refresh clock and Timer 2 goes to the PC speaker. Some of the early IBM PC non-compatible hardware implemented a fixed divisor for Timer 0 which caused problems for software expecting to be able to reprogram the divider. I do not know how they generate the 1.193182 MHz PIT clock now. Early on they just used an additional oscillator, usually 14.318 MHz, which was separate from the CPU clock. I lost interest and started doing all of my precision timer functions in external hardware when Intel's SMM, system management mode, started adding unacceptable jitter to interrupt service routines. Now of course a variety of higher precision timers are included. Either the 1.193182 MHz based PIT via interrupt 0 or the 32.768 kHz based RTC via interrupt 8 can be used to calibrate the CPU timers when the CPU clock is unknown. There was a hoax at about the time that the 12 MHz 286 microprocessors became available where a couple of guys were wiring a small capacitor across the 32.768 kHz clock crystal causing the RTC to run slow which caused the CPU clock speed measured via software to appear many times higher. Conveniently the wall clock time as measured by the now slowed RTC showed the same thing. I remember an interview the guys gave where they declined to describe their improvements to the 286 but said the process amounted to collecting groups of instructions and ramming them through as fast as possible and that it might be feasible with a 386 as well. On Sat, 1 Dec 2012 12:34:43 -0700, Mark Allwright mark.allwri...@shaw.ca wrote: You need to replace the clock that drives the CPU; in some designs this was the 14.318 MHz oscillator that would be multiplied up to the required frequency. You could also replace the 14.318 MHz oscillator with a TCXO or better; make your own simple OCXO around a 14.318 MHz oscillator or lock a 14.318 MHz oscillator to a high stability reference oscillator (Rb, GPSDO etc.). You would need to do some circuit surgery on the PC motherboard for this type of stuff. Some links: http://www.moshier.net/#Rubid_pc Lock 14.318 MHz to Rb http://www.wraith.sf.ca.us/ntp/#ocxo-osc Simple oven http://www.techlib.com/electronics/ovenckts.htm More simple oven circuits http://www.febo.com/pages/soekris/index.html John's note for the Soekris and clock hacking Regards. Mark. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
On 12/02/2012 01:29 AM, David wrote: Originally the IBM PC design used an 8253 or 8254 PIT, programmable interval timer, located at ports 40h to 43h with Timer 0 clocked at 1.193182 MHz (1/3rd of 3.579545 MHz or 1/12th of 14.318 MHz) and set to divide by 65536 which generated about an 18.2 Hz interrupt rate on IRQ 0. Timer 1 generated the since deprecated DRAM refresh clock and Timer 2 goes to the PC speaker. In a modern world, look for things like HPET and TSC: http://en.wikipedia.org/wiki/High_Precision_Event_Timer http://en.wikipedia.org/wiki/Time_Stamp_Counter You want to get a better reference clock to these timers. Cheers, Magnus ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
On Sun, 02 Dec 2012 01:53:07 +0100, Magnus Danielson mag...@rubidium.dyndns.org wrote: On 12/02/2012 01:29 AM, David wrote: Originally the IBM PC design used an 8253 or 8254 PIT, programmable interval timer, located at ports 40h to 43h with Timer 0 clocked at 1.193182 MHz (1/3rd of 3.579545 MHz or 1/12th of 14.318 MHz) and set to divide by 65536 which generated about an 18.2 Hz interrupt rate on IRQ 0. Timer 1 generated the since deprecated DRAM refresh clock and Timer 2 goes to the PC speaker. In a modern world, look for things like HPET and TSC: http://en.wikipedia.org/wiki/High_Precision_Event_Timer http://en.wikipedia.org/wiki/Time_Stamp_Counter You want to get a better reference clock to these timers. Cheers, Magnus I only mention and do not go into detail about the higher precision timers later in my post because by the time they were available, Intel's system management mode was adding so much jitter than I lost interest in using PC hardware in applications where they otherwise might have been useful. To be fair, not all motherboards and BIOSes had this problem but it was not worth weeding out the poorly performing ones. One of my favorite tricks back when the ISA bus was still available was to use a custom expansion board I built and an oscilloscope to measure the interrupt latency. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
davidwh...@gmail.com said: One of my favorite tricks back when the ISA bus was still available was to use a custom expansion board I built and an oscilloscope to measure the interrupt latency. You can do the same trick without special hardware. Use the printer port. Of course, that assumes your PC/Laptop still has a printer port. I have a laptop with a printer port on the thing Dell calls a MediaBase. It's an extender/fattener that includes a CD drive with connectors for printer port and serial port. It plugs into a big connector on the bottom of the laptop. Many laptops plug into docking stations for use at a desk. Sometimes/often they have printer ports and/or serial ports. You could probably do it with just a serial port by flapping one of the output modem control signals. If you don't have a printer port or serial port, how are you getting the interrupt into your box? -- Many years ago, I helped a friend with this sort of thing. We were working for DEC back in the days before Intel had captured everything and workstations still needed lots of chips and chips had big pins so you could get a scope probe on them. My part was to connect scope probes to the interrupt line from the ethernet chip and the chip select for the MAC address ROM. He patched the driver's interrupt routine to read the ROM. -- These are my opinions. I hate spam. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
On Sat, 01 Dec 2012 19:10:54 -0800, Hal Murray hmur...@megapathdsl.net wrote: davidwh...@gmail.com said: One of my favorite tricks back when the ISA bus was still available was to use a custom expansion board I built and an oscilloscope to measure the interrupt latency. You can do the same trick without special hardware. Use the printer port. Of course, that assumes your PC/Laptop still has a printer port. I almost always end up installing a PCI/PCIe serial and parallel expansion card into my systems even now. I have a laptop with a printer port on the thing Dell calls a MediaBase. It's an extender/fattener that includes a CD drive with connectors for printer port and serial port. It plugs into a big connector on the bottom of the laptop. Many laptops plug into docking stations for use at a desk. Sometimes/often they have printer ports and/or serial ports. You could probably do it with just a serial port by flapping one of the output modem control signals. I could not always depend on having access to built in serial or parallel ports. These days of course both are pretty much deprecated in favor of USB which is useless for this type of work. If you don't have a printer port or serial port, how are you getting the interrupt into your box? Since this was back in the ISA days, I had access to the whole ISA bus including the interrupts. I never built a version for PCI but I did consider it. The card I built had a pair of 8254 timers, hexadecimal display, keypad, a bunch of auxiliary I/O, and all of the decoding to use it. I usually end up building something similar for microcontroller projects that operates via SPI although serial to a PC running a terminal program is often better. Many years ago, I helped a friend with this sort of thing. We were working for DEC back in the days before Intel had captured everything and workstations still needed lots of chips and chips had big pins so you could get a scope probe on them. My part was to connect scope probes to the interrupt line from the ethernet chip and the chip select for the MAC address ROM. He patched the driver's interrupt routine to read the ROM. I have also done that on occasion and sometimes still do. Usually I solder a little grab point for the probe into place. Sometimes I will just add a resistor or transistor buffer depending on impedance issues and an RG-316 pigtail. The funny part is that back then, I was using one of the early Tektronix series TDS oscilloscopes. Now I do the same thing with an older Tektronix 2230, 2232, or 2440 series oscilloscope and I have a word recognizer for my 2440 which works surprisingly well. At some point, I need to pick up a DSO that supports variable and infinite persistence. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
[time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
Has anyone ever used a TAPR clock block or other frequency synthesizer to sort the clock drift / timing problems on a regular computer? I'll probably end up with a used dell or IBM workstation for this purpose. Recently, I came across a low-cost frequency synthesizer capable of using a 10mhz frequency reference (planning on using the thunderbolt GPSDO I'm working with once I manage to sort out the temperature issues) http://www.tapr.org/~n8ur/Clock-Block_Manual.pdf ^ TAPR Clock Block has an installation example for how to do what I'm planning with a Soekris net4501 low-cost / low-power embedded device... What I'm hoping to figure out is how to do the same, except on a proper computer such as the local used ones I'm able to get for less than $200 with 2ghz with 30GB hard disk, 512mb or more ram, etc. So I figure this should be fine for what I'm planning. Example of what I'm trying to do, though based on the low-power embedded Soekris net4501 system from the TAPR manual's example section: http://www.febo.com/time-freq/ntp/soekris/index.html ^Aren't those the photos from clock block frequency synthesizer manual? Again, I'm wondering if anyone has opinions or experience about doing such things with NOT an embedded system (as I said, can get a nice 2ghz or so machine for less than $200 locally at a brick and mortar shop within walking distance) Thanks in advance, Sarah ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
Hi It's most commonly done with things like a Soekris 45xx series board. You don't need anything very exotic for the frequency conversion. The jitter in the PC is way worse than what the external chips will be creating. The real question is - what is the magic frequency on the particular mother board you are going to modify? Once upon a time they all were a pretty predictable 14.xxx MHz. These days, who knows what's going in where… Bob On Nov 30, 2012, at 4:55 PM, Sarah White kuze...@gmail.com wrote: Has anyone ever used a TAPR clock block or other frequency synthesizer to sort the clock drift / timing problems on a regular computer? I'll probably end up with a used dell or IBM workstation for this purpose. Recently, I came across a low-cost frequency synthesizer capable of using a 10mhz frequency reference (planning on using the thunderbolt GPSDO I'm working with once I manage to sort out the temperature issues) http://www.tapr.org/~n8ur/Clock-Block_Manual.pdf ^ TAPR Clock Block has an installation example for how to do what I'm planning with a Soekris net4501 low-cost / low-power embedded device... What I'm hoping to figure out is how to do the same, except on a proper computer such as the local used ones I'm able to get for less than $200 with 2ghz with 30GB hard disk, 512mb or more ram, etc. So I figure this should be fine for what I'm planning. Example of what I'm trying to do, though based on the low-power embedded Soekris net4501 system from the TAPR manual's example section: http://www.febo.com/time-freq/ntp/soekris/index.html ^Aren't those the photos from clock block frequency synthesizer manual? Again, I'm wondering if anyone has opinions or experience about doing such things with NOT an embedded system (as I said, can get a nice 2ghz or so machine for less than $200 locally at a brick and mortar shop within walking distance) Thanks in advance, Sarah ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
I am not sure that a precision clock will help if the cpu is busy and skips clock cycles. I believe this is one of the problems with general purpose OSes like Windows. I believe the better boards like the Soekis use hardware dividers to alleviate the cpu busy problem. Didier Sent from my Droid Razr 4G LTE wireless tracker. -Original Message- From: Sarah White kuze...@gmail.com To: Discussion of precise time and frequency measurement time-nuts@febo.com Sent: Fri, 30 Nov 2012 3:55 PM Subject: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator Has anyone ever used a TAPR clock block or other frequency synthesizer to sort the clock drift / timing problems on a regular computer? I'll probably end up with a used dell or IBM workstation for this purpose. Recently, I came across a low-cost frequency synthesizer capable of using a 10mhz frequency reference (planning on using the thunderbolt GPSDO I'm working with once I manage to sort out the temperature issues) http://www.tapr.org/~n8ur/Clock-Block_Manual.pdf ^ TAPR Clock Block has an installation example for how to do what I'm planning with a Soekris net4501 low-cost / low-power embedded device... What I'm hoping to figure out is how to do the same, except on a proper computer such as the local used ones I'm able to get for less than $200 with 2ghz with 30GB hard disk, 512mb or more ram, etc. So I figure this should be fine for what I'm planning. Example of what I'm trying to do, though based on the low-power embedded Soekris net4501 system from the TAPR manual's example section: http://www.febo.com/time-freq/ntp/soekris/index.html ^Aren't those the photos from clock block frequency synthesizer manual? Again, I'm wondering if anyone has opinions or experience about doing such things with NOT an embedded system (as I said, can get a nice 2ghz or so machine for less than $200 locally at a brick and mortar shop within walking distance) Thanks in advance, Sarah ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
It all depends on what clock your talking about. Any given PC probably has more than one oscillator onboard. Generally there will be one for the CPU, one for the display circuitry, and probably one for the real time clock. Presuming you are talking about the CPU clock, it should be fairly straightforward to find the oscillator package on the motherboard find the pin with clock output and feed your clock input there. On Nov 30, 2012, at 16:59, Bob Camp li...@rtty.us wrote: Hi It's most commonly done with things like a Soekris 45xx series board. You don't need anything very exotic for the frequency conversion. The jitter in the PC is way worse than what the external chips will be creating. The real question is - what is the magic frequency on the particular mother board you are going to modify? Once upon a time they all were a pretty predictable 14.xxx MHz. These days, who knows what's going in where… Bob On Nov 30, 2012, at 4:55 PM, Sarah White kuze...@gmail.com wrote: Has anyone ever used a TAPR clock block or other frequency synthesizer to sort the clock drift / timing problems on a regular computer? I'll probably end up with a used dell or IBM workstation for this purpose. Recently, I came across a low-cost frequency synthesizer capable of using a 10mhz frequency reference (planning on using the thunderbolt GPSDO I'm working with once I manage to sort out the temperature issues) http://www.tapr.org/~n8ur/Clock-Block_Manual.pdf ^ TAPR Clock Block has an installation example for how to do what I'm planning with a Soekris net4501 low-cost / low-power embedded device... What I'm hoping to figure out is how to do the same, except on a proper computer such as the local used ones I'm able to get for less than $200 with 2ghz with 30GB hard disk, 512mb or more ram, etc. So I figure this should be fine for what I'm planning. Example of what I'm trying to do, though based on the low-power embedded Soekris net4501 system from the TAPR manual's example section: http://www.febo.com/time-freq/ntp/soekris/index.html ^Aren't those the photos from clock block frequency synthesizer manual? Again, I'm wondering if anyone has opinions or experience about doing such things with NOT an embedded system (as I said, can get a nice 2ghz or so machine for less than $200 locally at a brick and mortar shop within walking distance) Thanks in advance, Sarah ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
the actual RTC on modern (Intel based) PC's is driven from a standard 32,768 Hz crystal attached to the PCH. some of them are in incredibly small packages now instead of the old tuning fork-in-a-can ones. peeling off the load caps and crystal from the board would allow you plenty of spaces to tack down a lead from an external synthesizer. -Eric On Fri, Nov 30, 2012 at 3:04 PM, bownes bow...@gmail.com wrote: It all depends on what clock your talking about. Any given PC probably has more than one oscillator onboard. Generally there will be one for the CPU, one for the display circuitry, and probably one for the real time clock. Presuming you are talking about the CPU clock, it should be fairly straightforward to find the oscillator package on the motherboard find the pin with clock output and feed your clock input there. On Nov 30, 2012, at 16:59, Bob Camp li...@rtty.us wrote: Hi It's most commonly done with things like a Soekris 45xx series board. You don't need anything very exotic for the frequency conversion. The jitter in the PC is way worse than what the external chips will be creating. The real question is - what is the magic frequency on the particular mother board you are going to modify? Once upon a time they all were a pretty predictable 14.xxx MHz. These days, who knows what's going in where… Bob On Nov 30, 2012, at 4:55 PM, Sarah White kuze...@gmail.com wrote: Has anyone ever used a TAPR clock block or other frequency synthesizer to sort the clock drift / timing problems on a regular computer? I'll probably end up with a used dell or IBM workstation for this purpose. Recently, I came across a low-cost frequency synthesizer capable of using a 10mhz frequency reference (planning on using the thunderbolt GPSDO I'm working with once I manage to sort out the temperature issues) http://www.tapr.org/~n8ur/Clock-Block_Manual.pdf ^ TAPR Clock Block has an installation example for how to do what I'm planning with a Soekris net4501 low-cost / low-power embedded device... What I'm hoping to figure out is how to do the same, except on a proper computer such as the local used ones I'm able to get for less than $200 with 2ghz with 30GB hard disk, 512mb or more ram, etc. So I figure this should be fine for what I'm planning. Example of what I'm trying to do, though based on the low-power embedded Soekris net4501 system from the TAPR manual's example section: http://www.febo.com/time-freq/ntp/soekris/index.html ^Aren't those the photos from clock block frequency synthesizer manual? Again, I'm wondering if anyone has opinions or experience about doing such things with NOT an embedded system (as I said, can get a nice 2ghz or so machine for less than $200 locally at a brick and mortar shop within walking distance) Thanks in advance, Sarah ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. -- --Eric _ Eric Garner ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
On 11/30/2012 6:30 PM, Eric Garner wrote: the actual RTC on modern (Intel based) PC's is driven from a standard 32,768 Hz crystal attached to the PCH. some of them are in incredibly small packages now instead of the old tuning fork-in-a-can ones. peeling off the load caps and crystal from the board would allow you plenty of spaces to tack down a lead from an external synthesizer. Yeah, the one on the (Soekis) example was pretty small. So far none of of the replies have indicated that anyone on here has experience beyond an embedded system. Mostly I started this thread because there have been a few with people discussing implementing NTP on embedded microcontrollers, arduino, etc. and I was thinking of doing it from the other side (turning a nice-ish server into a rock-solid timekeeper) Thanks so far everyone. Really impressed that I already managed to get 4x replies so quickly :) ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
I've never done it using to the RTC crystal, but I do it quite frequently in my Day Job to Ethernet controllers on those same pc mother boards. -Eric On Fri, Nov 30, 2012 at 4:10 PM, Sarah White kuze...@gmail.com wrote: On 11/30/2012 6:30 PM, Eric Garner wrote: the actual RTC on modern (Intel based) PC's is driven from a standard 32,768 Hz crystal attached to the PCH. some of them are in incredibly small packages now instead of the old tuning fork-in-a-can ones. peeling off the load caps and crystal from the board would allow you plenty of spaces to tack down a lead from an external synthesizer. Yeah, the one on the (Soekis) example was pretty small. So far none of of the replies have indicated that anyone on here has experience beyond an embedded system. Mostly I started this thread because there have been a few with people discussing implementing NTP on embedded microcontrollers, arduino, etc. and I was thinking of doing it from the other side (turning a nice-ish server into a rock-solid timekeeper) Thanks so far everyone. Really impressed that I already managed to get 4x replies so quickly :) ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. -- --Eric _ Eric Garner ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
Hi In the case of the Soekris, it was not the real time clock that we all played with. THe clock you fiddle is the CPU clock. The system is running FreeBSD or Lunix, so it's a cut above a typical embedded system. A RTOS (like Windows CE) will indeed do a bit better with a good CPU clock. Anything like conventional Windows will still have issues, even with a good clock. Bob On Nov 30, 2012, at 7:10 PM, Sarah White kuze...@gmail.com wrote: On 11/30/2012 6:30 PM, Eric Garner wrote: the actual RTC on modern (Intel based) PC's is driven from a standard 32,768 Hz crystal attached to the PCH. some of them are in incredibly small packages now instead of the old tuning fork-in-a-can ones. peeling off the load caps and crystal from the board would allow you plenty of spaces to tack down a lead from an external synthesizer. Yeah, the one on the (Soekis) example was pretty small. So far none of of the replies have indicated that anyone on here has experience beyond an embedded system. Mostly I started this thread because there have been a few with people discussing implementing NTP on embedded microcontrollers, arduino, etc. and I was thinking of doing it from the other side (turning a nice-ish server into a rock-solid timekeeper) Thanks so far everyone. Really impressed that I already managed to get 4x replies so quickly :) ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
In this case, you're not looking for the RTC but rather the clock that drives the COU, which is what drives the system clock. On most systems, the RTC is read only at startup and is not used once the system is running. John On Nov 30, 2012, at 6:30 PM, Eric Garner garn...@gmail.com wrote: the actual RTC on modern (Intel based) PC's is driven from a standard 32,768 Hz crystal attached to the PCH. some of them are in incredibly small packages now instead of the old tuning fork-in-a-can ones. peeling off the load caps and crystal from the board would allow you plenty of spaces to tack down a lead from an external synthesizer. -Eric On Fri, Nov 30, 2012 at 3:04 PM, bownes bow...@gmail.com wrote: It all depends on what clock your talking about. Any given PC probably has more than one oscillator onboard. Generally there will be one for the CPU, one for the display circuitry, and probably one for the real time clock. Presuming you are talking about the CPU clock, it should be fairly straightforward to find the oscillator package on the motherboard find the pin with clock output and feed your clock input there. On Nov 30, 2012, at 16:59, Bob Camp li...@rtty.us wrote: Hi It's most commonly done with things like a Soekris 45xx series board. You don't need anything very exotic for the frequency conversion. The jitter in the PC is way worse than what the external chips will be creating. The real question is - what is the magic frequency on the particular mother board you are going to modify? Once upon a time they all were a pretty predictable 14.xxx MHz. These days, who knows what's going in where… Bob On Nov 30, 2012, at 4:55 PM, Sarah White kuze...@gmail.com wrote: Has anyone ever used a TAPR clock block or other frequency synthesizer to sort the clock drift / timing problems on a regular computer? I'll probably end up with a used dell or IBM workstation for this purpose. Recently, I came across a low-cost frequency synthesizer capable of using a 10mhz frequency reference (planning on using the thunderbolt GPSDO I'm working with once I manage to sort out the temperature issues) http://www.tapr.org/~n8ur/Clock-Block_Manual.pdf ^ TAPR Clock Block has an installation example for how to do what I'm planning with a Soekris net4501 low-cost / low-power embedded device... What I'm hoping to figure out is how to do the same, except on a proper computer such as the local used ones I'm able to get for less than $200 with 2ghz with 30GB hard disk, 512mb or more ram, etc. So I figure this should be fine for what I'm planning. Example of what I'm trying to do, though based on the low-power embedded Soekris net4501 system from the TAPR manual's example section: http://www.febo.com/time-freq/ntp/soekris/index.html ^Aren't those the photos from clock block frequency synthesizer manual? Again, I'm wondering if anyone has opinions or experience about doing such things with NOT an embedded system (as I said, can get a nice 2ghz or so machine for less than $200 locally at a brick and mortar shop within walking distance) Thanks in advance, Sarah ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. -- --Eric _ Eric Garner ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
On Nov 30, 2012, at 7:10 PM, Sarah White kuze...@gmail.com wrote: On 11/30/2012 6:30 PM, Eric Garner wrote: the actual RTC on modern (Intel based) PC's is driven from a standard 32,768 Hz crystal attached to the PCH. some of them are in incredibly small packages now instead of the old tuning fork-in-a-can ones. peeling off the load caps and crystal from the board would allow you plenty of spaces to tack down a lead from an external synthesizer. Yeah, the one on the (Soekis) example was pretty small. So far none of of the replies have indicated that anyone on here has experience beyond an embedded system. Sarah, when I was designing and protoyping the ClockBlock, I did interface it with a standard mobo (don't recall the specifics). As someone else pointed out, the process is basically: 1. Find and remove the oscillator that drives the CPU, likely something between 33 and 100 Mhz in modern systems. It's *not* the 32.768 kHz crystal (if there still is one; I think it's actually built into thr RTC chip these days). 2. Figure out which pin is the output of the oscillator module. 3. Figure out the proper drive voltage (most easily based on the supply voltage of the oscillator). 4. Hook the ClockBlock output to the signal pad where the oscillator used to be via small-diameter coax cable such as RG-174, connecting the coax shield to ground on the board and using a series resistor if you need to drop the signal voltage below the 3.3V minimum that the ClockBlock can provide via its voltage-select jumper. Some math and/or experimentation may be involved; the goal is to get enough signal to drive the board, without exceeding the safe Vin rsting of whatever devices the clock is driving. 5. Set the ClockBlock jumpers for the proper clock frequency. Have fun! John ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
On Nov 30, 2012, at 7:42 PM, John Ackermann N8UR j...@febo.com wrote: In this case, you're not looking for the RTC but rather the clock that drives the COU Read CPU. Stupid iPad keyboard. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
OK, I'll bite. Why? Jim I've never done it using to the RTC crystal, but I do it quite frequently in my Day Job to Ethernet controllers on those same pc mother boards. -Eric On Fri, Nov 30, 2012 at 4:10 PM, Sarah White kuze...@gmail.com wrote: On 11/30/2012 6:30 PM, Eric Garner wrote: the actual RTC on modern (Intel based) PC's is driven from a standard 32,768 Hz crystal attached to the PCH. some of them are in incredibly small packages now instead of the old tuning fork-in-a-can ones. peeling off the load caps and crystal from the board would allow you plenty of spaces to tack down a lead from an external synthesizer. Yeah, the one on the (Soekis) example was pretty small. So far none of of the replies have indicated that anyone on here has experience beyond an embedded system. Mostly I started this thread because there have been a few with people discussing implementing NTP on embedded microcontrollers, arduino, etc. and I was thinking of doing it from the other side (turning a nice-ish server into a rock-solid timekeeper) Thanks so far everyone. Really impressed that I already managed to get 4x replies so quickly :) ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. -- --Eric _ Eric Garner ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
On 11/30/12 4:58 PM, John Ackermann N8UR wrote: On Nov 30, 2012, at 7:42 PM, John Ackermann N8UR j...@febo.com wrote: In this case, you're not looking for the RTC but rather the clock that drives the COU Read CPU. Stupid iPad keyboard. I was wondering.. Clock Oscillator Unit? Cryptic Obfuscated Unknown? ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
On 11/30/2012 7:54 PM, John Ackermann N8UR wrote: On Nov 30, 2012, at 7:10 PM, Sarah White kuze...@gmail.com wrote: On 11/30/2012 6:30 PM, Eric Garner wrote: the actual RTC on modern (Intel based) PC's is driven from a standard 32,768 Hz crystal attached to the PCH. some of them are in incredibly small packages now instead of the old tuning fork-in-a-can ones. peeling off the load caps and crystal from the board would allow you plenty of spaces to tack down a lead from an external synthesizer. Yeah, the one on the (Soekis) example was pretty small. So far none of of the replies have indicated that anyone on here has experience beyond an embedded system. Sarah, when I was designing and protoyping the ClockBlock, I did interface it with a standard mobo (don't recall the specifics). As someone else pointed out, the process is basically: 1. Find and remove the oscillator that drives the CPU, likely something between 33 and 100 Mhz in modern systems. It's *not* the 32.768 kHz crystal (if there still is one; I think it's actually built into thr RTC chip these days). 2. Figure out which pin is the output of the oscillator module. 3. Figure out the proper drive voltage (most easily based on the supply voltage of the oscillator). 4. Hook the ClockBlock output to the signal pad where the oscillator used to be via small-diameter coax cable such as RG-174, connecting the coax shield to ground on the board and using a series resistor if you need to drop the signal voltage below the 3.3V minimum that the ClockBlock can provide via its voltage-select jumper. Some math and/or experimentation may be involved; the goal is to get enough signal to drive the board, without exceeding the safe Vin rsting of whatever devices the clock is driving. 5. Set the ClockBlock jumpers for the proper clock frequency. Have fun! John John :) Ok, wow, thanks! I couldn't have asked for a better answer to my specific question than one from the designer of the module itself (and more or less saying, and confirming yes, I've done this in testing) Slightly unrelated but... Any chance you could recommend a minimalist set of tools that would be helpful for poking around so I could make sure things are wired up right / signaling as desired, etc? Please don't say logic analyzer or oscilloscope because if that sort of thing is mandatory, I'll just give up now. I took a basic electrical engineering course nearly 20 years ago, and have worked on a few simple controllers and even modified a computer motherboard or two, so this won't be my first venture into such things. ... I'm just currently without ANY tools. (Not counting the dremmel rotory tool for doing acrylic fingernails, and/or various repair tooling, cutting, and sanding of things that would take too long by hand) ... Well mostly none. The only decent tool I have on hand is a soldering iron with a variable control / stand to adjust power and to have somewhere to sit it while it warms up (also, there's a position on the stand which is handy for holding the iron stationary so I can tin wires) Guess that's all for now. Thanks everyone :) P.S. Probably not doing anything like this for at least a month anyway. Still need to sock away enough budget for cheap computer to modify and the clock block itself (or some other appropriate frequency synthesizer) P.P.S This might be my last post of the night. Friend's birthday is today / have a party to finish getting things ready for. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
On Fri, Nov 30, 2012 at 04:24:38PM -0600, shali...@gmail.com wrote: I am not sure that a precision clock will help if the cpu is busy and skips clock cycles. I believe this is one of the problems with general purpose OSes like Windows. I believe the better boards like the Soekis use hardware dividers to alleviate the cpu busy problem. Didier For what it is worth, for many generations now all major CPUs have had kernel software readable nanosecond level time of day time stamping counters that are clocked from the incoming clock to the CPU chip and run continuously and steadily without skipped or added ticks whatever the CPU is doing. And in addition to these time stamping counters, most all CPU chip sets also include real time clock interrupts which again are driven off of continuously counting counters referenced to the clock input to the CPU and can be programmed to interrupt ever n ticks of the master clock - regardless of CPU activity. Obviously while servicing the real time clock interrupts is usually a very high priority, depending on how the OS works and what privileges real time priority apps have occasionally a real time interrupt can be serviced so slowly that another one happens before it is cleared. Some OS real time clock handlers attempt to spot these cases and adjust their idea of time to compensate. Any OS based PLL driven by time stamping 1 PPS timing interrupts WILL see some jitter in its time stamps due to bus and internal CPU latencies and use of interrupt off intervals to protect against race conditions. This noise is unavoidable and does depend on CPU load and even how fast the CPU clocks are set to run at any instant (modern CPUS dynamically adjust clock rate in various areas of their logic to conserve power and reduce heat). So for a very fine control a hardware based 1PPS event time stamper will provide greater accuracy and less jitter, especially if it is driven by a high accuracy external clock source locked to some time reference. But of course it IS useful to clock the CPU with an accurate clock as that then means the internal CPU time stamp counter and real time tick interrupt is ticking at a known rate - starting from some epoch that can be eventually calibrated over time - and multiple 1 PPS ticks - within a few ns or so of 1 PPS GPS or other similar time. If the CPU clock is unstable and wanders around with time, temperature, power and fan activity it then becomes necessary - as the timing 1PPS PLLs built into many modern kernels do - to try to measure its frequency error and drift and estimate the error phase between it and true time. If the CPU clock is locked to a reference, this is not as hard a thing to do as the only relative unknown is when exactly the zero epoch on the counter occurred. -- Dave Emery N1PRE/AE, d...@dieconsulting.com DIE Consulting, Weston, Mass 02493 An empty zombie mind with a forlorn barely readable weatherbeaten 'For Rent' sign still vainly flapping outside on the weed encrusted pole - in celebration of what could have been, but wasn't and is not to be now either. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
Hi The problem just the clock it's also the operating system. If it's not designed with timing in mind (= it's an RTOS at some level) then you will have sloppy timing. Counters can help, but they are not the entire solution. If your email (or anti-virus or ...) program can pop up and monopolize the cpu for a chunk of a second (as in 10's or 100's of ms), precision timing isn't going to work very well. There's only so much you can do after the fact. If the pps edge was supposed to go out 27 ms ago, and you only got control back now, you are out of luck. Bob On Nov 30, 2012, at 9:19 PM, David I. Emery d...@dieconsulting.com wrote: On Fri, Nov 30, 2012 at 04:24:38PM -0600, shali...@gmail.com wrote: I am not sure that a precision clock will help if the cpu is busy and skips clock cycles. I believe this is one of the problems with general purpose OSes like Windows. I believe the better boards like the Soekis use hardware dividers to alleviate the cpu busy problem. Didier For what it is worth, for many generations now all major CPUs have had kernel software readable nanosecond level time of day time stamping counters that are clocked from the incoming clock to the CPU chip and run continuously and steadily without skipped or added ticks whatever the CPU is doing. And in addition to these time stamping counters, most all CPU chip sets also include real time clock interrupts which again are driven off of continuously counting counters referenced to the clock input to the CPU and can be programmed to interrupt ever n ticks of the master clock - regardless of CPU activity. Obviously while servicing the real time clock interrupts is usually a very high priority, depending on how the OS works and what privileges real time priority apps have occasionally a real time interrupt can be serviced so slowly that another one happens before it is cleared. Some OS real time clock handlers attempt to spot these cases and adjust their idea of time to compensate. Any OS based PLL driven by time stamping 1 PPS timing interrupts WILL see some jitter in its time stamps due to bus and internal CPU latencies and use of interrupt off intervals to protect against race conditions. This noise is unavoidable and does depend on CPU load and even how fast the CPU clocks are set to run at any instant (modern CPUS dynamically adjust clock rate in various areas of their logic to conserve power and reduce heat). So for a very fine control a hardware based 1PPS event time stamper will provide greater accuracy and less jitter, especially if it is driven by a high accuracy external clock source locked to some time reference. But of course it IS useful to clock the CPU with an accurate clock as that then means the internal CPU time stamp counter and real time tick interrupt is ticking at a known rate - starting from some epoch that can be eventually calibrated over time - and multiple 1 PPS ticks - within a few ns or so of 1 PPS GPS or other similar time. If the CPU clock is unstable and wanders around with time, temperature, power and fan activity it then becomes necessary - as the timing 1PPS PLLs built into many modern kernels do - to try to measure its frequency error and drift and estimate the error phase between it and true time. If the CPU clock is locked to a reference, this is not as hard a thing to do as the only relative unknown is when exactly the zero epoch on the counter occurred. -- Dave Emery N1PRE/AE, d...@dieconsulting.com DIE Consulting, Weston, Mass 02493 An empty zombie mind with a forlorn barely readable weatherbeaten 'For Rent' sign still vainly flapping outside on the weed encrusted pole - in celebration of what could have been, but wasn't and is not to be now either. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
On Fri, Nov 30, 2012 at 09:58:29PM -0500, Bob Camp wrote: Hi The problem just the clock it's also the operating system. If it's not designed with timing in mind (= it's an RTOS at some level) then you will have sloppy timing. Counters can help, but they are not the entire solution. If your email (or anti-virus or ...) program can pop up and monopolize the cpu for a chunk of a second (as in 10's or 100's of ms), precision timing isn't going to work very well. There's only so much you can do after the fact. If the pps edge was supposed to go out 27 ms ago, and you only got control back now, you are out of luck. No doubt that you get into a sort of philosophic meaning of what-really-is-now relativity here... if parts of the kernel know what time it is quite precisely but other parts and most user programs are only loosely aware of and only able to react to it post facto by large and jittery intervals, what is the meaning of microsecond or even ns level OS time sync ? Most modern kernels *internally* have at least some degree of fairly serious real time high priority tight deadline stuff going on - and API hooks for accessing it available - the degree to which this is exposed and visible to or usable by user space threads varies a lot, and correctly using this stuff always requires pretty deep skill and thought. Not for the faint of heart or inexperienced. Very easy to make subtle errors that cause bugs that happen only once every few hundred or even many thousands of hours. And pretty obviously the more control and access the user (eg applications programmers) get and use the less likely it is that some combination of separately developed and architected applications and a particular kernel running on particular hardware will handle all of this right ALL the time. Emphasis here on ALL, it usually works most of the time but making it essentially never fail is really really hard. And many of those failures result in things like deadly embrace lockups which can cause everything to stop or rare conditions in which apparent causality and temporal coherence completely inverts and things which cannot happen happen exposing all kinds of reasonable but not quite bulletproof assumptions. -- Dave Emery N1PRE/AE, d...@dieconsulting.com DIE Consulting, Weston, Mass 02493 An empty zombie mind with a forlorn barely readable weatherbeaten 'For Rent' sign still vainly flapping outside on the weed encrusted pole - in celebration of what could have been, but wasn't and is not to be now either. ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
Re: [time-nuts] Using a frequency synthesizer replacement for motherboard oscillator
On Fri, Nov 30, 2012 at 8:39 PM, David I. Emery d...@dieconsulting.comwrote: On Fri, Nov 30, 2012 at 09:58:29PM -0500, Bob Camp wrote: Hi The problem just the clock it's also the operating system. If it's not designed with timing in mind (= it's an RTOS at some level) then you will have sloppy timing. What is sloppy timing? If about 10 microseconds of error is sloppy then you are right. None of the effects you describe need to cause a problem. Even on a non-RTOS the limiting factor is the uncertainty in the interrupt latency. The way it works is that the PPS interrupts the CPU and then inside the handler a hardware counter is sampled and stored and that is it. Nothing else needs to occur in real time. Quite a few people are able to run NTP serversand keep there system clocks for small (uSecs) error from UTC.But now the question is if an application program can us the clock .without some error I think it can. A simple example is a program that time stamps data. It waits for data then when it comes in reads the system clock then tags the data with the sampled clock. The problem is if the CPU is taken away. One way to detect a problem is to read the clock twice and check for a deta time of more than a few nanoseconds. Then if you read the data between those to clock samples you will know the clock was acuratly sampled. Chris Albertson Redondo Beach, California ___ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.