Last visit was: Wed Dec 03, 2025 1:52 am
It is currently Wed Dec 03, 2025 1:52 am



 [ 4 posts ] 
 The MAX Stack Computer Project 
Author Message
User avatar

Joined: Sun Dec 19, 2021 1:36 pm
Posts: 106
Location: Michigan USA
My new design project is a stack computer named MAX built using TTL integrated circuits. This project has many similarites to other projects I have described here: The TTL-Retro, the LALU Computer and my recent experiments with the Harris RTX2000 CPU.

Stack Computers are natural Forth machines. While exploring the RTX2000 two things really stood out: Direct Threading and Machine Opcodes corresponding to Forth Primitives. Writing assembly code by hand for the RTX approaches coding in Forth. Direct threading is a very powerful hardware feature.

My goal with MAX is to create a computer from scratch which can be programmed directly using opcodes corresponding to Forth instructions. Higher level Forth instructions can be created by using the direct threading.

I've decided to start simple and work with an 8 bit machine. (The TTL-Retro was a 12 bit machine, and LALU was a 16 bit machine.) You might say MAX will be a canonical stack machine built in hardware. The CPU will be my own design burned into ROM, similar to LALU. The ALU will start by simply using NAND IC's, and likely progress to a Lookup Arithmetic Logic Unit (LALU).

I plan to make provision for multiple stacks: Data, Return, Code and Keyboard. The Code Stack holds the program code. The Keyboard stack handles Input/Output to the operator, which can be a serial stream.

The MAX design will be using TTL. A key learning for me has been the realization of the efficacy of using negative logic. NAND gates and active lows are your friend! It really is amazing how much simpler things become regards the glue logic.

Anyway, that's the plan. More to follow regards the hardware. Michael


Thu Nov 27, 2025 1:18 pm WWW

Joined: Wed Jan 09, 2013 6:54 pm
Posts: 1862
Certainly sounds interesting... how is the user's serial I/O a stack though? It feels like it needs to be a queue.


Thu Nov 27, 2025 6:53 pm
User avatar

Joined: Sun Dec 19, 2021 1:36 pm
Posts: 106
Location: Michigan USA
Yes, the Keyboard Stack is used as a queue by resetting the counter after the input text stream has been received. (FIFO instead of LIFO)

To minimize construction costs I decided to use a standard 100mm square size for the MAX PCB's. This size allows purchase of 5 boards for $5, plus shipping and tariffs, from PCBWAY. Each board of MAX has a 50 pin connector to the bus, which is simply a passive backplane.

The first board I will describe is the Clock/Oscillator board. I am using a canned 1 MHZ oscillator as the timebase, and generate 6 rings or phases using the circuit shown in the attached schematic. There is nothing special about this design, and it is similar to what was used on TTL-Retro and LALU.

I also generate a quadrature clock for the bus, which can be a convenience for some of the TTL glue logic. I used an oscilloscope to verify the pulses are correct, and that the reset circuit works correctly. Unused board space was filled with prototyping work areas.


You do not have the required permissions to view the files attached to this post.


Fri Nov 28, 2025 12:47 pm WWW

Joined: Mon Oct 07, 2019 2:41 am
Posts: 878
Real men use a 74H04. :)
A 4.92 Mhz or 1.288 Mhz osc could be a better choice if plan to have a serial device or some sort of time generation logic,
Remote single step ,and single clock step could be option for later system debugging.
The only major fault I see is no power on reset, with a 555 timer.


You do not have the required permissions to view the files attached to this post.


Sat Nov 29, 2025 9:49 pm
 [ 4 posts ] 

Who is online

Users browsing this forum: CN-mobile-9808-b and 37 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software