According to one embodiment of the present invention, an apparatus is
provided which includes a first address translation unit and a second
address translation unit. The first address translation unit is programmed
for a minimum amount of memory addresses required to accept control
transactions on a first bus. The second address translation unit is
programmed to a memory address range that corresponds to an amount of
local memory for caching operations between the first I/O processor and a
first I/O interconnect device and an amount of memory space required by
the I/O interconnect device. The apparatus includes logic to determine,
upon receiving an incoming host request, whether a reply address
corresponding to the host request overlaps with the memory address range
programmed for the second address translation unit. The apparatus further
includes logic to dynamically alter a data flow between the first I/O
interconnect device and the host.
De acordo com uma incorporação da invenção atual, um instrumento é fornecido que inclua uma primeira unidade da tradução de endereço e uma segunda unidade da tradução de endereço. A primeira unidade da tradução de endereço é programada para uma quantidade mínima de endereços de memória requeridos para aceitar transações do controle em uma primeira barra-ônibus. A segunda unidade da tradução de endereço é programada a uma escala de endereço da memória que corresponda a uma quantidade de memória local para operações caching entre o primeiro processador de I/O e um primeiro dispositivo do interconnect de I/O e uma quantidade de espaço de memória requeridos pelo dispositivo do interconnect de I/O. O instrumento inclui a lógica para determinar, em cima de receber um pedido entrante do anfitrião, se um endereço da resposta que corresponde ao pedido do anfitrião sobrepõe com a escala de endereço da memória programada para a segunda unidade da tradução de endereço. O instrumento mais adicional inclui a lógica para alterar dinâmicamente um fluxo de dados entre o primeiro dispositivo do interconnect de I/O e o anfitrião.