Estratto del documento

Calcolatori elettronici – ARM (Advanced RISC Machine)

I seguenti appunti seguono il modello del corso di Calcolatori Elettronici T della laurea triennale in Ingegneria Informatica dell'università di Bologna. La struttura è volutamente a forma di domande poiché ciò permette una maggiore focalizzazione sui contenuti e dà una maggiore idea su come gli argomenti potrebbero essere chiesti all'esame.

Argomenti trattati

In primo luogo, in questo documento viene trattato il processore ARM e in particolare i seguenti principali argomenti:

  • Introduzione ad ARM
  • I vantaggi
  • Caratteristiche dell'architettura ARM
  • Esecuzione condizionale
  • Differenze con il DLX
  • Registri ARM visibili e duplicati
  • Modalità privilegiate
  • Warning e ingresso nelle modalità privilegiate
  • Il concetto di Eccezione nei processori ARM
  • Gestione delle Eccezioni
  • Interruzioni annidate: Un caso di studio
  • Modalità operative ARM
  • Il CPSR
  • La memoria ARM
  • L'operazione STORE in ARM
  • Come è fatto il processore ARM
  • Auto indexing
  • Il Clock nell'ARM
  • Il microcodice

Il tutto è trattato sotto forma di 30 domande circa. In secondo luogo viene trattato molto brevemente il protocollo di handshake (2 domande).

Introduzione ad ARM

L'architettura ARM (Advanced RISC Machine) indica una famiglia di processori RISC a 32 bit sviluppata da ARM Holdings e utilizzata in una moltitudine di sistemi embedded, ovvero quei sistemi elettronici progettati appositamente per una determinata applicazione (special purpose). Il modello di business della società non prevede la produzione delle proprie CPU, ma prevede la vendita di licenze ad altre aziende, le quali potranno così realizzare CPU basate su core ARM.

Vantaggi del processore ARM

1) Qual è uno dei vantaggi del processore ARM?
Uno dei vantaggi del processore ARM è che il consumo di potenza è molto ridotto. Il Core di ARM è infatti costituito da circa 35,000 transistor con un consumo di potenza inferiore ai 100 mW. Consideriamo che un'architettura Intel può averne milioni e può arrivare a consumare 30/40W.

Caratteristiche dell'architettura ARM

2) Quali sono le caratteristiche dell'architettura ARM?
L'architettura ARM è un'architettura RISC pipelined a 32 bit LOAD/STORE a elevate prestazioni e consumi ridotti. L'ARM si è ispirato fortemente al DLX e come quest'ultimo ha optato per la lunghezza fissa delle istruzioni posta a 32 bit. A differenza del DLX però esiste anche una modalità definita THUMB che permette di compattare le istruzioni da 32 bit a 16 bit, dimezzando così le dimensioni del codice e permettendo, grazie all'architettura a 32 bit, di caricare due istruzioni con una sola lettura. Il Core ARM base è espandibile mediante coprocessori (es. Memory Protection Unit (MPU), ovvero un modulo di protezione della memoria, Memory Management Unit (MMU), Floating Point Unit (FPU), etc). L'ARM introduce inoltre alcune nuove caratteristiche come ad esempio l'esecuzione condizionale.

Esecuzione condizionale

3) Cosa intendiamo con esecuzione condizionale?
Con esecuzione condizionale intendiamo che qualsiasi istruzione a runtime può essere eseguita o meno in base all'esito delle istruzioni precedenti. Vi sono infatti istruzioni che prevedono, prima che vengano eseguite, un controllo di un determinato flag nel registro di stato CPSR. A seconda del fatto che tale flag sia asserito o meno viene deciso se eseguire l'istruzione o se passare oltre.

3bis) Quali sono le istruzioni che vanno a modificare i flag del registro di stato CPSR?
Le istruzioni che modificano i flag del registro di stato CPSR sono:

  • Istruzioni di confronto
  • Qualsiasi istruzione di elaborazione se termina con S (SET CONDITION)

Modalità THUMB

4) Cosa intendiamo con modalità THUMB?
La modalità THUMB permette di compattare le istruzioni da 32 bit a 16 bit, dimezzando così le dimensioni del codice e permettendo, grazie all'architettura a 32 bit, di caricare due istruzioni con una sola lettura.

Caratteristiche rifiutate rispetto al DLX

5) Cosa ha rifiutato tra le caratteristiche del DLX?
È importante osservare che alcune caratteristiche RISC, e quindi anche appartenenti al DLX, sono state rifiutate. Ad esempio:

  • Non vi è un'unica modalità di indirizzamento
  • Non c'è il delayed-branch, scelta vincente quando si hanno più pipeline

Caratteristiche del core ARM 7TDMI

6) Quali sono le caratteristiche del core ARM studiato, l'ARM 7TDMI?
L'ARM 7TDMI è un processore con pipeline a 3 stadi con frequenza massima 100MHz e con consumi inferiori ai 100mW. La stessa famiglia esiste anche con pipeline a 5 stadi.

6bis) Qual è il significato della sigla ARM 7TDMI?
I caratteri della sigla stanno ad indicare:

  • 7: Famiglia ARM 7, architettura v4t
  • T: Supporta set di istruzioni compatto (THUMB)
  • D: Oltre al core base dispone di un modulo per il DEBUG
  • M: Dispone di un moltiplicatore migliore rispetto a quello delle versioni precedenti
  • I: Dispone di un ulteriore modulo per il DEBUG e per i Breakpoint (EmbeddedICE macrocell)
  • S: Sta per sintetizzabile. L'ARM ti ha dato il codice VHDL

Registri visibili al programmatore in modalità usermode

7) Quali sono i registri visibili al programmatore in modalità usermode?
I registri visibili dal programmatore in user mode sono: R0 .. R15. In particolare si ha che:

  • R15 è il program counter PC
  • R13 è lo stack-pointer, ovvero il puntatore all'area di stack (se si usa lo stack)

Vi è poi il registro CPSR che costituisce il registro di stato. Osserviamo che a differenza del DLX, R15, ovvero PC, è accessibile al programmatore.

Importante: Alcuni di questi registri sono duplicati per fornire supporto alle modalità privilegiate (_exc).

Registri duplicati per supportare le modalità privilegiate

8) Quali sono i registri che vengono duplicati per supportare le modalità privilegiate?
Si ha che ogni modalità privilegiata duplica:

  • R13 (stack pointer)
  • R14 dove copia il PC, ovvero R15 – R14 R15
  • Il registro di stato CPSR, che diventa SPSR.

Osserviamo dunque che ogni modalità di default dispone di un proprio stack non condiviso.

Importante: Per la modalità Fiq vengono duplicati anche i registri da R12 a R8. Infatti Fiq è l'acronimo di Fast Interrupt e rappresenta un'interruzione critica che deve essere gestita velocemente. Per permettere ciò l'ARM ha pensato di duplicare in questa fase un numero maggiore di registri in supporto alle operazioni.

Utilità delle modalità privilegiate

9) Qual è l'utilità delle modalità privilegiate? O meglio perché si rendono necessarie?
Le modalità privilegiate si rendono necessarie al fine di garantire la protezione. In un sistema protetto, come l'ARM, a livello utente (usermode) non è possibile accedere a risorse hardware direttamente.

Anteprima
Vedrai una selezione di 4 pagine su 11
ARM, Calcolatori Elettronici Pag. 1 ARM, Calcolatori Elettronici Pag. 2
Anteprima di 4 pagg. su 11.
Scarica il documento per vederlo tutto.
ARM, Calcolatori Elettronici Pag. 6
Anteprima di 4 pagg. su 11.
Scarica il documento per vederlo tutto.
ARM, Calcolatori Elettronici Pag. 11
1 su 11
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Ingegneria industriale e dell'informazione ING-INF/05 Sistemi di elaborazione delle informazioni

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher pet91 di informazioni apprese con la frequenza delle lezioni di Calcolatori elettronici e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Bologna o del prof Mattoccia Stefano.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community