Thank you for sharing your filter implementation. I'll study it. On Sun, Apr 1, 2012 at 1:42 PM, Ulrich Bangert <[email protected]>wrote:
> Hello Ernie, > > please allow me to correct your use of my first name. It is "Ulrich" and > not > "Ulbrich". I attach great importance to this difference because a certain > Walter Ulbricht was one of the leading politicians in the communist terror > regime of the former so called "German Democratic Republic" and I do not > want my name to sound even similar to his one. > > > Understand that the key point is the PLL or the phase > > comparator circuit.........if you want to build you own GPS-DO..... > > As far as I remember I had understood this when I started my DIY GPSDO > project. If you have not read about it yet take it as an indication that I > did not want to publish it. Nevertheless you can see some pictures of it in > the photo gallery > > http://www.ulrich-bangert.de/html/photo_gallery_1.html > > of my homepage. > > > can you please be a more specific.... namely to show > > us the pre filter and other circuit....if you do not mind. > > The Pll as well as the pre filter is SOFTWARE and not hardware as your > question may imply. Again I have to use the P-word because the software was > written in PASCAL. The pre filter and the PLL part reads like: > > procedure ComputePreFilter; > begin; > PrefilterValue:=PrefilterValue*PreFilterTimeconstant > +PhaseDelay*(1-PrefilterTimeConstant); > Str(PreFilterValue,PreFilterValue_S); > end; > > procedure DoPll; > var count:integer; > flag:boolean; > sum:Extended; > begin; > if DoPrefilter then PllPhaseValue:=PrefilterValue else > PllPhaseValue:=PhaseDelay; > TimeConstant:=Sqr(NaturalTimeConstant)*(KDet*KVco); > If NeueZeitKonstante then > begin; > NeueZeitKonstante:=False; > Sum:=PropValue+IntegralValue; > PropFactor:=2.0*StabilityFactor/Sqrt(KDet*KVco*TimeConstant); > PropValue:=PropFactor*PLLPhaseValue*1.0E-9*KDet; > IntegralValue:=Sum-PropValue; > end; > PropFactor:=2.0*StabilityFactor/Sqrt(KDet*KVco*TimeConstant); > PropValue:=PropFactor*PLLPhaseValue*1.0E-9*KDet; > IntegralValue:=IntegralValue+PllPhaseValue*1.0E-9/TimeConstant*KDet; > begin; > TuningWord:=SollTuningWord-(PropValue+Integralvalue)*KVco/PllFactor; > FiltTuningWord:=(1-0.2)*FiltTuningWord+0.2*TuningWord; > TuningWord:=FiltTuningWord; > StoreTuningword:=TuningWord; > MakeTuningBinary(TuningWord); > count:=0; > repeat > SetFrequency_9852; > flag:=GetFrequency_9852; > if flag=false then Inc(DDSRWError); > inc(count); > until flag or (count>9); > str(DDSRWError,DDSRWError_S); > Strip(DDSRWError_S); > if count>1 then MessageLog('DDS Read/Write Error'); > if flag=false then ErrorLog('Unable to set DDS frequency'); > StoreM41T56_TW; > end; > end; > > The initialization is: > > PreFilterTimeConstant:=1-6/NaturalTimeConstant; > > Both procedures are executed once per second. Read "If NeueZeitKonstante > then" as "If the user has set a new PLL time constant then do". If you can > gain a certain understanding for the source then terms like > "SetFrequency_9852;" or "flag:=GetFrequency_9852;" will indicate you that > instead of an analogue steering of the OCXO my project used a AD9852 DDS > circuit to steer the output frequency the digital way. For that reason it > could steer anything from simple xtals to rubidiums and cesiums without the > slightest interaction with the circuitry of the oscillator itself which > made > me call the device AOS (Arbitrary Oscillator Synchronizer). > > The "microcontroller" used was a BECK SC12 and you can read more about it > here: > > http://www.beck-ipc.com/en/products/index.asp > > For a lot of people this may seem a strange choice but beware: If you want > to handle 48 bit tuning words you should take care that your micro/compiler > combination is able to handle 64 bit entities. Before I gained access to > the > IAR C compiler for the AVR range of microcontrollers the Turbo Pascal that > I > could run on the Beck was the only environment available for me which > featured 64 bit "extended" floating point entities and 64 bit "cardinal" > integer entities. > > The phase comparator was a simple TIC with a delay line interpolation to 56 > ps resolution in an ALTERA EPF10K10 cpld. This cpld (although specified > with > some ns pin to pin delay) had a very fast internal "carry chain" logic > (neccessary for multi byte adders for example) and the carry chain elements > could be used as a fast delay line for the time interpolator. > > > Understand that the key point is the PLL or the phase > > comparator circuit.........if you want to build you own GPS-DO..... > > Among the key points for a good GPSDO are some things that have never been > discussed here, for example how to detect and reject outliers in the phase > measurements. Outliers are anything else then extraordinary and a single > outlier may push the pll's integrator value into outer space so we MUST > detect them before the can fire up a desaster. Unfortunately detecting > outliers is anything else than trivial and a science of it's own called > "robust statistics" tells us how to do. For that reason be prepared to > learn > more than you really want. > > Best regards > Ulrich > > > -----Ursprungliche Nachricht----- > > Von: [email protected] > > [mailto:[email protected]] Im Auftrag von Erno Peres > > Gesendet: Samstag, 31. Marz 2012 15:10 > > An: [email protected] > > Betreff: Re: [time-nuts] CW12-TIM vs M12M and the world > > > > > > > > Hi Ulbrich, > > > > Sorry but not everybody a digital and/or a professional > > guru... can you please be a more specific.... namely to show > > us the pre filter and other circuit....if you do not mind. > > Understand that the key point is the PLL or the phase > > comparator circuit.........if you want to build you own GPS-DO..... > > > > Many thanks and best regards, > > > > Ernie. > > > > > > > > > > -----Original Message----- > > From: Ulrich Bangert <[email protected]> > > To: 'Discussion of precise time and frequency measurement' > > <[email protected]> > > Sent: Sat, Mar 31, 2012 2:53 pm > > Subject: Re: [time-nuts] CW12-TIM vs M12M and the world > > > > > > Bert, > > sometimes a manual can be a true treasure chest! Just > > download the PRS-10 anual at > > http://www.thinksrs.com/downloads/PDFs/Manuals/PRS10m.pdf > > and find starting on page 13 the complete instructions on how > > to build your wn GPSDO. A basic knowledge of math, > > programming and control theory is eeded to understand the > > manual but then: It works. I have constructed my own DIY > > GPSDO on the base of the information that I have found there, > > ncluding the pre-filter. Best regards lrich > > > -----Ursprungliche Nachricht----- > > Von: [email protected] > > [mailto:[email protected]] Im Auftrag von [email protected] > > Gesendet: Samstag, 31. Marz 2012 13:46 > > An: [email protected] > > Betreff: Re: [time-nuts] CW12-TIM vs M12M and the world > > > > > > Ulrich > > can you tell us more about your pre filter? > > Thank you > > Bert Kehren > > > > > > In a message dated 3/31/2012 6:23:49 A.M. Eastern Daylight Time, > > [email protected] writes: > > > > Thomas, > > > > > Has anyone compared the M12M to the M12+? > > > > I have done some measurements on the M12+ with typical > > results as shown in > > > > http://www.ulrich-bangert.de/M12Performance.jpg > > > > The red line is the raw phase data of the M12's PPS against > > a PPS derived from a local FRK-L rubidium. Note that you do > > not observe an overall difference frequency (and a resulting > > drift in phase) because the FRK-L is disciplined by the GPS. > > The blue line is the sawtooth corrected phase data and it > > becomes immediatly clear HOW IMPORTANT applying the > > correction is. The yellow line show you what happens if the > > sawtooth corrected phase data is sent through a pre-filter > > (lowpass with 1/3 the time constant of the > > main > > pll loop) before entering the loop itself. That is something > > that I learned from the PRS-10 manual. You may decide on > > your own which data you would > > like > > to work on in a GPSDO. > > > > Best regards > > Ulrich Bangert > > > > > -----Ursprungliche Nachricht----- > > > Von: [email protected] > > > [mailto:[email protected]] Im Auftrag von Tom > > Knox > Gesendet: Freitag, 30. Marz 2012 22:19 > An: > > Time-Nuts > Betreff: Re: [time-nuts] CW12-TIM vs M12M and > > the world > > > > > > > > > > Has anyone compared the M12M to the M12+? > > > Thanks for all the input, it is really appreciated. > > > best wishes; > > > Thomas Knox > > > > > > > > > > > > > CC: [email protected] > > > > From: [email protected] > > > > Date: Fri, 30 Mar 2012 09:53:17 -0700 > > > > To: [email protected] > > > > Subject: Re: [time-nuts] CW12-TIM vs M12M and the world > > > > > > > > Hello Ed, Azelio, > > > > > > > > We should also compare the same parameters. Sawtooth > > error > of the m12+ > > of +/-25ns is not its standard > > deviation, it's max/min. > Compare that > > number to your > > 30ns max/min measurement on the 5372a. > > > > > > Standard deviation of the m12+ is around 2ns with > > correction. That > > > > needs to be compared to the 5ns you measure on the 5372a > > as that is > > > > the best performance you will get from the CW12. Yes the > > > uncorrected > > > > 1pps of the m12 is worse, but it is designed to be used > > with > > correction. So in the end the m12m still performs better > > than the > > > > CW12. > > > > > > > > Bye, > > > > Said > > > > > > > > Sent From iPhone > > > > > > > > On Mar 29, 2012, at 1:56, Azelio Boriani > > <[email protected]> > > > > wrote: > > > > > > > > > We (that is my company) use the CW12-TIM (NMEA > > version) > and its PPS > > > > > wonders as usual, nothing different from a uBlox > > LEA-5T > or the M12M. > > > > > > > > On Thu, Mar 29, 2012 at 9:32 AM, Hal Murray > > > > > <[email protected]> wrote: > > > > > > > > > >> > > > > >>>> The sawtooth error on the Motorola M12+ is about > > +/- > 25ns, while > > >>>> the CW12-TIM has a sawtooth > > error of +/- 2 ns, so > correcting for > > >>>> the > > sawtooth error is not as critical with the CW12-TIM. > > >> > > > > >>> The first claim > > > > >>>> The sawtooth error on the Motorola M12+ is about > > +/- 25ns > > >>> is correct but are you absolutely sure that the > > second claim is > > > > >>> correct too????? > > > > >> > > > > >>> It would mean a factor >10 improvement of the > > CW12-TIM > against the > > >>> M12 > > >> which > > >>> > > is hardly believeable. > > >> > > > > >> The 25 ns probably comes from period of the the free > > > running clock > > > > >> they are using. It doesn't seem unreasonable to me > > to get 10x > > > > >> better if they use a GPSDO for the local clock so > > they > can get the > > >> PPS edge right where they want > > it. > > >> > > > > >> > > > > >> > > > > >> -- > > > > >> These are my opinions, not necessarily my > > employer's. I > hate spam. > > >> > > > > >> > > > > >> > > > > >> > > > > >> _______________________________________________ > > > > >> time-nuts mailing list -- [email protected] > > > > >> To unsubscribe, go to > > > > >> https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts > > > > >> and follow the instructions there. > > > > >> > > > > > _______________________________________________ > > > > > time-nuts mailing list -- [email protected] > > > > > To unsubscribe, go to > > > > > https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts > > > > > and follow the instructions there. > > > > > > > > _______________________________________________ > > > > time-nuts mailing list -- [email protected] > > > > To unsubscribe, go to > > > > https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts > > > > and follow the instructions there. > > > > > > _______________________________________________ > > > time-nuts mailing list -- [email protected] > > > To unsubscribe, go to > > > https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts > > > and follow the instructions there. > > > > > > _______________________________________________ > > time-nuts mailing list -- [email protected] > > To unsubscribe, go to > > https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts > > and follow the instructions there. > > > > _______________________________________________ > > time-nuts mailing list -- [email protected] > > To unsubscribe, go to > > https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts > > and follow the instructions there. > > > > ______________________________________________ > > ime-nuts mailing list -- [email protected] > > o unsubscribe, go to > > https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts > > nd follow the instructions there. > > > > _______________________________________________ > > time-nuts mailing list -- [email protected] > > To unsubscribe, go to > > https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts > > and follow the instructions there. > > > _______________________________________________ > time-nuts mailing list -- [email protected] > To unsubscribe, go to > https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts > and follow the instructions there. > _______________________________________________ time-nuts mailing list -- [email protected] To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
