Page 1 of 2

David's Falcon Booster rev 3 -- dabbling with DRAM

Posted: 20 Nov 2020 10:59
by Badwolf
Morning all.

Following on from rev 2b of my unnamed Falcon booster which switches an external 68030 up to 48MHz and adds 1MB of 16-bit Alt-RAM (https://www.exxosforum.co.uk/forum/viewt ... =29&t=3422), it's time to move on to rev 3 and give the project a name. I've had a complete lack of ideas, so it's going to be DFB1 -- David's Falcon Booster -- rev 3.


Screenshot 2020-11-19 at 22.49.05.png


Changes from the rev2 are a switch from Altera to Xilinx CPLDs (this has taken the biggest time), a move to full address bus decoding to allow more features and most significantly a switch from the demonstration 2x512kB SRAM chips to DRAM.

http://www.farnell.com/datasheets/2622018.pdf

I've never worked with DRAM before so would appreciate any tips going. As I understand things, I'll need to take care of the following:

* Proper initialisation of the two chips;
* Triggering the refresh at the appropriate intervals;
* Decoding address bus requests to a two-step row address then column address, plus any bank and chip selects;
* Handling/ignoring/terminating the 'burst';
* Getting the whole variable bus size and caching logic right since I'm now moving up to a 32 bit data bus.

In effect, I've done none of those before, bar a little bit of the logic on the last one to not ruin the cache when reading 8-bit values from the current 16-bit bus but I've routed all the DRAM pins bar the data bus (which goes through level converters to talk to the 030) to the CPLD so I don't repeat the mistake of tying high or low something that I later actually need to control. Hopefully it can all be worked out in firmware, therefore.

I ran out of space on the Altera chips I was using before. I've gone for overkill on the pin-count for these Xilinx ones, but with over twice the number of macrocells available to me, I hope I'll have sufficient logic this time around.

The plan is to try to bring the board up without Alt-RAM, then start working on the initialisation and refresh logic, then perhaps doing the RAS/CAS work for a 16-bit bus and if all that works, move up to the full 32 bits.


Screenshot 2020-11-19 at 22.32.07.png


Problems I have that are still outstanding from the rev2b board are the co-processors. I've managed to get the onboard FPU to work by jumpering the DS line on pin 3 of GAL U62, but I've not yet worked out whether that could have any ill effects by generating spurious (or opposing) signals. One of my FPUs stopped working a little while later, so I've removed that hack for the time being. The DSP simply doesn't work. Any DSP-enabled software hangs the machine. That'll be my next line of investigation whilst the boards are out.

Like for the DRAM, above, I'd appreciate any tips or feedback on my likely oversights there.

I have started up a GitHub project for this, but there's nothing there yet other than the start of the wiki, with which I'll attempt to document my work.

https://github.com/dh219/DFB/wiki

It's starting to get complicated.

BW aka David.

Re: David's Falcon Booster rev 3 -- dabbling with DRAM

Posted: 20 Nov 2020 11:06
by rubber_jonnie
Why not call it the BadWolf Booster? Or just BadWolf?

Looks cool.

Re: David's Falcon Booster rev 3 -- dabbling with DRAM

Posted: 20 Nov 2020 11:27
by exxos
If you look at the TF sources , he has a DRAM controller you could pretty much copy paste in I think.

Re: David's Falcon Booster rev 3 -- dabbling with DRAM

Posted: 20 Nov 2020 14:40
by DoG
Nice project.

Re: David's Falcon Booster rev 3 -- dabbling with DRAM

Posted: 20 Nov 2020 16:56
by Badwolf
exxos wrote: 20 Nov 2020 11:27 If you look at the TF sources , he has a DRAM controller you could pretty much copy paste in I think.
Ta, that was worth a dig around. I know Stephen withdrew his own GitHub sources and I don't think the TF536 was ever published so I didn't bother looking. Your nudge encouraged me to find out it was based on the TF330, which I managed to find a fork of.

I shall have a peruse.

Cheers

BW.

Re: David's Falcon Booster rev 3 -- dabbling with DRAM

Posted: 20 Nov 2020 16:58
by Badwolf
rubber_jonnie wrote: 20 Nov 2020 11:06 Why not call it the BadWolf Booster? Or just BadWolf?

Looks cool.
Thanks. And probably because I'm either entirely with imagination or am massively ego-centric. I'll let you have a guess which. :lol:

Could have gone with Little Bad Wolf, I suppose. Build up to 'Big' ;)

Re: David's Falcon Booster rev 3 -- dabbling with DRAM

Posted: 20 Nov 2020 18:01
by JezC
@Badwolf I'm also watching this with interest... would be a great upgrade to my Falcon at some point in the future!
No rush from my perspective though, far too many other retro projects to try and finish first!

Loving the idea though, good luck with this.

Re: David's Falcon Booster rev 3 -- dabbling with DRAM

Posted: 20 Nov 2020 19:11
by EvilFranky
Badwolf wrote: 20 Nov 2020 10:59 The DSP simply doesn't work. Any DSP-enabled software hangs the machine. That'll be my next line of investigation whilst the boards are out.
Are you using EmuTOS to test this? Just that the DSP isn't supported yet mate:-

EmuTOS does not yet support all of the hardware on original Atari systems. The following is a list of currently unsupported hardware:

Falcon DSP
16-bit modes of Falcon Videl

Re: David's Falcon Booster rev 3 -- dabbling with DRAM

Posted: 20 Nov 2020 19:31
by Badwolf
EvilFranky wrote: 20 Nov 2020 19:11
Badwolf wrote: 20 Nov 2020 10:59 The DSP simply doesn't work. Any DSP-enabled software hangs the machine. That'll be my next line of investigation whilst the boards are out.
Are you using EmuTOS to test this? Just that the DSP isn't supported yet mate:-

EmuTOS does not yet support all of the hardware on original Atari systems. The following is a list of currently unsupported hardware:

Falcon DSP
16-bit modes of Falcon Videl
DSP support is being tested in EmuTOS ATM, but unfortunately it's a similar story. With TOS, everything OK other than DSP software, which hangs. EmuTOS with DSP enabled doesn't even boot, though. I've actually put off working on the DSP issue whilst designing Rev3, but that's likely next on the list for investigation.

I don't really know anything about DSP programming, so finding a suitable test program will be half the battle, I expect!

Cheers,

BW.

Re: David's Falcon Booster rev 3 -- dabbling with DRAM

Posted: 20 Nov 2020 19:33
by Badwolf
JezC wrote: 20 Nov 2020 18:01 @Badwolf I'm also watching this with interest... would be a great upgrade to my Falcon at some point in the future!
No rush from my perspective though, far too many other retro projects to try and finish first!
Thanks, Jez.

If I can get a board going that needs 3 or fewer bodge wires, I might start soliciting testers, but the current rev2b is more kinar than trace at the moment!

BW.