1 / 22

Il Processore

Il Processore. Il processore è la componente dell’unità centrale che elabora le informazioni contenute nella memoria principale L’elaborazione avviene eseguedo sequenze di istruzioni ( istruzioni macchina ) Il linguaggio in cui si scrivono queste istruzioni viene chiamato linguaggio macchina

thai
Download Presentation

Il Processore

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Il Processore • Il processore è la componente dell’unità centrale che elabora le informazioni contenute nella memoria principale • L’elaborazione avviene eseguedo sequenze di istruzioni (istruzioni macchina) • Il linguaggio in cui si scrivono queste istruzioni viene chiamato linguaggio macchina • Il ruolo del processore è quindi quello di eseguire programmi in linguaggio macchina

  2. REGISTRI Bus Interno Program Counter (PC) Registro di Stato (PS) Unità di Registro Istruzioni (RI) Controllo Registri Generali (16 o 64) Unità Aritmetico- Registro Indirizzi Memoria (RIM) Logica Registro Dati Memoria (RDM) Registro di Controllo (RC) Componenti di un processore

  3. L’unità di controllo • L’Unità di Controllo (UC) si occupa di coordinare le diverse attività che vengono svolte all’interno del processore • Il processore svolge la sua attività in modo ciclico: ad ogni ciclo corrisponde l’esecuzione di una istruzione macchina • Ad ogni ciclo vengono svolte diverse attività controllate e coordinate dalla UC • si legge dalla memoria principale la prossima istruzione da eseguire • si decodifica l’istruzione letta • si esegue l’istruzione

  4. La frequenza con cui vengono eseguiti i cicli di esecuzione è scandita da una componente detta clock • Ad ogni impulso di clock la UC esegue una istruzione macchina • La velocità di elaborazione di un processore dipende dalla frequenza del suo clock • I processori attuali hanno valori di frequenza di clock che variano tra i 100 MHz e 1000 MHz (tra 100 milioni e 1miliardo di impulsi al secondo)

  5. Il Processore: i registri • Il processore contiene al suo interno un certo numero di registri (unità di memoria estremamente veloci) • Le dimensioni di un registro sono tipicamente quelle di una parola di memoria (ad esempio 4 o 8 byte)

  6. Esistono due tipi di registri: • i registri speciali utilizzati dalla UC per scopi particolari: • controllo dell’esecuzione del programma • scambio di dati con la memoria centrale • i registri generali (registri aritmetici)

  7. I registri speciali • PC: program counter, contiene l’indirizzo della prossima istruzione da eseguire • RI: registro istruzioni, contiene l’istruzione in esecuzione • PS: process state, informazione sullo stato dell’esecuzione e possibili errori • RIM: registro indirizzi di memoria, contiene l’indirizzo di memoria della cella (parola) in esame

  8. RDM: registro dati memoria, contiene il dato da trasferire in o dalla cella di memoria in esame • RC: registro di controllo, contiene il codice dell’istruzione da eseguire

  9. Codice op. Argomento1 Argomento2 100 Formato istruzione (esempio) Gli argomenti possono essere indirizzi

  10. La memoria principale (RAM) 0 cod. op.mem. Ind1/Reg1 Ind2/Reg2 1 2 istr. lettura (load)/scrittura (store) in memoria-registri ... cod. op. reg. Reg1 Reg2 istr. per operazione tra due registri ... + -2 00003752 k numero rappr.con segno, esponente e mantissa

  11. PS:= start PC:= ind. 1a istr. inizio RI:= istr ind. in PC PC:=PC+1 RC:= cod. istr. in RI esegui istruzione no PS = stop? si fine Il ciclo di esecuzione

  12. RC load RIM:= ind. arg. in RI RDM:= cont. ind. in RIM store ... add R1:= R1+R2 jump PC:= ind. arg. in RI ... stop PS:= stop Esecuzione istruzione

  13. Load 3568 R1 Add R1 R2 Store R1 3568 Jump 1000 1000 R1 1001 R2 30 1002 1003 44 3568

  14. Load 3568 R1 Add R1 R2 Store R1 3568 Jump 1000 1000 R1 44 1001 R2 30 1002 1003 44 3568

  15. Load 3568 R1 Add R1 R2 Store R1 3568 Jump 1000 1000 R1 74 1001 R2 30 1002 1003 44 3568

  16. Load 3568 R1 Add R1 R2 Store R1 3568 Jump 1000 1000 R1 74 1001 R2 30 1002 1003 74 3568

  17. Load 3568 R1 Add R1 R2 Store R1 3568 Jump 1000 1000 R1 74 1001 R2 30 1002 1003 74 3568

  18. Esecuzione di (Load, 3568,R1) • PC = 1000 • RC = Load • RIM = 1000 • RDM = (Load, 3568, R1) • RI = (Load, 3568, R1) • PC = 1001 • RC = Load • RIM = 3568 • RDM = 44 • R1 = 44 Lettura dell’istruzione all’indirizzo 1000

  19. Esecuzione di (Add, R1,R2)Supponendo che R2 contenga il numero 30 • PC = 1001 • RC = Load • RIM = 1001 • RDM = (Add, R1,R2) • RI =(Add, R1,R2) • PC = 1002 • RC = Add Viene attivata la ALU • R1 = 44+30 = 74

  20. Esecuzione di (Store, R1, 3568) • PC = 1002 • RC = Load • RIM = 1002 • RDM = (Store, R1, 3568) • RI = (Store, R1, 3568) • PC = 1003 • RC = Store • RIM = 3568 • RDM = 74 • Nella locazione 3568 viene scritto il numero 74

  21. Esecuzione di (Jump 1000) • PC = 1003 • RC = Load • RIM = 1003 • RDM = (Jump 1000) • RI = (Jump 1000) • PC = 1004 • RC = Jump • PC = 1000

  22. L’Unità Aritmetico-Logica • L'Unità Aritmetico-Logica (ALU) è costituita da un insieme di circuiti in grado di svolgere le operazioni di tipo aritmetico e logico • La ALU legge i dati contenuti all'interno dei registri generali, esegue le operazioni e memorizza il risultato in uno dei registri generali • Ad esempio, vi sono circuiti in grado di eseguire la somma di due numeri binari contenuti in due registri e di depositare il risultato in un registro, circuiti in grado di eseguire il confronto tra due numeri • In alcuni elaboratori oltre alla ALU si può avere un processore specializzato per effettuare operazioni matematiche particolari (floating point), il coprocessore matematico

More Related