Introduzione alla Microprogrammazione

Размер: px
Начинать показ со страницы:

Download "Introduzione alla Microprogrammazione"

Транскрипт

1 Introduzione alla Microprogrammazione Corso Calcolatori Elettronici 2 Prof. Antonino Mazzeo Ing. Casola Valentina

2 Organizzazione a bus singolo dell architettura interna della CPU del 68000

3 Porte di ingresso ed uscita per i registri Ogni registro connesso al bus in modo bidirezionale deve avere due porte tristate pilotate da segnali di controllo indipendenti

4 Esempio di esecuzione di una istruzione completa L istruzione del 68000: Add (R3), R1 (modalità di indirizzamento indiretto) Richiede le seguenti azioni: 1. Prelevare l istruzione, 2. Prelevare il primo operando (il contenuto della locazione puntata da R3), 3. Eseguire l addizione, 4. Caricare il risultato nel registro R1.

5 Sequenza di controllo necessaria 1. Pcout, MARin, Read, ClearY, SetCarry-in to ALU, Add, Zin 2. Zout, Pcin, WMFC 3. MDRout, IRin 4. R3out, MARin, Read 5. R1out, Yin, WMFC 6. MDRout, Add, Zin 7. Zout, R1in, End. Fetch e incremento PC Il passo 3 comincia appena il dato è disponibile wait for MFC Tra 3 e 4 il circuito di decodifica delle istruzioni interpreta il contenuto di IR

6 Decodificatore delle istruzioni La CPU deve generare nella giusta sequenza i segnali di controllo per la esecuzione delle istruzioni Ci sono due tecniche prevalenti per progettare il decod. di istruzioni: Tecnica di controllo cablato, tecnica di controllo microprogrammato;

7 Tecnica di controllo microprogrammato CW Il decodificatore di istruzioni genera delle Control Word (CW) in cui ogni bit rappresenta uno specifico segnale di controllo della CPU (Pcin, Zout,..)

8 Controllo microprogrammato (1) Una sequenza di CW che corrisponde alla sequenza di controllo di una istruzione macchina, costituisce la microprocedura per quella istruzione, mentre le singole parole della microprocedura sono dette microistruzioni; Le microprocedure corrispondenti alle istruzioni ISA sono memorizzate nella memoria di controllo

9 Controllo microprogrammato (2) Per leggere le CW dalla memoria di controllo viene usato un micropc (contatore di microprogramma) tempificato dal clock, Per gestire condizioni di salto, il generatore di indirizzi di partenza e il microprogramma deve prevedere diverse possibilità in caso si verifichino condizioni di salto.

10 Microistruzioni (1) Come organizzare una CW? 1. Posso usare un bit per ogni segnale: 1. La decodifica è molto semplice; 2. microistr. molto lunghe con pochi 1 attivi contemporaneamente; 2. Raggruppo i segnali mutuamente esclusivi (solo un registro alla volta può scrivere sul singolo bus): 1. Utilizzo uno schema di codifica binaria in modo da usare semplici decodificatori dei segnali: per le 16 istruzioni della ALU bastano 4 bit, per gli n segnali di uscita dei registri dato uso log(n) bit, per gli n segnali di ingresso dei registri dato uso log(n) bit,.

11 Microistruzioni (2) Il raggruppamento dei segnali richiede esplicitamente la presenza di hw aggiuntivo per i decodificatori che è però compensato dall avere una memoria di controllo più piccola; Ovviamente è possibile raggruppare anche tutti i segnali insieme e non solo quelli mutuamente esclusivi in modo da avere CW di lunghezza minima; in questo caso però i circuiti di decodifica sono, ovviamente, più complessi.

12 Microprogrammazione orizzontale e verticale Architetture che utilizzano un alto grado di codifica delle microistruzioni si chiamano ad organizzazione verticale ; viceversa, architetture che utilizzano uno schema di codifica minimo, sono dette ad organizzazione orizzontale.

13 Organizzazione di un microprogramma (1) Il microprogramma deve coprire tutto l ISA; le memorie di controllo sono di dimensioni notevoli, considerando tutte le possibili modalità di indirizzamento, in realtà, molte micro-procedure hanno molte microistruzioni in comune; Occorre organizzare la memoria in modo da individuare e scrivere una unica volte tutte le microistruzioni comuni a diverse operazioni.

14 Organizzazione di un microprogramma (2) Due tecniche diffuse: Condividere le parti comuni di istruzioni diverse scegliendo opportunamente gli indirizzi delle microistruzioni in modo che la distanza tra due microistruzioni che hanno parti in comune sia di un solo bit (qualsiasi bit del microindirizzo) che possa facilmente essere valutato con una operazione di bit OR-ing. Includere in ogni microistruzione un campo indirizzo che indica la locazione della microistruzione successiva (aumento la lunghezza della CW ma il sistema è più performante);

15 Esempio di bit OR-ing Supponiamo che una microistruzione di una ISTR. con tecnica di indirizzamento immediato sia memorizzata alla locazione 170, conviene memorizzare la microistruzione della stessa ISTR. ma con indirizzamento indiretto alla locazione 171 in questo modo: il microprogramma procede naturalmente fino a 169 come se volesse eseguire la 170, se poi si verifica una condizione che specifica la modalità di indirizzamento indiretto, allora si utilizza una porta OR per cambiare il bit meno significativo dell indirizzo ad 1.

16 Riferimenti bibliografici Hamacher CAP 3 A.S. Tanenbaum.. CAP 4: The microarchitecture level

Struttura del processore. Funzionamento del processore

Struttura del processore. Funzionamento del processore Struttura del processore L unità di elaborazione Funzionamento del processore. Prelievo dell istruzione dalla memoria al processore (dall indirizzo indicato dal PC al registro di istruzione IR) IR [[PC]]

Подробнее

Architettura degli elaboratori - CPU multiciclo A.A. 2016/17. Architettura degli elaboratori

Architettura degli elaboratori - CPU multiciclo A.A. 2016/17. Architettura degli elaboratori Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate Architettura degli elaboratori Marco Tarini Dipartimento di Scienze Teoriche e Applicate [email protected] Progetto

Подробнее

Realizzazione del controllo

Realizzazione del controllo Realizzazione del controllo La generazione della corretta sequenza di segnali di controllo per l esecuzione di una data istruzione avviene da parte dell Unità di Controllo. La sequenza generata è funzione:

Подробнее

Architettura degli elaboratori Tema d esame del 20/01/2016

Architettura degli elaboratori Tema d esame del 20/01/2016 Architettura degli elaboratori - Luigi Lavazza A.A. 5/6 Università degli Studi dell Insubria Dipartimento di Informatica e Comunicazione Architettura degli elaboratori Tema d esame del //6 Luigi Lavazza

Подробнее

Esercizio n. 7 - Microcodice

Esercizio n. 7 - Microcodice Esercizio n. 7 - Microcodice Lo schema riportato qui di fianco illustra l architettura di processore a bus singolo di riferimento. Si scriva il microcodice capace di eseguire la coppia di istruzioni seguenti:

Подробнее

1 Esercizi con architettura a 1 bus

1 Esercizi con architettura a 1 bus 1 Esercizi con architettura a 1 bus 1.1 Fetch dell istruzione NOTA: l istruzione ClearY azzera il registro Y mentre l istruzione CB imposta a 1 il bit di riporto/prestito in modo da sommare/sottrarre 1.

Подробнее

Architettura degli elaboratori

Architettura degli elaboratori Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate Architettura degli elaboratori Tema d esame del /9/24 Dipartimento di Scienze Teoriche e Applicate [email protected]

Подробнее

Esercizi su microistruzioni. 1 Esercizi con architettura a 1 bus

Esercizi su microistruzioni. 1 Esercizi con architettura a 1 bus Esercizi su microistruzioni Ogni riga elenca i segnali che vengono attivati nello stesso ciclo di clock. Si assume che lettura e scrittura dei registri avvengano all inizio e alla fine del ciclo di clock,

Подробнее

Architettura del calcolatore (Seconda parte)

Architettura del calcolatore (Seconda parte) Architettura del calcolatore (Seconda parte) Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin LINGUAGGIO E ORGANIZZAZIONE DEL CALCOLATORE Linguaggio assembly

Подробнее

AXO - Architettura dei Calcolatori e Sistema Operativo. organizzazione strutturata dei calcolatori

AXO - Architettura dei Calcolatori e Sistema Operativo. organizzazione strutturata dei calcolatori AXO - Architettura dei Calcolatori e Sistema Operativo organizzazione strutturata dei calcolatori I livelli I calcolatori sono progettati come una serie di livelli ognuno dei quali si basa sui livelli

Подробнее

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

Подробнее

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

Подробнее

Introduzione all'architettura dei Calcolatori. Maurizio Palesi

Introduzione all'architettura dei Calcolatori. Maurizio Palesi Introduzione all'architettura dei Calcolatori Maurizio Palesi 1 Agenda Architettura generale di un Sistema di Elaborazione La memoria principale Il sottosistema di comunicazione La CPU Miglioramento delle

Подробнее

Architettura del Calcolatore

Architettura del Calcolatore Giuseppe Manco Lezione 3 17 Ottobre 2003 Architettura del calcolatore Il calcolatore è uno strumento programmabile per la rappresentazione, la memorizzazione e l elaborazione delle informazioni un calcolatore

Подробнее

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

Architettura degli Elaboratori Lez. 8 CPU MIPS a 1 colpo di clock. Prof. Andrea Sterbini Architettura degli Elaboratori Lez. 8 CPU MIPS a 1 colpo di clock Prof. Andrea Sterbini [email protected] Argomenti Progetto della CPU MIPS a 1 colpo di clock - Istruzioni da implementare - Unità

Подробнее

che vengano generati nell ordine corretto i sistema (es., la memoria, l unità aritmetico-

che vengano generati nell ordine corretto i sistema (es., la memoria, l unità aritmetico- Principi di architetture dei calcolatori: l unità di controllo Mariagiovanna Sami L unità di controllo Per eseguire le istruzioni di macchina, occorre che vengano generati nell ordine corretto i segnali

Подробнее

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

Подробнее

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

Подробнее

Struttura di un elaboratore

Struttura di un elaboratore Struttura di un elaboratore Fondamenti di Informatica 1 Modello architetturale di un computer Ogni computer è costituito da un insieme di blocchi funzionali tra loro interconnessi da sistemi di comunicazioni,

Подробнее

Corso di Laurea in Informatica Architetture degli Elaboratori

Corso di Laurea in Informatica Architetture degli Elaboratori Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Scritto del 3 aprile 2006 Esercizio 1 (punti 3) Considerare una codifica su 8 bit in complemento a due e rappresentare i seguenti

Подробнее

ISA DLX: Implementazione Tramite Struttura Sequenziale

ISA DLX: Implementazione Tramite Struttura Sequenziale Calcolatori Elettronici L-A ISA DLX: Implementazione Tramite Struttura Sequenziale DLX "sequenziale" 1 Richiamo: caratterirtiche della CPU DLX DLX è un nome di fantasia (sta per De LuXe). Questa CPU è

Подробнее

Corso di Laurea in Informatica Architetture degli Elaboratori

Corso di Laurea in Informatica Architetture degli Elaboratori Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Scritto del 6 dicembre 2005 Esercizio 1 (punti -1, 2) Considerare una codifica su 8 bit in complemento a due e rappresentare i

Подробнее

Corso di Laurea in Informatica Architetture degli Elaboratori

Corso di Laurea in Informatica Architetture degli Elaboratori Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Scritto del 7 luglio 2005 Esercizio 1 (punti 2) Considerare la rappresentazione dei numeri relativi su 10 bit in complemento a

Подробнее

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

ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).! ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).! MACCHINA DI VON NEUMANN! UNITÀ FUNZIONALI fondamentali! Processore

Подробнее

Architettura dei Calcolatori Elettronici

Architettura dei Calcolatori Elettronici Architettura dei Calcolatori Elettronici Prof. Orazio Mirabella L architettura del Calcolatore: esame delle sue caratteristiche Fondamentali Capacità di eseguire sequenze di istruzioni memorizzate Calcolatore

Подробнее

CPU a singolo ciclo. Lezione 18. Sommario. Architettura degli Elaboratori e delle Reti

CPU a singolo ciclo. Lezione 18. Sommario. Architettura degli Elaboratori e delle Reti Architettura degli Elaboratori e delle Reti Lezione 18 CPU a singolo ciclo Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 18 1/2 Sommario!

Подробнее

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

Подробнее

Architettura di un processore basato su registri generali.

Architettura di un processore basato su registri generali. Architettura di un processore basato su registri generali. M. Esposito ([email protected]) 26 febbraio 2007 In Fig. 1 è riportato uno schema di principio che raffigura l architettura di un processore basato

Подробнее

Architettura di un calcolatore: Introduzione parte 2

Architettura di un calcolatore: Introduzione parte 2 Corso di Calcolatori Elettronici I Architettura di un calcolatore: Introduzione parte 2 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle

Подробнее

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

Подробнее

Il processore: unità di controllo

Il processore: unità di controllo Il processore: unità di lo Architetture dei Calcolatori (lettere A-I) L unità di lo L unità di lo è responsabile della generazione dei segnali di lo che vengono inviati all unità di elaborazione Alcune

Подробнее

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

Подробнее

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

Подробнее

Corso di Laurea in Informatica

Corso di Laurea in Informatica Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Scritto del 10 luglio 2006 Si ricorda che non è possibile usare appunti, calcolatrici, e nessun altro materiale cartaceo o elettronico.

Подробнее

Esercitazione 06 Progettazione di una CPU RISC-V

Esercitazione 06 Progettazione di una CPU RISC-V Esercitazione 06 Progettazione di una CPU RISC-V Gianluca Brilli [email protected] 04/06/19 ARCHITETTURA DEI CALCOLATORI 1 Overview In questa esercitazione andremo a progettare una semplice architettura

Подробнее

Architettura del Calcolatore

Architettura del Calcolatore Francesco Folino FUNZIONI DI UN CALCOLATORE Elaborazione Memorizzazione Trasferimento Controllo MACCHINA DI VON NEUMANN TRASFERIMENTO Obiettivo: permettere lo scambio di informazioni tra le varie componenti

Подробнее

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?

Подробнее

A.A. 2018/2019. CPU e Linguaggio Macchina FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE. Docente Prof. Raffaele Pizzolante

A.A. 2018/2019. CPU e Linguaggio Macchina FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE. Docente Prof. Raffaele Pizzolante A.A. 2018/2019 Docente Prof. Raffaele Pizzolante FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE Architettura di Von Neumann Modello concettuale di un architettura di computer che permette di rappresentare,

Подробнее