FPGA-what? Please?

Photo by Manuel / Unsplash

A little bit of history won't kill anyone, unlike building complex combinational circuits...

Well, okay, I'm exaggerating, even building combinational circuits isn't deadly, but imagine a decoder like the one we used in the book "Ports, Bytes, 8-Bits".

(If you haven't read that book, I'll tell you that we usually decoded 16 bits of the address bus to address one of two memory circuits, or we decoded three bits of the address to 8 different signals to select circuits.)

Now imagine it a bit more complex. Imagine a finer scaling of the address space, say in 1 kB blocks, that's six address bits, and imagine a more complex memory map where say the first 8 kB is RAM, then 8 kB ROM, then 16 kB is RAM again, 1 kB of peripheral space, that's mirrored fifteen times, the last 16 kB is ROM again, but paged...

Of course one can draw a truth table, a Karnaugh map, write logical expressions and try to translate it into NANDs, NORs, three-input, four-input, eight-input gates and various AND-OR-INVERTs. Eventually you end up with something that requires taking up five integrated circuits, but some-only used maybe half of them. It works, yes, but it burns heat and takes up a lot of space.

Fortunately, modern electronics has made huge leaps forward since the 1970s, and over the past decade even the most advanced circuits have become available to ordinary mortals - that is, people like us. Today, we have the ability to design entire systems that used to require dozens or hundreds of integrated circuits, using languages for formalized description of logic circuits, simulate everything in a computer, and finally load it into a "blank circuit" that turns into anything we want.

And that's what you'll find in the ebook you're about to open!

Comments powered by Talkyard.

Martin Maly

Martin Maly

Programmer, journalist, writer and electronic hobbyist. Vintage CPU lover. Creating new computers with the spirit of 80's.