NL

FR

▲ NAM-IP/Infos

NAM-IP Infos 2017/2 – Bewaren
De magnetische trommel van de USSC90 – 1958

[Het Fonds "Baanbrekende Informatica in België" van de Koning Boudewijnstichting heeft twee Univac magnetische drums die momenteel te zien zijn in het NAM-IP Computer Museum.]

 

Deze trommel (foto 1), in het Engels “Drum memory” is afkomstig uit de USSC90, ofwel de Univac Solid State Computer die in 1958 op markt kwam. De USSC was de commerciële versie van de Univac Cambridge Computer die in 1956 voor het Amerikaanse leger gebouwd werd. Het cijfer 90 duidt op het gebruik van 90 kolom kaarten volgens de Remington (Powers) methode. Er was ook een 80 kolom kaart versie, de USSC80.

Een trommelgeheugen was de voorloper van de harde schijven en werd dus in zowat alle computers van die tijd, soms ook nog tegelijk met harde schijven gebruikt. Maar het was geen apparaat voor permanente opslag zoals een harde schijf.

In de USSC90 was de trommel de enige opslag die beschikbaar was en diende zoals het geheugen in een modernere computer. Op de trommel werd zowel het programma geladen als de gegevens. De processor haalde dan zijn informatie vanaf de trommel en voerde die dan uit. Op de trommel was er ook een spoor dat de klok voor de processor leverde.

De trommel draaide rond aan 17670 toeren per minuut. Deze snelheid was nodig om de klok frequentie van 707 kHz te bereiken. Omwille van die hoge snelheid moest er behoorlijk gekoeld worden en om ook de wrijvingsweerstand van de lucht tot een minimum te beperken was de trommel in een hermetisch gesloten container opgesteld die met helium gevuld was. Deze technologie wordt ook nog in de huidige hoge-capaciteit harde schijven gebruikt.

De opslagcapaciteit van de trommel slechts 60 à 70 kilobytes. Er was plaats voor 5000 woorden die elk 12 karakters bevatten (10 data, een teken en een SBW, ofwel “space between words”). De trommel was ingedeeld in 25 “bands” die elk 200 woorden bevatte. Ieder karakter werd opgeslagen in “bi-quinaire code”. Dit is een 4 bit binaire code maar de waarde van de hoogste bit is niet 8 maar 5.

  biquinair binaire
getal bit positie bit positie
  4 3 2 1 4 3 2 1
0 0 0 0 0  0 0 0 0
1 0 0 0 1 0 0 0 1
2 0 0 1 0 0 0 1 0 
3 0 0 1 1 0 0 1 1 
4 0 1 0 0 0 1 0 0
5 1 0 0 0 0 1 0 1
6 1 0 0 1 0 1 1 0
7 1 0 1 0 0 1 1 1
8 1 0 1 1 1 0 0 0
9 1 1 0 0 1 0 0 1
decimale waarde 5 4 2 1 8 4 2 1

 

De 25 “bands” waren verdeeld in een “fast access” zone met 4000 woorden en een “high speed access” van 1000 woorden. De “fast access” zone werd bediend één enkele logische lees- en schrijfkop. De gemiddelde toegangstijd was 1,7 milliseconde. In deze zone werden programma’s en tabellen opgeslagen. De “high speed access” zone had vier logische lees- en schrijfkoppen die op 90° rond de cilinder opgesteld stonden. Hierdoor was de gemiddelde toegangstijd slechts 0,425 milliseconde. De invoer gegevens werden vanuit de bufferzone hiernaartoe overgebracht voor verdere verwerking. De resultaten werden daarna terug naar de buffer overgezet om naar de randapparaten gestuurd te worden. De categorie van overdrachtinstructies zorgde hiervoor. Ook tussenresultaten van bewerkingen konden hierin tijdelijk opgeslagen worden. De overdrachtsnelheid was 707 000 digits per seconde.

De lees- en schrijfkoppen (foto 2) waren in vijfvoud uitgevoerd, dat verklaart de vele koppen die buiten op de trommel te zien zijn. Digits werden in serie gelezen, de 5 data bits werden parallel gelezen.

Door de vrijgekomen opening zie je de cylinder waarop de data opgeslagen was (foto 3).

Naast de ruimte voor data (zowel programma als de te verwerken gegevens) was er voor elke soort randapparaat een bufferzone. Deze bevatte 280 woorden en diende zoals de naam aangeeft om het snelheidsverschil tussen de centrale eenheid en de in- en uitvoer apparaten op te vangen. Gedurende de tijd die nodig was om één lijn op de printer af te drukken, kon de trommel zowat 30 toeren maken en kon er dus heel wat werk verricht worden.

Invoer gegevens werden vanaf de kaartlezer op de bufferband opgeslagen en nadien naar de “high speed” zone overgebracht door de processor. Uitvoer gegevens werden door de processor eerst naar de bufferzone weggeschreven en vandaar ofwel naar de kaartponsmachine of de printer gezonden.

Een instructie voor deze machine bevatte naast de eigenlijke opdrachtcode (bv add, subtract, enz.) het adres op de trommel van de gegevens die moesten behandeld worden en tenslotte het adres waar de volgende instructie op de trommel te vinden was. Het bepalen van dit adres was een hele opgave. Nadat een instructie was uitgevoerd had de trommel reeds heel wat weg afgeleg. De opslagplaats van de volgende instructie was dus niet het volgende adres op de trommel. Om zo efficiënt mogelijk te werken moest de programmeur hiermee rekening houden. We vonden op de website van het Smithsonian Institute tussen de cirkelvormige rekenlinealen ook een “Minimum Latency Calculator Slide Rule” (foto 4) die hiervoor gebruikt kon worden.

Deze figuur (foto 5) toont in detail hoe de code 25 2041 0243 in locatie 0205 opgeslagen was. Je ziet ook de bufferbanden en de “timing band”. De terminologie is hier verschillend, men spreekt van standard access en high-speed access. De “timing band” bevatte zowel een klok spoor als adresinformatie voor het uitlezen van de gegevens in de “fast access” of “high speed access” zones. Het kloksignaal stuurde via een buizenversterker met een vermogen van 1 kilowatt alle logische circuits in de processor.

Edward Desmet

Ref.: Links geldig op de datum van publicatie van dit artikel
• https://web.archive.org/web/20160304164142/
• https://wiki.cc.gatech.edu/folklore/index.php/The_UNIVAC_Solid_State_Computer