KarbosGuide.dk. Modul 3a2.

Om CPU'er - fortsat


Indhold:

  • 8086-kompatibilitet
  • RISC, CISC eller VLIW


  • 8086-kompatible instruktioner

    CPU'ens største arbejde består faktisk i at afkode instruktionerne og lokalisere data. Selve beregningerne er ikke særlig tungt arbejde.

    Afkodningen består i at forstå de kommandoer, brugerprogrammet sender til CPU'en. Alle CPU'er, der benyttes til pc'er er "8086-kompatible". Det betyder, at programmerne kommunikerer til CPU'en ved hjælp af en ganske speciel samling af instruktioner.

    Disse instruktioner var oprindeligt skrevet til Intel 8086-processoren, der grundlagde begrebet "den IBM-kompatible PC". 8086'eren fra 1978 modtog sine instruktioner på én bestemt måde. Og da det var et ønske, at de næste generationer af CPU'er skulle kunne afvikle de samme programmer som 8086'eren kunne, var man nødt til at gøre instruktionsættet kompatibelt. De ny CPU'er skulle forstå de samme instruktioner.

    Denne bagudrettede kompatibilitet har været gældende lige siden. Alle ny processorer - uanset hvor avancerede de er - er nødt til at kunne håndtere 8086-instruktionssættet.

    De ny CPU'er skal altså bruge mange kræfter på at oversætte 8086-instruktionssættet til interne instruktionskoder:


    CISC-, RISC- og VLIW-instruktioner

    De oprindelige CPU'er havde et såkaldt CISC-instruktionssæt. CISC står for Complex Instruction Set Computer. Det betyder, at CPU'en kan forstå mange og komplekse instruktioner. X86-instruktionssættet, med dets variererende længde fra 8 til 120 bit, er oprindeligt udviklet til 8086'eren med dens bare 29000 transistorer.

    RISC

    RISC står for Reduced Instruction Set Computer . RISC-instruktionerne er korte og af samme længde (fx 32 bit lange, som i Pentium Pro), og de afvikles langt hurtigere end CISC-instruktioner. Derfor bruger man RISC i alle nyere CPU'er. Problemet er bare, at instruktionerne, der kommer til CPU'en er i 8086-formatet - og dermed skal de afkodes.

    For hver generation af CPU'er er instruktionssættet blevet udvidet. 386'eren kom med 26 ny instruktioner, 486'eren med 6 ny instruktioner og Pentium kom med 8 ny instruktioner. Ændringerne gør, at visse programmer kræver mindst en 386'er eller en Pentium-processor for at kunne afvikles.

    Der sker også en løbende optimering af instruktionsafviklingen. Ét er at klokfrekvensen øges, som vi senere ser det - for jo hurtigere jo bedre.

    Se også afsnittet om MMX-instruktioner.

    VLIW

    Der findes en helt anden type processorer, nemlig VLIW. Det står for Very Long Instruction Word.

    Et word er en enhed af data som processoren modtager. I "normale" ikke-VLIW-processorer indeholder ét word én instruktion. Men man kan designe processorer, så de modtager flere - mange - instruktioner i hvert word. Det gør i princippet afviklingen hurtigere - for processoren indlæser flere instruktioner i et hug.

    Problemet bliver rækkefølgen af instruktionerne. Dette overlader VLIW-processoren til en software-compiler.

    VLIW bliver brugt med stor succes i special-processorer som fx DSP-chips. Det er enheder, som har et begrænset antal funktioner at udføre.

    Intel har valgt at lave Itanium i VLIW. Det har angiveligt givet store problemer, fordi en CPU er en multi-funktions-processor. Den skal kunne lave alt muligt, og med VLIW-teknikken, bliver designet utroligt komplekst.

    Den mobile TransMeta Crusoe-processor er også opbygget i VLIW-design.


  • Næste side
  • Forrige side


    Videre studier

    Klik for Modul 3b.

    Læs videre om Ultra DMA og AGP i modul 5b

    Læs om driv-programmer til Windows 95 i modul 6c.

    Læs videre om RAM i modul 2e

    Copyright (c) 1996-2011 by Michael B. Karbo.