Simple As Possible Computer
Simple As Possible Computer
SAP-2 is the next step in the evolution towards modern computers because it includes jump instructions.
These new instruction force the computer to repeat or skip part of a program.
SAP-3 is the third stage in the evolution. It is a 8-bit microcomputer that is upward-compatible with 8085
microprocessor. In this chapter the emphasis is on the SAP-3 instruction set. It also include its programming
model which have a new register the stack pointer or SP, a 16-bit register. This new register controls a portion
of memory known as stack. SAP-3 also have additional CPU register the registers D, E, F, H (for more efficient
data processing) and L (which stores flag bits S, Z and others).
2. SAP-1 Architecture:
The Simple-As-Possible (SAP)-1 computer is a very basic model of a microprocessor explained by
Albert Paul Malvino. The SAP-1 design contains the basic necessities for a functional
Microprocessor. Its primary purpose is to develop a basic understanding of how a microprocessor
works, interacts with memory and other parts of the system like input and output. The instruction set
is very limited and is simple.
SAP (Simple-As-Possible)-1 is the first stage in the evolution toward modern computers.
SAP is Simple-As-Possible Computer. The type of computer is specially designed for the academic
purpose and nothing has to do with the commercial use. The architecture is 8 bits and comprises of
16 X 8 memory i.e. 16 memory location with 8 bits in each location, therefore, need 4 address lines
which either comes from the PC (Program Counter which may be called instruction pointer) during
computer run phase or may come from the 4 address switches during the program phase. All
instructions (5 only) get stored in this memory. It means SAP cannot store program having more than
16 instructions.
SAP can only perform addition and subtraction and no logical operation. These arithmetic operations
are performed by an adder/subtractor unit.
There is one general purpose register (B register) used to hold one operand of the arithmetic operation
while another is kept by the accumulator register of the SAP-1.
In addition, there are 8 LEDs which work as output unit and connected with the 8 bit output register.
All timely moment of data or activities are performed by the controller/sequencer part of the SAP-1.
Program Counter
It counts from 0000 to 1111.
It signals the memory address of next instruction to be fetched and executed.
Inputs and MAR (Memory Address Register)
During a computer run, the address in PC is latched into Memory Address Register (MAR).
The RAM
The program code to be executed and data for SAP-1 computer is stored here.
During a computer run, the RAM receives 4-bit addresses from MAR and a read operation
is performed. Hence, the instruction or data word stored in RAM is placed on the W bus for
use by some other part of the computer.
It is asynchronous RAM, which means that the output data is available as soon as valid
address and control signal are applied.
Instruction Register
IR contains the instruction (composed of OPCODE+ADDRESS) to be executed by SAP1
computer.
Controller-Sequencer
It generates the control signals for each block so that actions occur in desired sequence.
CLK signal is used to synchronize the overall operation of the SAP1 computer.
A 12-bit word comes out of the Controller-Sequencer block. This control word determines
how the registers will react to the next positive CLK edge.
Accumulator
It is a 8-bit buffer register that stores intermediate results during a computer run.
It is always one of the operands of ADD, SUB and OUT instructions.
Adder/Subtractor
It is a 2's complement adder-subtractor.
This module is asynchronous (unclocked), which means that its contents can change as soon
as the input words change.
B-register
It is 8-bit buffer register which is primarily used to hold the other operand (one operand is
always accumulator) of mathematical operations.
Output Register
This registers hold the output of OUT instruction.
Binary Display
It is a row of eight LEDs to show the contents of output register.
Binary display unit is the output device for the SAP-1 microprocessor.
3. What is SAP-2 Computer?
SAP-1 is a computer because it stores a program and data before calculations begin; then it
automatically carries out the program instructions without human intervention. And yet, SAP-1 is a
primitive computing machine. It compares to a modern computer the way a Neanderthal human
would compare to a modern person. Something is missing, something found in every modern
computer.
SAP-2 is the next step in the evolution toward modern computers because it includes jump
instructions. These new instructions force the computer to repeat or skip part of a program. As you
will discover, jump instructions open up a whole new world of computing power.
4. Bidirectional Registers:
To reduce the wiring capacitance of SAP-2, we will run only one set of wires between each register
and the bus. Figure a shows the idea. The input and output pins are shorted; only one group of wires
is connected to the bus.
Does this shorting the input and output pins ever cause trouble? No during a computer run, either
LOAD or ENABLE may be active, but not both at the same time. An active LOAD means that a
binary word flows from the bus to the register input; during a load operation, the output lines are
floating. On the other hand, an active ENABLE means that a binary word flows from the register to
the bus; in this case, the input lines float.
The IC manufacturer can internally connect the input and output pins of a three –state register. This
not only reduces the wiring capacitance; it also reduces the number of I/O pins. For instance, fig. b
has four I/O pins instead of eight.
Figure c is the symbol for a three-state register with internally connected input and output pins. The
double headed arrow reminds us that the path is bidirectional; data can move either way.