MiSTer: MiST on Terasic DE10-nano board.

https://github.com/MiSTer-devel/Main_MiSTer/wiki

Moderators: Mug UK, Zorro 2, Greenious, spiny, Sorgelig, Moderator Team

Sorgelig
Atari Super Hero
Atari Super Hero
Posts: 854
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

MiSTer: MiST on Terasic DE10-nano board.

Postby Sorgelig » Wed Jun 21, 2017 4:09 am

Hi all!

Here is the project i'm working on: https://github.com/MiSTer-devel/Main_MiSTer/wiki
You can read a basic info in the link.

In short, it's MiST ported to DE10-nano board with 4x larger FPGA (110K LE) and faster ARM (800MHz).

First question i've got:
Why you don't use SRAM on the board instead of SDRAM?

The answer is simple - the cost. Even 512KB SRAM costs much higher than 32MB SDRAM. After work on many cores i've found that SDR SDRAM is enough for 99% cases. And since new FPGA has more FPGA RAM, it's possible to emulate system memory up to 128KB(and more - depend on core design) without any external memory.
Last edited by Sorgelig on Thu Aug 17, 2017 6:02 pm, edited 1 time in total.

ericgus
Captain Atari
Captain Atari
Posts: 339
Joined: Fri Apr 08, 2016 4:53 am
Location: Boston MA - USA

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby ericgus » Wed Jun 21, 2017 4:54 am

Are there enough free lines to the FPGA to support legacy I/O connectors for things like disk drives, serial ports, tape drives, parallel ports and other old devices? {granted yes I know it also has to be supported in the core and some sort of interface would need to be assembled}

Sorgelig
Atari Super Hero
Atari Super Hero
Posts: 854
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby Sorgelig » Wed Jun 21, 2017 5:04 am

There are 19 GPIOs are free currently (and additional 20 GPIO can be freed if VGA output is not required), but i suggest not to rush to use GPIOs. Most devices can be connected to USB. Many devices like serial, parallel ports, FDD, HDD have USB converters. So, you can connect it to USB and then add custom API to access these devices.
MiSTer runs Linux as backend which has plenty of drivers for new and old devices.

braincell1973
Atari freak
Atari freak
Posts: 53
Joined: Mon Jul 25, 2011 10:32 am

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby braincell1973 » Wed Jun 21, 2017 7:34 am

does the linux backend just handle IO ?

Sorgelig
Atari Super Hero
Atari Super Hero
Posts: 854
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby Sorgelig » Wed Jun 21, 2017 10:24 am

Linux is where ported MiST firmware runs (as a Linux app). So, basically it acts as MiST firmware.

User avatar
Newsdee
Atari Super Hero
Atari Super Hero
Posts: 923
Joined: Fri Sep 19, 2014 8:40 am

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby Newsdee » Wed Jun 21, 2017 10:55 am

Would it be possible to run the firmware with a dummy core for development and debug? That would be super useful to make work on it more robust.

Sorgelig
Atari Super Hero
Atari Super Hero
Posts: 854
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby Sorgelig » Wed Jun 21, 2017 11:12 am

Firmware development is much easier and more convenient than on MiST. I'm using Visual Studio 2015 as IDE which configured to use makefile and script. So, i just press F7 and code gets compiled and uploaded (by script) in one shot. DE10-nano has dedicated USB port for console, so i can have debug info and command line in putty running in parallel.

User avatar
alexh
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2540
Joined: Wed Oct 20, 2004 1:52 pm
Location: UK - Oxford
Contact:

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby alexh » Wed Jun 21, 2017 11:47 am

Great work. @ $99 (+SDRAM board) it's a good value solution.

User avatar
fury23
Atari User
Atari User
Posts: 34
Joined: Sun Jan 10, 2016 2:08 pm

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby fury23 » Wed Jun 21, 2017 4:35 pm

Great work Sorgelig!
I have two noobie questions, what is the maximum clock MC68000 based cores (Atari ST, Amiga) can achieve, and second what is largest x86 CPU architecture can be fitted into fpga?

itaboy
Captain Atari
Captain Atari
Posts: 170
Joined: Sun May 04, 2014 6:24 pm

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby itaboy » Wed Jun 21, 2017 5:47 pm

very interesting

Sorgelig
Atari Super Hero
Atari Super Hero
Posts: 854
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby Sorgelig » Wed Jun 21, 2017 7:54 pm

maximum clock of emulated CPU depends on implementation. You need to address this question to specific core developer.
There is ao486 core which i think is possible to port to MiSTer.

User avatar
Newsdee
Atari Super Hero
Atari Super Hero
Posts: 923
Joined: Fri Sep 19, 2014 8:40 am

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby Newsdee » Thu Jun 22, 2017 12:14 am

fury23 wrote:Great work Sorgelig!
I have two noobie questions, what is the maximum clock MC68000 based cores (Atari ST, Amiga) can achieve, and second what is largest x86 CPU architecture can be fitted into fpga?


Not a direct answer, but to give you an idea the Cyclone V FPGA it uses, at 110K LE, is the largest of any board at this price. Hobby projects can't mount this FPGA chip on a board because it requires special connectors/equipment (BGA). That has been a limiting factor for many projects... MiST and other similar projects use 25K LE boards (Altera Cyclone III usually), and the Zx Uno and Arduino FPGA boards use 9K LEs (Xilinx Spartan 6 usually). So it's really great that there is a commercial board cheap enough to serve as base for the MiSTer.

This FPGA is the best we can get right now and it's likely to remain the case for a while. In terms of size it's more than four times bigger than the MiST's Cyclone III, and it also has more advanced features like better clock control, and an embedded ARM processor in the chip that can be made to interact with it. So for example, in principle it is possible to have a core using the ARM chip but of course that needs a specifically developed core for it (which does not yet exist).

The extra breathing room should be good for developers who had to spend time optimizing their cores to fit the MiST. In the end development should be fun for people to spend their free time on it, so having a good and easy to use platform is important. :) Props to Sorgelig for making this and sharing it. I'm getting a board soon to try it!

ijor
Hardware Guru
Hardware Guru
Posts: 3003
Joined: Sat May 29, 2004 7:52 pm
Contact:

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby ijor » Fri Jun 23, 2017 12:29 pm

Great work. I always thought that using one of these board (plus some addons) is much better than building hardware from scratch. No way we could compete with their prices.

But what's the relation with the Mist??? Cores binaries aren't compatible.

mzry
Captain Atari
Captain Atari
Posts: 262
Joined: Tue Jan 26, 2016 12:39 pm

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby mzry » Fri Jun 23, 2017 1:34 pm

If this is more powerful, could the Falcon hardware be ported to it? :d

bernouilli
Atari freak
Atari freak
Posts: 63
Joined: Fri Jan 06, 2017 5:02 pm
Location: Paris/France

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby bernouilli » Fri Jun 23, 2017 1:36 pm

ijor wrote:But what's the relation with the Mist??? Cores binaries aren't compatible.


That's why it's called MiSTer. Cores must be ported. But from what I understand, the porting should be much easier from MiST than from another board.

Sorgelig
Atari Super Hero
Atari Super Hero
Posts: 854
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby Sorgelig » Fri Jun 23, 2017 4:26 pm

The main relation to MiST is firmware and API. Although API slightly changed (to make it more advanced and faster) it's still the same at 99%.
Binaries for different FPGAs cannot be compatible like it does between compatible CPUs. The only way to make binary compatible is to use exactly the same FPGA chip, so it won't get any noticeable advantage over original MiST.

Porting from MiST is quite simple, especially if you are developer of the MiST core.
Porting from other boards is not hard as well, mainly because FPGA is large and most cores from internet can fit with less effort than if you port it to MiST.

ijor
Hardware Guru
Hardware Guru
Posts: 3003
Joined: Sat May 29, 2004 7:52 pm
Contact:

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby ijor » Fri Jun 23, 2017 6:13 pm

Sorgelig wrote:The main relation to MiST is firmware and API.


I realize, but this is not much related to the hardware. You can have a compatible firmware in a completely different board, even using a Xilinx FPGA.

Sorgelig
Atari Super Hero
Atari Super Hero
Posts: 854
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby Sorgelig » Fri Jun 23, 2017 7:06 pm

ijor wrote:I realize, but this is not much related to the hardware. You can have a compatible firmware in a completely different board, even using a Xilinx FPGA.

I don't get your point of discussion. If you have Xilinx FPGA with MiST firmware then fine - use it. I've explained why it has this name and how much it's compatible with MiST. If you don't want/need it, then simply pass.
Or create other project which will have better specs and will retain binary compatibility - i will see how you will do it ;)

NML32
Captain Atari
Captain Atari
Posts: 307
Joined: Tue Mar 11, 2014 1:54 am
Location: USA/Florida

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby NML32 » Fri Jun 23, 2017 7:57 pm

@Sorgelig great job on your MiSTer project. I really want to set one up but I'll need to wait and see if anyone decides to make and sell the memory and add-on boards.
Quick question, are there any plans on adding a port for a DB9 joystick?

ijor
Hardware Guru
Hardware Guru
Posts: 3003
Joined: Sat May 29, 2004 7:52 pm
Contact:

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby ijor » Fri Jun 23, 2017 8:03 pm

Sorgelig wrote:If you don't want/need it, then simply pass. Or create other project which will have better specs and will retain binary compatibility - i will see how you will do it ;)


Man, you lately seem to be take things too personally and react aggressively.

I have nothing to say against your project. I praised the project already and I agree pretty much with the idea (I actually own several Terasic boards). I am also fully aware about the reason for not being binary compatible. I wasn't complaining about that at all. I was just wondering why the name because I don't see it much related to the MiST. You think it is quite related and you like the name, fine with me. No reason to react like that.

Sorgelig
Atari Super Hero
Atari Super Hero
Posts: 854
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby Sorgelig » Fri Jun 23, 2017 8:44 pm

@ijor,
ijor wrote:because I don't see it much related to the MiST.

You have many Terasic boards but most likely don't have a MiST board. That's why you treat the MiST just like another FPGA board. You look at FPGA board only from HW point of view. That's where you're wrong and don't understand what's relation between MiST and my project on DE10-nano.

NML32 wrote:Quick question, are there any plans on adding a port for a DB9 joystick?

DE10-nano has USB port. You either can use USB modern pad/joystick or some DB9->USB converter. You even can have wireless USB pad(like me).
So, i don't see a good reason to waste GPIO for DB9. It won't work better than DB9->USB converter.

NML32
Captain Atari
Captain Atari
Posts: 307
Joined: Tue Mar 11, 2014 1:54 am
Location: USA/Florida

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby NML32 » Fri Jun 23, 2017 9:39 pm

Sorgelig wrote:
NML32 wrote:Quick question, are there any plans on adding a port for a DB9 joystick?

DE10-nano has USB port. You either can use USB modern pad/joystick or some DB9->USB converter. You even can have wireless USB pad(like me).
So, I don't see a good reason to waste GPIO for DB9. It won't work better than DB9->USB converter.


Thanks, Both of your suggestions are decent options for me. Sometimes I use my USB joypad on my MiST and other times I use my DB9 but I haven't tried a wireless joystick yet.

ericgus
Captain Atari
Captain Atari
Posts: 339
Joined: Fri Apr 08, 2016 4:53 am
Location: Boston MA - USA

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby ericgus » Sat Jun 24, 2017 6:24 am

Sorgelig wrote:@ijor,
So, i don't see a good reason to waste GPIO for DB9. It won't work better than DB9->USB converter.


I'd be curious to see if a C64 Koala pad would work with that arrangement.. it connects to the db9 but its not a joystick.

Sorgelig
Atari Super Hero
Atari Super Hero
Posts: 854
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby Sorgelig » Sat Jun 24, 2017 8:39 am

ericgus wrote:I'd be curious to see if a C64 Koala pad would work with that arrangement.. it connects to the db9 but its not a joystick.

Not sure about Koala pad itself, but if you want a pointing device for C64, then may be it can be emulated by mouse.

Different retro systems have different I/O devices. One computer needs DB9. Another computer needs some serial device. Third computer needs some specific parallel bus. Any amount of free GPIOs will be quickly occupied if go this way. And imagine different emulators have different maps of GPIOs which may even break the external device or even DE10-nano board. This is not correct way for universal board. That's why i suggest to use some existing converters of retro buses to USB. It will assure USB device wont conflict with specific core if core doesn't know the device (unlike devices on GPIO).

But as DIY board, some specific modified cores for sole use can have custom devices connected to GPIO. If you want to use DE10-nano as Amiga only emulator, then may be you will want to add ports directly to GPIO and rewrite the core to use these ports.

PS: i remember there are several standards of DB9. If i remember correct, some people fried the Amiga ports by connecting non-compatible joystick. Do you want to take this risk?

User avatar
Newsdee
Atari Super Hero
Atari Super Hero
Posts: 923
Joined: Fri Sep 19, 2014 8:40 am

Re: MiSTer: MiST on Terasic DE10-nano board.

Postby Newsdee » Sat Jun 24, 2017 9:42 am

It's always possible to have different daughterboards for different purposes, although it could get messy to make cores recognize one versus the other. Perhaps four pins can be sacrificed to give a 4-bit identification number, so the cores can automatically know what is plugged?


Return to “MiSTer”

Who is online

Users browsing this forum: No registered users and 1 guest