Apresentacao TCC - Bipide

  • 1,585 views
Uploaded on

Apresentacao TCC - Bipide: ambiente de desenvolvimento integrado para a arquitetura dos processadores BIP

Apresentacao TCC - Bipide: ambiente de desenvolvimento integrado para a arquitetura dos processadores BIP

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,585
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
0
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Bipide
    Ambiente de Desenvolvimento Integrado para
    a Arquitetura dos Processadores BIP
    Paulo Viníccius Vieira
    Orientador: Prof. Dr. André Luis Alice Raabe
    Co-orientador: Prof. Dr. Cesar Albenes Zeferino
    Itajaí, julho de 2009
  • 2. Sumário da apresentação
    Introdução
    Fundamentação Teórica
    Desenvolvimento
    Projeto
    Implementação
    Tecnologias utilizadas
    Verificação e Avaliação
    Considerações Finais
  • 3. Introdução
    Contextualização e motivação
    Alunos costumam apresentar dificuldades na aprendizagem de Algoritmos e Programação
    Alto nível de abstração apresentado nos conceitos de programação
  • 4. Introdução
    Contextualização e motivação
    As disciplinas de Arquitetura e Organização de Computadores fornecem subsídios para compreensão da lógica de programação
    Permitem estabelecer relações dos conceitos de programação com aspectos concretos do hardware
    variáveis
    atribuições
    operações aritméticas
    laços de repetição
  • 5. Introdução
    BIP -Basic Instruction-set Processor
    Desenvolvido por pesquisadores do Laboratório de Sistemas Embarcados e Distribuídos (LSED) – UNIVALI
    Processador simplificado projetado para auxiliar o aprendizado
    Utilizado para apresentação de conceitos básicos que permitem relacionar programação alto nível com sua representação em hardware
    Usado em disciplinas como Computação Básica, Arquitetura de Computadores, Programação, Circuitos Digitais
  • 6. Introdução
    Definição do problema
    Alto nível de abstração apresentado nos conceitos de programação
    Simuladores focados na Arquitetura e Organização de Computadores
    Simuladores disponíveis para ensino costumam apresentam uma interface de usuário pouco elaborada ou com muitos recursos
    Codificação do programa em linguagem baixo nível
  • 7. Introdução
    Solução proposta
    Ambiente de Desenvolvimento Integrado (IDE) que auxilie na utilização dos processadores BIP na aprendizagem de programação:
    criação e execução de programas em linguagem Portugol
    tradução em linguagem assembly
    ilustração do estado dos componentes dos processadores BIP
    Redução da abstração envolvida nos conceitos de Programação
  • 8. Introdução
    Objetivo geral
    Construção de um ambiente de desenvolvimento integrado que possibilite a criação de programas e ilustre sua execução, relacionando-os aos aspectos da arquitetura dos processadores BIP I e BIP II
    Ambiente de Desenvolvimento Integrado
    IDE
    Processadores
    BIP
  • 9. Introdução
    Objetivos específicos
    Consolidar conceitos sobre Arquitetura e Organização de computadores e Compiladores
    Estudar a arquitetura dos processadores BIP
    Implementar e disponibilizar um ambiente de desenvolvimento integrado
    programação em linguagem Portugol
    visualização do assembly e do estado dos componentes dos processadores BIP I e BIP II
    Testar e verificar o sistema
    Documentar e divulgar o projeto
  • 10. Fundamentação teórica
    Arquitetura e Organização de Computadores
    Processadores BIP
    Compiladores
    Simuladores de Arquitetura
  • 11. Fundamentação teórica
    Processadores BIP
    Desenvolvido por pesquisadores do Laboratório de Sistemas Embarcados e Distribuídos (LSED) – UNIVALI
    relacionar programação alto nível com sua representação em hardware
    auxiliar no aprendizado de Arquitetura e Organização de Computadores
    Três Versões:
    BIP I, BIP II, μBIP
  • 12. Fundamentação teórica
    Processadores BIP
    BIP I
    níveis de linguagem
    constantes e variáveis
    representação de dados
    conjuntos de instruções
    geração de código em linguagem de máquina
    BIP II
    desvios condicionais e incondicionais
    laços de repetição
  • 13. Fundamentação teórica
    Processadores BIP
    Classes de Instruções
    • Transferência: STO, LD, LDI
    • 14. Aritmética: ADD, ADDI, SUB e SUBI
    • 15. Controle: HLT
    BIP I
    BIP II
    • Desvio: BEQ, BNE, BGT, BGE,
    BLT, BLE e JMP
  • 16. Fundamentação teórica
    BIP I
    ULA
    Registradores
    PC
    ACC
    Baseado em acumulador
  • 17. Fundamentação teórica
    BIP II
    Registradores
    PC
    ACC
    STATUS
    Desvios e laços de repetição
  • 18. Fundamentação teórica
    Compiladores
    programas de computador que traduzem de uma linguagem para outra
  • 19. Fundamentação teórica
    Trabalhos Similares
    Simuladores de Arquitetura
  • 20. Fundamentação teórica
    • Simuladores de Arquitetura
    possui  não possui -não identificado
  • 21. Desenvolvimento
    Projeto
    Implementação
    Tecnologias Utilizadas
  • 22. Projeto
    Requisitos funcionais
    O sistema deverá:
    permitir ao usuário escrever programas em linguagem Portugol
    compilar os programas escritos
    indicar os erros encontrados durante a compilação
    permitir a execução do programa passo a passo
  • 23. Projeto
    Requisitos funcionais
    O sistema deverá:
    gerar código assembly para os processadores BIP I e BIP II
    simular o funcionamento do programa sobre a arquitetura dos processadores BIP I e BIP II
    possuir janelas de ajuda
    apresentar funcionalidades típicas de ambientes de desenvolvimento
  • 24. Projeto
    Definição da linguagem
    subconjunto da linguagem Portugol que represente as operações suportadas
  • 25. Implementação
    Implementação
    Compilador
    Simulador
    Interface (IDE)
    ANTLRWorks
  • 26. Implementação
    ANTLRWorks
    Ferramenta para construção de compiladores
    Construção de gramáticas próprias
    Geração de componentes reconhecedores de linguagem
    ANTLRWorks
  • 27. Implementação
    WPF
    Interface gráfica rica e interativa
    Melhor experiência do usuário
    leiautes avançados
    suporte a gráficos vetoriais, 3D, áudio e vídeo
    definição de animações
    XAML
    linguagem declarativa para a criação de interfaces
  • 28. XAML
    Define os elementos de interface com o usuário, não sendo capaz de conter nenhum tipo de lógica de aplicação
    Implementação
  • 29. Implementação
    ExpressionBlend 2
    Ferramenta de design interativo
    aplicações em WPF e Silverlight
    Interface orientada por design
    controles padrões do Windows (botões, menus, etc.)
    elementos gráficos e 3D
    recursos de áudio e vídeo
    animar propriedades individuais dos componentes ao longo do tempo
  • 30. Implementação
    ExpressionBlend 2
  • 31. Bipide
    • Apresentação Ferramenta
  • Verificação
    Testes
    Compilador
    utilizado um conjunto de aplicações Portugol
    após compilados, os códigos assembly gerados foram analisados e comparados com os resultados esperados
    Programa
    Inicio
    x<-2
    Fim
    LD 1
    ADD 2

  • 32. Verificação
    Testes
    Simulador
    conjunto de instruções assembly para verificar o estado esperado para os registradores e memórias
    os valores resultantes foram analisados e comparados com o obtido previamente na validação do processador µBIP
    LD 1
    ADD 2
    ACC <- 3
    PC <- 8

  • 33. Avaliação
    Avaliação
    Aplicação de questionário
    disciplina de Algoritmos e Programação – UNIVALI
    1º período (2009-I)
    nº de alunos: 21
  • 34. Avaliação
    Você acha que o seu nível de conhecimento foi compatível com as telas e vocabulário empregado no sistema?
    66,67%
    Notas entre 8 e 10
  • 35. Avaliação
    As mensagens de erro lhe auxiliaram de forma adequada?
    71,43%
    Notas entre 8 e 10
  • 36. Avaliação
    O sistema lhe proporcionou feedback, ou seja, você conseguiu visualizar todas suas ações?
    80,95%
    Notas entre 8 e 10
  • 37. Avaliação
    A estrutura dos painéis do menu lhe parece disposta de forma lógica por agrupamento de tipos de opções?
    90,48%
    Notas entre 8 e 10
  • 38. Avaliação
    Qual é o grau de satisfação que você atribui à utilização do sistema?
    80,95%
    Notas entre 8 e 10
  • 39. Avaliação
    Resultado geral
    78,10%
    Notas entre 8 e 10
  • 40. Considerações Finais
    Pôde-se consolidar e aplicar uma série de conhecimentos adquiridos durante o bacharelado em Ciência da Computação
    Teve-se a possibilidade de conhecer e aplicar novas tecnologias e ferramentas
    A análise de ferramentas similares serviram para definir funcionalidades do ambiente Bipide
    WPF e ExpressionBlend 2
    facilidades para o desenvolvimento de aplicações que exigem muitos recursos de interface
    integradas às demais ferramentas e componentes utilizados resultou em uma interface gráfica capaz de proporcionar uma melhor experiência para o usuário
  • 41. Considerações Finais
    Os objetivos definidos foram alcançados
    Consolidar conceitos sobre Arquitetura e Organização de computadores e Compiladores
    Estudar a arquitetura dos processadores BIP
    Implementar e disponibilizar um ambiente de desenvolvimento integrado que possibilite a programação em linguagem Portugol e visualização do assembly e do estado dos componentes dos processadores BIP I e BIP II
    Testar e verificar o sistema
    Documentar e divulgar o projeto





  • 42. Considerações Finais
    Este trabalho é parte integrante de um projeto que visa promover a integração interdisciplinar
    permitir que os processadores da família BIP possam ser utilizados em diferentes fases e disciplinas de cursos de graduação e pós-graduação.
    Busca-se ainda elucidar qual o impacto do uso de um modelo simplificado de computador na compreensão de conceitos básicos ligados ao ensino inicial de algoritmos
    o ambiente Bipide irá permitir coletar evidências empíricas sobre a vantagem em reduzir o nível de abstração envolvido nesta aprendizagem
  • 43. Considerações Finais
    Trabalhos futuros
    suporte a arquitetura do processador µBIP
    utilização de diferentes linguagens de alto nível como C, Java, entre outras
    suporte a diferentes formatos numéricos
    otimização do código assembly gerado
    implementação e integração de novos módulos que agreguem funcionalidades ao ambiente
    desenvolvimento de uma versão on-line
    avaliação da utilização da ferramenta em sala de aula
  • 44. Referências
    MORANDI, Diana ; PEREIRA, Maicon Carlos ; RAABE, André Luis Alice ; ZEFERINO, Cesar Albenes . Um processador básico para o ensino de conceitos de arquitetura e organização de computadores, 2006.
    STALLINGS, William. Arquitetura e organização de computadores: projeto para o desempenho. 5 ed. São Paulo: Prentice Hall, 2005.
    VAHID, Frank, GIVARGIS, Tony, Embedded system design: a unified hardware/software introduction, 2002.
    PARR, Terence. ANTLR v3 Documentation. 2007. Disponível em: <http://www.antlr.org/wiki/display/ANTLR3/ANTLR+v3+documentation>. Acessoem: 15 out 2007a.
    WILLIAMS, Brennon. Microsoft Expression Blend Unleashed. Pearson Education: Indianapolis, 2008.
    MacVITTIE, Lory A. XAML in a Nutshell. Sebastopol: O'Reilly, 2006.
  • 45. Bipide
    Ambiente de Desenvolvimento Integrado para
    a Arquitetura dos Processadores BIP
    Paulo Viníccius Vieira
    pauloviniccius@univali.br
    Orientador: Prof. Dr. André Luis Alice Raabe
    Co-orientador: Prof. Dr. Cesar Albenes Zeferino
    Itajaí, julho de 2009