Introduzione ad ARM e al processore S3C2440

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Introduzione ad ARM e al processore S3C2440"

Transcript

1 03.a Introduzione ad ARM e al processore S3C2440 C. Fantozzi, A. Gardich (revisione di S. Congiu, M.Moro) Che cosa è ARM? ARM = Advanced RISC Machine 1 ARM Ltd non produce microprocessori: progetta e vende proprietà intellettuale ARM è una architettura: insieme dei registri e delle istruzioni disponibili modi d indirizzamento gestione delle interruzioni Esistono molte versioni dell architettura, e molti processori per versione

2 ARM nella vita quotidiana: esempi 2 Nintendo DSi (un ARM7 e un ARM9) Netgear WGR614 (Marvell ARM9) Apple iphone (ARM11) Molte calcolatrici e palmari Architettura ARM: versioni Sono state definite 7 versioni (da 1 a 7) del set di istruzioni ARM. 3 Per ogni versione esistono varianti, identificate da lettere: T (Thumb: istruzioni da 16 bit) M (Multiply: con prodotto da 64 bit) E (Enhanced: con istruzioni DSP per applicazioni multimediali Le più diffuse nei sistemi embedded portatili (smartphones, Personal Digital Assistants, ) sono le versioni 4 e 5.

3 Architettura ARM: famiglie Le famiglie di processori ARM attualmente più diffuse sono: 4 FAMIGLIA ARM7 ARM9 ARM9E ARM10E XScale ARM11 Cortex VERSIONE CORE ARMv3 ARMv4T ARMv5TE ARMv5TE ARMv5TE ARMv6 ARMv7-x (anche ARMv6-M) La famiglia Cortex Presentata nel 2005, si caratterizza per essere costituita da un insieme di unità funzionali collegabili tra loro Uno specifico processore ne può realizzare un sottoinsieme serie A (application) è quella più completa (computer, smartphone, ecc.) serie R (realtime), floating point opzionale, cache configurabile, MMU più semplice serie M (microcontroller) è quella più semplice, cache assente e MMU opzionale Le diverse configurazioni possono essere a singolo core o multicore Alcune caratteristiche specifiche dell architettura v7 unità NEON per operazioni SIMD su 64 o 128 bit unità floating point con più registri e nuove operazioni set di istruzioni Thumb per accelerare l esecuzione di macchine virtuali (es. JVM) modalità di esecuzione sicura (TrustZone) 5

4 Cortex 6 La famiglia Cortex 7

5 Samsung S3C24xx Application Processors 8 Applicazioni Mobile Computing Portable Network Devices Portable media players Edutainment toys E-book readers Mobile Communication Smartphones Obiettivi di progetto Insieme completo di periferiche on-chip Elevate prestazioni Basso consumo Rapporto prezzo/prestazioni S3C2440: specifiche tecniche 9 Processore RISC a 32 bit Architettura ARMv4T Core ARM 920T; thumb i.s. Memory Management Unit Cache (instruction & data) Nessun HW floating point Funzionalità integrate: ADC a 10 bit, 8 canali; 3 porte seriali; USB host & device; controller LCD, touch screen; Interfacce per sensori CMOS, schede di memoria, audio, ecc. ecc. 14x14 mm 289-pin FBGA (Fine Ball Grid Array) Processo produttivo: 130 nm Frequenza: 533 MHz max Bus memoria: 100 MHz max Tensione di alimentazione 1.2V Consumo: 400 MHz

6 S3C2440: schema a blocchi 10 ARMv4: caratteristiche 11 L architettura ARMv4 è a 32 bit word=32 bit (in memoria allineati ad indirizzi multipli di 4) halfword=16 bit (in memoria allineati ad indirizzi multipli di 2) byte =8 bit (singolarmente indirizzabili in memoria) 2 32 byte di memoria indirizzabili (4GB), ma S3C2440 supporta max 1 GB (8 banchi da 128 MB)

7 ARMv4: caratteristiche RISC 12 L architettura ARMv4 è di tipo RISC Numero elevato di registri (37 in tutto) Istruzioni con lunghezza fissa di 32 bit Le parole di estensione non esistono, Architettura load/store: ad esclusione di load e store, tutte le istruzioni operano su registri Modi di indirizzamento semplici: tutti gli indirizzi di memoria nelle istruzioni load/store sono specificati da informazioni contenute in registri o nei campi dell istruzione ARMv4: altre caratteristiche 13 Controllo sia dell ALU sia dello shifter, con tutte le istruzioni di elaborazione-dati Modalità di indirizzamento auto-incrementanti e auto-decrementanti (efficienza nei loop) Esecuzione condizionata specificabile in tutte le istruzioni Istruzioni di load e store multipli (più registri) Shift di n posizioni in un solo ciclo di clock Istruzioni a 3 operandi

8 Modi operativi User (USR): modo utente FIQ (FIQ): gestione veloce interruzioni IRQ (IRQ): gestione interruzioni Supervisor (SVC): modo protetto Abort (ABT): per gestione memoria Undefined (UND): emulaz. coprocessori System (SYS): usa risorse di USR senza limitazioni d accesso 14 I registri: panoramica 15

9 I registri R0-R13: registri di uso generale SP: stack pointer (R13) LR: link register (R14) Memorizza l indirizzo di ritorno da subroutine PC: program counter (R15) Punta all istruzione da eseguire 16 CPSR: Current Program Status Register Contiene i bit di stato SPSR: Saved Program Status Register Copia di CPSR prima del cambio di modo CPSR: bit utili Bit 0 4 (M): modo operativo (7 attualmente previsti) Bit 7 (I): interruzioni on/off (0/1) Bit 28 (V): indica errore di overflow (aritmetica con segno in complemento a 2) Bit 29 (C): indica il carry o riporto (overflow nell aritmetica senza segno) Bit 30 (Z): indica un risultato zero Bit 31 (N): indica un risultato negativo (aritmetica con segno in complemento a 2) Altri bit: Bit 5 (T): Thumb instruction set off/on (0/1) Bit 6 (F): fast IRQ on/off (0/1) Bit 7 (I): IRQ on/off (0/1) 17 Riservati

10 Big o Little Endian? 18 S3C2440 supporta tutte e 2 le modalità Il comportamento predefinito è little endian, secondo specifiche ARM Operazioni di I/O L I/O è di tipo memory mapped: i registri delle periferiche si trovano in locazioni di memoria predefinite 19 2 tipi di interruzioni: Normale Fast (vengono salvati meno registri) Hardware delle periferiche con accesso diretto alla memoria (DMA)

11 Classificazione delle istruzioni Accesso alla memoria Load / store tra memoria e registri 20 Elaborazione di dati (data processing) Operazioni di movimento tra registri Operazioni aritmetico-logiche Operazioni di confronto Controllo di flusso Branch (= salto ) con o senza condizione Le istruzioni ARMv4 prevede: - istruzioni di elaborazione dati a 3 operandi: uno (registro) per il risultato, due per gli operandi: SUB R2, R0, R2=R0-R1 SUB R2, R0, R1, LSL R2=R0-R1*16 - altre istruzioni a 2 operandi: uno per l op. destinazione, uno per l op. sorgente: MOV R2, R2, ASR R2=R2/4 - altre istruzioni a 1 operando: ad es. le istruzioni di branch: B LAB2 21

12 Modifica dei bit di stato 22 Per default le istruzioni non modificano i bit di stato N,Z,C,V Per modificare i bit di stato si aggiunge il suffisso S al simbolo mnemonico dell istruzione: ADD R2, R0, R1 ADDS R2, R0, non modifica modifica NZCV Non vale per le istruzioni di confronto! Istruzioni con condizione - 1 Aggiungendo specifici suffissi di condizione, l istruzione viene eseguita solo se i bit di condizione soddisfano quanto specificato 23 Esempi: MOVEQ R0, #0 poni R0=0 solo se Z=1 MOVNE R0, #0 esegui se Z=0 MOVGT R0, #0 esegui se Z=0 e N=V MOVLE R0, #0 esegui se Z=1 o N V MOVAL R0, #0 esegui sempre

13 Istruzioni con condizione - 2 Permettono di velocizzare il codice risparmiando salti condizionati mantenendo pieni i pipeline 24 CMP r0, #10 if (a > 10) return 0; MOVGT r0, #0 else return 1 MOVLE r0, #1 Nessun branch misprediction! Lista delle condizioni Estensione mnemonica Significato Flag di condizione Opcode [31:28] EQ Uguali Z= NE Non uguali Z= CS/HS Carry Attivato / Senza segno maggiore o uguale C= CC/LO Carry Disattivato / Senza segno minore C= MI Negativo N= PL Positivo o Zero N= VS Overflow V= VC Non Overflow V= HI Senza segno maggiore C=1 e Z= LS Senza segno minore o uguale C=0 o Z= GE Con segno maggiore o uguale N=V 1010 LT Con segno minore N!=V 1011 GT Con segno maggiore Z=0 e N=V 1100 LE Con segno minore o uguale Z=1 o N!=V 1101 AL Sempre (è il default) NV Mai

14 I modi di indirizzamento Ogni categoria di istruzioni ha i propri: ci sono 4 classi di modi di indirizzamento. 26 RISC: niente indirizzamento assoluto (non usa puntatori in memoria, ma solo nei registri) indirizzamento in memoria (indiretto con registro) solo per le istruzioni LDR (load) e STR (store) Classi di indirizzamento Modo 1: per istruzioni di elaborazione dati ADC, ADD, AND, BIC, CMN, CMP, EOR, MOV, MVN, ORR, RSB, RSC, SBC, SUB, TEQ, TST 27 Modo 2: per Load&Store di word o unsigned byte LDR, LDRB, STR, STRB Modo 3: per L&S di halfword o signed byte LDRH, LDRSB, LDRSH, STRH Modo 4: per L&S di registri multipli LDMxx, STMxx

15 Istruzioni di elaborazione dati 28 3 indirizzi: <opcode>{<cond>}{s} <Rd>, <Rn>, <shifter_operand> <cond>: stabilisce l esecuzione condizionata S: stabilisce se modifica i bit di condizione <Rd>: destinazione <Rn>: primo operando <shifter_operand>: secondo operando esempio: addges R4, R3, R4 R3+R2 Modo 1 (indirizz( indirizz.. per elaboraz.. dati) sintassi: <istruzione3op> Rd, Rn, <shifter_operand> <istruzione2op> Rd, <shifter_operand> <shifter_operand> può essere: un valore immediato #<valore> un registro Rm un registro, dopo scorrimento specificato con: - un valore immediato Rm, <sop> #<shift_imm> - un registro Rm, <sop> Rs gli operatori <sop> disponibili sono: ASR, LSL, LSR, ROR, RRX 29

16 <shifter_operand>: indirizzamento immediato Il campo dell istruzione contiene il valore su cui operare sintassi: #<immediato> 30 esempio: add R3, R3, R3 R bit a disposizione per l operando immediato, con la seguente struttura: 8 bit (bit c) definiscono un valore c (0 c 255); 4 bit (bit r) specificano una rotazione verso destra di 2r posizioni <shifter_operand>: indirizzamento immediato cond opcode S Rn Rd rotate immed_8 31 0x00 c 0xFF 0 r r 30 #<immediato>=c>> rot 2r r c immediato valido: #0x104 (c=0x41, r=15) immediato non valido: #0x102

17 <shifter_operand>: indirizzamento di registro 32 Il valore su cui operare è contenuto in un registro Rm Tale valore può essere shiftato di una quantità: specificata in modo immediato (0..31: 5 bit) specificata da un altro registro (Rs): Rm, LSR #shift_imm oppure Rm, LSR Rs Rm, ASR #shift_imm oppure Rm, ASR Rs Rm, LSL #shift_imm oppure Rm, LSL Rs Rm, ROR #shift_imm oppure Rm, ROR Rs Rm, RRX esempi: add R3, R1, R2, LSL R3 R1+R2*4 add R3, R1, R2, ASR R3 R1+R2/2 R5 <shifter_operand>: indirizzamento di registro cond opcode S Rn Rd shift_imm sop 0 Rm codifica di Rm, <sop> #shift_imm cond opcode S Rn Rd Rs 0 sop 1 Rm codifica di Rm, <sop> Rs <sop>: 00 LSL 01 LSR 10 ASR 11 ROR (RRX = ROR #0)

18 Modo 1: esempi mov R0, R0 0 add R3, R3, R3 R3+1 cmp R7, cc (R7 1000) bic R9, R8, R9 R8 and not 0xff00 mov R2, R2 R0 add R4, R3, R4 R3+R2 mov R2, R0, LSL R2 R0*4 add R9, R5, R5, LSL R9 R5+R5*8 = R5*9 sub R9, R5, R5, ASR R9 R5 R5/8 rsb R9, R5, R5, ASR R9 R5/8 R5 mov R5, R3, R5 R3 ruotato a destra di una posiz. mov R7, R4, ROR R7 R4 ruotato a di R3 posizioni 34 Modo 2 (per Word o unsigned Byte) sintassi: LDR STR{B} Rd, <addressing_mode2> <addressing_mode2> è un indirizzamento di registro con un eventuale: offset immediato offset da registro offset da registro scalato pre-incremento immediato pre-incremento da registro pre-incremento da registro scalato post-incremento immediato post-incremento da registro post-incremento da registro scalato 35

19 Modo 2: nessun offset Corrisponde a quello che nel PD32 è l indirizzamento indiretto con registro. 36 Il valore dell operando è puntato da un registro Rn (cioè Rn contiene l indirizzo dell operando) sintassi: [Rn] esempio: ldr R1, R1 M 32 [R0] Modo 2: offset Offset immediato [Rn, Rd M[Rn ± <offset_12>] 37 Offset da registro [Rn, Rd M[Rn ± Rm] Offset da registro scalato [Rn, ±Rm, <sop> Rd M[Rn ± (Rm <sop> # <shift_imm>)]

20 Modo 2: pre-incremento Pre-incremento immediato [Rn, Rn Rn ± Rd M[Rn] Pre-incremento da registro [Rn, Rn Rn ± Rd M[Rn] Pre-incremento da registro scalato [Rn, ±Rm, <sop> Rn Rn ± (Rm <sop> # Rd M[Rn] 38 Modo 2: post-incremento Post-incremento immediato [Rn], Rd Rn Rn ± <offset_12> Post-incremento da registro [Rn], Rd Rn Rn ± Rm Post-incremento da registro scalato [Rn], ±Rm, <sop> Rd Rn Rn ± (Rm <sop> # <shift_imm>) 39

21 Pre/post post-increm.. con registro scalato L offset contenuto nel registro Rm può essere shiftato di un valore immediato di 5 bit sintassi: Pre-incremento Post-incremento 40 [Rn, ±Rm, LSL #num]! [Rn, ±Rm, LSR #num]! [Rn, ±Rm, ASR #num]! [Rn, ±Rm, ROR #num]! [Rn, ±Rm, RRX]! esempio: ldr R1, [R0], -R2, ASR #2 [Rn], ±Rm, LSL #num [Rn], ±Rm, LSR #num [Rn], ±Rm, ASR #num [Rn], ±Rm, ROR #num [Rn], ±Rm, R1 M 32 [R0]; R0 R0-(R2/4) Indirizzamento auto-relativo Si ottiene usando il registro R15 (PC) nell indirizzamento indiretto con registro: esempi: ldr R1, [R15, -#8] ldr PC, [PC, R0, LSL R1 M 32 PC M 32 [PC+R0*4] 41 Il valore di R15 usato è PC_istruz.+8 o +12 a causa del prefetching Lo shift è specificato tramite un valore immediato: il valore di R15 usato è PC_istruz.+8 Lo shift è specificato tramite un registro: il valore di R15 usato è PC_istruz.+12

22 Modo 2: esempi ldr R2, [R0] ldr R1, [R0,#4] ldr R1, [R0], R2 M 32 R1 M 32 R1 M 32 R0 R ldr PC, [PC, R0, LSL #2]@ PC M 32 [PC+R0*4] strb R7, [R9], M 8 [R9] R7 R9 R9+1 str R5, R0 M 32 [R0] R5 Modo 3 (per HalfWord/signed Byte) sintassi: STR LDR[H] Rd, <addressing_mode3> LDR[SH SB] Rd, <addressing_mode3> <addressing_mode3> può essere: offset immediato offset da registro pre-incremento immediato pre-incremento da registro post-incremento immediato post-incremento da registro differenze rispetto al Modo 2: - non si possono scalare i registri - gli offset immediati sono a soli 8bit 43

23 Modo 2 e modo 3: tabella riassuntiva 44 W LDR Modo 2 STR Modo 2 SH Modo 3 - H Modo 3 Modo 3 SB Modo 3 - B Modo 2 Modo 2 NOTA BENE: non ha senso parlare di STORE per quantità con segno, perché non c è alcuna estensione del segno da effettuare Modo 4 (per load/store multiplo) - 1 sintassi: LDM STM <addressing_mode4> Rn{!}, <registers> <addressing_mode4> può essere: IA increment after start_addr = Rn ; end_addr = Rn + #regs*4-4 IB increment before start_addr = Rn + 4 ; end_addr = Rn + #regs*4 DA decrement after start_addr = Rn - #regs*4 + 4 ; end_addr = Rn DB decrement before start_addr = Rn - #regs*4 ; end_addr = Rn 4 (#regs è il numero di registri indicati in <registers>) 45! provoca l'aggiornamento del registro Rn: al suo contenuto viene sommata o sottratta la quantità #regs*4

24 Modo 4 (per load/store multiplo) - 2 sintassi: LDM STM <addressing_mode4> Rn{!}, <registers> <registers> è la lista di registri da salvare/caricare, racchiusa tra parentesi graffe {} e con gli elementi separati da virgola. esempi: STMDB SP!, salva sullo stack i da R0 a R7 LDMIA SP!, ricarica R0-R7 dall istruzione precedente LDMDA R9, carica i registri R1, da M 32 [R9-12].. M 32 [R9] Fine 03.a Introduzione ad ARM e al processore S3C2440

ARM: le istruzioni assembly

ARM: le istruzioni assembly ARM: le istruzioni assembly 03.b C. Fantozzi, A. Gardich (revisione di S. Congiu) Struttura programma assembly La forma generale delle linee di codice assembly è: 1 label:istruzioneoperandi@commento

Dettagli

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

Il set istruzioni di MIPS Modalità di indirizzamento. Proff. A. Borghese, F. Pedersini Architettura degli Elaboratori e delle Reti Il set istruzioni di MIPS Modalità di indirizzamento Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

Lezione E3. Architettura ARM - I. Sistemi embedded e real-time

Lezione E3. Architettura ARM - I. Sistemi embedded e real-time Lezione E3 Sistemi embedded e real-time 11 ottobre 2012 Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata SERT 13 E3.1 Di cosa parliamo in questa lezione?

Dettagli

Microelettronica. Architettura del processore ARM. Stefano Salvatori. Università degli Studi Roma Tre. (salvator@uniroma3.it) Microelettronica

Microelettronica. Architettura del processore ARM. Stefano Salvatori. Università degli Studi Roma Tre. (salvator@uniroma3.it) Microelettronica Microelettronica Architettura del processore ARM Stefano Salvatori (salvator@uniroma3.it) Microelettronica Sommario Architettura ARM Differenze con i RISC Programmer s model Sistemi di sviluppo Microelettronica

Dettagli

Richiami sull architettura del processore MIPS a 32 bit

Richiami sull architettura del processore MIPS a 32 bit Richiami sull architettura del processore MIPS a 32 bit Architetture Avanzate dei Calcolatori Valeria Cardellini Caratteristiche principali dell architettura del processore MIPS E un architettura RISC

Dettagli

Sommario. Premessa Architettura ARM Programmer's model (ARM7) Sistemi di sviluppo. S. Salvatori - Microelettronica aprile 2016 (13 di 45)

Sommario. Premessa Architettura ARM Programmer's model (ARM7) Sistemi di sviluppo. S. Salvatori - Microelettronica aprile 2016 (13 di 45) Sommario Premessa Architettura ARM Programmer's model (ARM7) Sistemi di sviluppo S. Salvatori - Microelettronica aprile 2016 (13 di 45) Architettura di ARM Elevato numero di di registi 31 31 registri interni

Dettagli

PXA255: concetti avanzati

PXA255: concetti avanzati PXA255: concetti avanzati 10.a C. Fantozzi, A. Gardich (revisione di S. Congiu) PXA255: il nucleo 1 PXA255: memorie cache Uno dei principali colli di bottiglia nei moderni calcolatori è l inadeguata velocità

Dettagli

Università degli Studi di Cassino

Università degli Studi di Cassino Corso di Istruzioni di confronto Istruzioni di controllo Formato delle istruzioni in L.M. Anno Accademico 2007/2008 Francesco Tortorella Istruzioni di confronto Istruzione Significato slt $t1,$t2,$t3 if

Dettagli

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

Corso di Calcolatori Elettronici MIPS: Istruzioni di confronto Istruzioni di controllo Formato delle istruzioni in L.M. di Cassino e del Lazio Meridionale Corso di MIPS: Istruzioni di confronto Istruzioni di controllo Formato delle istruzioni in L.M. Anno Accademico 201/201 Francesco Tortorella Istruzioni di confronto Istruzione

Dettagli

FONDAMENTI DI INFORMATICA Lezione n. 11

FONDAMENTI DI INFORMATICA Lezione n. 11 FONDAMENTI DI INFORMATICA Lezione n. 11 ARCHITETTURA INTERNA ARCHITETTURA ESTERNA CODICE MACCHINA MODI DI INDIRIZZAMENTO ARCHITETTURE A PIU' INDIRIZZI In questa lezione verranno introdotti i concetti di

Dettagli

Calcolatori Elettronici

Calcolatori Elettronici Calcolatori Elettronici Classificazione dei calcolatori elettronici Sistemi basati sull architettura di Von Neumann Sistemi basati sull architettura Harward Architettura dei calcolatori: definizioni Evoluzione

Dettagli

.: CALCOLATORI 7 MAGGIO 2015

.: CALCOLATORI 7 MAGGIO 2015 .: CALCOLATORI 7 MAGGIO 2015 .: AGENDA.: MIPS, X86, ARM.: CARATTERISTICHE DI ARM ( CONFRONTO A MIPS ).: ESEMPIO COPIA_STRINGA SU ARCHITETTURA ARM.: ESEMPIO FATTORIALE SU MIPS, ARM ADVANCED RISC MACHINE.:

Dettagli

ARM PROCESSORS FAMILY

ARM PROCESSORS FAMILY 1 ARM PROCESSORS FAMILY INTRODUZIONE ALL ISA ARM PIPELINES UTILIZZATE DAI PROCESSORI ARM ARM PROCESSOR CORES ARM CPU CORES EMBEDDED ARM-BASED SYSTEMS 2 INTRODUZIONE ALL'ISA ARM PROCESSORI ARM 3 I processori

Dettagli

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

Architettura dei calcolatori e sistemi operativi. Il processore Capitolo 4 P&H Architettura dei calcolatori e sistemi operativi Il processore Capitolo 4 P&H 4. 11. 2015 Sommario Instruction Set di riferimento per il processore Esecuzione delle istruzioni Struttura del processore

Dettagli

Sottosistemi ed Architetture Memorie

Sottosistemi ed Architetture Memorie Sottosistemi ed Architetture Memorie CORSO DI CALCOLATORI ELETTRONICI I CdL Ingegneria Biomedica (A-I) DIS - Università degli Studi di Napoli Federico II La memoria centrale Memoria centrale: array di

Dettagli

Architettura di una CPU

Architettura di una CPU Massimo VIOLANTE Politecnico di Torino Dipartimento di Automatica e Informatica Sommario Organizzazione di un processore Linguaggio macchina Modi di indirizzamento Tipi di istruzioni 2 M. Violante 1.1

Dettagli

Architettura hardware

Architettura hardware Architettura hardware la parte che si può prendere a calci Architettura dell elaboratore Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione

Dettagli

In realtà, non un solo microprocessore, ma un intera famiglia, dalle CPU più semplici con una sola pipeline a CPU molto complesse per applicazioni ad

In realtà, non un solo microprocessore, ma un intera famiglia, dalle CPU più semplici con una sola pipeline a CPU molto complesse per applicazioni ad Principi di architetture dei calcolatori: l architettura ARM. Mariagiovanna Sami Che cosa è ARM In realtà, non un solo microprocessore, ma un intera famiglia, dalle CPU più semplici con una sola pipeline

Dettagli

Sistemi e Tecnologie per l'automazione LS. HW per elaborazione digitale in automazione: Microcontrollori e DSP

Sistemi e Tecnologie per l'automazione LS. HW per elaborazione digitale in automazione: Microcontrollori e DSP Laurea Specialistica in Ingegneria Informatica Laurea Specialistica in Ingegneria Elettronica e delle Telecomunicazioni Sistemi e Tecnologie per l'automazione LS HW per elaborazione digitale in automazione:

Dettagli

Introduzione. Caratteristiche generali. Sistemi e Tecnologie per l'automazione LS. HW per elaborazione digitale in automazione: Microcontrollori e DSP

Introduzione. Caratteristiche generali. Sistemi e Tecnologie per l'automazione LS. HW per elaborazione digitale in automazione: Microcontrollori e DSP Laurea Specialistica in Ingegneria Informatica Laurea Specialistica in Ingegneria Elettronica e delle Telecomunicazioni Sistemi e Tecnologie per l'automazione LS HW per elaborazione digitale in automazione:

Dettagli

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

Accesso a memoria. Accesso a memoria. Accesso a memoria. Modalità di indirizzamento. Lezione 5 e 6. Architettura degli Elaboratori A. < < } } Lezione 5 e 6 Accesso a memoria A questo livello di astrazione, la memoria viene vista come un array di byte Per ogni richiesta di un dato ad un certo indirizzo, la CPU ottiene un numero di byte

Dettagli

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

Architettura del processore. Modello di calcolatore. Caratteristiche del processore. Caratteristiche del processore. Fondamenti di Informatica FONDAMENTI DI INFORMATICA Prof PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Architettura e funzionamento del calcolatore 20 Pier Luca Montessoro (si veda la nota di copyright

Dettagli

Il Processore: l unità di controllo

Il Processore: l unità di controllo Il Processore: l unità di controllo La frequenza con cui vengono eseguiti i cicli di esecuzione è scandita da una componente detta clock Ad ogni impulso di clock la UC esegue un ciclo di esecuzione di

Dettagli

Metodi di indirizzamento

Metodi di indirizzamento Testo di rif.to: [Congiu] 4.3 (pg. 138 148) 02.b Metodi di indirizzamento Indirizzamento immediato Indirizzamento di registro Indirizzamenti in memoria Metodi di indirizzamento 1 Gli indirizzi degli operandi

Dettagli

Il processore. Istituzionii di Informatica -- Rossano Gaeta

Il processore. Istituzionii di Informatica -- Rossano Gaeta Il processore Il processore (detto anche CPU, ovvero, Central Processing Unit) è la componente dell unità centrale che fornisce la capacità di elaborazione delle informazioni contenute nella memoria principale

Dettagli

Linguaggio Assembly e linguaggio macchina

Linguaggio Assembly e linguaggio macchina Architettura degli Elaboratori e delle Reti Lezione 11 Linguaggio Assembly e linguaggio macchina Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

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

Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina ADD A,B ISTRUZIONE SUCCESSIVA Lezione n.11 n.11 Lezione n. 11 ARCHITETTURA INTERNA ARCHITETTURA ESTERNA CODICE MACCHINA MODI DI INDIRIZZAMENTO ARCHITETTURE A PIU' INDIRIZZI In questa lezione verranno introdotti i concetti di base relativi

Dettagli

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

La CPU e la Memoria. Sistemi e Tecnologie Informatiche 1. Struttura del computer. Sistemi e Tecnologie Informatiche 2 La CPU e la Memoria Sistemi e Tecnologie Informatiche 1 Struttura del computer Sistemi e Tecnologie Informatiche 2 1 I registri La memoria contiene sia i dati che le istruzioni Il contenuto dei registri

Dettagli

Linguaggio Assembly e linguaggio macchina

Linguaggio Assembly e linguaggio macchina Architettura degli Elaboratori e delle Reti Lezione 11 Linguaggio Assembly e linguaggio macchina Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

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

Istruzioni macchina. Dove sono gli operandi? Ciclo della CPU. Elementi di un istruzione macchina. Rappresentazione delle istruzioni Istruzioni macchina Linguaggio macchina Insieme delle istruzioni (instruction set) che la CPU puo eseguire Capitolo 10 1 2 Elementi di un istruzione macchina Codice operativo Specifica l operazione da

Dettagli

Componenti di un processore

Componenti di un processore Componenti di un processore Unità di Controllo Bus Interno REGISTRI Program Counter (PC) Registro di Stato (SR) Registro Istruzioni (IR) Registri Generali Unità Aritmetico- Logica Registro Indirizzi Memoria

Dettagli

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

Le etichette nei programmi. Istruzioni di branch: beq. Istruzioni di branch: bne. Istruzioni di jump: j L insieme delle istruzioni (2) Architetture dei Calcolatori (lettere A-I) Istruzioni per operazioni logiche: shift Shift (traslazione) dei bit di una parola a destra o sinistra sll (shift left logical):

Dettagli

ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE

ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE Il computer o elaboratore è una macchina altamente organizzata capace di immagazzinare, elaborare e trasmettere dati con notevole precisione e rapidità. Schematicamente

Dettagli

Architettura di un calcolatore e linguaggio macchina. Primo modulo Tecniche della programmazione

Architettura di un calcolatore e linguaggio macchina. Primo modulo Tecniche della programmazione Architettura di un calcolatore e linguaggio macchina Primo modulo Tecniche della programmazione CPU Central Processing Unit, processore Unita logica/aritmetica: elaborazione dati Unita di controllo: coordina

Dettagli

Il linguaggio assembly

Il linguaggio assembly Il linguaggio assembly Introduzione al linguaggio macchina Indice Che cos è l assembly Elementi del linguaggio Memoria di programma Registri interni e di I/O Registri particolari Rappresentazione dell

Dettagli

Architettura di tipo registro-registro (load/store)

Architettura di tipo registro-registro (load/store) Caratteristiche principali dell architettura del processore MIPS E un architettura RISC (Reduced Instruction Set Computer) Esegue soltanto istruzioni con un ciclo base ridotto, cioè costituito da poche

Dettagli

Architettura dei computer

Architettura dei computer Architettura dei computer In un computer possiamo distinguere quattro unità funzionali: il processore la memoria principale (memoria centrale, RAM) la memoria secondaria i dispositivi di input/output La

Dettagli

Motivazioni. Assembly

Motivazioni. Assembly Assembly Programmazione in linguaggio macchina (o meglio in assembly): programmare utilizzando istruzioni direttamente eseguibili dal processore. Questa parte del corsi si accompagna a lezioni in laboratorio:

Dettagli

Laboratorio di Architettura degli Elaboratori

Laboratorio di Architettura degli Elaboratori Laboratorio di Architettura degli Elaboratori Dott. Massimo Tivoli Set di istruzioni del MIPS32: istruzioni aritmetiche e di trasferimento Istruzioni (Alcune) Categorie di istruzioni in MIPS Istruzioni

Dettagli

Università degli Studi di Cassino

Università degli Studi di Cassino Corso di MIPS: modello di programmazione Anno Accademico 2007/2008 Francesco Tortorella CPU Compito della CPU: eseguire istruzioni Le istruzioni costituiscono le operazioni primitiva eseguibili dalla CPU

Dettagli

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

Riassunto. Riassunto. Ciclo fetch&execute. Concetto di programma memorizzato. Istruzioni aritmetiche add, sub, mult, div MIPS load/store word, con indirizzamento al byte aritmetica solo su registri Istruzioni Significato add $t1, $t2, $t3 $t1 = $t2 + $t3 sub $t1, $t2, $t3 $t1 = $t2 - $t3 mult $t1, $t2 Hi,Lo = $t1*$t2 div

Dettagli

Architettura del Set di Istruzioni (ISA)

Architettura del Set di Istruzioni (ISA) Architettura del Set di Istruzioni (ISA) Maurizio Palesi Maurizio Palesi 1 Instruction Set Architecture (ISA) Software instruction set Hardware Maurizio Palesi 2 1 Instruction Set Architecture (ISA) Applicazioni

Dettagli

ARCHITETTURA DI UN ELABORATORE

ARCHITETTURA DI UN ELABORATORE ARCHITETTURA DI UN ELABORATORE Unità funzionali Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40). La macchiana di Von Neumann: Non distingueva fra RAM

Dettagli

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

Struttura CPU. Struttura e Funzione del Processore. Capitolo 12. Compiti CPU: Struttura e Funzione del Processore Capitolo 12 Struttura CPU Compiti CPU: Prelevare istruzioni Interpretare istruzioni Prelevare dati Elaborare dati Scrivere (memorizzare) dati 1 CPU con bus di sistema

Dettagli

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

Processore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa) Processore Memoria Control (Parte di controllo) Datapath (Parte operativa) I/O Memoria La dimensione del Register File è piccola registri usati per memorizzare singole variabili di tipo semplice purtroppo

Dettagli

Esempio di moltiplicazione come somma e spostamento

Esempio di moltiplicazione come somma e spostamento Esempio di moltiplicazione come somma e spostamento Implementare una moltiplicazione coinvolge algoritmi di shift e somma Istruzioni di Shift:movimento di bit: ROL Rd ROR Rd LSL Rd LSR ASR Rd Rd 22 x 35

Dettagli

La microarchitettura. Didattica della strumentazione digitale e sistemi a microprocessore anno accademico 2006 2007 pagina 1

La microarchitettura. Didattica della strumentazione digitale e sistemi a microprocessore anno accademico 2006 2007 pagina 1 La microarchitettura. anno accademico 2006 2007 pagina 1 Integer Java virtual machine Ogni microprocessore può avere una microarchitettura diversa, ma la modalità di funzionamento per certi aspetti è generale.

Dettagli

Parte V. Il Livello delle Istruzioni Macchina

Parte V. Il Livello delle Istruzioni Macchina Parte V Il Livello delle Istruzioni Macchina V.1 Instruction Set Architecture Il livello ISA è l interfaccia tra HW e SW È il livello più basso a cui il processore è programmabile Criteri di scelta: Semplicità

Dettagli

Lecture 2: Prime Istruzioni

Lecture 2: Prime Istruzioni [http://www.di.univaq.it/muccini/labarch] Modulo di Laboratorio di Architettura degli Elaboratori Corso di Architettura degli Elaboratori con Laboratorio Docente: H. Muccini Lecture 2: Prime Istruzioni

Dettagli

Introduzione al Many/Multi-core Computing

Introduzione al Many/Multi-core Computing Introduzione al Many/Multi-core Computing Sistemi Operativi e reti 6 giugno 2011 Parte I Architettura Classificazione fra architetture Flynn s taxonomy SISD Single instruction on Single Data- (es. architetture

Dettagli

Calcolatori Elettronici Parte VII: il Livello delle Istruzioni Macchina

Calcolatori Elettronici Parte VII: il Livello delle Istruzioni Macchina Anno Accademico 2013/2014 Calcolatori Elettronici Parte VII: il Livello delle Istruzioni Macchina Prof. Riccardo Torlone Universita Roma Tre Instruction Set Architecture Il livello ISA è l interfaccia

Dettagli

Programmazione dello Z80

Programmazione dello Z80 Il microprocessore si incarica di: gestire il programma e i suoi dati di eseguire i calcoli richiesti. Le azioni appena elencate rendono necessario che il microprocessore abbia da qualche parte, al suo

Dettagli

Linguaggio macchina. 3 tipi di istruzioni macchina. Istruzioni per trasferimento dati. Istruzioni logico/aritmetiche

Linguaggio macchina. 3 tipi di istruzioni macchina. Istruzioni per trasferimento dati. Istruzioni logico/aritmetiche 3 tipi di istruzioni macchina Linguaggio macchina e assembler 1) trasferimento tra RAM e registri di calcolo della CPU 2) operazioni aritmetiche: somma, differenza, moltiplicazione e divisione 3) operazioni

Dettagli

Progettare l'isa. Progettare l'isa. Corso di Architettura degli Elaboratori. Interpretazione

Progettare l'isa. Progettare l'isa. Corso di Architettura degli Elaboratori. Interpretazione Corso di Architettura degli Elaboratori Il livelo ISA: ISA IJVM, tipi di dati e formato delle istruzioni Matteo Baldoni Dipartimento di Informatica Università degli Studi di Torino C.so Svizzera, 185 I-10149

Dettagli

Parte IV Architettura della CPU Central Processing Unit

Parte IV Architettura della CPU Central Processing Unit Parte IV Architettura della CPU Central Processing Unit IV.1 Struttura della CPU All interno di un processore si identificano in genere due parti principali: l unità di controllo e il data path (percorso

Dettagli

Il Processore. Informatica di Base -- R.Gaeta 27

Il Processore. Informatica di Base -- R.Gaeta 27 Il Processore Il processore (detto anche CPU, ovvero, Central Processing Unit) è la componente dell unità centrale che fornisce la capacità di elaborazione delle informazioni contenute nella memoria principale

Dettagli

La macchina programmata Instruction Set Architecture (1)

La macchina programmata Instruction Set Architecture (1) Corso di Laurea in Informatica Architettura degli elaboratori a.a. 2014-15 La macchina programmata Instruction Set Architecture (1) Schema base di esecuzione Istruzioni macchina Outline Componenti di un

Dettagli

Lezione 15. L elaboratore Elettronico

Lezione 15. L elaboratore Elettronico Lezione 15 Architettura di un calcolatore L elaboratore Elettronico Un elaboratore elettronico è una macchina elettronica in grado di elaborare dati secondo le specifiche fornite da un algoritmo Internamente

Dettagli

Lezione4: MIPS e Istruzioni (1 Parte)

Lezione4: MIPS e Istruzioni (1 Parte) Architettura degli Elaboratori Lezione4: MIPS e Istruzioni (1 Parte) Michele Nappi mnappi@unisa.it http://www.biplab.unisa.it/ Alcune slide di questa lezione sono prodotte dal Prof. Luigi Palopoli AGENDA

Dettagli

Architettura ARM. 1 Introduzione 1 INTRODUZIONE 1

Architettura ARM. 1 Introduzione 1 INTRODUZIONE 1 1 INTRODUZIONE 1 Architettura ARM Aggiornato al 5 marzo 2013 1 Introduzione La sigla ARM oggi viene interpretata come Advanced RISC Machine. In realtà la sigla originariamente significava Acorn RISC Machine,

Dettagli

Sistemi a microprocessore

Sistemi a microprocessore Storia dei Computer 1945 John Von Neumann propose la stored program architecture 1948 Bardeen, Brattain and Shockley inventarono il transistor 1958 Jack Kilby introdusse l IC (integrated circuit) e aprì

Dettagli

ARCHITETTURA DELLE CPU come ARCHITETTURA DEL SET DI ISTRUZIONI

ARCHITETTURA DELLE CPU come ARCHITETTURA DEL SET DI ISTRUZIONI PROGETTO DELLA CPU MEMORIZZAZIONE DEGLI OPERANDI DOVE SONO MEMORIZZATI GLI OPERANDI NELLA CPU? ARCHITETTURA DELLE CPU come ARCHITETTURA DEL SET DI ISTRUZIONI SCELTE PROGETTUALI: 1. DOVE SONO MEMORIZZATI

Dettagli

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

Architettura dei sistemi di elaborazione: La CPU: Architettura (parte1) Architettura dei sistemi di elaborazione: La CPU: Architettura (parte1) La CPU Architettura L organizzazione interna di una CPU è caratterizzata dal data path, che è costituito da una serie di componenti,

Dettagli

Lezione E12. Sistemi operativi open-source, embedded e real-time

Lezione E12. Sistemi operativi open-source, embedded e real-time Lezione E12 Sistemi operativi open-source, embedded e real-time 17 dicembre 2013 Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata SOSERT 13 E12.1 Di

Dettagli

Modi di indirizzamento

Modi di indirizzamento Vari modi di specificare l indirizzo degli operandi Modi di indirizzamento Capitolo 11 Immediato Diretto Indiretto Registro Registro indiretto Spiazzamento Pila 1 2 Indirizzamento immediato L operando

Dettagli

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

Lezione 20. Assembly MIPS: Il set istruzioni, strutture di controllo in Assembly Architettura degli Elaboratori Lezione 20 Assembly MIPS: Il set istruzioni, strutture di controllo in Assembly Prof. F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

Introduzione. Indice. Linguaggio macchina. Linguaggio assembler

Introduzione. Indice. Linguaggio macchina. Linguaggio assembler Indice Linguaggio ad alto livello, linguagio assembler e linguaggio macchina Il linguaggio assembler MIPS: istruzioni aritmetiche, di trasferimento dati e di salto Conversione linguaggio assembler in linguaggio

Dettagli

Componenti e connessioni. Capitolo 3

Componenti e connessioni. Capitolo 3 Componenti e connessioni Capitolo 3 Componenti principali CPU (Unità Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro Architettura di Von Neumann Dati e instruzioni in memoria (lettura

Dettagli

Microelettronica Corso introduttivo di progettazione di sistemi embedded

Microelettronica Corso introduttivo di progettazione di sistemi embedded Microelettronica Corso introduttivo di progettazione di sistemi embedded Architettura dei sistemi a microprocessore prof. Stefano Salvatori A.A. 2014/2015 Eccetto dove diversamente specificato, i contenuti

Dettagli

Esame di INFORMATICA Lezione 4

Esame di INFORMATICA Lezione 4 Università di L Aquila Facoltà di Biotecnologie Esame di INFORMATICA Lezione 4 MACCHINA DI VON NEUMANN Il sottosistema di memorizzazione (memoria) contiene dati + istruzioni, inseriti inizialmente tramite

Dettagli

LA CODIFICA DELL INFORMAZIONE. Introduzione ai sistemi informatici D. Sciuto, G. Buonanno, L. Mari, McGraw-Hill Cap.2

LA CODIFICA DELL INFORMAZIONE. Introduzione ai sistemi informatici D. Sciuto, G. Buonanno, L. Mari, McGraw-Hill Cap.2 LA CODIFICA DELL INFORMAZIONE Introduzione ai sistemi informatici D. Sciuto, G. Buonanno, L. Mari, McGraw-Hill Cap.2 Codifica dati e istruzioni Per scrivere un programma è necessario rappresentare istruzioni

Dettagli

Calcolatori Elettronici A a.a. 2008/2009

Calcolatori Elettronici A a.a. 2008/2009 Calcolatori Elettronici A a.a. 2008/2009 Instruction Set Architecture: nozioni generali Massimiliano Giacomin 1 DOVE CI TROVIAMO Livello del linguaggio specializzato Traduzione (compilatore) o interpretazione

Dettagli

Architettura dei calcolatori

Architettura dei calcolatori Architettura dei calcolatori Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ Architettura dei calcolatori 2 Cos'è un computer?

Dettagli

Nel microprocessore 8086 abbiamo una gran quantità di registri

Nel microprocessore 8086 abbiamo una gran quantità di registri I registri del microprocessore 8086 Nel microprocessore 8086 abbiamo una gran quantità di registri AH AL AX 1 1 1 1 1 1 1 0 0 1 0 1 1 1 0 1 B H B L BX 1 0 1 0 1 0 0 1 1 1 0 1 1 0 1 0 C H C L CX 1 0 1 1

Dettagli

Architettura dei calcolatori. Architettura dei calcolatori. Cos'è un computer?

Architettura dei calcolatori. Architettura dei calcolatori. Cos'è un computer? Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ 2 Cos'è un computer? 3 Cos'è un computer? E' un dispositivo in grado di Elaborare

Dettagli

Capitolo 5 Elementi architetturali di base

Capitolo 5 Elementi architetturali di base Capitolo 5 Elementi architetturali di base Giuseppe Lami Istituto di Scienza e Tecnologie dell Informazione CNR Via Moruzzi, 1 - Pisa giuseppe.lami@isti.cnr.it Struttura - Unità di elaborazione e controllo

Dettagli

Architettura degli elaboratori (A)

Architettura degli elaboratori (A) Laurea in Informatica a.a. 2010-2011 Laboratorio del corso di Architettura degli elaboratori (A) Modulo 1: l Architettura dell 8086 Valeria Carofiglio Linguaggi a vari livelli e loro relazioni Programma

Dettagli

Architettura di un calcolatore

Architettura di un calcolatore Architettura di un calcolatore Corso di Informatica A Vito Perrone Indice La macchina di Von Neumann Memoria CPU Bus Interfacce Esempio L algoritmo Il programma Fasi di esecuzione di un istruzione 2 1

Dettagli

Sistemi e Tecnologie per l'automazione LM. HW per elaborazione digitale in automazione: Microcontrollori e DSP

Sistemi e Tecnologie per l'automazione LM. HW per elaborazione digitale in automazione: Microcontrollori e DSP Laurea Magistrale in Ingegneria Informatica Laurea Magistrale in Ingegneria Elettronica e Telecomunicazioni per lo Sviluppo Sostenibile Sistemi e Tecnologie per l'automazione LM HW per elaborazione digitale

Dettagli

Organizzata secondo il modello della macchina di von Neumann definita nei tardi anni 40 all Institute for Advanced Study di Princeton.

Organizzata secondo il modello della macchina di von Neumann definita nei tardi anni 40 all Institute for Advanced Study di Princeton. Architettura di un Elaboratore Organizzata secondo il modello della macchina di von Neumann definita nei tardi anni 40 all Institute for Advanced Study di Princeton. È costituita da quattro elementi funzionali

Dettagli

Il Ciclo Fetch-Decode-Execute. C Nyssen/Aberdeen College 2003

Il Ciclo Fetch-Decode-Execute. C Nyssen/Aberdeen College 2003 Il Ciclo Fetch-Decode-Execute C Nyssen/Aberdeen College 2003 Linguaggio Assembler Op code (Mnemonico) Operando #assembly code program 0000 LDA-24 #loads 0001 ADD-25 #adds 0002 HLT #stops #end of program

Dettagli

DEFINIZIONE. particolare l'unità di elaborazione centrale è una tipologia di

DEFINIZIONE. particolare l'unità di elaborazione centrale è una tipologia di CORSO BASE DI TECNICO RIPARATORE HARDWARE CPU Docente: Dott. Ing. Antonio Pagano DEFINIZIONE L'unità di elaborazione centrale o CPU è una tipologia di processore digitale general purpose la quale si contraddistingue

Dettagli

Lezione 1: L architettura LC-3 Laboratorio di Elementi di Architettura e Sistemi Operativi 10 Marzo 2014

Lezione 1: L architettura LC-3 Laboratorio di Elementi di Architettura e Sistemi Operativi 10 Marzo 2014 Lezione 1: L architettura LC-3 Laboratorio di Elementi di Architettura e Sistemi Operativi 10 Marzo 2014 Ricorda... Il ciclo di esecuzione di un istruzione è composto da sei fasi: FETCH DECODE ADDRESS

Dettagli

Famiglia dei processori INTEL

Famiglia dei processori INTEL Famiglia dei processori INTEL 1975 2002 8080-8086 - 80286-80386 - 80486 - Pentium - Pentium II-III-IV - Itanium Compatibilità del SW (assemby) 8086 80286 80386 80486 Pentium Pentium III Perché studiare

Dettagli

Macchine Astratte. Luca Abeni. February 22, 2017

Macchine Astratte. Luca Abeni. February 22, 2017 Macchine Astratte February 22, 2017 Architettura dei Calcolatori - 1 Un computer è composto almeno da: Un processore (CPU) Esegue le istruzioni macchina Per fare questo, può muovere dati da/verso la memoria

Dettagli

ARCHITETTURA DI UN ELABORATORE

ARCHITETTURA DI UN ELABORATORE ARCHITETTURA DI UN ELABORATORE Unità funzionali Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40) Macchina di Von Neumann: Non distingueva fra RAM e ROM

Dettagli

Uso dei metodi di indirizzamento

Uso dei metodi di indirizzamento Testo di rif.to: [Congiu] 4.4.1 (pg. 148 158) 02.e Uso dei metodi di indirizzamento Un esempio: acquisizione dati Esempi d impiegod Confronto tra i metodi Analisi temporale Sistema di acquisizione dati

Dettagli

Modi di indirizzamento del processore MC68000 (parte prima)

Modi di indirizzamento del processore MC68000 (parte prima) Corso di Calcolatori Elettronici I A.A. 2011-2012 Modi di indirizzamento del processore MC68000 (parte prima) Lezione 21 Prof. Antonio Pescapè Università degli Studi di Napoli Federico II Facoltà di Ingegneria

Dettagli

Macchine Programmabili

Macchine Programmabili Macchine di Calcolo Programmabili Fabio Campi Corso di Elettronica dei Sistemi Digitali LS AA 2003-2004 Macchine Programmabili Systems -on-programmable Chip Systems -on-chip Reconfigurable Computing APPLICAZIONE

Dettagli

Calcolatori Elettronici

Calcolatori Elettronici Calcolatori Elettronici ISA di riferimento: MIPS Massimiliano Giacomin 1 DOVE CI TROVIAMO Livello funzionale Livello logico Livello circuitale Livello del layout istruzioni macchina, ISA Reti logiche:

Dettagli

Introduzione alle architetture

Introduzione alle architetture Introduzione alle architetture 66 I n questo articolo tratteremo una breve introduzione al modello di programmazione delle architetture progettate da ARM Ltd., società che non produce processori, ma progetta

Dettagli

Modi di esecuzione user / kernel

Modi di esecuzione user / kernel Corso di Gestione eccezioni nel MIPS Interruzioni Anno Accademico 2006/2007 Francesco Tortorella Modi di esecuzione user / kernel Due modi di esecuzione: User kernel Per ognuno dei due modi di esecuzione

Dettagli

Macchina di von Neumann

Macchina di von Neumann Il processore PD32 Macchina di von Neumann Unità di Ingresso Memoria di lavoro Unità di Uscita Unità di Calcolo Unità di Controllo Suddivisione SCA-SCO Unità di Ingresso Memoria di lavoro Unità di Uscita

Dettagli

AXO Achitettura dei Calcolatori e Sistema Operativo. Instruction Set Architecture (ISA) e 68000

AXO Achitettura dei Calcolatori e Sistema Operativo. Instruction Set Architecture (ISA) e 68000 AXO Achitettura dei Calcolatori e Sistema Operativo Instruction Set Architecture (ISA) e 68000 introduzione a ISA ISA - Instruction Set Architecture insieme delle istruzioni (instruction set) che possono

Dettagli

ARCHITETTURA DEL MICROPROCESSORE INTEL 8086 (iapx86/10)

ARCHITETTURA DEL MICROPROCESSORE INTEL 8086 (iapx86/10) ARCHITETTURA DEL MICROPROCESSORE INTEL 8086 (iapx86/10) Chip con 40 piedini e 29000 transistori Progettato a metà degli anni 70, periodo in cui la densità di integrazione era relativamente bassa ( solo

Dettagli

Linguaggio Assembly. Architettura di riferimento Formato istruzioni Classi di istruzioni Modalità di indirizzamento Direttive Codice macchina

Linguaggio Assembly. Architettura di riferimento Formato istruzioni Classi di istruzioni Modalità di indirizzamento Direttive Codice macchina Linguaggio Assembly Architettura di riferimento Formato istruzioni Classi di istruzioni Modalità di indirizzamento Direttive Codice macchina Modello di architettura di riferimento Nel seguito faremo riferimento

Dettagli

Il calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica

Il calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica Il calcolatore È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica ogni livello di descrizione è caratterizzato da una struttura rappresentante l organizzazione

Dettagli

Cenni ad Assembly Intel

Cenni ad Assembly Intel Cenni ad Assembly Intel Luca Abeni April 17, 2015 Architerrura Intel Utilizzata sulla maggior parte dei laptop, desktop e server moderni Lunga storia Dagli anni 70 (Intel 8080-8 bit!)......fino ad oggi

Dettagli

Il Modello di von Neumann (2) Prevede 3 entità logiche:

Il Modello di von Neumann (2) Prevede 3 entità logiche: Introduzione all Architettura degli Elaboratori Sommario Macchina di von Neumann Esecuzione dei programmi Rappresentazione dei dati Dati numerici Dati alfabetici 1 2 Il Modello di von Neumann (1) L architettura

Dettagli

Architettura dei calcolatori

Architettura dei calcolatori Cos'è un calcolatore? Architettura dei calcolatori Esecutore automatico di algoritmi Macchina universale Elementi di Informatica Docente: Giorgio Fumera Corso di Laurea in Edilizia Facoltà di Architettura

Dettagli