Migrac ¸˜ ao de um kernel de tempo real para um processador digital de sinais Jos´ e Augusto M. Nacif 1 , Luiz Fernando E. Moreira 1 , Andr´ ea Iabrudi Tavares 1 , Jos´ e Monteiro da Mata 1 , Antˆ onio Ot´ avio Fernandes 1 , Claudionor Nunes Coelho Jr. 1 , Luiz Filipe Vieira 1 , Marcos Augusto Vieira 1 1 Laborat´ orio de Engenharia de Computadores – LECOM Departamento de Ciˆ encia da Computac ¸˜ ao – Universidade Federal de Minas Gerais Av. Antˆ onio Carlos, 6627 - ICEx - Campus Pampulha – Belo Horizonte, MG {jnacif,luizf,iabrudi,mata,otavio,coelho,lfvieira,mmvieira}@dcc.ufmg.br Abstract. Considering the complexity growth on signal processing applications and the performance of newest generation digital signal processors the use of small kernels for the signal processing domain becomes common. The use of an operating system facilitates the organization and management of application tasks. This work describes the porting process of a real time kernel to a DSP. The ported kernel is µC/OS, a preemptive kernel targeted to embedded systems. Texas Instruments is used on motion control applications. Resumo. Com o crescimento da complexidade das aplicac ¸˜ oes de processa- mento de sinais, os DSPs (Digital Signal Processors) vivem hoje o que acon- teceu h´ a uma d´ ecada atr´ as com os microcontroladores: a necessidade de se utilizar um sistema operacional. Essa necessidade visa tornar mais simples o gerenciamento das diversas tarefas executadas concorrentemente em um DSP. Este trabalho descreve a migrac ¸˜ ao de um kernel de tempo real para um DSP. O kernel de tempo real migrado foi o µC/OS, um kernel preemptivo, destinado a sistemas embutidos. O processador utilizado no trabalho ´ e um DSP da Texas Instruments empregado na ´ area de controle de motores e inversores. 1. Introduc ¸˜ ao Este trabalho descreve a migrac ¸˜ ao de um kernel de tempo real para um DSP (Digital Signal Processor). O kernel migrado foi o µC/OS, que ´ e gratuito para aplicac ¸˜ oes n˜ ao comerciais. A estrutura do µC/OS foi projetada para ser modular, de forma a facilitar sua migrac ¸˜ ao para outros processadores. O processador utilizado ´ e um DSP da Texas Instru- ments, usado na ´ area de controle de motores. A maior parte das aplicac ¸˜ oes para DSPs s˜ ao codificadas em assembly, organizadas por um lac ¸o. Com o crescimento da complexidade de tais aplicac ¸˜ oes este tipo de estrutura vem se tornando ineficaz em termos de portabili- dade, facilidade de manutenc ¸˜ ao e principalmente aproveitamento de c´ odigo previamente desenvolvido. A introduc ¸˜ ao de um kernel com recursos de escalonamento e sincronizac ¸˜ ao de tarefas dever´ a resolver boa parte dessas limitac ¸˜ oes. As aplicac ¸˜ oes ser˜ ao desenvolvidas em forma de tarefas, que ser˜ ao executadas sobre o kernel, trazendo modularidade ao pro- jeto. O processo de migrac ¸˜ ao de um kernel para um DSP n˜ ao ´ e uma tarefa trivial, devido ` a sua arquitetura extremamente desenvolvida e otimizada para processamento de sinais. No decorrer do trabalho, ser˜ ao apresentados conceitos de sistemas de tempo real, arquitetura do µC/OS e o detalhamento de todo o processo de migrac ¸˜ ao, enfatizando as dificuldades encontradas