Following a cache miss by an operation, the address for the operation is
transmitted on the bus coupling the cache to lower levels of the storage
hierarchy. A portion of the address including the index field is
transmitted during a first bus cycle, and may be employed to begin
directory lookups in lower level storage devices before the address tag is
received. The remainder of the address is transmitted during subsequent
bus cycles, which should be in time for address tag comparisons with the
congruence class elements. To allow multiple directory lookups to be
occurring concurrently in a pipelined directory, a portion of multiple
addresses for several data access operations, each portion including the
index field for the respective address, may be transmitted during the
first bus cycle or staged in consecutive bus cycles, with the remainders
of each address--including the cache tags--transmitted during the
subsequent bus cycles. This allows directory lookups utilizing the index
fields to be processed concurrently within a lower level storage device
for multiple operations, with the address tags being provided later, but
still timely for tag comparisons at the end of the directory lookup. Where
the lower level storage device operates at a higher frequency than the
bus, overall latency is reduced and directory bandwidth is more
efficiently utilized.
Depois de uma falta de esconderijo por uma operação, o endereço para a operação é transmitido na barra-ônibus que acopla o esconderijo a uns níveis mais baixos da hierarquia do armazenamento. Uma parcela do endereço including o campo do índice está transmitida durante um primeiro ciclo da barra-ônibus, e pode ser empregada para começar lookups do diretório em dispositivos de armazenamento de um nível mais baixo antes que o Tag do endereço esteja recebido. O restante do endereço é transmitido durante os ciclos subseqüentes da barra-ônibus, que devem se realizar a tempo para comparações do Tag do endereço com os elementos da classe do congruence. Para permitir que os lookups múltiplos do diretório ocorram simultaneamente em um diretório pipelined, uma parcela de endereços do múltiplo para diversos dados alcança as operações, cada parcela including o campo do índice para o endereço respectivo, pode ser transmitida durante o primeiro ciclo da barra-ônibus ou ser encenada em ciclos consecutivos da barra-ônibus, com os restantes de cada endereço -- including os Tag do esconderijo -- transmitido durante os ciclos subseqüentes da barra-ônibus. Isto permite os lookups do diretório que utilizam os campos do índice a ser processados simultaneamente dentro de um dispositivo de armazenamento de um nível mais baixo para operações múltiplas, com os Tag do endereço que estão sendo fornecidos mais tarde, mas ainda oportuno para comparações do Tag no fim do lookup do diretório. Onde o dispositivo de armazenamento de um nível mais baixo opera em uma freqüência mais elevada do que a barra-ônibus, a latência total é reduzida e a largura de faixa do diretório é utilizada mais eficientemente.