« Forum anonimo (sperimentale)

Dubbio su periferiche mappate in memoria

6 replies
Last
Potreste chiarire questo punto a riguardo delle I/O mappate in memoria?


L'indirizzo dei registri di una periferica è mappato in memoria, la selezione di un registro della periferica avviene tramite un selettore sul bus indirizzi?


Grazie

6 replies
  1. Re: Dubbio su periferiche mappate in memoria
    • L'argomento riguarda le "periferiche mappate in memoria", non le "I/O mappate in memoria".
    • Attenzione, allo scopo di evitare abbassamenti di voto: non è l'indirizzo di un registro periferica ad essere mappato in memoria, ma il registro periferica.
    • Lo "essere mappato in memoria" si può, forse in modo più appropriato, dire anche "essere presente ad un particolare indirizzo dello spazio di indirizzamento".
    • Il circuito che decodifica l'indirizzo del registro ovvero che fa diventare logicamente attiva la sua uscita e fa quindi succedere altri spostamenti di valori logici tra registro e bus, è un circuito molto più semplice di quelli che decodificano una posizione in memoria tra tantissime altre. I decodificatori dei pochi indirizzi attribuiti ad una periferica potrebbero essere semplicemente dei comparatori con delle configurazioni di bit predisposte nella periferica, ad esempio con un insieme di collegamenti a zeri ed uni logici.
    • Spero di aver risposto, nel caso richieda.
    2 replies
  2. Re: Dubbio su periferiche mappate in memoria

    Quello che temo di non capire è se il selettore della periferica si trova sul bus indirizzi, suppongo di sì e che lo spazio di indirizzamento è su 32 linee. Ma quindi mappato in memoria significa che la CPU attiva una particolare sequenza di linee dello spazio di indirizzamento per attivare una particolare periferica è corretto? 

    E poi il bus dati preleva i dati e il bus di controllo gestisce la periferica?

    Sto andando in confusione con altre cose viste in precedenza su altri studi.

    1 reply
  3. Re: Dubbio su periferiche mappate in memoria
    • Tutti i decodificatori di indirizzi sono saldati ai fili del bus indirizzi, su una macchina che ha un solo spazio di indirizzamento.
    • Lo spazio di indirizzamento è grande 2numero linee su bus indirizzi.
    • mappato in memoria significa, operativamente, che la CPU raggiunge quel registro come se fosse in memoria, mentre invece si trova altrove, dentro la periferica, decine di migliaia di nanometri di distanza.
    • La sua frase "la CPU attiva una particolare sequenza di linee dello spazio di indirizzamento" è pericolosa, è una di quelle frasi per cui si danno i "-2", in quanto vengono usate le parole un po' a caso... La risposta corretta in questo caso potrebbe essere qualcosa tipo: "la CPU imposta i bit sul bus indirizzi e questa configurazione porta alla attivazione dell'uscita del decodificatore della periferica".
    • Circa il prelievo dei dati: non è il bus dati che preleva i dati, è la CPU che legge i dati dal bus dati (se la periferica è di ingresso ovvero l'uscita attiva del decoder della periferica fa collegare l'uscita del registro dati della periferica al bus dati, come avviene per il collegamento della parola di memoria in una lettura in memoria); se la periferica è di uscita allora il prelievo dal bus dati lo fa la periferica (collegando gli ingressi del suo registro dati al bus dati) e la CPU avrà prima messo sul bus dati il dato.
    • Non è il bus controllo che gestisce la periferica; è la CPU che, attraverso il bus controllo, gestisce la periferica.
    • Spero proprio sia più chiaro.
    1 reply
  4. Re: Dubbio su periferiche mappate in memoria
    Grazie mille! Mi ha davvero chiarito questa cosa che mi stava tormentando, poi ovviamente sarà l'unica domanda che non troverò all'esame (con la solita fortuna) però a livello di pura conoscenza personale mi ha davvero aiutato molto.

    Comunque certo, i bus sono solo linee e non prelevano nulla e non controllano nulla, per la fretta ho scritto un po' di cavolate, l'esame lo farò con calma. Grazie ancora

  5. Re: Dubbio su periferiche mappate in memoria

    più che altro da queste slide in particolare risulta che le periferiche, senza parlare del DMA, hanno due registri e che questi sono mappati in memoria. Se non è così allora non capisco come funziona e mi sto confondendo.

    In ogni caso la ringrazio per la risposta.




    1 reply
  6. Re: Dubbio su periferiche mappate in memoria

    Non mi pare che ci siano dubbi sul fatto che i registri periferica siano mappati in memoria... Avevo capito che il dubbio fosse sul meccanismo con cui si ottiene questa mappatura. Del resto si tratta di un dubbio che ricorre tra gli studenti (me incluso quando ero studente), tutto "normale" (fino al momento dell'esame ;-) ).