Autorem opisu jest Paweł Boguś

Popular Electronics, January 1975

Cover
Part 2 of this article
EXCLUSIVE!

ALTARI 8800

The most powerful minicomputer
project ever presented - can be built
for under $400

BY H. EDWARD ROBERTS AND WILLIAM YATES

The era of the computer in every home - a favorite topic among science-fiction writers - has arrived! It's made possible by the POPULAR ELECTRONICS/MITS Altair 8800, a fullblown computer that can hold its own against sophisticated minicomputers now on the market. And id doesn't cost several thousand dollars. In fact, it's ia a color TV-reciver's price class - under $400 for a complete kit.

The Altair 8800 is not a "demonstrator" or souped-up calculator. It is the most powerful computer ever presented as a construction project in any electronics magazine. In many ways, it represents a revolutionary development in electronic design and thinking.

The Altair 8800 is a parallel 8-bit word/16-bit address computer with an instruction cycle of 2 µs. Its central processing unit is a new LSI chip that is many times more powerful than previous IC processors. It can accommodate 256 inputs and 256 outputs, all directly addressable, and has 78 basic machine instructions (as compared with 40 in the usual minicomputers). This means that you can write an extensive and detailed program. The basic computer has 256 words of memory, but it can be economically expanded for 65,000 words. Thus, with full expansion, up to 65,000 subroutines can all be going at the same time.

The basic computer is a complete system. The program can be entered via switches located on the front panel, providing a LED readout in binary format. The very-low-cost terminal presented in POPULAR ELECTRONICS last month can also be used.


Processor description

Processor: 8 bit parallel.
Max. memory: 65,000 words (all directly addressable).
Instruction cycle: 2 µs (min).
Inputs and outputs: 256 (all directly addressable).
Number of basic machine instructions: 78 (181 with variants).
Add/substract time: 2 µs.
Number of auxiliary registers: 8 plus stack pointer, program counter and accumulator.
Memory type: semiconductor (dynamic or static RAM, ROM, PROM).
Memory access time: 850 ns static RAM, 420 or 150 ns dynamic RAM).
In an upcoming issue, we will describe how to build a low-cost CRT-type terminal that can be used with the computer and can also be mated with any time-sharing computer by telephone.

About the Computer

A computer is basically a piece of variable hardware. By changing the bit pattern stored in the memory, the hardware (electronic circuity) can be altered from one type of device to another. When the bit pattern, and thus the hardware, is changed, we have what is referred to as "software". Any type of variable instruction (programming) - such as Basic, Fortran, Cobol, Algol - is generally classified as software.

To cause it to vary the hardware, you must communicate with the computer. In the case of 8800, this is done by setting the bit pattern on the frontpanel switches in accordance with a set of instructions (provided with the Intel 8080 LSI chip). For example, the 8800 computer will automatically add when a specific bit pattern (10000010) is recived. By setting address and data switches, a complet program of up to 78 steps in the basic computer can be inserted into the processor. If extensive programming is to be performed, an assembler or higher language is used. With an assembler, the person doing the program simply types the word "add" on the device. (In Basic and Fortran a + is used instead).

Fundamental programming concepts are simple enough to master in a relatively short time. However, to become an efficient programmer requires a lot of experiance and a large amount of creativity.

The block diagram of the basic 8800 computer (or any computer, for that matter) is shown in Fig. 1. It consists of the following subsystems:

CPU

The heart of the computer is the CPU, or central processing unit. See fig. 2. The CPU performs all the calculations, generates system timing, and makes all decisions. Of particular importance are the decisions the CPU makes concerning what device should have access to the data buss. It makes these decisions by sending status information at the beginning of each computer cycle, telling the memory and the input/output what to expect for the rest of the cycle.

The CPU contains the program timer, sometimes called the P counter. This device keeps track of the current location in the memory that the processor is using. Also located in the CPU is the arithmetic unit.

The CPU used in the 8800 computer, the Intel 8080 LSI chip, is relatively expensiv in quantities of one. It was selected, however, because it serves to create a minicomputer whose performance competes with current commercial minicomputers. In practice, a lower-performance processor would have been adequate for the majority of the tasks the user might wish to initially define. But the problem with the lesser-power approach is that relatively little money would be saved, and it would be doomed to near-future obsolescence for practical purposes. Our intent here was to produce a processor with more than enough power to handle any job.

Still another consideration was programming. The larger the instruction set, the easier the computer is to program. The 8080 chip has 78 instructions, which is almost twice that of the next power level CPU available (Intel's 8008), which is really designed for use as a buffer.

The CPU contains eight general-purpose registers, P counter, arithmetic unit, accumulator, stack pointer, instruction decoder, and miscellaneous timer and control circuits. The arithmetic unit is of special interest because it contains the circuitry required to perform arithmetic in both decimal and binary formats.

The stack pointer is the register that keeps track of the subroutine addresses. The 8800 computer is capable of performing an almost unlimited number of subroutines, a feature not available with others microprocesors and absent with other minicomputers.

The instruction decoder is the core of the variable-hardware concept. It decodes the instructions and sets up the various registers, gates, etc., in the CPU for proper functioning. All system timing comes from the CPU. (The logic associated with the CPU is shown in Fig. 3, while the system clock is shown in Fig. 4.)

Memory

A computer memory stores the various binary 0's and 1's that make up its language. These 0's and 1's are known as bites. Some memories are organized to store 4, 16, 24, or 32 bits to a word, while others - specifically those in the 8800 computer - are organized to store eight bits to a word. Each time the CPU requests data from memory, a complete word is transmitted. The term byte is interchangeable with the term word in an 8-bit processor. (The basic 8800 memory is shown in Fig. 5.)

The time required from when the address first appears until the data is stable is called "access time". In most modern semiconductor-memory minicomputers, it ranges from 15 ns to 30 µs. With proper adjustments, any memory speed can be used in the 8800 computer, although standard memory time is 850 ns for a static random-access memory (RAM) and 420 ns for a dynamic RAM. Higher-speed memories will not appreciably affect the performance of the computer, while slower-speed memories will result in an overall reduction in system speed.

In addition to semiconductor RAM's, the processor will also service ROM's (read-only-memories) and PROM's (programmable read-only-memories). Access time should be reinforced for the particular memory used.

Any conventional memory can be user in the computer if the input loading on the buss does not exceed 50 TTL loads and if the buss is driven by standard TTL loads. Normal expansion loads to the buss would be one standard low-power load per expansion card.

Front panel

The front-panel logic permits the following functions:
  1. STOP: Stops the processor immediately after it completes the current instruction. An automatic stop occurs when power is turned on (interrupts are disabled).
  2. RUN: Starts the processor at the current address.
  3. EXAMINE: Causes the data stored at the location (set by the switches) to be displayed in binary by LED's.
  4. EXAMINE NEXT: Steps the P counter once and displays the word stored at the next location.
  5. DEPOSIT: Causes the information preset by switches to be stored in the memory.
  6. DEPOSIT NEXT: Steps the P counter and loads the memory.
  7. SINGLE STEP: Steps the program one instruction.
  8. RESET: Clears the CPU and sets up a starting address of 0.
  9. CLEAR EXT: Clears all input/output devices; occurs automatically when power is turned on.
  10. PROTECT/UNPROTECT: Allows selective protection/unprotection of blocks of memory. When a block of memory is protected, it is impossible to write over that block, but its contents can be read out.
There are 36 LED status indicators on the front panel, 16 of which are used for the address buss, 8 for the system status latches, and 8 for the data buss. The four remaining LED's are used for indicating memory-protect, system-wait, and hold status.

Power Supply

Four power sources are required to operate the computer: +5 volts at 2 amperes, -5 volts at 500 mA, -12 volts at 500 mA and +8 volts at 6 amperes. The first three are regulated, while the last is unregulated. The three regulated lines power the processor. The unregulated line powers the peripheral cards that can be used to expand the system, each of which has its own 5-volt regulator on board. This reduces electircal noise and obviates the possibility of total system failure due to the failure of only one regulator.

Expansion

The basic computer is designed for almost unlimited peripheral and memory expansion, using a buss system where all input/output connections merge into a common line. Hence, an external card can be plugged into any slot and it will function properly. The only qualification is that each card have an address decoder to allow the specific card to take what data it needs from the common buss and put data on the buss as required. The processor buffers are designed to drive 300 external cards, which should be adequate for most applications. Bear in mind that only 17 cards will yield 65,000 words of memory.

[Editor's Note: At this writing, a number of different peripheral devices are in various stages of design or undergoing tests]

Assembly Details

The basic computer employs four printed circuit boards assemblies, each of which contains one functional element of the basic system. Because the boards are large and very complex, we are not publishing etching and drilling guides or component-placement diagrams. Instead, you can obtain a set of guides, diagrams, an instruction set, buss points, and miscellaneous information by sending a stamped selfaddressed 8½"x11" manila envelope with 40c postage to MITS, Inc. (See note below Parts List for address.) Request the PE8800 package.

The front panel display board accomodates 36 LED indicators and their associated drivers. Address line inputs A0 through A16 (powinno być A15 - przyp. PB), data lines D0 through D7, and the various status lines originate on the CPU board. The boards have been designed so that the various mating pads on both are aligned. Multi-conductor flexible ribbon cable interconnects the boards.

The front panel control board contains the circuitry for the interfacing between the control switches located on the front panel and the CPU. In addition to the interconnections to the actual processor, this boadr accepts memory addresses switches A0 through A15 (also on the front panel). The first eight of these switches (D0 to D7) are used to put data into the CPU. The EXAMINE/EXAMINE NEXT, DEPOSIT/DEPOSIT NEXT, SINGLE STEP, and RUN/STOP switches are also wired directly to the front panel control board.

The third board contains the Intel 8080 central processing unit LSI chip, two-phase clock and buffers, and the various lines going to the buss. (The buffers are tri-state, high-input-impedance, high-output-level devices.) This board also has four dual D-flip-flops wired as latches for the eight bits of status information. All input and output wiring to and from the CPU board is via a 100-line buss.

The basic memory board contains 256 eight-bit words of random access memory (RAM). It is directly expandable to 1000 words. This board also contains the input/output data-gating, address decoding, memory-wait, and memory-protect circuits. The memory-wait circuit allows the memory time to stabilize the output data to the processor, while the memoty-protect circuit prevents accidental overwriting of the memory. All connections between the CPU and the memory board are via the 100-line buss.

The four boards, along with the power supply, mount in an 18-in. deep by 17-in. wide by 7-in. high (45.7x43.2x17.7-cm) metal cabinet. The various operating switches and LED indicators go on the front panel. When all this is done the computer cabinet's interior will apear to be almost empty. However, the internal cabling system is arranged with connectors to accomodate 17 more boards within the case, all connected to the main buss line. The added boards can be used for memory, input/output devices, control devices, etc. All you have to do is plug the boards into the connectors and the computer does the rest.

Part 2 of this article, next month, will describe the operation of the computer and present some sample programs.


Parts List

C1, C5 to C13 - 0.1-µF disc capacitor
C2 - 0.01-µF disc capacitor
C3, C4 - 100 µF disc capacitor
IC1 - 8080 central processing unit IC (Intel)
IC2 to IC5 - 74L74 IC
IC6 to IC14 - 8T97 IC
IC 15, IC17 - 7402 IC
IC 16, IC 32, IC 33 - 7404 IC
IC 18, IC 20, IC 51 - 74123 IC
IC 21 - 7473 IC
IC 22 TO IC24, IC50 - 7400 IC
IC 25 - 7430 IC
IC 26 - 7410 IC
IC 27 TO IC 31, IC 39 TO IC 41 - 7405 IC
IC 34 - 74l30 IC
IC 42 TO IC 49 - 74L00 IC
IC 52 - 7406 IC
IC 53 - IC 58 - 8111 IC (optional)
LED1 to LED36 - Panel-type, red light-emmitting diode
(Note: Following are resistors ½-watt, 10% tolerance) R1, R3, R9 to R31, R56 - 1000 ohm
R2, R4, R7, R8 - 330 ohm
R5, R33 to R37 - 2200 ohm
R6 - 7500 ohm
R32 - 100 ohm
R38, R48 to R55 - 10,000 ohm
R39 - 200,000 ohm
R40 to R92 - 270 ohm
S1 to S16, S25 - Spst miniature toggle switch
S17 to S24 - Spdt spring-loaded, momentary-action miniature toggle switch
XTAL - 3-MHz crystal
Misc. - Metal case; power supply (see text); line cord; multiconductor ribbon cable; mounting hardware; sockler; etc.

Note: The following items are available from MITS, Inc., 6328 Linn N.E., Albuquerque, NM 87108 (Tel.: 505-265-7553); partial kit No. 8800PK (includes pc boards and all electronic components (but not case, switches, or power supplay), $298; complete kit No. 8800K (contains all parts, including ready-to-use case, switches, and power supplay), $397; Completely assembled and tested Model 8800A computer (includes 90-day warranty), $498. Prices do not include postage or delivery charge. Both kits include detailed assembly and operating manual. A FREE set of etching and drilling guides, component-placement diagrams and miscellaneous information is available from the kit suplier (send self-addressed 8½"x11" envelope with 40c postage). Check suplier or manufacturer for latest ICI price, available separately.



SOME APPLICATIONS FOR THE ALTAIR 8800 COMPUTER

Listed below is only a small sampling of thousands of possible applications for the computer. The Altair 8800 is so powerful, in fact, that many of these applications can be performed simultaneously, it can be used as a:
  • Programmable scientific calculator
  • Multichannel data acquisition system
  • Automatic control for ham station
  • Sophisticated intrusion alarm system with multiple combination locks
  • Automatic IC tester
  • Digital clock with all time-zone conversion
  • High speed I/O device for large computer
  • Digital signal generator
  • Automated automobile test analyser
  • On-board mobile controller
  • Autopilot for planes, boats, etc.
  • Navigation computer
  • Time-share computer system
  • "Smart" computer terminal
  • Brain for a robot
  • Pattern-recognition device
  • Printed matter-to-Braille converter for the blind
  • Automatic drafting machine
  • Automatic controller for heat, air conditioning, dehumidifying
  • Controller for sound systems
  • Digital tilter
  • Signal analyser

Uwaga! Dokumenty pdf w wersji on-line są niedostępne
ze względu na ograniczoną ilość miejsca na serwerze.

Oryginalny artykuł w formacie pdf:

okładka(398 kB), spis treści (1.87 MB), strona 1 (2.43 MB), strona 2 (2.33 MB)
strona 3 (2.10 MB), strona 4 (2.11 MB), strona 5 (2.40 MB), strona 6 (2.34 MB)


Główny spis treści  ||  Główna strona MITS Altair

Masz uwagi? Napisz.