Methods, arbiters, and computer program products determine if a request for
an idle bus in a dual bus data processing system is being blocked by one
or more pending requests for the other bus. In this circumstance, any such
pending request for the other bus is masked by the arbiter so that the
request for the idle bus can be granted. Consequently, a more efficient
utilization of the dual bus architecture is achieved. In an illustrative
embodiment, a bus request is received for a first one of the dual busses.
If the address and control busses are unavailable to allow the request to
be granted, then an inquiry is made regarding the status of a pending
request for the second one of the dual busses that has gained control of
the address and control busses. In particular, it is determined whether a
primary request has been granted and a secondary request has been
pipelined for the second one of the dual busses. If a primary request has
been granted and a secondary request has been pipelined, then the priority
of the pending requests for the second one of the dual busses are
examined. If the priority of the pending requests for the second one of
the dual busses are at least as high as the currently pending request for
the first one of the dual busses, then these requests are masked so that
they no longer appears to be pending, which allows the request for the
first one of the dual busses to be granted.
I metodi, i arbiters ed i prodotti di programma destinato all'elaboratore determinano se una richiesta per un bus al minimo in un sistema dell'elaborazione dei dati del bus doppio sta ostruenda da una o più richieste in corso per l'altro bus. In questa circostanza, qualsiasi richiesta in corso per l'altro bus è mascherata dal arbiter in moda da potere assegnare la richiesta per il bus al minimo. Di conseguenza, un'utilizzazione più efficiente dell'architettura doppia del bus è realizzata. In un incorporamento illustrativo, una richiesta del bus è ricevuta per prima dei bus doppi. Se i bus di controllo e di indirizzo sono non disponibili permettere che la richiesta sia assegnata, allora un'inchiesta è fatta per quanto riguarda la condizione di una di una richiesta in attesa per quella seconda dei bus doppi che ha guadagnato il controllo dei bus di controllo e di indirizzo. In particolare, è determinato se una richiesta primaria sia stata assegnata e una richiesta secondaria è stata canalizzata per quella seconda dei bus doppi. Se una richiesta primaria è stata assegnata e una richiesta secondaria è stata canalizzata, quindi la priorità delle delle richieste in attesa per quella seconda dei bus doppi è esaminata. Se la priorità delle delle richieste in attesa per quella seconda dei bus doppi è almeno alta quanto della la richiesta attualmente in attesa per quella prima dei bus doppi, quindi queste richieste sono mascherate in modo che più non sembrino essere in corso, che permette che la richiesta per quella prima dei bus doppi sia assegnata.