Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Cos'è un calcolatore, Appunti di Architettura Dei Calcolatori

Cos'è un calcolatore eletrronico e come è strutturato. Architettura ed Organizzazione di un calcolatore.

Tipologia: Appunti

2022/2023

In vendita dal 04/07/2023

demetrio-angeloni
demetrio-angeloni 🇮🇹

3

(1)

11 documenti

1 / 5

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Calcolatore
Il calcolatore (computer) può essere visto come una macchina a livelli, da intendere
come un insieme stratificato di macchine virtuali. Generalmente un calcolatore
moderno viene suddiviso in 7 livelli di macchine virtuali.
Ogni livello fornisce una serie di funzionalità e viene realizzata a partire da una
macchina virtuale sottostante; quindi, vi è una sorta di dipendenza tra loro in modo da
“fattorizzare” il lavoro svolto dalle componenti dei vari livelli. Ad esempio, molti
sistemi operativi usano lo stesso hardware (Livello MV0) oppure molti linguaggi di
programmazione sono usati sullo stesso sistema operativo.
Un calcolatore elettronico è un sistema complesso costituito da tanti moduli e
sottomoduli, che costituiscono diversi livelli di astrazione. Questi moduli vengono
analizzati attraverso un approccio “top-down”.
Un calcolatore è contraddistinto dalla sua architettura ed organizzazione. Per
architettura si intendono tutti gli aspetti di un calcolatore che sono “visibili” al
programmatore (lato software), mentre per organizzazione tutte le unità funzionali ed
interconnessioni che realizzano l’architettura (lato hardware), ad esempio un aspetto
architettonico può essere la disponibilità di una certa istruzione sul calcolatore, mentre
per il lato organizzativo, come quella certa istruzione viene implementata ed eseguita
nel calcolatore.
Delle modifiche sull’organizzazione possono avere serie ripercussioni sull’architettura
del calcolatore.
Nella gerarchia dei livelli precedentemente descritta, i primi due rappresentano
l’organizzazione del calcolatore, mentre gli altri cinque la parte di architettura.
CPU
Nel corso del tempo si sta cercando sempre di più di migliorare delle componenti
hardware del nostro calcolatore, in particolare della CPU e della memoria interna.
La CPU (Unità centrale di elaborazione) nell’architettura di von Neumann di un
calcolatore, rappresenta la componente/risorsa hardware che si occupa delle
funzionalità logiche di elaborazione principali di un computer.
pf3
pf4
pf5

Anteprima parziale del testo

Scarica Cos'è un calcolatore e più Appunti in PDF di Architettura Dei Calcolatori solo su Docsity!

Calcolatore

Il calcolatore (computer) può essere visto come una macchina a livelli, da intendere come un insieme stratificato di macchine virtuali. Generalmente un calcolatore moderno viene suddiviso in 7 livelli di macchine virtuali. Ogni livello fornisce una serie di funzionalità e viene realizzata a partire da una macchina virtuale sottostante; quindi, vi è una sorta di dipendenza tra loro in modo da “fattorizzare” il lavoro svolto dalle componenti dei vari livelli. Ad esempio, molti sistemi operativi usano lo stesso hardware (Livello MV0) oppure molti linguaggi di programmazione sono usati sullo stesso sistema operativo. Un calcolatore elettronico è un sistema complesso costituito da tanti moduli e sottomoduli, che costituiscono diversi livelli di astrazione. Questi moduli vengono analizzati attraverso un approccio “top-down”. Un calcolatore è contraddistinto dalla sua architettura ed organizzazione. Per architettura si intendono tutti gli aspetti di un calcolatore che sono “visibili” al programmatore (lato software), mentre per organizzazione tutte le unità funzionali ed interconnessioni che realizzano l’architettura (lato hardware), ad esempio un aspetto architettonico può essere la disponibilità di una certa istruzione sul calcolatore, mentre per il lato organizzativo, come quella certa istruzione viene implementata ed eseguita nel calcolatore. Delle modifiche sull’organizzazione possono avere serie ripercussioni sull’architettura del calcolatore. Nella gerarchia dei livelli precedentemente descritta, i primi due rappresentano l’organizzazione del calcolatore, mentre gli altri cinque la parte di architettura.

CPU

Nel corso del tempo si sta cercando sempre di più di migliorare delle componenti hardware del nostro calcolatore, in particolare della CPU e della memoria interna. La CPU (Unità centrale di elaborazione) nell’architettura di von Neumann di un calcolatore, rappresenta la componente/risorsa hardware che si occupa delle funzionalità logiche di elaborazione principali di un computer.

Organizzazione di una CPU con altri dispositivi di I/O

Componenti CPU

La CU (Unità di controllo) è una componente della CPU che ha il compito di coordinare tutte le azioni necessarie per l’esecuzione di un’istruzione o un insieme di esse, permettendo alla CPU di comunicare con le altre componenti esterne ed interne ad essa. L’ALU (Unità aritmetico-logica) è una tipologia di processore digitale, presente nella CPU, predisposto all’esecuzione di operazioni aritmetico-logiche. Nella CPU sono presenti dei registri che contengono informazioni sullo stato attuale della CPU, ad esempio vi è il PC (Program Counter) che contiene la prossima istruzione che la CPU dovrà eseguire, che verrà in seguito prelevata dalla CU, MAR (Memory address register), MDR (Memory data register), inoltre vi è il registro di flag (Program Status Word), costituito da 16 bit, che rappresentano vari stati e funzioni nella CPU. La CPU è un circuito digitale sincrono, il suo stato è regolato da un segnale di sincronismo, detto clock, che ne determina di conseguenza la velocità operativa; quindi il tempo di esecuzione di un'istruzione si misura in cicli di clock, cioè in quanti impulsi di clock sono necessari affinché la CPU la completi. Ciclo di elaborazione di un’istruzione:

  1. Instruction Fetch: fase di acquisizione dell’istruzione nella memoria, presente all’indirizzo logico contenuto nel PC;
  2. Instruction Decode: decodifica dell’istruzione e reperimento di eventuali operandi aggiuntivi per il suo completamento;
  3. Execute: fase di esecuzione dell’istruzione, in seguito verrà prelevata una nuova istruzione dal PC;
  4. Memory: attivazione della memoria (solo per certe istruzioni);
  5. Write Back: scrittura del risultato dell’istruzione nel registro opportuno;

CPI (Clock per instruction): Possiamo dedurre che: Tempo medio/istruzione: T clock: In sintesi: T (tempo) = 1 / f (frequenza) MIPS (Millions Instructions per second): unità di misura della frequenza di esecuzione delle istruzioni effettuata da un microprocessore. Il MIPS è un indicatore che dipende dall’insieme delle istruzioni; quindi, è difficile confrontare computer con diversi insiemi di istruzioni, il MIPS varia a seconda del programma considerato ed inoltre può variare in modo inversamente proporzionale alle prestazioni. Legge di Amdahl

Questa legge afferma che: “Il miglioramento delle prestazioni di un sistema che si può ottenere ottimizzando una certa parte del sistema è limitato dalla frazione di tempo in cui tale parte è effettivamente utilizzata”, in sintesi vuole dire che: ”Rendi veloce il caso più frequente”. Questa legge viene usata nell’informatica parallela per predire l’aumento massimo teorico di velocità che si ottiene usando più processori. Un algoritmo decide l’aumento di velocità, non il numero di processori, prima o poi si raggiungerà un punto in cui non si potrà parallelizzare ulteriormente l’algoritmo. FM : La frazione di tempo di calcolo della macchina originale che può essere modificata per avvantaggiarsi dei miglioramenti, quando FM è piccolo, l’utilizzo di processori paralleli ha un effetto ridotto. SM: Il fattore di aumento di velocità dovuto al miglioramento, rispetto alla velocità originale. Quando SM tende ad infinito, l’aumento di velocità è limitato da 1/(1-P) e i vantaggi diminuiscono al crescere del numero di processori Legge di Amdahl: Se l’incremento di costo per migliorare le prestazioni di un sistema è maggiore del miglioramento delle prestazioni (indicato dallo Speed-up), allora la modifica non migliora il rapporto costo/prestazioni. Se un miglioramento è utilizzabile solo per una frazione del tempo di esecuzione (FM), allora non è possibile accelerare l’esecuzione più del reciproco di (1 - FM) : Lo speed-up rappresenta il miglioramento delle prestazioni di un sistema, rispetto alla sua configurazione precedente. Se ci sono più fattori di speed-up, la formula sarà: