Page 1 of 22

Breakthrough for the ao486 core announced - Cache

Posted: Fri Jul 03, 2020 1:01 am
by NightShadowPT
Hi,

In case you have missed it, Smoke Monster just announced that FPGAzumSpass has been working on cache implementation for the ao486 core, giving it a boost in performance of aprox. 85%.

You can watch the video here: https://www.youtube.com/watch?v=rv4JHLI ... e=emb_logo

Looking forward to see this being released.

Re: Breakthrough for the ao486 core announced - Cache

Posted: Fri Jul 03, 2020 2:14 am
by suverman
Fantastic news!

Re: Breakthrough for the ao486 core announced - Cache

Posted: Fri Jul 03, 2020 3:40 am
by bbond007
Nice!

This will be like pressing the old "turbo" button :)

Re: Breakthrough for the ao486 core announced - Cache

Posted: Fri Jul 03, 2020 4:51 am
by ericgus09
Oh nice.. I wonder how much of a speed boost Ill see in El-Fish (generating/breeding the fish was very slow on the Mister) and with Geoworks Ensemble (that ran ok but it should fly now)

great news.. !!

Re: Breakthrough for the ao486 core announced - Cache

Posted: Fri Jul 03, 2020 5:47 am
by NightShadowPT
I do have a comment though.
Despite the SIGNIFICANT overall performance increase, Doom still looked kind of slow for such a machine.

I remember it being faster on a 25Mhz 386DX (with a mid-sized window and low resolution).

Maybe it's my nostalgia Goggles, but it also may be that Doom needs something else that this core still doesn't have (?)

Re: Breakthrough for the ao486 core announced - Cache

Posted: Fri Jul 03, 2020 6:17 am
by suverman
NightShadowPT wrote: Fri Jul 03, 2020 5:47 am

Maybe it's my nostalgia Goggles, but it also may be that Doom needs something else that this core still doesn't have (?)
FPU?

Re: Breakthrough for the ao486 core announced - Cache

Posted: Fri Jul 03, 2020 7:09 am
by Cebion
NightShadowPT wrote: Fri Jul 03, 2020 1:01 am Hi,

In case you have missed it, Smoke Monster just announced that FPGAzumSpass has been working on cache implementation for the ao486 core, giving it a boost in performance of aprox. 85%.

You can watch the video here: https://www.youtube.com/watch?v=rv4JHLI ... e=emb_logo

Looking forward to see this being released.
Or FPGAzumSpass announced it and Smokemonster just spread the word :D

Re: Breakthrough for the ao486 core announced - Cache

Posted: Fri Jul 03, 2020 7:51 am
by Beeble
That is a welcome boost.

To my surprise after I saw the a0486 Benchmarks, Wing Commander run a bit to fast, Wing Commander 2 runs just fine.

Can we have a turbo button to cut speed in half for some games?

Re: Breakthrough for the ao486 core announced - Cache

Posted: Fri Jul 03, 2020 8:15 am
by NightShadowPT
suverman wrote: Fri Jul 03, 2020 6:17 amFPU?
Don't think that's it.
My 386DX did not have a 387DX math co-processor.
Beeble wrote: Fri Jul 03, 2020 7:51 am Can we have a turbo button to cut speed in half for some games?
The idea would be to have a "speed selector" with 12/25/33/40/50Mhz, but that would be asking too much.
Although I guess that an option to disable the cache will now be possible, should the developer want.

Re: Breakthrough for the ao486 core announced - Cache

Posted: Fri Jul 03, 2020 8:20 am
by Beeble
A Speed Dial would be actually "needed" for Games older then 1991 I assume. Wing Commander already runs to fast, my old Dos Classic "Smash the Smurfs" is unplayable.

Performance doesnt seem to scale equally, while both Wing Commanders run good, DOOM is not anywhere near that, also Masters of Magic and Warlords 2 take their sweet time "thinking".

Re: Breakthrough for the ao486 core announced - Cache

Posted: Fri Jul 03, 2020 11:21 am
by Chris23235
NightShadowPT wrote: Fri Jul 03, 2020 5:47 am I do have a comment though.
Despite the SIGNIFICANT overall performance increase, Doom still looked kind of slow for such a machine.

I remember it being faster on a 25Mhz 386DX (with a mid-sized window and low resolution).

Maybe it's my nostalgia Goggles, but it also may be that Doom needs something else that this core still doesn't have (?)
I only played it an a 486 and it didn't ran in fullscreen and high with a decent framerate, so I looked it up, my guess is its nostalgia Googles ;)

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

Re: Breakthrough for the ao486 core announced - Cache

Posted: Fri Jul 03, 2020 2:05 pm
by NightShadowPT
Chris23235 wrote: Fri Jul 03, 2020 11:21 am I only played it an a 486 and it didn't ran in fullscreen and high with a decent framerate, so I looked it up, my guess is its nostalgia Googles ;)
https://www.youtube.com/watch?v=qQEHHc1q06c
That's a great video, and it goes to prove one thing... I was a lot less demanding with my gaming in 1993.

I distinctly remember finishing the game, but not being able to play it on full screen (more like medium), but apparently I was happy with 12-15 fps of performance.

Funny how things work. I would not be able to play Doom nowadays with such a low frame rate.

Anyway, I guess that answers my question.

Thanks

Re: Breakthrough for the ao486 core announced - Cache

Posted: Fri Jul 03, 2020 6:10 pm
by Chris23235
It was the same for me, I played it on a 25 MHz 486 and while I remember that I couldn't play in fullscreen, my memory is that it ran very fluid, but then around 20 FPS were fluid for anything 3D back then ;)

Re: Breakthrough for the ao486 core announced - Cache

Posted: Sat Jul 04, 2020 6:33 am
by bbond007
Thanks FPGAzumSpass!
Before/After --> https://youtu.be/XAdJtDVf8k4
Before/After --> https://youtu.be/BAdYjpfMbSI

Re: Breakthrough for the ao486 core announced - Cache

Posted: Sat Jul 04, 2020 6:09 pm
by tontonkaloun
bbond007 wrote: Sat Jul 04, 2020 6:33 am Thanks FPGAzumSpass!
Before/After --> https://youtu.be/XAdJtDVf8k4

you have a compiled file to test it?

Re: Breakthrough for the ao486 core announced - Cache

Posted: Sat Jul 04, 2020 9:26 pm
by antibolo
I had a 486SX 50MHz growing up, and while Doom was certainly playable, the framerate still fluctuated wildly (unless I stared at a wall or something).

It’s only when I upgraded to a Pentium 133MHz that I finally got to experience Doom at its full 35 FPS glory.

Re: Breakthrough for the ao486 core announced - Cache

Posted: Sat Jul 04, 2020 11:48 pm
by tlaloc
tontonkaloun wrote: Sat Jul 04, 2020 6:09 pm
bbond007 wrote: Sat Jul 04, 2020 6:33 am Thanks FPGAzumSpass!
Before/After --> https://youtu.be/XAdJtDVf8k4

you have a compiled file to test it?
I'd like to say it's not too difficult to compile yourself, but got a 'Can't convert time-limited SOF into POF, RBF, etc.' message in the log.

Here are the steps I took:

1.) Download & extract core's GitHub repository [~48MB as ZIP] & register for an account at Intel.com to download & install Quartus Lite 17.0.0.595 [Size: 1.7 GB MD5: F95E47F859713C3C6DD59A94A9FC5E43]:
a.) https://github.com/MiSTer-devel/ao486_M ... master.zip
b.) http://download.altera.com/akdlm/softwa ... indows.exe

2.) Download the proper version of the Quartus Device Package [*.QDZ] that is compatible with Quartus Lite 17.0.0.595 for your Terasic DE10-Nano's Cyclone V SoC FPGA [Size: 1.1 GB MD5: 978CC235B50DA9BCC95C709EDADE4503]:
a.) http://download.altera.com/akdlm/softwa ... .0.595.qdz

3.) Start Quartus Lite 17.0.0.595, open the Quartus Project File [*.QPF] within its respective [unzipped] core's repository files and select 'Processing' > 'Start Compilation' on the file menu [OR press Ctrl+L].


P.s. I read the QPF file in the repository to determine the particular version of Quartus Lite I needed to install in order to attempt to compile/generate a working Raw Binary File [*.RPF] for my specific Terasic DE10-Nano's Cyclone V SoC FPGA MiSTer setup.
I've done it successfully for the TG16 repository, don't know exactly why ao486 is not generating anything resembling an RBF file anywhere in the 'output_file' folder after finishing compilation.
Is there anyone here that can tell me more about what else might go into successfully compiling an updated binary of ao486 for myself?
Apologies in advance if this is the wrong thread to post this question in.

Re: Breakthrough for the ao486 core announced - Cache

Posted: Sun Jul 05, 2020 2:37 am
by bbond007
tlaloc wrote: Sat Jul 04, 2020 11:48 pmI'd like to say it's not too difficult to compile yourself, but got a 'Can't convert time-limited SOF into POF, RBF, etc.' message in the log.
I could be wrong, but I think that is due to using the "Lite" version of Quartus.
tontonkaloun wrote: Sat Jul 04, 2020 6:09 pm you have a compiled file to test it?
I have compiled the DEV branch.

It would probably be be better to wait for official release from the people who know what they are doing, but if you can't..

EDIT:
Instruction Fetch path improved:
- bypass prefetch fifo
- don't request TLB if not required
- stop cache burst when jump happened
ao486_Cache38_09fcf84.zip
(2.31 MiB) Downloaded 297 times

EDIT:
ao486_Cache39_239ee87.zip
(2.31 MiB) Downloaded 285 times

EDIT:
Revert: prefetch TLB request removal
ao486_Cache40_fd24356.zip
(2.3 MiB) Downloaded 277 times

EDIT:
Add simulation framework for modelsim for both caches and cpu test
ao486_Cache41_9c63fe4.zip
(2.29 MiB) Downloaded 360 times

EDIT:
Adjust non-MPU UART speed in MIDI mode. Cleanup from cross-device ports.
ao486_Cache42_100432e.zip
(2.23 MiB) Downloaded 281 times

EDIT:
Move 100MHz to debug menu.
ao486_Cache43_cf9e20f.zip
(2.25 MiB) Downloaded 343 times

Re: Breakthrough for the ao486 core announced - Cache

Posted: Sun Jul 05, 2020 3:13 am
by tlaloc
bbond007 wrote: Sun Jul 05, 2020 2:37 am
tlaloc wrote: Sat Jul 04, 2020 11:48 pmI'd like to say it's not too difficult to compile yourself, but got a 'Can't convert time-limited SOF into POF, RBF, etc.' message in the log.
I could be wrong, but I think that is due to using the "Lite" version of Quartus.
tontonkaloun wrote: Sat Jul 04, 2020 6:09 pm you have a compiled file to test it?
I have compiled the DEV branch.

It would probably be be better to wait for official release from the people who know what they are doing, but if you can't...

ao486_Cache.zip

Make sure you update Main_MiSTer or you won't get video.
Thank You.

It looks like all the search results I've found point to the same thing you mentioned, basically need to pay to play/deal with licensing issues.


Info: Command: quartus_cpf -c ao486_time_limited.sof ao486_time_limited.rbf
Error (210039): File ao486_time_limited.sof contains one or more time-limited megafunctions that support the OpenCore Plus feature that will not work after the hardware evaluation time expires. Refer to the Messages window for evaluation time details.
Info (210040): SRAM Object File ao486_time_limited.sof contains time-limited megafunction that supports OpenCore Plus feature -- Vendor: 0x6AF7, Product: 0x010C
Error: Quartus Prime Convert_programming_file was unsuccessful. 1 error, 0 warnings
Error: Peak virtual memory: 4422 megabytes
Error: Processing ended: Sat Jul 04 20:05:55 2020
Error: Elapsed time: 00:00:01
Error: Total CPU time (on all processors): 00:00:01

Re: Breakthrough for the ao486 core announced - Cache

Posted: Sun Jul 05, 2020 4:04 am
by SuperBabyHix
This runs very well with the new FastDoom port. Getting mid 20s-30 fps with tweaks. https://www.vogons.org/viewtopic.php?f=24&p=868617

Thanks very much FPGAzumSpass.

Re: Breakthrough for the ao486 core announced - Cache

Posted: Sun Jul 05, 2020 9:29 am
by NightShadowPT
bbond007 wrote: Sat Jul 04, 2020 6:33 am Thanks FPGAzumSpass!
Before/After --> https://youtu.be/XAdJtDVf8k4
Before/After --> https://youtu.be/BAdYjpfMbSI
Thanks for the benchmark videos... very interesting.

Re: Breakthrough for the ao486 core announced - Cache

Posted: Sun Jul 05, 2020 9:55 am
by tontonkaloun
bbond007 wrote: Sun Jul 05, 2020 2:37 am
tlaloc wrote: Sat Jul 04, 2020 11:48 pmI'd like to say it's not too difficult to compile yourself, but got a 'Can't convert time-limited SOF into POF, RBF, etc.' message in the log.
I could be wrong, but I think that is due to using the "Lite" version of Quartus.
tontonkaloun wrote: Sat Jul 04, 2020 6:09 pm you have a compiled file to test it?
I have compiled the DEV branch.

It would probably be be better to wait for official release from the people who know what they are doing, but if you can't...

ao486_Cache.zip

Make sure you update Main_MiSTer or you won't get video.
a big thank-you! I was impatient

Re: Breakthrough for the ao486 core announced - Cache

Posted: Sun Jul 05, 2020 10:03 am
by tontonkaloun
tontonkaloun wrote: Sun Jul 05, 2020 9:55 am
bbond007 wrote: Sun Jul 05, 2020 2:37 am
tlaloc wrote: Sat Jul 04, 2020 11:48 pmI'd like to say it's not too difficult to compile yourself, but got a 'Can't convert time-limited SOF into POF, RBF, etc.' message in the log.
I could be wrong, but I think that is due to using the "Lite" version of Quartus.
tontonkaloun wrote: Sat Jul 04, 2020 6:09 pm you have a compiled file to test it?
I have compiled the DEV branch.

It would probably be be better to wait for official release from the people who know what they are doing, but if you can't...

ao486_Cache.zip

Make sure you update Main_MiSTer or you won't get video.
Thanks

I had compiled it but I got the file "limited time.sof"

I had tried to convert it but with an error message with the same command as you.

I admit, I didn't look any further

I think I am limited with the lite version of quartus, I wanted to take a license today!

Re: Breakthrough for the ao486 core announced - Cache

Posted: Sun Jul 05, 2020 10:29 am
by Beeble
I guess I wait for the official update.

What surprises me is performance in Games like Wing Commander 1 + 2 it fells like my 486 DX50, WC1 running to fast for its own good, WC2 seems fine.

Games like Warlord 1 and 2 feel a bit slow, same Masters of Magic. Doom I did expect much more FPS after I played Wing Commander 2.

Looking forward for the official update.

Re: Breakthrough for the ao486 core announced - Cache

Posted: Sun Jul 05, 2020 11:29 am
by Shamus
Just gave it a quick try! It's awesome :D Windows 95 is so much snappier - very big thanks, FPGAzumSpass!

Re: Breakthrough for the ao486 core announced - Cache

Posted: Sun Jul 05, 2020 4:52 pm
by FPGAzumSpass
More improvements from today (yellow bars). I fear this will not improve more so easy :?
32bitaccess.png
32bitaccess.png (47.18 KiB) Viewed 13286 times

Re: Breakthrough for the ao486 core announced - Cache

Posted: Sun Jul 05, 2020 7:52 pm
by NegSol
Looking forward to using the performance increase - this core has a lot to offer! Thank you FPGAzumSpass. 8-) 8-) 8-)

Re: Breakthrough for the ao486 core announced - Cache

Posted: Sun Jul 05, 2020 8:40 pm
by tontonkaloun
yes ! Thank you FPGAzumSpass

Re: Breakthrough for the ao486 core announced - Cache

Posted: Sun Jul 05, 2020 9:22 pm
by tlaloc
tontonkaloun wrote: Sun Jul 05, 2020 10:03 am
bbond007 wrote: Sun Jul 05, 2020 2:37 am
tlaloc wrote: Sat Jul 04, 2020 11:48 pmI'd like to say it's not too difficult to compile yourself, but got a 'Can't convert time-limited SOF into POF, RBF, etc.' message in the log.
I could be wrong, but I think that is due to using the "Lite" version of Quartus.
tontonkaloun wrote: Sat Jul 04, 2020 6:09 pm you have a compiled file to test it?
I have compiled the DEV branch.

It would probably be be better to wait for official release from the people who know what they are doing, but if you can't...

ao486_Cache.zip

Make sure you update Main_MiSTer or you won't get video.
Thanks

I had compiled it but I got the file "limited time.sof"

I had tried to convert it but with an error message with the same command as you.

I admit, I didn't look any further

I think I am limited with the lite version of quartus, I wanted to take a license today!
If you've got $2,995 to burn, go right ahead ;-)
Then again, maybe you're a developer and can actually use the license for more than just compiling up-to-the-minute DEV releases of these MiSTer cores discussed here.
I think I'll wait till the ppl that know what they're actually doing compiles it properly for release before trying to compile myself again. Although I feel I 'know what I'm doing', having gotten this far, it's that 'knowing what I'm ACTUALLY doing' part that gets me :cry:

Strange thing is... certain cores [e.g. TG16CD] allow me to compile an RBF using Quartus Lite, not so with this 'ao486' core... why/how, I wonder, does that occur?

Re: Breakthrough for the ao486 core announced - Cache

Posted: Sun Jul 05, 2020 10:43 pm
by ExCyber
tlaloc wrote: Sun Jul 05, 2020 9:22 pmStrange thing is... certain cores [e.g. TG16CD] allow me to compile an RBF using Quartus Lite, not so with this 'ao486' core... why/how, I wonder, does that occur?
As discussed in another thread, it's because the ao486 core uses a 16550 UART "IP core" from Intel/Altera that requires a paid license. Quartus will allow you to use the core anyway for evaluation and development purposes, but won't allow you to generate a "production" bitstream format like .rbf. Most other MiSTer cores do not use IP cores that require a paid license, so this limitation doesn't apply to them.