Utilize este link para identificar ou citar este item: https://bdm.unb.br/handle/10483/28561
Arquivos neste item:
Arquivo Descrição TamanhoFormato 
2020_MoysesPinheiroNery_tcc.pdf1,95 MBAdobe PDFver/abrir
Título: Estudo e desenvolvimento de uma ferramenta-base para criação de processadores de aplicação específica
Autor(es): Nery, Moysés Pinheiro
Orientador(es): Silva, Jones Yudi Mori Alves da
Assunto: Sistemas embarcados (Computadores)
Microprocessadores
Arquitetura de computador
Compiladores (Programas de computador)
Software - desenvolvimento
Data de apresentação: Dez-2020
Data de publicação: 15-Set-2021
Referência: NERY, Moysés Pinheiro. Estudo e desenvolvimento de uma ferramenta-base para criação de processadores de aplicação específica. 2020. viii, 52 f., il. Trabalho de conclusão de curso (Bacharelado em Engenharia Mecatrônica)—Universidade de Brasília, Brasília, 2020.
Resumo: Os sistemas embarcados estão difundidos em quase todos os aspectos do cotidiano da atualidade. Esses sistemas encontram-se em smartphones, videogames, câmeras inteligentes, carros elétricos, fábricas automatizadas e diversas outras aplicações. Por conta disso diversos microprocessadores são desenvolvidos a cada dia para desempenharem certo grupo específico de aplicações, de modo que é necessário acompanhar tais arquiteturas de processadores com seus respectivos compila- dores. Este trabalho objetiva estudar o desenvolvimento de um compilador realizado para uma arquitetura computacional didática chamada de “Cpu0”, que é um microprocessador RISC de 32 bits, cujo código em Verilog é aberto ao público, onde o framework LLVM foi utilizado para criação de um backend para portar tal arquitetura de um novo compilador. Além disso, busca-se realizar modificações no backend a fim de adequá-lo a possíveis alterações na ISA do Cpu0 para aplicá-lo a um contexto específico. O LLVM é uma estrutura de compilação modular que foi concebida para compilar softwares de forma otimizada, por meio do fornecimento de informações de alto nível às transformações do compilador que levam a tempos de compilação e execução otimizados.
Abstract: Embedded systems are widespread in almost all aspects of today’s daily life. These systems are found in smartphones, video games, smart cameras, electric cars, automated factories and several other applications. Because of this, several microprocessors are developed every day to perform a specific group of applications, so it is necessary to add to these processor architectures with their respective compilers. This work aims to study the development of a compiler made for a didactic computational architecture called “Cpu0”, which is a 32-bit RISC microprocessor, whose code in Verilog is open to the public, where the LLVM framework was used to create a backend to port such architecture to a new compiler. In addition, modifications are made to the backend in order to adapt it to possible changes in the Cpu0 ISA to apply it to a specific context. The LLVM is a modular compilation structure that was designed to compile software in an optimized way, by providing high-level information to the compiler transformations that lead to optimized compilation and execution times.
Informações adicionais: Trabalho de conclusão de curso (graduação)—Universidade de Brasília, Faculdade de Tecnologia, Curso de Graduação em Engenharia de Controle e Automação, 2020.
Licença: A concessão da licença deste item refere-se ao termo de autorização impresso assinado pelo autor que autoriza a Biblioteca Digital da Produção Intelectual Discente da Universidade de Brasília (BDM) a disponibilizar o trabalho de conclusão de curso por meio do sítio bdm.unb.br, com as seguintes condições: disponível sob Licença Creative Commons 4.0 International, que permite copiar, distribuir e transmitir o trabalho, desde que seja citado o autor e licenciante. Não permite o uso para fins comerciais nem a adaptação desta.
Aparece na Coleção:Engenharia Mecatrônica



Todos os itens na BDM estão protegidos por copyright. Todos os direitos reservados.