Close

Research - Entry 0

A project log for Bit-Slice (AM2900) Design

What if I'm stuck in a time machine and sent back to 1975? Better safe than sorry.

travis-ayresTravis Ayres 07/18/2021 at 13:350 Comments

Wrote some VHDL for the AM2901, but I haven't decided if I'm going for full accuracy or something for an FPGA. It's been a lot of fun reading the data sheet though - including some "Wait, what?" moments when trying to figure things out. It is possible to design an excessive battery of tests, which sounds like some bit of fun... or we could just plug an AM2901 into a socket, stick that socket on a breadboard, and then run some wires over to an FPGA board kicking around my lab - obviously with something to handle the level translation between the 2901 and whatever (relatively) modern FPGA.

I'm not an expert at level translating things from the mid 1970's; I just "expect" whatever outputs I have are powerful enough to do what I want, whenever. See? Having all this power makes you lazy. How boring. 

Abusing VHDL to create a simulation-only model of this chip (as well as a synthesizable one) does sound like fun too, but less fun than wiring things up. That's definitely something to put on the back burner. 

It's interesting - it's like the AM2901 "expects" to be used in a certain way in a system, and if you're familiar with how it expects to be used, you can see how other microcoded systems could be extended or pieces they're missing. Taking a look at other small microcode systems, you see how they'd benefit from a computer control unit (CCU), or how to better take interrupts to provide for condition control. 

Then there are some SUPER hardcore microcode projects that have done so much, you're pretty sure they're who you want to be when you grow up; I'm going to list them here out of inspiration, and honestly more than a little envy. But the nice thing about engineering, Kung Fu, whatever, is that it rewards study and deep practice, and just thinking "That's awesome" without joining in the fun is no way to get there. Anyway, here they are:

https://hackaday.io/project/172073-microcoding-for-fpgas

http://www.microcorelabs.com/home.html

Next post is on Logisim, Digital, and Logisim-Evolution - because that's what a lot of people are using, and these simulators (especially Digital and Logisim-Evolution) have become really cool tools for learning digital design. Actually maybe a 2901 model in one of those simulators would be even more useful...

Discussions