• Save
Apresentacao TCC - Bipide
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Apresentacao TCC - Bipide

on

  • 2,030 views

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

Statistics

Views

Total Views
2,030
Views on SlideShare
2,030
Embed Views
0

Actions

Likes
0
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Apresentacao TCC - Bipide Presentation 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