2MB Linear SRAM

Provide up to 2MB of linearly addressable memory for your eZ80 CPU

2MB Linear SRAM

Let your eZ80 break the 64K barrier with this 2MB memory module. Write programs that can address a full 2 megabytes directly, without the need for banking or paging of memory. This memory module is designed for the eZ80 for RC kit, to enable your eZ80 CPU to flex its memory muscles!

General Description

A key feature of the eZ80 CPU is its 24bit addressing capability allowing programs to be written that can utilise up to 16MB of memory natively. No paging or banking hardware needed. No need for applications to be developed that limit themselves to 64K or complex paging mechanisms.

Unlike standard Z80 memory modules that only work with a 16-bit address, the 2MB Linear SRAM module is specifically designed to take full advantage of the eZ80’s 24-bit address space. It provides a continuous 2MB block of memory that can be directly accessed by the eZ80, making it possible to build or port larger programs.

Key features

What is the Green Machine Series of Retro Kits

The Green Machine Series of kits are designed around the RCBus/RC2014 bus, powered by an eZ80 CPU (as apposed to the Z80 CPU), and are broadly compatible with many RC2014 and RCBus kits and CP/M and RomWBW software stacks.

For more information of the eZ80 CPU, see the eZ80 CPU kit.

Other technical notes

Images

Software Status

There are currently a number of software projects under development to take advantage of this memory module.

* The languages enable the writing of application to take full advantage of the extended memory module. The ports are still under active development. See their respective repos for details of porting progress.

Although it may be possible to use the official Zilog ZDS II development studio to create your own ‘applications’ - this is not a recommended approach.

The EZ80.COM and EXE.COM applications can be downloaded from the one of the official releases on the github repo : https://github.com/dinoboards/ez80-for-rc/releases. Download the releases.zip under the Assets section of the release you want to use. Within that zip file you find the compiled applications. These are standard CP/M applications and will only execute on an eZ80 CPU.

Testing the memory

The EZ80.COM CP/M application can be used to verify your memory module is working. Once you have copied it onto your system (typically with xmodem) you can run it to scan, test and adjust the timings of the memory.

Running EZ80.COM with no arguments will report timings:

C>EZ80
          CPU frequency: 25000000 Hz
        Z80 Environment: eZ80's Z80 Compatibility
      On-chip Flash W/S: 1  (80ns)
        Main Memory B/C: 1  (120ns)
Extended Memory CS0 W/S: 2  (120ns)
Extended Memory CS1 W/S: 1  (80ns)
                I/O B/C: 4  (480ns)
         TMR1 Tick rate: 50 (Counter: 11673)

To get a list of command line options, run with the -? argument

C>EZ80 -?
Usage: ez80 [options]
Options:
  -F=<number>W      Set On-chip Flash Wait States
  -M=<number>[W|B]  Set Main Memory Wait States or Bus Cycles (CS3)
  -M0=<number>[W|B] Set Extended Memory Wait States or Bus Cycles (CS0)
  -M1=<number>[W|B] Set Extended Memory Wait States or Bus Cycles (CS1)
                    Wait States: 0-7, Bus Cycles: 1-15
  -I=<number>[W|B]  Set I/O Wait States or Bus Cycles (CS2)
  -S                Scan extended memory
  -P                Measure Main Memory Performance
  -T=<number>       Set tick frequency rate (50 or 60)
  -? /?             Show this help message

As shown in the help above, to scan and verify your extended memory is working run with the -S option:

C>EZ80 -S
Searching for memory installed from 0x200000 to 0x5F0000
512K bank at 0x200000: OK
512K bank at 0x280000: OK
512K bank at 0x300000: OK
512K bank at 0x380000: OK
512K bank at 0x400000: None
512K bank at 0x480000: None
512K bank at 0x500000: None
512K bank at 0x580000: None

2048kb available at 0x200000

Memory @ 0x200000: 3471.18 KB/s

What’s included in this kit

The full kit includes everything you need: PCB, capacitors, IC sockets, a 74HCT138 IC, and one or more 512K SRAM chips.

Bill of Materials

Count Name
5 0.1uF
1 74HCT138
1 to 4 AS6C4008 SRAM
1 16 POS IC SOCKET
3 32 POS IC SOCKET
1 Right Angle 40x2 Header
1 PCB

What else do I need to make this work?

* It is technically possible to develop your own firmware and create your own BIOS/application systems that use this module, allowing you to create a bootable system that does not require a 16-bit memory module.

Resources

Disclaimer

Please note that this is a kit, produced by a non-expert (me) for hackers, DIYers’ and retro lovers, to tinker with. Please exercise caution and follow good safety practices. You will be working with sharp knives, a hot soldering iron, and small metal components. Be mindful of the risks involved in the build process. I will do my best to answer any questions you may have.

This kit is provided as-is, with no guarantees or warranties. By assembling and using this kit, you acknowledge that you do so at your own risk.