APEXC - APEXC
Den APE (X) C , eller All Purpose Electronic (X) Computer serie designades av Andrew Donald Booth vid Birkbeck College , London i början av 1950-talet. Hans arbete med APE (X) C-serien sponsrades av British Rayon Research Association . Även om namngivningskonventionerna är något oklara verkar det som om den första modellen tillhörde BRRA. Enligt Booth stod X för X-company.
En av serierna var också känd som APE (X) C eller All Purpose Electronic X-Ray Computer och placerades på Birkbeck.
Bakgrund
Från och med 1943 började Booth arbeta med att bestämma kristallstrukturer med röntgendiffraktionsdata . Beräkningarna var extremt tråkiga och det fanns gott om incitament för att automatisera processen och han utvecklade en analog dator för att beräkna diffraktionsmönstrets ömsesidiga avstånd.
1947 tillbringade han tillsammans med sin medarbetare och framtida make Kathleen Britten några månader med von Neumanns team, som var den ledande kanten inom dataforskning vid den tiden.
ARC och SEC
Booth designade en elektromekanisk dator, ARC (Automatic Relay Computer), i slutet av 1940-talet (1947-1948). Senare byggde de en experimentell elektronisk dator med namnet SEC ( Simple Electronic Computer , designad 1948-1949) - och slutligen serien APE (X) C (All-Purpose Electronic Computer).
Datorerna programmerades av Kathleen.
APE (X) C-serien
APE (X) C-serien inkluderade följande maskiner:
- APE (X) C : Birkbeck College, London, första gången i drift i maj 1952, redo att användas i slutet av 1953
- APE (N) C : Board of Mathematical Machines , Oslo ('N' står sannolikt för ' Norge '), även känd som NUSSE
- APE (H) C : British Tabulating Machine Company (Det är oklart vad 'H' står för - kanske ' Hollerith ' när företaget sålde Hollerith Unit skivutrustning
- APE (R) C : British Rayon Research Association ('R' står för 'Rayon'), redo att användas i juni 1952
- UCC : University College, London (cirka januari 1956)
- MAC eller MAGIC ( Magnetic Automatic Calculator ): "byggd av Wharf Engineering Laboratories " (februari 1955)
- Den HEC ( Hollerith Electronic Computer ), byggd av den brittiska hålkortsmaskin Company (sedermera International Computers och Tabulatorer (ICT), då International Computers Limited (ICL)), en kommersiell maskin säljs i flera modeller och senare känd som ICT200 serien . Det fanns sannolikt derivaten HEC 1 , HEC 2 , HEC 2M - M för "marknadsförbar" som betecknar maskinens orientering mot kommersiella snarare än vetenskapliga kunder, och HEC 4 (före 1955)
Endast en av var och en av dessa maskiner byggdes, med undantag av HEC (och möjligen MAC) som var kommersiella maskiner som producerades i ganska stort antal för tiden, cirka 150. De var lika i design, med olika små skillnader, mestadels i I / O-utrustning. APEHC var en stansad kortmaskin medan APEXC, APERC och APENC var teletypers ( tangentbord och skrivare , plus pappersbandsläsare och stans). UCC hade också 8 000 lagringsord istället för 1 000 ord för andra maskiner, och MAC använde germaniumdioder som ersättning för många ventiler.
British Tabulating Machine Company maskiner
I mars 1951 skickade British Tabulating Machine Company (BTM) ett team till Andrew Booths verkstad. De använde sedan hans design för att skapa Hollerith Electronic Computer 1 (HEC 1) före slutet av 1951. Datorn var en direkt kopia av Andrew Booths kretsar med extra ingångs- / utgångsgränssnitt. HEC 2 var HEC 1 med smartare metallhöljen och byggdes för Business Efficiency Exhibition 1953. En något modifierad version av HEC 2 marknadsfördes sedan som HEC2M och 8 såldes. HEC2M efterträddes av HEC4. Cirka 100 HEC4 såldes i slutet av 1950-talet.
HEC använde vanliga stansade kort ; HEC 4 hade också en skrivare och den innehöll flera instruktioner (som delning ) och register som inte hittades på APEXC.
Teknisk beskrivning
En emulator för APEXC-serien har utvecklats av MESS . De beskriver dess funktion enligt följande:
APEXC är en otroligt enkel maskin.
Instruktions- och dataord är alltid 32 bitar långa. Processorn använder heltalaritmetik med 2: s komplementrepresentation. Adresserna är 10 bitar långa. APEXC har inget RAM , förutom en 32-bitars ackumulator och ett 32-bitars dataregister (används tillsammans med 32-bitars ackumulatorn för att implementera 64-bitars skiftinstruktioner och hålla 64-bitars resultatet av en multiplikation ). Instruktioner och data lagras i två magnetiska trummor , för totalt 32 cirkulära magnetiska spår på 32 ord. Eftersom rotationshastigheten är 3750 rpm (62,5 varv per sekund) kan programkörningshastigheten gå från så högt som det teoretiska maximumet på 1 kIPS till lägre än 100IPS om programinstruktioner och data inte är sammanhängande. Numera många säger en fickräknare är snabbare.
En konstighet är att det inte finns någon programräknare : varje maskininstruktion innehåller adressen till nästa instruktion. Denna design kanske låter konstig, men det är det enda sättet att uppnå optimal prestanda med detta cylinderbaserade minne.
Maskinkoden består endast av 15 instruktioner, nämligen addition , subtraktion , multiplikation, belastning (3 varianter), butik (2 varianter), villkorlig gren , höger aritmetisk bitförskjutning, högerbitrotation, stansad kortingång, stansad kortutgång , maskinstopp och bankväxling (som aldrig används på APEXC, eftersom den bara har 1024 ord lagring och adresser är 10-bitars långa). Ett så kallat vektormod gör det möjligt att upprepa samma operation 32 gånger med 32 på varandra följande minnesplatser. Notera bristen på bitvis och / eller / xor och delning. Observera också avsaknaden av indirekta adresseringslägen: dynamisk modifiering av opcodes är det enda sättet man kan simulera det.
En annan konstighet är att minnesbussen och ALU är 1-bitars breda. Det finns en 64 kHz bitklocka och en 2 kHz ordklocka, och varje ordminne och aritmetisk operation sönderdelas i 32 1-bitars minne och aritmetiska operationer: detta tar 32 bitars cykler, totalt 1 ordcykel.
Processorn är ganska effektiv: de flesta instruktioner tar bara två ordcykler (1 för hämtning, 1 för läsoperand och exekvering), med undantag för butiker, skift och multiplikationer. APEXC-processorn kvalificerar sig som RISC ; det finns inget annat adekvat ord.
Observera att det inte finns något skrivskyddat minne (ROM), och därför inte något bootstrap-laddare eller standardstartprogram alls. Man tror att ingen verkställande eller operativsystem någonsin skriven för APEXC, även om det fanns subrutin bibliotek av slag för vanliga aritmetik, I / O och felsöka uppgifter.
Manövrering av maskinen sker normalt via en kontrollpanel som gör det möjligt för användaren att starta, stoppa och återuppta centralbehandlingsenheten och att ändra register och minne när CPU stoppas. När du startar maskinen måste adressen till den första instruktionen för programmet som ska köras anges i kontrollpanelen och sedan trycka på startomkopplaren. De flesta program avslutas med en stoppinstruktion, som gör det möjligt för operatören att kontrollera tillståndet av maskinen, möjligen köra några obduktion debugging förfaranden (en core dump rutin beskrivs i en APEXC programmering bok), sedan ange adressen annat program och kör det.
Två I / O-enheter stöddes: en pappersbandläsare och en pappersstansmaskin. Stansutgången kan matas till en skrivare ('teletyper') när det är önskvärt. Skrivarutgången emuleras och visas på skärmen. Tejpingången antingen datorgenererades av APEXC eller handtypades med ett speciellt tangentbord med 32 tangenter (varje bandrad hade 5 datahål (<-> bitar), vilket gör 32 olika värden).
Vidare läsning
- Andrew D. Booth Technical Developments: The Development of APE (X) .C. (i automatiska maskiner ), matematiska tabeller och andra beräkningshjälpmedel (MTAC) Volym 8, nummer 46, april 1954