Prosessor med integrert minnekontroller. Integrert minnekontroller og nordbro

Minnekontroller

Minnekontroller- digitale kretser som kontrollerer strømmen av data til og fra hovedminnet. Kan være en separat brikke eller integrert i en mer kompleks brikke som en nordbro, mikroprosessor eller system-på-en-brikke.

Datamaskiner som bruker Intel-mikroprosessorer har tradisjonelt hatt en minnekontroller innebygd i brikkesettet (northbridge), men mange moderne prosessorer som DEC/Compaq Alpha 21364, AMD Athlon 64 og Opteron, IBM POWER5, Sun Microsystems UltraSPARC T1 og Intel Core i7-prosessorer har integrert minnekontroller plassert på samme brikke for å redusere minnetilgangsforsinkelse. Selv om integrasjon øker systemytelsen, er mikroprosessoren knyttet til én type minne, som ikke tillater kombinasjonen av prosessorer og minne fra forskjellige generasjoner. For å bruke nye typer minne, er det nødvendig å gi ut nye prosessorer og bytte sokkel (for eksempel, etter bruken av DDR2 SDRAM, ga AMD ut Athlon 64-prosessorer som brukte den nye Socket AM2-sokkelen).

Å integrere en minnekontroller med en prosessor er ikke en ny teknologi tilbake på 1990-tallet, DEC Alpha 21066 og HP PA-7300LC brukte integrerte kontrollere for å redusere systemkostnadene.

Oppgaver

Minnekontrolleren inneholder de logiske kretsene som er nødvendige for å utføre lese- og skriveoperasjoner i DRAM, samt for å oppdatere data som er lagret i DRAM. Uten periodiske oppdateringer mister DRAM-minnebrikker informasjon ettersom lekkasjestrømmer tapper kondensatorene som lagrer bitene. Typisk pålitelig lagringstid er en brøkdel av et sekund, men ikke mindre enn 64 millisekunder i henhold til JEDEC-standarder. Over lengre perioder beholdes informasjonen bare delvis.

Flerkanals minne

Fullt bufret FB-DIMM-minne

Notater


Wikimedia Foundation.

  • 2010.
  • Motoffensiv fra østfronten

Kontroll (verdier)

    Se hva en "minnekontroller" er i andre ordbøker: Avbryt kontrolleren

    - (engelsk: Programmable Interrupt Controller, PIC) en brikke eller innebygd prosessorenhet som er ansvarlig for muligheten til å sekvensielt behandle avbruddsforespørsler fra forskjellige enheter. Innhold 1 PIC 2 APIC ... Wikipedia- - [E.S. Alekseev, A.A. Engelsk-russisk forklarende ordbok om datasystemteknikk. Moskva 1993] Emner informasjonsteknologi generelt EN minnetilgangskontrollerMAC ...

    Datamaskinens minnecelle- "RAM"-forespørselen omdirigeres hit. Se også andre betydninger. Den enkleste ordningen for samspillet mellom RAM og CPU RAM (også tilfeldig tilgangsminne, RAM) i informatikk, minne, en del av datamaskinens minnesystem, der ... Wikipedia

    Programmerbar avbruddskontroller- Avbruddskontroller er en brikke eller innebygd prosessorenhet som er ansvarlig for muligheten til å sekvensielt behandle avbruddsforespørsler fra forskjellige enheter. Engelsk navn Programmable Interrupt Controller (PIC). Som regel... ... Wikipedia

    Direkte minnetilgang- (English Direct Memory Access, DMA) modus for datautveksling mellom enheter eller mellom enheten og hovedminnet (RAM) uten deltakelse fra sentralprosessoren (CPU). Som et resultat øker overføringshastigheten, siden dataene ikke er... ... Wikipedia

    programmerbar logisk kontroller- PLC [Intent]-kontroller En kontrollenhet som utfører automatisk kontroll gjennom programvareimplementering av kontrollalgoritmer. [Samling av anbefalte vilkår. Utgave 107. Ledelsesteori. USSRs vitenskapsakademi. Komité vitenskapelig ... ... Teknisk oversetterveiledning

    Funksjonskontroller- Skjematisk plassering av sørbroen på hovedkortet South bridge (fra engelsk. Southbridge) (funksjonell kontroller), også kjent som en I/O-hubkontroller fra engelsk. I/O Controller Hub (ICH). Dette er en brikke som implementerer ... Wikipedia

    USB-kontroller- som en del av en personlig datamaskinplattform gir den kommunikasjon med perifere enheter koblet til den universelle seriebussen. En USB-kontroller er en intelligent enhet som kan samhandle med... ... Wikipedia

    Programmerbar logisk kontroller- Massivt brukt programmerbar logikkkontroller av SIMATIC S7 300-familien programmerbar logikkkontroller (PLC) eller programmerbar elektronisk kontroller ... Wikipedia

    profesjonell grafikkkontroller- Kontrolleren har 320 KB minne. Oppløsning - 640x480 bildeelementer. Evne til å vise 256 farger fra en palett som inneholder mer enn 16 millioner nyanser. Teknisk oversetterveiledning

Så tidligere ovenfor har vi allerede snakket om det faktum at både kommandoer og data kommer inn i prosessoren fra RAM. Faktisk er alt litt mer komplisert. I de fleste moderne x86-systemer (det vil si datamaskiner basert på x86-prosessorer) kan ikke prosessoren som en enhet få tilgang til minne i det hele tatt, siden den ikke har de tilsvarende nodene. Derfor blir den til en "mellomliggende" spesialisert enhet kalt en minnekontroller, som igjen blir til RAM-brikker plassert på minnemoduler. Du har sikkert sett moduler - dette er lange, smale tekstolitt-"planker" (faktisk små brett) med en rekke mikrokretser på dem, satt inn i spesielle kontakter på hovedkortet. Rollen til RAM-kontrolleren er dermed enkel: den fungerer som en slags "bro"* mellom minnet og enhetene som bruker den (forresten, dette inkluderer ikke bare prosessoren, men mer om det litt senere). Som regel er minnekontrolleren en del av brikkesettet - et sett med brikker som er grunnlaget for hovedkortet. Hastigheten på datautvekslingen mellom prosessoren og minnet avhenger i stor grad av hastigheten til kontrolleren, dette er en av de viktigste komponentene som påvirker datamaskinens generelle ytelse.

* - forresten, minnekontrolleren er fysisk plassert i brikkesettbrikken, tradisjonelt kalt "nordbroen".

Prosessor buss

Enhver prosessor er nødvendigvis utstyrt med en prosessorbuss, som i x86 CPU-miljøet vanligvis kalles FSB (Front Side Bus). Denne bussen fungerer som en kommunikasjonskanal mellom prosessoren og alle andre enheter i datamaskinen: minne, skjermkort, harddisk og så videre. Men som vi allerede vet fra forrige seksjon, mellom selve minnet og prosessoren er det en minnekontroller. Følgelig: prosessoren kommuniserer via FSB med minnekontrolleren, som igjen kommuniserer via en spesiell buss (la oss kalle det, uten videre, "minnebussen") med RAM-modulene på brettet. Imidlertid gjentar vi: siden den klassiske x86-CPU-en bare har en "ekstern" buss, brukes den ikke bare til å jobbe med minne, men også for å kommunisere mellom prosessoren og alle andre enheter.

Forskjeller mellom tradisjonell x86 CPU-arkitektur og K8/AMD64

Den revolusjonerende tilnærmingen til AMD ligger i det faktum at prosessorene med AMD64-arkitekturen (og mikroarkitekturen, som konvensjonelt kalles "K8") er utstyrt med mange "eksterne" busser. I dette tilfellet brukes en eller flere HyperTransport-busser for kommunikasjon med alle enheter unntatt minne, og en separat gruppe på en eller to (i tilfelle av en dual-channel controller) busser brukes utelukkende for prosessorens drift med minne. Fordelen med å integrere en minnekontroller direkte i prosessoren er åpenbar: "veien fra kjerne til minne" blir merkbart "kortere", noe som lar deg jobbe med RAM raskere. Riktignok har denne tilnærmingen også ulemper. Så, for eksempel, hvis tidligere enheter som en harddisk eller skjermkort kunne fungere med minne gjennom en dedikert, uavhengig kontroller, så er de i tilfelle av AMD64-arkitekturen tvunget til å jobbe med RAM gjennom en kontroller plassert på prosessoren. Siden CPU i denne arkitekturen er den eneste enheten med direkte tilgang til minne. De facto, i konfrontasjonen "ekstern kontroller vs. integrert", har paritet dukket opp: på den ene siden er AMD for tiden den eneste produsenten av stasjonære x86-prosessorer med en integrert minnekontroller, på den annen side ser selskapet ut til å være ganske fornøyd med denne løsningen og kommer ikke til å forlate den . For det tredje kommer heller ikke Intel til å gi opp eksternt

Etter hukommelse kalt en enhet designet for poster (lagring) Og lesning informasjon.

Kontrollerens minne lagrer:

  1. produsentens serviceprogrammer,
  2. brukerprogrammer,
  3. kontrollerkonfigurasjon,
  4. datablokker (verdier av variabler, tidtakere, tellere, markører, etc.).

Egenskaper til minne. Hukommelse er preget av:

  1. Minnekapasitet (KB, MB eller GB).
  2. Hastighet eller minnetilgangstid.
  3. Energiavhengighet. Atferd etter strømbrudd.

Ris. 3.4 Typer minne(tegning av forfatteren).

Operasjonellhukommelse(VÆR - minne med tilfeldig tilgang).

Fordel.

Er mest uttrykke elektronisk halvlederminne designet for korttidslagring av informasjon.

Feil.

Hovedegenskapen til dette minnet er volatilitet, det vil si tap av data etter at den elektriske strømmen er slått av.

For å buffere RAM bruker noen kontrollere batterier eller elektriske kondensatorer med høy kapasitet som kan beholde en elektrisk ladning i opptil flere dager.

RAM-elementet er en elektronisk trigger (statisk minne) eller en elektrisk kondensator (dynamisk minne).

Ris. 3.5 Trigger - hovedelementet i RAM-minne(tegning av forfatteren).

Dynamisk minne krever syklisk opplading av kondensatorer, men det er billigere enn statisk minne.

Minnematriserepresenterer helhet individuelle minneceller - triggere.

Rad 1 i matrisen inneholder 8 minneceller (8 bits tilsvarer 1 byte).

Hver minnecelle har sin egen unike adresse (radnr. "punkt" nr. bit).

Rader (bits) er nummerert fra høyre til venstre fra "0" til "7".

Linjer (bytes) er nummerert fra topp til bunn, og starter med "0".

Ris. 3.6 Minnematrise(tegning av forfatteren).

Vedvarende minne (ROM - kun leseminne) Designet for langtidslagring av informasjon. Hovedforskjellen fra RAM er at det i stand til å lagre informasjon uten strømkilde, dvs. er ikke-flyktig.

Dette minnet er på sin side delt inn i to typer: én gang(ROM) – og gjentatte ganger omprogrammerbar(PROM)

Omprogrammerbart minne registrert av brukeren ved hjelp av programmerere. For å gjøre dette må du først slette minneinnhold .

Refererer til den gamle typen omprogrammerbart minne EPROM- minne slettet av ultrafiolette stråler (EPROM - slettbart programmerbart skrivebeskyttet minne).

Ris. 3.7 EPROM-minne slettet av ultrafiolette stråler (kilde http://ru.wikipedia.org/wiki/%D0%A4%D0%B0%D0%B9%D0%BB:Eprom.jpg).

EEPROM (Elektrisk slettbart programmerbart skrivebeskyttet minne) er et elektrisk slettbart omprogrammerbart skrivebeskyttet minne (EEPROM), en type ikke-flyktig minne (som f.eks. PROM og EPROM ). Denne typen minne kan slettes og fylles på nytt med data opptil en million ganger.

I dag er den klassiske to-transistor EEPROM-teknologien nesten fullstendig erstattet av NOR-flashminne. Imidlertid er navnet EEPROM godt knyttet til dette minnesegmentet, uavhengig av teknologi.

Ris. 3.8 Flash-minneprogrammering.

(kildehttp://ru.wikipedia.org/wiki/%D0%A4%D0%B0%D0%B9%D0%BB:Flash_programming_ru.svg).

Flash-minne (flash-minne) - en type solid-state halvleder ikke-flyktig overskrivbart minne.

Den kan leses så mange ganger som ønskelig (innenfor datalagringsperioden, typisk 10-100 år), men den kan bare skrives til et slikt minne et begrenset antall ganger (maksimalt - omtrent en million sykluser). Den inneholder ikke bevegelige deler, så i motsetning til harddisker er den mer pålitelig og kompakt.

På grunn av sin kompakthet, lave kostnader og lave strømforbruk, er flash-minne mye brukt i digitale bærbare enheter.

Betinget deling av kontrollerminneområder

Kontrolleren gir følgende minneområder for å lagre brukerprogram, data og konfigurasjon.

Bootminne – dette er ikke-flyktig minne for brukerprogrammet,

data og konfigurasjon. Når et prosjekt lastes inn i kontrolleren, lagres det først i innlastingsminnet. Dette minnet er enten på minnekortet (hvis tilgjengelig) eller direkte innebygd. Ikke-flyktig minneinformasjon beholdes også når strømmen slås av. Minnekortet støtter mer minne enn minnet som er innebygd i kontrolleren.

Arbeidsminneer et flyktig minne. Kontrolleren kopierer noen designelementer fra innlastingsminne til arbeidsminne. Dette minneområdet går tapt når strømmen går, og når strømmen kommer tilbake, gjenoppretter kontrolleren det.

Beholdt minne – Dette er ikke-flyktig minne for et begrenset antall arbeidsminneverdier. Dette minnet brukes til å selektivt lagre viktig brukerinformasjon i tilfelle strømbrudd. Under et strømbrudd har kontrolleren nok tid til å lagre verdiene til et begrenset antall minneadresser. Når strømmen slås på, gjenopprettes disse lagrede verdiene.


Datagjenoppretting

Ris. 3.9 Faser av informasjonsgjenoppretting (tegning av forfatteren).

1. Informasjon om tilstanden til kontrollprosessen lagret i RAM kalles ledelsesprosess POU. De. alle fysiske terminaler på inngangs-utgangsblokken har virtuelle motstykker (flip-flops) i kontrollerminnet. Vanligvis, for å øke hastigheten på informasjonsutvekslingen, får prosessoren tilgang til informasjon fra RAM (i stedet for de fysiske inngangs-/utgangsterminalene). Resultatene av programbehandlingen fra prosessbildet skrives syklisk til utgangsklemmene.

2. Etter at forsyningsspenningen er slått av (spenningen faller under et kritisk nivå), beholdes den viktigste informasjonen tilbake fra RAM til EEPROM. Områdene med data som skal lagres bestemmes av brukeren.

  • Hva er en minnematrise?
  • Hvor mange minneceller er det i en rad i minnematrisen?
  • Hvordan er minnematrisekolonnene nummerert (retning og rekkevidde)?
  • Hva er hovedtypene kontrollerminne (nevner bare to typer)?
  • Hvilke fordeler har en type hukommelse fremfor en annen (to svar)?
  • Hvilke typer kontroller-RAM er delt inn i (2)?
  • Hvilke typer permanent minne er delt inn i i henhold til frekvensen av programmering (2)?
  • Hvilke typer omprogrammerbart skrivebeskyttet minne er delt inn i?ved å slette metode (2)?
  • Hvor kommer informasjonen fra? VÆR når du slår på kontrolleren?
  • Er all informasjon tapt fra VÆR når strømmen er av(hvis den ikke forsvinner, hvor og hvilken informasjon lagres da)?
  • Hva kalles informasjonen om tilstanden til inngangs-/utgangsterminalene i RAM?
  • Hvilken minneblokk jobber prosessoren primært med?

  • Høy systemminnebåndbredde og lav minneforsinkelse har alltid vært relevant. Siden begynnelsen av AnandTech – siden 1997 – har minnet utviklet seg: overgangen fra EDO til SDRAM, fra PC66 til PC133, fra SDR til DDR, og til og med fra VC til DRDRAM. Bare bruk av DDR SDRAM øker Athlon-ytelsen med 20-30 prosent. I tillegg vet vi hvor viktig latens er når minnebåndbredden er høy. Spørsmålet oppstår: hvis prosessorprodusenter kan produsere så kraftige prosessorer, hvorfor kan ingen komme opp med en effektiv måte for dem å hente data fra minnet?

    La oss vurdere veien data tar før de kommer fra minnet til prosessoren. Når prosessoren leser fra systemminnet, sendes den første kommandoen over systembussen til brikkesettets nordbro, som deretter sender den videre til den innebygde minnekontrolleren. Det er i disse første trinnene at fallgruvene skjuler seg. Noen ganger (selv om det er sjelden - tross alt er systembussen og minnebussen vanligvis synkronisert) er det ikke nok systembussbåndbredde. Som et resultat avtar lesehastigheten fra minnet. Mye oftere oppstår store forsinkelser på grunn av ineffektiv drift av nordbroen og minnekontrolleren.

    Deretter, når minnekontrolleren mottar en lesekommando, sendes forespørselen til minnet via minnebussen, og etter flere operasjoner sendes de funnet data tilbake til minnekontrolleren. Minnekontrolleren mottar deretter disse dataene og sender dem til systembussgrensesnittet i nordbroen, og deretter går disse dataene tilbake til prosessoren.

    Når det gjelder andre halvdel av denne prosessen, avhenger alt helt av typen minne som brukes og frekvensen til minnebussen. Ved å bruke brikkesettet og systembussen kan du imidlertid påvirke hastigheten på de første og siste operasjonene.

    En mellomliggende L3-cache kunne vært brukt som en måte å redusere latens på og som en måte å øke kanalutnyttelsen mellom nordbroen og prosessoren, men AMD valgte å integrere minnekontrolleren direkte i prosessoren.

    Ris. 6. Hammer prosessor krets

    Dette reduserer ikke bare forsinkelser i arbeidet med minne (nå går skrive-/leseforespørsler forbi den eksterne nordbroen), men reduserer også sjansene for at brikkesettet vil bremse den generelle ytelsen til plattformen. Vi har sett mange eksempler på at Athlons ikke oppnår topp ytelse bare på grunn av plattformer som ikke fungerer etter hensikten. Derfor ble ingenting bedre enn å bli kvitt kilden til problemene og integrere minnekontrolleren i prosessoren oppfunnet.

    Hammer-arkitekturen adresserer minnekontrolleren på brikken (MCT) og DRAM-kontrolleren på brikken (DCT). Minnekontrolleren er et generisk grensesnitt mellom Hammer-kjernen og DCT-kontrolleren. Denne kontrolleren forstår hva minne er generelt, men den er på ingen måte knyttet til den spesifikke typen minne som brukes. Minnekontrolleren er koblet til DCT, som er en mer spesifikk enhet som kun fungerer med visse typer minne. Teoretisk sett kan AMD lage en Hammer med DDR SDRAM-støtte, og en Hammer med RDRAM-støtte ganske enkelt ved å endre DTC-kontrolleren, men merk at det er svært liten fordel med å bruke RDRAM for Hammer. En av ulempene med RDRAM er for lange forsinkelser, som forekommer ganske ofte. En måte å løse dette problemet på er å bruke RDRAM sammen med prosessorer med lange rørledninger, som i Pentium 4. Det er klart at Hammer-rørledningen ikke er så lang, og klokkehastigheten vil ikke kunne kompensere for RDRAM-forsinkelsene , slik det gjøres i Pentium 4. Derfor er AMDs løsning med DDR SDRAM ganske rimelig.

    De første prosessorene basert på Hammer-arkitekturen hadde enten en 64-biters eller 128-biters DDR SDRAM-kontroller. DCT-kontrolleren kan støtte klokkefrekvenser på 100, 133 eller 166 MHz for DDR200, DDR266 eller DDR333 SDRAM. AMD har gjort det klart at senere versjoner av Hammer DCT vil erstatte DDR-kontrolleren med en DDR-II-kontroller.

    Sammenligning av minnebåndbredde

    Minnetype 64-bits DCT 128-biters DCT
    DDR200 1,6 GB/s 3,2 GB/s
    DDR266 2,1 GB/s 4,2 GB/s
    DDR333 2,7 GB/s 5,4 GB/s

    Plasseringen av minnekontrolleren direkte på brikken betyr også at hastigheten på minnetilgangen direkte avhenger av klokkefrekvensen, siden dataene allerede når prosessoren og omgår systembussen. Som et eksempel på Microprocessor Forum ga AMD en teoretisk 2GHz Hammer med en minnelatens på bare 12 ns (du kan se Hammer-rørledningen til høyre). Dette inkluderer selvsagt ikke tiden det tar å lese data fra minnet, men i alle fall viser det seg å være mye raskere enn å jobbe gjennom en ekstern nordbro. Så AMD kommer til å øke antall instruksjoner som utføres per klokke ved å øke hastigheten på lesing av data fra minnet. Som et resultat vil Hammer-aktuatorer være bedre utstyrt med data enn Athlon-aktuatorer.

    Ris. 8 Lesetid

    data fra minnet

    Så den innebygde minnekontrolleren overtar en av hovedfunksjonene til den eksterne nordbroen. AMD gikk videre og bygde praktisk talt nordbroen inn i prosessordysen. Det eneste som er igjen til den tradisjonelle eksterne nordbroen er AGP-kontrolleren. Dette vil praktisk talt eliminere alle ytelsesproblemene som ville ha oppstått ved bruk av Hammer med sin tids brikkesett, og det vil også glede hovedkortprodusentene fordi det vil forenkle oppsettet av sporene mellom minnet og prosessoren i stor grad.

    Nedenfor er et eksempel på et enkeltprosessor Hammer-system.

    Ris. 9. Typisk "arkitektur" til AMD Hammer

    Som du kan se, er den eneste brikken som er tilgjengelig på hovedkortet (bortsett fra sørbroen) AGP 8X-kontrolleren. Den kommuniserer med prosessoren via HyperTransport-bussen. Sannsynligvis, på jakt etter en billig løsning, vil brikkesettprodusenter ganske enkelt lage en enkelt brikke som vil utføre alle de tradisjonelle funksjonene til den sørlige broen pluss funksjonene til AGP 8X-kontrolleren.

    I tillegg er kun to minnebanker synlige i bildet. AMD uttalte at Hammer-baserte enkeltprosessorsystemer vil støtte maksimalt 2 ubuffrede DIMM-er.

    Denne sesongen kunne vi allerede se at Intel ikke lenger nøler med å ta i bruk noen progressive ideer fra AMD. Spesielt tolkes kompatibiliteten til AMD64 og IA-32e instruksjonssettene på denne måten av mange. AMD har aldri foraktet å bruke teknologier fremmet av Intel - selv i den moderne perioden med relativ uavhengighet, tar den til orde for en rask introduksjon av SSE3-støtte i sine prosessorer.

    reklame

    Det viser seg at en integrert minnekontroller kan dukke opp i Intel-prosessorer. I det minste er de ansatte på nettstedet The Inquirer sikre på dette. En av Intels store partnere innrømmet overfor dem i en konfidensiell samtale at fremtidige Intel-prosessorer vil ha innebygde minnekontrollere. Men siden denne trenden var knyttet til støtte for 64-bits utvidelser, kan vi anta at dette ikke vil skje veldig snart, fordi legaliseringen av 64-bits utvidelser i de nedre segmentene av Intel-prosessorer er planlagt til midten av 2006.

    Det er bemerkelsesverdig at alle prosessorer, fra server til mobil, vil være utstyrt med en innebygd minnekontroller. Tilsynelatende søker Intel ikke bare fordelene ved å øke effektiviteten til minneundersystemet. Minnekontrolleren innebygd i prosessoren bidrar til å redusere ventetiden ved tilgang til minne, og de vil øke etter hvert som DDR-II-moduler med høyere frekvenser blir tilgjengelige. Ved å tvinge brikkesettprodusenter til å jobbe tettere med Intel (tredjepartsutviklere må tilpasse seg egenskapene til minnekontrolleren integrert i Intel-prosessorer), vil selskapet få mer kontroll over produksjonen av hovedkort og brikkesett.

    reklame

    Forresten, vi har allerede nevnt de første tegnene på en slik trend når vi beskriver arkitekturen til TwinCastle-serverbrikkesettet. Minnekontrolleren er separert i en egen brikke i dette brikkesettet. Dette gir mulighet for mer fleksibel design av hovedkort, hvis funksjonalitet oppdateres ganske sakte i serversegmentet. Det neste trinnet vil selvsagt være å integrere minnekontrolleren i sentralprosessoren. I dette tilfellet antar nordbroen primært funksjonene som "megling" mellom sentralprosessoren og grafikkortet.

    Alt som gjenstår er å vente et par år for å bli overbevist om påliteligheten til denne informasjonen eller dens falskhet :).