Saturday, February 8, 2014

Computational Mind, Part 1

Note: This series of posts isn't meant to be a technical computers for dummies guide. Quite the opposite. The conclusion will be very non-technical. I just need to get a few details out of the way first.

One of the very first serious things I did with computers was to learn to build and fix them. Makes sense. It was 1974, and front line electronics were still a mish-mash of discrete and integrated technologies. In an effort to try not to geek out completely on this topic, and also to try not to sound condescending, I'll explain that. Discrete electronics consists of circuit boards full of little components, like resistors, capacitors, and transistors; that you can hold in your hand. Like this:




Integrated circuit technology consists of all of the pieces and parts you see above, miniaturized and bundled up into a single piece. Like this:
The computer you are reading this on is made up of dozens of chips like the one in the second picture, that contain millions of components like the ones in the first picture. The computer I first learned to build and repair was a couple dozen circuit boards like the first picture. No integrated circuits.

Most of you reading this have at least heard the terms, bits and bytes. A bit is something that can be expressed as a one or a zero. For the purposes of this discussion, a bit is a transistor. It's a switch. It's on or off, one or zero. Back in 1974, every computer had its own word size. A word was some number of bits strung together. Imagine an alphabet that only has two letters. Some used 11 bits, some used 28, and so on. When microprocessors showed up in the 70s, everyone standardized on 8 bits, which was called a byte. In a historical dead end, there were processors that dealt with 4 bits, which was called a nybble. Two nybbles to a byte. Get it? Computer geeks are weird. The computer I worked on used 6 bits. It was called a Bi-Tran 6. Every word in the Bi-Tran 6's vocabulary had six letters.

In order to use the bits, they need to be ordered in meaningful ways. You need a container for them, so each word was held in something called a register. Think of a cash register for bits. Each bit in its own pocket, held in the right order by the register drawer. That's not actually where the term comes from, but it makes for a good example. So, we have a string of bits making up a word that's held in a register. In comes the discrete circuit board. Each register in the Bi-Tran 6 was held on a circuit board that was a little bigger than a 3x5 card. Each circuit board had, among other things, 6 transistors. Switches. On or off. One or zero. Bits.

In order for the bits to have any long term meaning, they have to be somewhat permanent at some point. When you turn the power off to a register, the meaning of the bits and words disappears. Poof! If you weren't paying attention before you pulled the plug, it's gone forever. We need something that remembers the state of the bits after you turn off the power. Back in the 70s, we used little iron donuts called magnetic cores. The donuts were magnetized in one direction or the other, clockwise or counter clockwise to represent a one or a zero. The magnetic direction stayed with the donut after the power was turned off. It "remembers" the bits, leading to it and its brothers and sisters being called memory. We'll come back to that in subsequent posts. It's worth mentioning here that a board containing core memory that is about the size of a sheet of notebook paper will hold a few hundred words. The same size board containing solid state memory, what we use today, would hold a few trillion words. That will be important later, too.

Just having a bunch of ones and zeroes laying around doesn't do anyone any good. Stringing them together into words isn't much better. Saving the words together in a particular order represents information, but still isn't very useful. Every useful operation in a computer is mathematical. Each of the words represents a number. Mathematical operations on words result in other words. In the Bi-Tran 6, there was only one mathematical operation: addition. Two registers were filled with the bits from memory, added together and the result was put in another register, whose bits were stored in memory. The Bi-Tran 6 wasn't meant to be usefull for anything but training people to fix computers. Adding, subtracting, multiplying, and dividing words to create a new result is the useful work that a computer does. It processes the words to create information. The engine that does this is called a processor.

So, with all of that basis, I learned how to build and fix a computer. I found the bits - transistors - that weren't working and replaced them. I found the electronic path that didn't do the addition properly. I located the magnetic cores that weren't storing the bits right. I made it think again.

The processor that controls your microwave has more words and more capacity to operate on them than the Bi-Tran 6, and it is hundreds of times smaller. Computers the size of the Bi-Tran 6 using current technology are used to control factories, run banks, and fly spacecraft.

I tried to find a picture of the Bi-Tran 6, but there doesn't seem to be one floating around, much to my surprise. Think of a sewing machine case on steroids. If I find one later, I'll post it.

Next up, the Internet.

No comments:

Post a Comment