L architettura Intel

Documenti analoghi
Assembly. Modello x86

Famiglia dei processori INTEL

Il set istruzioni di MIPS Modalità di indirizzamento. Proff. A. Borghese, F. Pedersini

L insieme delle istruzioni (6)

Linguaggio Assembler Intel -cenni - Calcolatori Elettronici B a.a. 2005/2006 Massimiliano Giacomin

Istruzioni di trasferimento dati

Architettura di una CPU

Architettura degli Elaboratori

Sistemi Operativi. Introduzione all architettura IA-32 Lez. 16. Corso: Sistemi Operativi Danilo Bruschi A.A. 2010/2011

Architettura degli Elaboratori

Tutta la famiglia dei processori Intel (x86) si basa ed e' compatibile con il primo processore di questo tipo: l'8086.

Richiami sull architettura del processore MIPS a 32 bit

Linguaggio Assembly e linguaggio macchina

Linguaggio Assembly e linguaggio macchina

Il linguaggio macchina

Linguaggio Assembly e linguaggio macchina

Parte VI. Istruzioni ed indirizzamento

ISA e linguaggio macchina

Assembly (3): le procedure

CPU a ciclo multiplo

Architettura degli Elaboratori

Richiami sull architettura del processore MIPS a 32 bit

Macchina di Riferimento: argomenti

Nel microprocessore 8086 abbiamo una gran quantità di registri

L'architettura del processore MIPS

Linguaggio macchina. Architettura degli Elaboratori e delle Reti. Il linguaggio macchina. Lezione 16. Proff. A. Borghese, F.

Il microprocessore 8086

ISA (Instruction Set Architecture) della CPU MIPS

Questi trasparenti sono una versione estesa di quelli prodotti per il consorzio NETTUNO. 01/04/03 G. Bucci - Calcolatori Elettoronici 1

Linguaggio Assembler Intel 80x86. Calcolatori Elettronici B a.a. 2004/2005 Massimiliano Giacomin

Parte V. Il Livello delle Istruzioni Macchina

Accesso a memoria. Accesso a memoria. Accesso a memoria. Modalità di indirizzamento. Lezione 5 e 6. Architettura degli Elaboratori A.

Il processore Pentium

L unità di controllo di CPU a singolo ciclo

Università degli Studi di Cassino

Corso di Calcolatori Elettronici MIPS: Istruzioni di confronto Istruzioni di controllo Formato delle istruzioni in L.M.

Architettura dei Calcolatori elettronici

Architettura degli elaboratori (A)

CPU a ciclo multiplo

ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).!

Architettura del processore. Modello di calcolatore. Caratteristiche del processore. Caratteristiche del processore. Fondamenti di Informatica

CPU pipeline 4: le CPU moderne

Calcolatori Elettronici A a.a. 2008/2009

Interazione con il DOS e il BIOS

ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE

Il livello architettura e set di istruzioni

Lezione 20. Assembly MIPS: Il set istruzioni, strutture di controllo in Assembly

ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088

Lezione 20. Assembly MIPS: Il set istruzioni, strutture di controllo in Assembly

Hardware di un Computer

Linguaggio assembler e linguaggio macchina (caso di studio: processore MIPS)

Architettura di un calcolatore: Introduzione parte 2

INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Processori per sistemi di controllo

Un altro tipo di indirizzamento. L insieme delle istruzioni (3) Istruz. di somma e scelta con operando (2) Istruzioni di somma e scelta con operando

Cenni ad Assembly Intel

Sottosistemi ed Architetture Memorie

Calcolatori Elettronici Lezione A2 Architettura i8086

Struttura CPU. Struttura e Funzione del Processore. Capitolo 12. Compiti CPU:

Progettazione dell unità di elaborazioni dati e prestazioni. Il processore: unità di elaborazione. I passi per progettare un processore

Le etichette nei programmi. Istruzioni di branch: beq. Istruzioni di branch: bne. Istruzioni di jump: j

Architettura dei sistemi di elaborazione: La CPU: Architettura (parte1)

Scopo della lezione. Analizzare i tipi di macchine Indirizzamento e memorie Tipi di dato

Lezione XII: La gestione delle eccezioni in MINIX

Architettura degli Elaboratori B Introduzione al corso

ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088

Architettura degli Elaboratori Lez. 8 CPU MIPS a 1 colpo di clock. Prof. Andrea Sterbini

ARCHITETTURA DI UN ELABORATORE

Calcolatori Elettronici Prof. Gian Luca Marcialis. Capitolo 4 Unità Centrale di Elaborazione Istruzioni Macchina

La CPU e la Memoria. Sistemi e Tecnologie Informatiche 1. Struttura del computer. Sistemi e Tecnologie Informatiche 2

Sistemi e reti CPU Concetti di base

Assembly. Linguaggio di programmazione corrispondente al linguaggio macchina P.H. Cap. 2.1, 2.2 e App. A. Linguaggio assembly (App.

Architettura hardware

Riassunto. Riassunto. Ciclo fetch&execute. Concetto di programma memorizzato. Istruzioni aritmetiche add, sub, mult, div

CPU pipeline hazards

Architettura dei calcolatori

Il processore. Istituzionii di Informatica -- Rossano Gaeta

Trend di sviluppo delle pipeline

Istruzioni di modifica della sequenza di elaborazione

Il processore: unità di elaborazione

ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088

ARCHITETTURA DI UN ELABORATORE

Corso di Calcolatori Elettronici I Istruzioni macchina ing. Alessandro Cilardo

ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088

Elementi di Architettura

Architettura dei calcolatori e sistemi operativi. Il processore Capitolo 4 P&H

Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina ADD A,B ISTRUZIONE SUCCESSIVA

Convenzioni di chiamata a procedure

SOLUZIONI DELLA PROVA SCRITTA DEL CORSO DI. NUOVO E VECCHIO ORDINAMENTO DIDATTICO 13 Luglio 2004

Istruzioni macchina. Dove sono gli operandi? Ciclo della CPU. Elementi di un istruzione macchina. Rappresentazione delle istruzioni

Processore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa)

L architettura di riferimento

Le procedure. L insieme delle istruzioni (4) Prima della chiamata di una procedura. Le procedure (2) Architetture dei Calcolatori (lettere A-I)

Linguaggio macchina: utilizzo di costanti, metodi di indirizzamento

Architettura del Set di Istruzioni (ISA)

Componenti di un processore

Dal sorgente all eseguibile I programmi Assembly. Prof. Alberto Borghese Dipartimento di Scienze dell Informazione

Capitolo 5 Elementi architetturali di base

Il linguaggio del calcolatore: linguaggio macchina e linguaggio assembly

Architettura dei Calcolatori. Macchina di von Neumann /2. Macchina di von Neumann /1. Architettura dei Calcolatori

Lezione4: MIPS e Istruzioni (1 Parte)

Transcript:

Architettura degli Elaboratori e delle Reti Lezione 33 L architettura Intel Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 33 1/30 Le prime architetture Intel 1978 8086 Estensione del micro-processore 8080 utilizzato per applicazioni industriali. Stessa ISA, ma architettura a 16 bit (registri a 16 bit) Parte dei registri è dedicata a compiti specifici 1980 8087 Coprocessore matematico per 8086. Dedicato a velocizzare le operazioni in virgola mobile. Estensione degli operandi a 10 byte (80bit): Extended Double Precision E il compilatore a poter dichiarare variabili su 10byte Modifica nel modo di gestire gli operandi, prelevabili dallo stack o dai registri Push <operando_1> in stack (esteso a 10byte) Push <operando_2> in stack (esteso a 10byte) Operazione Pop <risultato> Limite nello spazio di indirizzamento: 1 Mbyte (2 20 ) Gestione di memoria ed I/O tramite 3 segnali di controllo: RD, WR, IO/MEM Es. Read Memory: IO/MEM = 0 ; RD = 1 ; WR = 0 L 33 2/30 1

Le architetture Intel avanzate 1982 80286: L architettura diventa a 24 bit. Viene utilizzata una modalità di utilizzo protetta che consente di mappare le pagine di memoria in indirizzi privati. Aggiunta di istruzioni specifiche. 1985 80386: Architettura full 32 bit (dati, indirizzamento e registri a 32 bit) Nuove istruzioni, molto vicino ad un calcolatore con general-purpose registers. Pre-fetching. Paginazione della RAM. 1989-1992 80486 = 80386+80387: Istruzioni per la gestione delle architetture multi-processore. Memoria cache. Architettura pipe-line (singola). Microprogrammazione per l Unità di controllo (FSM). 1992-1995 Pentium, PentiumPro: Pipe-line multiple (architettura superscalare). Doppia CPU. Tecnologia MMX (Multi-media extension, SIMD). Cache primaria e secondaria (separata, con bus dedicato) 1997 Pentium II: Memorie cache a doppio accesso. Cache dei registri di segmento. PentiumPro + MMX. 1999 Pentium III: Internet Streaming Single Instruction Multiple Data extensions (ISSE) Estensione dell architettura MMX ad istruzioni floating-point. L2 cache integrata nella CPU 2001 Pentium 4: Estensione del parallelismo e della superscalarità L 33 3/30 Architettura x86 Architettura CISC Lunghezza istruzioni: 1 17 bytes Operazioni direttamente in memoria Architettura condizionata dalla storia necessità di compatibilità verso il basso Real mode/protected mode/virtual 8086 Mode Registri: not general-purpose register ogni registro è progettato per un uso specifico dal 80386 in poi (IA-32) si definiscono 8 GP registers, ma non veri GPR come in MIPS L 33 4/30 2

Modi di funzionamento IA-32 Modalità reale (Real mode) Modalità compatibile DOS Max memoria indirizzabile: 1 MByte 2 20 modo attivo all accensione (power-on) Modalità protetta (Protected mode) modalità nativa di IA-32 Memoria indirizzabile: 4 GByte 2 32 Memoria protetta: evita corruzione memoria da parte di altri programmi Memoria virtuale: permette ad un programma di disporre di più memoria di quella fisica disponibile Modalità 8086 virtuale (Virtual-8086 mode) Real mode simulato all interno del Protected Mode Esecuzione di programmi DOS in multitasking con altri programmi che girano in Protected Mode. L 33 5/30 Indirizzamento in modalità protetta Interleaving dei segmenti: Spazio di indirizzamento di 1 Mbyte suddiviso in 16 segmenti di 64 kbyte Modalità reale (16 + 4 address bit) Indirizzo = 16 * Segmento + Offset In tal modo posso indirizzare 64KB x 16 = 1 MByte di MP Modalità Virtual 8086: Indirizzo e offset sono separati. Modalità protetta (32 address bit) Spazio di indirizzamento: 32 bit SALTO: indirizzo = composizione registri CS e IP CS = 0x80B8, IP = 0x019D indirizzo istruz. successiva: 0x 80B8 019D L 33 6/30 3

L Intel 80486 Integrazione in un solo chip di CPU, Coprocessore e Cache controller. L 33 7/30 L Intel 80486 Struttura interna Interfacciamento con il resto della macchina tramite la porta verso il bus (bus port). Sul bus vengono inviati i dati, gli indirizzi ed i segnali di controllo. Caratteristiche: Pipeline a 5 stadi Bus interno a 64 bit Cache di 8 kbyte (modalità: write-through) Control unit micro-programmata L 33 8/30 4

INTEL Pentium L 33 9/30 Pentium struttura interna Architettura 32/64 bit Bus dati: 64 bit Bus indirizzi / registri: 32 bit 2 pre-fetch queues: pipelines u, v pipeline u si interfaccia con la pipeline floating point. APIC: Advanced Programmable Interrupt Controller Cache collegate al bus del processore Unità di controllo microprogrammata L 33 10/30 5

Sviluppi futuri: IA-64 Architettura a 64 bit Progetto MERCED Primo esemplare: Intel ITANIUM Massiccio aumento delle risorse 128 registri GP, 128 registri FP 16 GP-EU + 16 FP-EU (EU: Execution Unit) Esecuzione parallela di istruzioni, con parallelismo esplicito si specifica a livello del codice Assembly se le istruzioni possono essere eseguite contemporaneamente o sequenzialmente Compatibilità con IA-32 Macchina molto complessa progetto non ancora terminato Progetto ITANIUM venduto alla Digital In corso di sviluppo: ITANIUM 2 L 33 11/30 I registri dell architettura IA-32 A partire dal 80386: IA-32 Caratteristiche: 8 registri general-purpose a 32 bit istruzioni per accedere ai primi 8 / 16 bit compatibilità con 8086 non sono poi così general purpose I registri di segmento sono rimasti a 16 bit usati come registri base L 33 12/30 6

Registri IA-32 General Purpose Registers General Data Registers EAX: accumulatore (ottimizzato per op. aritmetico-logiche) EBX: base register (registro base nel segmento dati) ECX: counter (ottimizzato per i loops) EDX: data register (GP) General Address Registers EIP: instruction pointer EBP: stack base pointer (base address dello stack) ESP: stack pointer ESI: source index (ottimizzato per op. su stringhe) EDI: destination index (ottimizzato per op. su stringhe) Floating-point Stack registers : 80 bit, accessibili come LIFO (stack) SIMD Registers MMX, SSE, 3DNow! L 33 13/30 IA-32: registri di Segmento Nome CS DS (EBX) SS (EBP) ES, FS, GS Descrizione Code Segment Data Segment Stack Segment Extra Segments Utilizzo Contiene l indirizzo base dei (dati) ed istruzioni ad accesso immediato. Le istruzioni del segmento sono indirizzate tramite il registro EIP (Extended Instruction Pointer). Per modificare CS occorre una chiamata a procedura far o una far jump oppure un interrupt (int). In modo protetto viene verificato se il nuovo segmento può essere utilizzato dal task. Contiene l indirizzo base del segmento dati del programma. Molte istruzioni quali la mov utilizzano questo segmento. E il segmento in cui sono contenuti i dati di un task. Quasi del tutto simile allo stack del MIPS. Cresce verso il basso. Contiene i dati locali delle procedure e gli argomenti di chiamata. Contiene anche gli operandi per le operazioni aritmetiche di tipo accumulatore. Principalmente utilizzati per operazioni su stringhe. Possono essere utilizzati in sostituzione di DS per accedere a dati al di fuori di DS. Il DOS ed il BIOS utilizzano spesso ES come buffer per le loro chiamate. Si sovrappongono ai registri a 32 bit (e.g. SS [BP, SS] = EBP) L 33 14/30 7

IA-32: registri General Data Nome simbolico 32 bit 16 bit EAX AX 8 bit Nome descrittivo Funzioni AH, AL Accumulator Moltiplicazione/Divisione, I/O, shift veloce out 70h, al ;Il contenuto di al viene trasferito alla porta 70h. EBX BX BH, BL Base Register Puntatore all indirizzo base segmento dati mov ecx, [ebx] ;trasferisci in ecx il contenuto all indirizzo 0($ebx) MIPS: lw $ecx, 0($ebx) ECX CX CH, CL Count Register Indice di conteggio (cicli, rotazioni, shift) move ecx, 10h ; load ecx con 10h (=16), valore di inizio conteggio (associato a loop ) start: out 70h, al ; Il contenuto di al viene trasferito alla porta 70h. loop start ;ritorna ad inizio ciclo, il quale verrà ripetuto 16 volte (fino a che ecx = 0) EDX DX DH, DL Data Register Moltiplicazione/Divisione, I/O mul edx ; moltiplica edx con eax (implicito), il risultato è contenuto nella coppia edx:eax (hi:lo). L 33 15/30 IA-32: registri di stack Nome... simbolico 32 bit 16 bit 8 bit ESP SP, EBP BP,SS, Nome descrittivo Stack Pointer Base Pointer Funzioni Stack Pointer Indirizzo base del segmento di Stack (32 bit) Esempio di utilizzo dello stack per passare dati a funzione (Assembly IA 32): push add1 push add2 push add3 ; create the first summand ; (automaticamente ESP viene decrementato) ; create the second summand ; create the third summand addition: proc near push ebp move ebp, esp move eax, [ebp+16] add eax, [ebp+12] add eax, [ebp+8] pop ebp ret ; call near (inside 64k segment, cf. branch) ; salva l indirizzo base per il ritorno ; copia lo StackP nel BaseP (frame di procedura) ; carica sum1 in EAX ; somma in eax sum1 + sum2 ; somma in eax aum1 + sum2 + sum3 ; recupera l indirizzo base precedente ; ritorno al programma chiamante (cf. jr $ra) L 33 16/30 8

IA-32: registri di gestione stringhe Nome simbolico 32 bit 16 bit 8 bit ESI SI x, x EDI DI x,x Nome descrittivo Source Index Destination Index Funzioni Indice per la stringa sorgente o indice di caratteri/array Indice per la stringa destinazione o indice di caratteri/array Esempio: output della stringa: abcdefghijabcdefghij su monitor alfanumerico: string db 20 dup ( abcdefghijabcdefghij ) ; definizione della stringa mov eax, @data mov ds, eax mov eax, b800h cld mov ecx, 5 mov esi, string mov edi, 00h movsw ; carica indirizzo (di inizio) dei dati in EAX ; impostare DS a questo segmento dati ; carica indirizzo del segmento RAM video in EAX ; sequenza ascendente ; trasferisce 5 parole di 4 byte ciascuna ; carica indirizzo stringa in ESI (stringa sorgente) ; carica indirizzo del primo carattere ; in alto a sinistra in EDI (stringa destinazione) ; trasferisce 5 parole (20 caratteri) L 33 17/30 IA-32 operazioni logico-aritmetiche Tipo operando 1 Memoria Memoria Tipo operando 2 Immediato Memoria Memoria Tipo risultato Memoria Memoria Architettura ad accumulatore: uno dei registri (memoria) deve fungere sia da operando che da registro destinazione. MIPS permette di avere operandi e risultato in registri differenti Uno od entrambi gli operandi può provenire direttamente dalla memoria Nel MIPS: solo dai registri Gli operandi immediati possono arrivare a 32 bit, gli altri ad 80 bit L 33 18/30 9

Modalità di indirizzamento dati Modo Diretto (registro) Reg. Addressing Register Indirect Base + offset (8 32bit) Base + scale*offset Base + scale*offset + displacement Descrizione Indirizz. tramite registro (l operando è in un registro) Base register Base + offset addressing (INTEL displacement) Ind = base + offset*scale Scaling Factor displacement Restrizioni No ESP e EBP No ESP e EBP No ESP e EBP No ESP e EBP No ESP e EBP Codice MIPS add $s0,$s1,$0 lw $s0, 0($s1) lw $s0, 100($s1) Codice IA-32 move eax, ebx move eax, [ebx] move eax, array[100] move eax, [esi*4] move eax, [esi*4 + 2] L 33 19/30 Modalità di indirizzamento istruzioni immediate Modo Descrizione Codice MIPS Codice INTEL Indirizzam. immediato L operando è in una parte dell istruzione li $s0, 0x6a02H move eax,0x6a02h PC_relative addressing Indirizzamento relativo al Program Counter bne $s0,$s1,label jnz 0x01A5 Psudodirect addressing MIPS: indirizzo ottenuto cambiando i 26 bit dell istruzione con i 28 LSB di PC (i 2 LSB sono 00) INTEL: modifica del registro Code Segment j label move cs, 0x87eeae move eip 0x000000 L 33 20/30 10

EFLAG I risultati notevoli vengono salvati in questo registro Le istruzioni di branch si riferiscono sempre a EFLAG Carry, zero, overflow, segno, parità, MIPS: lw $s0, 0($s1) beq $s0, $zero, lbl IA-32: move eax, [ebx] jz lbl L 33 21/30 Operazioni di I/O IA-32 prevede istruzioni dedicate per I/O: Dati presenti nel registro accumulatore (EAX). Distinzione tra accesso a memoria ed input/output mediante il segnale di controllo: M/IO Lettura/scrittura avviene verso il Device Controller, mediante i segnali di controllo: RD, WR Gli stessi usati per l accesso a memoria Spazio di indirizzamento su 16 bit 64k porte da 1 byte (32k porte da 2 byte; 16k porte da 4 byte) Spazio di indirizzamento duplicato: 16 bit (+4 bit di offset) per la RAM e 16 bit per le periferiche nell 8086. Le periferiche sono viste mediante le porte di I/O 8086: I/O : 2 16 porte di I/O 8086: MEM : 2 16(+4) = 2 20 celle di memoria (words) L 33 22/30 11

IA-32 Instruction Set Istruzioni general purpose Istruzioni per lo spostamento dei dati push, pop, utilizzo dello stack e della memoria dati Istruzioni aritmetiche logiche, confronto e operazioni Istruzioni di controllo del flusso basati sui flag, allineamento al byte Istruzioni della gestione delle stringhe Istruzioni di I/O Istruzioni floating point x87 funzioni trigonometriche, potenze di 2 (2 x, log 2 x) Istruzioni SIMD MMX, SSE (SSE2, SSE3), 3DNow! (IA-32 by AMD) Istruzioni di sistema Cambio di modo, Halt, Reset, L 33 23/30 IA-32 Instruction Set L 33 24/30 12

IA-32 Instruction Set: esempi JE: jump equal near (±128 byte) JMP: jump (near uso CS; far uso EIP) CALL: jump; SP=SP 4 (MIPS: jal) MOVW: (MIPS: lw) PUSH,POP: aggiornamento implicito SP TEST: Carica nei flag i risultati di $EDX AND 42 MOVSL: Sposta 4 byte e incrementa EDI ed ESI (stringhe/aree dati) L 33 25/30 Codifica delle istruzioni Molti formati ampiezza: 1 15 byte Codice operativo su 1 o 2 byte CLC (Clear Carry: 1 byte, non ha operandi) mov EAX, ind1:[ind2 + ind3*4 +2] richiede 17 byte w specifica se lavora sul byte o sulla parola a 32 bit (word) d specifica la direzione del trasferimento Post_byte (r/m) specifica la modalità di indirizzamento L 33 26/30 13

Codifica istruzioni campi reg e w Campo reg: la sua interpretazione dipende da w: w=0 registri a 8 bit w=1 registri a 16 o 32 bit dipende dall architettura campo reg 0 w=0 8 bit AL w=1 16 bit 32 bit AX EAX determina la lunghezza dell istruzione ADD AL, #1 16 bit ADD EAX, #1 40 bit 1 2 3 4 CL DL BL AH CX DX BX SP ECX EDX EBX ESP 4 ADD 4 ADD 3 1 8 000 0 0000 0001 3 1 32 000 1 00 01 5 6 7 CH DH BH BP SI DI EBP ESI EDI L 33 27/30 Codifica istruzioni campi r/m e mod r/m: (3 bit) seleziona il registro usato come registro base mod: (2 bit) seleziona la modalità di indirizzamento (offset, offset+displ.,...) r/m = 0 Indirizzo = Base (IA-32) o Reg + Segment Reg (16 bit) r/m = 1 Indirizzo = Base + displacement 8 bit r/m = 2 Indirizzo = Base + displacement 16/32 bit r/m = 3 Indirizzo = Base selezionato dal campo reg Eccezioni r/m = 4; mod=0,1,2 Seleziona la modalità scaled index r/m = 5; mod=1,2 Seleziona EBP + spiazzamento (32 bit) r/m = 6; mod=1,2 Seleziona BP + spiazzamento (16 bit) L 33 28/30 14

Codifica istruzioni: osservazioni Architettura CISC Lunghezza variabile sia delle istruzioni che dell OpCode La lunghezza dell istruzione dipende dal contenuto di alcuni campi dell istruzione stessa mod, r/m, reg, w Devo iniziare la decodifica dell istruzione per sapere quant è lunga prima di terminare la fase di fetch Architettura complessa prezzo da pagare per mantenere la compatibilità verso il basso (8, 16, 32 bit) L 33 29/30 IA-32: Ciclo di esecuzione di un istruzione Fase di fetch: lettura dell istruzione mediante la coppia: CS: IP dal segmento codice + instruction counter Quindi: IP IP + #byte_istruzione Pre-fetch Queue (Coda di pre-fetch). Streaming dal segmento codice di RAM in un buffer fino al riempimento. L UC legge il primo byte dell istruzione dalla coda di pre-fetch e trasferisce un certo numero di byte nell IR. Decodifica, Esecuzione. Esecuzione è pipe-line e multi-ciclo Fino a 300 cicli di clock per i task più complessi quali il task switch tramite gate che viene operata in modalità protetta. L 33 30/30 15