VOGONS


Collection rationale

Topic actions

Reply 100 of 162, by doublebuffer

User metadata
Rank Member
Rank
Member
appiah4 wrote on 2023-08-02, 08:08:

Doesn't the MİSTer basically do this already?

No, it's too slow to emulate PC correctly. The ao486 core is basically abandoned at this point, the dev lost interest to improve it. It does run games but it isn't hardware-correct, it takes shortcuts to simplify the emulation sacrificing correctness, it's basically just a glorified dosbox. It was the very reason I got into real hardware, because I understood there is simply no modern solution which would be able to replicate everything I wanted.

EDIT: I'm drunk

Last edited by doublebuffer on 2023-08-02, 08:30. Edited 1 time in total.

Reply 101 of 162, by appiah4

User metadata
Rank l33t++
Rank
l33t++

Oh, I didn't know that. That sounds kind of weird though, I would think it ought to have enough power to emulate at least a 386 and ISA Bus considering the other systems it can do?

Retronautics: A digital gallery of my retro computers, hardware and projects.

Reply 103 of 162, by vstrakh

User metadata
Rank Member
Rank
Member
appiah4 wrote on 2023-08-02, 08:08:

Doesn't the MİSTer basically do this already?

I guess the expectation is the ability to freely mix and match the components.
MiSTer provides the whole system, but does not let user who is not experienced FPGA designer to replace one piece (like the video/audio ISA card) with another.

Reply 104 of 162, by appiah4

User metadata
Rank l33t++
Rank
l33t++
doublebuffer wrote on 2023-08-02, 08:25:
appiah4 wrote on 2023-08-02, 08:21:

considering the other systems it can do?

I have not heard about such systems, which ones?

It can definitely do console systems WAY beyond the 486 such as PSX, NeoGeo, Turbografx etc as well as top end Amigas such as the 3000 and 4000..

The ao486 core has indeed not been updated in over a year, though: https://github.com/MiSTer-devel/ao486_MiSTer

Retronautics: A digital gallery of my retro computers, hardware and projects.

Reply 105 of 162, by rasz_pl

User metadata
Rank l33t
Rank
l33t
doublebuffer wrote on 2023-08-02, 08:20:

No, it's too slow to emulate PC correctly. The ao486 core is basically abandoned at this point, the dev lost interest to improve it. It does run games but it isn't hardware-correct, it takes shortcuts to simplify the emulation sacrificing correctness, it's basically just a glorified dosbox. It was the very reason I got into real hardware, because I understood there is simply no modern solution which would be able to replicate everything I wanted.

yes it was started as line by line dosbox (or some other soft x86 emulator) opcode interpreter, but its not terrible by any means, and it got L2 cache support barely three years ago making it even faster. Afaik it sits somewhere around fast 386 right now. https://www.reddit.com/r/fpgagaming/comments/ … _level_2_cache/

Open Source AT&T Globalyst/NCR/FIC 486-GAC-2 proprietary Cache Module reproduction

Reply 106 of 162, by Maryoo

User metadata
Rank Newbie
Rank
Newbie
appiah4 wrote on 2023-08-02, 08:08:
Maryoo wrote on 2023-08-02, 08:00:

And I'm waiting for an FPGA system the size of a Raspberry Pi that will be able to program every component from the retro PC world with ten times more efficiency than the original.

Doesn't the MİSTer basically do this already?

Maybe some weak 386 will be able to emulate, but I would like to run games with 3D acceleration like Need for Speed ​​3 on it.

Reply 107 of 162, by appiah4

User metadata
Rank l33t++
Rank
l33t++
Maryoo wrote on 2023-08-02, 10:59:
appiah4 wrote on 2023-08-02, 08:08:
Maryoo wrote on 2023-08-02, 08:00:

And I'm waiting for an FPGA system the size of a Raspberry Pi that will be able to program every component from the retro PC world with ten times more efficiency than the original.

Doesn't the MİSTer basically do this already?

Maybe some weak 386 will be able to emulate, but I would like to run games with 3D acceleration like Need for Speed ​​3 on it.

MİSTer can emulate a PSX, so a low end Pentium with a Voodoo card should be doable IMO. It's not presently done, though..

Retronautics: A digital gallery of my retro computers, hardware and projects.

Reply 109 of 162, by HanSolo

User metadata
Rank Member
Rank
Member
appiah4 wrote on 2023-08-02, 11:03:
Maryoo wrote on 2023-08-02, 10:59:
appiah4 wrote on 2023-08-02, 08:08:

Doesn't the MİSTer basically do this already?

Maybe some weak 386 will be able to emulate, but I would like to run games with 3D acceleration like Need for Speed ​​3 on it.

MİSTer can emulate a PSX, so a low end Pentium with a Voodoo card should be doable IMO. It's not presently done, though..

I think it's limited by the number of Logic Elements. A Pentium with Voodoo is probably too complex to be recreated on the FPGA chip of the DE10 Nano.

Reply 110 of 162, by doublebuffer

User metadata
Rank Member
Rank
Member
HanSolo wrote on 2023-08-02, 15:40:
appiah4 wrote on 2023-08-02, 11:03:
Maryoo wrote on 2023-08-02, 10:59:

Maybe some weak 386 will be able to emulate, but I would like to run games with 3D acceleration like Need for Speed ​​3 on it.

MİSTer can emulate a PSX, so a low end Pentium with a Voodoo card should be doable IMO. It's not presently done, though..

I think it's limited by the number of Logic Elements. A Pentium with Voodoo is probably too complex to be recreated on the FPGA chip of the DE10 Nano.

You're right. DE-10 has 110,000 logic elements. Pentium has 3,100,000 transistors. Althoug a logic element is composed of at least 3 transistors, there's no way a Pentium core can fit to DE-10.

Reply 111 of 162, by appiah4

User metadata
Rank l33t++
Rank
l33t++
doublebuffer wrote on 2023-08-02, 23:20:
HanSolo wrote on 2023-08-02, 15:40:
appiah4 wrote on 2023-08-02, 11:03:

MİSTer can emulate a PSX, so a low end Pentium with a Voodoo card should be doable IMO. It's not presently done, though..

I think it's limited by the number of Logic Elements. A Pentium with Voodoo is probably too complex to be recreated on the FPGA chip of the DE10 Nano.

You're right. DE-10 has 110,000 logic elements. Pentium has 3,100,000 transistors. Althoug a logic element is composed of at least 3 transistors, there's no way a Pentium core can fit to DE-10.

Interesting. How exactly does the PSX core run then?

Retronautics: A digital gallery of my retro computers, hardware and projects.

Reply 112 of 162, by doublebuffer

User metadata
Rank Member
Rank
Member
appiah4 wrote on 2023-08-03, 07:52:

Interesting. How exactly does the PSX core run then?

Playstation CPU is around something like 486 if I remember correctly, so not a pentium.

Reply 113 of 162, by appiah4

User metadata
Rank l33t++
Rank
l33t++
doublebuffer wrote on 2023-08-03, 08:24:
appiah4 wrote on 2023-08-03, 07:52:

Interesting. How exactly does the PSX core run then?

Playstation CPU is around something like 486 if I remember correctly, so not a pentium.

Performance-wise, maybe: It runs at around 30MIPS IIRC, which is roughly in line with a 486-50MHz or thereabouts? But architecturally, not quite, it is a RISC processor with about 1m transistors. By the same math, that should not be emulatable with the amount of logic cores. Besides, there is also the GTE to emulate etc..

I'm off to check out that PSX core now, intriguing..

Retronautics: A digital gallery of my retro computers, hardware and projects.

Reply 114 of 162, by vstrakh

User metadata
Rank Member
Rank
Member
doublebuffer wrote on 2023-08-02, 23:20:

DE-10 has 110,000 logic elements. Pentium has 3,100,000 transistors. Althoug a logic element is composed of at least 3 transistors,

That's why on FPGA you implement the resulting higher-level functionality, and don't model each individual transistor or gate equivalent.

Reply 115 of 162, by doublebuffer

User metadata
Rank Member
Rank
Member
vstrakh wrote on 2023-08-03, 09:17:

That's why on FPGA you implement the resulting higher-level functionality, and don't model each individual transistor or gate equivalent.

I never claimed such. Technically you don't implement anything on FPGA directly, you define the signal paths with a language such as VHDL, which is then feed to the compiler which then configures the logical elements on the FPGA to act as an boolean logic primitives.

Reply 116 of 162, by rasz_pl

User metadata
Rank l33t
Rank
l33t
doublebuffer wrote on 2023-08-02, 23:20:

You're right. DE-10 has 110,000 logic elements. Pentium has 3,100,000 transistors. Althoug a logic element is composed of at least 3 transistors, there's no way a Pentium core can fit to DE-10.

Thats not how this works. You arent recreating Pentium architecture, but building something to run its instruction set sufficiently fast. For comparison "modern" (~15 year old ARMv6) but simplified (optimized for size and cost, not speed) Arm M0 (full source available for Academic use https://www.arm.com/resources/research/enable … ckstart-inquiry) is ~12K gates https://developer.arm.com/Processors/Cortex-M0 and does 2.33 CoreMark/MHz, equal to Pentium MMX https://www.eembc.org/viewer/?benchmark_seq=13456. Dhrystone results are also similar http://www.roylongbottom.org.uk/dhrystone%20results.htm with Intel 0.5/1.38 versus Arm 0.96/1.91.

ao486 wasnt designed as a CPU, but Afaik as a direct translation of one of software PC emulator x86 cpu cores into verilog. Its somewhere around 0.3 CoreMark/MHz. Biggest problem with modernizing ao486 is that its good enough, and a ton of work would maybe speed it up 5x times after a year of one person dedicating his whole free time to it for no compensation.

Open Source AT&T Globalyst/NCR/FIC 486-GAC-2 proprietary Cache Module reproduction

Reply 117 of 162, by doublebuffer

User metadata
Rank Member
Rank
Member
rasz_pl wrote on 2023-08-03, 09:50:

Thats not how this works. You arent recreating Pentium architecture, but building something to run its instruction set sufficiently fast.

Right, but that would mean the original pentium wasn't optimized for the die area/port count which I find hard to believe. The fastest implementation for pentium architecture is pentium, everything else is imitation (the dreaded word "emulation"). If we accept imitation, is there any reason to not to implement it on software instead of the much more cumbersome fpga? Parallelism and better power efficiency come to mind, but as I see it if we're ready to sacrifice accuracy then software would do just as well.

Reply 118 of 162, by vstrakh

User metadata
Rank Member
Rank
Member
doublebuffer wrote on 2023-08-03, 09:48:
vstrakh wrote on 2023-08-03, 09:17:

That's why on FPGA you implement the resulting higher-level functionality, and don't model each individual transistor or gate equivalent.

I never claimed such.

But you didn't you say that "pentium on de10 is impossible because of 110000 Y vs 3000000 Z".

doublebuffer wrote on 2023-08-03, 09:48:

Technically you don't implement anything on FPGA directly, you define the signal paths with a language such as VHDL, which is then feed to the compiler which then configures the logical elements on the FPGA to act as an boolean logic primitives.

Do you have any practical experience on this?
A single LE is not a boolean logic primitive, it implements an arbitrary function of up to 6 inputs. A single LE literally stores up to 64 outputs for all possible combinations of its inputs.

Reply 119 of 162, by vstrakh

User metadata
Rank Member
Rank
Member
doublebuffer wrote on 2023-08-03, 10:05:

is there any reason to not to implement it on software instead of the much more cumbersome fpga?

The latency is the answer. FPGA delivers well defined signals, ideally equal to the real hw, though internally the mechanics might differ.
A software not only can't do low latency, it can't even maintain that latency consistent, it's jumping all over the place, it's noticeable and very irritating.