1 research outputs found

    Escalonamento redirecionável de código sob restrições de tempo real

    Get PDF
    Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico. Programa de Pós-Graduação em Ciência da Computação.A evolução dos sistemas computacionais deu origem aos systems-on-chip ou SoCs, onde diversos componentes (como memória, barramentos e processador(es)) estão presentes em um único circuito integrado. Os SoCs possivelmente contêm múltiplos processadores de diferentes tipos, portanto a exploração de seu espaço de projeto requer ferramentas redirecionáveis. O aumento da complexidade de tais sistemas, juntamente com a diminuição do time-to-market e a necessidade de iniciar-se o desenvolvimento do software embarcado o mais cedo possível, deu origem à modelagem no nível de transações ou TLM (transaction-level modeling). O projeto inicia-se com um modelo TLM atemporal, mas a posterior anotação de restrições temporais exige que o software embarcado seja revisado, sendo úteis ferramentas de análise de restrições temporais pós-compilação. Esta dissertação descreve uma técnica automaticamente redirecionável que combina análise de restrições temporais e escalonamento de código assembly. A técnica baseia se na extração de informações específicas da arquitetura-alvo através de uma descrição formal do processador e na codificação de restrições temporais e de precedência em uma representação unificada usando grafos. Resultados experimentais mostram que a técnica não somente lida eficientemente com restrições temporais, mas também as explora para guiar as otimizações. São apresentados resultados para os processadores MIPS, PowerPC e SPARC, onde acelerações na execução do código de até 1,3 vezes foram obtidas em relação ao código pré-otimizado. Este trabalho aborda ainda um estudo da viabilidade de se integrar a técnica proposta em um tradutor binário, contribuindo para que, ao se traduzir código compilado de uma arquitetura para outra, o código traduzido resulte otimizado. Resultados preliminares são apresentados como um forte indício de viabilidade
    corecore