Anda di halaman 1dari 5

Proposta de Simulação baseada em atores como

ferramenta de ensino de Organização e Arquitetura de


Computadores
André L. L Torres1,2, Francisco Eduardo S. Alencar2, Alisson V. Brito1,2
1
Departamento de Informática
Universidade Federal da Paraíba (UFPB) – João Pessoa, PB - Brasil
2
Centro de Ciências Aplicadas e Educação - Universidade Federal da Paraíba (UFPB) –
Rua da Mangueira, s/n, - CEP 58297-000 - Rio Tinto – PB – Brasil
{alissonbrito, atorres}@dce.ufpb.br,eduardu.dudu@gmail.com

Abstract. The use of simulators in education becomes increasingly present in


pedagogical activities, where simulation techniques to support teaching and
research have been increasingly employed. Thus, this paper presents a project
developed a simulation tool for concurrent systems based on actors to
facilitate the teaching and learning of computer architecture, through an
environment that allows students to intuitively create their projects.
Resumo. A utilização de simuladores na educação se faz cada vez mais
presente nas atividades pedagógicas, onde técnicas de simulação para apoio
ao ensino e à pesquisa têm sido cada vez mais empregadas. Neste sentido, este
trabalho apresenta um projeto desenvolvido numa ferramenta de simulação de
sistemas concorrentes baseada em atores de forma a facilitar o processo de
ensino-aprendizagem de arquitetura de computadores, através de um
ambiente que possibilita ao aluno criar de forma intuitiva seus projetos.

Palavra – chave: Simulação, Ptolemy, Arquitetura de Computadores.

1 Introdução
A informática educativa se faz cada vez mais presente nas atividades
pedagógicas [Vital e Prietch 2004]. Entretanto na disciplina de Arquitetura de
Computadores ainda há a necessidade de pesquisas sobre métodos de aprendizagem e
softwares educativos, devido à crescente evolução da complexidade dos sistemas
computacionais.
Entender como determinada arquitetura de computador funciona é uma tarefa difícil,
principalmente embasado apenas na teoria. Para melhorar esse entendimento, são
usados os simuladores que reproduzem com perfeição toda a dinâmica de execução das
instruções em uma arquitetura de computador.
Muitas técnicas de ensino de arquitetura e organização de computadores utilizam de
simuladores de arquiteturas reais ou hipotéticas [Brito 2009]. Estas técnicas, porém, não
permitem uma abordagem construtivista onde os alunos possam criar suas próprias
arquiteturas.
A simulação de sistemas concorrentes baseada em atores é um exemplo de metodologia
que possui um grande potencial educacional ainda pouco explorado. Onde um modelo
de atores é definido como um modelo matemático de computação concorrente que trata
“atores” como sendo os elementos primitivos da computação concorrente digital [Lee
2001].
O objetivo deste trabalho é criar uma metodologia para ensino de Organização e
Arquitetura de Computadores apoiada pela ferramenta de simulação de sistemas
concorrentes baseada em atores, denominada Ptolemy, de forma a permitir que alunos
criem seus próprios modelos de arquiteturas de maneira simples, interativa e didática.

2 Ferramenta Ptolemy para o ensino de Arquitetura de Computadores


Este trabalho se baseia no uso do Ptolemy, criado e mantido na Universidade de
Berkeley, como uma ferramenta de ensino de Organização e Arquitetura de
Computadores. Mas para conseguir êxito em tal objetivo, a estratégia foi a de identificar
e desenvolver atores didáticos que correspondessem a diferentes níveis de abstração de
hardware na disciplina estudada, possibilitando a criação de exercícios pelo professor,
resolvidos pelos alunos e com o auxilio do Ptolemy verificados e avaliados.
No ambiente Ptolemy, para o desenvolvimento do projeto, inicialmente foram
especificados as entidades, denominados atores, que processam os dados presentes nas
suas portas de entrada ou que criam e enviam dados para outras entidades por meio de
suas portas de saída.
Após a criação dos atores, que servirão de repositório para aplicação em disciplinas
posteriores, a criação dos cenários didáticos pelo professor visa facilitar o entendimento
do aluno no conteúdo aplicado. A Figura 1 ilustra o processo didático com o auxilio da
ferramenta Ptolemy.

Figura 1: Processo de verificação do cenário didático

Na fase atual do trabalho desenvolvido na ferramenta Ptolemy, o professor irá


especificar o cenário a ser simulado. Com a ajuda do repositório de atores para a
disciplina, ele irá preparar o cenário que ele irá submeter aos seus alunos como
exercício (em formato XML). O aluno irá verificar o cenário proposto e seguir as
instruções sugeridas pelo professor, como também os requisitos para a conclusão do
exercício. Na resolução do exercício, o aluno poderá contar com uma classe
denominada PtolemyModelChecker (detalhada na seção 2.1), criada paralelamente a
ferramenta, que verifica os erros no seu exercício de acordo com o arquivo XML do
professor, retornando ao aluno os atores que são obrigatórios. Finalizando seu exercício,
o aluno enviará ao professor seu arquivo XML, que ao recebê-lo poderá avaliar o aluno.

2.1 Exemplo de Atividade


Para ilustrar o roteiro didático exposto na seção anterior, é detalhado um exercício
sobre o comportamento de uma Unidade Lógica Aritmética – Arithmetic Logic Unit
(ALU) que é a unidade do processador que executa as operações aritméticas e lógicas
referenciadas pelos códigos de operações (opcodes). A ALU suporta seis operações
(AND, OR, ADD, SUB, SLT, E NOR) em um circuito combinacional que calcula uma
saída de 32 bits baseado em duas entradas de 32 bits e uma entrada de 4 bits que
especifica a operação da ALU a ser executada, além de computar bits para verificar se
existiu overflow.
Na Figura 2 é exposto o exercício para exemplificar as operações da ALU. No cenário
do professor a ALU recebe dois valores enviados pelos atores “Dado 1” e “Dado 3” e a
operação que a mesma deverá realizar, no caso, uma adição (10).

Figura 2: Exemplo de um exercício didático do funcionamento da ALU utilizando o


Ptolemy

Como exercício proposto, o aluno deverá adicionar o ator ADD (efetua a adição de
valores) ao cenário do professor, recebendo os valores dos atores “Dado 1” e “Dado 2”
e tendo sua saída conectada a Input port A da ALU. Continuando a ter a operação de
adição (10) na porta Operation Code e o ator “Dado 3” conectado a Input port B.
Verificando se o comportamento da ALU é o esperado, seguindo para a conclusão do
exercício.

Após montar a ALU o professor define atores de caráter obrigatório, que serão
analisados pelo PtolemyModelChecker no XML produzido pelo exercício resolvido pelo
aluno (Figura 3).
Figura 3: Cenário criado com êxito pelo aluno para avaliação do professor

Caso os modelos sejam iguais, PtolemyModelChecker exibe a mensagem “Exercício


concluído com sucesso!” de acordo com a Figura 4. Onde o que define que os modelos
são iguais são os atores obrigatórios definidos pelo professor.

Figura 4: Mensagem de retorno do PtolemyModelChecker para atores obrigatórios

Se no modelo do aluno não constar os atores obrigatórios definidos pelo professor


(Figura 5), uma mensagem de erro será visualizada, nesse caso, “O Ator Add é
obrigatório”, além da mensagem “Exercício possui erros”, como é mostrada na Figura
6.

Figura 5: Cenário criado com erros pelo aluno para avaliação do professor
No cenário onde o aluno não atingiu os requisitos mínimos (Figura 5), o
PtolemyModelChecker verifica quais os atores são obrigatórios no cenário do professor,
busca esses no XML, informando quais foram encontrados. Além de informar aonde foi
encontrado o erro (Figura 6).

Figura 6: Mensagem de retorno para falta de atores obrigatórios

Baseado no exemplo da ALU foi verificado que o PtolemyModelChecker pode ter sua
implementação melhorada de forma que o mesmo venha a analisar não somente os
atores mas também as conexões e os valores contidos nas entradas e saídas dos mesmos.
Tornando possível utilizar PtolemyModelChecker em provas e outros tipos de trabalhos
que envolvam modelos computacionais cada vez mais complexos.

3 Avaliação dos resultados


Após analisar as características do Ptolemy citadas neste trabalho, verificamos seu
potencial para o ensino, devido a permitir ao aluno e professor simular ambientes
construídos pelos mesmos e ter a possibilidade de avaliar o conhecimento para o tema
estudado na disciplina de Organização de Arquitetura de Computadores.
As próximas etapas serão de incorporar à ferramenta a verificação automática da
completude do roteiro didático e também apresentar uma interface mais amigável do
simulador aos alunos.
A classe PtolemyModelChecker ainda necessita contar com outras funcionalidades,
como por exemplo: verificação das conexões e dos parâmetros das portas e dos atores,
incorporar a classe ao projeto Ptolemy e a sua interface gráfica, funcionalidades estas
que ainda estão em construção.

4 Referencias
Vital, W. I. e Prietch, S. S. Prototipação de sistema educativo destinado ao auxílio do
ensino de arquitetura e organização de computadores. Encontro Regional Bahia –
Sergipe, 2004.
Brito, A. V. Simulação Baseada em Atores para no Ensino de Arquitetura de
Computadores. Apresentado no Workshop sobre Educação em Arquitetura de
Computadores (WEAC) – Simpósio Brasileiro de Arquitetura de Computadores.
SBAC, São Paulo, 2009.
Lee, E. A. "Overview of the Ptolemy Project", Technical Memorandum UCB/ERL M01/11,
University of California, Berkeley, EUA. Março de 2001.

Anda mungkin juga menyukai