FPGA Vs Software Emulation - Which Is Best? We Asked Four Experts 11
Image: Damien McFerran / Time Extension

Once upon a time, if you wanted to play a retro game without using the original hardware, then your only option was software-based emulation. These emulators would be coded for platforms such as Windows, Linux or Android, and would replicate the performance of different computers and consoles purely via code.

As these host platforms have grown in power over the years, so too has the scope of software-based emulation; more powerful computers mean that platforms such as the PS2, PS3 and even Switch can be emulated in software – offering the ability to reconnect with the past on anything from a desktop PC to a typical smartphone. Even vintage consoles themselves can be turned into emulation platforms when loaded with the correct homebrew software.

For years, people were perfectly content with software-based emulation, but the world of retro gaming was shaken by the arrival of Field-Programmable Gate Array chips. These can be programmed to behave like retro gaming systems on a hardware level, thereby offering incredible accuracy and low latency. The open-source MiSTer FPGA system has arguably been at the vanguard of this revolution, but we've also had the popular Analogue Pocket, Mega Sg, Super Nt and Analogue Duo appear on the scene, all powered by FPGA chips.

FPGA Vs Software Emulation - Which Is Best? We Asked Four Experts 11
Modern-day emulation allows the replication of systems such as the Wii U on PC-based hardware, like the AYANEO Flip DS — Image: Damien McFerran / Time Extension

Despite the increasing popularity of FPGA-based systems, software emulation hasn't shown any signs of slowing down. Commercial products such as the Polymega, Evercade, Mega Drive Mini and Taito Egret II Mini are all based on software emulation and the recent news that Apple has relaxed its App Store policy to allow emulators has triggered a surge of interest in them. We've also seen a flood of handhelds from companies like Anbernic, Powkiddy and Miyoo which offer retro emulation on the move.

Both options have their own strengths and weaknesses, so we thought it would be best to speak to four experts in this field in order to get a good idea of which is likely to be the best based on the end user's preferences.

We spoke to the following individuals for this piece:

Voultar

A talented hardware engineer who has produced a wide range of mods and upgrades for classic systems, including the Wii U NAND recovery kit and a host of RGB mods for systems such as the SNES, N64 and PC Engine.

Porkchop Express, Mister Addons

The owner and designer of MiSTer Addons, a company focused on accessories for the MiSTer FPGA gaming platform.

Russ Crandall, Retro Game Corps

Crandall runs Retro Game Corps, a YouTube channel which focuses on handheld emulation devices, hardware reviews, guides and other retro gaming content.

Sean Cleaver, Blaze Entertainment

Cleaver is the Head of Marketing at Blaze, the company behind the Evercade line of systems, which utilise software emulation to deliver collections of classic titles in physical form.


Time Extension: What would you say are the strengths of FPGA emulation?

Voultar: The main strength of FPGA emulation is that it's a bare metal implementation of the target hardware and can be cycle-accurate with zero software overhead.

For example, software emulators typically rely on USB ports for controller connectivity. USB connections have to be "polled" by software, which can result in a certain amount of latency or "lag" that doesn't exist when playing on real hardware. As far as cycle-accurate emulation is concerned, you can certainly do it via software emulation, but it's incredibly expensive and can require very beefy hardware. With FPGA emulation, you don't need to worry about this.

FPGA Vs Software Emulation - Which Is Best? We Asked Four Experts 11
Ever since MiSTer FPGA arrived on the scene, it has become popular with hardcore retro gamers thanks to its high accuracy, low latency and vibrant community of modders and developers — Image: Damien McFerran / Time Extension

Porkchop Express: FPGA emulation works at a lower level than software emulation, which makes accurate signal timing easier to achieve.

Russ Crandall: I’m really drawn to FPGA gaming because it’s a way to accurately recreate my childhood memories without dealing with the complexities (and costs) of upgrading original consoles to work in more modern situations. I love the idea of having a truly accurate experience of playing my favourite retro systems all in one box. This also has the added bonus of relieving my beloved original consoles from the wear and tear that comes from gaming — it’s the best of both worlds.

Sean Cleaver: Retro game fans want many things from their products, but not all are equal. Some want the nostalgia hit of something they remember, and others might just want to experience the quality games that aren’t accessible on modern systems. Then there are some that chase the metaphorical dragon of recreating game performance with as much accuracy as possible, and for that, FPGA is an excellent choice. When it comes to tinkering with equipment, programming, and the engineering of emulation, it’s a great option for a lot of people with an interest in that side of emulation.

Time Extension: What would you say are the weaknesses of FPGA emulation?

Russ Crandall: FPGA has a high barrier of entry in a couple of key ways. MiSTer or similar setups can have high up-front costs and can be intimidating to set up — mine sat in its box for months because I felt like I needed to dedicate a whole weekend to getting it set up!

On a similar note, the Analogue Pocket FPGA handheld is not only costly but also backlogged due to demand, with many people waiting over a year for their orders to be fulfilled. I expect this to improve in time as new FPGA solutions become more widespread, but for now, we have few options, and they all have some sort of cost or availability drawback.

Sean Cleaver: FPGA is a niche within a niche to some extent which is reflected in the products that currently use it. The cost of building a unit and the knowledge resources needed certainly keep it from a more mass-market option at the moment. The Analogue Pocket probably being the closest FPGA has been to that, but for the most part, you can’t visit a retailer, get it quick, and just play it. There are cost and availability issues of the chips as well, which can harm a growing consumer base if delivery is a long time away. It also requires either an existing collection of games (physical or digital), which is great if you already have that, but many will not.

It can be very reliant on community development and requires more effort than other options – that tinkering side of things. Like most unlicensed emulation devices, it is very difficult to stop tinkering and get down to the business of what emulation is championed for – playing and preserving games. You end up spending way more time working on the device compared to actually playing a game.

Porkchop Express: Software emulation can be done at a very low level or very high level using things such as libraries. FPGA programming is done using hardware description language (HDL), which uses basic logic operations (OR, AND, NOR, NAND, etc.) to replicate hardware behaviour. This ends up being a very tedious and manual process compared to using modern languages like C or C++. Because FPGA is generally lower level, the prospect of emulating more modern systems is very difficult due to complexity and limited FPGA resources. Price is also another con for FPGA emulation. If you already have a Wii, Xbox or PC, you can jump into emulation basically for free.

FPGA Vs Software Emulation - Which Is Best? We Asked Four Experts 11
MARS is a next-generation FPGA system which promises to be capable of reproducing more advanced hardware than the current MiSTer model — Image: MARS FPGA

Voultar: Unfortunately, the largest misconception concerning FPGA emulation is that it's not "emulation". The quality and accuracy of any hardware or software emulator are predicated on the implementation. Remember, emulation is entirely "abstract". We're stripping silicon down and decapping the chips in our game consoles to learn and understand what they're doing on the gate level so that we can replicate their facilities – but it's still man-made. Hardware emulation can be just as inaccurate or as problematic as software emulation.

I take issue with companies who are deceptively dishonest with their advertising and claim FPGA is "not emulation". This is patently false; if such products aren't emulation, why do they release firmware updates to fix various games that are broken or otherwise don't run properly on their hardware?

The other weakness in FPGA emulation comes from the entry cost. For example, a fully equipped MiSter can easily cost between $550 and $600, maybe more [editor's note - since this interview took place, we've seen reports of low-cost MiSTer clones for under $100, but these are yet to be properly tested]. Another problem is that the quality of some of these units are constructed by hobbyists that, while well-intentioned, are making products that are poorly designed and could even be dangerous to use. I've experienced one catch fire!

Right now, we're in the wild west of FPGA game consoles – but I certainly expect this to improve, especially with newer FPGA platforms such as MARS approaching.

Time Extension: What would you say are the strengths of software emulation?

Russ Crandall: Software emulation is a much easier starting point. You can set up an emulator program on just about any computer, tablet, phone, or dedicated handheld console and immediately start playing games. Also, some emulators will allow you to apply modern conveniences to the experience, such as cheat codes, widescreen hacks, RetroAchievements, save states, and countless combinations of shaders and filters to enhance the visual experience to your liking.

FPGA Vs Software Emulation - Which Is Best? We Asked Four Experts 11
The multi-system Polymega console uses software emulation, but it has a slick UI and can accept original carts and controllers — Image: Damien McFerran / Time Extension

Voultar: Software emulation can be amazing and can certainly check all of the boxes for most people. There's a large, seasoned group of developers who are committed to making highly accurate software emulators that are robust and can run on any platform that you have.

The entry cost for a nice software emulator box can be free to less than $100. For example, a Raspberry Pi 4 or any of these cheap, $45 embedded computers have a great deal of support from software emulation developers and can make for an amazing experience for very little money.

Sean Cleaver: Quite simply, it's accessibility and cost. You gain what FPGA doesn’t have at this time – a much lower entry point in cost for usable equipment and a much simpler (mostly) setup process.

Because of that, it can be a much better option for people to play their own older games or new games made for those old systems. It makes the act of play and preservation much more accessible, not just for the user, but for publishers producing or repackaging their IP or games for a modern console release, or offering something different like Evercade cartridges.

There are also many years of programming and research in software emulation of games and gaming hardware, so there’s much less risk involved for a company using it and compatibility for gamers using it.

FPGA Vs Software Emulation - Which Is Best? We Asked Four Experts 11
There's been a flood of handheld emulation systems from the Far East in recent years, with companies like Anbernic and Miyoo producing multiple devices each year — Image: Damien McFerran / Time Extension

Porkchop Express: Software emulation benefits from copious amounts of memory. The entire emulation process can normally be stored in memory, making things like save states a breeze.

With FPGA emulation, every cycle counts, so copying memory for save states isn't always feasible without impacting the timing of other signals.

GPUs make emulation of modern systems much more feasible, albeit no less complicated.

Time Extension: What would you say are the weaknesses of software emulation?

Sean Cleaver: There can be issues with emulator quality, setup, and the natural ceiling of software emulation (the systems it can do on the available devices, etc). You also still have to have some kind of knowledge base to set up or at least build your library.

Something we at Blaze take all the faff out of for our customers with our Evercade ecosystem and products. There is also the risk that the experience of what you get isn’t what you remember or expect from a product that uses it.

There is a “fine detail” technical aspect, of course, but if something is just wrong with how your mind's eye remembers it, you’ll bounce off it, and sometimes that can be down to how the product is set up rather than the memory being more rose-tinted.

FPGA Vs Software Emulation - Which Is Best? We Asked Four Experts 11
Emulation is used in table-top machines like the Neo Geo Mini, Astro City Mini and Taito Egret II Mini — Image: Damien McFerran / Time Extension

Porkchop Express: In order for software emulation to recreate accurate timings of systems, the emulation needs to run on a much faster CPU than the original hardware and/or parallelized. The result of this can be seen in slowdown in underpowered emulation hardware, like trying to run N64 or PS2 on single-board computers. As both hardware and software improves, these issues work themselves out.

Voultar: Software emulation suffers from the same inaccuracies that hardware emulation. The main problem with software emulation is that it's often reliant on using "tricks" to keep performance running well on various, low powered hardware.

Cycle-accurate emulation is expensive in software and requires a great deal of computation, and unfortunately, emulators often come up with slick tricks to mitigate things such as "slow-down" to keep the performance up.

The good news is that most of these tricks can be virtually undetectable to the untrained eye. But to those who care about having an authentic experience, it's a deal-breaker.

Russ Crandall: Compared to FPGA or playing on original consoles, software emulation will generally be a lot less accurate and have more input latency. After the initial thrill of playing an old favourite retro game, many users will feel that something is “off” from the original experience.

My wife is a great example; she refuses to play rhythm games on anything but original hardware because the latency introduced via software emulation breaks the experience for her.

FPGA Vs Software Emulation - Which Is Best? We Asked Four Experts 11
As well as Analogue, companies like RetroUSB have produced FPGA-based systems, such as the AVS — Image: Damien McFerran / Time Extension

Time Extension: In your personal opinion, which of the two is the most viable option at this moment in time?

Russ Crandall: I think it’ll really depend on how far down the rabbit hole someone is willing to go.

If they just want to casually revisit some beloved childhood games, then software emulation will often be the most viable option due to its affordability and prevalence across so many platforms. It’s insanely cheap and convenient to pick up a retro handheld and play the older systems in a matter of minutes.

But if someone is looking to fully recreate the original experience, then FPGA solutions will often scratch that itch in a way that software emulation cannot.

Voultar: This is an impossible question for me to answer as it's entirely relegated by the user's needs.

Do you want to invest a significant amount of money to have an experience that's as close to what you remember as a child? Or, do you want to simply enjoy these games with a convenient USB controller and at high resolutions? I think both are the right answer.

I love what FPGA hardware has done for the arcade scene over the past couple of years, and I also love that the accessibility of devices such as a Raspberry Pi 4 has introduced people to amazing games.

Sean Cleaver: That’s a tricky one because it depends on what situation you’re considering to be viable, and that can change from person to person. Someone with a big collection of retro cartridges or a big ROM library? Or someone who just has 20-30 minutes every day and wants a hit of nostalgia with as minimal fuss as possible?

Both can be equally viable because they serve two very different parts of the market. On the one hand, you have brands like our own that offer a value option for many people, but also the physical aspect of a device and a cartridge with the games. Products in this space are at different price points depending on features and usability but are very much within an affordable area for the majority of people who want to just pick up and play. Time is also the most precious resource for many, so if done right, it can serve an audience of collectors and gamers who want to play the games with as minimal fuss and setup as possible.

Once you get into the price points of FPGA, you’re getting to a much more enthusiast-level audience that is willing to pay a higher price to achieve a more desired emulation outcome with a bit of work, which is in itself a hobby of its own adjacent to gaming. That gives people the freedom to spend more time with it compared to the quicker and easier route that software can provide. So, both are equally viable for their audiences, and both have the potential to become even more important as the interest in retro gaming continues to grow.

Porkchop Express: The right solution for each person will be a little different.

If you're a flat-screen gamer with a computer, there are lots of good options out there. The price is free, but the accuracy might be lower than FPGA emulation.

If you want to use a CRT, FPGA emulation is great because peripherals like light guns work due to the zero latency of analog output on things like MiSTer.

If you have a modern-ish console like Switch, or Xbox Series, there are lots of good ways to play most systems up to the 2000's and sometimes beyond. Everyone's preferences will be a bit different.

FPGAs are a more "pure" approach but come with a price tag. Software emulation is very accessible and can do some things that FPGA can't. The important aspect to all of this, in my opinion, is preservation. Open-source emulation allows for current knowledge to be preserved well into the future.


Which is best: FPGA or software emulation? (450 votes)

  1. FPGA38%
  2. Software emulation22%
  3. I use both, and can't decide between them32%
  4. I have no idea, why are you in my house?!8%