matite e gomma

Logo di Conformità WCAG-1 di Livello Tripla A, W3C-WAI Web Content Accessibility Guidelines 1.0

Validazione XHTML 1.0 Validazione CSS 3
Logo del Dipartimento di Matematica e Informatica, Insegnamento di Sistemi dedicati, link al Forum

Interfacce hardware

Lezione 11 di Sistemi dedicati

Docente: Giuseppe Scollo

Università di Catania
Dipartimento di Matematica e Informatica
Corso di Laurea Magistrale in Informatica, AA 2017-18

Indice

  1. Interfacce hardware
  2. argomenti della lezione
  3. funzioni, struttura e progetto di interfacce hardware
  4. modello di programmazione
  5. mappa degli indirizzi
  6. insieme delle istruzioni
  7. esempio: decisioni di progetto per un caso di accelerazione hardware
  8. interfaccia Avalon e modello di programmazione per il caso in esempio
  9. riferimenti

argomenti della lezione

di che si tratta:

funzioni, struttura e progetto di interfacce hardware

seminario di Salvatore Mameli (PDF)

modello di programmazione

modello di programmazione = progetto del controllo + progetto dei dati

il modello di programmazione, cioè la vista software di un modulo hardware, include:

seguono alcune considerazioni sull'impatto che questi due tipi di decisioni di progetto hanno sul progetto del driver software del modulo hardware custom

mappa degli indirizzi

la mappa degli indirizzi riflette l'organizzazione di elementi di memoria del modulo hardware accessibili al software in lettura e in scrittura; il suo progetto dovrebbe procedere dal punto di vista del progettista del software piuttosto che dell'hardware, perciò:

insieme delle istruzioni

il progetto di un buon insieme di istruzioni è un problema difficile, che si pone al progettista in termini di bilanciamento tra flessibilità ed efficienza

ecco alcune generiche linee-guida per il progetto:

esempio: decisioni di progetto per un caso di accelerazione hardware

in una recente esercitazione è stata presentata una realizzazione software del calcolo del delay di una traiettoria di Collatz di dato inizio

realizzazioni hardware della stessa funzione sono state oggetto di precedenti esperienze di laboratorio

le misure di prestazione condotte sulla realizzazione software mostrano che essa assorbe quasi tutto il tempo di esecuzione del programma

una prima alternativa da valutare: integrare la funzione hardware come istruzione custom o come coprocessore mappato in memoria?

altre decisioni di progetto dipendono da questa prima decisione, come segue

interfaccia Avalon e modello di programmazione per il caso in esempio

la descrizione VHDL del circuito di calcolo della funzione va incorporata in un componente dotato di interfacce Avalon per i segnali di Clock, Reset e di Avalon MM Slave, sì da ricevere il dato iniziale da un'operazione di scrittura e fornire il risultato in risposta a un'operazione di lettura

indirizzamento del coprocessore: poiché le operazioni di scrittura (del dato iniziale) e lettura (del risultato) avvengono in tempi diversi e hanno la stessa dimensione del dato, un solo indirizzo è sufficiente

driver software : si possono definire due macro e una funzione per l'interfaccia software di accesso al bus: DC_RESET(d), DC_START(d,x0), unsigned int delay(d), dove d è l'indirizzo assegnato al coprocessore

riferimenti

letture raccomandate:

per ulteriore consultazione: