Welcome, Guest. Please login or register.

Author Topic: AROS68K and the Freescale Coldfire CPU  (Read 22850 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline matthey

  • Hero Member
  • *****
  • Join Date: Aug 2007
  • Posts: 1294
    • Show all replies
Re: AROS68K and the Freescale Coldfire CPU
« on: January 16, 2011, 12:43:07 PM »
There are plenty of threads on this forum as well as the Natami forum about why ColdFire is less than optimum for the Amiga. AROS 68k probably will be part of the future for some fpga based 68k Amiga though. That is what the Natami is planning...

http://www.natami.net/
 

Offline matthey

  • Hero Member
  • *****
  • Join Date: Aug 2007
  • Posts: 1294
    • Show all replies
Re: AROS68K and the Freescale Coldfire CPU
« Reply #1 on: January 16, 2011, 02:54:15 PM »
Quote from: WolfToTheMoon;607016

Looking at the Atari Firebee project, I think one could get a expansion board with the Coldfire CPU with similar power for lower price then Natami. It would lack Natami-specific features like Super-AGA, but it could also pack it's own graphics system that could be more powerful then Natami's if not AGA related.


 Don't just look at clock speed of the ColdFire vs N68k vs 68060. The ColdFire is a cut down "cheapened" 68k CPU for embedded systems. It's not as powerful as the 68060. Sure, it has larger caches and some modern features that the 68060 didn't get way back then but adding those would have been easy had the 68060 been continued. Motorola/FreeScale didn't want the 68k/ColdFire competing with PowerPC. There is no future for ColdFire except as a little brother "embedded" CPU. The N68k project is an attempt to continue the 68k line as a powerful processor. The 68k was abandoned because of marketing reasons before it's power was explored. The N68050 should already be on par with the V4 ColdFire at a lower clock speed while the N68070 should easily outperform it. Parallel processing is a big part of the reason why. The N68k should be much easier to program and much more Amiga compatible than the ColdFire too. If you want a cheaper Amiga than the Natami, then there is the MiniMig 68020+AGA. I'd rather go that route than try and make a cheap ColdFire based Amiga.
 

Offline matthey

  • Hero Member
  • *****
  • Join Date: Aug 2007
  • Posts: 1294
    • Show all replies
Re: AROS68K and the Freescale Coldfire CPU
« Reply #2 on: January 16, 2011, 04:17:54 PM »
Quote from: WolfToTheMoon;607028
The 68060 does 110 MIPS @ 75 MHz
The Coldfire V4(e) does 400 MIPS @ 266 MHz

The advantages of the 68060 is that it is a fully superscalar design, while the CF V4 is only partially so. Still, your reasoning may apply to lower end V1, V2 and V3 Coldfires. I believe a CF V4(e)  @ 266 MHz is handily faster then any 68K silicon. The V5 Coldfire is fully superscalar(and 300 MHz) but Freescale will only make it for you if you order a (pretty) large number of them.

The 68060 is already about the same MIPS/MHz as the V4 ColdFire with smaller caches, no link stack, etc. The 68060 can do more per cycle than the V4 ColdFire. Multilplication, division, shifting is all faster on the 68060. The 68060 has useful instructions that are missing on the ColdFire. Granted, the ColdFire has some useful instruction additions also. The N68k has everything except clock speed. None of the instructions are missing, ColdFire additions are included, other instruction additions are useful, multiple instructions per clock are possible, large caches, link stack, predicated branches, byte and word instructions are as fast as long, bitfield instructions are fast, large instruction prefetch, etc. The V4 ColdFire is nothing special. It's on par with a very fast 68040 with larger caches and a few other enhancements. The V5 ColdFire is a different story. It's more like a 68060 from what little information I could find on it. It would very likely be faster than the N68070 will be in fpga. The ColdFire does need optimized code and would be harder to get max performance from than the N68070 as currently planned. It's easy enough to say, just compile new code for it, but that's where a lot of the problem is. Compilers generate poor code especially on the 68k. I have a library that started out at 67648 bytes and I have optimized down to 39824 bytes so far. I think 1/2 the original size is possible although I'm optimizing for speed and not size. Before you say that this must have been some poor C coders, I'll tell you that this piece of work was done by a fairly famous pair of brothers (in Amiga land) who now work for Hyperion. I hope there PPC optimizing is better because the PPC is not nearly as forgiving of crap code.
« Last Edit: January 16, 2011, 04:53:07 PM by matthey »
 

Offline matthey

  • Hero Member
  • *****
  • Join Date: Aug 2007
  • Posts: 1294
    • Show all replies
Re: AROS68K and the Freescale Coldfire CPU
« Reply #3 on: January 16, 2011, 06:05:53 PM »
@WolfToTheMoon
I don't mean to discourage you either but I see the hurdles and they are tough. The Natami team, Elbox and probably others have evaluated the ColdFire a lot. I think it would be neat to look at the FIDO instead. It's a CPU32 compatible 68k processor that's pretty neat. It's not as fast as the CF but it's cheap cheap and has some pretty nifty features. Exec would probably have to be modified for this too. I really like this 68k CPU in the bargain basement price range...

http://www.innovasic.com/products/ic/67-fido1100-32bit-comm-controller/
 

Offline matthey

  • Hero Member
  • *****
  • Join Date: Aug 2007
  • Posts: 1294
    • Show all replies
Re: AROS68K and the Freescale Coldfire CPU
« Reply #4 on: January 16, 2011, 06:58:25 PM »
Quote from: WolfToTheMoon;607061
I've noticed FIDO but I haven't considered it. Do you think one could use a dual CPU configuration and possibly use FIDO to execute legacy 68K apps and CF to run patched AROS68K? I'd like to keep CF on board so to be able to use faster DDR memory and it would offer greater speed in native CF applications(and those that would be cross-compatible between 68K and CF).


The 68k CPU instructions of FIDO are more compatible with 68k but the interrupt system is totally different (although superior). Some 68000 programs would not run on it because of interrupt usage. It's also not fully 68020 compatible as it's missing bit field instructions. GCC loves to use the bitfield instructions too. You might notice that the MiniMig is getting bit field instructions and the N68k will have 1 cycle bit field instructions where the 68060 is 6+ cycles pOEP only. An fpga is really hard to beat as far as flexibility which equates to compatibility. It's the best way to go for emulating the Amiga chip set and then adding a processor isn't much more. The prices are dropping faster on the fpga's than the real CPUs. I do see some sense in using the CF as an I/O chip but I don't see any 68k processors besides the real 68k that will give the compatibility. The best solution would be to have enough demand to burn a real cpu from the N68070. The N68k will be using DDR2 memory by the way.
 

Offline matthey

  • Hero Member
  • *****
  • Join Date: Aug 2007
  • Posts: 1294
    • Show all replies
Re: AROS68K and the Freescale Coldfire CPU
« Reply #5 on: January 16, 2011, 07:27:36 PM »
Quote from: WolfToTheMoon;607071
Indeed. But it must be first tested. How far are they from implementing it?

The first Natami MX (developer) boards, I believe, should be arriving to the team at anytime. The N68050 is only running in simulation at this point but that allows for some testing. There is a lot of work ahead before the N68070 is done. It would probably be a couple of years at current pace I would guess. The price of the fpga should have dropped substantially by then. The N68050 will be first of course. I think MiniMig 68020+AGA will beat the Natami to market but won't be nearly as powerful. The Natami developer boards will have a 68060 socket giving good compatibility before the N68k is ready and for testing (has mmu). A low frills motherboard with a 68040/060 socket (buyer provides CPU) would give good compatibility and descent speed. You could do a small fpga for the Amiga chip set and ColdFire for I/O + PCI + PCI RTG gfx card, PCI ethernet card and PCI usb card. The difficult part is always the software and drivers for these types of projects. They usually end up taking way more time and effort than expected.
« Last Edit: January 16, 2011, 07:30:28 PM by matthey »