Microchip PIC32MZ Flash Microcontroller is the World's Fastest 32-bit MCU

formatting link

The Microchip PIC32MZ runs at 330MIPS at 200MHz and easily competes against the Cortex-M4.

Includes a Microchip PIC32MZ block diagram and friendly roadmap for the PIC32 family.

Bill Giovino

formatting link

Reply to
Bill Giovino
Loading thread data ...

Check out the errata. No Hi-Speed USB or SQI support and various other cripple-ware items.

formatting link

--
Don McKenzie 

All Olimex products now 30%+ off normal Olimex Prices. 
 Click to see the full signature
Reply to
Don McKenzie

What does this mean about being the fastest MCU? Why is it interesting, since there are SOC's running at 1ghz and faster, not to mention vector DSP's and that sort of thing? Also, the PIC32MZ doesn't appear to have any floating point arithmetic, unlike the M4 which it seems to position itself against. It would be more interesting if the PIC had IEEE double precision, since the ARM M4F only has single precision.

Reply to
Paul Rubin

That's one hell of a errata list; it looks like the PIC32MZ was released at least 6 months too early.

If anyone is thinking of using the PIC32MZ, you _really_ need to check out the above errata list as the first document you read.

Simon.

PS: I loved how the workaround for the Hi-Speed USB mode not working was to use the Full Speed mode instead. :-)

--
Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP 
Microsoft: Bringing you 1980s technology to a 21st century world
Reply to
Simon Clubley

formatting link
By fastest MCU, I mean a general-purpose device - a microcontroller (not an SoC) with Flash and SRAM and peripherals. 330MIPS at that class is the best I've seen.

Thanks for your interest and your questions here, I will do my best to get your answers to your other questions and get back to you.

Reply to
Bill Giovino

At the same time, it's released late. I can't imagine anyone otherwise willingly releasing a chip with several marquee features not working.

Sadly this seems par for the course for Microchip. Pretty much all of their chips have long errata lists, and many of the errors are of the serious kind.

The PIC32MZ starter kits are advertised as shipping with 4MB of SQI flash installed. I can only wait for the early adopters start asking why they can't get it working on Microchip's forums.

-a

Reply to
Anders.Montonen

IEEE double precision takes a lot more hardware to get really fast operation.

I sometimes wonder if there wouldn't be a way to implement double- precision floating point in hardware that wouldn't take up more space than 'fast' single-precision FP, but at the cost of a few clock ticks. For a lot of algorithms, a double-precision calculation that happened 1/4 as fast as an in-hardware single-precision calculation would still be far better than either taking the precision hit of 32-bit, or the speed hit of software synthesized 64 bit.

--
Tim Wescott 
Control system and signal processing consulting 
 Click to see the full signature
Reply to
Tim Wescott

Have not seen any docs yet. If they are following the path of dsPIC30, it will likely have 40 bits accumulator and barrel shifter. It should make double-precision much faster.

Reply to
edward.ming.lee

Right, that's what I had in mind, it shouldn't take much more hardware to use the same DSP blocks to do double precision while taking a 4x slowdown for multiplication and division, and hopefully not much worse than 2x for addition. For transcendentals you might need slightly larger ROM tables for coefficients.

The Intel Quark might be of interest:

formatting link

It has a 400 mhz Pentium-class processor which presumably includes double and extended precision, plus it has various other stuff that make it nicer in some ways than a Beaglebone, while staying in the same general price class ($70 at Mouser).

Reply to
Paul Rubin
2013-11-20 06:34, Bill Giovino skrev:

And you are sure that this is faster than the Atmel AT91SAM9XE ARM926 based flash microcontroller which been around for 3-4 years? Running at 180 MHz but different architecture/flash and it can execute out of external SDRAM, which the PIC32MZ cannot do, according to the block diagram.

It is not clear what kind of bandwidth you will get from the flash, but most flash memories will not run more than 20 MHz so running out of DRAM is typically faster.

You can of course argue that it is cheating, but if the definition is that you have internal SRAM and Flash, then the SAM9XE fits.

In a real application, you are going to have problems if peripherals have to be handled in interrupes, and not with DMA, and the PIC32MZ only has 8 channels, which is not a lot.

BR Ulf Samuelsson

Reply to
Ulf Samuelsson

If i read it correctly, PIC32MZ requires 2 wait states at 200MHz. So, program flash is probably running at around 70 to 80MHz. BTW, flash instruction path is 128 bits with 16K cache.

Reply to
edward.ming.lee

On the e300 core (and likely on others I am not so intimately familiar with) Freescale have the FPU doing 2 cycle FMUL, FMADD etc. on 64 bit operands and 1 cycle on 32 bit ones. Works fine, on 400 MHz core clock they talk about 800 MIPS which if not 100% practically usable does help, interleaving FPU with integer (and perhaps more importantly, load/store) instructions does work OK (I have managed a 2.2 cycle total within a 64 bit FIR loop, load/store included). Now how did they compromise die size vs. performance I have no idea, I am just a user of theirs.

Dimiter

------------------------------------------------------ Dimiter Popoff, TGI

formatting link

------------------------------------------------------

formatting link

Reply to
dp

What chips does one find that core in?

Thanks.

--
Tim Wescott 
Control system and signal processing consulting 
 Click to see the full signature
Reply to
Tim Wescott

The one I am using is the MPC5200B (watchout for the old 5200, still available but much buggier etc.). I have also used it on the 8240 (too old to consider now); they also have the MPC5125 and the MPC5121 (I have just been eyeing these, never used one).

I should detail the 2.2 cycles - I do these reading/writing 32 bit FP data, just the MAC loop is done 64-bit (using FMAD.d , 64*64+64 ). Loading a 32 bit FP automatically converts it to a 64 bit one, storing as .s does 64 ->32 (rounding included). I would expect the same speeds for r/w with 64 bit data (the bus to the cache is 64 bit wide) but I have not tried that.

Dimiter

------------------------------------------------------ Dimiter Popoff, TGI

formatting link

------------------------------------------------------

formatting link

Reply to
dp

Actually more. Things like the Ethernet have dedicated DMA which is not part of the general DMA pool.

Reply to
Rocky

From the picture it looks like there are dedicated DMA's for the Ethernet, CAN, USB, SQI and crypto engine - which is nice.

One thing that can make a big difference to usability is whether the data cache is synchronised with these DMA channels (i.e., does the cache snoop their transfers?). I've worked with processors where the dedicated Ethernet DMA was not snooped - you have to make sure your Ethernet buffers are mapped to non-cached memory areas (assuming the processor has an MMC or MMU supporting that), or you have to add extra cache flush and invalidate code for any accesses.

But given the state of the errata for this chip, it is a toss-up whether such snooping works or not.

It's a shame that Microchip have released this device in its current state. The MIPS microAptiv core is a great cpu, and it would be good for the market for ARM to get some real competition. But with these half-tested devices from Microchip being the best-known general microAptiv microcontrollers, there is a real danger that people will assume the /core/ is bad rather than just incompetence of Microchip's test engineers combined with over-enthusiastic PHB's and sales folk. With the current errata - full of modules that simply don't work and have no fixes or workarounds - this chip should never have been released for the general public.

Reply to
David Brown

So the question becomes _why_ have they released it now ?

It was pointed out in another message that evaluation boards have been released which depend on these non-working features.

That means after a few months have elapsed and these problems have been (hopefully) fixed, some people are still going to start with a negative impression of the PIC32MZ instead of starting with a neutral impression of the PIC32MZ based on it's capabilities at that time.

IOW, I don't see how releasing it now instead of taking the hit caused by another delay could have ever been considered to be a good idea.

Simon.

--
Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP 
Microsoft: Bringing you 1980s technology to a 21st century world
Reply to
Simon Clubley

Just four days ago I searched through the documentation for that chip, and I came to the conclusion that the FPU only supported single-precision floating point in hardware. Aside from having to go tell a customer that I had my head buried in my assumptions, I guess I should be pleased to be wrong.

--
Tim Wescott 
Wescott Design Services 
 Click to see the full signature
Reply to
Tim Wescott

Maybe a competitor is about to release something...

Wish is had floating point like stm32f4.

--
/*  jhallen@world.std.com AB1GO */                        /* Joseph H. Allen */ 
int a[1817];main(z,p,q,r){for(p=80;q+p-80;p-=2*a[p])for(z=9;z--;)q=3&(r=time(0) 
 Click to see the full signature
Reply to
Joseph H Allen

Like ADI CM4xx? 240MHz M4.

--

John Devereux
Reply to
John Devereux

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.