Some overclocking :) -- some illusions :(
pik33
Posts: 2,366
In the file "top.tdf" (in my current version "prop.pdf" because the top is the prop + rs232+video circuit on DE2-115) I changed
clk0_divide_by = 5
to
clk0_divide_by = 3
getting the Propeller clocked at 133 MHz...
Then in the video driver:
_clkmode = xtal1+pll16x
_clkfreq = 133_333_000
It works !!!! It works fast...
Edit: failed @ 150 MHz. Propeller found, programmed but not running.
Edit2: 141.667 MHz (pll*17/3) works
clk0_divide_by = 5
to
clk0_divide_by = 3
getting the Propeller clocked at 133 MHz...
Then in the video driver:
_clkmode = xtal1+pll16x
_clkfreq = 133_333_000
It works !!!! It works fast...
Edit: failed @ 150 MHz. Propeller found, programmed but not running.
Edit2: 141.667 MHz (pll*17/3) works
Comments
FYI Saphiea had a real prop running at 120MHz. I regularly run at 104MHz although IIRC I have had it running at 14.31818MHz.
I did some tests a few years ago with overclocking a real Propeller.
See my results here...
Keep up the good work......
< Shuffles off to find out where I put my DE2 board >
Now I have DE2 run @ 150 MHz... let's try 160... compiling.
Edit: @160 it cannot work. Maybe it is 320 MHz PLL clock which is too high. Maybe changing internal fake pll clock to cogx1 will help
Good luck with your experiments...
I'm just trying out GEAR (Propeller emulator written in C#) so I can learn some more about the inner workings of it all.
Over clocking generates more heat , wouldn't the larger DIP surface area help run it cooler?
- fake pll clock is now 300 MHz. It is fast for this fpga.
- rcfast seems to be too fast. I tried to patch this, but no success.
Starting to learn AHDL to understand all these statements in top and tim.
Note that the cog ALU settles over two clocks and the hub gets its ena signal every other clock. If you were to make multicycle=2 assignments for those paths, the compiler could optimize the other stuff that really needs it and you could maybe get 200MHz on the FPGA, even though the compiled Fmax might only be 160MHz.
How to do this? This 150 MHz is my current experimental maximum, not something reported by the compiler.
The smptom of lacking stability was losing connection with PC. So I tried to slower RCFAST clock (by 2) but this give no result. I also tried to set PLL:COG clocks as 1:1. Still ended about 150 MHz.
You have to make a top.sdc file that has design constraints in it. It's a world unto itself.
After compiling, click on the clock to open the timing analyzer. Learn as you go.
Edit: The Propeller can be detected @ 190 MHz, but the VGA demo cannot run.
I was already looking longingly at that board. Wifey will not be happy... but I feel my FPGA dev board collection may need to increase.
The bad thing is the SD slot is on HPS side.
About wife and money spent on this kind of toys... ..they are expensive here, DE2-115 costs more than my month salary... the salvage is that I work at the university, so they can buy them for me for my scientific research... and then I can do what I want with them if only I can publish some scientific papers These boards are easily available here. The Propeller is not. It is all exotic thing.
Hi Pik,
I was looking at the manual for this board and it looked like all the GPIO pins can be connected to the HPS ARM Processor. Can they all be assigned to the FPGA as well? You wouldn't be able to use it for a P1V if you couldn't make the pins connect to the FPGA so obviously at least some of them can be used that way. How is the assignment done? Configuration file?
Are you planning to combine the four flaky Linux versions into one that works?
The idea of a Linux OS connected to one or more P1Vs that, in turn, connect internally to other fabricated functions on the FPGA sounds like a system with a lot of capacity.
Distro #2: with qt installed, but without gcc
Distro #3: X, lxde, buggy config, trying to upgrade gives a lot of 404 errors
Distro #4: Ubuntu. With broken ethernet driver.
The best seems to be #1. Ubuntu may be good too, if only the ethernet driver can be copied from #3. #2 would be good if only it has gcc.
To make a linux powered Prop you have to use qsys, create a soc with HPS, add some parallel or serial ports, then connect the propeler to these ports. Then compile all of this, make a rbf file, put it on SD with the Linux system and boot.
You can then access your Propeller via these ports. They are memory mapped.
With not working programming tools you have to follow the manual and install the toolchain on a virtual machine on your PC. It took me 2 days. Then you have to write the QT application on the PC, cross-compile it for ARM, move (via Ethernet, scp command) to the SD on the board, then run. A very complex way to do the work.
I got this board some weeks ago and then I left all of this because Parallax published the free propeller code. I will have to return to this, I need it for my work, but then I want to have the Propeller onboard, too. I think I will use this simplest Linux distro to get the access to the computing power of ARM and the access to the filesystem and 1 GB of its RAM
All gpio pins are connected to fpga. You can access them with the ARM when you create a SOC with QSYS, create a parallel (or serial) port, and connect them to this port
Hmmm. Sounds like a lot of not so fun work. I like that the SOC has two 40 pin dual GPIO headers vs: only one on the GX starter kit. But if the goal is to connect the P1V to FPGA widgets then that could be done easily enough with a virtual B port - no need to bring the pins out, right? Of course that begs the question of how those widgets connect to the board. The GX is provisioned to allow connecting Arduino shields so that provides some additional IO pins.
Maybe the thing to do is create a custom design that contains a map to bring out only the required pins for the specific application. Some of the GPIO pins will connect directly to the P1V but others will be inputs to customized widgets on the FPGA that then connect to the P1V. I keep having to remind myself that I can configure the FPGA to be just the way I want it.
Did you look at the GX starter kit and decide against it or did you have a particular need for the HPS of the DE1?
DE1-soc has a real gpio
http://forums.parallax.com/showthread.php/156954-A-DE2-115-Propeller-demo-board-project-now-programmable-with-the-Propplug
Here I am connecting p1v to some other things on the board. Now SD, VGA, keyboard and sound are running on DE2-115
You're right. I went back and read the GX docs a little better and the GPIO on it leaves a lot to be desired. Many of the lines are shared between the GPIO, LEDs and Arduino. And Digikey has just raised the price of the GX from $180 to $200. It's certainly worth $11 more for real IO pins and the knowledge that it can run P1Vs at 180mhz.
Your referenced project above won't open under Quartus 13.0 so I'll have to try it with Quartus 14 using W7/64. It will be interesting to see how you've connected to the FPGA.