Sari la conținut
ELFORUM - Forumul electronistilor

CPU, cache, multiplicare interna cum se face ? low level


Mondan

Postări Recomandate

http://en.wikipedia.org/wiki/CPU_multiplier

 

De la 486 tot mai des vorbim de multiplicare interna. Ca ar avea o memorie cache pentru a creste viteaza.

 

Ce imi mai mai amintesc:

Procesoarele Intel au trei magistrale: date, coduri si adrese. Corect ? Sau sunt doar doua, datele si codurile vin pe acceasi magistrala ?

 

Adica codurile, "urmatoarea intructiune ce trebuie executata" seteaza magistrala de adresa cu CS:EIP.

Instructiunea numarul XX este decodata, adica se seteaza anumite porti logice care fac o operatiune intre registrii procesorului.

(n-am avut un analizor logic de curiozitate)

 

Memoria cache e foarte aproape fizica de CPU. E normal, timpul de accea e mai mic.

Odata ce CPU scrie sau citeste memoria RAM, datele raman in cache. La  doua citire CPU verifica mai inati daca flag-ul cache este valid, pentru adresa ceruta. In caz ca da, ia data direct din cache.

 

 

Ce intreb ?

Acum cum poate face el multiplicarea interna ? Adica ai 486DX2 la 66MHz, dar frecventa de BUS e doar 33MHz.

In primul cache e valabil doar pentru datele reaccesate. Daca eu fac un program care nu reacceseaza adrese de RAM, cache nu are ce sa faca (int x[1000] for(n=;;) x[n]=...).

 

Deci citesc datele de pe magistrala la 33MHz, dar intern "lucrez" la 66MHz.

Cum ?

 

Am ales 486 pentru ca e "cam ultimul" pentru care mai gasim usor documentatie, gen configuratia pinilor. Mai poti folosi analizar logic ieftin ca are frecventa mica. Poate nu se mai gaseste 486.

 

Desi intrebarea mea este pentru calculatoare moderane peste 1GHz cu frecventa de BUS gen 533MHz,

Editat de Mondan
Link spre comentariu
  • Răspunsuri 1
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

  • Mondan

    1

Top autori în acest subiect

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum



×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări