No need to know what an FPGA is. In a few diagrams, here is what Project 816 will be, how its parts work together, and where it stands today.
On this page
1. The idea: a 16-bit computer of today
In the 1980s, microcomputers were built around a processor, memory and a few
specialised chips for graphics and sound. Project 816 takes up this idea with
present-day parts:
a real W65C816S processor, still made by WDC: the 16-bit version of the famous 6502;
16 MB of memory (PSRAM), all that the processor can address;
in place of the specialised chips of the past, FPGAs: chips whose circuits you design
yourself, by writing a program that describes them;
a Raspberry Pi Pico 2 W for everything modern: USB, SD card, Wi-Fi;
a board in the Mini-ITX format, to house the machine in an ordinary PC case.
2. Who does what
The processor in the centre, on its bus with three programmable devices; the memory is connected only
to the “9K” controller, which serves it on the processor’s behalf.
The W65C816S runs the programs. It is the machine’s only real “retro” processor.
The PSRAM of 16 MB is all the memory: there is no ROM. Only the 9K is connected to it, and
it performs the accesses for the processor. The boot program is
copied into memory before the processor starts.
The system controller, nicknamed “the 9K”, is the conductor: an FPGA soldered directly on
the board (the Tang Nano 9K’s chip, without its module). It generates the processor’s clock, decides
who talks on the bus, drives the memory and produces the sound.
The Tang Nano 20K (a larger FPGA) is the graphics card: it generates the picture and sends it
to an HDMI socket.
The Pico 2 W takes care of input and output: USB keyboard and mouse, microSD card, Wi-Fi,
clock, serial link.
The 20K and the Pico do not see all of the memory: each offers the processor only 32 registers,
a small window through which it is given orders.
3. 16 bits and their 16 MB
The 6502 of the 1980s could see only 64 KB of memory. The 65816 sees 16 MB, divided into 256
banks of 64 KB. Project 816 fills all of them with memory: two 8 MB chips.
The memory map: what is found at each address. The registers of the 9K, the video, the Pico
and the expansion occupy four small pages in the first bank.
4. A 65816 trick: the bank on the data lines
To address 16 MB, you need 24 address bits. Yet the 65816 package has only 16 address
pins. The trick: during the first half of each cycle, it places the 8 missing bits
(the bank) on its data pins. The 9K must capture them at the right moment, before those same
pins are used for the data.
A bus cycle: first the bank on the data lines, then the data itself. This is the
first thing the validation board will have to prove.
5. Three stages, in order
The project advances in phases, and moves on to the next only once the previous one works on real
hardware:
A small validation board first, the large Mini-ITX board next, and the software last.
6. The final board
In the absence of a photo, here is the planned layout of the Mini-ITX board: the sockets at the back, as on
a PC, and the heart of the machine in the centre.
The Mini-ITX board as described by the specification. The exact dimensions are still to be checked against an
official template before the board is drawn.
7. In short
Question
Short answer
What is it?
A neo-retro 16-bit microcomputer, in the Mini-ITX format.
With which processor?
A real W65C816S, at 3.3 V; about 6 MHz on average (estimate, 4 to 8 depending on the accesses).
And the rest?
Two FPGAs (control and sound, soldered on the board; HDMI video, as a module) and a Pico 2 W (USB, SD, Wi-Fi, clock).
Does it exist?
Not yet: the specification is written, the validation board is the next step.