Desenvolvimento de um inovador microkernel por hardware para microcontroladores focando nas aplicações de sistemas baseados em tarefas

Nesse projeto de pesquisa de doutorado foi desenvolvida uma inovadora abordagem de hardware, com objetivo de aumentar o desempenho dos sistemas baseados em tarefas, que se utilizam de microcontroladores com um único núcleo. Para isso um microkernel foi desenvolvido em hardware e precisamente interco...

Descripción completa

Detalles Bibliográficos
Autor: Dantas, L. P.
Tipo de recurso: tesis doctoral
Estado:Versión publicada
Fecha de publicación:2018
País:Brasil
Institución:Centro Universitário da Fundação Educacional Inaciana (FEI)
Repositorio:Repositório do Conhecimento Institucional do Centro Universitário da Fundação Educacional Inaciana (FEI)
Idioma:portugués
OAI Identifier:oai:repositorio.fei.edu.br:FEI/316
Acceso en línea:https://repositorio.fei.edu.br/handle/FEI/316
Access Level:acceso abierto
Palabra clave:Microcontroladores
Microkernel por hardware
Sistemas baseados em tarefas
Descripción
Sumario:Nesse projeto de pesquisa de doutorado foi desenvolvida uma inovadora abordagem de hardware, com objetivo de aumentar o desempenho dos sistemas baseados em tarefas, que se utilizam de microcontroladores com um único núcleo. Para isso um microkernel foi desenvolvido em hardware e precisamente interconectado à CPU e à memória de dados de um microcontrolador Plasma. Seu papel é operar paralelamente à CPU, realizando por hardware o escalonamento e o despacho de tarefas. Essa abordagem tende a minimizar o tempo gasto para trocas das tarefas que devem ser executadas pela CPU. Além disso, a arquitetura desenvolvida não impacta na forma como as instruções são executadas e adiciona apenas um único banco de registradores ao hardware da CPU. Sendo assim, ela é adequada tanto para a aplicação em dispositivos de hardware programável, como também para a implementação de circuitos integrados dedicados (Application-Specific Integrated Circuit, ASIC). Os resultados experimentais obtidos, quando o dispositivo proposto foi sintetizado em um Field Program Gate Array (FPGA), mostram que é possível realizar trocas de tarefas em até 2 ciclos de clock, que representa uma redução em até 99% do tempo médio gasto em relação aos sistemas convencionais, no qual o microkernel é desenvolvido por software. Além disso, o desempenho do microcontrolador modificado se mantém estável mesmo quando o tempo entre trocas de tarefas é menor que 100 µs, considerando uma frequência de clock de 25 MHz, ao passo que, na abordagem por software, o desempenho em processamento é degradado em até 79% em relação ao máximo observado quando a troca de tarefas ocorre em períodos superiores a 10 ms. Do ponto de vista energético, o microkernel por hardware proposto foi analisado a partir do leiaute gerado automaticamente utilizando-se as ferramentas da CADENCE para fabricação de um ASIC, e os resultados mostram que ele consome apenas 7% da potência elétrica dinâmica do microcontrolador. Além disso, os resultados obtidos por esse projeto de pesquisa fortalecem a ideia que essa abordagem inovadora possibilita aplicações que demandam tempos curtos entre trocas de tarefas, tais como aqueles que demandam intenso processamento de entradas e saídas (comunicação serial de dados, controle de motores e codificação/decodificação de áudio) e aplicações de alta tecnologia (clusters de máquinas virtuais em plataformas de nuvem).