Tesis
Simulação compilada para arquiteturas descritivas em ArchC
Compiled simulation for computer architectures described with ArchC
Registro en:
(Broch.)
Autor
Bartholomeu, Marcus
Institución
Resumen
Orientadores: Rodolfo Jardim de Azevedo, Guido C. S. Araujo Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Computação Resumo: o simulador é uma das ferramentas mais importantes para o desenvolvimento de uma nova arquitetura computacional. Entre as vantagens que ele apresenta, destacam-se a flexibilidade e baixo custo. Os primeiros simuladores eram criados manualmente, uma prática muito propensa a erros. Atualmente, Linguagens de Descrição de Arquiteturas (ADLs) facilitam a geração dessas ferramentas. O foco deste trabalho é a pesquisa em técnicas de simulação rápida utilizando a ADL ArchC. Partindo do estado da arte nesta área, a simulação compilada, conseguiu-se melhorar ainda mais o desempenho dos simuladores de conjunto de instruções. Duas otimizações foram propostas. A primeira simula atomicamente os blocos básicos, sem nenhum tipo de teste entre as instruções, oferecendo um ganho de desempenho médio de 70%. A segunda otimização calcula antecipadamente o alvo da maioria das instruções de salto, permitindo o controle do fluxo de execução pelo simulador. Esta otimização é um passo adicional à primeira, oferecendo um ganho de desempenho combinado médio de 180%. Além da simulação rápida, também foi desenvolvida uma metodologia para que simuladores de arquiteturas possam interagir com a máquina hospedeira permitindo, por exemplo, o acesso a arquivos locais e a passagem de parâmetros de linha de commando. Também foi definida uma interface para acesso a dados externos que permitiu a implementação de um protótipo para simulação de arquiteturas com múltiplos processadores. Esta interface de dados será integrada à ArchC e permitirá a co-simulação de blocos genéricos descritos em SystemC Abstract: The simuIator is one of the most important tools to design a new computer architecture. It has many advantages, the most important are flexibility and Iow cost. The first simulators were created manually, which was an error-prone practice. Nowadays, Architecture Description Languages (ADLs) simplifies the generation of these tools. This work focus on the research of new fast simulation techniques using the ArchC ADL. Beginning from the state-of-art in this area, the compiled simulation, is was possible to speed-up the instruction set simulation performance even higher. Two optimizations were proposed. The first one simulates basic blocks atomically, without any condition test between instructions, and speed-up the simuIation by 70% in average. The second optimization anticipates the majority of target address calculation for jump instructions, allowing the flow control to be done by the simuIator. This second optimization is an improvement to the first one, and provides an speed-up of 180% in average. Besides the research of fast simuIation techniques, a methodology was created to allow architecture simulators to interact with the host machine, which makes it possible, for example, to access local files and take options from command-line. Also, an interface were defined to access external data which allows a propotype imIementation of a multiprocessar architecture simulator. This interface will be integrated to ArchC to achieve co-simulation capability for generic blocks described in SystemC Doutorado Doutor em Ciencia da Computação