Skip to main content

Vad är en cachebuss?

En cachebuss är en dedikerad höghastighetsbuss som en datorprocessor använder för att kommunicera med sitt cacheminne.Även känd som en baksida buss och fungerar med mycket större hastighet än systembussen.En cachebuss ansluter direkt en processorkärna till sin cache;Den går oberoende av processorbussen och överför data över en bredare, mindre begränsad väg.En cachebuss används i de flesta moderna processorer för att minska den tid som krävs för att läsa eller modifiera ofta åtkomstdata.

På 1980 -talet låg cacheminnet vanligtvis på moderkortet, inte på själva processorchipet.Cachen nås via processorbussen, precis som det vanliga systemminnet.Mängden cacheminne var ofta ganska litet och erbjöds endast som en valfri systemprestandaförbättring.

När processorns hastighet och effektivitet ökade i början av 1990 -talet blev processorbussen en flaskhals;Snabbt cacheminne behövde ett sätt att interagera med processorn utan att vänta på mycket långsammare systemminne och input/utgångsoperationer för att avsluta.I mitten av 1990-talet antog de flesta nya processorer en dubbelbussarkitektur för att lösa detta problem.En höghastighets cachebuss skapades för att komma åt cachen direkt.Denna buss används inte för något annat mdash; alla andra dataöverföringar använder den långsammare processorbussen, även känd som den främre bussen.Processorn kan använda båda bussarna samtidigt, vilket resulterar i betydligt bättre prestanda.

Tidiga dubbla bussdesigner som ofta använde cacheminne på moderkortet;Stora mängder cache on-chip var ännu inte kostnadseffektiva på grund av produktionsproblem.Senare integrerade mönster ofta en blandning av intern och extern cache när utbytet förbättrades.Moderna processorer använder vanligtvis en stor mängd intern cache;Många inkluderar 8 megabyte (MB) eller mer, jämfört med äldre mönster som ofta bara hade 8 kilobyte (KB).I moderna mönster där hela cachen är på chip kan cachebussen vara ganska kort med en mycket bred dataväg, 512 bitar i vissa processorer.Bussen går vanligtvis med samma hastighet som själva processorn.Slutresultatet är att cacheinnehåll kan läsas eller modifieras mycket snabbt.

Varje kärna i en multikärnig processor kan ha sin egen cache eller dela en stor gemensam cache.I båda fallen ansluter en cachebuss varje kärna till lämpligt cacheminne.När varje processorkärna har sin egen separata cache kan koherensproblem uppstå.Till exempel, när en kärna uppdaterar data i sin cache, blir andra kopior av dessa data i andra cachar föråldrade eller inaktuella.Ett sätt som denna typ av problem kan lösas är genom att använda en speciell typ av cache-buss, ibland kallad en inter-core-buss.Denna buss kopplar samman alla cachar så att var och en kan övervaka vad de andra gör mdash; om man uppdaterar en del av delad data, kan de andra omedelbart återspegla det nya innehållet.