IMPRIMIR VOLTAR
A. Ciências Exatas e da Terra - 2. Ciência da Computação - 1. Arquitetura de Computadores

INTEGRAÇÃO DE UM DISPOSITIVO DE HARDWARE RECONFIGURÁVEL COM A PLATAFORMA J2EE

Lúcio Renê Prade 1
Rolf Fredi Molz 1
(1. Departamento de Informática – Universidade de Santa Cruz do Sul / UNISC)
INTRODUÇÃO:

 

Para alguns problemas computacionais complexos, as soluções implementadas em software seqüencial executado em hardware monoprocessado de propósito geral não atendem as necessidades de tempo de resposta e desempenho. Desse modo, novas soluções estão sendo desenvolvidas e utilizadas com o objetivo de melhorar o tempo de resposta, o desempenho e a qualidade dos resultados. Dentre as quais se podem destacar as que são baseadas no uso de software distribuído com arquiteturas de propósito geral e também as que utilizam hardware dedicado para aplicações específicas. Os FPGAs (Field Programmable Gate Array) têm atingido densidades de portas lógicas muito grandes o que facilitou muito o desenvolvimento de hardware dedicado. Em se tratando de aplicações distribuídas processadas por hardware de propósito geral, pode-se destacar a plataforma J2EE (Java Enterprise Edition). Essa plataforma estende a linguagem Java através do modelo baseado em componentes. Buscando uma maior integração entre estas duas soluções – as baseadas em hardware para aplicações específicas e as baseadas em aplicações distribuídas –, o que melhoraria ainda mais os resultados e o desempenho dos sistemas como um todo, se propõe desenvolver um mecanismo para efetuar a comunicação entre elas. Este mecanismo fará a integração entre um dispositivo FPGA (protótipo de hardware dedicado) e um servidor de aplicação baseado na plataforma J2EE, através da troca de mensagens.

METODOLOGIA:
 

Para a realização do trabalho primeiramente foi necessário fazer uma revisão bibliográfica das tecnologias envolvidas: Java, em especial a plataforma J2EE e uma de suas API´s a JMS(Java Message Service), dispositivos de hardwares reconfiguráveis em especiais os FPGA´s e da linguagem de descrição de hardware VHDL. Após desenvolveu-se um protótipo que faz a integração, ele é composto de um módulo de aquisição de sinais, confeccionado na Placa de Desenvolvimento UP 1 Education Board, que contém um FPGA da família FLEX 10K Altera Este módulo está conectado a um computador que recebe os sinais do módulo de aquisição através da sua porta serial EIA-232. Este computador faz o papel de um produtor de mensagens, ou seja, os sinais recebidos através da porta serial que são transformados em mensagens padrões da API JMS. Através da rede ethernet o computador está conectado a um servidor JMS, esse servidor implementa uma fila de controle das mensagens, que poderão ser consumidas por seus destinatários. Vários teste foram realizados para comprovar a estabilidade do sistema.

RESULTADOS:

Como é estabelecida uma conexão fraca entre a unidade que produz mensagens e o consumidor onde as mensagens contendo os dados coletados serão processados, no caso do consumidor se tornar inativo, as mensagens continuarão a ser armazenadas até que o consumidor torne-se ativo novamente. Caso a quantidade de dados colhidos seja maior que a capacidade de processamento, estas mensagens também não serão perdidas, ficarão armazenadas, até poderem ser processadas. Um fato importante é que a unidade de coleta de dados e produção de mensagens não ficará bloqueada até que suas mensagens produzidas possam ser processadas. Não impedindo que os dados continuem a ser coletados e enviados em tempo real. Podem-se citar alguns exemplos de possíveis aplicações para este protótipo como: Sistemas de telemetria diversos, onde um hardware dedicado fará a coleta de dados, o pré-processamento e após o envio da mensagem com os dados até o servidor JMS. Isso garantiria a não interrupção da coleta dos dados. Sistemas de tele medicina e tele monitoramento, onde a não interrupção na coleta de dados é fundamental para garantir um diagnóstico preciso. Por último pode-se citar a implementação de sistemas automáticos de previsão do tempo, onde o número de variáveis coletadas e a taxa de amostragem são muito altos, pode se empregar o protótipo com algumas modificações, utilizando vários consumidores de mensagens, o que garante um processamento distribuído e a obtenção dos resultados em menor tempo.

CONCLUSÕES:

Este trabalho propôs a integração entre um dispositivo de hardware reconfigurável com a plataforma J2EE, desenvolvendo assim um sistema protótipo composto por FPGA, interface de comunicação, servidor de aplicação e clientes consumidores de mensagens. Para que fosse possível a realização desta integração, foi necessário o estudo detalhado de todas as tecnologias envolvidas. A linguagem VHDL e os FPGA´s, foram estudados para desenvolver um hardware de aquisição de dados e pré-processamento dos sinais, que estabelecesse comunicação com o microcomputador. Ainda no FPGA foi necessário o desenvolvimento de uma UART para realizar a comunicação serial assíncrona com a porta EIA 232 do microcomputador. Por fim, o foco principal do trabalho, que foi a linguagem de programação Java estendida em sua plataforma J2EE e a API JMS, responsável pela integração hardware servidor de aplicação, através da troca de mensagens. Com o desenvolvimento do protótipo, podem-se constatar na prática as características da API JMS e comprovar algumas de suas vantagens, como o fraco acoplamento entre objetos, a não necessidade de o cliente ficar bloqueado esperando confirmação de resposta de recebimento da mensagem. Este protótipo poderá servir como base para o desenvolvimento de sistemas de monitoramento a distância mais confiáveis que possam ser utilizados em situações críticas onde a disponibilidade do sistema é um fator relevante, assim como o tempo de resposta.


Trabalho de Iniciação Científica  
Palavras-chave: J2EE; FPGA; Java Message Service.
Anais da 58ª Reunião Anual da SBPC - Florianópolis, SC - Julho/2006