implementação de um sistema operacional baseado

Propaganda
IMPLEMENTAÇÃO DE UM SISTEMA OPERACIONAL BASEADO EM
AUTÔMATO FINITO IMPLEMENTADO EM FPGA
Douglas Rafael Gomes, Marco Antonio Assis de Melo
Centro Universitário da FEI
[email protected], [email protected]
Resumo:
Este projeto tem por objetivo o
desenvolvimento de um Sistema Operacional usando
Autômatos Finitos em seu modelamento. Ele será
implementado em linguagem C e executado através do
processador NIOS II, um softprocessor em um
dispositivo eletrônico programável do tipo FPGA, Field
Programmable Gate Array. Os resultados da
implementação serão visualizados em um monitor
externo, além de um teclado para entrada de comandos
e dados.
1. Introdução
Sistemas Computacionais são parte integrante da
vida cotidiana. Em vários equipamentos e dispositivos
modernos, como televisores, forno de micro ondas, ar
condicionado, sistema elétrico de um automóvel e
outros, possuem um sistema computacional dedicado
para as tarefas que se propõem. Outros equipamentos já
possuem um sistema de comunicação em rede, como os
smartfones. Uma maneira de descrever o funcionamento
destes sistemas computacionais é através da
reconhecedores autômatos [1], que são dispositivos de
computação formais.
Um exemplo mais elaborado é o reconhecimento de
comandos ou palavras válidas pelo Sistema
Operacional, usando um Analisador Léxico. O
Analisador Léxico faz o reconhecimento de uma
seqüência válida como mostrado na figura 1 para a
palavra chave “then”.
Figura 2 – Kit de Desenvolvimento DE2-70
Como exemplo, será executado um programa que
soma números contidos em um vetor. A Figura 3 mostra
o sistema completo, onde através de um monitor
teremos a interface de saída. A interface de entrada para
carregar o programa será a ferramenta Quartus II da
Altera e um teclado para digitação dos comandos.
Figura 3 – Sistema Proposto
4. Conclusões
Figura 1 – Reconhecedor autômato da palavra chave
“then”
O sistema operacional proposto permitirá que um
usuário do sistema de computação execute um programa
carregado no Processador NIOS II através dos seguintes
comandos: Run Program, Dir, Stop e Error Run
Program.
2. Metodologia
Uma plataforma de desenvolvimento em tempo real
formada por uma placa FPGA DE2-70 da Terasic (KIT
de desenvolvimento) com dispositivo FPGA Altera
Cyclone® II 2C70 será usada para executar o Sistema
Operacional carregado no softprocessor NIOS II [2].
Nesta plataforma, poderemos executar programas em
linguagem C, que serão supervisionados pelo Sistema
Operacional concebido por esta Iniciação Científica.
O projeto esta em sua fase inicial e tem data de
conclusão prevista para Dezembro/2012. Para melhor
exemplificar o projeto, foi desenvolvido um protótipo
do sistema em linguagem C para ambiente Windows.
Espera-se que, ao final deste trabalho, os resultados
possam ser utilizados em disciplinas que contenham
processamento digital de sinais, assim como arquitetura
de computadores.
5. Referências
[1] Introduction to Automata Theory, Languages, and
Computation. John E. Hopcroft, Rajeev Motwani,
Jeffrey D. Ullman. Editora: Addison Wesley.
[2] Curso Altera Nios II. Disponível em:
<http://www.altera.com/customertraining/webex/Using_
NiosII_Proc/player.html>. Acesso em Agosto de 2012.
Agradecimentos
Ao Centro Universitário da FEI pelo apoio e
confiança em nosso trabalho.
Download