Bene, perciò cambieranno ad esempio gli interrupt?
E' pacifico assistere, di pari passo con l'avanzamento tecnologico nel campo delle micro-architetture hardware, ad una "mutazione" che riguarda le modalità (
@DispatchCode ne ha illustrate alcune) di gestione dell'I/O, del trasferimento dei dati, dell'interfacciamento delle periferiche e così via ma se dovessi, per ipotesi, progettare un semplice sistema a microprocessore (magari in seguito vedremo come si progetta un computer), la soluzione inerente alla gestione "hardware" dell'Interrupt sarebbe molto semplice :sisi:
Qual è questa soluzione ? :asd:
Si tratta di ricorrere ad un sistema "combinatorio" come quello del Priority Encoder (il codificatore a priorità), ad es. il chip 74147, che ha alcune linee in ingresso e altre linee in uscita che codificano, in binario, il valore corrispondente all'ingresso selezionato:
http://www.elemania.altervista.org/digitale/combinatorio/comb2.html :sisi:
La logica interna (su cui non mi soffermerò per ora) è in grado di "prevedere" una "priorità" fra gli ingressi, anche contemporaneamente abilitati :shock:
In parole povere, in caso di abilitazione contemporanea di più ingressi, viene codificato soltanto uno di questi e più precisamente quello che presenta il valore binario più alto :D
Una porta logica OR s'incarica di "generare" la richiesta di Interrupt al microprocessore, mentre le uscite potranno essere lette da una porta di I/O :sisi:
A questo punto tu potresti "obiettare" su una soluzione, per così dire, "rigida" come quella proposta ma la risposta a tale obiezione è immediata: qualora si ritenga necessaria una gestione più "dinamica", ossia programmabile, degli Interrupt, si può fare ricorso a speciali chip LSI (a larga scala di integrazione) chiamati PIC (ad es. l'8259), in grado di gestire, anche in modo software, più linee di interruzione:
http://xoomer.virgilio.it/ramsoft/asmavan/pic8259.html :sisi:
P.S. Sulle reti combinatorie e le reti sequenziali leggi qui:
https://forum.tomshw.it/threads/approccio-allelettronica-digitale.389539/post-4755129 (e seguenti)
Altri miei interventi qui:
https://forum.tomshw.it/threads/domande-della-vita.743231/post-7046977 (sotto c'è anche un link in cui spiego il funzionamento della porta OR in logica DL a diodi) ;)
--- i due messaggi sono stati uniti ---
Ho dimenticato i microcontrollori … vedi qui:
https://forum.tomshw.it/threads/arduino-101-tutorial-n°1-cosè-arduino.354938/post-6316616 (e seguenti) ;)