Torben Mogensen header

Mennesket har fire ARMe

The Computer History Museum i Mountain View, California har givet en Fellow Award til designerne af ARM processoren, Steve Furber og Sophie Wilson. Se http://www.computerhistory.org/press/2012-fellows.html for flere detaljer om Furber og Wilson og de to andre prismodtagere.

I den forbindelse nævnte de, at der indtil i dag er fremstillet over 30 milliarder ARM processor-kerner, svarende til mere end fire ARM-kerner for hvert menneske på jorden. Da ARMs CEO Robin Saxby engang i 1990'erne forudså, at der engang ville være flere ARM processorer end mennesker in verden, var der ellers mange, der troede han havde gak i låget.

En ting, som jeg tror har været afgørende for ARM's succes, er, at den blev designet af programmører, som gerne ville kode direkte i assemblersproget i stedet for at bruge en oversætter. Selv om det var et designkriterium for mange tidligere processorer, var det usædvanligt for RISC processorer, som primært var designede til at bruge sammen med oversættere, og derfor ikke altid er nemme at programmere i assembler. Dermed kombinerede ARM bekvemmelighed med effektivitet: Den første udbredte ARM processor (ARM2 fra 1985) brugte omkring 24.000 transistorer, hvor den samtidige Intel 80386 brugte 275.000 og Motorolas 68020 fra 1984 omkring 200,000. Ydelsen i 1987 målt i Dhrystone MIPS var ifølge http://www.roylongbottom.org.uk/mips.htm: ARM2 (Archimedes 310, 8MHz): 4,5 MIPS, 68020 (Sun 3/260, 25MHz): 4 MIPS, 80386 (80386SX/16, 16MHz): 2.5 MIPS. Så med langt færre transistorer og langsommere clockcyklus kunne ARM måle sig med de dominerende samtidige processorer. Og at den kunne håndprogrammeres i assembler vise Furber, Wilson og andre ved at kode hele RISC OS (operativsystem, GUI, BASIC, m.m.) i ren assembler.

Kommentarer (10)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Poul-Henning Kamp Blogger

Det faktum at ARM aldrig selv har lavet silicium har givet deres design en "neutralitet" som ingen andre har kunnet levere og det er en meget stor del af årsagen til deres success.

Stort set alle andre producenter af processor-designs har omgærdet deres VHDL/Verilog kode med så meget hemmelighedskræmmeri at ingen, uanset hvor smart det ville være i markedet, kunne få adgang til den.

Tag f.eks Analog Devices glimrende "Aduc" serier: Så længe de ikke selv skulle skrive en processor, var Analog stort set ligeglad hvad det var der blev proppet i, men det eneste de kunne købe var ARM så det blev det.

ARMs største success er forretningsmodellen, men det skader bestemt ikke, at det er en pokkers god CPU.

  • 5
  • 0
Nikolaj Brinch Jørgensen

...og det er ligesom historien om 8080 vs. Z80. Z80 virkelig 8080 overlegen, men 8080 ender med at vinde...

PS: Man kan argumentere for at MIPS sammeligninger mellem RISC og CISC ikke giver mening. Din referenceside med hastigheder siger blot at tallene er baseret på Dhrystone? Dhrystone har også sine problemer....
Dog ingen tvivl om at ARM er glimrende.

  • 0
  • 0
Mads Bendixen

Er det ikke det man er igang med? TV med Ubuntu, Android osv. er da næste bølge. Jeg skal indrømme jeg ikke har undersøgt hvilket hardware de kører på, men det er da oplagt at de er ARM baseret, når nu der er i forvejen er fokus på energiforbruget og den fysiske størrelse med LED/OLED osv.

  • 0
  • 0
Torben Mogensen Blogger

Licensbetingelserne har helt klart en del at sige, og hvis ikke Intel ændrer deres betingelser og gør det nemmere for en kunde at integrere en Intel-kerne i deres egen SoC, så vil Intel aldrig få en signifikant markedsandel i det mobile marked.

Men andre har prøvet lignende modeller uden samme held som ARM. Dog har Arc (http://en.wikipedia.org/wiki/ARC_International) haft god success med fleksible licensregler, uden dog at nærme sig ARMs popularitet.

  • 0
  • 0
Torben Mogensen Blogger

PS: Man kan argumentere for at MIPS sammeligninger mellem RISC og CISC ikke giver mening. Din referenceside med hastigheder siger blot at tallene er baseret på Dhrystone? Dhrystone har også sine problemer....

Dhrystone MIPS er ikke bare en optælling af antal instruktioner pr. sekund. Det er et benchmarkprogram, hvis køretid omregnes til et brøkdel af køretiden på VAX 11/780, som brugtes som normen for 1 MIPS. Så det betyder ikke så meget om processoren kan udføre 4 eller 8 millioner af sine egne instruktioner pr. sekund -- det er mængden af arbejde, der udregnes.

Men det er rigtigt, at Dhrystone ikke er uden problemer. Den bruger ikke floating-point, så en hurtig FPU gavner ikke. Og en compiler, der laver specialtilfælde for den type kode, der er i Dhrystone-programmet, vil kunne øge antallet af DMIPS uden at have tilsvarende effekt på mere realistiske programmer. Men som ballpark figure fungerer det nogenlunde, og kan ofte være det eneste reelle maskinuafhængige mål man har for ældre maskiner.

  • 0
  • 0
Log ind eller Opret konto for at kommentere