Informações:

Publicações do PESC

Título
Otimização do Despacho de Múltiplas Instruções em Arquiteturas Super Escalares
Linha de pesquisa
Arquitetura e Sistemas Operacionais
Tipo de publicação
Tese de Doutorado
Número de registro
Data da defesa
25/9/2000
Resumo
Esta tese investiga o "despacho simultâneo de múltiplas instruções em arquiteturas super escalares." Considerando nosso interesse em tornar o mecanismo de despacho mais eficiente, dirigimos nossos esforços para o problema da detecção das dependências de dados.  Nossas atividades de pesquisa envolveram a concepção, implementação e avaliação da eficiência de mecanismos para otimizar o processo de detecção de dependências de dados entre um grande número de instruções que estão sendo despachadas em paralelo. Desenvolvemos três algoritmos de detecção de dependências de dados e um algoritmo de despacho, denominado "Despacho Seletivo." Os três primeiros algoritmos empregam diferentes tipos de memória cache, denominadas caches de dependências, que indicam como as instruções de um mesmo bloco básico interagem. Em tempo de execução, o algoritmo de despacho examina o conteúdo de sua cache de dependências, e na maioria das vezes, para cada instrução que está sendo despachada simultaneamente, o algo ritmo determina imediatamente se existem ou não dependências de dados entre essa instrução e as demais. O algoritmo de despacho seletivo, emprega quatro tipos de estações de reserva, e dependendo da instrução que está sendo examinada, ela será transferida para o tipo de estação apropriado. As estações de reserva são diferenciadas pela complexidade. Desse modo, especificamos estações que irão receber 3, 2, 1, ou zero resultados que ainda não foram produzidos. Ao especializarmos as estações de reserva, estaremos reduzindo a complexidade do hardware subjacente, e por esse motivo, teremos um processador mais rápido e eficiente.
Abstract
This thesis adresses the "parallel dispatch of multiple instructions in superscalar architectures." We focus our efforts on Data Dependence Detection topic to improve the instruction dispatch mechanism of superscalar machines.  This work spanned through conception, implementation, and performance evaluation of hardware algorithms to detect data dependencies amongst several instructions which are dispatched concurrently. We developed three algorithms for the detection of data dependences and one Selective Dispatch algorithm. The three detection algorithms employ special cache memories which store information regarding the interactions of instruction within the same basic block. At execution time, the dispatch algorithm examines the contents of its cache, and in the majority of times, interactions are determined immediately. The selective dispatch algorithm uses falir types of reservation stations, and depending on the instruction, it transfers the instruction to a suitable station. Thereservation stations associated with the algorithm are of different levels of complexity. We specify stations that receive 3, 2, 1, and zero source operands. The provision of specialized reservation stations reduces the complexity of the underlying hardware, yielding a processar which is faster and more efficient.
Arquivo
Topo