I wonder @Scroungre if you are using my memory delay test with a 25MHz crystal fitted on the KISS board but still have the test code assuming a 20MHz crystal. If that were the case then the test code trying to operate at 300MHz would in reality be 375Mhz which is about where the P2 taps out.
You might need to change this line
CLKIN_HZ = 20000000 ' assume 20MHz crystal by default
to this
CLKIN_HZ = 25000000 ' assume 25MHz crystal by default
@Cluso99 said:
From my tests, I found the top overclocking speed is a hard fail. That is, almost every instruction fails! Serial doesn't work etc. FWIW I was testing my SD driver and as soon as I got to the frequency, everything failed. This is expected though. OnSemi designed the chip t meet a timing spec so Chip said he expected all circuits to fail at pretty much the same time.
Chip tuned the revB PLL to self-limit to undercut that point. I'm not 100% confident in the PLL always being low enough but the Prop2 does still run when pushing against this self-limiting.
The problem with async-serial is the timing drops off when the PLL does this. At a certain percentage off the receiver reads garbage.
CLKIN_HZ = 25000000 ' assume 25MHz crystal by default
Way ahead of you there. Had to fix that or the baud rates wouldn't work.
I agree - it seems to be a very 'hard' fail. It's VERY consistent, on the first try or the 20th. Almost like there's a little circuit in there that says "Nope, no more." and throws like a switch. S.
CLKIN_HZ = 25000000 ' assume 25MHz crystal by default
Way ahead of you there. Had to fix that or the baud rates wouldn't work.
I agree - it seems to be a very 'hard' fail. It's VERY consistent, on the first try or the 20th. Almost like there's a little circuit in there that says "Nope, no more." and throws like a switch. S.
It's very weird. I wonder if it is something in the calculation of the PLL values with 25MHz crystal doing something weird.
You could try to print them out in the code before the PLL gets switched to make sure they are valid values to use. With any luck we might be talking about a software bug in my PLL parameter calculation code rather than a problem with the KISS board itself, if you are just using my code to trigger this issue.
I observed the same phenomenon with other programs too. I started with some very basic stuff (flash LEDs, send glop out the terminal, other sample code, &c.) with nothing plugged in except the programmer* "Just to see if the KISS worked" - and it didn't, until I pulled the top clock rate down. I don't think it's your code.
I'll get on the frequency tests soon. S.
Incidentally, I concur with the KISS idea to leave the programmer on a separate module. My PropPlug seems to work okay.
It's very weird. I wonder if it is something in the calculation of the PLL values with 25MHz crystal doing something weird.
It might be. When I slow the baud rate down as far as I can and still get intelligent text (4800) it says something about 'Clock not available, Exiting', but it happens far too fast for me to actually read it before it clears the serial terminal text window. Things keep getting weirder... S.
Edited to add: It says
299000000 (12) 0 0 0 0 0 0 0 0 100 100 100
300000000 (12) 0 0 0 0 0 0 0 0 100 100 100
Frequency 301000000 is unattainable, stopping
Exiting
Press enter to continue...
when I get it to run under the flexspin compiler and its terminal window. Previously I was using the Propellor Terminal, and it just went past far too fast to see, let alone copy down, even at 4800 baud. This is being weird. It might be your code after all... S.
For Sysclk above 300 MHz, 4800 bps is really not a good value (300,000,000 / 4,800 = 62,500; too near the 65535 numerical limit (16 bits)), so better keep it at 9600 bps, and above.
P.S. Of course, 7200 bps can still be used, up to 400 MHz (in case such a high Sysclk can ever be attained).
%DDDDDD 0..63 1..64 division of XI pin frequency to PFD
%MMMMMMMMMM 0..1023 1..1024 division of VCO frequency to PFD
The VCO frequency should be kept within 100MHz to 350MHz.
So a 1MHz PFD is valid. Generally, higher PFD give less jitter, but I think values right up to the max divider of 64 will still lock.
Does it accept 305MHz ? (Gives a PFD of 5MHz from 20MHz or 25MHz xtals)
At this time it looks like the KISS0000 I have (both of them - I bought two) are working fine at 350MHz. Exactly what was wrong is still not entirely clear, but it does look like software.
Thanks for all the help, guys! S.
PS - That clock speed testing code posted to the Hyper-ram driver thread (post #895) should probably be reposted here. I'll leave that to evanh, the OP.
@Scroungre said:
I'm afraid that sooner or later, Mr. Benezan will have to bite the bullet and buy some 20MHz crystals. Yeah, it'll break code compatibility - but it's what Parallax does, and they built the darn chip, so presumably they know what they are doing. S.
I promise that won't happen. The boards are as they are. Anybody who is not happy with them can return them and I will refund the money.
I've just done a quick test and my board runs well at 325MHz. I used this code:
It divides the system clock of 325MHz by 10 and outputs a square wave of 32.5MHz on pin 36. I verified that with the scope and it works. Ok, you say this is cheap? I've also run the LCD graphics demo at 325MHz. It also works very well and stable.
I do not claim that this is the best P2 board ever built. If you try hard (toggeling many pins, using many cogs and lot's of memory bandwidth...) you can surely come up with cases where more expensive boards perform better. But if you need to push it to the limits you should prepare for spending more money. I also wouldn't go racing with my old Volkswagen car...
@ManAtWork said:
...
Anybody who is not happy with them can return them and I will refund the money.
...
Man stands behind his product 100% and rightly so but hey, you won't see any of my KISS boards coming back to you ever.
I do not claim that this is the best P2 board ever built...
Well, let's just say it's the best P2 board ever built and available at this professional quality and with this price tag up to date ( donations do not count, obviously) that runs happily with the 25 MHz crystal up to 350 MHz confirmed. That's how I see it.
Both of my KISS boards purr along like kittens at 350MHz using evanh's 'clock frequency testing code'. You (well, Publison, because I bought them through him) may keep my money, and I'll keep the boards.
They're awesome boards as they are - and if you don't want to change, you don't have to. Carry on!
OMG I'm swamped with enough P2 HW right now. P2ME2, P2-EVALs and a P2-Edge. Though I will definitely accept a final P2-Edge with on board PSRAM for testing.
@evanh said:
Roger needs one to stress test his driver code.
If he wants an adapter, a 'port spacing board', I'll cheerfully mail him one. Ask really nicely, and I'll stick down connectors on it too... My soldering may not be expert. S.
A lot of KISS boards still are in stock. So hurry if you want to play one as it may take some time to get it, due to lack of gas or snails in front of the delivery cars that can not be overtaken ;-)
If I only had a budget this big I'd take them all. All of each version.
Fantastic boards. That much I can tell from my experience.
Let me be frank, I once seriously considered making my own P2 board but I'm really grateful I still have those few P2 chips on the tray.
The thing is, you really stand no chance to design and make such a quality board if you're not experienced nor tooled enough. Unless you want to experience what it means and costs to make such a board. I let that desire pass and I'm glad I did.
So true. The Prop2 needs much more detailed layout skills/knowledge/equipment than the Prop1. Discrete component sizes are getting so small too. Need a clean-room to find any dropped component.
@Scroungre said:
... I built a little 'adapter board' so you can use Parallax P2 modules that use two adjacent connectors. It's real simple, and it will only fit in two places - it's left-handed. You need right-handed ones if you want to use all eight connectors. Here's a couple little pictures - the boards by themselves, and with a HyperRam card plugged in.
Let me know if anyone's interested, and I'll post the Eagle files and/or Gerbers for the lil' thingy. 'ta! S.
It took a while, I had to investigate what would be the best way to make those boards available to other members. See this thread. If you are willing to share them please send me the Eagle files (email to info@benezan.de). Or you could also upload them to OshPark and Aisler and post the links here.
Is anybody outside the USA still waiting for response or delivery of an order from ErNa/nascma? I have some spare boards and could jump in to fill the gap if required.
Comments
I wonder @Scroungre if you are using my memory delay test with a 25MHz crystal fitted on the KISS board but still have the test code assuming a 20MHz crystal. If that were the case then the test code trying to operate at 300MHz would in reality be 375Mhz which is about where the P2 taps out.
You might need to change this line
to this
Chip tuned the revB PLL to self-limit to undercut that point. I'm not 100% confident in the PLL always being low enough but the Prop2 does still run when pushing against this self-limiting.
The problem with async-serial is the timing drops off when the PLL does this. At a certain percentage off the receiver reads garbage.
Way ahead of you there. Had to fix that or the baud rates wouldn't work.
I agree - it seems to be a very 'hard' fail. It's VERY consistent, on the first try or the 20th. Almost like there's a little circuit in there that says "Nope, no more." and throws like a switch. S.
It's very weird. I wonder if it is something in the calculation of the PLL values with 25MHz crystal doing something weird.
You could try to print them out in the code before the PLL gets switched to make sure they are valid values to use. With any luck we might be talking about a software bug in my PLL parameter calculation code rather than a problem with the KISS board itself, if you are just using my code to trigger this issue.
I observed the same phenomenon with other programs too. I started with some very basic stuff (flash LEDs, send glop out the terminal, other sample code, &c.) with nothing plugged in except the programmer* "Just to see if the KISS worked" - and it didn't, until I pulled the top clock rate down. I don't think it's your code.
I'll get on the frequency tests soon. S.
It might be. When I slow the baud rate down as far as I can and still get intelligent text (4800) it says something about 'Clock not available, Exiting', but it happens far too fast for me to actually read it before it clears the serial terminal text window. Things keep getting weirder... S.
Edited to add: It says
when I get it to run under the flexspin compiler and its terminal window. Previously I was using the Propellor Terminal, and it just went past far too fast to see, let alone copy down, even at 4800 baud. This is being weird. It might be your code after all... S.
Hi Scroungre
For Sysclk above 300 MHz, 4800 bps is really not a good value (300,000,000 / 4,800 = 62,500; too near the 65535 numerical limit (16 bits)), so better keep it at 9600 bps, and above.
P.S. Of course, 7200 bps can still be used, up to 400 MHz (in case such a high Sysclk can ever be attained).
301 MHz should be legal ?
The DOCs say this
So a 1MHz PFD is valid. Generally, higher PFD give less jitter, but I think values right up to the max divider of 64 will still lock.
Does it accept 305MHz ? (Gives a PFD of 5MHz from 20MHz or 25MHz xtals)
Some progress - https://forums.parallax.com/discussion/comment/1528878/#Comment_1528878
@Scroungre I've answered this in the HyperRAM thread, probably until it known to be KISS related we can continue the discussion there.
At this time it looks like the KISS0000 I have (both of them - I bought two) are working fine at 350MHz. Exactly what was wrong is still not entirely clear, but it does look like software.
Thanks for all the help, guys! S.
PS - That clock speed testing code posted to the Hyper-ram driver thread (post #895) should probably be reposted here. I'll leave that to evanh, the OP.
https://forums.parallax.com/discussion/171176/hyperram-driver-for-p2#895
I promise that won't happen. The boards are as they are. Anybody who is not happy with them can return them and I will refund the money.
I've just done a quick test and my board runs well at 325MHz. I used this code:
It divides the system clock of 325MHz by 10 and outputs a square wave of 32.5MHz on pin 36. I verified that with the scope and it works. Ok, you say this is cheap? I've also run the LCD graphics demo at 325MHz. It also works very well and stable.
I do not claim that this is the best P2 board ever built. If you try hard (toggeling many pins, using many cogs and lot's of memory bandwidth...) you can surely come up with cases where more expensive boards perform better. But if you need to push it to the limits you should prepare for spending more money. I also wouldn't go racing with my old Volkswagen car...
Man stands behind his product 100% and rightly so but hey, you won't see any of my KISS boards coming back to you ever.
Well, let's just say it's the best P2 board ever built and available at this professional quality and with this price tag up to date ( donations do not count, obviously) that runs happily with the 25 MHz crystal up to 350 MHz confirmed. That's how I see it.
It's the software incompatibility, that's all.
Both of my KISS boards purr along like kittens at 350MHz using evanh's 'clock frequency testing code'. You (well, Publison, because I bought them through him) may keep my money, and I'll keep the boards.
They're awesome boards as they are - and if you don't want to change, you don't have to. Carry on!
S.
Roger needs one to stress test his driver code.
OMG I'm swamped with enough P2 HW right now. P2ME2, P2-EVALs and a P2-Edge. Though I will definitely accept a final P2-Edge with on board PSRAM for testing.
If he wants an adapter, a 'port spacing board', I'll cheerfully mail him one. Ask really nicely, and I'll stick down connectors on it too... My soldering may not be expert. S.
A lot of KISS boards still are in stock. So hurry if you want to play one as it may take some time to get it, due to lack of gas or snails in front of the delivery cars that can not be overtaken ;-)
If I only had a budget this big I'd take them all. All of each version.
Fantastic boards. That much I can tell from my experience.
Let me be frank, I once seriously considered making my own P2 board but I'm really grateful I still have those few P2 chips on the tray.
The thing is, you really stand no chance to design and make such a quality board if you're not experienced nor tooled enough. Unless you want to experience what it means and costs to make such a board. I let that desire pass and I'm glad I did.
So true. The Prop2 needs much more detailed layout skills/knowledge/equipment than the Prop1. Discrete component sizes are getting so small too. Need a clean-room to find any dropped component.
Shiping costs have been updated, see "how to order" in the first post.
It took a while, I had to investigate what would be the best way to make those boards available to other members. See this thread. If you are willing to share them please send me the Eagle files (email to info@benezan.de). Or you could also upload them to OshPark and Aisler and post the links here.
There are 18 K0001 and 9 K0000 still available for North America shipping.
KISS0000 without SD for $23.50+$5.15 First Class mail in a padded envelope.
KISS0001 with SD for $29.50+$5.15 First Class mail in a padded envelope.
Shipments to Canada is $14.75 base on my last shipment.
@Publison Jim,
Do you still have kiss0000 boards & what is current price with shipping?
Jim
I have 9 KISS0000 boards. $23.50 each plus $5.15 shipping
Current stock and pricing?
Sent PM
Is anybody outside the USA still waiting for response or delivery of an order from ErNa/nascma? I have some spare boards and could jump in to fill the gap if required.
Yes, please see my comment in the Ethertnet PHY Accessory board thread.
I think ErNa might be busy with much more important (to him) activities.