La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Autronica LEZIONE N° 16 AUTRONICA Memorie

Presentazioni simili


Presentazione sul tema: "Autronica LEZIONE N° 16 AUTRONICA Memorie"— Transcript della presentazione:

1 Autronica LEZIONE N° 16 AUTRONICA Memorie
Definizioni Memoria RAM Organizzazione Temporizzazione Cella base Tipi di indirizzamento Reti sequenziali sincronizzate complesse Macchina di Mealy ritardata Registro di stato Registro operativo Parte operativa Parte di controllo ALU Registri interni Architetture della parte di controllo Architetture di un processore AUTRONICA

2 Richiami Reti sequenziali, concetto di memoria, anelli di reazione
Esempio, Flip-Flop R-S Tecniche di descrizione Grafo orientato Diagramma di flusso Altri Flip –Flop Flip – Flop D trasparente Flip – Flop D edge-triggered AUTRONICA

3 Definizioni MEMORIE Memoria = elemento in grado di conservare un’informazione Memorie Volatili = in grado di conservare l’informazione solo se alimentate Memorie Non Volatili = non perdono l’informazione anche se non alimentate AUTRONICA

4 Definizioni MEMORIE NON VOLATILI
ROM = Read Only Memory Programmata in fabbrica PROM = Programmable Read Only Memory Programmabile una sola volta dall’utente [OTP] EPROM =Erasable Programmable ROM Prog. elettricamente, Cancellazione UV E2PROM = Electrical Erasable PROM Programmazione e cancellazione elettrica AUTRONICA

5 Definizioni MEMORIE VOLATILI
RAM = Random Access Memory Memoria nella quale e possibile Scrivere WRITE (W) Leggere READ (R) RAM Statica = se alimentata, conserva l’informazione per un tempo infinito RAM Dinamica = anche se alimenta, dopo un certo tempo perde l’informazione AUTRONICA

6 Organizzazione di una RAM
Memoria RAM di “H” parole di “N” bit H è una potenza del 2 N solitamente può valere 1, 4, 8 Osservazione 210 = 1,024 1K (Kilo) 220 = 1,048,576 1M (Mega) 230 = 1,073,741,824 1G (Giga) AUTRONICA

7 Descrizione ai terminali
Memoria RAM 64K x 4 64K x 4 A0 D0 D3 A15 CS R/W AUTRONICA

8 Legenda A0 : A15 = indirizzi (ADDRESS) D0 : D3 = dati (DATE)
CS = Attivatore (Chip Select) [attivo basso] R/W = scrittura / lettura (Read/Write) [1 = legge, 0 = scrive] AUTRONICA

9 Temporizzazzione Ciclo di lettura Ciclo di scrittura A0:A15 CS R/W
D0:D3 A0:A15 CS R/W D0:D3 AUTRONICA

10 Cella di Memoria RAM STATICA
Word select Q R S Write Din Dout AUTRONICA

11 Parola (Word) Din-3 Dout-3 Din-2 Dout-2 Din-1 Dout-1 Din-0 Dout-0 W s
Q Din-3 Dout-3 R S Q Din-2 Dout-2 R S Q Din-1 Dout-1 R S Q Din-0 Dout-0 W s Write AUTRONICA

12 Organizzazione Ws-0 Write Ws-1 Write Din-3 Dout-3 Din-2 Dout-2 Din-1
Q Q Q Q R S R S R S R S Write Ws-1 Q Q Q Q R S R S R S R S Write Din-3 Dout-3 Din-2 Dout-2 Din-1 Dout-1 Din-0 Dout-0 AUTRONICA

13 Tecniche di accesso La singola word ha N ingressi = Data In
N uscite =Data Out 1 selettore di parola All’esterno sono necessari N Data I/O (bidirezionale) Chip Select (CS) Selezione Read/ Write (R/W) K indirizzi AUTRONICA

14 Osservazione Gli indirizzi sono codificati in binario
È necessario un decodificatire K – 2K D E C . K 2K AUTRONICA

15 Schema completo D E C M M M M 16 M M M M M M M M A0:A16 AUTRONICA 1
D E C M M M M 16 1 M M M M A0:A16 M M M M 216-1 W R D3 D2 D1 D0 AUTRONICA

16 Osservazioni Architettura non quadrata Complessità del Decoder N = 2N
occorrono 2N AND a N ingressi Esempio: Memoria da 1Mbit (220) Complessità del Decoder 21 milioni di Transistori !! Si ricorre a memorie a singolo bit e a struttura a matrice AUTRONICA

17 Organizzazione a Matrice
Celle di memoria organizzate a quadrato 1 X RAM 2N/2 1 2N/2 N/2 Y N/2 AUTRONICA

18 Osservazioni Sono presenti due decodificatori
Decodificatore di riga decodificatore di colonna A ciascun decodificatore arriva N/2 indirizzi Complessità totale dei Decoder 2 decodificatori N/2 – 2N/2 occorrono 2x2N/2 AND a N/2 ingressi [per memoria da 1 Mbit (220) occorrono 2 x 210 x 11 = transistori ] AUTRONICA

19 Reti Sequenziali Complesse Vantaggi delle soluzioni euristiche
Esempio Moltiplicatore di interi positivi 16 x 16 Rete combinatoria con 32 ingressi e 32 uscite Tutte le possibili combinazioni degli ingressi sono necessarie Risultato della sintesi automatica una memoria ROM con 32 bit di indirizzo e parole di 32 bit Complessità globale 4 G parole da da 32 bit ( 16 G BYTE !!!!!) AUTRONICA

20 Macchina di MEALY Le variabili d’uscita, in un determinato istante, sono funzione del valore degli ingressi e delle variabili di stato R X1 a1 z1 z1 Xn an zm s1 R’ s’1 zm an+1 zm+1 sk s’k an+k zm+k La rete R’ è una rete combinatoria AUTRONICA

21 Macchina di Mealy sincronizzata
Le uscite sono funzioni delle variabili di stato e degli ingressi z1 z1 X1 a1 Xn zm zm an sp1 R’ sn1 an+1 zm+1 R sPk snk an+k zm+k Ck AUTRONICA

22 Macchina di MOORE Le variabili d’uscita, in un determinato istante, sono funzione del sole variabili di stato R s’1 z1 X1 a1 z1 CN2 Xn CN1 an zm zW s1 an+1 zm+1 s’k sk zk an+k Ck AUTRONICA

23 Macchina di Mealy Ritardata
Le uscite sono funzioni delle variabili di stato e degli ingressi, ma risultano sincronizzate z1 z1 X1 a1 Xn zm zm an sp1 R’ sn1 an+1 zm+1 R sPk snk an+k zm+k Ck AUTRONICA

24 Interpretazione diversa
Il registro può essere visto come più registri che svolgono funzioni diverse DR0 R C IN OUT DRn X SR Ck AUTRONICA

25 Osservazioni 1 Registro SR (Status Register)
Contiene le variabili di stato Registro DR0 (Data Register) Contiene parte delle variabili d’uscita (Dati) ….. Registro RDn (Data Register) NOTE La suddivisione in vari “registri dati” è funzionale al progetto Non tutti gli RD servono per le variabili d’uscita AUTRONICA

26 Osservazione 2 La suddivisione dei registri è funzionale al fatto di ridurre considerevolmente gli stati interni della macchina (solo SR da luogo a variabili di stato) Anche la rete combinatoria può essere interpretata come più reti combinatorie AUTRONICA

27 Scomposizione della “RC”
DR0 Parte Operativa IN OUT DRn X C B SR Parte di Controllo Ck AUTRONICA

28 Osservazioni La parte operativa esegue determinate operazioni sulle variabili d’ingresso, in funzione delle variabili d’uscita e delle informazioni fornite dalla parte di controllo (B) microistruzioni Genera le variabili di condizionamento (C) e le nuove uscita La parte di controllo determina i vari passi da eseguire, in funzione delle variabili di stato e delle variabili di controllo AUTRONICA

29 Ulteriore suddivisione
La parte operativa può essere ulteriormente suddivisa in due parti RC Operativa IN RC Condizionamento Parte Operativa C B AUTRONICA Ck

30 Osservazioni La suddivisione vista è dettata da:
Le reti sequenziali complesse sono difficili ad essere gestite Le funzioni della parte operativa solitamente sono. OPERAZIONI ARITMETICHE OPERAZIONI LOGICHE SHIFT MULTIPLEX Una soluzione “guidata” è solitamente più veloce e più efficiente (i criteri d’ottimizzazione sono scelti dal progettista) AUTRONICA

31 Requisiti della Parte OperativaRichiami
Funzioni che deve eseguire fra 2 parole di k bit Somma Differenza Negazione And Or Shift …… Possibilità di essere “PROGRAMMATA” Eventuale memorizzazione del risultato AUTRONICA

32 Parte Operativa A L U AUTRONICA Shift A Shift B R0 R1 R31 MUX A MUX A
MUX B Reg. A Reg. B A L U Reg. U AUTRONICA

33 Architettura di Rete sequenziale complessa
X DR RC 2 B RC Op Z RC 1 RC Con SR C Parte di Controllo Parte Operativa AUTRONICA

34 Osservazioni La parte operativa ha una soluzione generale
Rete combinatoria operativa (ALU) Rete combinatoria di condizionamento (Carry etc.) Soluzione non ottimizzata per la particolare esigenza La parte di controllo è ottimizzata Si può trovare soluzioni più generali non ottimizzate Una rete combinatoria si può sempre realizzare con una ROM AUTRONICA

35 Parte di controllo Microaddress-based B R O M S R C AUTRONICA
microcodice S R eff microindirizzo T microindirizzo F microindirizzo C AUTRONICA

36 Parte di controllo Microinstruction-based R O M S R B C AUTRONICA
microcodice eff microindirizzo T microindirizzo F microindirizzo C AUTRONICA

37 Osservazioni Microaddress-based Microinstruction-based
il registro di stato è piccolo la ROM è in serie alla parte operativa Microinstruction-based il registro di stato è grande fra ROM e parte operativa c’è il registro di stato Consente la presenza di un solo blocco di decisione fra due stati contigui AUTRONICA

38 Architettura Tot. R O M B C Parte di controllo Parte operativa
S R B Shift A Shift B MUX A MUX A MUX B R0 R1 R31 Reg. A Reg. B A L U Reg. U C Parte di controllo Parte operativa AUTRONICA

39 Osservazioni L’architettura della parte di controllo Microinstruction-based evita di avere due reti combinatorie in cascata La parte operativa è general purpose La parte di controllo ha una architettura generale, ma è progettata per la particolare applicazione L’elemento che personalizza l’applicazione è la ROM AUTRONICA

40 Architettura modificata
S R B Shift A Shift B MUX A MUX A MUX B R0 R1 R31 Reg. A Reg. B A L U Reg. U C Parte di controllo Parte operativa AUTRONICA

41 Osservazioni 1 Inconvenienti
La nuova architettura consente di personalizzare il sistema per varie applicazioni Inconvenienti La memoria di personalizzazione, la ROM, presenta una lunghezza di parola eccessiva Microcodice (> di 100 bit) Microindirizzi T (> di 10 bit) Microindirizzi F (> di 10 bit) Condizionamento eff (8 bit) AUTRONICA

42 Osservazione 2 Tecniche di realizzazione di una rete logica
Logica cablata Viene progettata una particolare architettura (ottimizzata) per la risoluzione dello specifico problema Si usano blocchi base standard, le interconnessioni (cablaggio) realizzano la particolare architettura Logica a controllo di programma Viene progettata una architettura che è in grado di svolgere varie funzioni La personalizzazione è ottenuta mediante la particolare sequenza di operazioni svolte dalla macchina Programma AUTRONICA

43 Osservazione 3 Si mappano nella ROM di microprogramma tutte le funzioni possibili della parte operativa Si codificano in modo compatto le varie funzioni in una ROM di mappatura Il programma di personalizzazione dell’applicazione, scritto in un linguaggi opportuno (ASSEMBLER), risiede in una memoria esterna Sono necessari alcuni altri registri e una opportuna rete di controllo (SEQUENZIALIZZATORE) AUTRONICA

44 Architettura a controllo di programma
D In M i c r o C d R O M i c r o C d R e g Parte operativa P R O G A M I n s t R e g M a p R O M I SHIFT SHIFT MUX A MUX B R0 R1 R31 REG. A REG. A A L U P r o g C u n Sequenzer (control logic) A C R e g REG. U Parte di controllo D Out AUTRONICA

45 Osservazioni Sequenzializzatore Program Counter Status Register
Gestisce sia il microprogramma, sia il programma Program Counter Contiene l’indirizzo successivo della locazione di memoria di programma Status Register Contiene informazioni sulle funzioni eseguite dalla parte operativa Inconveniente Elevato numero di terminali (PED) AUTRONICA

46 Architettura a controllo di programma
D In M i c r o C d R O M i c r o C d R e g Parte operativa P R O G A M I n s t R e g M a p R O M I SHIFT SHIFT MUX A MUX B R0 R1 R31 REG. A REG. A A L U P r o g C u n Sequenzer (control logic) A C R e g REG. U Parte di controllo D Out AUTRONICA

47 Osservazioni Sequenzializzatore Program Counter Status Register
Gestisce sia il microprogramma, sia il programma Program Counter Contiene l’indirizzo successivo della locazione di memoria di programma Status Register Contiene informazioni sulle funzioni eseguite dalla parte operativa Inconveniente Elevato numero di terminali (PED) AUTRONICA

48 BUS Utilizzando porte TRE STATE bidirezionali si può utilizzare lo stesso Filo per collegare, in istanti diversi, vari componenti BUS Percorso informatico condiviso fra più unità AUTRONICA

49 Architettura von Neumann
B U S Unità Aritmetica Dati Memoria Stato Istruzioni Unità di Controllo Indirizzi Istruzioni AUTRONICA

50 Descrizione Unita Aritmetica: ALU Unita di Controllo: Memoria
Blocco che “esegue” le operazioni richieste Unita di Controllo: MSF (+ eventuali registri) Memoria Unica per Dati e Programma (RAM) AUTRONICA

51 Osservazioni Macchina di ridotta complessità
========================================= Criterio di valutazione di una architettura Individuazione dei blocchi “congestionati” Limiti Unica memoria Unico BUS (Collo di Bottiglia) AUTRONICA

52 Architettura Harvard Dati Unità Memoria Aritmetica Dati Indirizzi
Stato Istruzioni Unità di Controllo Istruzioni Memoria Istruzioni Indirizzi AUTRONICA

53 Descrizione Memoria Dati Memoria Istruzioni Accesso diretto alla ALU
Realizzazione: RAM Memoria Istruzioni Il contenuto rimane invariato Realizzazione con memoria non volatile: ROM AUTRONICA

54 Osservazioni Non presenta particolari “Colli di bottiglia”
Può essere migliorata per aumentarne la conccorrenzialità Architettura alla quale si ispirano gli attuali microprocessori e DSP AUTRONICA

55 Architettura di un Microprocessore
Data Bus MUX 1 MUX 2 ROM di Mappatura Sequenzializzatore Microprogramma A L U Memoria ROM Microprogramma DEMUX Address Control AUTRONICA

56 Descrizione (1) ROM di Mappatura Sequenzializzatore
Converte il codice macchina in codice interno Sequenzializzatore Rete di controllo effettiva Memoria di Microprogramma Converte il codice interno nei codici di controllo dei vari blocchi AUTRONICA

57 Descrizione (2) ALU MUX 1 e MUX 2 DEMUX Unità Logica Aritmetica
Multiplex di scelta su gli ingressi della ALU DEMUX Gestisce l’indirizzamento del risultato AUTRONICA

58 Osservazioni Funzionamento totalmente in sequenza
Interpretazione Esecuzione Assenza di registri interni Contatore di programma, Registro di stato Accumulatori Generazione degli indirizzi mediante ALU Collo di bottiglia DATA BUS AUTRONICA

59 PIPE-LINE Alcune operazioni possono essere fatte in parallelo
Necessità di disporre di REGISTRI intermedi Mentre la ALU esegue le operazioni richieste, il Sistema di controllo può decodificare l’istruzione successiva Aggiungere una ALU per il calcolo degli indirizzi AUTRONICA

60 Architettura di un Microprocessore (2)
Data Bus Istruc. Reg. MUX + Register R E G ROM 1 A L U Sequenzializzatore DEMUX +Reg. Microprog. ROM MUX + Register Mcropog. Reg. A L U DEMUX +Reg. Address Control AUTRONICA

61 Osservazioni Possibilità di sovrapposizione fra fase di interpretazione ed esecuzione dell’istruzione Possibilità di memorizzazione di risultati intermedi Salvataggio dei registri di controllo Possibili ulteriori modifiche in funzione delle esigenze AUTRONICA

62 Architettura di un calcolatore
DATA BUS ADDRESS BUS CONTROL BUS I / O DATA (RAM) PROG (ROM) CPU AUTRONICA

63 Tipi di architetture in funzione delle istruzioni
RISC => Reduced Instructions Set Computer ridotto numero di istruzioni si effettuano in un numero ridotto di cicli CISC => Complex Instructions Set Computer Istruzioni di elevata capacità si effettuano in un numero grande di cicli AUTRONICA

64 Conclusioni Parte di controllo programmabile Bus
Mapping ROM Instruction Register Sequenzializzatore di microprogramma Sequenzializzatore di programma Bus Architettura Von Neuman Architettura Harvard Architettura di un CALCOLATORE AUTRONICA


Scaricare ppt "Autronica LEZIONE N° 16 AUTRONICA Memorie"

Presentazioni simili


Annunci Google