DIEE, University of Cagliari – Cagliari, October 2006 Architetture on-chip Sistemi di interconnessione di tipo Shared Bus AMBA AHB AMBA AHB Multilayer.

Slides:



Advertisements
Presentazioni simili
Scenario di reti a larga banda Scenario di reti a larga banda MAN MAN LAN LAN LAN B-ISDN.
Advertisements

Gestione Input Output A. Ferrari.
Referenti: Prof. Anna Antola Ing. Marco Domenico Santambrogio
Realizzazione di un componente per un sistema dedicato: sviluppo dell’algoritmo di crittografia RC6 a 128 bit Relatore: Prof. Fabrizio Ferrandi Correlatore:
Architettura di rete Le reti sono sempre organizzate a livelli
SINTESI PUNTI SALIENTI Da shared bus a network on chip Concetto di nodo Standard commerciali shared bus: AMBA, Wishbone, CoreConnect Opzioni avanzate shared.
Comandi ai dispositivi di I/O + Si usano due metodi per mandare informazioni a un dispositivo: –Istruzioni specifiche di I/O –I/O mappato in memoria (memory.
4-1 Mobilità in Internet Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All Rights.
Architetture dei Calcolatori (Lettere j-z) Il Processore (2)
Reti e Sistemi operativi
Architetture scalabili e flessibili a basso consumo Mariagiovanna Sami Polimi Lecce – 5 luglio 04.
Glossario. AGP Accelerated Graphics Port: architettura di bus che permette alle schede grafiche laccesso diretto al bus di sitema (fino a 100MHz), invece.
1 Corso di Informatica (Programmazione) Lezione 4 (24 ottobre 2008) Architettura del calcolatore: la macchina di Von Neumann.
Schema di principio del SCA di una MMU Memory Management Unit
Il livello Microarchitetturale
Il livello analogico digitale Lezione 3_4 Chip delle CPU e Bus.
Xscale Nicola Rebagliati 2001s135. Cose Xscale Xscale è una microarchitettura per processori che fornisce ottime prestazioni con bassi consumi energetici.
3. Architettura Vengono descritte le principali componenti hardware di un calcolatore.
1.7 Risorse di sistema Comprendere le risorse di sistema Gestire le risorse di sistema.
Estensioni allarchitettura di Von Neumann Vito Perrone Corso di Informatica A per Gestionali.
BUS DI CPU M. Mezzalama - M. Rebaudengo Politecnico di Torino
Architettura dell’elaboratore
INPUT / OUTPUT. Connessione tra componenti CPU RAM DischiMonitor StampanteTastieraMouse BUS = Interfacce o Controller.
INTRODUZIONE l sistema operativo è il primo software che lutente utilizza quando accende il computer; 1)Viene caricato nella memoria RAM con loperazione.
Modulo 2 – U.D. 1 – Lez. 2 Ernesto Damiani – Sistemi di elaborazione dell'informazione.
Il Calcolatore Elettronico
SISTEMA OPERATIVO..
L' ARCHITETTURA DI VON NEUMANN
Il commutatore o SWITCH Gli Switch sono efficienti alternative agli hub, in quanto sono in grado di instradare la trasmissione di un nodo direttamente.
Architettura del calcolatore
Il modello di riferimento OSI
ARCHITETTURA DI UN ELABORATORE
BUS DI CPU M. Mezzalama - M. Rebaudengo - M. Sonza Reorda
Progetto di una memoria cache per il processore DLX Andrea Grandi Filippo Malaguti Massimiliano Mattetti Gabriele Morlini Thomas Ricci Progetto di Calcolatori.
Progetto di una memoria cache per il processore DLX Andrea Grandi Filippo Malaguti Massimiliano Mattetti Gabriele Morlini Thomas Ricci Progetto di Calcolatori.
Progetto di una memoria cache per il processore DLX Andrea Grandi Filippo Malaguti Massimiliano Mattetti Gabriele Morlini Thomas Ricci Progetto di Calcolatori.
Luca Orrù 1 Input/Output. 2 SOMMARIO Organizzazione di sistema Trasferimento dati; Gestione I/O.
L O STACK TCP/IP. LAN LAN è un sistema di comunicazione che permette ad apparecchiature indipendenti di comunicare tra loro, entro un’area limitata, utilizzando.
Architettura di una CPU
4/12/98Cristina Silvano - CEFRIEL1 Sintesi ad alto livello Cristina Silvano CEFRIEL - Politecnico di Milano Electronic Design Automation (EDA) Area Via.
1 M.MezzalamaM. Rebaudengo, M. Sonza Reorda Politecnico di Torino Dip. di Automatica e Informatica M. Mezzalama - M. Rebaudengo SOTTOSISTEMA DI MEMORIA.
CENTRAL PROCESSOR UNIT (CPU) 1/2 E’ l’unità che regola e controlla tutti I processi nel microcontroller. E’ formata da diverse sottounità tra cui: Instruction.
Calcolatori Elettronici Il Processore
Luglio 2004Generalità Hardware1 Luglio Generalità Hardware2 MACCHINA DI VON NEUMAN (1947) BUS Processore Elaborazione Controllo Memoria Ingresso.
Calcolatori Elettronici Il Processore (2)
SOTTOSISTEMA DI MEMORIA
In grado di effettuare molte azioni elementari indipendenti automa universale generatore di sequenze riconoscitore di sequenze circuiti sequenziali sommatore.
Sistemi Elettronici Programmabili
MICROPROCESSORI Un processore è un circuito integrato in grado di effettuare operazioni di calcolo o di elaborazione dell'informazione Il circuito contiene.
Clocking Il segnale di Clock definisce quando i segnali possono essere letti e quando possono essere scritti Fronte di discesa (negativo) Falling edge.
Sistemi embedded per l’auto: ricevitore GPS
Sistema operativo Il Sistema Operativo gestisce le risorse hw e sw del sistema di elaborazione Facilita l'interazione tra utente e sistema Esistono diversi.
L’esecuzione dei programmi
Informatica Generale Marzia Buscemi
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Fondamenti di Informatica1 Tipi di reti Cluster: –elaborazione parallela, rete interna Rete locale: –edificio, rete privata Rete metropolitana: –città,
MPSOC 3 Novembre Università degli studi di Bologna Facoltà di ingegneria Exploring the MPSoC Design Space: the MPARM environment Francesco Poletti.
1 M. Rebaudengo, M. Sonza Reorda Politecnico di Torino Dip. di Automatica e Informatica M. Rebaudengo - M. Sonza Reorda Interfaccia verso il bus.
Corso di Informatica Applicata - Lezione I - © Saverio De Vito Corso di Informatica Applicata Introduzione Università degli studi di Cassino Corso.
1 Informatica Generale Alessandra Di Pierro Ricevimento: Giovedì ore presso Dipartimento di Informatica, Via Buonarroti,
Accesso a ShareGrid mediante VPN ing. Sergio Rabellino Dipartimento di Informatica Università degli Studi di Torino.
Componenti hardware PC: I componenti si possono dividere in quattro gruppi: 1. DISPOSITIVI DI INPUT/ OUTPUT (I/O); 2. MEMORIA ELETTROMAGNETICA NON VOLATILE.
Presentazione di sistemi Ambrosio Federica Anna Esposito 3C inf.
I Microprocessori Unità 3 del libro Internet Working Sistemi e reti.
Il modello di Von Neumann
1 Il livello transport. Concetti fondamentali - Canale logico e canale fisico 2 Quando un segnale deve essere trasmesso, viene inviato su un Canale, cioè.
Gestione delle periferiche. Le periferiche sono dispositivi che permettono le operazioni di input/output.
HARDWARE (2). MEMORIE Due classi di memoria MEMORIA CENTRALE –media capacità - ottima velocità MEMORIA DI MASSA elevata capacità - bassa velocità.
Il BUS è un elemento fondamentale dei computer che ha lo scopo di collegare elettricamente i dispositivi, le periferiche e le memorie con il microprocessore,
Algoritmi Avanzati a.a.2011/2012 Prof.ssa Rossella Petreschi Algoritmi distribuiti Lezione n°9.
Transcript della presentazione:

DIEE, University of Cagliari – Cagliari, October 2006 Architetture on-chip Sistemi di interconnessione di tipo Shared Bus AMBA AHB AMBA AHB Multilayer University of Cagliari DIEE - Dept. of Electrical and Electronic Engineering EOLAB – Microelectronic Lab.

DIEE, University of Cagliari – Cagliari, October 2006 Outline Introduzione AMBA bus specification AMBA AHB AMBA Multilayer AMBA AXI (cenni)

DIEE, University of Cagliari – Cagliari, October 2006 Alternative Grandi produttori di semiconduttori : ST Microelectronics (STbus) IBM (CoreConnect) Core vendors : ARM (AMBA bus) Interconnect IP vendors : SiliconBackplane

DIEE, University of Cagliari – Cagliari, October 2006 AMBA bus AMBA : Advanced Microcontroller Bus Architecture Standard di comunicazione on-chip per la definizione di microcontrollori embedded con performance elevate All’interno delle specifiche AMBA sono definiti tre diversi tipi di bus: Advanced High-performance Bus (AHB) Advanced System Bus (ASB) Advanced Peripheral Bus (APB)

DIEE, University of Cagliari – Cagliari, October 2006 AMBA bus AHB bus: Sistema bus high performance. E’ il nucleo di un sistema di interconnessione AMBA. Supporta la connessione a processori, a memorie on-chip e off-chip e l’interfaccia con celle per la gestione low-power della connessione con le periferiche. ASB bus: Sistema bus alternativo il cui utilizzo è indicato per le applicazioni in cui le caratteristiche high-performance di AHB non sono richieste. Supporta le stesse connessioni di AHB. APB bus: Sistema bus ottimizzato per un minimo consumo di potenza. La complessità dell’intefaccia è ridotta in maniera da supportare la connessione di periferiche lente. Può essere connesso con entrambe le versioni del bus di sistema. Le specifiche AMBA sono studiate per assicurare facilità di uso e di integrazione in un design flow che comprenda sia sintesi che fase di test automatico

DIEE, University of Cagliari – Cagliari, October 2006 Obiettivi di AMBA Lo sviluppo di AMBA si è posto 4 obiettivi fondamentali: right-first-time development technology-independent modular system minimizzazione dell’overhead di silicio dovuto alla comunicazione on chip e off-chip

DIEE, University of Cagliari – Cagliari, October 2006 BRIDGE UARTTimer PIOKeyPad High performance ARM processor High bandwidth On-chip RAM DMA High Bandwidth External Memory Interface Un tipico sistema AMBA-based AHB or ASBAPB

DIEE, University of Cagliari – Cagliari, October 2006 AMBA AHB - Datapath Schema di interconnessione a multiplexer centrale Tutti i master possono generare i segnali che indicano il trasferimento da effettuare. L’arbitro determina quali saranno i segnali che verranno propagati verso tutti gli slave. Un decoder centrale è necessario per identificare quale slave è coinvolto nella transazione e quali segnali di risposta propagare verso i master.

DIEE, University of Cagliari – Cagliari, October 2006 Comunicazione su AMBA AHB Overview  Un master richiede l’accesso al bus  L’arbitro indica al master se ha ottenuto la risorsa richiesta.  Una volta che l’accesso è stato garantito ogni trasferimento consiste in due fasi:  Un ciclo di indirizzo e controllo Il master che ha ricevuto il GRANT inizia il trasferimento pilotando i segnali relativi all’indirizzo e alla fase di controllo (indirizzo, direzione e dimensione della transazione, burstness)  Uno o più cicli di dato (data cycles) Il bus dati di scrittura viene usato per trasferire dei dati dal master a uno slave oppure quello di lettura viene utilizzato per spostare dati dallo slave al master. La fase dati può durare più di un ciclo a seconda dello stato dello slave destinatario della transazione (HREADY HRESP)

DIEE, University of Cagliari – Cagliari, October 2006 Basic Transfer

DIEE, University of Cagliari – Cagliari, October 2006 Transfer with wait states

DIEE, University of Cagliari – Cagliari, October 2006 Multiple transfers

DIEE, University of Cagliari – Cagliari, October 2006 Tipi di transfer 2’b00IDLE IDLE transfer is used when a master is granted but does not wish to perform a data transfer 2’b01BUSY Is used to insert IDLE cycles in the middle of a burst transfer 2’b10NONSEQIndicates the first transfer of a burst or a single tranfer 2’b11SEQIndicates the remaning transfer of a burst

DIEE, University of Cagliari – Cagliari, October 2006 Control signals Burstness HBURST[2:0] Transfer Direction HWRITE HIGH il master manderà il dato in broadcast sul bus HWDATA[31:0] LOW la transazione in corso è una read e il dato sarà generato dallo slave sul bus dati HRDATA[31:0] Transfer size HSIZE [2:0] Indica la dimensione del dato da trasferire Protection control HPROT [3:0] Indica se il trasferimento è : Un opcode fetch Un trasferimento ad accesso privilegiato o in modalità utente 3’b000SINGLE3’b100WRAP8 3’b001INCR3’b101INCR8 3’b010WRAP43’b110WRAP16 3’b011INCR43’b111INC16

DIEE, University of Cagliari – Cagliari, October 2006 Slave status Per comunicare il proprio stato lo slave pilota 2 segnali: HREADY HRESP 1 Transfer done 0 Transfer extended 2’b00OK the transfer is progressing normally 2’b01ERRORa transfer error has occurred 2’b10RETRYThe master should retry the transfer until it completes 2’b11SPLIT The master should retry the transfer when it is next granted

DIEE, University of Cagliari – Cagliari, October 2006 Address decoding Master #1 Master #2 Slave #1 Slave #2 Slave #3 Decoder HADDR_M1[31:0] HADDR_M2[31:0] HADDR to all slaves HSEL_S1 HSEL_S2 HSEL_S3 Address and Control mux

DIEE, University of Cagliari – Cagliari, October 2006 Arbitration Decoder Master #1 Master #2 Master #3 HGRANT_M1 HGRANT_M2 HGRANT_M3 HADDR_M1[31:0] HADDR_M2[31:0] HADDR_M3[31:0] HADDR to all slaves HMASTER[3:0]

DIEE, University of Cagliari – Cagliari, October 2006 Bus topologies Un singolo bus condiviso è chiaramente non scalabile. I progettisti utilizzano perciò come soluzione alternativa delle topologie di bus. I bus sono interconnessi tra di loro secondo due approcci principali: Clustering and Bridging Multilayer

DIEE, University of Cagliari – Cagliari, October 2006 Multilayer Master decoder Mux Shared Slave Shared Slave Shared Slave Shared Slave Master

DIEE, University of Cagliari – Cagliari, October 2006 AMBA AXI TARGET: sistemi high-performance, high-frequency. Le caratteristiche chiave del protocollo AXI sono: fasi address/control separate supporto per dati non allineati (byte strobes) transazioni burst-based canali separati per read e write per permettere Direct Memory Access (DMA) a basso costo multiple outstanding addresses riordinamento delle transazioni fuori ordine supporto per l’ aggiunta di stadi di registi che permettano il rispetto delle constraint di timing.

DIEE, University of Cagliari – Cagliari, October 2006 AMBA AXI channels Tutti e 5 i canali utilizzati per le transazioni sono indipendenti, consistono di un set di segnali necessari per il trasferimento dell’informazione e utilizzano un sistema di handshake di tipo VALID-READY