Question about an MMU implementation idea

For discussing the 65xx hardware itself or electronics projects.
zamuel_a
Posts: 16
Joined: 30 Apr 2015
Location: Sweden

Re: Question about an MMU implementation idea

Post by zamuel_a »

The PIC32MZ at 200MHz has 330MIPS so it's rather fast. For an MMU it just need to monitor the address bus and do as little as possible. It something interessting happens. A page fault or whatever, when it can halt the processor and do whatever it needs before continue on.

I have created a graphic card for a 6502 processor (mostly tested it on a c64) that uses a PIC32MZ to read instructions from the 6502 and generate the output image, so it's a very capabel microncontroller that doesn't cost much.
jmp(FFFA)
Posts: 171
Joined: 23 Sep 2015
Location: Philadelphia, PA

Re: Question about an MMU implementation idea

Post by jmp(FFFA) »

GARTHWILSON wrote:
jmp(FFFA), BDD's comment about microcontroller speed was with reference to using it as glue logic and more-sophisticated logic (an MMU in this case) to support a 6502/816. In a recent topic, I figured a 25MIPS PIC (100MHz in that case) was marginally fast enough to substitute for glue logic for a 1.79MHz '02 ...
There are three major architectures in the PIC family. The 8-bit architecture (with several variants), the 16-bit architecture (again, with several variants), and the 32-bit architecture (MIPS-based, with two variants at the moment). Each offers drastically different levels of performance per clock cycle. A 100 MHz PIC32MZ will typically run at 165 MIPS, not 25 MIPS as might be expected from an 8-bit PIC if you could run one at 100 MHz (max official clock rate is 64 MHz/16 MIPS at present).

Given that the 32-bit PICs and recent ARM MCUs are a lot faster than the PCs from yesteryear that were originally used to emulate 6502-based computers, I think the PIC32MZ (or similar ARM) would be a good platform to build a 6502 (or 65816) emulator on.
zamuel_a
Posts: 16
Joined: 30 Apr 2015
Location: Sweden

Re: Question about an MMU implementation idea

Post by zamuel_a »

The goal of my project is to run a real 6502 so I won't emulate it, but it's a nice idea to do on a PIC32 if you want to create a small system. It has a lot of power and 512k RAM and 2Mb FLASH. You can probably emulate an c64 on it without any problem for example.
User avatar
BitWise
In Memoriam
Posts: 996
Joined: 02 Mar 2004
Location: Berkshire, UK
Contact:

Re: Question about an MMU implementation idea

Post by BitWise »

jmp(FFFA) wrote:
I think the PIC32MZ (or similar ARM) would be a good platform to build a 6502 (or 65816) emulator on.
That's one of the projects I'm hoping to progress over Christmas. I have a 200MHz Diligent ChipKit WiFire board that I started writing an emulator in C++ for using the Arduino like MPIDE environment. I haven't got far enough to do any instruction speed timing.

I was going to use Microchip tools but that forces you to use their horrid 'Harmony' framework on the PIC32MZs so I'm trying the alternative ChipKit tools out.
Andrew Jacobs
6502 & PIC Stuff - http://www.obelisk.me.uk/
Cross-Platform 6502/65C02/65816 Macro Assembler - http://www.obelisk.me.uk/dev65/
Open Source Projects - https://github.com/andrew-jacobs
zamuel_a
Posts: 16
Joined: 30 Apr 2015
Location: Sweden

Re: Question about an MMU implementation idea

Post by zamuel_a »

Quote:
I was going to use Microchip tools but that forces you to use their horrid 'Harmony' framework on the PIC32MZs
I didn't wanted to use that either when I switched from the MX to MZ serie, but it's not to bad. I just use it to setup the pins and in the Harmony main loop I just jump to my own routine and don't care about Harmony anymore, so it works.
Post Reply