7 ms·
Very cool. I have wanted to try some FPGA stuff out but it seems like its very encumbered by proprietary toolchains and industry secrets. Wondering what the pr
by baroffoos 8y ago
Very cool. I have wanted to try some FPGA stuff out but it seems like its very encumbered by proprietary toolchains and industry secrets.
Wondering what the pros/cons are of using this vs a raspberry pi.
- nomel 8y agoOne pro is that you could easily make an ASIC from the FPGA code, if your design is locked and you wanted to pump out a few million for cheap.
- sgt 8y agoThe C64 DTV was made like that, see https://en.wikipedia.org/wiki/C64_Direct-to-TV https://en.wikipedia.org/wiki/C64_Direct-to-TV - Really impressive and cool project by Jeri Ellsworth, wizard lady of Electronics.
- sehugg 8y agoThe IceStorm tools are open source, based on the reverse-engineered Lattice iCE40 FPGA architecture: http://www.clifford.at/icestorm/ http://www.clifford.at/icestorm/ I found it very easy to get started, although first you have to buy a compatible FPGA (iCEstick etc.) and make an adapter for your preferred output device. The advantage of the MISTer is that you have all the connectors, FPGA cores for popular platforms and a couple of ARMs for when things get complicated. Raspberry PI is fine, but not great for latency, assuming you need that extra 1/60 second. (HDMI monitors add so much latency though!) Some folks have had success connecting PIs to old CRTs though.
- subway 8y agoThe iCE40 and Cyclone V are worlds apart. Yes, there's a free toolchain for iCE40, but you haven't an ice cube's chance in Hades of emulating a console CPU with the 7680 LUTs available on the largest chip in the line. By comparison, the Cyclone V found in the MISTer has over 100,000 LUTs. Alas, it has no free toolchain.
- simcop2387 8y agoanything 6502 based should fit on the ice40s, though you might need additional hardware for interfacing. https://hackaday.com/2018/03/29/apple-one-on-fpga/#more-301201 https://hackaday.com/2018/03/29/apple-one-on-fpga/#more-3012...
- PretzelPirate 8y agoThe linked page has a section on why this was done on an FPGA instead of a pi: https://github.com/MiSTer-devel/Main_MiSTer/wiki/Why-FPGA https://github.com/MiSTer-devel/Main_MiSTer/wiki/Why-FPGA
- Grazester 8y agoRaspberry is emulation which will not be console accurate. The FPGA would more accurate since it is recreating the console on a hardware level(chip)
- wtallis 8y agoI think it's more fair to say that a RPi probably isn't powerful enough to run the emulators that are completely accurate, because some of them do exist.
- ars 8y agoIt's not a direct replication of the original chip though. It's an emulation of the functional results, written to work well on an FPGA, and run in parallel.
- pmlamotte 8y agoTo expand on that, Higan[1] is a super accurate SNES emulator that requires a decent CPU to run at full speed due to all of the weird quirks and on-cartridge chips[2]. For the popular games, typical emulators are probably good enough, but for true accuracy of all the quirks and special chips you need quite a bit of compute power. In the case of Speedy Gonzales, at least for a time (not sure if it's still the case) the only emulator you could actually beat the game on was Higan. By comparison, Analogue sells the Super NT which is their own FPGA SNES that uses micro USB for power and probably requires about as much power as a Pi, but is comparable to Higan in terms of accuracy. Their implementation still uses physical carts though, so they skipped on implementing the special chips that were contained in the cartridge of various games. For _that_, there is the SD2SNES flash cart which runs its own FPGA for most of the chips (SA-1 support in beta). [1] https://byuu.org/emulation/higan/ https://byuu.org/emulation/higan/ [2] https://arstechnica.com/gaming/2011/08/accuracy-takes-power-one-mans-3ghz-quest-to-build-a-perfect-snes-emulator/ https://arstechnica.com/gaming/2011/08/accuracy-takes-power-...
- travbrack 8y agoThere's a very detailed answer to your exact question in the readme
- bluescrn 8y agoEmulation on a Pi adds several frames of latency, between the emulator, OS, and graphics pipeline. When combined with the latency of a modern LCD screen, this can be enough to really impair playability of some games. FPGA-based recreations of old machines can theoretically eliminate most of that latency (other than the display lag).