IBM 1620 - The 1620's Architecture

The 1620's Architecture

It was a variable "word" length decimal (BCD) computer with a memory that could hold anything from 20,000 to 60,000 decimal digits increasing in 20,000 decimal digit increments. (While the 5-digit addresses could have addressed 100,000 decimal digits, no machine larger than 60,000 decimal digits was ever built.)

Memory was accessed two decimal digits at the same time (even-odd digit pair for numeric data or one alphameric character for text data). Each decimal digit was 6 bits, composed of an odd parity Check bit, a Flag bit, and four BCD bits for the value of the digit in the following format:

C F 8 4 2 1

The Flag bit had several uses:

  • In the least significant digit it was set to indicate a negative number (signed magnitude).
  • It was set to mark the most significant digit of a number (wordmark).
  • In the least significant digit of 5-digit addresses it was set for indirect addressing (an option on the 1620 I, standard on the 1620 II). Multi-level indirection could be used (you could even put the machine in an infinite indirect addressing loop).
  • In the middle 3 digits of 5-digit addresses (on the 1620 II) they were set to select one of 7 index registers.

In addition to the valid BCD digit values there were three special digit values (these could NOT be used in calculations):

C F 8 4 2 1 1 0 1 0 - Record Mark (right most end of record) 1 1 0 0 - Numeric Blank (blank for punched card output formatting) 1 1 1 1 - Group Mark (right most end of a group of records for disk I/O)

Instructions were fixed length (12 decimal digits), consisting of a 2-digit "op code", a 5-digit "P Address" (usually the destination address), and a 5-digit "Q Address" (usually the source address or the source immediate value). Some instructions, such as the B (branch) instruction, only used the P Address, and later smart assemblers included a "B7" instruction that generated an 7-digit branch instruction (op code, P address, and one extra digit because the next instruction had to start on an even-numbered digit).

Fixed-point data "words" could be any size from two decimal digits up to all of memory not used for other purposes.

Floating-point data "words" (using the hardware floating point option) could be any size from 4 decimal digits up to 102 decimal digits (2 to 100 digits for the mantissa and 2 digits for the exponent).

The machine had no programmer-accessible registers: all operations were memory to memory (including the index registers of the 1620 II).

Read more about this topic:  IBM 1620

Famous quotes containing the word architecture:

    It seems a fantastic paradox, but it is nevertheless a most important truth, that no architecture can be truly noble which is not imperfect.
    John Ruskin (1819–1900)