Ciclu de preluare-executare

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare
Schema unui procesor

În informatică și electronică , termenul ciclu preluare-executare se referă la dinamica generală a funcționării logice a procesoarelor de calculator . În termeni generali, un procesor execută iterativ trei operații: alege ( preluează ) o instrucțiune din memoria primară , după care se întâmplă decodarea ( decodarea ) cu care interpretează instrucțiunea și, în cele din urmă, execută (execută) prin combinarea acesteia cu datele legate de educație în sine. În acest fel procesorul execută secvențial instrucțiuni care dau viață firelor și proceselor , sub supravegherea sistemului de operare prin programator . Viteza extremă de procesare a procesoarelor moderne în comparație cu viteza de acces intrinsecă a memoriei face din memorie un blocaj în faza de proiectare a întregului sistem de calcul.

Operațiune

Pictogramă lupă mgx2.svg Același subiect în detaliu: Execuția (informatică) .

Instrucțiunea încărcată este apoi decodificată și executată . Executarea implică trimiterea de semnale de control către un număr de unități de procesor interne, în funcție de semnificația instrucțiunii de executat. La sfârșitul procesului, Contorul de programe (PC) este incrementat pentru a indica următoarea instrucțiune (dacă este prezentă).

Ciclul procesorului la nivel logic

1. Încărcarea instrucțiunilor din memoria principală (Fetch)

În primul rând, sistemul de operare , după ce a primit comanda din exterior (cum ar fi clic pe o pictogramă sau Enter, etc.), rulează executabilul care se potrivește în interiorul PC - ului (Program Counter) adresa asociată primei celule de memorie care conține instrucțiunea dorită pentru executarea fazelor ulterioare ale programului. CPU încarcă instrucțiunile din memoria principală prin intermediul magistralei de date în registrul de date de memorie ( MDR ). Valoarea din MDR este apoi stocată în Registrul de instrucțiuni (IR), un circuit care deține instrucțiunea temporar pentru a putea fi decodat și executat.

2. Încărcarea datelor din memoria principală (Decodare)

CPU citește adresa din memoria principală dacă instrucțiunea are o adresă indirectă. Apoi încarcă datele necesare din memoria principală pentru a fi apoi procesate și stocate în registre. Dall'Instruction Register, instrucțiunea este decodificată de „ Control Unit (Control Unit). Orice adresă de memorie în care să citească sau să scrie date sunt conținute în registrul MEM, un registru suplimentar dincolo de registrul de instrucțiuni. La sfârșitul fazei de decodare, Contorul de program mărește adresa conținută în memorie cu 1 (de exemplu, merge de la 1000 la 1001), pentru a indica faptul că următoarea instrucțiune va fi conținută în această nouă celulă de memorie.

3. Executați instrucțiunea (Execute)

În acest moment, dacă instrucțiunea decodificată este de natură să aducă datele stocate anterior în IR în registrele ALU, datele pot fi manipulate de acesta din urmă: în general, noile date sunt scrise prin „ scriere distructivă ” într-unul din registrele ALU în sine, ceea ce implică eventuala pierdere a datelor stocate anterior în același registru. Dacă, pe de altă parte, instrucțiunea nu prevede manipularea, ci doar scrierea unei celule sau citirea acesteia, ALU nu este solicitată. Dacă acțiunea este finalizată cu succes, ciclul poate începe din nou.

Ciclul non-incremental

Dacă în faza FDE (Fetch, Decode & Execute) indicarea fiecărei faze de citire și scriere nu este incrementală, computerul nu va avea o indicare de tipul: (PC = PC + 1), dar în cazul unui LOOP tip, va exista un tip "JUMP", adică nu va trece la următoarea instrucțiune, ci va face un "JUMP" (salt) la începutul buclei Fetch, până când ajunge la sfârșitul nLoop cerut de executarea programului.

Faza R / W

În cele trei faze ale FDE, se cunoaște pașii care sunt realizați pentru citirea în MAR și scrierea în MDR:

Citind

- Activați bitul CS [Chip select] (Dacă CS = 1 va fi ales unul, în timp ce toate celelalte vor fi la 0)

- Activați OE [Activare ieșire]

- R / W = 0 [0 înseamnă citire, 1 pentru scriere]

- Scriere activată -

Bibliografie

  • Andrew S. Tanenbaum, Arhitectura computerelor. O abordare structurală. , Amsterdam, Pearson, 2006, ISBN 88-7192-271-9 .

Elemente conexe

Alte proiecte

Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT