Funcions bàsiques del controlador
Feb 06, 2023| 1. Memòria de dades: com que la velocitat dels dispositius d'E/S és baixa i la taxa de CPU i memòria és alta, s'ha d'establir una memòria intermèdia al controlador. En el moment de la sortida, utilitzeu aquesta memòria intermèdia per emmagatzemar temporalment les dades transmeses per l'amfitrió a alta velocitat i, a continuació, transmeteu les dades de la memòria intermèdia al dispositiu d'E/S a la velocitat que té el dispositiu d'E/S; en el moment de l'entrada, el buffer utilitza Emmagatzema temporalment les dades enviades des del dispositiu d'E/S i, després de rebre un lot de dades, transmet les dades del buffer a l'amfitrió a gran velocitat.
2. Control d'errors: el controlador del dispositiu també és responsable de la detecció d'errors de les dades transmeses pel dispositiu d'E/S. Si es produeix un error durant la transmissió, el codi de detecció d'error s'acostuma a configurar i notificar a la CPU, de manera que la CPU invalida les dades transmeses aquesta vegada i realitza una nova transmissió. Això garanteix l'entrada correcta de les dades.
3. Intercanvi de dades: es refereix a la realització de l'intercanvi de dades entre la CPU i el controlador, i entre el controlador i el dispositiu. Per al primer, la CPU escriu dades al controlador en paral·lel a través del bus de dades, o llegeix dades del controlador en paral·lel; per a aquest últim, el dispositiu introdueix dades al controlador o transmet dades del controlador al dispositiu. Per a això, s'han d'establir registres de dades al responsable del tractament.
4. Descripció de l'estat: identificar i informar de l'estat del dispositiu. El controlador hauria d'enregistrar l'estat del dispositiu perquè la CPU ho entengui. Per exemple, només quan el dispositiu estigui llest per enviar, la CPU pot iniciar el controlador per llegir les dades del dispositiu. Per aquest motiu, s'ha de configurar un registre d'estat al controlador i cadascun d'ells s'utilitza per reflectir un estat determinat del dispositiu. Quan la CPU llegeix el contingut del registre, pot entendre l'estat del dispositiu.
5. Recepció i identificació d'ordres: la CPU pot enviar una varietat d'ordres diferents al controlador, i el controlador del dispositiu hauria de ser capaç de rebre i identificar aquestes ordres. Per aquest motiu, al controlador hi hauria d'haver registres de control corresponents, que s'utilitzen per emmagatzemar les ordres i paràmetres rebuts i descodificar les ordres rebudes. Per exemple, el controlador de disc pot rebre 15 ordres diferents, com ara Llegir, escriure i Formatar de la CPU, i algunes ordres també tenen paràmetres; en conseqüència, hi ha diversos registres i descodificadors d'ordres al controlador de disc.
6. Reconeixement d'adreces: de la mateixa manera que cada unitat de la memòria té una adreça, cada dispositiu del sistema també té una adreça, i el controlador del dispositiu ha de ser capaç de reconèixer l'adreça de cada dispositiu que controla. A més, perquè la CPU escrigui (o llegeixi) dades a (o des) dels registres, aquests registres haurien de tenir adreces úniques.


