Hyper-pipelined technology

Pentium 4 processorns kanske mest omtalade egenskap är den väldigt långa ”pipelinen” som spelar en stor roll i Intels planer på höga klockfrekvenser med NetBurst-arkitekturen. Precis som vi talade om innan så är Pentium 4 processorn konstruerad så att den gör mindre jobb per klockcykel. Det är just Intels nya Hyper pipline som ligger bakom detta pga sin längd.

Intel Pentium 3 använder sig av en 10 stegs lång pipeline, Athlons pipeline har 11 steg men Intel Pentium 4s pipeline är hela 20 steg djup och kallas Hyper Pipelined Technology.
När stegen i pipelinen är smalare eller mindre betyder det att man behöver använda färre transistorer och detta i sin tur gör det möjligt för högre klockfrekvenser. Det är på detta sätt Intel tänker ta sig en bra bit över 3.0 Ghz med deras NetBurst-arkitektur.

Självklart är det inte bara fördelar med en sådan teknik att använda längre pipelines. För det första är det ett lägre IPC värde men det är också lättare att någonting går fel under informationens väg genom pipelinen. När instruktionerna kommer till slutet av pipelinen så är det processorns uppgift att förutse vad den ska göra härnäst. Om den inte lyckas med detta utan ’förutser fel’ så måste hela pipelinen tömmas och förlorar då alla instruktioner som var ’på väg’. Efter detta måste man börja från början igen vilket då gör att t.ex en 10 stegs pipeline inte har lika stor tidsförlust som en 20 stegs.
För att dessa missbedömningar ska bli så få som möjligt har Intel använt sig av två andra tekniker, Rapid execution engine och Execution trace cache.

Rapid Execution Engine

De interna instruktionerna i en processor hanteras av ALU enheter, ALU som står för ’Arithmetic Logic Units’. Det som är speciellt med Intel Pentium 4 processorns ALU enheter är att två av dem är dubbelpumpade. Vilket medför att de överför dubbelt så mycket data per klockcykel som en vanlig ALU enhet gör. De dubbelpumpade ALU enheterna jobbar alltså precis som om de hade en dubbelt så hög klockfrekvens som själva processorn. I en Pentium 4 2.0Ghz processor jobbar de likadant som vanliga ALU enheter hade gjort i 4.0Ghz (!).

Som vi nämnde innan blir det en kraftig prestandasänkning i en Pentium 4 processor när den måste tömma sin pipeline och skicka instruktionerna till början igen. Det blir såklart en mycket större prestandasänkning om man t.ex jämför med Pentium 3 processorn som bara har hälften så lång pipeline (10 steg mot P4s 20 steg). Därför blir de snabbare ALU enheterna en nödvändighet för att minimera prestandasänkningen vid en pipeline tömning. ALU enheterna hanterar bara intern kod och det är just den koden som lättast blir utsatt för processorns missbedömningar.

Även fast Intel har minimerat Pentium 4 processorns chans för missbedömningar så finns det ytterligare en viktig funktion som minskar prestandaförlusten om det ändå skulle insträffa.

Leave a Reply

Please Login to comment
  Subscribe  
Notifiera vid