Table of Contents
The SBC V2 is a Zilog Z80 processor board. It's a 100x160mm board that is capable of functioning both as a standalone SBC or as attached to the ECB bus.
- 4Mhz Zilog Z80 CPU
- Up to 512Kb paged SRAM (: Add link to the paging description)
- Up to 1Mb EPROM or FLASH ROM.
- Serial Interface (16550 Uart)
- Parallel interface (8255), can be extended to support IDE interface via small board
- Real Time Clock (DS1302)
- Battery backup for RTC and SRAM.
- Standard ECB bus interface
- Standard PC drive connector power supply interface using +5V only
- Reset button with external connector
- Status LED
The latest SBC V2 schematic is available here: :boards:sbc:sbc_v2:sbc-v2-003-sch.pdf
Also, here's the board's PCB layout: :boards:sbc:sbc_v2:sbc-v2-003-brd.pdf
Kicad files for board manufacture: :boards:sbc:sbc_v2:ecb_sbc_v2-003-kicad.zip
The following table outlines the correct jumper settings for the SBC V2 board:
|Board Reference||Jumper Description|| |
Installed - allows you to use the common battery backup on the ECB bus (pin A24).
Not installed - means either a local battery is used or no battery backup at all.
|JP2||One bit input port||X||
Installed - enables the one bit input port. This is currently
unused although could be used for external input if desired like a button or other things.
Not installed - disables the one bit input port.
|K1||U2 EPROM chip pins (32-pin or 28-pin)||X *||32-pin EPROM used in U2 (ex. 27C080 1MBx8 EPROM) - default|
|X||28-pin EPROM used in U2 (ex. 27C256 EPROM)|
|K2||UART side hardware handshaking (DSR, CTS)||X *||DSR (this should be paired with K3 - DTR) - default|
|X||CTS (this should be paired with K3 - RTS)|
|K3||UART side hardware handshaking (DTR, RTS)||X *||DTR (this should be paired with K2 - DSR) - default|
|X||RTS (this should be paired with K2 - CTS)|
|K4||Serial side hardware handshaking (DSR, CTS)||X *||DSR (this should be paired with K5 - DTR) - default|
|X||CTS (this should be paired with K5 - RTS)|
|K5||Serial side hardware handshaking (DTR, RTS)||X *||DTR (this should be paired with K4 - DSR) - default|
|X||RTS (this should be paired with K4 - CTS)|
|K6||U2 chip type (27C080 EPROM, 29C040 flash)||X *||27C080 EPROM used in U2 - default|
|X||29C040 flash used in U2|
|K7||U23 SRAM (512K or 128K)||X *||512K chip used in U23 - default|
|X||128K chip used in U23|
|K8||U2 chip type (27C080 EPROM, 29C040 flash)||X *||27C080 EPROM used in U2 - default|
|X||29C040 flash used in U2|
|K9||Parallel Port power control (pin 25)||X *||GROUND - default|
|X||VCC ( WARNING - this setting will send VCC power down pin 25 of the parallel port which may potentially damage connected device)|
|K10||MCPL (Memory Page Config Latched)||X *||32K upper RAM fixed/32K lower RAM switchable memory map - default|
|X||48K upper RAM fixed/16K lower RAM switchable memory map (banked)|
|K11||MCPL (Memory Page Config Latched)||X *||32K upper RAM fixed/32K lower RAM switchable memory map - default|
|X||48K upper RAM fixed/16K lower RAM switchable memory map (banked)|
|K12||Bus Interrupt (pin A23)||X *||Internal UART interrupt - default|
|X||External ECB interrupt|
|K13||ECB/Kontron Reset configuration||X *||ECB legacy: pin C-31 is Reset OUT to peripherals - default|
Kontron compatible: pin C-31 is Reset IN from a SPST pushbutton pin C-26 is Reset OUT to peripherals.
N.B.: All boards in a system must use the same setting. Older boards don't have this jumper; hence, 1-2 is specified as the “default” setting. Newer systems should use the Kontron setting, since the newer backplanes have the Reset IN connector for pin C-31. (JRC 2015-7-6)
* = default setting
The SBC V2 board uses addresses 60h - 7Fh for itself, and anything else goes to ECB.
|78h||79h||RAM page register|
|7Ch||7Eh||ROM enable/page register|
The original ECB Disk IO board uses addresses 20h-3Fh. In the ECB Disk IO V3 board the I/O range is configurable to any 32-bytes block, with 20h-3Fh being the recommended default (and that's the default configuration of RomWBW firmware). The more detailed port information is here: (http://retrobrewcomputers.org/lib/exe/fetch.php?tok=f89205&media=http://www.retrobrewcomputers.org/lib/images/smileys/fixme.gif: Add Link to ECB DiskIO V3 ports info).
The PropIO board uses 8 I/O addresses range, with the first Propeller (one that handles keyboard and VGA) using the first 4 addresses and the second propeller using the next 4 addresses. The I/O address can be configured to any 8-bytes block using P5 jumper block, but apparently the recommended default is 40h-47h (Jumpers setting: 10111 - 1 = Jumper In [present], 0 = Jumper Out [absent]).
The ECB SCG board also uses 8 I/O addresses range, configurable using P20 jumper block. The default configuration is 50h- 58h (P20 jumper settings: 10101).
The ECB Zilog Peripherals board uses 16 I/O addresses, configurable using jumpers SW1-SW4. It looks like the recommended default is 10h-1Fh (see “Board Address” section).
The ECB VDU board uses addresses 0F0h-0F7h (: Double-check this address range).
The uPD7220 board uses 16 I/O addresses, and it looks that the recommended address range is 80h-8Fh.
The ECB ColorVDU board can be jumpered for any 16 I/O addresses. It is jumpered for addresses 0E0h-0EFh at present.
Some additional notes regarding I/O addresses:
Wolfgang Kabatzke , 2:37 pm on Dec 30, 2012
Hello Sergey and Douglas,
great job! Thank You so much for the help. I take Your comments as reference part in my RAM-floppy-documentation. So I reserve for ECB-RAF2011 R1.0 the range from 0A0H-0AFH for #1 and 0B0H-0BFH for #2.
Thank You so much.
Douglas W. Goodall, 5:36 pm on Dec 30, 2012
You can't actually reserve 2/16ths of all the possible I/O addresses, but we can note that these are the preferred addresses for integrating your boards, and at least cause builders to take this into account when they are integrating their own systems. I will try to follow that recommendation, since I will be integrating two boards into my system. I look forward to building up your boards so I can add them to my ECB configuration and use them in my SBC V2, and in my N8-2312.
Serial Cable Instructions
The SBC V2 doesn't have any video capabilities in its solitary form. Therefore, in order to test it, you will need to connect it to a serial terminal (which will provide the keyboard input and monitor output). The easiest way to do this is to construct a cable which will provide a serial port (with a D-sub connector or DE-9 plug) which will plug into a “host” computer running a serial terminal emulation program. This program will allow you to interface with the SBC V2 board using the host computer’s keyboard and monitor.
First, you must build a cable with an IDC-10 plug on one end (plastic rectangular connector with 2 rows of 5 pins) and a female DE-9 plug (ie. a serial port plug) on the other end.
The female DE-9 plug is what you will plug into the serial port of your host computer. Serial ports (on the back of the computer) are male ports (ie. they have pins), so the plug at the end of this cable must be a female plug (they have holes). It's not recommended to use accessory serial cables to make this connection (such as null modem cables, etc.). This is because many such cables are wired for specific applications, and may not work with your SBC V2 board. For instance, a serial data transfer cable is wired very differently from a “straight-through” serial cable (pin 1 to 1, 2 to 2, etc.) which is different from a null modem cable. Because of this cable inconsistency, it's preferred to build the complete custom cable from the beginning knowing exactly what pin is connected where and why, and not to use any serial extension cables. The exception to this is using a serial cable that you know is wired as a “straight through” cable (with each pin on one plug connected to each pin on the other plug: 1 to 1, 2 to 2, etc).
The following cable layout shows what is being connected where in this cable:
|IDC-10 side||DE-9 side|
Pin 1 on the IDC plug is marked with an embossed triangle on the plug, and this pin corresponds to pin 1 on the pcb which is marked with a square solder hole (at the lower-right most position of the plug on the SBC V2 pcb). The pins on the DE-9 plug are usually marked right on the plug itself in tiny numbers. Strip some wires and solder away. Instead of stripping wires and soldering manually, you can also use ribbon cable and special “direct connect” plugs that connect directly to the ribbon cable without soldering (they have rows of metal “pins” that press down and penetrate the ribbon cable to make the connections). Because of the non-standard pin connections that are needed in this cable (per the above table), however, you will likely need to do some soldering or “custom connecting”.
Always double and triple check where you’re soldering something before you solder it. When you’ve built your cable, use your multimeter to check connectivity between each pin on the IDC-10 side and the DE-9 side according to the arrangement above to make sure you got it right.
In order to test connections in a plug you cannot stick the multimeter lead into the hole (because it will not fit). Instead, take a spare piece of wire, stick it into the hole for the pin you want to test, and then touch the multimeter lead to that wire.
Full list of parts::boards:sbc:sbc_v2:sbc-v2-parts-list.pdf
See here for minimum build and parts substitution guidelines.
There is extensive firmware support for the SBC V2 and associated ECB peripheral cards. Currently there are two firmware builds still being actively developed - UNA and ROMWBW.
See here for current software builds and information on historical projects.
A debug boot ROM can be installed for testing - try James Moxham's ROMIMAGE.BIN from here.
Changes from V1
Information regarding V1 can be found here.