Welcome, Guest. Please login or register.

Author Topic: Prelim. idea for 68k 'upgrade'...maybe?  (Read 1125 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline GeneraleTopic starter

  • Full Member
  • ***
  • Join Date: Feb 2005
  • Posts: 233
    • Show only replies by Generale
    • http://members.dodo.com.au/~izabellion
Prelim. idea for 68k 'upgrade'...maybe?
« on: March 17, 2005, 12:06:06 PM »
Okay, heres an idea I came up with a while ago to add extra features to a c64's cpu. Never tried it though. I don't see why the same idea couldn't apply to 68k.

For starters, the main difference is that the newer CPUs have more abilities, most notably the 32 bit databus, the mmu and the fpu.

Considering the a500 is a 16 bit databus and the 68k has it's 32 bit bus multiplexed internally anyway, the alterations that need to be done would be the extra opcodes (relatively easy), the FPU (moderate) and the MMU (depending on the desired CPU result...very hard)

For a hardware only solution without software patches, some odd kludges can be done...I believe.

Opcodes: They all go via ROMs. The output mostly mirroring the input, except for the new opcodes.
For these new opcodes, a different opcode is sent to the CPU such as a simple add for example, utilizing the memory accesses for the new opcode.
This saves extra wiring for the addresslines. (a buffer would be placed on the datalines to 'mute' the cpu) The PIC, FPGA or whatever intervenes as a result of databit(s) in the ROM allocated to the control of the 'custom' chip. This could do something such as say "grab the data from the bus on clock tick a, mess with the bits, then send them off on clock tick b ( when the cpu is going to do the write).

Anyway, that's the beginning of my idea. Please feel free to find faults as I'm sure it's a terrible idea anyway.
A500 (salvo): 1Mb RAM (512k chip, 512k SlowFast)
1x880k Floppy Disk, 1xIBM 540Mb 3.5\\"HDD KS1.3, WB1.3
1084S monitor. AT Keyboard!
A500 (Whitey): 512k RAM, 1x880k Floppy Disk, KS1.2, WB1.3
 

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12113
    • Show only replies by bloodline
    • http://www.troubled-mind.com
Re: Prelim. idea for 68k 'upgrade'...maybe?
« Reply #1 on: March 17, 2005, 12:28:30 PM »
A Sort of hardware emulator for new instructions?

Offline MskoDestny

  • Sr. Member
  • ****
  • Join Date: Oct 2004
  • Posts: 363
    • Show only replies by MskoDestny
    • http://www.retrodev.com
Re: Prelim. idea for 68k 'upgrade'...maybe?
« Reply #2 on: March 17, 2005, 03:18:25 PM »
Cool idea, but it seems it would be a pain to implement, particularly if you were trying to make it 030 compatible or some other advanced member of the 68K family.  If you don't try to make it compatible with one of those you won't have any software that's designed to run on it.

Also, it seems that the performance gain would be rather small.  You're still limited to about 1 MIP or so.  It seems it would be better to either implement some 68k compatible chip in FPGA or work on some kind of coldfire accelerator rather than trying to hack on extra instructions to the 68000, but perhaps I'm being overly negative about this.
 

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12113
    • Show only replies by bloodline
    • http://www.troubled-mind.com
Re: Prelim. idea for 68k 'upgrade'...maybe?
« Reply #3 on: March 17, 2005, 04:03:34 PM »
Yeah, it's a cool idea... but what's the point in adding instructions to the 68k?


Offline SamuraiCrow

  • Hero Member
  • *****
  • Join Date: Feb 2002
  • Posts: 2281
  • Country: us
  • Gender: Male
    • Show only replies by SamuraiCrow
Re: Prelim. idea for 68k 'upgrade'...maybe?
« Reply #4 on: March 18, 2005, 01:33:10 AM »
do you mean like this?
 

  • Guest
Re: Prelim. idea for 68k 'upgrade'...maybe?
« Reply #5 on: March 18, 2005, 01:55:38 AM »
Quote

SamuraiCrow wrote:
do you mean like this?


So that is one way of adding a coldfire accelerator to an Amiga, by using exception traps?  The other being dynamic recompilation I  assume?
 

Offline GeneraleTopic starter

  • Full Member
  • ***
  • Join Date: Feb 2005
  • Posts: 233
    • Show only replies by Generale
    • http://members.dodo.com.au/~izabellion
Re: Prelim. idea for 68k 'upgrade'...maybe?
« Reply #6 on: March 18, 2005, 03:19:58 AM »
What's the point indeed... I never said that it was a totally practical idea  :-)
The extra opcodes are basically just the ones to do with mmu and mathematical functions. And yes they would be true to 68k.

As for the performance increase, not much. But it would add compatibility, but probably no more than a simple interrupt handler patch.

Are there fpgas with enough uhh gate thingies to do a 68k? I know there's enough to do a 65816 (re: c= one which i'd kill to get)

As for the dynamic recompilation etc, none needed. What I came up with is a brutal hack. And yes it probably would be a lot easier to use another CPU and plonk it on a board and just write a simple CPU emulator for it.

Oh yeah. The pseudo FPU would be a simple extension to the idea. And as for MMUs, they give me a headache, but easy enough to emulate.

I know it's impossible, but I wish I could use a dragonball EZ or VZ for the CPU.

That's right, I dl'ed the file up there. I'd better have a look.
A500 (salvo): 1Mb RAM (512k chip, 512k SlowFast)
1x880k Floppy Disk, 1xIBM 540Mb 3.5\\"HDD KS1.3, WB1.3
1084S monitor. AT Keyboard!
A500 (Whitey): 512k RAM, 1x880k Floppy Disk, KS1.2, WB1.3
 

Offline Effy

  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 2053
    • Show only replies by Effy
Re: Prelim. idea for 68k 'upgrade'...maybe?
« Reply #7 on: March 18, 2005, 04:10:04 AM »
Generale : I can´t help you on this as I haven´t got any knowledge about this subject, but I just want to show my respect to you for trying to do this  :-)

Offline GeneraleTopic starter

  • Full Member
  • ***
  • Join Date: Feb 2005
  • Posts: 233
    • Show only replies by Generale
    • http://members.dodo.com.au/~izabellion
Re: Prelim. idea for 68k 'upgrade'...maybe?
« Reply #8 on: March 18, 2005, 12:48:26 PM »
I'm actually tempted to attack one of my surplus c=64s to test the basics of my idea.
The C64 because I have 5, or something like that of them. Now to get back to trying to figure out how to get my cd-rom to work on my a500.
A500 (salvo): 1Mb RAM (512k chip, 512k SlowFast)
1x880k Floppy Disk, 1xIBM 540Mb 3.5\\"HDD KS1.3, WB1.3
1084S monitor. AT Keyboard!
A500 (Whitey): 512k RAM, 1x880k Floppy Disk, KS1.2, WB1.3
 

Offline MskoDestny

  • Sr. Member
  • ****
  • Join Date: Oct 2004
  • Posts: 363
    • Show only replies by MskoDestny
    • http://www.retrodev.com
Re: Prelim. idea for 68k 'upgrade'...maybe?
« Reply #9 on: March 18, 2005, 04:51:40 PM »
Hacking in an MMU would be a real pains since you would have to mangle the 68K address lines.  Of course, on a Classic Amiga the MMU is arguably much less useful than the FPU.

Modern FPGAs have gotten quite large, of course the more gates they have the more expensive they are.  Still, the original 68K was a relatively simple chip on the grand scale of things and a lot of what makes the later members of the 68K family so complex are more performance related than feature related (particularly on the superscalar 060).

EDIT:
I don't see why you couldn't use one of the Dragonball chips.  All of the extra registers are mapped high in RAM (0xFFFC0000 and above) so only programs that tried to access ROM with an FF in the high bite of the address would have a problem (no idea if this is common).  Of course even the 66MHz can only achieve 10 MIPS, about the same as a 68020 clocked at half that speed.
 

Offline GeneraleTopic starter

  • Full Member
  • ***
  • Join Date: Feb 2005
  • Posts: 233
    • Show only replies by Generale
    • http://members.dodo.com.au/~izabellion
Re: Prelim. idea for 68k 'upgrade'...maybe?
« Reply #10 on: March 20, 2005, 01:35:49 AM »
hmm. I might leave the cpu for now. I've always wanted to play with FPGAs. Only problem is that the programming hardware and the fpgas are quite costly.What I don't get is why the programming hardware is so complex when they are meant to be field programmable.

I brought up the dragonball because it'd have to be my fave 68k cpu. And then you have the built in hardware used for the LCD, which could possibly be used for other things. And the software controllable clock speed, to name a few features. Theres a lot to be said for a 'computer on a chip' that still uses external memory. anyway, I'm dreaming. Even the soldering would be way too hard. the pin spacing is like 0.0mm on those things. So tiny!!!
A500 (salvo): 1Mb RAM (512k chip, 512k SlowFast)
1x880k Floppy Disk, 1xIBM 540Mb 3.5\\"HDD KS1.3, WB1.3
1084S monitor. AT Keyboard!
A500 (Whitey): 512k RAM, 1x880k Floppy Disk, KS1.2, WB1.3
 

Offline MskoDestny

  • Sr. Member
  • ****
  • Join Date: Oct 2004
  • Posts: 363
    • Show only replies by MskoDestny
    • http://www.retrodev.com
Re: Prelim. idea for 68k 'upgrade'...maybe?
« Reply #11 on: March 20, 2005, 04:26:00 AM »
Programming hardware for FPGAs is quite simple actually.  Generally they're designed to read the configuration from a ROM or SRAM, though I'm pretty sure you can manually program them via a JTAG interface.  There are a few reasons the dev boards tend to be expensive, but a lot of it is that companies that are designing products around these chips can afford to spend that much.

Someone came up with a clever and easy way to solder TSOP and QFP packages with a standard soldering iron.  The original page seems to be gone, but archive.org to the rescue: http://web.archive.org/web/20020806173831/http://warmcat.com/milksop/soldering.html
 

Offline Fats

  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 672
    • Show only replies by Fats
Re: Prelim. idea for 68k 'upgrade'...maybe?
« Reply #12 on: March 20, 2005, 10:57:28 AM »
Quote

Generale wrote:
hmm. I might leave the cpu for now. I've always wanted to play with FPGAs. Only problem is that the programming hardware and the fpgas are quite costly.What I don't get is why the programming hardware is so complex when they are meant to be field programmable.


If you are interested in FPGAs I think fpga4fun is a good reference. I think they also have some less expensive boards there.

Staf.
Trust me...                                              I know what I\'m doing
 

Offline GeneraleTopic starter

  • Full Member
  • ***
  • Join Date: Feb 2005
  • Posts: 233
    • Show only replies by Generale
    • http://members.dodo.com.au/~izabellion
Re: Prelim. idea for 68k 'upgrade'...maybe?
« Reply #13 on: March 21, 2005, 12:01:16 AM »
Ooh. So much more information!

I've been meaning to have a better look at VHDL.
It might be overkill, but I have the trial of protel DXP, which I believe can also do fpga simulation among about a billion other things.

If anyone else wants to play with it and is on dialup like myself, Protel will send you the trial CD for free. the only limitation is time. If you buy the full version, that means you are very rich. And you are getting sleeepy @_@ You feeeel the need to give me moooneeeeey....

That reminds me. Circuitmaker 2000 is great for people that want to learn about circuitry etc. But not too hot at other things. They dnt have a fantastic range of chips, but its fun to play with.
A500 (salvo): 1Mb RAM (512k chip, 512k SlowFast)
1x880k Floppy Disk, 1xIBM 540Mb 3.5\\"HDD KS1.3, WB1.3
1084S monitor. AT Keyboard!
A500 (Whitey): 512k RAM, 1x880k Floppy Disk, KS1.2, WB1.3