Ok,
1. what are the consequences of changing from an internal clock to the external? I thought it is Ok by the manual.
2. if Ok, then what or who can stop me from establishing my frequency (XTAL+PLL) ?
2a - where is here their runt pulse?
I think the Prop has proper clock hand-over when doing the Internal/external boundary crossing, in either direction.
Think of that as runt-pulse-avoidance.
The case to avoid is a live change by simple change-over of two externals.
Running internal while that is done, should be ok.
Note It does need a i2c config file load step.
You can order them with a Power-Up set value (OTP), and it could make sense for Parallax to stock parts pre-set to 5.000MHz & maybe 6.00, 6.25MHz ?
Just a question - at what frequences (discrete or continuous) the Propeller works?
The manual says AFAIK about boundary values.
Does Propeller work at any frequency inside the boundaries?
If no, what is about precize values in between known boundaries?
Not quite sure what you are asking, but Prop has an analog PLL, which means there are no quanta on the frequencies, it can lock to 5.000MHz(x16), or 5.00010Mhz (x16)
The boundary values spec how far the PLL can range.
Phil, Is there a standard solution to avoid getting the runt pulse ?
I suppose you could use the output of a phase comparator to tell you when it's safe to make the switch -- assuming you can't just use the internal clock as an interim between the two external clocks.
If you switch the clock at the input of a PLL you should not get such a runt pulse. There is a lowpass filter in the feedback of the PLL which should make a smooth transition from the old to the new VCO frequency. It just takes a bit of time until the PLL is locked again and the new frequency is stable.
So with PLL clock modes a switch of the input may well work. I have not done it with the Propeller but with PLLs inside FPGAs.
The Propeller can generate the pixel-clock for VGA anyway with an internal NCO + PLL, so I'm not sure you really need to switch the Prop input clock for different VGA modes.
Yes, some of Kuronekos drivers need a fixed timing between pixel clock and instruction rate, but there are many other VGA drivers which are independent of the instruction rate.
Maybe it's possible to use a DS1077 to clock the prop?
Or -- and I'd have thought that it would be the obvious suggestion -- use a 2nd Prop. MCU as a clock generator. A bit more expensive perhaps (particularly in PCB real estate), but chances are you find other uses for the remaining pins of that MCU and you might have it already at hand.
Comments
I think the Prop has proper clock hand-over when doing the Internal/external boundary crossing, in either direction.
Think of that as runt-pulse-avoidance.
The case to avoid is a live change by simple change-over of two externals.
Running internal while that is done, should be ok.
A nice part for variable clocks is the Si5351A,
https://www.adafruit.com/products/2045
Note It does need a i2c config file load step.
You can order them with a Power-Up set value (OTP), and it could make sense for Parallax to stock parts pre-set to 5.000MHz & maybe 6.00, 6.25MHz ?
Not quite sure what you are asking, but Prop has an analog PLL, which means there are no quanta on the frequencies, it can lock to 5.000MHz(x16), or 5.00010Mhz (x16)
The boundary values spec how far the PLL can range.
-Phil
So with PLL clock modes a switch of the input may well work. I have not done it with the Propeller but with PLLs inside FPGAs.
The Propeller can generate the pixel-clock for VGA anyway with an internal NCO + PLL, so I'm not sure you really need to switch the Prop input clock for different VGA modes.
Yes, some of Kuronekos drivers need a fixed timing between pixel clock and instruction rate, but there are many other VGA drivers which are independent of the instruction rate.
Andy
Surely, I will check input frequence-switching capabilities of a Propeller.
But it is amazing that nobody still have the answers yet...
Or -- and I'd have thought that it would be the obvious suggestion -- use a 2nd Prop. MCU as a clock generator. A bit more expensive perhaps (particularly in PCB real estate), but chances are you find other uses for the remaining pins of that MCU and you might have it already at hand.