Etikett: Intel 8087

  • Tulip System I – den nederländska datorn som hann före IBM

    När IBM PC började dominera persondatorvärlden fanns det europeiska tillverkare som redan försökte bygga snabbare och mer avancerade alternativ. Ett av de mest intressanta exemplen var nederländska Tulip System I från 1983 – en 16-bitarsdator med Intel 8086, ovanligt mycket minne, avancerad grafik och stöd för både CP/M-86 och MS-DOS. Trots att den aldrig blev lika berömd som IBM:s dator visar Tulip System I hur innovativ och konkurrenskraftig Europas tidiga datorindustri faktiskt var.

    När man talar om persondatorns genombrott på 1980-talet hamnar ofta IBM PC i centrum. IBM:s namn blev nästan synonymt med den moderna kontorsdatorn, och många senare PC-datorer byggdes för att vara kompatibla med just IBM:s modell. Men i Nederländerna fanns ett företag som vågade gå sin egen väg – och som dessutom var tidigt ute med en kraftfull 16-bitarsdator.

    Datorn hette Tulip System I och lanserades 1983 av det nederländska företaget Tulip Computers, som tidigare hade hetat Compudata Systems. Företaget hade börjat som importör av bland annat Exidy Sorcerer, men tog steget från att sälja andras datorer till att utveckla en egen maskin. Resultatet blev en dator som på flera sätt låg före sin tid.

    Tulip System I byggde på Intel 8086, samma processorfamilj som låg till grund för PC-eran, men här kördes processorn i 8 MHz. Det var snabbt för sin tid. Jämfört med IBM PC XT, som lanserades 1983 med en lägre klockfrekvens, framstod Tulips maskin som ett kraftfullt alternativ. Den var inte bara tänkt som en enkel hemdator, utan som en seriös arbetsdator för den som behövde mer prestanda.

    Minnet började på 128 kilobyte, men kunde byggas ut hela vägen till 896 kilobyte. Det var mer än den klassiska gränsen på 640 kilobyte som ofta förknippas med IBM PC. För användare som arbetade med större program, databaser eller programmering var detta en viktig fördel. Datorn kunde också utrustas med en Intel 8087, en matematisk hjälpprocessor som gjorde beräkningar betydligt snabbare. Med den kunde maskinen närma sig prestanda som vid tiden kunde uppfattas som mycket avancerad.

    En annan stark sida var lagringen. Tulip System I hade stöd för SASI, ett gränssnitt som kan ses som en föregångare till SCSI. Det gjorde att datorn kunde levereras med hårddisk på 5 eller 10 megabyte, vilket var mycket användbart i en tid då många datorer fortfarande var helt beroende av disketter. Även diskettstationerna var ovanligt generösa: de kunde lagra 400 eller 800 kilobyte, bland annat tack vare att Tulip använde fler sektorer per spår än IBM:s motsvarande lösningar.

    Grafiken var också mer avancerad än man kanske väntar sig av en tidig 1980-talsdator. Tulip System I använde bland annat en Motorola 6845 för textvisning och en NEC μPD7220 som grafisk hjälpprocessor. Det innebar att datorn kunde visa vanlig text i 80 × 24 tecken, men också olika grafiklägen, till exempel 384 × 288 och 768 × 288 i färg samt 768 × 576 i monokromt läge. NEC-kretsen kunde dessutom hjälpa till med ritoperationer i hårdvara, som linjer, cirklar, ellipser och fyllda former. För grafiska program och tekniska tillämpningar var detta en tydlig styrka.

    Programvarumässigt började Tulip System I med CP/M-86, ett operativsystem för 16-bitarsprocessorer som var en vidareutveckling av det välkända CP/M. Men när MS-DOS snabbt blev allt viktigare bytte Tulip riktning. Datorn kunde köra MS-DOS 2.0, men eftersom den inte var en fullständig IBM PC-klon behövdes en enklare IBM BIOS-emulator. Den gjorde att vissa PC-program, som exempelvis WordStar, kunde köras. För programmerare fanns stöd för bland annat MS-Basic, MS-Pascal och MS-Fortran, och på privat initiativ portades även program som TeX och Turbo Pascal.

    Det intressanta med Tulip System I är att den visar hur öppen och experimentell datormarknaden fortfarande var i början av 1980-talet. IBM PC hade ännu inte hunnit bli den självklara standard som den senare blev. Flera företag försökte hitta egna lösningar, ofta med bättre teknik på vissa områden än IBM:s original. Tulip valde en kraftfull processor, gott om minne, bra grafikmöjligheter och avancerad lagring. På pappret var det en imponerande maskin.

    Samtidigt blev just standardisering avgörande. IBM PC-kompatibilitet blev så viktig att även tekniskt starka datorer kunde få svårt att konkurrera om de inte var tillräckligt kompatibla. Tulip System I kunde visserligen köra MS-DOS och en del PC-program, men den var inte en fullständig IBM PC-klon. Det gjorde att Tulip senare, liksom många andra tillverkare, gick vidare mot mer direkt IBM-kompatibla datorer.

    I efterhand framstår Tulip System I som en fascinerande europeisk datorhistoria. Den var snabb, tekniskt ambitiös och byggd av ett företag som ville skapa något eget snarare än att bara kopiera IBM. Den visar också att persondatorns historia inte bara skrevs i USA. I Nederländerna fanns ett företag som redan 1983 byggde en 16-bitarsmaskin med hög prestanda, stor minneskapacitet och avancerad grafik.

    Tulip System I blev kanske aldrig lika känd som IBM PC, men den är ett tydligt exempel på den innovationskraft som fanns i Europas tidiga datorindustri. Den var ett försök att bygga en professionell, modern och kraftfull persondator – innan PC-standarden helt hade låst marknaden.

    Youtube innehålle om Tulip PC

    Teknisk faktaruta: Tulip System I

    Tillverkare Tulip Computers / Compudata Systems
    Lanseringsår 1983
    Datortyp 16-bitars persondator
    Processor Intel 8086
    Klockfrekvens 8 MHz
    Matematisk hjälpprocessor Intel 8087 som tillval
    Minne 128 KB, utbyggbart till 896 KB
    Operativsystem CP/M-86 och senare MS-DOS 2.0
    Grafik Motorola 6845 och NEC μPD7220
    Textläge 80 × 24 tecken
    Grafiklägen 384 × 288 och 768 × 288 i färg, 768 × 576 monokromt
    Lagring Disketter på 400 KB eller 800 KB
    Hårddisk 5 MB eller 10 MB som tillval
    Hårddiskgränssnitt SASI, föregångare till SCSI
    Anslutningar RS-232 och parallellport

    Kort sagt: Tulip System I var en avancerad europeisk 16-bitarsdator som kombinerade snabb Intel 8086-processor, ovanligt stor minneskapacitet, kraftfull grafik och tidigt stöd för hårddisk.

    Annons

    Strul med e-posten? Hjälp med TV? Problem med wifi?
    Digital Fixare

  • Intel 8087 – chippet som lärde PC:n att räkna på riktigt

    När persondatorn slog igenom i början av 1980-talet var den förvånansvärt dålig på matematik. Heltalsberäkningar gick bra, men så fort man behövde arbeta med decimaltal, trigonometriska funktioner eller avancerade vetenskapliga beräkningar blev allt långsamt. Lösningen fick ett eget chip: Intel 8087, världens första flyttalsprocessor för x86-plattformen.

    Detta tillägg förvandlade PC:n från en ren kontorsmaskin till ett verktyg som kunde användas för tekniska, vetenskapliga och ingenjörsmässiga beräkningar.

    Varför behövdes en separat matematikprocessor?

    De tidiga x86-processorerna, som Intel 8086 och Intel 8088, saknade hårdvarustöd för flyttalsaritmetik. Alla beräkningar med decimaltal fick därför utföras i mjukvara, vilket ofta var hundratals gånger långsammare än motsvarande hårdvara.

    8087 konstruerades som en koprocessor som arbetade parallellt med huvudprocessorn. Den tog hand om flyttalsoperationer som addition, multiplikation, division, kvadratrötter samt mer avancerade funktioner som logaritmer och trigonometri. I många program ökade prestandan dramatiskt, i vissa fall med flera hundra procent.

    Hur samarbetade 8087 med huvudprocessorn?

    Samarbetet mellan 8087 och huvudprocessorn var ovanligt elegant för sin tid. När huvudprocessorn stötte på en särskild instruktion markerad som ett så kallat escape-opcode ignorerade den själv operationen. I stället snappade 8087 upp instruktionen direkt från databussen och utförde beräkningen.

    Under tiden kunde huvudprocessorn fortsätta exekvera annan kod. Det innebar att systemet faktiskt kunde arbeta parallellt: heltalsberäkningar i CPU:n och flyttalsberäkningar i koprocessorn samtidigt. För att undvika att 8087 fick nya instruktioner innan den var klar användes ibland WAIT-instruktionen, men trots detta var vinsten i beräkningshastighet betydande.

    Stackarkitekturen som förbryllade programmerare

    Till skillnad från vanliga x86-register använde 8087 inte ett direkt adresserbart registerset. I stället arbetade den med en stack av åtta flyttalsregister, numrerade från st0 till st7. Instruktionerna placerade värden på stacken, utförde beräkningar och tog bort resultat igen.

    Denna modell gjorde instruktionerna kraftfulla och kompakta, men den krävde noggrann hantering. Felaktig användning kunde leda till stacköver- eller underflöden, något som både programmerare och kompilatorer fick lära sig att hantera. Stackmodellen kom senare att leva vidare i hela x87-familjen.

    Grunden till IEEE:s flyttalsstandard

    Under utvecklingen av 8087 lade Intel stor vikt vid numerisk korrekthet. Avrundning, representation av mycket stora och mycket små tal samt förutsägbara resultat var centrala mål. Detta arbete blev en viktig grund för den internationella standarden IEEE 754, som än i dag definierar hur flyttal fungerar i de flesta datorer.

    8087 introducerade även ett internt 80-bitars flyttalsformat med extra precision. Detta format används fortfarande internt i x87-enheter för att minska avrundningsfel vid långa och komplexa beräkningar.

    Ett genombrott för PC-plattformen

    När IBM inkluderade en särskild koprocessorsockel på IBM PC:s moderkort ökade intresset för 8087 kraftigt. Program för CAD, teknisk simulering och vetenskapliga beräkningar kunde nu köras på en vanlig PC i stället för på dyra minidatorer.

    Detta bidrog starkt till att etablera persondatorn som ett seriöst arbetsverktyg även inom tekniska och akademiska miljöer.

    Från separat chip till integrerad funktion

    Efter 8087 följde 80287 och 80387, men med Intel 80486DX integrerades flyttalsenheten direkt i huvudprocessorn. Därmed försvann behovet av separata matematikprocessorer.

    Trots detta lever arvet kvar. Många av de principer, instruktioner och format som introducerades med 8087 finns fortfarande kvar i moderna system, om än ofta dolda bakom mer avancerade exekveringsenheter.

    Slutsats

    Intel 8087 var ett specialiserat och relativt dyrt chip, men dess betydelse kan knappast överskattas. Den gjorde avancerad matematik praktiskt möjlig på persondatorer, lade grunden för internationella standarder och förändrade hur PC-plattformen användes.

    Det var chippet som gav persondatorn förmågan att räkna på riktigt.

    Youtube innehåll om Intel 8087

    Teknisk faktaruta: Intel 8087

    Typ
    Flyttalskoprocessor (FPU) för 8086/8088
    Introducerad
    1980
    Klockfrekvens
    Ca 4–10 MHz (beroende på variant)
    Arkitektur
    x87 (tillägg till x86-16)
    Register
    8 nivåer djup flyttalsstack (st0–st7), intern 80-bitars precision
    Dataformat
    32-bit (single), 64-bit (double), 80-bit (extended) samt BCD- och heltalsformat
    Instruktioner
    Flyttalsinstruktioner (ofta med F-prefix, t.ex. FADD, FMUL); kodas via ESC/”11011”-mönster
    Samarbete med CPU
    Parallell exekvering: 8087 övervakar buss/instruktionsflöde och arbetar samtidigt som 8086/8088
    Synkronisering
    Program kan behöva vänta in coprocessorn med WAIT/FWAIT
    Antal transistorer
    Uppges ofta till runt 65 000 (källor varierar)
    Tillverkningsteknik
    HMOS, ungefär 4,5 µm (senare krympt till cirka 3 µm)
    Kapsel
    40-pin DIP (vanligtvis keramisk för bättre värmeavledning)
    Efterföljare
    80287 (senare integrerad FPU från och med 80486DX)

    Annons

    Strul med e-posten? Hjälp med TV? Problem med wifi?
    Digital Fixare