ESERCIZIO 16 La CPU può selezionare lo slave con cui effettuare una lettura con una modalità indiretta chiamata "Memory mapped I/O". La CPU non sa realmente quanti elementi sono connessi al sistema e neanche quanti elementi di memoria contiene il chip con cui esegue una transizione. Poichè il bus permette di specificare, ad esempio, da 0 a 64k locazioni la CPU capisce che al bus è connesso un solo elemento di memoria da 0 a 64k ,ed esegue lettura e scrittura su una memoria "virtuale" da 64k. E' un'unica memoria divisa in porzioni ed è la mappatura degli elementi reali con cui si può comunicare mediante gli indirizzi da 0 a 64k. Questa memoria "virtuale" è però connessa con i veri dispositivi . Quando la CPU vuole comunicare con uno dei chip viene settato il chip CS corrispondente. I chip sono posizionati in modo che, quando la CPU seleziona un indirizzo, la decodifica avvenga in modo corretto, attraverso delle porte nand o nor disposte opportunamente. Se ad esempio vi sono tre chip collegati con la CPU, il primo viene selezionato da indirizzi del tipo 00000xxxxxxxxxxx, il secondo da indirizzi del tipo 10000xxxxxxxxxxx e il terzo da 11111111111111xx.