INTERFACCIA IEEE-488

 

Sviluppata come interfaccia per strumentazione da una delle maggiori Case costruttrici di apparecchiature di misura che la denominò HP-IB (Hewlett-Packard Interface Bus), è stata successivamente approvata dall'IEEE (Institute of Electrical and Electronic Engineers) con la denominazione IEEE-488. Questo standard è oggi applicato ad un grande numero di sistemi digitali diversi, quali memorie di massa. stampanti, plotter, elaboratori oltre a strumenti di misura, tanto che esso è sovente indicato con l'acronimo GPIB (General Purpose Interface Bus).

L'interfaccia IEEE-488 prevede 16 linee che costituiscono il bus: ad esso possono essere collegate N apparecchiature (device) anche diverse purché compatibili con questo standard. Lo scambio dei dati, codificati di solito in codice ASCII e trasferiti in formato bit parallelo byte seriale, avviene secondo un protocollo rigidamente definito (handshake) che stabilisce la sequenzialità e le modalità del colloquio fra i vari dispositivi collegati.

In fig. 7 è illustrato un esempio di sistema comprendente più apparecchiature predisposte con interfaccia IEEE-488.

Figura 7

Fig. 7 Sistema di misura automatico con elementi connessi mediante interfaccia IEEE-488

Il sistema di comunicazione definisce gerarchicamente le apparecchiature collegate in base alle funzioni svolte, che sono essenzialmente le seguenti:

Nella fase di inizializzazione tutto il sistema è gestito dal controller, esso indica alle varie apparecchiature la funzione che debbono svolgere fissando così le modalità di accesso al bus. In fase di trasmissione dati, il colloquio avviene solo fra il talker attivo e i listener mentre il controller può intervenire solo per modificare le funzioni svolte da ciascuna apparecchiatura.

Figura 8

Fig. 8 Struttura del bus dell'interfaccia IEEE-488

Il bus di interfaccia (vedi fig. 8) comprende il bus dati di tipo bidirezionale, a 8 linee individuate dalle sigle D10l, D102,..., D108; su di esso viaggiano sia i byte che costituiscono i dati, che interessano il dispositivo talker e i dispositivi listener attivi, sia i messaggi di comando, che possono riguardare l'intero sistema o solo alcuni suoi elementi.

Altre linee sono destinate all'invio dei segnali di handshake che controllano il trasferimento dei dati; la linea DAV (Data Valid) segnala ad esempio la validità di un dato posto sul bus e la linea NRFD (Not Ready For Data) indica, quando è attiva, la non disponibilità di uno o più dispositivi listener ad accettare un dato.

Sono infine previste cinque linee di controllo utilizzate per funzioni di tipo generale quali il reset del sistema prima di procedere ad una riconfigurazione di esso (IFC: Interface Clear) o la richiesta di servizio (SRQ: Service Request) da parte di un'apparecchiatura che viene a trovarsi in uno stato anomalo o ha dati da trasferire.

Un'apparecchiatura non deve necessariamente essere collegata a tutte le linee: sono indispensabili solo quelle dei dati e quelle di handshake, mentre per le linee di controllo la scelta spetta al progettista che decide in base alla struttura del sistema, alle esigenze previste e alle potenzialità di ciascuna apparecchiatura.

Per effettuare l'inizializzazione e la programmazione delle apparecchiature collegate con l’interfaccia IEEE-488 o per inviare comandi ad esse è prevista una serie di messaggi codice. Essi vengono inviati sul bus dati e contemporaneamente viene attivata la linea controllo ATN (Attention); con ciò il messaggio è correttamente interpretato come un comando. Ad esempio, il codice 00111111 (3F) presente sul bus, quando la linea ATN è bassa disattiva tutti i listener definiti. Il codice 00XXXXX viene invece utilizzato per inizializzare un dispositivo, identificato dall'indirizzo XXXXX, alla funzione di listener, poiché i bit indirizzo sono cinque, si possono indirizzare 31 apparecchiature (l'indirizzo 11111 è riservai per eventuali espansioni).

Per quanto riguarda le specifiche elettriche relative allo standard IEEE-488 si può osservare che la corrispondenza fra stati logici e livelli elettrici è definita in logica negativa e che i livelli di tensione e corrente sono quelli TTL. Pertanto allo stato logico 0 corrisponde una tensione compresa fra 2 e 5 V mentre lo stato logico 1 è rappresentato da una tensione inferiore a 0,8 V. I line driver utilizzati sono generalmente di tipo tri state; fanno eccezion alcune linee che per la loro specifica funzionalità devono essere connesse in OR-cablato e presentano pertanto l'uscita a collettore aperto. I line receiver infine sono di solito realizzai con ingresso a trigger di Schmitt al fine di ottenere una maggiore immunità ai disturbi.

La velocità di trasmissione massima consentita (data rate) dipende, oltre che dai line driver utilizzati, anche dalla lunghezza del cavo di collegamento e dalle distanze relative delle varie apparecchiature collegate. Il massimo data rate ammesso di 1 Mbyte/s richiede ad esempio che il cavo sia di lunghezza inferiore a 15 metri con un carico ogni metro e che tutte le apparecchiature collegate siano accese.

 

PAGINA PRECEDENTE