Domanda

Sto cercando di ottenere la mia testa intorno a questo (ok, TBH vadano a finire una notte prima degli esami :) ma io non riesco a capire (né trovare una buona panoramica di alto livello sulla rete) di questo:

'voci della tabella pagine possono essere mappati a più di una voce TLB .. se ad esempio ogni voce della tabella di pagina è mappped a due voci TLB, questo è conosciuto come set a 2 vie associative TLB'

La mia domanda è, perché mai vogliamo mappare più di una volta? sicuramente vogliamo avere il massimo numero di possibili voci rappresentate nel TLB, e la duplicazione sarebbe sprecare spazio giusto? Cosa mi manca?

Molte grazie

È stato utile?

Soluzione

Non vuol dire che ci si caricare la stessa voce in due posti nella tabella - significa una voce particolare, può essere caricato su o di due posti nella tabella. L'alternativa in cui è possibile mappare solo una voce per un posto in classifica è una diretta mappata TLB.

Lo svantaggio principale di un TLB direct-mapped si pone se si sta copiando da una parte della memoria ad un altro, e (con qualsiasi schema usi CPU-mappatura diretta) le traduzioni per entrambi devono essere mappati nello stesso posto nel TLB. In questo caso, si finisce per ri-caricare l'entry TLB ogni volta, in modo che il TLB sta facendo poco o non va bene a tutti. Avendo un set a due vie associative TLB, si può garantire che ogni due voci possono essere nel TLB, allo stesso tempo in modo (per esempio) un movimento isolato dal punto A al punto B non può rovinare il vostro giorno - ma se si legge da due aree, li combinano, ed i risultati di scrittura ad un terzo che potrebbe (se tutte e tre le traduzioni usato quella mappa mappa per lo stesso insieme di voci TLB).

Il difetto di avere un più vie TLB (come qualsiasi altro nascondiglio più vie) è che non si può direttamente calcolare che posizione potrebbe contenere una voce particolare in un dato momento - che, fondamentalmente, una ricerca in tutto il modi per trovare la voce giusta. Per due vie, questo è raramente un problema - ma quattro modi è in genere circa il limite utile; 8-way set associative (TLB | cache). Non sono comuni a tutti, anche perché la ricerca su 8 posizioni possibili per i dati inizia a diventare eccessiva

Ora corso, il numero di modi ha senso uso in una cache o TLB tende a salire però. Il differenziale di velocità tra memoria e processori continua a salire. Maggiore è la differenza, i più cicli della CPU può utilizzare e ancora produrre un risultato di un ciclo di clock singola memoria (o un numero specifico di cicli di clock memoria, anche se questo è più di uno).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top