2015-03-02 27 views
5

Guardando da questo core Intel i7 Nehalem microarchitecure enter image description hereOgni core ha il proprio set privato di registri?

Sembra che ogni core ha il proprio file di registro privata. Quindi ho un paio di brevi domande, perché pensavo che esistesse solo un set di registri non dipendenti dal numero di core.

  • Ogni core ha il proprio set privato di registri? (rax, rbx, rsp e così via.)
  • Ogni core ha la sua MMU e TLB? non solo uno condiviso su tutti i core?

So che le domande dipendono fortemente dalla microarchitettura, ma credo che la maggior parte delle moderne CPU x64 intel seguano lo stesso principio di progettazione.

+0

Si noti che la domanda appare off-topic qui: "Le domande sull'hardware e sul software di calcolo generale sono off-topic per Stack Overflow a meno che non coinvolgano direttamente strumenti utilizzati principalmente per la programmazione." – njuffa

+0

@njuffa i registri dei pozzetti sono legati alla programmazione, quindi è bene sapere di più su di loro :) – BsD

+0

Mentre ognuno ha i propri registri, la possibilità di specificare quale core viene impostato durante il caricamento di rax, rbx, rsp e così via non è generico supportato. –

risposta

5

Ogni core ha il proprio set di registri, MMU, TLB, cache di livello 1 (dati e istruzioni), cache di livello 2 (questo dipende dal processore) ecc. La coerenza della cache è supportata nei core tramite "QPI" e nel caso di processori Core 7 di fascia alta e basati su server come Xeon, Cache Coherency è supportato su processori su una scheda madre multiprocessore esponendo "QPI" sui pin esterni di tali processori (per processori in cui la coerenza della cache multiprocessore non è supportato, "QPI" non è "esposto").

articolo Wiki: Nehalem

2

Sì, ogni core ha il suo insieme di registri. "Core" equivale a CPU separata su socket ma con "multicore" il cablaggio elettronico è semplice.