Sardis Technologies ST-2900 NVRAM and RTC Boards

NEW!

The ST-2900 NVRAM board is a small expansion board that plugs into the ST-2900 FDC board to provide non-volatile SRAM-Disk and EEPROM-Disk functions. The RTC module is a small daughterboard that optionally plugs into the NVRAM board to add a real-time clock (RTC). The FDC board does not need to be modified in any way to use these boards.

NVRAM and RTC board features:

Comparison to old RAM-512 board:

The Micro Crystal RV-3149-C3 RTC is temperature compensated (with a TCXO), so typically loses or gains less than 8 seconds per month. The surface mount RTC and supporting devices are installed on a separate daughterboard in the form of an 8-pin DIP module that plugs into one of the SRAM sockets. The RV-3149-C3 also has a built-in charging circuit that can be enabled to allow using a supercapacitor instead of a lithium cell to provide backup power to the RTC and SRAM.

(Another way to add a real-time clock to the ST-2900 will be with the RTC-2417 board.)

The driver software divides the SRAM and EEPROM sections of the NVRAM board into FLEX and (Nitr)OS-9 partitions. A planned future revision to ST-MON will allow it to boot FLEX and (Nitr)OS-9 from these partitions, eliminating the need to have any floppy disk drives attached to the ST-2900.

An SPI-compatible (Serial Peripheral Interface) bus connects the SRAM, EEPROM, and RTC devices to port B of the 6522/VIA on the FDC board. Although the 6522's shift register can't implement a full-duplex SPI host, all the slave devices on the NVRAM/RTC board only communicate in one direction at a time, using either the MOSI (SI/D/DIN/DQ0) or MISO (SO/Q/DOUT/DQ1) lines, but not both at the same time, so this works. Since the 6522's shift register does not directly support SPI Mode 0 (0,0), which is required for the RV-3149-C3 clock chip, some helper circuitry was added. The 6522 runs the SPI bus at 500kbps when the system clock is 1MHz.

It is possible to assemble a subset of this board with only easy-to-solder thru-hole components. This limits you to a 1MB SRAM-Disk and 256KB EEPROM-Disk (using the 25LC1024 EEPROM in a DIP-8 package). The larger capacity EEPROM chips and the RTC and its supporting devices are all surface mount.

This board could also be used with any other system that has a 6522/VIA with all of port B unused. If the RTC module is installed, the system clock must be 2MHz or slower.

When it is ready, the software (source code and binaries of drivers and supporting utilities) required to use the NVRAM/RTC board with FLEX will be included in the new 6809 FLEX Plus 10TM Driver Package for the ST-2900, and for (Nitr)OS-9, in an updated OS-9 Conversion Package. These packages will also include matching user manuals.


(Click on a picture for a larger version.)

icon to link to photo of top of bare NVRAM/RTC board icon to link to photo of bottom of bare NVRAM/RTC board icon to link to photo of top of bare RV-3149 RTC board icon to link to photo of bottom of bare RV-3149 RTC board
Bare NVRAM and RTC boards. (114KB-1.1MB .jpg)
.
icon to link to photo of top of partially assembled NVRAM/RTC board icon to link to photo of NVRAM/RTC prototype setup icon to link to photo of NVRAM spacer PCBs
Partially assembled NVRAM board, development setup with EEPROM 7 Click board and RV-3149-C3 eval board, and NVRAM spacer boards. (272-444KB .jpg)
.
icon to link to photo of top of fully assembled NVRAM board icon to link to photo of top of fully assembled NVRAM board icon to link to photo of bottom of fully assembled NVRAM board icon to link to photo of bottom of fully assembled NVRAM board
Fully assembled NVRAM board. (??-??KB .jpg)
.
icon to link to photo of top of fully assembled RTC module icon to link to photo of top of fully assembled RTC module icon to link to photo of bottom of fully assembled RTC module icon to link to photo of bottom of fully assembled RTC module
Fully assembled RTC module. (??-??KB .jpg)


icon to link to .zip file for Gerber files Gerber files for manufacturing ST-2900 NVRAM and RTC circuit boards.
(not available yet)
(??KB .zip, last modified 2024-Apr-28)
icon to link to NVRAM/RTC User Manual ST-2900 NVRAM/RTC Hardware User's Manual.
(not available yet)
(??KB .pdf, last modified 2024-Apr-28)

Progress History (updated 2024-Apr-29)

In April 2016 I started thinking about designing and building an ST-2900 RAM-512 replacement board using SPI memory devices. My intention was to make a board that was smaller and much less expensive, yet have more capacity, be easier to build, and would use components that are currently in production. Over the next few years the design went through several iterations, including 4-layer vs. 2-layer boards, 8 memory chips vs. 10 chips, 3.3V Flash vs. 5V EEPROM, Maxim/Dallas DS3234 vs. Micro Crystal RV-3149-C3 RTC, etc. The schematics and PCB layout were done with ExpressPCB Classic. After finalizing the design and placing an order with ExpressPCB for three 2-layer MiniBoardPlus prototype boards (3.8"x2.5"), I received them on 2021-Jun-30. Each panel contained an NVRAM and RTC board, plus four other small boards for other projects, so I needed to use a hack saw to cut out the NVRAM and RTC boards from them.

I subsequently partially assembled one NVRAM board (see picture above). Capturing the SPI signals with a logic analyzer shows that the SPI Mode 0 (0,0) helper circuitry is working as intended for both writes and reads. Yes, the 6522/VIA's shift register can support half duplex SPI without needing to resort to bit banging!

The 25CSM04 EEPROM was out-of-stock at all the distributors, and even at Microchip, with long lead times. I placed my order 2021-Jul-15, but the estimated shipping date was updated (delayed) 32 times, with no end in sight! After cancelling my order for the cut tape packaging, and re-ordering the tube packaging, I finally received the EEPROMs on 2023-Feb-01 -- only 18.5 months late!

But while waiting for the EEPROM chips I was able to purchase one Mikroe EEPROM 7 Click board from Digi-Key, and have connected it to the NVRAM/RTC board with an IDC DIP header and ribbon cable (see picture above). As a bonus, I didn't need to find someone to solder the SOIC chip to my board (since I can't solder surface mount chips).

I also connected an RV-3149-C3 evaluation board for the RTC chip to the NVRAM/RTC board using an IDC DIP header and ribbon cable (see picture above). I was able to purchase the chip itself, but it is tricky to solder, so the eval board eliminated that difficulty for now.

Another ribbon cable connects the NVRAM/RTC board to P2 on the FDC board for easier access to the NVRAM/RTC board during development.

I eventually succeeded in writing to and reading from one SRAM chip (23LCV1024) and two EEPROM chips (25LC1024 and 25CSM04), that were divided into 64KB OS-9 and FLEX partitions for testing. A preliminary version of the patches to ST-MON to boot FLEX and OS-9 from all 3 memory chips was written and is working. I also wrote routines to write to and read from the RTC chip, and to blink the activity LED.

The OS-9 driver has been written and briefly tested with all 4 chips, and appears to be working correctly. I have written the disk image format program, a program to check and display the error correction status of all sectors in the 25CSM04 EEPROM chip, and a program to set the date/time in the RTC chip.

The FLEX driver has been written and briefly tested with 3 of the 4 chips (not yet the RTC), and appears to be working correctly. It is compatible with the new 6809 FLEX Plus 10TM Driver Executive. I have also written the disk image format program, but have not yet written the program to check and display the error correction status of all sectors in the 25CSM04 EEPROM chip, nor the program to set the date/time in the RTC chip.

I needed some spacer PCBs for the 14-pin connector. Instead of trying to remember how to use Easy-PC, or learning to use KiCad, I just used a text editor to manually create the Gerber and drill files. I ordered the boards from OSH Park -- they cost only U$2.75 with free shipping!

When I powered up the ST-2900 on 2022-Jun-20, it hadn't been powered for 114 days. Running on battery power during this time, the RTC was now 28 seconds fast, or just over 7 seconds/month (2.7 ppm error). This is good considering I have the less accurate B option RTC with +/-25ppm rated accuracy (over the -40°C to +85°C range). Option A is rated at +/-6ppm, although at a constant 25°C they are both rated at the same +/-3ppm.

In May to July 2023 I assembled the remaining two NVRAM boards, minus the surface mount EEPROM chips. It wasn't until 2024-Jan-04 that I finally got someone else to solder the 25CSM04 EEPROMs onto these boards, and it was a few more months before I inserted all the other ICs into their sockets. Both boards have now successfully passed their initial testing.

I haven't yet assembled an RTC module. Its design isn't ideal, so I might redesign it in KiCad, then have JLCPCB manufacture the PCBs and install the surface mount components on them.

Work continues on the supporting software for FLEX and (Nitr)OS-9.

Future

I haven't fully finished this project yet, but already have ideas for the next version. If I used all surface mount devices, supplied with 3.3V instead of 5.0V, the board could hold 16MB EEPROM (four of the new M95P32) and 2MB SRAM (four IS62WVS5128GBLL), for a total of 9x the capacity of the current NVRAM board, or 36x the capacity of the old RAM-512 board!! As a bonus, the RTC wouldn't require mounting on a separate module, nor require giving up one SRAM device. But I would need to have someone else assemble these boards.


"FLEX" was a trademark of Technical System Consultants (TSC).
"6809 FLEX Plus 10" is a trademark of David C. Wiens, dba Sardis Technologies.
"OS-9" is a registered trademark of Microware LP.

Last revised 2024-May-24 10:01 PDT.
Copyright 2018- David C. Wiens.


Home   FDC board   Contact   Site mapNo JavaScript!