IBM 1620 - IBM 1620

IBM 1620 Model I, úroveň H
Stroj na zpracování dat IBM 1620 s plotterem IBM 1627 , vystavený na světové výstavě v Seattlu 1962

IBM 1620 bylo oznámeno IBM dne 21. října 1959, a na trh jako levný „vědecké počítače“. Po celkové produkci asi dvou tisíc strojů byl stažen 19. listopadu 1970. Upravené verze 1620 byly použity jako CPU systémů IBM 1710 a IBM 1720 Industrial Process Control Systems (což z něj činí první digitální počítač považovaný za dostatečně spolehlivý pro řízení procesů továrního zařízení v reálném čase ).

Díky tomu, že byl desítkový s proměnnou délkou slova , na rozdíl od čistého binárního souboru s pevnou délkou slova, byl obzvláště atraktivním prvním počítačem, na kterém se dalo učit-a stovky tisíc studentů mělo první zkušenosti s počítačem na IBM 1620.

Doby cyklu základní paměti byly 20 mikrosekund pro (dříve) Model I , 10 mikrosekund pro Model II (asi tisíckrát pomalejší než typická hlavní paměť počítače v roce 2006). Model II byl představen v roce 1962.

Architektura

Paměť

IBM 1620 byl počítač s desítkovou deskou ( BCD ) s proměnnou délkou „ slova “ s pamětí magnetického jádra, do které se vešlo:

  • 20 000 desetinných míst
  • 40 000 desetinných míst (základní paměť plus úložná jednotka IBM 1623, model 1)
  • 60 000 desetinných míst (základní paměť plus úložná jednotka IBM 1623, model 2).

Výše uvedené bylo v modelu I. Model II nasadil paměťovou jednotku s jádrovou pamětí IBM 1625, jejíž doba paměťového cyklu byla zkrácena na polovinu použitím rychlejších jader ve srovnání s modelem I (interní nebo 1623 paměťová jednotka): na 10 µs (tj. , rychlost cyklu byla zvýšena na 100 kHz).

Zatímco 5místné adresy obou modelů mohly oslovit 100 000 desetinných míst, žádný stroj větší než 60 000 desetinných číslic nebyl nikdy uveden na trh.

Přístup do paměti

Do paměti se přistupovalo současně se dvěma desetinnými číslicemi (pár párů lichých číslic pro číselná data nebo jeden alfamerický znak pro textová data). Každá desetinná číslice byla 6 bitů, složená z lichého paritního C heck bitu, F lag bitu a čtyř BCD bitů pro hodnotu číslice v následujícím formátu:

  C F 8 4 2 1

F lag bit měl několik použití:

  • Nejméně významná číslice byla nastavena tak, aby označovala záporné číslo ( znaménková velikost ).
  • Bylo nastaveno k označení nejvýznamnější číslice čísla ( slovní značka ).
  • V nejméně významné číslici 5místných adres byla nastavena pro nepřímé adresování (možnost u modelu I , standard u modelu 1620 model II). Dalo by se použít víceúrovňové směrování (dokonce byste mohli stroj umístit do nekonečné smyčky nepřímého adresování).
  • Uprostřed byly nastaveny tři číslice 5místných adres (na 1620 II ), aby vybrali jeden ze sedmi indexových registrů .

Kromě platných číselných hodnot BCD existovaly ještě tři speciální číselné hodnoty (tyto NELZE použít při výpočtech):

  C F 8 4 2 1
      1 0 1 0  –  Record Mark (right most end of record, prints as a double dagger symbol, ‡)
      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)

Pokyny měly pevnou délku (12 desetinných míst), skládající se z 2místného „ operačního kódu “, 5místného „P adresy“ (obvykle cílové adresy) a 5místného „Q adresy“ (obvykle zdrojové adresy) nebo okamžitá hodnota zdroje ). Některé instrukce, jako například instrukce B (větev), používaly pouze adresu P a pozdější inteligentní assemblery obsahovaly instrukci „B7“, která generovala 7místnou instrukci větve (operační kód, adresa P a jednu další číslici, protože další instrukce musela začínat na sudém čísle).

Data „slova“ s pevným bodem mohou mít libovolnou velikost od dvou desetinných číslic až po veškerou paměť, která není použita pro jiné účely.

Plovoucí čárkou data „slova“ (pomocí hardware bod plovoucí možnost) může být libovolné velikosti od 4 desetinná místa až do 102 desítkové číslice (2 až 100 číslic pro mantisy a 2 místa pro exponent ).

Kompilátor Fortran II nabízel omezený přístup k této flexibilitě prostřednictvím „karty řízení zdrojového programu“, která předchází zdroji fortran v pevném formátu:

*ffkks

Znak * v prvním sloupci, ff je počet číslic na mantisy s plovoucí desetinnou čárkou čísel (umožňujících 02 až 28), kk počet číslic pro čísla s pevnou řádovou čárkou (umožňující 04 až 10), a to je k nastavení velikosti paměti počítače, aby spustil kód, pokud ne aktuální počítač: 2, 4 nebo 6 pro paměti s 20 000 nebo 40 000 nebo 60 000 číslicemi.

Stroj neměl programátor přístupné registry: všechny operace byly paměti do paměti (včetně indexových registrů v roce 1620 II ).

Viz část Architektonické potíže

Znakové a operační kódy

V následující tabulce jsou uvedeny znaky (a operační kódy) režimu Alphameric.

BCD charakter Psací stroj Tiskárna Páska  Kartu  Jádro MNEMONIC a provoz Definice a poznámky
v Ven Ven v Ven v Ven Dokonce Zvláštní
Prázdný       C C          
neplatný   Ж ❚   1 FADD Floating Add Volitelná speciální funkce.
neplatný   Ж ❚   FSUB Floating Subtract Volitelná speciální funkce.
. . . .  X0 8 21  X0 8 21 12-3-8
12-1-2-8
12-3-8 21 FMUL Floating Multiply Volitelná speciální funkce.
) ) ) )  X0C84  X0C84 12-4-8 12-4-8 4    
neplatný   Ж ❚   4 1 FSL Plovoucí posuv vlevo Volitelná speciální funkce.
neplatný   Ж ❚   42  TFL Transmit Floating Volitelná speciální funkce.
neplatný   Ж ❚   421 Pobočka a přenos BTFL plovoucí Volitelná speciální funkce.
neplatný   Ж ❚    8 Plovoucí řazení FSR vpravo Volitelná speciální funkce.
neplatný   Ж ❚    81 Plovoucí předěl FDIV Volitelná speciální funkce.
+ + + +  X0C  X0C 12 12 1   Pobočka BTAM a adresa přenosu okamžitě (Model II)
neplatný   Ж ❚   1 1 AM Přidat okamžitě  
neplatný   Ж ❚   1 Okamžitě odečtěte SM  
$ $ $ $  X C8 21  X C8 21 11-3-8
11-1-2-8
11-3-8 1 21 Okamžité znásobení MM  
* * * *  X84  X84 11-4-8 11-4-8 1 4 Okamžitě porovnat CM  
neplatný   Ж ❚   1 4 1 Okamžitě vysílaná číslice TDM  
neplatný   Ж ❚   1 42  Okamžité přenosové pole TFM  
neplatný   Ж ❚   1 421 Pobočka BTM a okamžitý přenos  
neplatný   Ж ❚   1  8 Dividenda načtení LDM okamžitá Volitelná speciální funkce (model I).
Standard (model II).
neplatný   Ж ❚   1  81 DM Divide Okamžitě Volitelná speciální funkce (model I).
Standard (model II).
- - - -  X  X 11 11   Pobočka a adresa přenosu BTA (Model II)
/ / / / 0C1 0C1 0-1 0-1 1 A Přidat  
neplatný   Ж ❚   S Odečíst  
, , , , 0C8 21 0C8 21 0-3-8
0-1-2-8
0-3-8 21 M Násobit  
( ( ( ( 0 84 0 84 0-4-8 0-4-8 4 C Porovnat  
neplatný   Ж ❚   4 1 Vysílací číslice TD  
neplatný   Ж ❚   42  Vysílací pole TF  
neplatný   Ж ❚   421 Pobočka a přenos BT  
neplatný   Ж ❚    8 Dividenda zatížení LD Volitelná speciální funkce (model I).
Standard (model II).
neplatný   Ж ❚    81 D Rozdělit Volitelná speciální funkce (model I).
Standard (model II).
neplatný   Ж ❚   21   TRNM Transmit Record No RM (Model II)
neplatný   Ж ❚   21 1 TR Transmit Record  
neplatný   Ж ❚   21 SF Set Flag  
= = = = 8 21 8 21 3-8
1-2-8
3-8 21 21 CF Clear Flag  
@ @ @ @ C84 C84 4-8 4-8 21 4 K Control (I/O zařízení)  
neplatný   Ж ❚   21 4 1 Výpis DN Číselný  
neplatný   Ж ❚   21 42  RN Číst numericky  
neplatný   Ж ❚   21 421 RA Přečtěte si alphameric  
neplatný   Ж ❚   21  8 WN Zápis číselný  
neplatný   Ж ❚   21  81 WA Napište alphameric  
A A A A  X01  X01 12-1 12-1  4 1 NOP Žádná operace  
B B B B  X02   X02  12-2 12-2  4 Větev BB zpět  
C C C C  X0C21  X0C21 12-3
12-1-2
12-3  4 21 Větev BD na číslici  
D D D D  X04  X04 12-4 12-4  4 4 Pobočka BNF bez vlajky  
E E E E  X0C 4 1  X0C 4 1 12-5
12-1-4
12-5  4 4 1 Pobočka BNR No Record Mark  
F F F F  X0C 42   X0C 42  12-6
12-2-4
12-6  4 42  Indikátor pobočky BI  
UMK Odmaskovat
masku MK
Funkce přerušení 1710. Modifikátory v poli Q.
G G G G  X0421  X0421 12-7
12-1-2-4
12-7  4 421 Pobočka BNI Žádný indikátor  
BO
Rozvětvujte BOLD Odvětvujte a načítejte
Funkce přerušení 1710. Modifikátory v poli Q.
H H H H  X0 8  X0 8 12-8 12-8  4  8 H Zastav  
 X0C81  X0C81 12-9
12-1-8
12-9  4  81 Větev B.  
-0 N/A - - N/A  X 11-0 11-0  4 1      
J
-1
J. J. J.  X C1  X C1 11-1 11-1  4 1 1    
K
-2
K K K  X C2   X C2  11-2 11-2  4 1    
L
-3
L L L  X21  X21 11-3
11-1-2
11-3  4 1 21    
M
-4
M M M  X C 4  X C 4 11-4 11-4  4 1 4    
N
-5
N. N. N.  X4 1  X4 1 11-5
11-1-4
11-5  4 1 4 1 Pobočka BNG Bez označení skupiny Volitelná speciální funkce.
O
-6
Ó Ó Ó  X42   X42  11-6
11-2-4
11-6  4 1 42     
P
-7
P P P  X C 421  X C 421 11-7
11-1-2-4
11-7  4 1 421    
Q
-8
Otázka Otázka Otázka  X C8  X C8 11-8 11-8  4 1  8 ČEKEJTE, počkejte na přerušení Funkce přerušení 1710.
R
-9
R. R. R.  X81  X81 11-9
11-1-8
11-9  4 1  81    
neplatný   Ж ❚    42    Pobočka a výběr BS (Model II)
neplatný   Ж ❚    42  1 BX Branch and Modify Register Register Volitelná speciální funkce (model II).
S S S S 0C2  0C2  0-2 0-2  42  Pobočka BXM a úprava rejstříku Okamžitě Volitelná speciální funkce (model II).
T T T T 021 021 0-3
0-1-2
0-3  42  21 Pobočka BCX podmíněně a upravte registr rejstříku Volitelná speciální funkce (model II).
U U U U 0C 4 0C 4 0-4 0-4  42  4 Pobočka BCXM podmíněně a okamžitě upravte registr rejstříku Volitelná speciální funkce (model II).
PROTI PROTI PROTI PROTI 04 1 04 1 0-5
0-1-4
0-5  42  4 1 Index rejstříku BLX a větve Volitelná speciální funkce (model II).
W W W W 042  042  0-6
0-2-4
0-6  42  42  Index poboček a zatížení BLXM Zaregistrujte se okamžitě Volitelná speciální funkce (model II).
X X X X 0C 421 0C 421 0-7
0-1-2-4
0-7  42  421 Index rejstříku poboček a obchodů BSX Volitelná speciální funkce (model II).
Y Y Y Y 0C8 0C8 0-8 0-8  42   8    
Z Z Z Z 0 81 0 81 0-9
0-1-8
0-9  42   81    
0 0 0 0 0
12-0
0  421   MA Přesunout adresu Volitelná speciální funkce (model II).
1 1 1 1 1 1 1 1  421 1 MF Move Flag Volitelná speciální funkce (model I).
Standard (model II).
2 2 2 2 2 2  421 TNS přenáší číselný pás Volitelná speciální funkce (model I).
Standard (model II).
3 3 3 3 C21 C21 3 3  421 21 TNF Transmit Numeric Fill Volitelná speciální funkce (model I).
Standard (model II).
4 4 4 4  4  4 4 4  421 4    
5 5 5 5 C 4 1 C 4 1 5 5  421 4 1    
6 6 6 6 C 42  C 42  6 6  421 42     
7 7 7 7  421  421 7 7  421 421    
8 8 8 8 8 8 8 8  421  8    
9 9 9 9 C81 C81 9 9  421  81    
neplatný   Ж ❚   8 4 SA Select Address
SACO Select Address, Contact Operate
SAOS Select Analog Output Signal
Funkce 1710. Modifikátory v poli Q
neplatný   Ж ❚   8 42  SLTA Select TAS
SLAR Select ADC Register
SLTC Select Real-Time Clock
SLIC Select Input Channel
SLCB Select Contact Block
SLME Select Manual Entry
Funkce 1710. Modifikátory v poli Q
neplatný   Ж ❚   8 F 42  RNIC Numerický vstupní kanál pro čtení Funkce 1710. Modifikátory v poli Q
neplatný   Ж ❚   8 F 421 RAIC Přečtěte si alfanumerický vstupní kanál Funkce 1710. Modifikátory v poli Q
neplatný   Ж ❚   8  8 WNOC Zapisovat číselný výstupní kanál Funkce 1710. Modifikátory v poli Q
neplatný   Ж ❚   8  81 WAOC Zápis alfamerického výstupního kanálu Funkce 1710. Modifikátory v poli Q
neplatný   Ж ❚   81   Pobočka BBT na bitu Volitelná speciální funkce (model II).
neplatný   Ж ❚   81 1 Větev BMK na masce Volitelná speciální funkce (model II).
neplatný   Ж ❚   81 ORF NEBO do pole Volitelná speciální funkce (model II).
neplatný   Ж ❚   81 21 ANDF A do pole Volitelná speciální funkce (model II).
neplatný   Ж ❚   81 4 Osmičkové pole komplementu CPLF Volitelná speciální funkce (model II).
neplatný   Ж ❚   81 4 1 EORF Exkluzivní NEBO do pole Volitelná speciální funkce (model II).
neplatný   Ж ❚   81 42  Převod OTD z osmičky na desetinný Volitelná speciální funkce (model II).
neplatný   Ж ❚   81 421 DTO desetinný převod na osmičkový Volitelná speciální funkce (model II).
RM (Stop) (Stop) 0 8 2  E
(Zastavit)
0-2-8 0-2-8  8 2    Záznam Mark
GM IBM 1401 Group Mark. GIF (Stop) (Stop) 0 8421 E
(Zastavit)
0-7-8 1-2-4-8  8421   Skupinová značka

V následující tabulce jsou uvedeny znaky numerického režimu.

Charakter Psací stroj Tiskárna Páska  Kartu  Jádro Definice a poznámky
v Ven Ven Skládka v Ven v Ven
Prázdný   0 0 0 C   0  
0 0 0 0 0 0
12-0
12
0  
1 1 1 1 1 1 1 1
12-1
1  1  
2 2 2 2 2 2
12-1
2  
3 3 3 3 3 C21 C21 3
12-3
1-2
12-1-2
3 C21  
4 4 4 4 4  4  4 4
12-4
4 4  
5 5 5 5 5 C 4 1 C 4 1 5
12-5
1-4
12-1-4
5 C4 1  
6 6 6 6 6 C 42  C 42  6
12-6
2-4
12-2-4
6 C42   
7 7 7 7 7  421  421 7
12-7
1-2-4
12-1-2-4
7 421  
8 8 8 8 8 8 8 8
12-8
8 8  
9 9 9 9 9 C81 C81 9
12-9
1-8
12-1-8
9 C 81  
-0 0 0 - -  X
 X0C
 X 11-0 11-0  F  
-1 1 1 J. J.  X C1  X C1 11-1 11-1 CF1  
-2 2 2 K K  X C2   X C2  11-2 11-2 CF2   
-3 3 3 L L  X21  X21 11-3
11-1-2
11-3  F21  
-4 4 4 M M  X C 4  X C 4 11-4 11-4 CF 4  
-5 5 5 N. N.  X4 1  X4 1 11-5
11-1-4
11-5  F 4 1  
-6 6 6 Ó Ó  X42   X42  11-6
11-2-4
11-6  F 42   
-7 7 7 P P  X C 421  X C 421 11-7
11-1-2-4
11-7 CF 421  
-8 8 8 Otázka Otázka  X C8  X C8 11-8 11-8 CF8  
-9 9 9 R. R.  X81  X81 11-9
11-1-8
11-9  F81  
RM (Stop, WN)

(DN)
(Stop) 0 8 2  E
(Stop, WN)
0 8 2 
(DN)
0-2-8 0-2-8 C 8 2  Nahrajte značku
na pásku a WN místo toho udeří EOL!
vlajka RM (Stop, WN)

(DN)
(Stop) W  X8 2  E
(Stop, WN)
 X8 2 
(DN)
11-2-8
12-2-8
11-2-8  F8 2  Označená značka záznamu
Na pásku WN místo toho udeří EOL!
EOL (Stop, WN)

(DN)
(Stop) E E
(WN)
0 8 2 
(DN)
0-2-8 0-2-8 C 8 2  Pouze páska na konci řádku .
Poznámka: V paměti je značka záznamu!
GM IBM 1401 Group Mark. GIF (Stop, WN) (DN)
IBM 1401 Group Mark. GIF
(Stop) G 0 8421 0 8421 0-7-8 0-7-8 C 8421 Skupinová značka
vlajka GM IBM 1401 Group Mark. GIF (Stop, WN) (DN)
IBM 1401 Group Mark. GIF
(Stop) X  X8421  X8421 12-7-8 12-7-8  F8421 Označená značka skupiny
Pozn @ @ @ C84 C84 4-8 C 84 Numerický prázdný
vlajka Pozn @ @ *  X84  X84 11-4-8  F84 Označené číselné prázdné místo

Neplatný znak

Model jsem použil cyrilice Ж (výraznější zh) na psacím stroji jako obecný neplatný znak s správné parity (neplatné parita je označen s Overstrike „-“). V některých 1620 instalacích se tomu říkalo SMERSH, jak se používalo v románech Jamese Bonda, které se staly populární na konci 60. let. Model II používá novou postavu ❚ (nazvaný „polštář“) jako obecný účel neplatný znak s správné parity.

Architektonické potíže

Ačkoli architektura IBM 1620 byla ve vědecké a technické komunitě velmi populární, počítačový vědec Edsger Dijkstra poukázal na několik nedostatků v jejím návrhu v EWD37, „Přehled systému zpracování dat IBM 1620“. Mezi ně patří to, že instrukce Branch and Transmit stroje spolu s Branch Back umožňují celkem jednu úroveň vnořeného volání podprogramu, což nutí programátora jakéhokoli kódu s více než jednou úrovní rozhodnout, kde bude použití této „funkce“ nejvíce efektivní. Ukázal také, jak podpora čtení papírové pásky na stroji neumí správně číst pásky obsahující záznamové značky, protože záznamové značky se používají k ukončení znaků čtených v úložišti. Jedním z důsledků toho je, že 1620 nemůže duplikovat pásku se záznamovými značkami přímočaře: když dojde na značku záznamu, instrukce děrování místo toho udeří znak EOL a skončí. Nebyl to však ochromující problém:

  • data lze zkopírovat na konec paměti a doslovně děrovat instrukcí DN místo WN
  • kazety byly obvykle duplikovány offline .

Většina 1620 instalací používala pohodlnější vstup/výstup děrných karet než papírovou pásku.

Nástupce 1620, IBM 1130 , byl založen na úplně jiné, 16bitové binární architektuře. (Linka 1130 si zachovala jednu periferii 1620, bubnový plotter IBM 1627. )

Software

Karta IBM 1620 SPS

IBM dodala pro 1620 následující software:

  • 1620 Symbolic Programming System (SPS) ( montážní jazyk )
  • FORTRAN
  • FORTRAN II - požadováno 40 000 číslic nebo více paměti

  • GOTRAN - zjednodušená, interpretovaná verze FORTRAN pro provoz „načíst a jít“
  • Monitor I a Monitor II - diskové operační systémy .

Monitory poskytovaly diskové verze 1620 SPS IId, FORTRAN IId a také DUP (Disk Utility Program). Oba systémy Monitor vyžadovaly 20 000 nebo více číslic paměti a jednu nebo více 1311 diskových jednotek .

Na bitsavers existuje sbírka příruček souvisejících s IBM 1620 ve formátu PDF.

1620 bez desítkové aritmetiky

Od modelu, který jsem použil pro sčítání/odčítání v paměti vyhledávacích tabulek, bylo možné provést omezenou základnu (5 až 9) aritmetiky bez znaménka změnou obsahu těchto tabulek, ale s tím, že hardware obsahoval desaterní komplementář pro odčítání (a sčítání) opačně podepsaných čísel).

Plně podepsané sčítání a odčítání v základech 2 až 4 vyžadovalo podrobné porozumění hardwaru, aby se vytvořila „skládaná“ sčítací tabulka, která by předstírala logiku komplementu a přenosu.

Také tabulku sčítání by bylo nutné znovu načíst pro normální provoz základny 10 pokaždé, když byly v programu požadovány výpočty adres, a poté znovu načteny pro alternativní základnu. Díky tomu byl „trik“ poněkud méně užitečný pro jakoukoli praktickou aplikaci.

Protože model II měl sčítání a odčítání plně implementované v hardwaru, změna tabulky v paměti nemohla být použita jako „trik“ ke změně aritmetických základen. K dispozici však byla volitelná speciální funkce v hardwaru pro osmičkový vstup/výstup, logické operace a základní převod na/z desítkové soustavy.

Ačkoli nebyly podporovány jiné základny než 8 a 10, byl model II velmi praktický pro aplikace, které potřebovaly manipulovat s daty formátovanými v osmičkách jinými počítači (např. IBM 7090).

Model I.

Výkres ukazující vnitřní rozložení „bran“

Původní byl model IBM 1620 Model I (běžně nazývaný „1620“ od roku 1959 do zavedení modelu II v roce 1962 ). Byl vyroben co nejlevněji, aby udržel nízkou cenu .

  • Postrádal konvenční ALU hardware: aritmetika byla prováděna vyhledáváním v paměťových tabulkách . Sčítání a odčítání používalo 100místnou tabulku (na adrese 00300..00399). Násobení použilo 200místnou tabulku (na adrese 00100..00299). Základní stroj používal pro dělení softwarové podprogramy, ačkoli mohl být nainstalován volitelný dělící hardware, který používal algoritmus opakovaného odčítání. Aritmetické pokyny s pohyblivou řádovou čárkou byly k dispozici (pokud byla nainstalována možnost dělení).
  • Prvních 20 000 desetinných číslic paměti s magnetickým jádrem bylo interních pro samotný CPU (což snížilo požadavky na základní prostor základního systému). Rozšíření na 40 000 nebo 60 000 desetinných míst vyžadovalo přidání paměťové jednotky IBM 1623. Doba cyklu paměti byla 20  μs (to znamená, že rychlost paměti byla 50  kHz = 1/20 a MHz). Operace MARS (Memory Address Register Register) operace čtení, vymazání nebo zápisu základní paměti trvala 2 μs a každé operaci zápisu automaticky (ale ne nutně bezprostředně) předcházela operace čtení nebo vymazání stejného „registru“ během 20 μs paměťový cyklus.
  • Taktovací frekvence centrálního procesoru byla 1  MHz , což bylo děleno 20 čítačem prstenů s 10 pozicemi, který zajišťoval časování systému a řídicí signály. Načtení instrukcí trvalo osm paměťových cyklů (160 μs) a spuštění různého počtu paměťových cyklů. Nepřímé adresování přidalo čtyři paměťové cykly (80 μs) pro každou úroveň přesměrování.
  • Vážil asi 1210 liber (550 kg).

Model II

Ve srovnání s původním modelem I byl IBM 1620 Model II (běžně nazývaný jednoduše Model II) výrazně vylepšenou implementací . Model II byl představen v roce 1962.

  • Měl základní ALU hardware pro sčítání a odčítání, ale násobení stále probíhalo pomocí vyhledávání v tabulce v paměti pomocí 200místné tabulky (na adrese 00100..00299). Paměťové adresy na adrese 00300..00399 byly uvolněny výměnou přídavné tabulky za hardware, což mělo za následek uložení dvou volitelných „pásem“ sedmi 5místných indexových registrů .
  • Spíše než jako dostupná možnost, jako u modelu I, byl zabudován dělící hardware využívající algoritmus opakovaného odčítání. Aritmetika s pohyblivou řádovou čárkou byla k dispozici, stejně jako osmičkový vstup/výstup, logické operace a převod základny na/z desítkové pokyny.
  • Celá základní paměť byla v paměťové jednotce IBM 1625. Doba cyklu paměti byla snížena na polovinu ve srovnání s modelem I (interní nebo 1623 paměťová jednotka) na 10  µs (tj. Rychlost cyklu byla zvýšena na 100  kHz ) použitím rychlejších jader. Operace čtení, vymazání nebo zápisu paměti MARS (Memory Address Register Storage) trvala 1,5 µs a každé operaci zápisu automaticky (ale ne nutně bezprostředně) předcházela operace čtení nebo vymazání stejného „registru“ během Paměťový cyklus 10 µs.
  • Taktovací frekvence procesoru byla také zdvojnásobena na 2  MHz , což bylo stále děleno 20 desetipólovým prstencovým čítačem, který poskytoval časovací/řídicí signály systému. Mechanismus načítání/spouštění byl zcela přepracován, optimalizoval načasování a umožnil částečné načtení, když pole P nebo Q nebyla potřeba. Načtení instrukcí trvalo 1, 4 nebo 6 paměťových cyklů (10 µs, 40 µs nebo 60 µs) a provedení proměnného počtu paměťových cyklů. Nepřímé adresování přidalo tři paměťové cykly (30 µs) pro každou úroveň přesměrování . Indexované adresování přidalo pět paměťových cyklů (50 µs) pro každou úroveň indexování. Nepřímé a indexované adresování lze kombinovat na jakékoli úrovni přesměrování nebo indexování.

Konzoly modelů I a II

Zatímco spodní konzola pro systémy Model 1 a Model 2 IBM 1620 měla stejné žárovky a spínače, horní konzola dvojice se částečně lišila.

Horní konzola

Model I (horní konzola) #Lampy Model II (horní konzola) #Lampy
Cyklus instrukcí a provedení 60 Ovládací brány 60
Ovládací brány 35 Vstup výstup 35
Vstup výstup 15 Cyklus Inst & Exec 15 -

Vyvážení horní konzoly bylo u obou modelů stejné:

  • Provozní registr - 25 lamp
  • Register vyrovnávací paměti - 30 lamp
  • Register adres paměti - 25 kontrolek
  • Volič zobrazení registru adresy paměti - otočný přepínač, 12 poloh

Spodní konzola

  • Nouzové vypnutí - Vytáhněte spínač
  • Zkontrolujte stavové kontrolky/spínače - 15 světel a 5 přepínacích spínačů
  • Programové přepínače - 4 přepínače
  • Osvětlení/spínače ovládacího panelu konzoly - 13 světel, 1 vypínač a 12 tlačítek

Konzolový psací stroj

Model I konzola psací stroj byl upravený model B1 , propojen souborem relé, a to napsaný na pouhých 10 znaků za sekundu.

Existovala sada pokynů, které psaly na psací stroj, nebo z něj četly. Obecné instrukce RN (číst numerické) a WN (zapisovat numerické) měly mnemotechnické pomůcky pro montážní jazyk, které dodávaly kód „zařízení“ do druhého pole adresy, a řídicí kód do číslice nižšího řádu druhého adresního pole.

  • WNTY : W rite N umeric TY pewriter: každé paměťové místo obsahovalo 6bitový znak v rozsahu 000000 až 001001; s touto instrukcí bylo každé paměťové místo vykresleno jako jeden ze znaků „0“ až „9“.
  • WATY : W rite A lfanumerický TY pewriter: každý pár paměťových míst obsahoval dvě 6bitové číslice, které se na psacím stroji objevily jako jeden ze 64 znaků, které se mohly objevit.
  • RNTY : R EAD N umeric TY pewriter: čtení číselnou hodnotu z psacího stroje klávesnice
  • Raty : R ead lphanumeric TY pewriter: přečíst znak z klávesnice a obchodu jako 2-místný alfanumerický znak
  • TBTY : T a B TY pewriter. Záložky musely být nastaveny ručně, takže tato instrukce byla používána jen zřídka.
  • RCTY : R eturn C arriage TY pewriter: Donutil psací stroj dělat to, čemu nyní říkáme sekvence CR/LF.

Ke zjednodušení vstupu a výstupu existovaly dva pokyny:

  • TNS : T ransmit N umeric S trip: Převede dvouciferné alfanumerické vyjádření „0“ na „9“ na jednociferné zobrazení
  • TNF : T ransmit N umeric F ill: Převede jednocifernou reprezentaci číslic na sekvenci na dvoucifernou alfanumerickou sekvenci, která představovala „0“ až „9“

Model II používá modifikovaný Selectric psací stroj, který by mohl zadat 15,5 Pa.s - zvýšení 55%.

Periferní zařízení

Bubnový plotter IBM 1627

Dostupné periferie byly:

  • IBM 1621  - čtečka papírových pásek
  • IBM 1622  - Čtečka karet/děrovačka
  • IBM 1624  - Děrovačka papírové pásky (seděla uvnitř 1621 na poličce)
  • IBM 1626  - řadič plotru
  • IBM 1627  - plotter
  • IBM 1311  - Disková jednotka: Hlavní jednotka Model 3 ovládající až 3 podřízené jednotky Model 2.
  • IBM 1443  - tiskárna , lišta létajícího typu
  • IBM 1405  - Disk Drive dostupný jako RPQ (vyžádejte si cenovou nabídku)

Standardním „výstupním“ mechanismem programu bylo děrování karet, což bylo rychlejší než pomocí psacího stroje. Tyto děrné štítky byly poté vedeny přes mechanickou kalkulačku IBM 407, kterou bylo možné naprogramovat tak, aby tiskla dvě karty, takže bylo možné použít další tiskové sloupce dostupné na 407. Veškerý výstup byl synchronní a procesor se pozastavil, zatímco I/O zařízení produkoval výstup, takže výstup z psacího stroje mohl zcela dominovat době běhu programu.

Možnost rychlejšího výstupu, tiskárna IBM 1443, byla představena 6. května 1963 a její kapacita 150–600 řádků za minutu byla k dispozici pro oba modely 1620.

Mohlo by to tisknout 120 nebo 144 sloupců. Šířka znaku byla pevná, změnila se tedy velikost papíru; tiskárna vytiskla 10 znaků na palec, takže tiskárna mohla vytisknout maximálně 12 palců nebo 14,4 palců textu. Tiskárna měla navíc vyrovnávací paměť, takže se zkrátilo zpoždění I/O pro procesor. Pokud by se řádek nedokončil, tisková instrukce by se zablokovala.

Provozní postupy

„Operační systém“ pro počítač představoval lidský operátor, který používal ovládací prvky na počítačové konzole , která se skládala z předního panelu a psacího stroje, k načítání programů z dostupných hromadných paměťových médií, jako jsou balíčky děrných karet nebo role papíru páska, která byla uložena ve skříních poblíž. Později umožnilo zařízení pro ukládání disků modelu 1311 připojené k počítači omezení načítání a přenášení balíčků karet nebo rolí papírových pásek a mohl být načten jednoduchý operační systém „Monitor“, který by pomohl při výběru toho, co se má z disku načíst.

Standardním úkolem bylo vymazat paměť počítače od zbytků předchozího uživatele - jako magnetická jádra, si paměť zachovala svůj poslední stav, i když bylo vypnuto napájení. Toho bylo dosaženo použitím zařízení konzoly k načtení jednoduchého počítačového programu zadáním jeho strojového kódu do psacího stroje konzoly, spuštěním a zastavením. To nebylo náročné, protože byla zapotřebí pouze jedna instrukce, například 160001000000, načtená na adrese nula a následující. To znamenalo okamžité odeslání pole (16: dvoumístné operační kódy) na adresu 00010 okamžité konstantní pole s hodnotou 00000 (pětimístná pole operandů, druhé z adresy 11 zpět na 7), snížení zdrojové a cílové adresy dokud nebyla zkopírována číslice s „vlajkou“. To byl normální způsob strojového kódu pro kopírování konstanty až do pěti číslic. Řetězec číslic byl adresován na konci nižšího řádu a rozšířen přes nižší adresy, dokud jeho konec neoznačila číslice s příznakem. Ale pro tuto instrukci by nikdy nebyl nalezen žádný příznak, protože zdrojové číslice byly krátce předtím přepsány číslicemi bez vlajky. Operace by tedy válcovala paměť (dokonce i přepisovala) a zaplňovala ji všemi nulami, dokud by operátora neunavilo sledovat rolování kontrolek a nestiskl tlačítko Instant Stop - Single Cycle Execute . Vymazání každého 20 000místného modulu paměti trvalo necelou jednu sekundu. Na 1620 II tato instrukce NEBUDE fungovat (kvůli určitým optimalizacím v implementaci). Místo toho bylo na konzole tlačítko s názvem Upravit, které po stisknutí společně s tlačítkem Zkontrolovat reset , když byl počítač v ručním režimu, nastaví počítač do režimu, který by vymazal veškerou paměť za desetinu sekundy bez ohledu na to, jak máte spoustu paměti; když jste stiskli Start . Také se automaticky zastavil, když byla paměť vymazána, místo aby to operátor vyžadoval.

Kromě psaní strojového kódu na konzolu lze program načíst buď pomocí čtečky papírových pásek, čtečky karet nebo jakékoli diskové jednotky. Načítání z pásky nebo disku vyžaduje nejprve zadání rutiny „ bootstrap “ do psacího stroje konzoly.

Čtečka karet to usnadnila, protože měla speciální tlačítko Načíst , které znamenalo, že první karta měla být načtena do paměti počítače (počínaje adresou 00000) a spuštěna (na rozdíl od pouhého spuštění čtečky karet, která poté čeká na příkazy od počítač ke čtení karet) - jedná se o proces „bootstrap“, který do počítače dostane dostatek kódu, který přečte zbytek kódu (ze čtečky karet, disku nebo ...), což představuje zavaděč, který bude načtěte a spusťte požadovaný program.

Programy byly připraveny s předstihem, offline, na papíře nebo děrných kartách. Ale obvykle programátorům bylo povoleno spouštět programy osobně, osobně, místo aby je předkládali operátorům, jak tomu bylo v té době u sálových počítačů. A konzolový psací stroj umožňoval zadávat data a získávat výstup interaktivním způsobem, místo aby jen získal normální tištěný výstup ze slepého dávkového běhu na předem zabalené sadě dat. Na konzole byly také čtyři programové přepínače, jejichž stav spuštěný program mohl testovat, a tak jeho chování řídit jeho uživatel. Operátor počítače mohl také zastavit běžící program (nebo může dojít k záměrně naprogramovanému zastavení) a poté prozkoumat nebo upravit obsah paměti: vzhledem k tomu, že je to založeno na desítkové soustavě, bylo to docela snadné; i čísla s plovoucí desetinnou čárkou byla čitelná na první pohled. Popravu pak bylo možné obnovit z libovolného požadovaného bodu. Kromě ladění je vědecké programování obvykle průzkumné, na rozdíl od komerčního zpracování dat, kde se stejná práce opakuje v pravidelném plánu.

Řídicí panel

Přepínač výběru zobrazení registru adresy paměti IBM 1620

Nejdůležitějšími položkami na konzole 1620 byla dvojice tlačítek označených Insert & Release a konzolový psací stroj.

  • Vložit - Stisknutím této klávesy na počítači v ručním režimu vynulujete počitadlo programů (v základní paměti MARS) na nulu, přepnete počítač do automatického a vkládacího režimu a simulujete spuštění čtecího čísla z psacího stroje na adresu nula (odemkne se klávesnice psacího stroje, přesunul psací stroj do numerického režimu). Poznámka: na rozdíl od skutečného čtení čísel z psacího stroje by režim vkládání vynutil vydání po zadání 100 číslic, aby se zabránilo přepsání aritmetických tabulek.
  • Uvolnit - Stisknutím této klávesy při čtení ze psacího stroje se čtení ukončí, počítač se přepne do manuálního režimu a zamkne se klávesnice psacího stroje.

Psací stroj se používá pro vstup/výstup operátora, a to jak jako hlavní ovládací konzola počítače, tak pro programově řízený vstup/výstup. Pozdější modely psacího stroje měly speciální klávesu označenou RS, která kombinovala funkce tlačítek Release & Start na konzole (to by bylo považováno za ekvivalent klávesy Enter na moderní klávesnici). Poznámka: několik kláves na psacím stroji nevygenerovalo vstupní znaky, mezi ně patří Tab a Return (v alfanumerických a numerických znakových sadách BCD z roku 1620 chyběly pro tyto klíče znakové kódy).

Dalšími nejdůležitějšími položkami na konzole byla tlačítka s označením Start , Stop-SIE a Instant Stop-SCE .

  • Start - Stisknutím této klávesy s počítačem v ručním režimu přepnete počítač do automatického režimu (což způsobí, že se počítač začne vykonávat na adrese v čítači programů).
  • Stop-SIE-Stisknutím této klávesy s počítačem v automatickém režimu přepnete počítač do manuálního režimu, když se aktuálně provádějící instrukce dokončí. Stisknutím této klávesy s počítačem v ručním režimu přepnete počítač do automatického režimu pro jednu instrukci.
  • Instant Stop-SCE-Stisknutím této klávesy s počítačem v automatickém režimu přepnete počítač do automatického/manuálního režimu na konci aktuálního cyklu paměti. Stisknutím této klávesy s počítačem v ručním nebo automatickém/manuálním režimu přepnete počítač do automatického/manuálního režimu a provedete jeden paměťový cyklus.

Pro ladění programu byla tlačítka označená Uložit a zobrazit MAR .

  • Uložit - Stisknutím této klávesy s počítačem v ručním režimu byl čítač programu uložen do jiného registru v základní paměti MARS a aktivován režim Uložit .

Když byla instrukce Branch Back spuštěna v režimu Save , zkopírovala uloženou hodnotu zpět do čítače programu (namísto kopírování registru zpáteční adresy jako obvykle) a deaktivovala režim Save .

To bylo použito během ladění k zapamatování, kde byl program zastaven, aby bylo možné jej obnovit po dokončení pokynů pro ladění, které operátor zadal na psacím stroji. Poznámka: registr MARS použitý k uložení čítače programu byl také použit instrukcí Multiply , takže tato instrukce a režim Save byly nekompatibilní! Při ladění kódu však nebylo nutné používat násobení, takže to nebylo považováno za problém.

  • Zobrazit MAR - Stisknutím této klávesy na počítači v ručním režimu se na kontrolkách konzoly zobrazí vybraný registr MARS a obsah paměti na dané adrese.
Postup „Breakpoint“ Poznámky
Stiskněte Stop-SIE Na konci aktuální instrukce zastavte počítač.
Stiskněte Uložit Uložte adresu a pokračujte v provádění na.
Stiskněte Vložit Odemkne klávesnici psacího stroje a přepne do numerického režimu.
Zadejte 35xxxxx0010036xxxxx0010042
 
xxxxx je adresa, na které chcete nastavit zarážku.
Tisková zpráva Zamkne klávesnici psacího stroje.
Stiskněte Start Zahájit popravu. Nechte vytisknout 12místný pokyn.
Tisková zpráva Zastaví číselný výpis.
Stiskněte Start Zahájit popravu.
Typ 48 Nahraďte operační kód instrukce, na které se chcete „rozbít“, za kód Halt.
Tisková zpráva Zamkne klávesnici psacího stroje.
Stiskněte Start Pokračujte v provádění. Počkejte, až se počítač zastaví na „zarážce“.
Stiskněte Vložit Odemkne klávesnici psacího stroje a přepne do numerického režimu.
Zadejte 36xxxxx0010049xxxxx
 
xxxxx je adresa, na které jste dříve nastavili zarážku, nyní ji vymažete.
Tisková zpráva Zamkne klávesnici psacího stroje.
Stiskněte Start Zahájit popravu.
Napište oo oo je 2místný operační kód původní 12místné instrukce, která byla dříve vytištěna.
Tisková zpráva Zamkne klávesnici psacího stroje.
Stiskněte Stop-SIE Stroj je nyní připraven pokračovat v provádění z umístění (nyní vymazaného) "zarážky". Než budete pokračovat, můžete nyní provést všechny požadované akce ladění.

Veškerá hlavní paměť by mohla být vymazána z konzoly zadáním a provedením instrukce přenosu z adresy na adresu +1, to by přepsalo jakoukoli slovní značku, která by normálně zastavila instrukci přenosu, a zabalila by se na konci paměti. Po chvíli stisknutím Stop zastavíte instrukci přenosu a paměť bude vymazána.

Čtečka/děrovačka papírových pásek IBM 1621/1624

IBM 1621 Paper Tape Reader mohl číst maximálně 150 znaků za sekundu; IBM 1624 Tape Paper Punch mohl výstup maximálně 15 znaků / sekundu.

Obě jednotky:

  • zvládl osmikanálovou papírovou pásku
  • provedl samokontrolu, aby byla zajištěna přesnost
  • pojaly číselné i abecední informace v jednoznakovém kódování.

1621 Tape Reader a 1624 Tape Punch zahrnuty ovládací prvky pro:

  • Vypínač - Pokud je „zapnuto“, čtečka jednotek se zapne, když je zapnutý procesor.
  • Přepínač Reel-Strip-Tento přepínač určuje, zda se použijí cívky nebo proužky papírové pásky.
  • Klíč napájení cívky - přivádí energii na napájecí a odběrné cívky, aby umístil pásku pro čtení a uvedl čtečku do připraveného stavu.
  • Klíč nespracování házení-přivádí pásku, dokud není čtečka prázdná a nevyvede čtečku z připraveného stavu.
Procedura bootstrapu Poznámky
Stiskněte Vložit Odemkne klávesnici psacího stroje a přepne do numerického režimu.
Zadejte 36xxxxx0030049yyyyyy
 
xxxxx je adresa, na kterou se má páska načíst.
yyyyy je adresa pro zahájení provádění.
Tisková zpráva Zamkne klávesnici psacího stroje.
Stiskněte Start Zahájit popravu.

Čtečka/úderník karet IBM 1622

IBM 1622 Čtečka / punch by mohla:

  • přečtěte maximálně 250 karet za minutu
  • vyražte maximálně 125 karet za minutu.

Ovládací prvky 1622 byly rozděleny do tří skupin: 3 kolébkové přepínače pro ovládání úderu, 6 tlačítek a 2 kolébkové přepínače pro ovládání čtečky.

Přepínače Punch Rocker:

  • Punch Off/Punch On - Tato kolébka vypínala nebo zapínala děrovací mechanismus.
  • Select No-Stop/Select Stop-Tato kolébka vybraná při chybně duněných kartách (uložených v zásobníku pro výběr chyb při děrování místo normálního zásobníku pro děrování) nechá děrování pokračovat nebo způsobí kontrolní zastavení.
  • Neprovozní házení-tato kolébka s prázdnou násypkou, "vyběhlé" zbývající karty z děrovacího mechanismu.

Tlačítka:

  • Zahájit úder - Stisknutím této klávesy při nečinnosti punče a zapnutém spustíte úder. Počítač nyní mohl vysekávat karty.
  • Zastavit úder - Stisknutím této klávesy s aktivním punčem se punč zastavil.
  • Zkontrolovat reset - Stisknutím tohoto tlačítka resetujete všechny podmínky „kontroly chyb“ ve čtečce a děrovačce.
  • Načíst - stisknutím této klávesy při nečinnosti a zapnuté čtečce a počítači v ručním režimu se čtečka spustí, resetuje čítač programu (v základní paměti MARS) na nulu, načte jednu kartu do vyrovnávací paměti čtečky a zkontroluje, zda karta neobsahuje chyby, a simuloval spuštění čtecího čísla z čtečky karet na adresu nula (načtení 80 znaků vyrovnávací paměti čtečky na adresy paměti 00000 až 00079), poté přepnul počítač do automatického režimu (zahájení provádění na adrese v čítači programu).
  • Zastavit čtečku - Stisknutím této klávesy při aktivní čtečce se čtečka zastavila.
  • Spustit čtečku - Stisknutím této klávesy při nečinnosti a zapnutí čtečky spustíte čtečku a načtete jednu kartu do vyrovnávací paměti čtečky a zkontrolujete, zda karta neobsahuje chyby. Počítač nyní uměl číst karty.

Kolébkové spínače čtečky:

  • Neprovozní házení-tento kolébkový stroj s prázdnou násypkou na čtení, „vyběhlé“ zbývající karty ze čtecího mechanismu.
  • Reader Off/Reader On - Tento kolébkový vypínač vypnul nebo zapnul čtecí mechanismus.
Procedura bootstrapu Poznámky
Stiskněte Načíst

Diskové jednotky

Diskové jednotky IBM 1311 - Model 2 (Slave) a Model 3 (Master), připojené k IBM 1620 II

Ovládání diskové jednotky 1311 .

  • Kontrolka modulu - Tato kontrolka ukazuje číslo disku. Když se rozsvítí, disk je připraven k přístupu.
  • Přepnout klíčový přepínač Porovnat a deaktivovat-Když je tento přepínač (pouze Master) v poloze ON a je stisknuto tlačítko pro zápis adresy, může být proveden zápis celé stopy bez porovnávání adres. Používá se k formátování diskových balíčků.
  • Vyberte kontrolku zámku - Když tato kontrolka (pouze hlavní) rozsvítí jeden nebo více disků nefunguje správně. Nelze provést přístup na disk.
  • Tlačítko/kontrolka zápisu adresy - Toto (pouze hlavní) tlačítko ovládá zápis sektorových adres. Stisknutím tohoto tlačítka tuto možnost zapnete a vypnete/zapnete její světlo.
  • Přepínač Enable-Disable-Tento přepínač povoluje nebo zakazuje přístup k jednotce. Pokud je tento přepínač deaktivován na Master, všechny disky jsou deaktivovány bez ohledu na stav jejich vlastních přepínačů. Také ovládá měřič času využití disku.
  • Tlačítko Start Stop - Stisknutím této klávesy spustíte nebo zastavíte motor disku. K otevření víka a výměně diskových sad je nutné zastavit motor.
Procedura bootstrapu Poznámky
Stiskněte Vložit Odemkne klávesnici psacího stroje a přepne do numerického režimu.
Zadejte 3400032007013600032007024902402
x
y1963611300102
x - Určuje zdroj kontrolních karet monitoru: 1 = psací stroj, 3 = papírová páska, 5 = karty
y - určuje diskovou jednotku, na které se nachází monitor: 1, 3, 5, 7
02402 je adresa vstupního bodu programu Monitor .
Tisková zpráva Zamkne klávesnici psacího stroje.
Stiskněte Start Zahájit popravu.
Restartujte postup Poznámky
Stiskněte Vložit Odemkne klávesnici psacího stroje a přepne do numerického režimu.
Zadejte 490225 FLG 6
 
02256̅ je adresa umístění obsahující adresu bodu restartu programu Monitor.
Poznámka: tento postup předpokládá, že je monitor již načten v paměti
Tisková zpráva Zamkne klávesnici psacího stroje.
Stiskněte Start Zahájit popravu.

Všeobecné

Kompilátor FORTRAN II a assembler SPS byly moderními standardy poněkud těžkopádné, ale s opakováním se postup brzy stal automatickým a už jste nepřemýšleli o zahrnutých detailech.

Postup kompilace FORTRAN II Poznámky
Přepínače programu nastavte takto:
  1. VYPNUTO (žádný seznam zdrojů)
  2. VYPNUTO (bez dávkové kompilace)
  3. VYPNUTO (zdroj se zadává z karet)
  4. VYPNUTO (Používá se pouze v případě, že je zapnuto 3 )
Pass I options
Nastavte přepínač Kontrola přetečení na Program a všechny ostatní na Zastavit
Stiskněte Reset
Vložte prázdné karty (lícovou stranou dolů nejprve 12 okrajů) do zásobníku Punch a poté stiskněte Punch Start
Vložte Pass I kompilátoru (lícovou stranou dolů nejprve 9 hran) do zásobníku pro čtení a poté stiskněte Načíst Počkejte, až se Pass I načte a vytiskne na psacím stroji „ZADEJTE ZDROJOVÝ PROGRAM, STISKNĚTE START“
Odeberte Pass I kompilátoru ze zásobníku pro čtení
Vložte zdrojový balíček programu (lícem dolů nejprve 9-hranou) do zásobníku pro čtení a poté stiskněte Start Počkejte, až se dokončí průchod I, a vytiskněte na psacím stroji „ZAPNĚTE SW 1 PRO SYMBOLOVOU TABULKU, STISKNĚTE START“
Otočte programu Přepínač 1 OFF a stiskněte tlačítko Spustit Je-li seznam symbol tabulka požadovaná pro ladění, otočit Program spínač 1 ON místo. Seznam tabulek symbolů bude vytištěn na psacím stroji.
Počkejte, až se průkaz I vytiskne na psacím stroji „KONEC PASU 1“
Přepínače programu nastavte takto:
  1. VYPNUTO (žádné číslo výpisu/výpis adresy)
  2. VYPNUTO (nepoužito)
  3. VYPNUTO (žádná stopa pro příkazy IF)
  4. VYPNUTO (žádné stopy pro aritmetické příkazy)
Možnosti Pass II
Nastavte přepínač Kontrola přetečení na Program a všechny ostatní na Zastavit
Stiskněte Reset
Vložte prázdné karty (lícovou stranou dolů nejprve 12 okrajů) do zásobníku Punch a poté stiskněte Punch Start
Vložte Pass II kompilátoru (lícovou stranou dolů nejprve 9 hran) do zásobníku pro čtení a poté stiskněte Načíst Počkejte, až se načte Pass II
Odeberte Pass II kompilátoru ze zásobníku pro čtení
Odeberte mezilehlý výstup Pass I ze stohovače Punch, poté jej vložte (lícem dolů nejprve 9 hran) do zásobníku pro čtení a stiskněte Start Reader, poté Start Počkejte, až se Pass II dokončí, a vytiskněte na psacím stroji „SW 1 ON PRO DĚROVÁNÍ PODPROGRAMŮ, STISKNĚTE START“
Odeberte mezilehlý výstup ze stohovače čtečky
Přepněte přepínač programů 1 do polohy ON , vložte podprogram (nejprve lícem dolů 9 hran) do zásobníku pro čtení, poté stiskněte Start čtečky a poté Start Počkejte, až se Pass II vytiskne na psacím stroji „END OF PASS II“
Vyjměte balíček podprogramů ze stohovače Reader a dokončený balíček objektů ze stohovače Punch

GOTRAN se používal mnohem jednodušeji, protože přímo vytvářel spustitelný soubor v paměti. Nebyla to však úplná implementace FORTRAN.

Aby to bylo možné zlepšit, byly vyvinuty různé kompilátory FORTRAN třetích stran. Jeden z nich vyvinul Bob Richardson, programátor na Rice University , kompilátor FLAG (FORTRAN Load-and-Go). Jakmile byl balíček FLAG načten, vše, co bylo potřeba, bylo načíst zdrojový balíček, aby se dostal přímo na výstupní balíček; FLAG zůstal v paměti, takže byl okamžitě připraven přijmout další zdrojový balíček. To bylo zvláště výhodné pro řešení mnoha malých zakázek. Například na univerzitě v Aucklandu prošel dávkový procesor úloh studentských úkolů (obvykle mnoho malých programů nevyžadujících mnoho paměti) třídou mnohem rychleji než pozdější IBM 1130 s diskovým systémem. Kompilátor zůstal v paměti a studentský program měl ve zbývající paměti šanci uspět nebo selhat, ačkoli špatný neúspěch může narušit rezidentního překladače.

Později byla zavedena zařízení pro ukládání disků, což odstranilo potřebu pracovního úložiště na balících karet. Různé balíčky karet tvořících kompilátor a zavaděč již nemusí být vytahovány z jejich skříní, ale mohou být ukládány na disk a načítány pod kontrolou jednoduchého diskového operačního systému: mnoho aktivit se stává méně viditelnými, ale stále pokračuje .

Vzhledem k tomu, že děrná strana čtečky karet neotiskla znaky přes horní část karet, bylo nutné všechny výstupní balíčky převést na samostatný stroj , typicky IBM 557 Alphabetic Interpreter, který přečetl každou kartu a vytiskl jeho obsah nahoře. Výpisy byly obvykle generovány děrováním balíčku záznamů a použitím účetního stroje IBM 407 k vytištění balíčku.

Hardwarová implementace

Většina logických obvodů 1620 byla typem logiky odpor - tranzistor (RTL) využívající pro svoji rychlost tranzistory „drift“ (typ tranzistoru vynalezený Herbertem Kroemerem v roce 1953), který IBM označovala jako Saturated Drift Transistor Resistor Logic (SDTRL). Jiné použité obvody IBM byly označovány jako: Alloy (některé logické, ale většinou různé nelogické funkce, pojmenované podle druhu použitých tranzistorů), CTRL (jiný typ RTL, ale pomalejší než SDTRL ), CTDL (typ diodově -tranzistorová logika (DTL)) a DL (jiný typ RTL, pojmenovaný podle typu použitého tranzistoru, „driftové“ tranzistory). Typické logické úrovně všech těchto obvodů ( úroveň S ) byly vysoké: 0 V až -0,5 V, nízké: -6 V až -12 V. Logické úrovně přenosových linek obvodů SDTRL ( úroveň C ) byly vysoké: 1 V, nízké: -1 V. Reléové obvody používají jednu ze dvou logických úrovní ( úroveň T ) vysoká: 51 V až 46 V, nízká: 16 V až 0 V nebo ( úroveň W ) vysoká: 24 V, nízká: 0 V.

Tyto obvody byly konstruovány z jednotlivých diskrétních komponent namontovaných na jednostranných deskách s tištěnými obvody z epoxidového papíru 2,5 x 4,5 palce (64 x 114 milimetrů) se 16pólovým pozlaceným okrajovým konektorem , který IBM označovala jako SMS karty ( Standard Modular System ). Množství logiky na jedné kartě bylo podobné jako v jednom SSI nebo jednodušším balíčku MSI řady 7400 (např. 3 až 5 logických bran nebo pár žabek).

Tyto desky byly vloženy do zásuvek namontovaných ve dveřních regálech, které IBM označovala jako brány . Stroj měl v základní konfiguraci následující „brány“:

  • „Brána A“ - sklopná brána vpřed, která se po „bráně B“ otáčí na zadní straně.
  • „Brána B“ - zadní výklopná brána, která se pro přístup otáčí zezadu.
  • „Brána C“ - vysune se zpět pro přístup. Rozhraní konzoly Psací stroj. Převážně reléová logika.
  • „Brána D“ - vysouvá se zpět pro přístup. Standardní I/O rozhraní.

V roce 1620 byly použity dva různé typy základní paměti :

  • Hlavní paměť
    • Coincident Aktuální adresování XY linky
      • 20 000, 40 000 nebo 60 000 číslic
    • 12bitový pární číslicový pár
    • 12 jednobitových rovin v každém modulu, 1 až 3 moduly
      • 10 000 jader na letadlo
  • Paměť MARS (Memory Address Register Storage)
    • Adresace řádku Word
      • 16 slov, minimálně osm použitých v základní konfiguraci
      • Čtení jednoho slova, více slov vymazání/zápis
    • 24bitová, 5místná desetinná adresa paměti (ne 8-deset tisíc uložených bitů)
    • 1 letadlo
      • 384 jader

Logika dekódování adres v hlavní paměti také používala dvě roviny po 100 pulzních transformátorových jádrech na modul pro generování polovodičových pulzů řady XY.

Existovaly dva modely 1620, z nichž každý měl zcela odlišné hardwarové implementace:

Historie vývoje

Počítač pro „malý vědecký trh“

V roce 1958 IBM shromáždilo tým ve vývojové laboratoři Poughkeepsie v New Yorku, aby studoval „malý vědecký trh“. Zpočátku tým tvořili Wayne Winger (manažer), Robert C. Jackson a William H. Rhodes.

Požadavky a design

Konkurenčními počítači na tomto trhu byly Librascope LGP-30 a Bendix G-15 ; oba byly bicí paměťové stroje. Nejmenším počítačem IBM v té době byl populární IBM 650 , desítkový stroj s pevnou délkou slova, který také používal paměť bubnu. Všechny tři použité vakuové trubice . Došlo se k závěru, že IBM nemůže v této oblasti nabídnout nic opravdu nového. Účinná konkurence by vyžadovala použití technologií, které IBM vyvinula pro větší počítače, přesto by stroj musel být vyroben za co nejnižší náklady.

Pro splnění tohoto cíle tým stanovil následující požadavky:

  • Základní paměť
  • Omezená sada instrukcí
    • Žádné pokyny pro dělení nebo pohyblivou řádovou čárku, použijte podprogramy v "obecném balíčku programu"
  • Kdykoli je to možné, vyměňte hardware za stávající funkce logického stroje
    • Žádné aritmetické obvody, použijte tabulky v základní paměti
  • Nejlevnější možný vstup/výstup
    • Žádné děrovací karty, použijte papírovou pásku
    • Žádná tiskárna, použijte psací stroj konzoly operátora

Prototyp

Tým se rozšířil o Anne Deckman, Kelly B. Day, William Florac a James Brenza. Dokončili (kódové označení) prototyp CADET na jaře 1959.

Zařízení v San Jose v Kalifornii mezitím pracovalo na vlastním návrhu. IBM dokázala postavit pouze jeden ze dvou a návrh Poughkeepsie vyhrál, protože „verze San Jose je na prvním místě a není rozšiřitelná, zatímco váš návrh má všechny druhy možností rozšíření - nikdy nenabízejte stroj, který nelze rozšířit“.

IBM1620A.jpg
IBM 1620 Model I Level A (prototyp), jak se zdálo

v oznámení stroje IBM.

Vedení nebylo zcela přesvědčeno, že by základní paměť mohla fungovat na malých strojích, a tak byl Gerry Ottaway zapůjčen týmu, aby navrhl paměť bubnu jako zálohu. Během přejímacího testování Product Test Lab došlo k opakovaným selháním jádra paměti a vypadalo to pravděpodobné, že se předpovědi vedení splní. Na poslední chvíli se však zjistilo, že ventilátor na muffiny, který vháněl horký vzduch skrz komín jádra, nefunguje správně, což způsobilo, že jádro zachytávalo hlukové impulsy a nedokázalo správně číst. Poté, co byl problém s ventilátorem vyřešen, nebyly s jádrovou pamětí žádné další problémy a úsilí o návrh paměti bubnu bylo přerušeno jako zbytečné.

Převezen do San Jose pro výrobu

Po oznámení IBM 1620 21. října 1959 bylo z důvodu vnitřní reorganizace IBM rozhodnuto převést počítač z divize zpracování dat v Poughkeepsie (pouze velkoformátové sálové počítače) do divize General Products v San Jose ( pouze malé počítače a podpůrné produkty) pro výrobu.

Po přestupu do San Jose tam někdo žertem naznačil, že kódové jméno CADET ve skutečnosti znamená „ C an't A dd, D oesn't E ven T ry“, odkazující na použití sčítacích tabulek v paměti spíše než vyhrazených obvodů sčítání (a SDTRL ve skutečnosti stálo za „ S old D own T he R iver L ogic“ se stalo běžným vtipem mezi CE). To se zaseklo a stalo se velmi dobře známým mezi uživatelskou komunitou.

Implementační „úrovně“

  • Model I.
    • Úroveň A; prototyp.
      • Všechny žabky v návrhu byly tranzistorové verze původního spouštěcího obvodu Eccles-Jordan . Zatímco tento stroj byl plně funkční, bylo zjištěno, že kondenzátorová vazba použitá v těchto zařízeních se ukázala jako problematická v hlučném signálním prostředí relé a spínačů poháněných časovací vačkou používaných k pohonu konzolového psacího stroje. To si vyžádalo kompletní přepracování stroje, aby místo toho používal žabky SR (kromě dvou spouštěcích zařízení používaných ke generování hodin pro žabky SR ). Nicméně použití termínu Trigger bylo zachováno v celé dokumentaci, když se odkazovalo na klopný obvod, protože to byl konvenční termín IBM (protože alphamerics byl jejich termín pro alfanumeriku).
      • Toto je jediná úroveň využívající jednodílný vertikální ovládací panel, když byl design přenesen z Poughkeepsie do San Jose, byl přepracován na dvoudílný úhlový ovládací panel používaný u všech produkčních modelů.
    • Úroveň B; první výroba.
      • Toto je jediná úroveň používající spodní ovládací panel z leštěného hliníku, pozdější úrovně dokončily tento panel bílou barvou.
    • Úroveň C; představení 1622 čtečky karet/razníku.
    • Úroveň D; zavedení 1311 diskových jednotek a přidání volitelného „Gate J“ obsahujícího logiku ovládání disku.
    • Úroveň E; zavedení možnosti Floating Point.
    • Úroveň F
    • Úroveň G; zavedení možnosti Přerušení (nutné pro IBM 1710 ).
      • Nepodporovalo podprogramy BT & BB v kódu přerušení!
      • Logika ovládání disku na logice „Gate J“ sloučena do „Gate A“ a „Gate B“.
        • Bylo to možné, protože velká část logiky byla zkomprimována pomocí karet určených pro Model II.
    • Úroveň H; vylepšená možnost Přerušení, která podporovala podprogramy BT a BB v kódu přerušení.
      • Konečná verze modelu I.
  • Model II (v tuto chvíli nejsou k dispozici žádné informace o „úrovních“)
1620 Model II představil základní ALU hardware pro sčítání a odčítání (takže „ C an't A dd, D oesn't E ven T ry“ již není použitelný) a rejstříkové rejstříky .
  • Model III
    • Práce byly zahájeny na 1620 Model III, ale projekt byl rychle zrušen, protože IBM chtěla podpořit prodej svého nového System/360 a zrušit staré linky.

Patenty

  • US Patent 3 049 295  - Násobící počítač
    • Patent podán: 20. prosince 1960
    • Patent vydán: 14. srpna 1962
    • Vynálezci
      • William H. Rhodes
      • James G. Brenza
      • Wayne D. Křídlo
      • Robert C. Jackson
    • Nároky a odkazy na dosavadní stav techniky
      • 21 nároků
      • Žádné dřívější umění
    • Diagramy a text
      • 156 listů diagramů (Popisuje 1620 ve všech podrobnostech.)
      • 31 listů textu
  • US patent 3 328 767  - Tabulka vyhledávání kompaktních dat
    • Patent podán: 31. prosince 1963
    • Patent vydán: 27. června 1967
    • Vynálezci
      • Gerald H. Ottaway
    • Nároky a odkazy na dosavadní stav techniky
      • 11 nároků
      • 5 předchozí stav techniky
    • Diagramy a text
      • 5 listů diagramů
      • 4 listy textu
  • US Patent 3 199 095  - Funkce počítače s aritmetickou jednotkou pro vyhledávání tabulek
    • Patent podán: 20. prosince 1960
    • Patent vydán: 3. srpna 1965
    • Vynálezci
      • William H. Rhodes
      • James G. Brenza
      • Wayne D. Křídlo
    • Nároky a odkazy na dosavadní stav techniky
      • 21 nároků
      • 5 předchozí stav techniky
    • Diagramy a text
      • 156 listů diagramů (Popisuje 1620 ve všech podrobnostech.)
      • 31 listů textu
  • US Patent 3 239 654  - Dělící počítač
    • Patent podán: 8. února 1961
    • Patent vydán: 8. března 1966
    • Vynálezci
      • Robert C. Jackson
      • William A. Florac
      • Wayne D. Křídlo
    • Nároky a odkazy na dosavadní stav techniky
      • 9 nároků
      • 1 předchozí stav techniky
      • 3 publikace
    • Diagramy a text
      • 13 listů diagramů
      • 19 listů textu

Pozoruhodná použití

Vearl N.Huff, NASA Headquarters (FOB 10B, Washington DC), použil IBM 1620 model II k programování trojrozměrné simulace ve Fortranu upoutaného Gemini kapsle-problém dvou těles raketového modulu Agena v době, kdy to bylo nebylo zcela pochopeno, zda bylo bezpečné připoutat dva objekty k sobě v prostoru kvůli možným kolizím vyvolaným elastickým popruhem. Stejný počítač byl také použit k simulaci drah letů Gemini, které vytvářely grafy tiskařského umění pro každou oběžnou dráhu. Tyto simulace byly spuštěny přes noc a data byla zkontrolována další den.

V roce 1963 byl na IIT Kanpur nainstalován IBM 1620, který poskytoval nakopnutí pro indickou softwarovou zdatnost.

V roce 1964 na australské národní univerzitě Martin Ward použil model IBM 1620 I k výpočtu pořadí Jankovy skupiny J 1 .

V roce 1966 ITU produkoval vysvětlující filmu na systému 1963 pro sazbu pomocí počítače na Washington Večernice , pomocí IBM 1620 a Linofilm fotosázecím .

Použití ve filmu a televizi

  • Rozhlasový program vyvinul DJ Rege Cordic pro KDKA Pittsburgh na základě baseballového simulátoru vyvinutého Johnem Burgesonem z IBM a jeho bratrem Paulem, tehdy praporčíkem amerického námořnictva. Tento program byl použit v řadě demonstračních akcí v letech 1960 až 1963 jako příklad síly počítačů k provádění simulačních cvičení.
  • Fiktivní počítačový kolos Colossus: The Forbin Project používá asi tucet sešrotován 1620 čelní panely zakoupené na přebytku trhu v různých směrech.
  • Podobné uspořádání bylo použito v pozdní televizní epizodě a filmu Muž z UNCLE k vykreslení superpočítače THRUSH .

První setkání studentů

  • Dr. James Oliver, profesor chemie na University of Southwestern Louisiana, získal grant a koupil 1620 v roce 1959 a v tomto roce učil první počítačový kurz univerzity.
  • Oklahoma State University měla v šedesátých letech IBM 1620 pro studenty inženýrství.
  • Newyorská střední škola vědy v Bronxu zpřístupnila svůj IBM 1620 těm studentům v pokročilých technických kurzech.

Anekdoty

KADET

Mnozí v uživatelské komunitě vzpomínají, že 1620 je označován jako CADET , což v žertu znamená „ C an't A dd, D oesn't E ven T ry“, odkazující na použití sčítacích tabulek v paměti spíše než vyhrazené obvody sčítání.

Vysvětlení všech tří známých interpretací kódového jména počítače najdete v historii vývoje .

Pro stroj byl vybrán interní kódový název CADET . Jeden z vývojářů říká, že tento kandidoval na „ C omputer s AD rozšířených E conomic T echnology“, ale jiní to jako prostě být jedna polovina vyvolat „SPACE - CADET“ , kde SPACE byl interní název kód IBM 1401 stroj, také pak ve vývoji.

Reference

externí odkazy