Skarden
Newbie
Offline
Posts: 31
Thank You
-Given: 20
-Receive: 26
|
|
« on: January 08, 2013, 07:47:24 07:47 » |
|
Hello all, does someone of you tried to overclock a PIC32 ? I'm curious to know what is the maximum acheivable speed. I tried with a PIC32MX150F128B and I was able to have a stable configuration @ 68MHz.
Please reports your tests .
Thanks
|
|
|
Logged
|
|
|
|
mitsos
Hero Member
Offline
Posts: 860
Thank You
-Given: 3090
-Receive: 4596
|
|
« Reply #1 on: January 08, 2013, 10:05:27 22:05 » |
|
hi
I have some samples of this pic but no means to program it.
Can you tell me if there is a home-made programmer (jtag is also a must)
regards mitsos
|
|
|
Logged
|
|
|
|
solutions
Hero Member
Offline
Posts: 1826
Thank You
-Given: 656
-Receive: 905
|
|
« Reply #2 on: January 09, 2013, 05:16:06 05:16 » |
|
Hello all, does someone of you tried to overclock a PIC32 ? I'm curious to know what is the maximum acheivable speed. I tried with a PIC32MX150F128B and I was able to have a stable configuration @ 68MHz.
Please reports your tests .
Thanks
Voltage, temperature, lot code, benchmarking program, etc? What's the point of overclocking if nobody else knows the environment you did it in, or the criterion to say it works?
|
|
|
Logged
|
|
|
|
Skarden
Newbie
Offline
Posts: 31
Thank You
-Given: 20
-Receive: 26
|
|
« Reply #3 on: January 09, 2013, 08:29:50 08:29 » |
|
Hello, I did all my tests on a pic32mx150f128B filled with around 85% of code (and around 50% of ram). The voltage was 3.3V and the temperature was the normal room temperature (max 30 deg in the summer). The chip don't seems to suffer of overheating as it remains cold. The whole was just running at 40MHz (as per the chip tech spec) and I simply increased the speed of the pic checking that my application was still running properly and I found the limit at 68MHz. My application contains a TCP/IP stack using an external ethernet module enc28j60 with web 2 servers and a TCP server, a 4 lines LCD, a TFT display with touch screen, a wav player, an IR RC decoder, a 2 phase rotary encoder, serial port interface, an SD card with Microchip file system. I use also 2 expanders 23S17 for the LCD and the TFT display (320x240@65K colors). I can confirm that, even if I didn't "scientifically" mesured the performances after the overclock, it runs really faster than before (theoretically the performance increase should be of 170%!). Hoping this can help. Regards Posted on: January 09, 2013, 09:23:59 09:23 - Automerged
hi
I have some samples of this pic but no means to program it.
Can you tell me if there is a home-made programmer (jtag is also a must)
regards mitsos
@ mitsos I use the pickit3 and mplabx + c32 (and recently the xc32). You can buy a clone of the pickit 3 on bay for less than 30 Euros. The pickit 3 permit also to debug your code so it's really a big help. I discovered the pic32mx150f128b since some months and I really love this chip as you have a 32bits core with a lot of peripherals inside a 28 pins DIP; plus you have 128KB of rom and 32KB of ram. I'm actually playing with the 32mx250 that includes an usb interface. It's a real step foreward compared to the classic PIC. For all that want start with this chip, there is a very good tutorial on another forum. As it's not allowed to post a link to another forum, I can simply suggest to look for "PIC32MX Quickstart - A Tutorial for Hobbyists" with google. Regards
|
|
« Last Edit: January 09, 2013, 09:34:05 09:34 by Skarden »
|
Logged
|
|
|
|
solutions
Hero Member
Offline
Posts: 1826
Thank You
-Given: 656
-Receive: 905
|
|
« Reply #4 on: January 09, 2013, 04:35:54 16:35 » |
|
Hello, I did all my tests on a pic32mx150f128B filled with around 85% of code (and around 50% of ram). The voltage was 3.3V and the temperature was the normal room temperature (max 30 deg in the summer). The chip don't seems to suffer of overheating as it remains cold. If you want speed, you should be running it, legitimately, at 3.6V. If you want to overclock, you could run it up to 4V...a bit more if you are willing to risk destroying the chip. Even more speed can be had by cooling the chip down. There's a community of geeks that love to benchmark such tricked out systems: http://www.anandtech.com/show/4770/amd-sets-world-overclocking-record-with-8429ghz-bulldozer-processorMind you, hobbyists don't have AMD's deep pockets in being able to use liquid helium, so liquid nitrogen is the choice de jour: http://rog.asus.com/183622012/overclocking/8-67ghz-fx-8350-and-more-as-rog-smashes-world-records/And yes, there are margins on datasheet specs, like max clock frequency, to ensure yield at the factory, so your results are not surprising. When the parts are characterized, lots are run in fast and slow "corners" of the process intentionally (tweaking "knobs" in the fab) to ensure the designs have margin. Then guys like me argue with the manufacturing engineers to get you the highest rated, guaranteed, semiconductor performance out the door. In some cases, we'll create "speed grades" where the factory actually tests speed, and "bins" the parts accordingly. Same goes for extended temperature. Was a time Intel just charged more and it was the very same chip. They, and other people I've actually worked for, got wise and started building in circuitry to limit overclockers who were trying to get cheaper parts. We used to actually build the limiter in the SOFTWARE tools - it was completely BS, chipwise, and the part was just an expensive one put in a different package and given a different name....for HALF the price. Your problem is not knowing what "speed grade" of process your part came from. You could have gotten a "fast" lot, which would be a disaster, productwise, if you relied upon your one bench result and started running hundreds of your design in production. On the other hand, if you had "slow" material on your bench test, you could possibly get speeds as high as 100MHz. Possibly. In other words, YMMV and don't bet the farm on one measurement....or even a hundred. Processes shift, even if your results look repeatable, though they remain between the "fast" and "slow" material specs.
|
|
|
Logged
|
|
|
|
Skarden
Newbie
Offline
Posts: 31
Thank You
-Given: 20
-Receive: 26
|
|
« Reply #5 on: January 09, 2013, 08:01:38 20:01 » |
|
Increasing the supply voltage should not have any effects on the CPU core as it's supplied internally with a 1.8V regulator. This means that, increasing the power supply, you'll have an effect only on the internal peripherals (SPI, RTC, PWM, ..) that could also be the cause of the overclock crash. That said, we could increase the core voltage "forcing" an higher voltage on the regulator pin but this probably risk to burn the internal regulator. At the same time this will oblige to put another regulator on the circuit just for the core and risks to become complicate.
Maybe I'll give a try.
|
|
|
Logged
|
|
|
|
jekrmi99
Newbie
Offline
Posts: 16
Thank You
-Given: 144
-Receive: 13
|
|
« Reply #6 on: March 10, 2013, 02:44:33 14:44 » |
|
Hello,
I have big project(spectrum analyzer) actual is 50% of the memory program used(32mx795F512L) and an display 640X480 with the SSD1963. The refresch time is 43mS for trace with pic clock at 80MHz and 38mS with clock at 96MHz(i use the intern fast RC oscillator with PLL) and at the time i have no problem it is never freeze and the pic temperature is normal. 96Mhz is the maximum with fast rc oscilator with multiplier of X24. The spectrum is from 9Khz to 22Ghz.
|
|
|
Logged
|
|
|
|
sarah90
Active Member
Offline
Posts: 111
Thank You
-Given: 7
-Receive: 11
|
|
« Reply #7 on: March 11, 2013, 07:07:04 19:07 » |
|
I have big project(spectrum analyzer) actual is 50% of the memory program used(32mx795F512L) and an display 640X480 with the SSD1963. The spectrum is from 9Khz to 22Ghz.
Could you tell a bit more about your project? Sounds really interesting.
|
|
|
Logged
|
|
|
|
solutions
Hero Member
Offline
Posts: 1826
Thank You
-Given: 656
-Receive: 905
|
|
« Reply #8 on: March 12, 2013, 09:24:06 09:24 » |
|
Increasing the supply voltage should not have any effects on the CPU core as it's supplied internally with a 1.8V regulator. This means that, increasing the power supply, you'll have an effect only on the internal peripherals (SPI, RTC, PWM, ..) that could also be the cause of the overclock crash. That said, we could increase the core voltage "forcing" an higher voltage on the regulator pin but this probably risk to burn the internal regulator. At the same time this will oblige to put another regulator on the circuit just for the core and risks to become complicate.
Maybe I'll give a try.
if you jack the high supply and the regulator output together, the regulator might not see what you are doing. Posted on: March 12, 2013, 09:18:06 09:18 - Automerged
Hello,
I have big project(spectrum analyzer) actual is 50% of the memory program used(32mx795F512L) and an display 640X480 with the SSD1963. The refresch time is 43mS for trace with pic clock at 80MHz and 38mS with clock at 96MHz(i use the intern fast RC oscillator with PLL) and at the time i have no problem it is never freeze and the pic temperature is normal. 96Mhz is the maximum with fast rc oscilator with multiplier of X24. The spectrum is from 9Khz to 22Ghz.
You should be using a dsPIC, IMO. The PIC may be able to do it, but the service calls and flakey operation with overcocking will get you a bad name pretty quickly if this is going to be a product. The right tool for the job - not one that does the core function half-assed and is chosen just because of your own familiarity
|
|
|
Logged
|
|
|
|
jekrmi99
Newbie
Offline
Posts: 16
Thank You
-Given: 144
-Receive: 13
|
|
« Reply #9 on: March 12, 2013, 12:25:43 12:25 » |
|
Hi. Is not for comercial use it is only for private and this is for replacement of an agilent spectrum analyzer (8562A) the processor board is bad and the part is obsolete. The pic32 work since more month and never reset self or another strange thing
|
|
|
Logged
|
|
|
|
Ichan
Hero Member
Offline
Posts: 833
Thank You
-Given: 312
-Receive: 392
|
|
« Reply #10 on: March 14, 2013, 04:19:19 16:19 » |
|
You should be using a dsPIC, IMO.
Would you please explain your opinion? This is a true question, i wonder which one to use or where to use between dspic and pic32.. -ichan
|
|
|
Logged
|
There is Gray, not only Black or White.
|
|
|
solutions
Hero Member
Offline
Posts: 1826
Thank You
-Given: 656
-Receive: 905
|
|
« Reply #11 on: March 15, 2013, 09:54:15 09:54 » |
|
If you have a lot of signal processing (multiplications), you need to clock the PIC a LOT faster than a dsPIC, because the dsPIC has a hardware multiplier (I lump the 24 series in with dsPIC as well). Perhaps so much so that the PIC needs overclocking, which is very risky in terms of your device, or perhaps not even achievable.
The right tool for the job....
|
|
|
Logged
|
|
|
|
flo0319
Junior Member
Offline
Posts: 81
Thank You
-Given: 7
-Receive: 17
|
|
« Reply #12 on: March 15, 2013, 02:07:07 14:07 » |
|
Solution you tell us that is an advantage to use a 16bits architecture instead 32bits ? I think that to calculate uint32 a+b with dsPIC at 96MHz is longer then the same add on a PIC32 at 80Mhz ( on 16bits architecture for 32bits variables you need a double number of instruction cycles for simple arithmetic)
|
|
|
Logged
|
|
|
|
sarah90
Active Member
Offline
Posts: 111
Thank You
-Given: 7
-Receive: 11
|
|
« Reply #13 on: March 15, 2013, 02:19:35 14:19 » |
|
In general more bits is better and faster. But the main advantage of the dspic is that it supports certain operations in hardware and these operations take much less cycles than when performed in software, even on pics with a better architecture. So there is a trade-off depending whether you use these special functions or not.
|
|
|
Logged
|
|
|
|
jekrmi99
Newbie
Offline
Posts: 16
Thank You
-Given: 144
-Receive: 13
|
|
« Reply #14 on: March 15, 2013, 02:57:36 14:57 » |
|
I started the project with an 24FJ256 and it was not enougth memory in this PIC. The difference is visible between the PIC32 and the 24F it need less time with the PIC32 for the same program. The next step i make test with STM32F407 with 168MHz clock.
|
|
|
Logged
|
|
|
|
flo0319
Junior Member
Offline
Posts: 81
Thank You
-Given: 7
-Receive: 17
|
|
« Reply #15 on: March 15, 2013, 04:13:31 16:13 » |
|
In general more bits is better and faster. But the main advantage of the dspic is that it supports certain operations in hardware and these operations take much less cycles than when performed in software, even on pics with a better architecture. So there is a trade-off depending whether you use these special functions or not.
You are right, but here is about PIC32 and dsPIC (or PIC24 family ). PIC32 is built in multiply with add hardware bloc what is specific for a DSP, and in this case to calculate a FFT for a spectrum analyzer. So, an old processor with a 32 architecture and without this type of hardware instructions isn't better then a dsp, but when this instructions exist in a 32b architecture, this processor is better then a dsp. For this topic I think that overclocking is good just for hobby projects, you can go up but you have no stability over the maximum specified speed, also when is used a PLL block for generate main clock, the overclocking is a bad idea or has no effect . Overclocked core processor can work without problem but data value result from it can be wrong (this depends how is build the hardware structure )
|
|
|
Logged
|
|
|
|
Gallymimu
Hero Member
Offline
Posts: 704
Thank You
-Given: 152
-Receive: 214
|
|
« Reply #16 on: March 16, 2013, 07:03:29 07:03 » |
|
a good example of where a dspic is better:
try toggling pins on an off as fast as the processor can go. dspic will toggle faster, just an architecture thing. The dsPIC33E series is quite nice.
Another example where the dspic is better, DMA buffer, 1024 bytes deep vs... I can't remember but the pic32 was 512 or 256.
dspic, being a light DSP is also (should be) better for vector math and operation on data streams.
|
|
|
Logged
|
|
|
|
flo0319
Junior Member
Offline
Posts: 81
Thank You
-Given: 7
-Receive: 17
|
|
« Reply #17 on: March 16, 2013, 08:49:49 08:49 » |
|
I not try to tell which one is better.
Also if you think that with a PIC32 you can't toggle pins output you are wrong, for this are used CLR SET and INV registers.
if you can transfer a double memory space but when start to manipulate it you need a double number of inst. cycle which is the advantage?
dsPIC is better when is used 2/4 ADC channels simultaneous sample and hold, or when is used a dedicate dsPIC33F..MC... for Motors control whit 3PWM channel and Neg/Pos pins for each channel. But PIC32 is a 32bits variant for a normal dsPIC/pic24 MCU. They are also pin compatible
|
|
|
Logged
|
|
|
|
Ichan
Hero Member
Offline
Posts: 833
Thank You
-Given: 312
-Receive: 392
|
|
« Reply #18 on: March 16, 2013, 08:45:23 20:45 » |
|
Coremak Score? Seems PIC32MX is much faster than dsPIC33F.. But indeed dsPIC has a rich choice of peripherals. -ichan
|
|
|
Logged
|
There is Gray, not only Black or White.
|
|
|
Gallymimu
Hero Member
Offline
Posts: 704
Thank You
-Given: 152
-Receive: 214
|
|
« Reply #19 on: March 16, 2013, 10:42:40 22:42 » |
|
I not try to tell which one is better.
Also if you think that with a PIC32 you can't toggle pins output you are wrong, for this are used CLR SET and INV registers.
if you can transfer a double memory space but when start to manipulate it you need a double number of inst. cycle which is the advantage?
dsPIC is better when is used 2/4 ADC channels simultaneous sample and hold, or when is used a dedicate dsPIC33F..MC... for Motors control whit 3PWM channel and Neg/Pos pins for each channel. But PIC32 is a 32bits variant for a normal dsPIC/pic24 MCU. They are also pin compatible
yeah, I know how to toggle pins on a PIC32 and trust me, the dspic can toggle pins faster. pic32 is NOT a 32 bit variant of a dspic, the architectures are completely different. Microchip bought MIPS architecture they are using for PIC32 and it is very different. I develop frequently with both, very different parts with different capabilities. yeah if you are running generic code or a GUI the PIC32 runs great (and faster) Anyway, sorry we're getting off topic which is... WHY WOULD ANYONE WANT TO OVERCLOCK A PIC?!?!
|
|
|
Logged
|
|
|
|
flo0319
Junior Member
Offline
Posts: 81
Thank You
-Given: 7
-Receive: 17
|
|
« Reply #20 on: March 17, 2013, 09:29:02 09:29 » |
|
yeah, I know how to toggle pins on a PIC32 and trust me, the dspic can toggle pins faster.
Maybe I have understand wrong what you try to tell us,you mean this the timing for switching between low and high level is faster at a dsPIC when a instruction which manipulate pin status is executed ? these types of delays are the problem when is trying to overclock any mcu. pic32 is NOT a 32 bit variant of a dspic, the architectures are completely different. Microchip bought MIPS architecture they are using for PIC32 and it is very different.
My English is not so good, you are right, pic32 has a MIPS processor, what I try to tell is that a pic32 comes to cover what can to do a pic24/dspic family but with a 32bits architecture.
|
|
|
Logged
|
|
|
|
Gallymimu
Hero Member
Offline
Posts: 704
Thank You
-Given: 152
-Receive: 214
|
|
« Reply #21 on: March 17, 2013, 03:50:18 15:50 » |
|
Maybe I have understand wrong what you try to tell us,you mean this the timing for switching between low and high level is faster at a dsPIC when a instruction which manipulate pin status is executed ?
Yes you have it right now. That is what I mean. Sorry we did not communicate right!
|
|
|
Logged
|
|
|
|
flo0319
Junior Member
Offline
Posts: 81
Thank You
-Given: 7
-Receive: 17
|
|
« Reply #22 on: March 17, 2013, 05:06:46 17:06 » |
|
I have no idea what is happening in real environment but in datasheet for both PIC32 and dsPIC exist 2 parameters: DO31 and DO32 for Port Output Rise Time and Port Output Fall Time which for PIC32 are 5-15ns and for dsPIC are 10-25ns. So ...
|
|
|
Logged
|
|
|
|
Gallymimu
Hero Member
Offline
Posts: 704
Thank You
-Given: 152
-Receive: 214
|
|
« Reply #23 on: March 17, 2013, 07:30:28 19:30 » |
|
I have no idea what is happening in real environment but in datasheet for both PIC32 and dsPIC exist 2 parameters: DO31 and DO32 for Port Output Rise Time and Port Output Fall Time which for PIC32 are 5-15ns and for dsPIC are 10-25ns. So ...
rise and fall time are not related to the core's ability to process assembly instructions and toggle bits. In practice the unloaded rise and fall time on the dspic33E is 3-5ns BTW.
|
|
|
Logged
|
|
|
|
Ichan
Hero Member
Offline
Posts: 833
Thank You
-Given: 312
-Receive: 392
|
|
« Reply #24 on: March 17, 2013, 11:34:46 23:34 » |
|
...trust me, the dspic can toggle pins faster.
Would you show the truths so the trust can be properly granted? -ichan
|
|
|
Logged
|
There is Gray, not only Black or White.
|
|
|
|