Business Card Sized Zilog Z80 Single Board Computer
Tiny Z80 is a business card sized (size?!) single board computer (SBC). It is mostly compatible with Easy Z80, and offers similar capabilities, including 512 KiB of battery-backed SRAM, 512 KiB Flash ROM, Z80 SIO and Z80 CTC (integrated in Z80 EIPC). Tiny Z80 includes a USB to Serial converter IC on board connected to one of the SIO ports, for ease of use with modern computers. The glue logic, including the memory paging registers is implemented using Altera MAX7000AE CPLD.
- Processor: Zilog Z80 EIPC - Z84C15, includes Z80 CPU, Z80 SIO, Z80 PIO, and Z80 CTC
- Memory: 512 KiB battery-backed SRAM, 512 KiB Flash ROM
- Input/Output:
- Dual RS232 serial ports, implemented using Z80 SIO integrated into Z80 EIPC
- FT231XS USB to Serial converter connected to SIO Port A
- Two 8-bit parallel ports, implemented using Z80 PIO integrated into Z80 EIPC
- User controllable LED
- Bus: RC2014 compatible
- Microprocessor Supervisor:
- Reset generation
- SRAM battery backup
- Power failure NMI
- Watchdog (optional)
Pin | Signal Name | Description |
---|---|---|
1 | VBUS | Power Supply - +5V |
2 | D- | USB Data - |
3 | D+ | USB Data + |
4 | NC | Not Connected |
5 | GND | Ground |
Pin | Signal Name | Description |
---|---|---|
1 | GND | Ground |
2 | RTS | RS232 / Request to Send |
3 | VSER | Power Supply - +5V (Optional, if F2 is installed) |
4 | RXD | RS232 / Receive |
5 | TXD | RS232 / Transmit |
6 | CTS | RS232 / Clear to Send |
Pin | Signal Name | Description | Pin | Signal Name | Description |
---|---|---|---|---|---|
1 | VCC | Power Supply - +5V | 2 | GND | Ground |
3 | PA0 | Port A - Data 0 | 4 | GND | Ground |
5 | PA1 | Port A - Data 1 | 6 | /BSTB | Port B - Strobe |
7 | PA2 | Port A - Data 2 | 8 | BRDY | Port B - Ready |
9 | PA3 | Port A - Data 3 | 10 | PB7 | Port B - Data 7 |
11 | PA4 | Port A - Data 4 | 12 | PB6 | Port B - Data 6 |
13 | PA5 | Port A - Data 5 | 14 | PB5 | Port B - Data 5 |
15 | PA6 | Port A - Data 6 | 16 | PB4 | Port B - Data 4 |
17 | PA7 | Port A - Data 7 | 18 | PB3 | Port B - Data 3 |
19 | ARDY | Port A - Ready | 20 | PB2 | Port B - Data 2 |
21 | /ASTB | Port A - Strobe | 22 | PB1 | Port B - Data 1 |
23 | GND | Ground | 24 | PB0 | Port B - Data 0 |
25 | GND | Ground | 26 | VCC | Power Supply - +5V |
Pin | Signal Name | Description | Pin | Signal Name | Description |
---|---|---|---|---|---|
J4-1 | A15 | Address A15; Output | |||
J4-2 | A14 | Address A14; Output | |||
J4-3 | A13 | Address A13; Output | |||
J4-4 | A12 | Address A12; Output | |||
J4-5 | A11 | Address A11; Output | |||
J4-6 | A10 | Address A10; Output | |||
J4-7 | A9 | Address A9; Output | |||
J4-8 | A8 | Address A8; Output | |||
J4-9 | A7 | Address A7; Output | |||
J4-10 | A6 | Address A6; Output | |||
J4-11 | A5 | Address A5; Output | |||
J4-12 | A4 | Address A4; Output | |||
J4-13 | A3 | Address A3; Output | |||
J4-14 | A2 | Address A2; Output | |||
J4-15 | A1 | Address A1; Output | |||
J4-16 | A0 | Address A0; Output | |||
J4-17 | GND | Ground | J5-1 | GND | Ground |
J4-18 | VCC | Power Supply - +5V | J5-2 | VCC | Power Supply - +5V |
J4-19 | /M1 | Machine Cycle One; Output | J5-3 | /RFSH | DRAM refresh; Output |
J4-20 | /RESET | Reset; Output | J5-4 | N/C | Not connected |
J4-21 | CPU_CLK | CPU Clock; Output | J5-5 | UART_CLK | UART Clock (1.8432 MHz); Output |
J4-22 | /INT | Interrupt; Input | J5-6 | /BUSACK | DMA Bus Acknowledge; Output |
J4-23 | /MREQ | Memory Request; Output | J5-8 | /HALT | Halt; Output |
J4-24 | /WR | Write Request; Output | J5-9 | /WAIT | Wait; Input |
J4-25 | /RD | Read Request; Output | J5-10 | /NMI | Non-maskable Interrupt; Input |
J4-26 | /IORQ | Input/Output Request; Output | |||
J4-27 | D0 | Data D0; Input/Output | |||
J4-28 | D1 | Data D1; Input/Output | |||
J4-29 | D2 | Data D2; Input/Output | |||
J4-30 | D3 | Data D3; Input/Output | |||
J4-31 | D4 | Data D4; Input/Output | |||
J4-32 | D5 | Data D5; Input/Output | |||
J4-33 | D6 | Data D6; Input/Output | |||
J4-34 | D7 | Data D7; Input/Output | |||
J6-1 | TXDA | Channel A, Transmit Data; Output | J6-2 | TXDB | Channel B, Transmit Data; Output |
J6-3 | RXDA | Channel A, Receive Data; Input | J6-4 | RXDB | Channel B, Receive Data; Input |
J6-5 | USR1 | User Pin 1, Not connected | J6-6 | USR5 | User Pin 5, Not connected |
J6-7 | IEI | Interrupt Enable Input | J6-8 | USR6 | User Pin 6, Not connected |
J6-9 | IEO | Interrupt Enable Output | J6-10 | USR7 | User Pin 7, Not connected |
Pin | Signal Name | Description | Pin | Signal Name | Description |
---|---|---|---|---|---|
1 | TCK | Test Clock | 2 | GND | Ground |
3 | TDO | Test Data Output | 4 | 3.3V | Power Supply - +3.3V |
5 | TMS | Test Mode Select | 6 | NC | No Connect |
7 | NC | No Connect | 8 | NC | No Connect |
9 | TDI | Test Data Input | 10 | GND | Ground |
Position | Description |
---|---|
1-2 (default) | 1.8432 MHz (115200 bps if using x16 mode) |
2-3 | Programmable using CTC channel 0 |
Position | Description |
---|---|
1-2 (default) | 1.8432 MHz (115200 bps if using x16 mode) |
2-3 | Programmable using CTC channel 1 |
Solder instead of U7 LDO when using a 5V CPLD
Solder when not using U5 CPU Supervisor to connect RAM_CS and VCC directly to the SRAM IC
Tiny Z80 project on Mouser.com - View and order all components except of the PCB.
Tiny Z80 project on OSH Park - View and order the PCB.
Component type | Reference | Description | Quantity | Possible sources and notes |
---|---|---|---|---|
PCB | Tiny Z80 PCB - Version 1.0 | 1 | Order from a PCB manufacturer of your choice using provided Gerber or KiCad files | |
Battery Holder | BT1 | CR2032 Keystone Electronics 534-1058 | 1 | Mouser 534-1058 |
Battery | BT1 | CR2032 | 1 | |
Capacitor | C1 - C13 | 100nF 0603 SMT | 13 | Mouser 77-VJ0603Y104JXJPBC |
Capacitor | C14, C15 | 33pF 0603 SMT | 2 | Mouser 77-VJ0603A330JXACBC |
Capacitor | C16, C17 | 47pF 0603 SMT | 2 | Mouser 77-VJ0603A470JXACBC |
Capacitor | C18 | 10nF 0603 SMT | 1 | Mouser 77-V0603Y103KXJAC31X |
Capacitor | C20, C19 | 10uF 1210 SMT | 2 | Mouser 581-TAJB106K020SNJ |
Capacitor | C21 | 47uF SMT | 1 | Mouser 581-TAJC476K016TNJ |
LED | D1 | 0603 SMT Power/Green | 1 | Mouser 78-VLMG1300-GS08 |
LED | D2 | 0603 SMT TX/Red | 1 | Mouser 78-VLMS1300-GS08, 78-VLMO1300-GS08 |
LED | D3 | 0603 SMT RX/Yellow | 1 | Mouser 78-VLMY1300-GS08 |
LED | D4 | 0603 SMT CPU/Blue | 1 | Mouser |
Polyfuse | F2, F1 | 0.5A SMT | 2 | Mouser 650-MINISMDC050F-2 |
Connector | J1 | Mini USB B | 1 | Mouser 649-10118194-0001LF |
Connector | J2 | Pin Header 1x6 | 1 | |
Connector | J3 | Pin Header 2x13 | 1 | |
Connector | J4, J5 | Pin Header 2x34, Right Angle | 1 | Mouser 571-9-103326-0 Note: Cut to 34 pin, remove extra pins. Use remaining 2x6 piece for J6 |
Connector | J6, J7 | Pin Header 2x5 | 2 | |
Resistor | R1, R2 | 27 Ohm 0603 SMT | 2 | Mouser 71-CRCW0603-27-E3 |
Resistor | R3 - R6 | 1 kOhm 0603 SMT | 4 | Mouser 71-CRCW0603-1.0K-E3 |
Resistor | R7 - R18 | 4.7 kOhm 0603 SMT | 12 | Mouser 71-CRCW0603-4.7K-E3 |
Resistor | R19 - R25 | 10 kOhm 0603 SMT | 7 | Mouser 71-CRCW0603-10K-E3 |
Resistor | R26 | 29.4 kOhm 0603 SMT | 1 | Mouser 71-CRCW0603-29.4K-E3 |
Trimmer Resistor | RV1 | 2 kOhm | 1 | Mouser 652-TC33X-2-202E, 81-PVG3G202C01R00 |
Tactile Switch | SW1 | Tactile Switch | 1 | Mouser 653-B3U-1000P |
Integrated Circuit | U1 | Z84C15, Zilog Z80 EIPC, 16 MHz, QFP-100 | 1 | Mouser 692-Z84C1516FSG |
Integrated Circuit | U2 | SST39SF040, 512 KiB Flash ROM, PLCC-32 | 1 | Mouser 579-39SF0405INHE |
Integrated Circuit | U3 | AS6C4008, 512 KiB SRAM, SOP-32 | 1 | Mouser 913-AS6C4008-55SIN |
Integrated Circuit | U4 | EPM7064AETC44, Altera MAX 7000AE CPLD, TQFP-44 | 1 | Mouser 989-EPM7064AETC4410N |
Integrated Circuit | U5 | MAX691xWE | 1 | Mouser 584-ADM691AARWZ-R |
Integrated Circuit | U6 | FT231XS | 1 | Mouser 895-FT231XS-R |
Integrated Circuit | U7 | TPS79333-EP | 1 | Mouser 595-TPS79333DBVR |
IC Socket | U2 | PLCC32 SMD Socket | 1 | Mouser 649-69802-432LF |
Crystal Oscillator | X1 | 1.8432 MHz XO91 | 1 | Mouser 559-F3345-184 |
Crystal Resonator | Y1 | 16 MHz Crystal_GND24 | 1 | Mouser 732-22516MF18X-G |
Tiny Z80 is supported by RomWBW v3.0.1 and later. RomWBW includes BIOS, CP/M-80 2.2, Z-System, and a collection of utilities. It also should be possible to run FUZIX on this board. Note: Edit Easy Z80 configuration (cfg_ezz80.asm), set SIO0BASE to $18 and CTCBASE to $10
Tiny Z80 uses an Intel/Altera EPM7064AETC44 CPLD (U4) for address decode logic. The CPLD fuse map and the CPLD source code are provided in CPLD directory of this repository. Use free Altera Quartus II 13.0sp1 Web Edition to program the CPLD. Newer Quartus versions do not support Altera MAX7000 CPLDs.
- Version 1.0
- Initial version
- Version 1.0
- Front silkscreen: J7 overlaps with 100nF value of C4
- Version 1.0
- None