English Amiga Board

English Amiga Board (http://eab.abime.net/index.php)
-   support.Hardware (http://eab.abime.net/forumdisplay.php?f=20)
-   -   Converting 68000 to 68040 logic? (http://eab.abime.net/showthread.php?t=100973)

PurpleMelbourne 20 February 2020 09:48

Converting 68000 to 68040 logic?
 
Hello fellow Amigans :)

I've been trying to find documentation on the logic to convert 68000 signals to 68040, and then to PCI. I'm totally new to this stuff, but I'm never giving up.

The Motorola 68040 Designers Handbook has details on 68030 to 040, but what about to 030 in the first place? :confused

Daedalus 20 February 2020 10:15

The jump from 68000 to 68030 isn't that great really. It needs a couple of signals to be managed with a small bit of logic but otherwise the buses are largely compatible, since the 68030 can operate on a 16-bit data bus like the 68000. It might be worth checking out the Terrible Fire open-source accelerators, some of which attach a 68030 to a 68000 socket.

PurpleMelbourne 20 February 2020 15:04

That sounds good.
Do you know if there is any Motorola documentation on it?

AmigaHope 20 February 2020 15:56

Quote:

Originally Posted by Daedalus (Post 1380167)
The jump from 68000 to 68030 isn't that great really. It needs a couple of signals to be managed with a small bit of logic but otherwise the buses are largely compatible, since the 68030 can operate on a 16-bit data bus like the 68000. It might be worth checking out the Terrible Fire open-source accelerators, some of which attach a 68030 to a 68000 socket.

It's a bit more complicated than that since 030 bus added features like burst mode.

Daedalus 20 February 2020 22:23

True, there's a bit more to it, but additional features like burst mode can be ignored (as, I believe, they are in some Amiga accelerators). Other than that, the 68020 (and by extension, 68030) is largely compatible. From memory, the logic required is to slow down bus access for synchronous operation (as the Amiga uses) for a cycle or two every access, and handle a couple of differences in handshaking signals. Should be easily done in a small CPLD.

Where things rapidly become more complicated is when you involve an asynchronous design and add in some fast RAM. After all, any faster CPU will be immediately limited by the bottleneck of the original 68000 memory access unless RAM is added to the CPU board.

PurpleMelbourne 21 February 2020 03:27

I'll have FAST RAM on board, but that doesn't require any logic.
What I need is documentation to explain how to program CPLD or FPGA to convert the control signals of the CPU to those of the 68000.

Once I have the logic to convert 040 to 68000, I want to also convert 040 to PCI in the other direction. The only Motorola documentation that I've been able to find is 030 to 040.

SpeedGeek 21 February 2020 14:46

Well, good luck trying to find the 040 to 68000 documentation. This would skip two generations of M68K CPUs. Most M68K designers understand Dynamic bus sizing on the 030 and just modify it to follow 68000 bus protocol. ;)

PurpleMelbourne 22 February 2020 08:25

Quote:

Originally Posted by SpeedGeek (Post 1380525)
Well, good luck trying to find the 040 to 68000 documentation.

Sorry, perhaps my OP wasn't clear enough. :banghead
Quote:

Originally Posted by PurpleMelbourne (Post 1380159)
The Motorola 68040 Designers Handbook has details on 68030 to 040, but what about to 030 in the first place? :confused

Can anyone point me in the direction of Motorola documentation which explains how to convert 68000 signals to 68030 signals? :help

From there I want to then make use of the explanation in the 68040 Designers Handbook to take it the rest of the way to 68040.

alexh 22 February 2020 08:39

Speedgeek is one of the most knowledgeable people in this area and he has just started as far as he knows there is no Motorola documentation about exactly what you're asking.

The 030 was many many years after 68000 and two generations are in between.

Everything you're asking about is documented in the code of the terrible fire accelerators (which were open source). The GREX is the only 680x0 to PCI bridge, it's closed source. But Prometheus is open source (Zorro to PCI).
.
You're on a very long very expensive road. Maybe team up with Steve of TF and work on the PCI angle?

SpeedGeek 22 February 2020 16:46

Quote:

Originally Posted by PurpleMelbourne (Post 1380690)
Sorry, perhaps my OP wasn't clear enough. :banghead


Can anyone point me in the direction of Motorola documentation which explains how to convert 68000 signals to 68030 signals? :help

From there I want to then make use of the explanation in the 68040 Designers Handbook to take it the rest of the way to 68040.

Well, a simple google search should have sufficed. Anyway, here are some links:

https://www.nxp.com/docs/en/referenc.../MC68030UM.pdf

https://www.nxp.com/docs/en/referenc.../MC68000UM.pdf

P.S. If you still don't get it, then I'm sorry I can't help. :rolleyes


All times are GMT +2. The time now is 22:25.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, vBulletin Solutions Inc.

Page generated in 0.05003 seconds with 11 queries