VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

24
VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan

Transcript of VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Page 1: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

VSPWorks

Disciplina de TSDAC

Érico Bastos

Sergio Bressan

Page 2: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Sumário

Características Conceitos Gerais VSP Tratamento de interrupções Kernel Escalonamento Tarefas Escalabilidade Conjunto de ferramentas Categorias de utilização Referências

Page 3: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Características

VSPWorks é um sistema operacional de tempo real que suporta uma gama de aplicações;

Possui duas versões: SP (Single Processor)

• Tarefas e dados estão no mesmo processador;• Comunicação otimizada;• Métodos de sincromização.

VSP (Virtual Single Processor)• Tarefas e dados podem ser movidos de um processador para outro de

modo transparente mas manipulando todos os detalhes;• Troca da topologia do processador não afeta o comportamento da

aplicação;• Programação é feita exatamente igual a uma programação para um

único processador.

Page 4: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Características

Fácil programação; Remoção automática de código não utilizado

do kernel; Suite de aplicações gráficas (SO windows)

para simplificar e acelerar o desenvolvimento de aplicações.

Host Server gerencia toda a comunicação entre as ferramentas é o processador alvo.

Page 5: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Características

Hosts suportadosWindows NT/2000.

Alvos suportadosAnalog Devices: SHARC (ADSP-2106x),

HammerHead SHARC (ADSP-2116x);PowerPC 74xx;Texas Instruments: TMS320C6x;Windows NT - simulador.

Page 6: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Conceitos Gerais

VSPWorks foi projetado para uso em: ambientes DSP, onde a velocidade de resposta

para interrupções é crítica (assembly);ambientes escaláveis multi-processados, aonde

fácil programação é importante.

VSPWorks combina tratamento rápido de interrupções com multi-tarefas escaláveis utilizando acesso multi-nível.

Page 7: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

VSP

VSPWorks possui uma avançada arquitetura VSP para simplificar o desenvolvimento de aplicações para multi-processadores embarcados e aplicações distribuídas.

A tecnologia gerencia todas as complexidades da comunicação entre processadores com o mínimo de overhead.

Page 8: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

VSP

A utilização do VSP resulta em rápido desenvolvimento e em ganho de desempenho.

O desenvolvedor da aplicação especifica tarefas e objetos as quais podem residir em qualquer processador do sistema, e o VSPWorks manipula a comunicação entre os processadores.

Page 9: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Tratamento de interrupções

Dois tipos de tratamento de interrupçõesNível baixo - ISR0:

• Trata interrupções vindas diretamente do hardware;• Outra interrupções ficam desabilitadas;• O processamento da interrupção deve ser rápido.

Nível alto - ISR1:• Trata interrupções mais complexas vindas da ISR0;• Se comunica com ISR0 por system call;• Trata a interrupção da mesma forma que ISR0, mas

deixa as outras interrupções habilitadas.

Page 10: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Kernel

VSPWorks opera em dois níveis de kernel para otimizar o desempenho.

Baixo Nível (nanokernel)• Processos geralmente são escritos em

assembly;• Possibilidade de redução do contexto(usando

menos registradores de processos).

Page 11: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Kernel

Alto Nível (microkernel)• Tarefas:

• são escritas em C • podem acessar mais de 100 serviços do kernel;• são preemptivas;

• Escalonamento é dirigido a prioridade:• Tarefa com alta prioridade deve rodar imediatamente.• Tarefas com baixa prioridade dão a vez as de maior

prioridade.

Page 12: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Escalonamento

Quando muitas tarefas querem utilizar o processador, o escalonador deve procurar atender a todas antes do seu deadline.

Solução é se ter prioridade para cada tarefa baseado na importância dela para o sistema, o desenvolvedor pode atribuir as propriedades de várias maneiras: Atribuir:

• Alta prioridade a tarefas que necessitam resposta rápida;• Baixa prioridade a tarefas que não possuem tempo crítico.

Atribuir:• Alta prioridade a tarefas que necessitam rodar mais

frequentemente.• Baixa prioridade a tarefas que rodam raramente.

Page 13: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Escalonamento

Prioridade das tarefas podem ser alteradas dinamicamente em tempo de execução (usando microkernel).

O escalonador da acesso ao processador somente a tarefas de alta prioridade que estejam prontas para rodar.

Page 14: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Escalonamento

Page 15: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Tarefas

Cada tarefa é um modulo independente que executa uma função ou um conjunto de funções.

Uma tarefa existe independente de outras, e se comunica através de fila de mensagens, semáforos etc.

Quando uma tarefa esta rodando ela tem controle total do processador, mas o kernel da a impressão de que múltiplas tarefas estão sendo executadas.

Page 16: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Tarefas

Uma tarefa para de executar quando o:Processamento acabou;Está esperando por um evento ou algum dado;Está esperando que um recurso se torne

disponível;Foi interrompida por uma interrupção.

Page 17: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Tarefas

Page 18: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Escalabilidade

Os projetistas podem escrever o mesmo código para qualquer processador do sistema.

O kernel do VSPWorks é modular fazendo com que as ferramentas de linker, descartem todos objetos não utilizados no momento de compilação.

Page 19: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Escalabilidade

À medida que os processadores são substituídos por outros mais poderosos, ou novos processadores são adicionados as aplicação podem ser re-configuradas e as tarefas redistribuídas.

Page 20: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Conjunto de ferramentas

Project Manager (simplifica o desenvolvimento de aplicações);

Host Server (faz o download do VSPWorks para o processador alvo na rede);

Level Debugger (verifica o estado de objetos em qualquer processador);

Workload Monitor (calcula a carga de utilização de cada processador);

Page 21: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Conjunto de ferramentas

Tracing Monitor (faz um trace back do sistema, através do seu histórico – útil em caso de falhas);

Host Extension Kit (ferramenta para extender o VSPWorks para host e alvos particulares);

Runtime Libraries (permite que uma tarefa em qualquer processador da rede faça entrada e saída no host).

Page 22: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Categorias de utilização

O projetado do VSPWorks foi otimizado para ser utilizado em várias categorias de desenvolvimento de aplicações como:Aplicações com restrições de memória;Aplicações multi-processadas;Aplicações que combinam DSPs e CPUs.

Page 23: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

Referências

VSPWorks™ The RTOS for DSP and ASIC Cores - Disponível em http://www.windriver.com/products/device_technologies/os/vspworks/vspworks_tech_brief.pdf - Consultado em 05/07/2004

Development of DSP and heterogeneous designs using VSPWorks tools and run-time components - Disponível em: http://www.windriver.com/products/device_technologies/os/vspworks/vspworks.pdf - Consultado em 05/07/2004

VSPWorks WebSite - http://www.windriver.com/products/device_technologies/os/vspworks/

Virtuoso – The RTOS for DSP and ASIC cores – Multicore Programming Made Simple

Technical Brief – Virtuoso the SoftStealth RTOS for DSP and ASIC cores

Page 24: VSPWorks Disciplina de TSDAC Érico Bastos Sergio Bressan.

FIM