Amiga.org

Amiga computer related discussion => Amiga Hardware Issues and discussion => Topic started by: freqmax on December 13, 2010, 02:19:13 PM

Title: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: freqmax on December 13, 2010, 02:19:13 PM
I got a bit curious if it's possible to implement PPC (http://en.wikipedia.org/wiki/PowerPC) in FPGA (http://en.wikipedia.org/wiki/Field-programmable_gate_array)..

The simplest PowerPC processor Power1 (http://en.wikipedia.org/wiki/POWER1) uses 2,04 million transistors for logic, and 4,86 million for memory. The key is the logic gates.

Given that MC68000 (http://en.wikipedia.org/wiki/Motorola_68000) has 40 000 transistors. And MC68020 (http://en.wikipedia.org/wiki/Motorola_68020) uses   190 000 (http://www.cpu-collection.de/?l0=co&l1=Motorola&l2=68020) transistors.

The Spartan-3E 1200 used (http://www.fpgaarcade.com/) has 19 512 logic cells of which the MC68000 implementation (http://www.amiga.org/forums/showthread.php?t=39806&page=51) uses 20 %. Which translates into 3902 logic cells. Which should mean that 199 022 logic cells are required. So a Virtex-5 chip like XC6VLX240T should be able to handle the task.

Maximum logic cells:
Spartan-3 (http://www.xilinx.com/support/documentation/data_sheets/ds312.pdf) 33 192 logic cells.
Spartan-6 (http://www.xilinx.com/support/documentation/user_guides/ug384.pdf) 147 443 logic cells.
Virtex-6 (http://www.xilinx.com/support/documentation/data_sheets/ds150.pdf) 566 784 logic cells (XC6VHX565T).
Virtex-7 (http://www.xilinx.com/support/documentation/white_papers/wp373_V7_K7_A7_Devices.pdf) 2000 000 logic cells (not released yet!).

So the XC6VLX240T will likely make it possible to implement a PPC accelerator ;)
The catch is that the free version of the programming software ISE (http://en.wikipedia.org/wiki/Xilinx_ISE) likely won't support it. Otoh one can combine multiple chips.
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: jj on December 13, 2010, 02:54:53 PM
I cant imagine that any FPGA would be fast enough to runa  PowerPC core.  Even if they could what would be the point.
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: mongo on December 13, 2010, 03:24:52 PM
Quote from: freqmax;598429

So the XC6VLX240T will likely make it possible to implement a PPC accelerator ;)
The catch is that the free version of the programming software ISE (http://en.wikipedia.org/wiki/Xilinx_ISE) likely won't support it. Otoh one can combine multiple chips.


The best price I can find for the XC6VLX240T is $1412.40.

Not really a good idea.

You can get a XC5VFX30T, which has a PPC 440 cpu built in for about $450.
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: Hattig on December 13, 2010, 03:39:22 PM
I believe that there are some FPGAs with embedded PowerPC cores, so you don't need to re-implement them in VHDL. I don't know the price, nor the performance of the cores.
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: vidarh on December 13, 2010, 03:49:47 PM
It might be possible, though unlikely to be cost effective as long as new PPC designs are still being produced. For 68k, it's still not a given that it's even cost effective to compete with a 68060 this way (we'll see how the Natami plays out), but in that case time is on the side of FPGA's - that's not the case for PPC.
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: Iggy on December 13, 2010, 04:04:35 PM
Quote from: Hattig;598446
I believe that there are some FPGAs with embedded PowerPC cores, so you don't need to re-implement them in VHDL. I don't know the price, nor the performance of the cores.

I'd like to know more about that (the above statement).

And to echo what's been said, an FPGA implementation of a PPC core wouldn't be practical as it would be too slow. There is nothing to prevent a PPC add on card for the Natami from being designed though.
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: Bif on December 13, 2010, 05:40:14 PM
Disclaimer - I know next to nothing about FPGAs.

I don't see why you would need a huge FPGA to emulate a PowerPC. The instruction set shouldn't be harder to implement I'd think (after all, PowerPC is supposedly RISC). I think all those extra transistors are in the PowerPC because its a more modern, powerful chip than a 680x0. Those extra transistors are doing things like implementing multiple units and stuff. A modern Intel CPU shares the same core instruction set as a 386 but obviously use far more transistors.

Anyway, I do think a PowerPC in FPGA would be a bit silly unless there is some great need to run PowerPC code. Whether you implement 680x0 ISA or PowerPC ISA you are probably going to get about the same performance on a given FPGA. The only advantage I see to PowerPC is that modern variants of the ISA would include SIMD, which might help the FPGA state instructions to the CPU in a way that helps it process data more efficiently.
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: Fats on December 13, 2010, 06:32:23 PM
Quote from: Iggy;598448
I'd like to know more about that (the above statement).


Virtex-5 FXT (http://www.xilinx.com/products/virtex5/fxt.htm)
I've looked at the price some time ago and they were too expensive at that time. I don't think PPC cores are integrated in the Virtex-6 Xilinx FPGAs anymore.

greets,
Staf.
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: freqmax on December 13, 2010, 09:59:42 PM
The thing about HDL-code is that once you have it, the supply is secured. Speed might suffer but you can run things. And as time progresses FPGA gets faster and cheaper while chips might be EOL'd. Though currently FPGA implementation would not be cost effective.

How is compatibility between classic PPC accelerators and currently manufacturered PPC chips?
(I recall the only available m68k has an incompatible instruction "MOVE sr,")
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: minator on December 14, 2010, 12:16:07 AM
Why?

It could probably be done yes, but it'd likely get the attention of lawyers at some rather large companies.  You really don't want to piss off a company as big as IBM and cloning any PPC *will* do that.

What's more to the point is being on an FPGA it'd make the Sam440 and Efika 5200B look like speed demons.

Wouldn't it just be easier to use a real PPC chip?
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: bloodline on December 14, 2010, 12:17:34 AM
Quote from: freqmax;598510
The thing about HDL-code is that once you have it, the supply is secured. Speed might suffer but you can run things. And as time progresses FPGA gets faster and cheaper while chips might be EOL'd. Though currently FPGA implementation would not be cost effective.

How is compatibility between classic PPC accelerators and currently manufacturered PPC chips?
(I recall the only available m68k has an incompatible instruction "MOVE sr,")
I think you confuse PPC and coldfire... Not to mention I have no idea what you are trying to achieve... A PPC on an FPGA would be painfully slow :(
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: freqmax on December 14, 2010, 12:26:52 AM
The m68k in Minimig has an incompatible instruction. The question is if the same kind of issue exist between current PPC chips, and the ones used in classic accelerators.

Guess my interest in PPC on FPGA came from the issue of availability of PPC-accelerators.
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: Iggy on December 14, 2010, 12:41:16 AM
Quote from: Fats;598466
Virtex-5 FXT (http://www.xilinx.com/products/virtex5/fxt.htm)
I've looked at the price some time ago and they were too expensive at that time. I don't think PPC cores are integrated in the Virtex-6 Xilinx FPGAs anymore.

greets,
Staf.

I'd never noticed that before. An FPGA with up to two 440 cores. Pretty slick.
It would require a LOT of work, but that could be used.
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: billt on December 14, 2010, 01:28:00 AM
Quote from: JJ;598434
I cant imagine that any FPGA would be fast enough to runa  PowerPC core.  Even if they could what would be the point.


I'm sure that was once said about 68K or any other CPU softcore at one time.

What would be the point? Why not? For those decrying it as a sane business proposition, that's one thing. But some involved with such things like Minimig are doing it more to learn how and/or have fun than anything else.
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: Iggy on December 14, 2010, 02:04:11 AM
Quote from: billt;598534
I'm sure that was once said about 68K or any other CPU softcore at one time.

What would be the point? Why not? For those decrying it as a sane business proposition, that's one thing. But some involved with such things like Minimig are doing it more to learn how and/or have fun than anything else.

There's a slight difference between emulating a 50Mhz processor and a processor like the one I have in my Powermac (which at 1.8Ghz runs 36 times faster).

No current FPGA (or any that's likely to be introduced soon) operates fast enough to emulate processors running at that speed.
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: fishy_fiz on December 14, 2010, 03:33:23 AM
I just dont see the point to it (at least as far as something like minimig is concerned). Firstly speed of the cloned ppc wouldnt differ greatly to that of a 68k cpu using fpga, and secondly, as most people who have/had one will tell you ppc without rtg is a huge waste of money. Even with RTG I constantly questioned my bppc purcahse. There's maybe a dozen pieces of software that are worth the effort, and those exist for 68k anyway (with the exception of warpsnes,mess, shogo, Heretic2, and Wipeout2097(although most of these are open source anyway)), so given the same speed the ppc side is redundant. The only exceptions to this rule are MOS and OS4, which would both be waaay to slow (even things like Sam and Efika are too slow for things that purport to be modern oses) on an fpga based ppc core.
So, technically yes it can be done, I just dont see a point when it comes to amiga stuff.
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: billt on December 14, 2010, 03:47:56 AM
Quote from: freqmax;598510
(I recall the only available m68k has an incompatible instruction "MOVE sr,")

The "only available m68k"? There's a few of them on opencores alone.
http://opencores.org/project,tg68
http://opencores.org/websvn,listing,k68
http://opencores.org/project,ao68000 (which I'd like to see happen in minimig)
http://experiment-s.de/en/atari-ste-in-a-chip/

Besides, they're open-source. Fix it.
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: joemango on December 14, 2010, 07:28:16 AM
Quote from: Iggy;598539
There's a slight difference between emulating a 50Mhz processor and a processor like the one I have in my Powermac (which at 1.8Ghz runs 36 times faster).

No current FPGA (or any that's likely to be introduced soon) operates fast enough to emulate processors running at that speed.



Hear hear.  Any PPC emulator implemented in an FPGA is probably going to run slower than the cheapest current PPC part you can find out there.  Better to put a daughterboard on the replay with a real ppc that doesnt suck up as much power or system resources on the FPGA which is there to emulate chips you CANT get super cheap (or at all).

Yeah, it's probably a good idea to start a PPC core in vhdl, but it wont be really needed for a good while to come.

I say make a pci-e interface daughterboard for replay so you can plug it into an amigaone board and use it for all the classic stuff.
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: billt on December 14, 2010, 01:02:25 PM
Quote from: joemango;598563
I say make a pci-e interface daughterboard for replay so you can plug it into an amigaone board and use it for all the classic stuff.


Does Replay have PCI-Express capability? There are some FPGAs capable of such a connection, but I don't know if the one chosen for this board is one of those or not, or if any connection area was laid out on the board with that kind of signalling in mind. I'd have suggested much the same thing but via PCI32 if there's enough expansion pins available.
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: freqmax on December 14, 2010, 01:26:55 PM
billt, Minimig uses a physical m68k chip. With a softcore you can correct anything at will.

Minimig has some constraints regarding volts, physcal package etc.. so it's slightly picky about what chip can be used asfair.
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: billt on December 14, 2010, 01:45:21 PM
Quote from: freqmax;598602
billt, Minimig uses a physical m68k chip. With a softcore you can correct anything at will.

Minimig has some constraints regarding volts, physcal package etc.. so it's slightly picky about what chip can be used asfair.


Ah, sorry. I have a DE1 board and forget the original board had a hard CPU chip. I think of Minimig as all-internal to FPGA SoC design, not as a particular PCB. I'll try to remember that part. :)
Title: Re: On the feasibility of PPC for Minimig/Fpgaarcade etc.
Post by: freqmax on December 15, 2010, 02:27:26 AM
@Iggy, The point is to be compatible with the classic accelerators. Few them ever came near any 1000 MHz ranges ;)