PIC32 now have a MMU... - Page 1
Forum section: electronics / general

author: technix
author_rank: Super Contributor
timestamp: April 21, 2017, 04:33:44 am
content: For example,PIC32MZ2048EFM144, have a MMU (and thus virtual memory system.) I smell mainline Linux - in fact,there is already PIC32MZ support in the latest mainline Linux.Its memory map allows for 64MB of PSRAM and 64MB of Quad SPI NOR Flash. That is enough for a small-ish vanilla Linux 4.11 build (not the uClinux 2.6.x junk - the latest mainline kernel instead.) The built-in Flash have enough room for a full U-Boot installation too, and QSPI can XIP to conserve memory.So what is this line of "microcontrollers" intended for again? I don't think that a normal microcontroller should have mainline, vanilla Linux in its sights. Or should us start calling it System-on-Chip instead?

author: technix
author_rank: Super Contributor
timestamp: April 21, 2017, 05:09:11 am
content: Quote from: blueskull on April 21, 2017, 04:57:01 amIt don't have SDRAM controller yet - just PSRAM. If a future revision got a SDRAM controller this would really become a full consumer-ready Linux chip.

author: krho
author_rank: Regular Contributor
timestamp: April 21, 2017, 05:27:55 am
content: That's ultra expensive especially as you can get imx6UL which is 600MHz Cortex A7 with DDR&LCD&eMMC controllers at <6€@1000pcs and iMX6ULL even cheaper ~4€@1000pcs.

author: westfw
author_rank: Super Contributor
timestamp: April 21, 2017, 08:54:56 am
content: Didn't even the MX PIC32s have enough "memory managment" (separate 0-based segments for User and System; perhaps inherent in the MIPS architecture) to support older sorts of unix? One of the mid-sized chipKit boards had 2.10bsd running on it, I think. (yeah, I think you have to actually swap, like in the good old days...)

author: mrpackethead
author_rank: Super Contributor
timestamp: April 21, 2017, 11:29:24 am
content: Quote from: blueskull on April 21, 2017, 05:21:32 amIf yoru buying 10k at that price, your paying way too much. Have a talk to a MC sales team. AT 9.23 you woudl be right they woudl be uncompetitive. Microchip is beomcing a force to reckon with..

author: tszaboo
author_rank: Super Contributor
timestamp: April 21, 2017, 01:43:03 pm
content: Quote from: krho on April 21, 2017, 05:27:55 amI've seen people run Linux on Spartan 3. Linux guys are not concerned with things like price or ease of use. Or any practical considerations.

author: Scrts
author_rank: Frequent Contributor
timestamp: April 21, 2017, 03:09:18 pm
content: Are those MTK, Rockchip and Allwinner processors fully documented and that documentation fully released to the public? Have you tried to set up low level DMA, SPI, I2C on them? If this is not available, then those processors are useless for DIYer.

author: VEGETA
author_rank: Super Contributor
timestamp: April 21, 2017, 04:30:17 pm
content: Perhaps they want to complete with Renesas RZ series in the future.

author: Rasz
author_rank: Super Contributor
timestamp: April 21, 2017, 04:33:22 pm
content: Its not about virtual memory for linux, but exceptions, all about making it more RTOS friendly. MMU lets you mark stack non exec, try to recover from RTOS processes writing into wrong space or stack growing over your data.Datasheet for this part reads like its been designed for automotive use?

author: mrpackethead
author_rank: Super Contributor
timestamp: April 21, 2017, 06:38:45 pm
content: datasheet links?

author: thm_w
author_rank: Super Contributor
timestamp: April 21, 2017, 09:07:54 pm
content: Quote from: blueskull on April 21, 2017, 05:21:32 amiMX6ULL is impressive but you can see the difference:MCIMX6Y0CVM05AA vs. PIC32MZ2048EFM144- bga only vs. TQFP only- 128kB RAM vs. 512kB- 96kB flash vs. 2MB- 105 C vs 125 CI think its quite reasonably priced given these specs. But yes clearly for a different market.

author: Sal Ammoniac
author_rank: Super Contributor
timestamp: April 22, 2017, 12:03:50 am
content: Does the PIC32MZ have a real MMU that can translate individual virtual pages of 512-4096 bytes into physical addresses, or does it just have a simple MMU like the ARM Cortex-M4 has, which can just set access protections on certain areas of memory?As an aside, what's the attraction of running Linux on a part like this? Will you have enough resources left to do anything useful after cramming the OS onto the part? What's next, porting Linux to your smart toaster?

author: TNorthover
author_rank: Contributor
timestamp: April 22, 2017, 02:34:25 am
content: Quote from: Sal Ammoniac on April 22, 2017, 12:03:50 amI think "MMU" is pretty much reserved for full address translation schemes. Certainly ARM refers to the Cortex-M scheme as an MPU, though that term looks like it might be vague enough to cover a lot of things if you believe wiki.

author: tszaboo
author_rank: Super Contributor
timestamp: April 22, 2017, 08:21:54 am
content: Quote from: thm_w on April 21, 2017, 09:07:54 pmIrrelevant specs, you will never use in iMX witout external DDR memory and Flash.

author: forrestc
author_rank: Unknown
timestamp: April 22, 2017, 09:10:20 am
content: The PIC32MZ EF line apparently doesn't have enough resources to run Linux. But there are lots of applications where linux doesn't make a lot of sense but you still need a beefy processor with connectivity. I'm actually using the PIC32MZ EF in several projects.When you look at the total system cost, the PIC32MZ EF isn't all that bad since you generally don't need any external memory.There is a multi-die version of the PIC32MZ coming, the PIC32MZ DA. It is apparently going to be able to run Linux, but based on the curriculum at the masters coming up in October, it sure looks like Microchip's path to Linux is going to be at least initially on the ARM-based SAM processors they acquired with atmel.

author: thm_w
author_rank: Super Contributor
timestamp: April 24, 2017, 10:40:56 pm
content: Quote from: NANDBlog on April 22, 2017, 08:21:54 amBut its possible the PIC would be used without external flash or memory, no?The point is its a different market, there is more on chip resources and the cost will be proportionally higher due to that.1-2MB of flash on chip is not cheap, although I'm not sure if this is manufacturer set margin or actual cost of silicon. 2MB winbond flash is about 60c.

author: Rasz
author_rank: Super Contributor
timestamp: April 25, 2017, 12:04:27 am
content: flash itself is super cheap at those capacities (< tens of megabytes). Its flash and larger high speed logic on same wafer that makes it expensive. Same for large SRAM or DRAM on same die.The problem as I understand(barely) lies in specific additional processes (high temp baking, polishing, deposition, masks) required by memory structures.quick google throws up this book "Memories in Wireless Systems"with a nice table listing additional manufacturing steps:https://books.google.pl/books?id=1tX44UwMoA4C&pg=PA13&lpg=PA13&dq=flash+memory+process+additional++manufacturing+special+steps&source=bl&ots=d79DEXKE1e&sig=ESK_cAeKn2bqDYy1pgPndjpwzes&hl=en&sa=X&ved=0ahUKEwi2sITJpb7TAhXmBZoKHfWJAigQ6AEISjAG#v=onepage&q=flash%20memory%20process%20additional%20%20manufacturing%20special%20steps&f=falseThis is why we end up with cool stuff like thishttps://zeptobars.com/en/read/GD32F103CBT6-mcm-serial-flash-Giga-Deviceswhen manufacturer is price conscious but still wants to deliver.