search.noResults

search.searching

saml.title
dataCollection.invalidEmail
note.createNoteMessage

search.noResults

search.searching

orderForm.title

orderForm.productCode
orderForm.description
orderForm.quantity
orderForm.itemPrice
orderForm.price
orderForm.totalPrice
orderForm.deliveryDetails.billingAddress
orderForm.deliveryDetails.deliveryAddress
orderForm.noItems
Column: Embedded design


Figure 2: Highly simplified 8-bit TTL CPU design with a 4-bit adder


to these efforts has got to be: “Why do it that way?”. I have built a few retro CPUs over the


years, starting in the late 80s with a “can I outperform a 68000 on a simple numerical benchmark” 32-bit machine. Ten came a card frame based 24-bit machine, a 16-bit “pointer-based addressing” design (Figure 1), a pair of 8-bit controllers (Figure 2) and, most recently, a “full” 24-bit design using a single multiplexed 74181 chip (Figure 3). Now I’m considering a simpler 16-bit design, again mostly for the fun of it. Still, it is worth examining why I’ve already chosen the design path I’m on, as well as why other people in this area make very different design choices. Tis I think comes down to “build what


you know, you will enjoy programming”. If you are a Forth-fiend, build something with all the stacks that you have ever wanted. If another high-level language is your thing, optimise around supporting that (P-code, anyone?). Or, if like me you are going to be grubbing around in the binary machine code and pretending it’s 1960 again, then make certain that you design and build a CPU that you will like. I have made that error several times


of building something I then find myself detesting. I have built a front panel using cheap slide switches that literally made my


Figure 3: Classic front panel binary data entry switches – and Blinkenlights


fingertips bleed aſter a few hours. I have built a machine with an architecture that just never “gelled” with me (the 16-bit pointer CPU shown in Figure 1). I have a 24-bit design which works beautifully, but the ALU multiplexing circuits are an absolute affront to the eye, both physically and schematically. I pretty much know what I am going to


“get on” with. I grew up with the 6502, and then later ended up writing a lot of low- level code for 8-bit PIC series processors – and I still do. I expect an accumulator-based machine,


and a lean, sparse but fast op-code set. So that is what I’ll build. However, if your happy place is a CISC processor with abundant banks of registers, and you love complex multi cycle “add A, B and F and shiſt up, then multiply by 3 and jump to the resultant address” type op codes then do that! In any final analysis, a retro CPU


design isn’t really going to be the start of a great commercial enterprise. It’s more a technological answer to your mind’s question “Can I actually design one of those?”, or perhaps “Can I design something that works this particular way?”, making it a question worth answering. I can guarantee that you will learn some very interesting things on the way.


Footnote: Blinkenlights is a comedic


pantomime German reference to the multiplicity of flashing indicator lamps seen on the front panel consoles of 1950s (and later) mainframes and minicomputers. Te term appears in an oſten-replicated sign posted in computer rooms, originating at IBM in 1955.


Tis column on embedded design prepared by Myk Dormer continues in the next edition of Electronics World


A FEW INTERESTING RESOURCES:


https://www.bradrodriguez.com/ papers/piscedu2.htm


https://hackaday.io/projects?tag=CPU


https://hackaday.io/projects?tag= minicomputer


https://www.facebook.com/groups/ 553432921406179


https://www.homebrewcpuring.org/ ringhome.html


https://gigatron.io/ One of the very few commercially sold (in kit form) retro CPU designs


www.electronicsworld.co.uk June 2026 11


Page 1  |  Page 2  |  Page 3  |  Page 4  |  Page 5  |  Page 6  |  Page 7  |  Page 8  |  Page 9  |  Page 10  |  Page 11  |  Page 12  |  Page 13  |  Page 14  |  Page 15  |  Page 16  |  Page 17  |  Page 18  |  Page 19  |  Page 20  |  Page 21  |  Page 22  |  Page 23  |  Page 24  |  Page 25  |  Page 26  |  Page 27  |  Page 28  |  Page 29  |  Page 30  |  Page 31  |  Page 32  |  Page 33  |  Page 34  |  Page 35  |  Page 36  |  Page 37  |  Page 38  |  Page 39  |  Page 40  |  Page 41  |  Page 42  |  Page 43  |  Page 44