MISTer on DE0-nano-SoCKit?

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

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

Doozer
Atariator
Atariator
Posts: 18
Joined: Fri Apr 22, 2016 12:26 pm

Re: MISTer on DE0-nano-SoCKit?

Postby Doozer » Tue Jan 09, 2018 4:34 pm

olin wrote:Just an update, I was able to run the SDRAM on 150MHz for more than 3 hours with 0 errors, then gave up. I also connected a heat sink and a fan (Sunon MC25100V2-000U-A99, Vapo-Bearing, 16.0dB). I found out the fan works when powered by 3.3V (spec. is 5V) with lower RPM (although it is not advertised feature) so it is more silent. To power it by 3.3V I used P4 connector pin 1 and 2, but I plan to update the IO board and make an alternative fan connector for 3.3V. On touch the heat-sink is slightly warm (under load for ~ 40 minutes), my thermocouple displayed ~32 deg.C which should be OK.


Hi Olin,

I have also discovered that a fan (here no heatsink on CPU) is helping to stabilize the clock and enables higher SDRAM frequency usability. I has able to run at 150 MHz for 12 hours with 2 errors. Normally the counter reaches 10 errors after few minutes without the fan. I have added 10x20 passive heatsink to the memory chip but it does not bring any enhancement. The key is in the cooling of the SoC/FPGA I would say.

I have also observed that by design (code not inspected yet) the mister binary is running 100% on a single core all the time. Killing the process is bringing back idle cycles cooldown to the chip. I need to investigate why the binary is in free run mode, could be due to a while ( true ) loop effect.

olin
Atari freak
Atari freak
Posts: 54
Joined: Tue Nov 21, 2017 8:57 pm

Re: MISTer on DE0-nano-SoCKit?

Postby olin » Wed Jan 10, 2018 12:42 am

Thanks for the ideas. Just to clarify, It was me who gave up after 3 hours of memtesting, not the DE0-ns :) I just didn't see any point of testing longer when there were 0 errors and so many exciting things to run on MiSTer...

I've noticed the minimig core was recently updated and because my previous build of minimig was not working (black screen, but was not sure before whether it might be caused by my then-untested SDRAM) I've rebuilt the latest version from git and the core now works. Again, I didn't do thorough test, just run couple of demos and games from floppies, but so far no issues found. Few things that would be nice to have is scan-doubler support (I run it on 15kHz SCART) and floppy disk motor/access sounds, but I am happy the way it works now.

Sorgelig
Atari God
Atari God
Posts: 1924
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: MISTer on DE0-nano-SoCKit?

Postby Sorgelig » Wed Jan 10, 2018 2:30 am

Some Amiga games/apps use interlaced modes. There are many screen modes on Amiga. Some demos even use dynamic resolution change while video scanning. So simple scandoubler won't work.

olin
Atari freak
Atari freak
Posts: 54
Joined: Tue Nov 21, 2017 8:57 pm

Re: MISTer on DE0-nano-SoCKit?

Postby olin » Sun Jan 14, 2018 11:12 pm

So simple scandoubler won't work.

Understood - VGA out would have to use the same principle as HDMI on de10-nano: which is independent VGA signal generator (not tied to minimig core 15kHz video out) that is fed by some sort of scaler. On the other hand minimig (original project) and MiST must have already solved the VGA out for minimig core, so maybe the solution already exists, "just" need to be back ported to de0ns port ...

Related to de0ns io board, I've done some minor changes: added Fan2 to supply 3.3V, added 3 non-plated holes to the top 3 Arduino pin header (for possible future use of Arduino pins). I've ordered new set of boards (latest version), this time on pcbway, should get them hopefully in 2 or 3 weeks. Once I verify the populated boards are OK I'll publish gerebers and create BOM and some explanatory text (not to confuse the board with de10 boards). I don't expect big issues, my current board with cooling worked perfectly today for several hours running minimig core.

Related to board soldering, I've ordered a preheating station from aliexpress with the hope I could use it for SMT reflow process. The station should support up to 400 deg. C, so temperature-wise it should be sufficient. It has only manual temperature control (temp. up, down, set buttons) but I plan to add an MCU to control the buttons to automatically set the temp. according to JDEC reflow profiles. Any suggestions or experience with using preheat stations for reflow?

Sorgelig
Atari God
Atari God
Posts: 1924
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: MISTer on DE0-nano-SoCKit?

Postby Sorgelig » Mon Jan 15, 2018 2:48 am

i think, pre-heating requirement is too exaggerated. I've soldered many SDRAM boards and never had problem. And i live in high humidity country.

Regarding scandoubler form minimig: MiST has one, but it doesn't work correctly. It's simple scandoubler - nothing more. It turns on at standard TV resolutions and off at custom resolutions and supposed to cover all resolutions on VGA. It practice it's not. You can use only standard TV resolutions + one DBLNTSC resolution matching VGA. May be another one is DBLPAL if your monitor will accept it. Did you see flickering on VGA, no? You will see it on interlace resolutions with scandoubler ;)

olin
Atari freak
Atari freak
Posts: 54
Joined: Tue Nov 21, 2017 8:57 pm

Re: MISTer on DE0-nano-SoCKit?

Postby olin » Mon Jan 15, 2018 8:05 pm

i think, pre-heating requirement is too exaggerated.

I agree, the problem with my previous SDRAM boards was different (IC brand, speed rating, old PLL settings in memtest, ect.), but I actually meant something else. What I meant is to use preheating station as a reflow station, so that I don't have to solder SMT parts manually with soldering iron. Instead, just use a stencil and a reflow paste and then bake components on the board (s) by placing it on the preheat station with appropriate temperature. Header pins of course have to be soldered manually (unless you have another, possibly expensive, equipment).

It turns on at standard TV resolutions and off at custom resolutions...

That's interesting, does Amiga HW allow the programmer to set the vertical resolution (ie. how many scanlines are displayed within a frame), therefore custom refresh frequency (meaning in between 50 and 60, like 57)? Or is the custom resolution limited to horizontal resolution (amount of pixels per scanline)? I haven't seen anything like that on normal (SW based) amiga emulator (EUAE in my case), is there any demo I could try to compare minimig and SW emulator in this regard? I ported EUAE to PS2 and PS3 back in the day but don't remember seeing handling of custom resolutions...

Did you see flickering on VGA, no?

Well, my build of minimig core for de0ns doesn't seem to support scandoubler from settings file (maybe I didn't modify the code properly), therefore my VGA monitor doesn't display any picture. But the interlaced modes work quite right on 15kHz (SCART), I was surprised how smooth the video output looked like, nearly no flickering (unless you concentrate on it and try to detect it in hires screens).

Sorgelig
Atari God
Atari God
Posts: 1924
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: MISTer on DE0-nano-SoCKit?

Postby Sorgelig » Tue Jan 16, 2018 12:42 am

Amiga HW originally support programmable video resolutions. At least AGA chipset. You can program any horizontal and vertical resolutions with pixel clock 7, 14 or 28MHz. There were some special monitors supporting 1024x1024 resolution with 10Hz :)
With correct monitor device driver in Workbench you can have VGA resolution 640x480@60 non-interlaced.

Software emulators also support this as it's standard feature of Amiga. But SW emulators is bound to resolutions of their OS, so all emulated resolutions are converted to OS resolution.
Something, similar with HDMI on MiSTer - it doesn't matter what resolution Minimig output, it will be scaled and frame-converted to standard HDMI resolution due to integrated scaler. That's why you can use 1280x720 in Workbench.

olin wrote:Well, my build of minimig core for de0ns doesn't seem to support scandoubler from settings file (maybe I didn't modify the code properly), therefore my VGA monitor doesn't display any picture. But the interlaced modes work quite right on 15kHz (SCART), I was surprised how smooth the video output looked like, nearly no flickering (unless you concentrate on it and try to detect it in hires screens).

Of course, on TV you will get a perfect picture. Interlaced mode is a standard mode for TV.
My comment was toward scandoubled resolution. It produces scandoubled interlaced video which flickers on VGA monitor. Original interlaced resolution may produce a slight flickering on TV, but main purpose of interlaced mode is provide twice more vertical resolution. Scandoubler removes this advantage and simply produces 2 frames switching 25/30 times per second.

If you want to add scandoubler, then you need to take it from MiST version. It's called amber there.

olin
Atari freak
Atari freak
Posts: 54
Joined: Tue Nov 21, 2017 8:57 pm

Re: MISTer on DE0-nano-SoCKit?

Postby olin » Mon Jan 29, 2018 1:26 pm

Update: I received IO boards v. 0.2d from pcbway and assembled one of the board over the weekend to verify the design. All seems to work fine, no hacks/fix-ups were required this time. So I've published the gerbers and BOM on my github. The next step is to prepare an SDcard image with some cores to be easier to get started with MiSTer on de0ns.
You do not have the required permissions to view the files attached to this post.

alfishe
Atari freak
Atari freak
Posts: 62
Joined: Wed Jul 19, 2017 8:24 pm

Re: MISTer on DE0-nano-SoCKit?

Postby alfishe » Tue Jan 30, 2018 5:48 pm

olin wrote: So I've published the gerbers and BOM on my github.


Please provide URL to the GitHub project

olin
Atari freak
Atari freak
Posts: 54
Joined: Tue Nov 21, 2017 8:57 pm

Re: MISTer on DE0-nano-SoCKit?

Postby olin » Tue Jan 30, 2018 8:05 pm

The link is on the first page of this thread, but here it goes for your convenience:
https://github.com/ole00/hardware_mister_de0-nano-soc

Edit: once I release the first batch of cores I'll update my first post and put the important links there, so the information is in one place.

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

Re: MISTer on DE0-nano-SoCKit?

Postby NML32 » Tue Jan 30, 2018 9:03 pm

Looking good so far. :cheers:

olin
Atari freak
Atari freak
Posts: 54
Joined: Tue Nov 21, 2017 8:57 pm

Re: MISTer on DE0-nano-SoCKit?

Postby olin » Fri Feb 09, 2018 10:09 am

Thanks.

I've managed to semi-brick my de0ns. By that I mean I can no longer load menu.rbf after boot. What I get is this message

Code: Select all

GPI[31]==1. FPGA is uninitialized or incompatible core loaded.


My board still works, I can load menu.sof via Quartus Tools->Programmer. The menu loads and from there I can start any core. However if I power-cycle the board the menu.rbf doesn't load. I've tried to replace menu.rbf on my SD card in case it got damaged, but that didn't help (md5sum of the file on the SD card and my computer matches). I even tried to generate .jig file and store the menu.rbf into flash - which partially works (LEDs flash in the fading pattern), but video doesn't work. I also had to change the DIP switches to auto load FPGA from flash, but then Linux doesn't start - so I can not use such DIP settings. I also tried to regenerate rootfs on my SD card just in case it got somehow corrupted, but that didn't help.

I got into this state when I disconnected power from the board while the board was rebooting. I guess in this case the error message really means the FPGA is not initialised, because the core is properly generated for my device. Any idea how to return the board back to normal? :)

Sorgelig
Atari God
Atari God
Posts: 1924
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: MISTer on DE0-nano-SoCKit?

Postby Sorgelig » Fri Feb 09, 2018 11:54 pm

There is no such case as brick or semi-brick on our dev boards as everything is on SD card which can be re-formatted and restored at any time.
Did you play with u-boot config? May be some non-working config in u-boot variables has been saved to disk and now loaded at every boot. u-boot environment is saved on beginning of SD card right after MBR. So, you can clear the second sector of SD card. Or use SD installer tool - it will erase that area on update.

Do you remember what you did before your de0ns went to this state?

olin
Atari freak
Atari freak
Posts: 54
Joined: Tue Nov 21, 2017 8:57 pm

Re: MISTer on DE0-nano-SoCKit?

Postby olin » Tue Feb 20, 2018 9:32 pm

Thank you for the tips. I managed to fix the board/SD card so it boots fine now. It was probably some corruption on SD card, because when I re-created the SD card from scratch I could boot normally (after replacing the menu.rbf file). As I wrote earlier, I power cycled the board while it was booting, that's how the SD card corruption happened. I'm glad my DE0-ns is OK :D

olin
Atari freak
Atari freak
Posts: 54
Joined: Tue Nov 21, 2017 8:57 pm

Re: MISTer on DE0-nano-SoCKit?

Postby olin » Wed Feb 21, 2018 8:03 pm

I've updated my first post to contain more information about the current status. I've also made the first release of the cores for DE0ns (see the first post for the link).

olin
Atari freak
Atari freak
Posts: 54
Joined: Tue Nov 21, 2017 8:57 pm

Re: MISTer on DE0-nano-SoCKit?

Postby olin » Sun Feb 25, 2018 2:45 pm

I made forks of 2 MiSTer cores source code to demonstrate the changes required for the de0ns core port. Changes in all other cores have the same pattern so use these as template. If required I can fork more of the cores for the sake of completeness.
menu: https://github.com/ole00/Menu_MiSTer.git
zxspectrum: https://github.com/ole00/ZX-Spectrum_MISTer.git
These forks have a new branch called 'de0ns' which contains the changes.

to see the changes:

Code: Select all

git clone https://github.com/ole00/Menu_MiSTer.git
cd Menu_MiSTer
git checkout de0ns
git diff HEAD~2


or just open the github website, switch to de0ns branch in the combo box, then click on the Commits tab, then click on the last 2 commits.


Return to “MiSTer”

Who is online

Users browsing this forum: No registered users and 3 guests