Programmazione.it v6.4
Ciao, per farti riconoscere devi fare il login. Non ti sei ancora iscritto? Che aspetti, registrati adesso!
Info Pubblicità Collabora Autori Sottoscrizioni Preferiti Bozze Scheda personale Privacy Archivio Libri Corsi per principianti Forum
Greenpeace
Guida ai cavi e connettori: il Q-bus (2/2)
Scritto da Luca Domenichini il 07-04-2011 ore 09:26
Intel Cluster Studio XE
Visibile all'host come una regione specializzata di spazio indirizzabile, il Q-bus risultava molto versatile per diversi tipi di driver, che se ne servivano per i compiti più diversi. Operando in modo analogo alla memoria fisica, era ad esempio possibile creare ring buffer di memoria condivisi fra sistema ospite e controller, al fine di effettuare trasferimenti dati più efficienti.

Per la configurazione di un modulo Q-bus era necessario agire su uno o più interruttori, in grado di ritarare lo spazio indirizzabile dai Control and Status Register (CSR), con indirizzi a base ottale. Quando il sistema ospite entrava in funzione, come prima attività effettuava la ricerca dei CSR attivi, utilizzando alcuni indirizzi fissi di controllo e un'area specifica di lavoro denominata Floating Vectors.

Il Q-bus possedeva inoltre un indirizzo Interrupt Vector, utilizzato dai moduli (interfacce) per richiamare l'attenzione dei dispositivi collegati; tale indirizzo era normalmente comunicato in un secondo tempo, dopo l'elaborazione dei CSR. Internamente, l'identificazione dei dispositivi collegati al bus, rigorosamente in modalità Master-Slave, avveniva tramite un uso accurato delle locazioni di memoria disponibili, spesso non sufficienti per garantire l'assegnazione univoca.

Tale caratteristica richiedeva spesso la riallocazione di risorse a ogni connessione o disconnessione di dispositivi al collegamento Q-bus. Per la catalogazione delle interfacce con supporto al Q-bus, DEC si basò su un codice M, ossia la lettera M seguita da alcune cifre. Tale codice era visibile sulla scheda o sul connettore dell'interfaccia ed era estremamente importante per reperire informazioni sulle sue specifiche di configurazione.

Le periferiche collegate potevano essere inizializzate attraverso il Q-bus in due modi: tramite l'istruzione RESET, seguita da una risposta del processore col comando BINIT L della durata di circa 10µs; oppure in occasione di accensione e spegnimento dell'alimentazione continua. Nella foto di Steve Schumaker è mostrato un elaboratore LSI11 (PDP11/03):

5597492028_ac4fbc9be6_z.jpg

Del Q-bus esistono copie sulle CPU di costruzione sovietica della serie 1801 con una connessione digitalmente ed elettricamente compatibile, ma con un layout differente e l'aggiunta del supporto fino a quattro processori. Tramite l'utilizzo di controller non DEC, segnalo inoltre la possibilità di collegare al Q-bus dispositivi di memoria SCSI (generalmente tramite adattatore KZQSA).
Precedente: TurnKey Hub, server tra le nuvole
Successiva: Una nuova architettura per gestire grandi moli di dati
Copyright Programmazione.it™ 1999-2013. Alcuni diritti riservati. Testata giornalistica iscritta col n. 569 presso il Tribunale di Milano in data 14/10/2002. Pagina generata in 0.245 secondi.