Sistemi Elettronici Programmabili (SELPR)

Slides:



Advertisements
Presentazioni simili
Informatica Generale Marzia Buscemi
Advertisements

Università di Padova Corso “Circuiti e Sistemi Logici”
Informatica Generale Susanna Pelagatti
Introduzione ai circuiti elettronici digitali
Classe III A A.s – 2010 Programma di Informatica
Introduzione allarchitettura dei calcolatori 2/ed Carl Hamacher, Zvonko Vranesic, Safwat Zaky Copyright © 2007 – The McGraw-Hill Companies srl Versione.
Vincenza Ferrara dicembre 2007 Fondamenti di Matematica e Informatica Laboratorio Informatica I anno a.a
Sistemi di numerazione e codici
Fondamenti di Informatica Prof. Cantone
Fondamenti di Informatica
Presentazione del Corso di CALCOLATORI ELETTRONICI
Reti Logiche e Architettura dei Calcolatori Luciano Gualà home page
Informatica A (informatica grafica) Allievi di Ingegneria Civile, L-Z
Corso di Informatica per Giurisprudenza
Laboratorio di Calcolo I 1) Introduzione Università Roma Tre Corso di Studi in Fisica AA 2002/03.
Lezione 2 informatica di base per le discipline umanistiche vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università
Lezione 3 informatica di base per le discipline umanistiche vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università
informatica di base per le discipline umanistiche
Lezione 3 informatica di base per le discipline umanistiche vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università
Reti Logiche Luciano Gualà
Gli esseri viventi ricevono informazione direttamente dal mondo circostante e dai propri simili attraverso i sensi (percezione). La percezione, tuttavia,
Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per lambiente e il territorio Il calcolatore Stefano Cagnoni e Monica Mordonini Dipartimento.
UNIVERSITA’ STUDI DI ROMA “FORO ITALICO”
Corso di Fondamenti di Informatica A Andrea Omicini Anno accademico 1999/2000 Università degli Studi di Bologna Facoltà di Ingegneria Corsi di Laurea in.
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori (Reti Locali, Internet)
INFORMATICA MATTEO CRISTANI.
L' ARCHITETTURA DI VON NEUMANN
Architettura del calcolatore
Elaborato di Laurea di Alessandro LAZZARINI BARNABEI
CONCETTI DI BASE 1.0 FONDAMENTI 1.1 HARDWARE 1.2 SOFTWARE 1.3 RETI
ECDL Patente europea del computer
Programma di Informatica Classi Prime
Informatica Lezione 4 Scienze e tecniche psicologiche dello sviluppo e dell'educazione Anno accademico:
ELETTRONICA DIGITALE (II PARTE) (1)
Corso di didattica della matematica
Architettura del calcolatore
Tesina di fine corso Argomento: Corso: Professore: Autori:
ORGANIZZAZIONE DI UN SISTEMA DI ELABORAZIONE
Algoritmi e Strutture Dati Introduzione agli algoritmi
WATCHDOG TIMER E’ un oscillatore interno al  C, ma indipendente dal resto dei circuiti, il cui scopo è quello di rilevare eventuali blocchi della CPU.
Rappresentazione dell’informazione nel calcolatore.
Informatica Docente : Jeremy Sproston Orario: Gruppo 1: (gli studenti i cui cognomi iniziano con la lettera A fino alla lettera L (inclusi)) Lunedì ore.
1 LABORATORIO DI INFORMATICA Ingegneria Informatica Dott. Giorgio Cicerchia a.a ° Ciclo.
Informatica Lezione 5 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
ARCHITETTURA DEI SISTEMI ELETTRONICI
Capitolo 2 Architettura di un calcolatore
CALCOLATORI ELETTRONICI
Esercitazioni PLA/PAL
MICROPROCESSORI Un processore è un circuito integrato in grado di effettuare operazioni di calcolo o di elaborazione dell'informazione Il circuito contiene.
Introduzione Laboratorio di Calcolo Corso di Laurea in Fisica Università degli Studi di Roma “La Sapienza”
Architettura di un calcolatore e linguaggio macchina.
1 Informatica di base A.A. 2004/ Informazioni sul docente Docente: Prof. Francesca Rossi Tel:
Corso di Architetetture degli Elaboratori, A.A. 2004/ Architettura degli Elaboratori Elisa B.P. Tiezzi Orario ricevimento: Giovedì, ( Il materiale.
L’esecuzione dei programmi
Informatica Generale Marzia Buscemi
Fondamenti di Informatica
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Il calcolatore Stefano Cagnoni e Monica Mordonini
Il software Claudia Raibulet
Corso di Laurea in Scienze e Tecnologie Chimiche corso di Informatica Generale Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Informatica Lezione 3 Psicologia dello sviluppo e dell'educazione (laurea magistrale) Anno accademico:
Io ho voluto dimostrarlo attraverso una delle mie passioni:
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
Struttura Fondamentale degli Elaboratori Elaboratore –È un sistema numerico –È un sistema automatico –È un sistema a programamzione registrabile –Ha una.
Architetture dei sistemi di calcolo, sistemi operativi, reti di calcolatori Dr. Luciano Bononi Facoltà di Scienze, Fisiche Naturali dell’Università di.
Untitled Computer Dispositivo elettronico in grado di ricevere ed eseguire sequenze di istruzioni svolgendo calcoli ed elaborazioni su dati numerici o.
Logica di base e Conversione analogico-digitale Lezione 3 / Prima parte Gaetano Arena e.mail: 1.
Circuiti (Integrati) Analogici Prof. Andrea Irace AA 2011/2012.
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
Analisi Statistica del Reddito e delle Condizioni di Vita Corso di Laurea Magistrale in: Scienze Statistiche per le Indagini Campionarie Docente Prof.
Transcript della presentazione:

Sistemi Elettronici Programmabili (SELPR) Prof. Adelio Salsano - Dott. Stefano Bertazzoni – Ing. Salvatore Pontarelli III Ciclo Dal 2 Marzo 2009 al 24 Aprile 2009 Lezioni Lunedì ore 11.30 – 13.15, Aula 3 Nuovi edifici Mercoledì ore 14 – 15.45 Aula 9 NE Giovedì ore 11.30 – 13.15, Aula 3 NE Ricevimento studenti: lunedì e giovedì ore 15-17 Organizzazione Quattro settimane per richiami di elettronica digitale, circuiti programmabili, architettura e caratteristiche hardware e software dei sistemi a microprocessore. Verifica intermedia Tre settimane di lezioni ed esercitazioni relative a sistemi a microcontrollore, basate su un microcontrollore commerciale. Verifiche finali Possibilità di modifica in relazione ai prerequisiti degli studenti

Sistemi elettronici programmabili Introduzione: dal continuo al discreto Richiami di elettronica digitale: Sistemi numerici e algoritmi di conversione Funzioni logiche e aritmetiche Circuiti combinatori e sequenziali PLD e FPGA: Architetture; celle elementari e strutture complesse Microcalcolatori e microprocessori: Architetture Caratteristiche hardware dei microprocessori: Lunghezza di parola; Velocità; Registri Memorie permanenti e di lavoro Sequenza di esecuzione di una istruzione Caratteristiche software dei microprocessori: Codici operativi; Modi indirizzamento Progetto di un microprocessore Sistemi elettronici digitali: definizioni; architetture di interconnessione Le periferiche La gestione dello scambio dei dati La comunicazione tra sistemi digitali: Trasmissione seriale; Trasmissione parallela; Riconoscimento e correzione degli errori Linguaggi e strumenti di programmazione Presentazione di un microcontrollore commerciale: Architettura Set di istruzione Tecniche di programmazione Sviluppo di un progetto In funzione della disponibilità di posti di lavoro, sono previste esercitazioni pratiche sui sistemi presentati MATERIALE DIDATTICO Trasparenze e dispense del corso www.uniroma2.it/didattica (selpr1) e www.elet.uniroma2.it (approfondimenti) Carl Hamacher, Z. Vranesic, S. Zaky: “Introduzione all’architettura dei Calcolatori” , MacGraw- Hill H.A. Farhat: “Digital Design and Computer Organization”, CRC Press Sistemi elettronici programmabili

Dal Continuo al Discreto I fenomeni naturali sono intrinsecamente continui - temperatura, velocità, ecc. La misura di una grandezza è intrinsecamente discreta  numero La precisione può essere spinta quanto si vuole Strumenti analogici e digitali  conversione A/D e D/A Simboli e numeri. Codici binari. Simboli rappresentano oggetti come lettere dell’alfabeto, o qualità e possono – non sempre - essere messi in ordine  funzioni logiche I numeri possono essere ordinati, sommati, moltiplicati, ecc.  concetto indipendente dalla rappresentazione I sistemi numerici: decimale, binario. Valore posizionale Le cifre sono i simboli usati in un sistema in una certa base  0-9 per la base 10, 0-1 per la base 2, 0-7 per la base 8. Sistemi elettronici programmabili

Sistemi elettronici programmabili Adder Equivalente decimale di un numero in base B D =  Pi Bi Equivalente binario di un numero decimale Divisioni successive per 2 I resti sono i bit successivi a partire da B0 Algoritmi simili per numeri frazionari (<1) successive moltiplicazioni per passaggio da decimale a binario Half adder e full adder di numeri binari Cin B A SUM Cout   1 Half adder Full Adder Sistemi elettronici programmabili

Numeri negativi  Complemento a 2 Serve per fare le sottrazioni sommando il complemento a due del sottraendo Il bit più significativo dà il segno: 1 corrisponde a numero negativo Passaggio da un numero al suo complemento a 2 Complementare tutti i bit e sommare 1 0000  0 0001 1 …..01117 1111-1 1110-2 …..1001-7 1000-8 ESEMPI  4 bit da –8 a +7  Si prendono i quattro bit meno significativi e si trascura il riporto +1 = 0001 -1 = 1111 10000   +5 = 0101 -2 = 1110 10011 Sistemi elettronici programmabili

Sistemi elettronici programmabili Codici (1)  Codici  Stabiliscono una corrispondenza biunivoca tra simboli/numeri e rappresentazione in termini di bit.  Lunghezza di un codice Numero di bit usato per rappresentare un simbolo/numero  Con N bit possono essere rappresentati al massimo 2N “oggetti” diversi Codici ridondanti per facilitare il riconoscimento di errori, l’esecuzione di operazioni, ecc.   Codici pesati e non pesati per numeri  binario, BCD a 4 o 5 bit, eccesso 3.   Codice ASCII (American Standard Code for Information Interchange)  7 bit per lettere e numeri i numeri hanno come primi bit 011, seguiti dai 4 bit BCD  tutte le tastiere.  Bar code. Sistemi elettronici programmabili

Sistemi elettronici programmabili Codici (2)   Codifica e decodifica: dal simbolo/ numero ai bit e viceversa Funzioni logiche  Display 7 segmenti.  Funzioni logiche relazioni tra variabili che possono essere “vere” o “false” – “1” o “0”  Esempio: lampada accesa (“1”) se l’interruttore è acceso (“1) e c’è la corrente (“1”).  Byte: 8 bit - Digit: 4 bit - Parola o word: numero di bit corrispondente al parallelismo del sistema di elaborazione.  Le funzioni logiche sono espresse ed elaborate con le regole dell’algebra booleana. Sistemi elettronici programmabili

Algebra Booleana e Porte Elementari   Algebra Booleana e Porte Elementari L’algebra booleana si basa su alcune funzioni elementari, OR, o somma logica, AND, o moltiplicazione logica e NOT, o negazione logica. ·        F= A+B  F vero se A o B vero o se sono veri sia A che B ·        F=A.B  F vero solo se sia che B sono veri. ·        F=A/  F vero se A falso, F falso se A vero. ·        “Vero”, “true”, corrisponde a “1” e “falso”, “false”, corrisponde a “0”. Tabelle della verità OR AND NOT A B F 1     Sistemi elettronici programmabili

Altre funzioni elementari sono: NOR OR negato NAND AND negato Funzioni più complesse sono rappresentabili con tabelle della verità e con opportune interconnessioni di funzioni elementari CIRCUITI LOGICI Data una espressione booleana, è possibile realizzare un circuito logico corrispondente e viceversa. I circuiti logici lavorano tra due tensioni corrispondenti rispettivamente a “1” e a “0”. Sono in genere la tensione minima e la massima del circuito – terra e alimentazione e si dice che lavora in logica positiva se a “1” corrisponde la tensione più alta e a “0” la tensione più bassa.   Per realizzare un circuito logico Funzione logica, p.e. tabella della verità  Semplificazione con leggi algebra Implementazione Sistemi elettronici programmabili

Sistemi elettronici programmabili De Morgan  Il negato di una somma è uguale al prodotto dei negati  Il negato di un prodotto è uguale alla somma dei negati   Leggi varie per semplificare le espressioni booleane  Possibile utilizzare solo NOR o solo NAND per realizzare la generica funzione booleana SIMBOLI DELLE FUNZIONI ELEMENTARI AND OR INV NAND NOR Sistemi elettronici programmabili

Tabelle di Look-up (LUT) Una funzione logica può essere realizzata con un circuito logico – or, and, nor,,,,- o In alternativa, può essere realizzata utilizzando memorie elettroniche (RAM, ROM, EEPROM, FLASH…) partendo direttamente dalla tabella della verità. Una funzione logica ad n variabili fa corrispondere ad ognuna delle 2n combinazioni degli ingressi un valore per l’uscita: può essere implementata con una memoria 2n x1, con gli indirizzi corrispondenti alle combinazioni degli ingressi. Questa soluzione è utilizzata per esempio nei FPGA Sistemi elettronici programmabili

Componenti Usati nei Circuiti Logici I circuiti logici che considereremo nel corso sono realizzati con transistori MOS che possono essere schematizzati come interruttori aperti o chiusi, con resistenze, effettive o equivalenti, e capacità. I simboli relativi sono i seguenti NMOS PMOS R C Sistemi elettronici programmabili

Circuiti Logici Elementari I circuiti logici si basano sulla realizzazione di inverter, o, meglio, di blocchi circuitali che, in funzione degli ingressi, colleghino l’uscita all’alimentazione (pull-up, o PUN, Pull Up Network) o a terra (pull-down, o PDN, Pull Down Network). Possono essere usate diverse tecnologie: la più usata attualmente è la CMOS.   L’inverter di base esegue la funzione “negazione”, cioè PUN PDN IN OUT VDD GND Sistemi elettronici programmabili

Altri Circuiti Logici Elementari B A VDD OUT GND NAND NOR Sistemi elettronici programmabili

Sistemi elettronici programmabili Funzioni Complesse Funzioni più complesse si realizzano considerando prima il PDN; cioè realizzando la funzione che dà l’uscita bassa: il PUN è quindi realizzato come duale del PDN. ESEMPIO: Da cui B A C D GND VDD Y Sistemi elettronici programmabili

Sistemi elettronici programmabili Transmission Gate Coppia NMOS/PMOS che conduce sia il valore alto che il valore basso in modo ottimale Vc Vout Vin FAN IN e FAN OUT: Fan in è il numero di porte di ingresso ammesse per la tecnologia considerata, mentre il fan out è il numero di ingressi che l’uscita di una porta logica può pilotare rispettando i limiti di capacità e di ritardo ammessi Sistemi elettronici programmabili

Sistemi elettronici programmabili CIRCUITI DINAMICI Informazione memorizzata in capacità Numero MOS metà dei CMOS+2 I due MOS collegati ad un clock per precarica e valutazione L’informazione si perde se la frequenza del clock è troppo bassa VDD PDN  Cl t OUT Sistemi elettronici programmabili

Circuiti Combinatori e Sequenziali I circuiti esaminati finora sono detti “combinatori”: l’uscita dipende solo dagli ingressi attuali I circuiti nei quali l’uscita dipende dagli ingressi attuali e dagli ingressi precedenti sono detti “sequenziali” -esempio tipico è il flip flop RS che memorizza un bit in logica statica R S Qn+1 QN 1 NV R S Q R Q Sistemi elettronici programmabili

Sistemi elettronici programmabili Il Clock Sistemi complessi richiedono un segnale di clock per sincronizzare le operazioni dei diversi componenti e circuiti La memorizzazione avviene in elementi sensibili al livello – latches - o al fronte –flip flop. Flip Flop con funzionalità diverse (RS, D, JK) sincronizzati LATCH RS SENSIBILE AL LIVELLO R Q S CK R S Q CK Sistemi elettronici programmabili

Sistemi elettronici programmabili Flip-Flop Latch D  DATA S Q R CK D Q FLIP FLOP D Master –Slave  Commuta sul fronte negativo D Q D Q CK MS Sistemi elettronici programmabili

Sistemi elettronici programmabili Flip-Flop FLIP FLOP JK R S Q J CK K J K Qn+1 QN 1 QN/ Registro a scorrimento D Q MS CK Sistemi elettronici programmabili

Memorie MEMORIA CENTRALE e MEMORIA DI MASSA Un sistema di calcolo necessita di memorie per i programmi e per i dati   MEMORIA CENTRALE e MEMORIA DI MASSA · La memoria centrale serve per i dati da elaborare e deve avere velocità elevata  Accesso casuale, cioè il tempo di accesso non dipende dall’indirizzo  Tecnologia microelettronica (RAM e ROM) ·  La memoria di massa serve per i programmi e per dati che normalmente non vengono usati immediatamente nelle elaborazioni  Tempi di accesso elevati (ms) e tecnologia elettromeccanica (hard disk) ·  Memorie RAM R/W: lettura e scrittura con tempi comparabili · Memorie ROM, Read Only Memories FLASH, EEPROM: conservano le informazioni anche senza l’alimentazione  o memorie permanenti scritte una volta per tutte o memorie per le quali la procedura di scrittura richiede tempi molto elevati e ha una complessità maggiore della lettura  lettura in tempi come le RAM Sistemi elettronici programmabili

Architettura di una Ram Sistemi elettronici programmabili

Dispositivi Logici Programmabili (PLD) ·        OR di AND ·        ROM ·        PAL ·        PLA FUSE OUT . . . A2 2 A1 A0 Sistemi elettronici programmabili

Sistemi elettronici programmabili PAL ·       Numero limitato di AND di ingresso con connessioni programmabili. ·        Connessioni fisse verso l’OR di uscita C AB Convenzione: B C D D C B A Sistemi elettronici programmabili

PLA (Programmable Logic Array ) Si programmano le interconnessioni degli AND e degli OR FPGA  Field Programmable Logic Array  Sono i componenti più moderni: consentono fino a 4 livelli di logica combinatoria e inoltre contengono registri  Possibilità di realizzare sistemi anche sequenziali, modificabili via software Sistemi elettronici programmabili

Microprocessori e Microcalcolatori (1) Un microcalcolatore è un sistema elettronico programmabile sincrono basato su circuiti integrati ad elevata integrazione collegati attraverso opportune interfacce ad organi di I/O e normalmente rivolti ad un singolo utilizzatore.   Un microprocessore ( o ALU, Arithmetic and Logic Unit) è un circuito integrato ad elevata integrazione in grado di eseguire operazioni logiche, aritmetiche e di controllo su dati generati dal microprocessore stesso o fornito dall’esterno. La struttura di un microcalcolatore è quella classica detta di Von Neumann Sistemi elettronici programmabili

Microcalcolatori e Microprocessori (2) Il Microprocessore (o CPU, Central Processing Unit) in genere contiene una ALU (Arithmetic and Logic Unit), un’unità di controllo e i circuiti di interfaccia verso le periferiche. La Memoria può essere esterna al microprocessore. I microprocessori si distinguono per lunghezza di parola, corrispondente al numero di bit trattati in parallelo, oltre per le altre caratteristiche hardware e software, quali la velocità, le caratteristiche elettriche, l’architettura, il set di istruzioni, ecc. Lo scambio dei dati tra i diversi circuiti di un microcalcolatore e all’interno del microprocessore va da collegamenti punto-punto ai sistemi a bus. In genere si individua un dispositivo sorgente e uno o più dispositivi destinatari, con il dispositivo sorgente che generea il dato e un eventuale segnale di controllo e il dispositivo destinatario che riceve il dato e, quando necessario, conferma l’avvenuta ricezione. Sistemi elettronici programmabili