English Amiga Board

English Amiga Board (https://eab.abime.net/index.php)
-   Hardware mods (https://eab.abime.net/forumdisplay.php?f=105)
-   -   FPGA based A500 accelerator (https://eab.abime.net/showthread.php?t=100729)

meynaf 03 February 2020 19:58

Quote:

Originally Posted by kipper2k (Post 1376283)
From what i can tell there are a lot of instructions in the TG68 core that can be improved similar to the enhanced instruction set that apollo uses. I do not know enough to do this myself but i think there is enough interest to improve common instructions etc to speed up the core. Would need someone with more knowledge to confirm this

But the problem is precisely there. I see zero interest in adding programmer unfriendly stuff that's just targeted at speeding up a few selected things.
Wanna compete with vampire ? Do things differently.

kipper2k 03 February 2020 20:05

Quote:

Originally Posted by meynaf (Post 1376289)
But the problem is precisely there. I see zero interest in adding programmer unfriendly stuff that's just targeted at speeding up a few selected things.
Wanna compete with vampire ? Do things differently.

For me it is not about competing with the vampire, it is about using the proven core and maintain compatibility. I have tablets etc to play music/video, my basic wants are to use the Amiga with the existing games/apps and improve the basics like loading times and playability of some of the taxing games that drive the amiga 500 to its max. If the TG68 core is already optimised to the max then i am happy with that.

meynaf 03 February 2020 20:13

Quote:

Originally Posted by kipper2k (Post 1376293)
For me it is not about competing with the vampire, it is about using the proven core and maintain compatibility. I have tablets etc to play music/video, my basic wants are to use the Amiga with the existing games/apps and improve the basics like loading times and playability of some of the taxing games that drive the amiga 500 to its max. If the TG68 core is already optimised to the max then i am happy with that.

Then why don't currently available accelerators suit your needs ?

kipper2k 03 February 2020 20:20

Quote:

Originally Posted by meynaf (Post 1376295)
Then why don't currently available accelerators suit your needs ?


i cant say atm, i think once you see the final result you will see why i want this.

mkstr 03 February 2020 20:21

Quote:

Originally Posted by meynaf (Post 1376289)
But the problem is precisely there. I see zero interest in adding programmer unfriendly stuff that's just targeted at speeding up a few selected things.
Wanna compete with vampire ? Do things differently.

I'm interested to know what you have in mind. Are you thinking of an alternate, more RISC-like instruction set that can be switched in. Something similar to ARM Thumb?

meynaf 03 February 2020 21:28

Quote:

Originally Posted by mkstr (Post 1376301)
I'm interested to know what you have in mind. Are you thinking of an alternate, more RISC-like instruction set that can be switched in. Something similar to ARM Thumb?

No. RISC-like has zero interest for a programmer like me. Same with ARM thumb, which is already far behind the 68k in programmability (and even in pure code density).

I'm more thinking about the same kind of move that was made from 68000 to 68020.
As much as i like coding with 68k, it has its shortcomings. And they can be fixed ; some preserving compatibility, some requiring alternate instruction set.

I've made a lot of research on the subject, in fact i even have both the specs of a set of compatible extensions for 68k and a working software implementation of my own alternate instruction set, but i'm afraid all of this would be quite OT here -- and i don't necessarily want to make them public right now. However, feel free to PM me if you want to know more. I'll happily reply.

grond 03 February 2020 21:33

Quote:

Originally Posted by Niklas (Post 1376243)
If closed source hadn't been an issue for me I suppose I could buy a Vampire today.

Majsta open-sourced the Vampire 1 many years ago and somebody in Poland actually produced and sold them.

kipper2k 03 February 2020 21:40

here are the specs for the vampire 1...

-- Version: 0.1
-- Licensed: GNU General Public License v3 (GPL-3)
-- Core base: TG68.C
-- Emulated CPU: MC68000
-- Operational frequency: 87.5MHz
-- Cache: No
-- Mips: 2.75
-- Dhrystones: 2640
-- Chip Speed vs A600: 1.86
-- Disk speed in BYTES/SEC: 908,120
-- Autoconfig Mem: 5MB
-- Memory space: $C00000 - $CFFFFF, $200000 - $5FFFFF
-- Total FastRam: 5MB
-- PCMCIA friendly: Yes

utri007 03 February 2020 21:56

Quote:

Originally Posted by mkstr (Post 1376222)
The FPGA approach does allow for other modules to be built in beyond just the basic CPU functionality, but currently it just looks like a fast 68000 with some autoconfig fastmem.

Are you thinking about using it in a CDTV or turning an A500 into a CDTV?

Mike

I would like to use it with CDTV. CDTV's problem with accelerators is because cdtv.device, as explained here - Z >

https://github.com/terriblefire/cdtv.device

Short version :

1. cdtv.device blindly uses any ram its given for DMA memory. It doesnt check anything.
2. It also has spin loops and nops for delays which are terrible.
3. Its pretty limited compared to the cd32 cd.device

CDTV is only Amiga wich does not have working accelerator available now.

robinsonb5 03 February 2020 22:05

Quote:

Originally Posted by kipper2k (Post 1376318)
here are the specs for the vampire 1...


The Vampire 1 was groundbreaking (Tobias Gubener had done something similar using a DE2 devboard some years previously - but I think that was the only prior example of replacing the Amiga's CPU with an FPGA) - but the FPGA chosen was, unfortunately, far too small. The same basic design with an FPGA large enough to hold the TG68 with '020 extensions and an SDRAM controller with cache could have achieved similar performance to that shown in the screenshot earlier in this thread. I don't think the TG68 can be taken a huge amount further in terms of performance, however - the kinds of things that need to be added to make a CPU much faster (branch prediction, superscalar execution, longer pipelines) can't easily be bolted onto an existing design - they really need to be incorporated from the ground up.


I'm excited to hear that this new project has an FPGA with plenty of headroom - I hope there will be a nice user-friendly way of getting custom cores into it, because it would be very interesting to play with co-processors.

kipper2k 03 February 2020 22:12

At the time there was nothing available that performed like this. The fpga was that thin wire type which was pretty horrible to solder. Nowadays there are much faster components, smaller and with the updates to the core much better speeds are now available. there are ways to increase the speed even more so performance is much better



Quote:

Originally Posted by robinsonb5 (Post 1376331)
The Vampire 1 was groundbreaking (Tobias Gubener had done something similar using a DE2 devboard some years previously - but I think that was the only prior example of replacing the Amiga's CPU with an FPGA) - but the FPGA chosen was, unfortunately, far too small. The same basic design with an FPGA large enough to hold the TG68 with '020 extensions and an SDRAM controller with cache could have achieved similar performance to that shown in the screenshot earlier in this thread. I don't think the TG68 can be taken a huge amount further in terms of performance, however - the kinds of things that need to be added to make a CPU much faster (branch prediction, superscalar execution, longer pipelines) can't easily be bolted onto an existing design - they really need to be incorporated from the ground up.


I'm excited to hear that this new project has an FPGA with plenty of headroom - I hope there will be a nice user-friendly way of getting custom cores into it, because it would be very interesting to play with co-processors.


gulliver 03 February 2020 22:22

This project, along with the one from Matze's look both really promising.

Cool stuff. :)

robinsonb5 04 February 2020 00:03

Quote:

Originally Posted by kipper2k (Post 1376333)
At the time there was nothing available that performed like this.


If you're saying that nothing at the time could have achieved 8.8 MIPS in SysInfo then I must respectfully disagree. I was tinkering with the Minimig core on Cylone II and III FPGAs back then (2012-ish), and the fastest I could get TG68 to run was almost exactly that speed. (Not directly comparable, I know, but the same basic scenario - TG68 in FPGA with local 16-bit SDRAM.)



Quote:

Nowadays there are much faster components, smaller and with the updates to the core much better speeds are now available. there are ways to increase the speed even more so performance is much better


Well great - I look forward to seeing the results! (I've not played with anything newer than an entry-level Cyclone IV yet, unless you count Cyclone 10LP, so I'm not up-to-date on how much faster the newest devices can be.)

kipper2k 04 February 2020 00:23

i was just referring to an accel for the amiga 600 itself, i dont know of anything that was commercially available for the a600 at that time besides this that was just an accel and not trying to take control of every function . there wasn't a lot of options then.

After more testing we can reveal more, bit by bit, i have a hard time biting my tongue lol.

NovaCoder 04 February 2020 01:31

Hopefully one day people will be able to buy cheap FPGA accelerators for the classics.

As for CPU extentions, I agree that there is no point adding instructions that real hardware doesn't support.

A hybrid CPU that could support all 68020,68040,68060 instructions would be great though :)

I think someone was once talking about building an accelerator based on a raspberry pi zero with an FPGA to act as a bridge between the Amiga and the ARM but I could have been dreaming, it does sound like a reasonable idea though.

rare_j 04 February 2020 01:40

This sounds great. I hope you can include a compactflash or sdcard slot and controller on the board.

robinsonb5 04 February 2020 09:08

Quote:

Originally Posted by kipper2k (Post 1376366)
i was just referring to an accel for the amiga 600 itself, i dont know of anything that was commercially available for the a600 at that time besides this that was just an accel and not trying to take control of every function . there wasn't a lot of options then.


Ah, I see what you mean now. Yes, indeed.


Quote:

After more testing we can reveal more, bit by bit, i have a hard time biting my tongue lol.

LOL - well you're certainly doing a good job of creating intrigue! :D


I look forward to learning more as the project progresses!

AJCopland 04 February 2020 15:35

Cool project!

kipper2k 05 February 2020 01:07

i was just checking up Mister to try to get a comparison of how this project is doing for speed compared to other projects. Here is a vid of Mister,...

https://www.youtube.com/watch?v=hhjHMt0XUHo

You can see sysinfo test at 2:55. At the moment our sysinfo score is higher (check post 3 for comparison). Speed will increase hopefully as there are a couple more tweaks what can be done. Once the mem tests are complete then it is on to the next phase :)

lord of time 05 February 2020 13:24

I am definately following this! I feel very much priced out of the current crop of Amiga FPGA stuff and when I braught up the idea of budget versions of a certain famous FPGA accelerator they got a little shall we say tetchy about it! So yes this is a good idea!


All times are GMT +2. The time now is 15:02.

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

Page generated in 0.06302 seconds with 11 queries