Cunoaște Intuit, curs, microprocesor arhitectura Intel și principalii factori care afectează acesteia

Rezumat: Cursul este considerat un model simplificat al procesorului, componentele sale. Vom examina modelul de memorie pe mai multe niveluri, utilizarea de registre și memorie, preluare anticipată de ramură de predicție. Pe banda rulanta. Instrucțiuni vectoriale. Multicore și instrucțiuni de execuție paralele. Locul de amplasare și de compilator rol în procesul de creare a unei aplicări eficiente.







Prezentarea prelegerea poate fi descărcat de aici.

Un model simplificat al procesorului

Care este performanța procesorului

Prototipul a circuitului este descrierea parțial arhitectura Von Neumann, care are următoarele principii:

Pentru a face mai ușor de înțeles ceea ce un sistem modern de calculator. trebuie să fie luate în considerare în dezvoltarea. Așa că am adus aici schema cea mai simplă, care vine în minte. De fapt, acest model simplificat. Avem un anumit controler în cadrul procesorului, o unitate logică aritmetică. Sistemul înregistrează, magistrala de sistem. care permite comunicarea între unitatea de control și alte dispozitive, memorie și dispozitivele periferice. Unitatea de comandă primește instrucțiuni face decodarea acestora, controlează o unitate logică aritmetică realizează transferul de date între registrele procesorului, memoria. periferice.

Un model simplificat al procesorului

  • Unitate de control (Control Unit. CU)
  • ALU (aritmetică și unitate logică. ALU)
  • registrele de sistem
  • un sistem de autobuz (Front Side Bus, FSB)
  • memorie
  • periferice

Unitatea de control (CU):

  • efectuează instrucțiuni de decodificare primite din memoria calculatorului.
  • Acesta controlează ALU.
  • efectua transferuri de date între registrele CPU, memorie, periferice.
  • Aceasta permite operații aritmetice și logice pe registrele de sistem.
  • o anumită porțiune în memoria procesorului este utilizat pentru stocarea intermediară a informațiilor procesate de procesor.
  • utilizat pentru transferul de date între CPU și memorie, precum și între CPU și dispozitivele periferice.

unitate logică aritmetică constă din diferite componente electronice. permițând să facă operațiuni pe registrele de sistem. Registrele de management al sistemului - aceasta în anumite porțiuni ale memoriei în CPU sunt utilizate pentru stocarea rezultatelor intermediare să fie procesate de procesor. Magistrala de sistem este utilizat pentru transferul de date între CPU și memorie, precum și între CPU și dispozitivele periferice.

MP de înaltă performanță (microprocesor) - unul dintre factorii cheie în lupta concurențială a producătorilor de procesoare.

performanța procesorului este direct legată de volumul de muncă, calculele pe care se poate efectua pe unitatea de timp.

Performanța = Numărul de instrucțiuni / Timp

Vom lua în considerare performanța procesorului bazat pe arhitectura IA32 și IA32e. (IA32 cu EM64T).

Factorii care afectează performanța procesorului:

Care sunt factorii care influențează performanța. Lista tot ceea ce vine în minte. Acestea sunt:







  • Executarea de instrucțiuni de viteză, plinătatea unui set de bază de instrucțiuni.
  • Utilizarea registrelor de memorie internă.
  • pipelining de calitate.
  • Calitatea de predicție ramură.
  • prefetch de calitate.
  • Superscalare.
  • Vectorizare. utilizarea instrucțiunilor vectoriale.
  • Paralelizarea și mai multe nuclee.

Procesorul este format dintr-o componentă a declanșat la momente diferite și în ea există un temporizator care asigură sincronizarea prin trimiterea impulsuri periodice. Frecventa sa este numit o frecvență de ceas a procesorului.

Deoarece procesorul are o mulțime de diverse componente electronice. care operează în mod independent, pentru a sincroniza munca lor, astfel încât să știe în ce moment este necesar să se înceapă să lucreze atunci când aveți nevoie pentru a efectua de locuri de muncă și să aștepte, există un cronometru. care trimite ceas. Frecvența cu care este trimis un ceas - este cronometrat. Există dispozitive care gestionează două operațiuni pentru a efectua în acest timp, cu toate acestea, acest semnal de sincronizare a procesorului este legat, și putem spune că, dacă avem această creștere a ratei, atunci vom face aceste cipuri lucra cu mai mult efort și mai puțin de mers în gol.

Din cauza acestor factori, dezvoltatorii, în general, nu au capacitatea de a influența, le-am spus doar.

Viteza de executie si un set de instrucțiuni

Performanța depinde de instrucțiuni cât de bine realizate, cât de bine setul de instrucțiuni de bază se referă la toate sarcinile posibile.

CISC, RISC (complex, instrucțiuni set redus de calcul)

procesoare Intel® moderne reprezintă CISC hibride și procesoare RISC înainte de a executa instrucțiuni CISC convertite la simplu set de instrucțiuni RISC.

Rata de execuție de instruire și caracterul complet al unui set de bază de instrucțiuni.

De fapt, atunci când procesoarele arhitecți de proiectare, acestea sunt în mod constant de lucru pentru a îmbunătăți performanța. Una dintre sarcinile lor este de a colecta date statistice pentru a determina. orice instrucțiuni sau secvențe de instrucțiuni sunt esențiale în ceea ce privește performanța. Încercarea de a îmbunătăți performanța. Arhitecții încercați cea mai tare ghid pentru a face mai rapid, pentru unele seturi de instrucțiuni pentru a face o instrucțiune specială care va înlocui acest set și va lucra mai eficient. De la arhitectura la arhitectura schimbă caracteristicile de instruire, noi instrucțiuni, care pot obține performanțe mai bune. Ie se poate presupune că arhitectura pentru instruirea arhitecturii de bază set în mod constant îmbunătățirea și extinderea. Dar, dacă nu specificați programul dvs. va rula pe orice arhitectură. în cererea dumneavoastră va fi utilizat un implicit un set de instrucțiuni, care suportă toate cele mai recente microprocesoare. Ie cea mai bună performanță, putem realiza doar dacă vom specifica în mod clar microprocesor. la care sarcina va fi executat.

Registrele și RAM

Timp de acces la registrele de cel mai mic, astfel încât numărul de registre disponibile afectează performanța microprocesorului.

Registrele de deplasare (Registrul deversând) - din cauza numărului insuficient înregistrează o mare schimb între registrele și stiva de aplicare.

Odată cu creșterea performanței procesorului problemă asociată cu faptul că viteza de acces la memoria externă a devenit rata de calcul mai mic.

Există două specificații pentru a descrie proprietățile memoriei:

  • Timpul de răspuns (latență) - numărul de cicluri de procesor necesare pentru a transfera date de la unitatea de memorie.
  • Lățime de bandă (lățimea de bandă) - numărul de elemente de date care pot fi trimise la procesorul din memorie într-un singur ciclu.

Două strategii posibile pentru a accelera reducerea bystrodeystviya- în timp de răspuns sau de preluare în avans memoria dorită.

Registre și RAM.

Următoarea parte a memoriei - aceasta este o memorie comună. Odată cu creșterea productivității de procesoare, a devenit clar că cel mai gâtuire de performanță este accesul la RAM. Pentru a ajunge la RAM, aveți nevoie de o sută sau chiar două sute de cicluri de procesor. Asta este, cere o anumită locație de memorie în memorie, vom aștepta două sute de cicluri, iar procesorul este inactiv.

Există două specificații pentru a descrie proprietățile de memorie - acest lucru este timpul de răspuns, adică numărul de cicluri de procesor necesare pentru a transfera date de la unitatea de memorie și capacitate - cât de multe elemente de date pot fi trimise la procesorul din memorie într-un singur ciclu. Confruntați cu o problemă, avem o strangulare este accesul la memorie, putem rezolva această problemă în două moduri - fie o scădere a timpului de răspuns, sau nu poate prelua în avans memoria dorită. Aceasta este, în acest moment apreciem unele variabile interesante, dar noi știm că va avea nevoie în curând noi, și deja ne-am solicitat.

Memoria cache-ul este utilizat pentru a reduce timpul de acces la date.