SDRAM board

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

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

JimDrew
Atari Super Hero
Atari Super Hero
Posts: 646
Joined: Mon Nov 04, 2013 5:23 pm

Re: SDRAM board

Postby JimDrew » Wed Dec 06, 2017 5:43 am

You can download the source for the various Replay cores from the svn.

I worked on the Amiga driver for the Replay's RTG (Amiga core), so what do you need to know? The RTG driver allocates a 64K aligned 4MB block of memory (from the memory pool) during the driver initialization by Picasso96. The memory base is passed in along with the video modes. There is a blitter engine that Mike made that is pretty slick, but it's really not used much for anything at the moment. I need to fill in the rest of the OS replacement blitter functions to make it worth the effort Mike put into it. The RTG is pretty simple. It's just a frame buffer of a particular resolution and depth, defined by the RTG driver. There are only a hand full of actual functions that need to be supported to make it work. The Picasso96 does all of the magic of making RTG possible under the Amiga OS. There has never been a Rpi module being used for the RTG.

If you can use the 64MB chip in place of the 32MB chip, does that mean that the upper address bit (upper/lower 32MB) is already there and usable? If so, can we add one more. Speed is just a function of how fast you can toggle the state of the lines. The trace and connector capacitance/resistance can be resolved by proper buffering. Mike was surprised that the SDRAM worked at all without having some sort of termination on the clocks (RAS/CAS) to prevent overshoot/undershoot. I don't think its fast enough to need that, but certainly traces that are not impedance matched and connectors are difficult to deal with without buffers.

Your argument about price is actually the motivation for making a much more robust setup. With the DE-10 at $130 retail, a user can afford to put a hundred dollars into add-ons and still have a premiere FPGA setup that is much cheaper than a Replay or Vampire board. So, a memory chip that costs 4 times as much is well worth it. Cost is just not a factor when it's this cheap to begin with. I have had a lot of people asking me to make a new IO board that is a full length board (so that all 4 screws will mount it to the DE-10), include 128MB of SDRAM, and several other features. I think the reason that some cores don't support more memory is because more memory has never been available.
I am the flux ninja

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

Re: SDRAM board

Postby Sorgelig » Wed Dec 06, 2017 7:21 am

JimDrew wrote:You can download the source for the various Replay cores from the svn.

Please don't play fool. I'm tired of this argument. We are talking EXACTLY about Amiga core, not other cores. Amiga core IS NOT available on public SVN. Probably you have a special login for SVN and see much more. So, login with public name/pass given on Replay site and you will see that only couple minor cores are available in sources.

JimDrew wrote:I worked on the Amiga driver for the Replay's RTG (Amiga core), so what do you need to know? The RTG driver allocates a 64K aligned 4MB block of memory (from the memory pool) during the driver initialization by Picasso96. The memory base is passed in along with the video modes. There is a blitter engine that Mike made that is pretty slick, but it's really not used much for anything at the moment. I need to fill in the rest of the OS replacement blitter functions to make it worth the effort Mike put into it. The RTG is pretty simple. It's just a frame buffer of a particular resolution and depth, defined by the RTG driver. There are only a hand full of actual functions that need to be supported to make it work. The Picasso96 does all of the magic of making RTG possible under the Amiga OS. There has never been a Rpi module being used for the RTG.

This is good description for manual. But i didn't ask it. I've asked the source code.

JimDrew wrote:Your argument about price is actually the motivation for making a much more robust setup. With the DE-10 at $130 retail, a user can afford to put a hundred dollars into add-ons and still have a premiere FPGA setup that is much cheaper than a Replay or Vampire board. So, a memory chip that costs 4 times as much is well worth it. Cost is just not a factor when it's this cheap to begin with. I have had a lot of people asking me to make a new IO board that is a full length board (so that all 4 screws will mount it to the DE-10), include 128MB of SDRAM, and several other features. I think the reason that some cores don't support more memory is because more memory has never been available.

MiSTer is open source platform (really open source unlike others pretended to be open source). You are welcome to participate. You can offer improved PCB design and cores supporting all your additions. If it will be compatible with current HW, i would glad to accept. I don't see a point to argue here. There is only one problem: many people come here giving suggestions but the whole HW design and all ports/original cores comes from me only. Some time ago there was offer to improve ao486, but ended by small tweak in HDMI code (which is actually based on other core). So, the distance between "I can do" and "I did" is pretty big. It requires something more than posting on the forum. You suddenly realize it takes a lot of time and may be some money. And then willing suddenly disappears. Just start to do what you "offer" and we will see what we can get in the final. If it will fit the MiSTer philosophy then it will me merged into. If not, then you are free to make a fork. It's possible to have a special Amiga fork with extra/special HW and improved Minimig if you are ready to support it.

You want to make a very complex SDRAM and even whole I/O with integrated SDRAM with size longer than 100mm (bye bye cheap PCB from Chinese mfg) with probably 4 or more layers. Who will be able to do it as DIY? Most likely no one. You are here today to offer such board, but tomorrow will disappear and no body else will be able to make the same board. It will be several times more expensive PCB with expensive parts. You already gave up to produce I/O board while talking about more advanced board.. Weird, isn't?

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

Re: SDRAM board

Postby Sorgelig » Wed Dec 06, 2017 7:34 am

JimDrew wrote:If you can use the 64MB chip in place of the 32MB chip, does that mean that the upper address bit (upper/lower 32MB) is already there and usable?

Some your posts makes me think that you are out of discussion topic. Don't you know how SDR SDRAM address pins are organized? You are going to add more chips but didn't explore the topic.. SDR SDRAM address is split into 2 parts called RAW and COLUMN. These parts share the common address bus with 13 pins. Totally it provides 25 (minus precharge signal) bits for address, where only part is used on 32MB chip. 64MB chip adds one more column bit and still have many unused bits in column. So, 64MB chips can be used as 32MB chips without any changes in schematics. 128MB chip also could be compatible, but i never heard about 128MB chips in this package.
I didn't explore the possibility of adding an extra chips without using additional pins. Probably it's possible by using a simple logic to hook on column part of address.

JimDrew
Atari Super Hero
Atari Super Hero
Posts: 646
Joined: Mon Nov 04, 2013 5:23 pm

Re: SDRAM board

Postby JimDrew » Wed Dec 06, 2017 3:52 pm

Sorgelig wrote:Just start to do what you "offer" and we will see what we can get in the final. If it will fit the MiSTer philosophy then it will me merged into. If not, then you are free to make a fork. It's possible to have a special Amiga fork with extra/special HW and improved Minimig if you are ready to support it.


I don't work that way. I am not going to spend thousands of dollars on designing and producing a new IO board w/SDRAM if it is not going to be supported.


Sorgelig wrote:You want to make a very complex SDRAM and even whole I/O with integrated SDRAM with size longer than 100mm (bye bye cheap PCB from Chinese mfg) with probably 4 or more layers.


Your sources for boards are apparently not ideal. Extending the current IO board to be full length is $0.28 extra per board @100 boards. Again, price is not an issue because the DE-10 is so cheap. However, even a full length 4 layer board is still only a few dollars.


Sorgelig wrote:Who will be able to do it as DIY? Most likely no one. You are here today to offer such board, but tomorrow will disappear and no body else will be able to make the same board. It will be several times more expensive PCB with expensive parts. You already gave up to produce I/O board while talking about more advanced board.. Weird, isn't?


It wouldn't be DIY. The new IO board would go to 4 layers, and would be single sided SMT (assembled) - 0603/0402 components and include the SDRAM. It would eliminate the optical connector, reduce the size push button switches, etc. However, if there is no assurance of supporting more memory in cores, then it would be a waste of my time. I wouldn't just go making a new IO board without it being something that people have been asking for, so not everyone shares your opinion of making this as cheap as possible.
I am the flux ninja

JimDrew
Atari Super Hero
Atari Super Hero
Posts: 646
Joined: Mon Nov 04, 2013 5:23 pm

Re: SDRAM board

Postby JimDrew » Wed Dec 06, 2017 3:56 pm

Sorgelig wrote:
JimDrew wrote:If you can use the 64MB chip in place of the 32MB chip, does that mean that the upper address bit (upper/lower 32MB) is already there and usable?

Some your posts makes me think that you are out of discussion topic. Don't you know how SDR SDRAM address pins are organized? You are going to add more chips but didn't explore the topic.. SDR SDRAM address is split into 2 parts called RAW and COLUMN. These parts share the common address bus with 13 pins. Totally it provides 25 (minus precharge signal) bits for address, where only part is used on 32MB chip. 64MB chip adds one more column bit and still have many unused bits in column. So, 64MB chips can be used as 32MB chips without any changes in schematics. 128MB chip also could be compatible, but i never heard about 128MB chips in this package.
I didn't explore the possibility of adding an extra chips without using additional pins. Probably it's possible by using a simple logic to hook on column part of address.


It's actually called ROW, not RAW. (RAS/CAS) I wasn't sure how many address bits were actually available.
I am the flux ninja

User avatar
Newsdee
Atari God
Atari God
Posts: 1041
Joined: Fri Sep 19, 2014 8:40 am

Re: SDRAM board

Postby Newsdee » Wed Dec 06, 2017 10:32 pm

JimDrew wrote:However, if there is no assurance of supporting more memory in cores, then it would be a waste of my time. I wouldn't just go making a new IO board without it being something that people have been asking for, so not everyone shares your opinion of making this as cheap as possible.

Surely you ought to prototype such a thing before you start calling PCBAs for quotes. It looks like you'd need a core developer that can look at the HDL in detail, and also willing to handle support requests from people that expect a fully compatible Amiga (which this isn't guaranteed to be). Maybe give it some more time for cores to mature a bit more.

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

Re: SDRAM board

Postby Sorgelig » Wed Dec 06, 2017 11:25 pm

JimDrew wrote:I don't work that way. I am not going to spend thousands of dollars on designing and producing a new IO board w/SDRAM if it is not going to be supported.

You didn't even start to create but already want guarantees of success.
If i would think like you, the MiSTer wouldn't exist. I didn't spend thousands, but some hundreds for sure. Mostly for ordering the prototypes. If you are so professional as you describe, then you can make it in couple iterations. There won't be thousands. Also, the most design is already done and proven by me. You only need to re-arrange the components. But if money are in the front for you, then it's better don't start.

It's chicken and eggs. Bring interesting and affordable HW, and it will be supported. I didn't say i don't want to support. Currently the only one core can take advantage (not really noticeable) of more memory is Minimig. All other cores don't even use half of 32MB.

I could make the board full sized, could make it 4-layers, could use 0603, etc... Sure, i could make it more industrial grade board. But main philosophy of the project - keep it simple, cheap and reasonable. And also allow to make the board by yourself if you can solder. That's why i don't use BGA chips and SD socket with internal pins.

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

Re: SDRAM board

Postby Sorgelig » Thu Dec 07, 2017 12:06 am

By the way, if you want guaranteed support, then you can re-design the I/O board without adding or removing anything. Just re-layout it to form which you can assemble by your tools.

JimDrew
Atari Super Hero
Atari Super Hero
Posts: 646
Joined: Mon Nov 04, 2013 5:23 pm

Re: SDRAM board

Postby JimDrew » Thu Dec 07, 2017 4:57 pm

Sorgelig wrote:You didn't even start to create but already want guarantees of success.


Hardware design is what I have done for decades. I have created more than 300 commercial products (millions of circuit boards), spanning many different industries and I have a long history (1979 to present) in the Commodore/Amiga industry.

I typically only need to build a single prototype and then go to production with complex electronics. This stuff is pretty simple, so I would feel comfortable just going straight to short run production. I would hate to make a board with more RAM that is higher priced but can't sell because there is no support (chicken and egg thing). :) Maybe I will just make a 64MB single chip option. No matter how the RAM works out, it will be on the IO board itself, not as a separate daughter board. I would put the RTC on the IO board as if there were I2C pins available from the I/O expander.
I am the flux ninja

alfishe
Atari User
Atari User
Posts: 31
Joined: Wed Jul 19, 2017 8:24 pm

Re: SDRAM board

Postby alfishe » Thu Dec 07, 2017 10:06 pm

Guys, don't fight =)
I personally want to have DE10-Standard, having SDRAM on board and external HDMI + some other weird high-speed peripherals connected via HSMC. So what? =)

DE10 + boards = totally working MVP. Everything else - nice to have. Who wants it - design it, maintain it. Fair enough.

p.s. spend hundreds of bucks with DE10-nano as a base? I think it's bad idea. The board is designed to be cheap with low-speed connectors without controlled impedance. If some day software and core codebase will be slick enough - would make sense to try custom board design and producing cycle. But no sense in it anytime soon

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

Re: SDRAM board

Postby Sorgelig » Fri Dec 08, 2017 12:10 am

JimDrew wrote:Hardware design is what I have done for decades. I have created more than 300 commercial products (millions of circuit boards), spanning many different industries and I have a long history (1979 to present) in the Commodore/Amiga industry.

By "succeess" i mean fully support from cores.
If you will check the signals on SDRAM board, you will tell: "Hey, it shouldn't work!". But it works :) Wish you luck with adding more chips ;)

JimDrew wrote: I would hate to make a board with more RAM that is higher priced but can't sell because there is no support (chicken and egg thing).

If it will be backward compatible, then i don't see why you won't be able to sell it. If price will be good, then you will sell it well. As i've wrote above, only Minimig can use more than 32MB for now. So, it's matter of modifying a single core.

JimDrew wrote:No matter how the RAM works out, it will be on the IO board itself, not as a separate daughter board. I would put the RTC on the IO board as if there were I2C pins available from the I/O expander.

I have nothing against it. Do it. RTC header can use a short ribbon cable with connector to the board - that's the only solution i can see.

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

Re: SDRAM board

Postby Sorgelig » Fri Dec 08, 2017 12:19 am

More important would be find the way to add SRAM ~2MB along with SDRAM. That would be much more useful than adding more SDRAM. Using both chips at the same time is not required, so chips can share the same GPIOs and switched by some signal.

2MB of SRAM would be helpful for Minimig as well with Hybrid emulation where SRAM can be used for ChipRAM.

JimDrew
Atari Super Hero
Atari Super Hero
Posts: 646
Joined: Mon Nov 04, 2013 5:23 pm

Re: SDRAM board

Postby JimDrew » Fri Dec 08, 2017 8:58 pm

SRAM is fairly expensive for $$$ vs RAM size - about $4.00 per 512K. I use products already with 512K SRAM, so I have these readily available. SRAM is nice because there is no refresh, but they are kind of slow (45ns typical speeds). What advantage would there be to having SRAM?
I am the flux ninja

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

Re: SDRAM board

Postby Sorgelig » Sat Dec 09, 2017 2:15 am

JimDrew wrote:SRAM is fairly expensive

Didn't you tell the price doesn't matter? ;) 256MB of SDRAM isn't cheap as well.

JimDrew wrote:but they are kind of slow (45ns typical speeds)

I wasn't talking about "snail" SRAM. I was talking about 10ns SRAM.

JimDrew
Atari Super Hero
Atari Super Hero
Posts: 646
Joined: Mon Nov 04, 2013 5:23 pm

Re: SDRAM board

Postby JimDrew » Sat Dec 09, 2017 7:18 am

Ha! What SRAM is 10ns? Why do you actually need SRAM vs. SDRAM? Cost is no object if there is a valid reason!
I am the flux ninja

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

Re: SDRAM board

Postby Sorgelig » Sat Dec 09, 2017 7:51 am

JimDrew wrote:What SRAM is 10ns?

let me search for you:
https://www.mouser.tw/Semiconductors/In ... ?P=1z0w7wb

JimDrew wrote:Why do you actually need SRAM vs. SDRAM?

I didn't think i would need to explain the advantages of SRAM vs SDRAM.. Ok.
10ns means random access at 100MHz. It can bump the speed of emulated system. It provides time slots at much higher rate. Around 8 different modules can access a single SRAM at random locations while SDRAM allows only 1 access at the same amount of time.
SDRAM needs at least 8 cycles to access the random location. It means, on 100MHz clock, effective rate of SDRAM emulating random single access (typical retro async EDO DRAM mode) is 12.5MHz. Actually less than 12.5MHz because you need refresh cycles as well. 10ns SRAM gives you 100MHz rate.
Speaking about Minimig: ChipRAM is quite busy memory. Although it's emulated on SDRAM, moving to SRAM will relax the timing and may increase the performance. Currently, Minimig is 16bit which is not good if you want a faster system. So 32bit would be better. While SRAM will give a room to increase the bus width, i'm not sure about SDRAM.

JimDrew
Atari Super Hero
Atari Super Hero
Posts: 646
Joined: Mon Nov 04, 2013 5:23 pm

Re: SDRAM board

Postby JimDrew » Sat Dec 09, 2017 3:52 pm

The Amiga's CHIP RAM max speed is limited to the color burst clock (3.579545MHz for NTSC). This is one of the things that you really can't change or you will break compatibility. Many game programs rely on the fact that CHIP RAM and the E_Clock speeds are exact.
I am the flux ninja

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

Re: SDRAM board

Postby Sorgelig » Sun Dec 10, 2017 12:45 am

Most retro systems bound to exact pixel clock and RAM cycles. But ZX core can run at 56MHz, SAM Coupe can run at 4x speed, and so on.

JimDrew
Atari Super Hero
Atari Super Hero
Posts: 646
Joined: Mon Nov 04, 2013 5:23 pm

Re: SDRAM board

Postby JimDrew » Sun Dec 10, 2017 12:50 am

So, should a 512KB or 2MB SRAM board (like the SDRAM board) be something that should be produced?
I am the flux ninja

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

Re: SDRAM board

Postby Sorgelig » Sun Dec 10, 2017 1:12 am

if it will be a separate board, then it will require to swap the memory board depending on the core. Although it's expected, but will be much useful if both SRAM and SDRAM will be on the same board.

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

Re: SDRAM board

Postby ijor » Sun Dec 10, 2017 2:05 am

SRAM could be a nice addition. If going to high speed SRAM, personally, I prefer synchronous and not asynchronous.

It should be possible to use a single board sharing the buses and just use separate chip select signals. Even if they won't be used both by the same core, it is still more convenient than swapping boards.

JimDrew
Atari Super Hero
Atari Super Hero
Posts: 646
Joined: Mon Nov 04, 2013 5:23 pm

Re: SDRAM board

Postby JimDrew » Sun Dec 10, 2017 6:36 am

Are there extra pins available on the bus that we could use to enable/tri-state a buffer chips so that the RAMs could be isolated and share the bus?
I am the flux ninja

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

Re: SDRAM board

Postby Sorgelig » Sun Dec 10, 2017 10:21 am

You can use one pin on arduino header next to used 3 pins. This should be enough to switch between SRAM and SDRAM. Z state (1 with pull-up) should choose SDRAM to be compatible with existing cores.

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

Re: SDRAM board

Postby ijor » Sun Dec 10, 2017 1:23 pm

It might be possible to use the CKE pin.

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

Re: SDRAM board

Postby Sorgelig » Sun Dec 10, 2017 2:37 pm

ijor wrote:It might be possible to use the CKE pin.

Although not every SDRAM module bind it to VCC directly, it should be no problem to assume it as SDRAM enable pin.


Return to “MiSTer”

Who is online

Users browsing this forum: No registered users and 2 guests