Z80 Space-Time Productions Single Board Computer

Building a Memory Expansion
[ Non-Volatile Static Ram ]


Intro:
One shortcoming of the Space-Time Productions SBC was that it is woefully short on memory space. There is enough Rom and just enough Ram to be called 'scratchpad space'. In conjunction with porting over BASIC from the Nascom, I wanted to be able to run programs of sufficient size, so the memory expansion project was born.

Non-volatile Static Ram:
My design uses Dallas Semiconductor 32K Non-Volatile Static Rams. This is great because even when the power is off indefinitely, the programs and data are still retained. The primary is a DS1836, which is called a "RAMified Timekeeper". It has several registers at the start ($0000-$000D) of it's memory that are dedicated to date & time registers. It has month, day, year, hours (and military format), minutes, seconds, and decimal seconds (0.00). This IC also contains a watchdog timer for resetting program lockups, and an alarm complete with Day of Week.
Here's a link to their datasheet: DS1386.PDF (requires Adobe Acrobat Reader).

The second RAM selected was another Dallas product, the DS1230Y, another 32K non-volatile ram, but with no specialized registers. It directly replaces the 62256 32K x 8 static ram, but gives the feature of being non-volatile also. I thought this would be ideal. It can also act as on-board programmable EPROM, without all the special circuitry required to host EEPROM.
DS1230.PDF (requires Adobe Acrobat Reader).

Memory Map:
This design maps the memory area as follows:

  • $0000-$0FFF - Rom 0 [ 4k 2732 ]
  • $1000-$1FFF - Rom 1 [ 4k 2732 ]
  • $2000-$2FFF - Rom 2 [ 4k 2732 ]
  • $3000-$3FFF - Rom 3 [ 4k 2732 ], or $3000-$37FF [ 6116 Static Ram ]
  • $4000-$FFFF - Ram Space

The best design feature of this board is this: The non-volatile ram can replace rom by changing a few jumpers. Here's how. The static rams are broken up into 2 each 16K blocks on each 32K IC. The lower 16K blocks are hard-wired, so the TimeKeepering registers and that 16K block always appear in the map from $4000-$7FFF, and the lower 16K of the second Dallas IC (DS1230Y) is always $8000-$BFFF. The upper 16K blocks of both ICs can be re-mapped by just changing a few jumpers as follows:

By changing the lower jumper, I can copy the Roms from $0000-$3FFF into the upper 16K area of the DS1386 with the monitor command:
M0000,3FFF,C000.
Powering the unit down again, I can move the lower jumper back so that the DS1230Y now maps into the $C000-$FFFF memory space once again. Moving the upper jumper down one notch this connects the signal -($0000-$3FFF) onto the AND-gate for decoding the DS1386. Now with A14 being neatly inverted by the signal -($4000-$7FFF), this places the block that previously appeared at $C000-$FFFF into the area $0000-$3FFF, thus replacing the ROMs with Non-Volatile Ram!

A jumper I added to the design switches Rom 3's A11 line with -WR, so you can place the 6116 Static Ram in that slot, and emulate the original config. That way you can still use the original Monitor program.

This is the basic design of the board:
Click for larger image Click for larger image


The completed board. Notice I soldered the J-9 socket on the bottom of the SBC (single board computer), raised the support legs, and used the memory board's standoffs to support the connector corner of the SBC. Also, due to MREQ enabling the data bus buffer IC on the expansion, all memory now resides on the expansion, none on the SBC.


All information contained herein that is generated by J.Owens (c) 2004, 2005.
Other information credited to its sources.
This Site is not affiliated with Space-Time Productions, Mr. M.Simon, or Mr. Ron Weiss, however I extend a grateful Thanks to those parties.
This site has a sole purpose to provide technical information, and is not intended to infringe any prior
copyrights nor to derive funds that would otherwise be the property of Microsoft, Space-Time Productions
or it affiliates, either past or present.
May the Force be with you.