Implementação em hardware da função de ativação do neurônio artificial utilizando instrução customizada para o processador IOS II

Save this PDF as:
 WORD  PNG  TXT  JPG

Tamanho: px
Começar a partir da página:

Download "Implementação em hardware da função de ativação do neurônio artificial utilizando instrução customizada para o processador IOS II"

Transcrição

1 Implementação em hardware da função de ativação do neurônio artificial utilizando instrução customizada para o processador IOS II Wilian Soares Lacerda, Rafael Marques Chaves Dep to de Ciência da Computação - Universidade Federal de Lavras (UFLA) Caixa Postal Lavras MG - Brazil Abstract. This paper presents a method for implementing a network of artificial neurons in hardware/software. The artificial neural network and its training algorithm are implemented in an FPGA platform type instantiated in a microprocessor ( IOS II) that runs a program developed in C++. The activation function of artificial neurons (sigmoid) is implemented in hardware on the FPGA using VHDL, and its use is a call to an instruction from the microprocessor. The results show gains in processing speed of artificial neural network during the training phase, without prejudice to its efficiency when compared to the same system in software. Resumo. Este artigo apresenta um método de implementação de uma rede de neurônios artificiais em hardware/software. A rede neural artificial e o seu algoritmo de treinamento são implementados em uma plataforma tipo FPGA instanciado em um microprocessador ( IOS II) que executa um programa desenvolvido em linguagem C++. A função de ativação dos neurônios artificiais (sigmóide) é implementada em hardware na FPGA utilizando VHDL, e a sua utilização é realizada como uma chamada a uma instrução do microprocessador. Os resultados demonstram ganho de velocidade de processamento da rede neural artificial na fase de treinamento, sem prejuízo a sua eficiência quando comparado ao mesmo sistema em software. 1. Introdução Redes Neurais Artificiais (RNA s), assim como outros métodos computacionais, geralmente são implementados em software, se apresentando na forma de algoritmos, operando em várias plataformas diferentes [Braga 2007, Haykin 2001]. Desta forma, o funcionamento destas estruturas fica agregado ao funcionamento de um computador. Isto significa que o desempenho das mesmas será limitado, entre outros fatores, pela capacidade da plataforma de processamento, e principalmente pelo fato dos computadores serem máquinas seriais. Estas estruturas operam com um overhead muito elevado, uma vez que existem sinais de controle que são importantes para o funcionamento do computador, mas não para o funcionamento direto das mesmas. A implementação de RNA s em hardware tem como principal motivação a diminuição deste overhead. A implementação em hardware também possibilita o funcionamento paralelo das RNA s, o que, em termos práticos, significa ganho de desempenho e velocidade.

2 Neste trabalho é apresentada uma implementação de uma RNA, parte em software e parte em hardware. A parte escolhida para implementação em hardware foi justamente a função de ativação dos neurônios artificiais, função do tipo sigmoidal. A função sigmóide possui um alto custo computacional, por isto foi a parte escolhida para implementação em hardware com o objetivo de aumentar o desempenho tanto na fase de treinamento (fase backward) quanto na fase de uso da rede (fase forward). O sistema neural foi implementado em uma plataforma microprocessada em FPGA (Field Programmable Gateway Array) utilizando um kit de desenvolvimento produzido pela Altera Corporation [Altera 2009]. O artigo é organizado da seguinte forma. Na seção 2 é apresentado uma breve revisão sobre métodos e as dificuldades de implementação de Redes Neurais em hardware. Na seção 3 é apresentado a metodologia proposta baseada em plataforma FPGA. Em seguida, na seção 4 são apresentados os resultados obtidos com a metodologia proposta, além da análise de desempenho obtido. Por fim, na seção 5 são apresentadas as conclusões deste trabalho. 2. Redes eurais em Hardware O desenvolvimento de uma rede neural pode ser realizado tanto em software quanto em hardware, havendo vantagens e desvantagens entre ambos. Para o desenvolvimento em software, as vantagens recaem sobre a facilidade e o tempo gasto para implementação da rede; já as desvantagens estão relacionadas à lentidão dos dados, por serem processados sequencialmente. Para a implementação em hardware, as vantagens estão relacionadas ao melhor aproveitamento do paralelismo intrínseco das RNA s, enquanto que as desvantagens ficam a cargo de se alcançar um equilíbrio razoável na precisão de bits. Dentre as características inerentes das RNA s que chamam a atenção para o desenvolvimento em hardware está o processamento paralelo, que é a capacidade de receber múltiplas informações e processá-las ao mesmo tempo [Hassan 2008, Ludwig 2007, Valença 2005]. Para implementação digital com alta precisão numérica é necessário uma grande área de chip, enquanto que em implementação analógica o ruído do sistema impede alta precisão. Assim, implementações em hardware digital de RNA s tipicamente usam uma representação de parâmetros da rede com uma precisão limitada, por exemplo: 16 bits de peso são usados durante o processo de treinamento backpropagation (fase backward) e apenas 4 bits ou 8 bits de peso são empregados durante a fase forward [Moerland 1996]. Um exemplo de implementação em eletrônica analógica pode ser comparada com implementação digital com uma resolução de apenas 7 bits. Desde que implementações em hardware são caracterizadas por uma precisão baixa, é essencial estudar os seus efeitos na fase forward e no treinamento dos vários modelos de RNA s. Alguns problemas da implementação do algoritmo de treinamento das RNA s em hardware são a necessidade de precisão da função de ativação e sua derivada, e o cascateamento de multiplicadores na fase backward [Alippi 1991]. A função sigmoidal é a função de ativação não linear tradicional usada em RNA s, demonstrada na Equação 1 e Figura 1. A função sigmoidal não é apropriada para implementação digital direta, já que consiste de uma série exponencial infinita. Muitas implementações usam uma tabela para aproximar a função sigmoidal (veja exemplo na Figura 2), entretanto a quantidade de hardware necessário para esta tabela pode ser muito grande especialmente se uma

3 aproximação razoável é desejada. Uma simples função não linear de segunda ordem pode ser usada como uma função sigmoidal o que pode ser implementada diretamente usando técnicas digitais [Blake 1998]. f(v) =1/(1+ e -v ) (1) Figura 1 Gráfico da função sigmóide Figura 2 Gráfico da função sigmóide discretizada em 20 degraus Antes do advento da lógica programável, circuitos lógicos eram construídos em placas utilizando componentes padrões, ou pela integração de portas lógicas [Fabbrycio 2009]. Para implementações que precisam de chips personalizados, os circuitos ficavam muitos caros, pois um circuito seria desperdiçado, toda vez que fosse feito um teste, até alcançar o desejado. Atualmente, tem-se a opção de usar chips programáveis [Weber 2003], chamados de FPGAs (Field Programmable Gate Arrays) ou, mais raramente, de LCAs (Logic Cell Arrays). Como o nome sugere, eles são chips compostos por um enorme número de chaves programáveis, que podem ser configurados para implementar o comportamento de qualquer outro circuito. Um único FPGA pode implementar não apenas um processador simples, mas também outros circuitos de apoio, como o controlador de vídeo, uma interface serial e assim por diante. Os modelos recentes incluem inclusive uma pequena quantidade de memória RAM e circuitos de apoio, de forma que você pode ter um sistema completo usando apenas um chip FPGA previamente programado, um chip de memória EPROM (ou memória flash) com o software, a placa de circuito com as trilhas e conectores e uma bateria ou outra fonte de energia. Na implementação por hardware, o tempo de desenvolvimento de um protótipo é maior comparado ao tempo utilizado em uma implementação por software. Contudo, devido a alta taxa de processamento paralelo que pode ser obtida, torna-se ideal para aplicações que envolvam o processamento de sinais em tempo real [Molz 1999]. Assim, vários trabalhos estão sendo feitos em hardware, com o intuito de aperfeiçoar a técnica de RNA em hardware [Granado 2006, Moerland 1997, Omondi 2006, Savran 2003] para ser utilizada na indústria. Molz (1999) implementou redes neurais em um ambiente de codesign em uma placa reconfigurável na intenção de aperfeiçoar a técnica em hardware. Foi notado que

4 o cálculo da função de ativação era muito custoso para FPGA. A solução para este problema foi fazer uma tabela de valores previamente definidos contendo os valores de entrada e suas respectivas saídas da rede, removendo, assim, a função sigmoidal. O problema dessa solução é que trouxe muitos erros à rede, pois foi aproximado o valor de saída, demorando mais a convergência do treinamento na rede neural. Nacer (2008) propôs uma arquitetura neural em hardware, usando uma FPGA, eficiente para serem usados em reconhecimento de padrões de sensores de gás. Foi usado o algoritmo de retropropagação (backpropagation) em VHDL e os resultados foram considerados adequados, pois a taxa de erro na classificação dos padrões pode ser comparável a um processador comum. Soares (2006) fez uma implementação do controlador sensorless do motor de indução trifásico, utilizando como base redes neurais artificiais em FPGA. Para a tarefa de representação da função de ativação sigmoidal dos neurônios em hardware, fez-se uso da técnica de interpolação spline. Como resultado final do trabalho, foi construído um protótipo do controlador do motor de indução trifásico, composto por um FPGA gerenciado por um DSP (processador digital de sinais), controlando circuitos de potência para o acionamento do motor. Dou, Xia, e Jiang (2009) fizeram predição de estrutura secundária usando SCFG (Stochastic Context Free Grammars) em FPGA. Nesse trabalho, os autores colocaram o algoritmo CYK em chips para aumentar a eficiência do paralelismo que esse algoritmo pode trazer. O algoritmo CYK mostra as complexas dependências de dados, em que a distância da dependência é variável. Então, os autores propuseram uma solução para isso, fazendo uma estrutura de arrays sistólicas. Widrow, Rumelhart, e Lehr (1994) mostraram alguns trabalhos já desenvolvidos nas áreas de RNA em hardware com aplicações na indústria, na área comercial e na ciência. Abaixo estão listados alguns deles: Telecomunicações; Controle de sons e vibrações, em sistemas automotivos e de ar-condicionado; Controle de feixes do acelerador de partículas; Aprovação de empréstimos; Exploração de petróleo; Detecção de fraudes de cartão de crédito; Controle de qualidade na manufatura; Detecção de explosivos em bagagens em aeroportos. 3. Metodologia Para a implementação da RNA, foi utilizado como plataforma o Kit de Desenvolvimento NIOS II produzido pela Altera Corporation que contêm uma FPGA modelo Stratix II EPS2S60F672C3 e os seguintes periféricos [Altera 2009a]: 32 MB de memória DDR SDRAM;

5 16 MB de memória Flash; 2 MB de memória SRAM; Cristal oscilador de 50 MHz; 4 botões tipo push-bottom; 8 LED s; USB-blaster que conecta o kit ao computador; 2 displays de 7 segmentos; Interface ethernet. Na Figura 3 é apresentado o aspecto real do kit e na Figura 4 o diagrama simplificado do kit de desenvolvimento utilizado, mostrando as conexões dos elementos citados acima com a FPGA. Figura 3 Foto do kit de desenvolvimento Fonte: Altera Corporation Figura 4 Diagrama do kit de desenvolvimento Fonte: Altera Corporation Para o desenvolvimento do projeto de hardware e software a ser implementado na FPGA do kit, foi utilizado o software Quartus II integrado com o software SOPC Builder [Altera 2009b] para plataforma tipo microcomputador PC com sistema operacional Windows. O SOPC Builder foi utilizado para desenvolvimento do sistema microprocessado baseado no padrão NIOS II. O software NIOS II IDE foi utilizado para desenvolvimento do programa em linguagem C++ que, depois de compilado e transmitido ao kit, é executado na CPU NIOS implementada na FPGA. O software gravador (integrado aos softwares Quartus II e NIOS II IDE) grava a configuração na FPGA utilizando interface JTAG-USB. A RNA foi implementada em software (linguagem C++) para ser executada no processador NIOS II configurado na FPGA. A função de ativação dos neurônios da RNA foi implementada em software e em hardware para efeitos de comparação. Para implementação da função de ativação sigmoidal em software, foi utilizada função exponencial recursiva disponível na biblioteca de funções da linguagem C++. Para a implementação da mesma função de ativação em hardware, foi utilizada linguagem VHDL e os valores de saída da função foram obtidos via tabela discretizada. A função

6 de ativação em hardware foi agregada ao processador NIOS II como uma instrução customizada (Custom Logic Instruction) acrescentada ao conjunto de instruções do processador. A Figura 5 ilustra o conceito de criação de novas instruções dentro do processador embarcado NIOS II. Figura 5 - Instrução de hardware acrescentada ao processador NIOS II Fonte: Altera Corporation Figura 6 - Esquema da FPGA interligada aos botões de entrada e o LED de saída. Para implementar em hardware a função sigmóide em forma de tabela foi necessário fazer, primeiramente, uma discretização dessa função. Observa-se pela Figura 1 que alguns trechos da função sigmóide crescem mais rápido que outros. Nos trechos em que v se aproxima de zero, a função f(v) sofre uma variação maior. Assim, neste trecho da função, a discretização deve ocorrer de forma maior para melhorar a precisão da aproximação. Na Figura 2 é apresentada a função sigmóide discretizada onde pode ser observado o efeito da discretização. Nota-se, nessa figura, que há mais degraus no intervalo próximo de v igual a zero. Para atender esta necessidade, foi utilizada a Fórmula 2 para determinar a variação de v ( v), de modo que a variação entre os valores de f(v) mais próximos não fossem maior que 2%. Em que: v ij = k/f (i) (2) v ij é a variação entre o valor de v no ponto i para o valor de v no ponto j vizinho de i; k é uma constante de variação escolhida a priori. Seu valor é para 60 valores (degraus) de discretização; f (i) é a derivada da função sigmoidal no ponto i. Os valores escolhidos para a função discretizada são calculados iterativamente de forma que o valor de v do próximo ponto será o valor de v do ponto atual mais a variação v, onde é utilizada a Fórmula 3 para os valores positivos e a Fórmula 4 para os negativos.

7 j = i + v (3) j = i - v (4) em que: i = valor de v do ponto atual; j = valor de v do ponto a ser descoberto; v = variação calculada na Fórmula 2. Para testar a eficiência do método proposto, foi implementada uma RNA na FPGA com 4 entradas binárias, 16 neurônios na camada escondida, e um neurônio na camada de saída. A rede neural foi então treinada utilizando o algoritmo backpropagation para resolver o problema ou exclusivo com 4 bits de entrada. Assim, foram implementadas duas formas de discretização da função de ativação: 20 degraus e 60 degraus. A taxa de aprendizado foi determinada em 0.35 e taxa de momento em 0.65, sendo constantes para as implementações. Através de 4 botões e um LED presentes no kit de desenvolvimento com FPGA, foi possível testar e visualizar o resultado da RNA treinada, confome Figura Resultados e discussão Nessa seção são apresentados os resultados de desempenho obtidos com a RNA implementada com função de ativação em hardware e em software, treinada para resolver o problema da função XOR de 4 entradas. Para a implementação da função de ativação em hardware, foram feitos testes com a discretização da função com 20 e 60 degraus. A Figura 7 apresenta o tempo de treinamento necessário por época para cada tipo de implementação. O treinamento foi repetido cem mil vezes para facilitar a medição de tempo do algoritmo. A implementação em hardware da função de ativação discretizada (20 ou 60 degraus) utilizou menos tempo para executar as 10 épocas de treinamento do que quando comparado com o mesmo treinamento utilizando função de ativação em software (função recursiva), cerca de 6 minutos a menos. O treinamento da RNA foi limitado a 10 épocas para as 3 formas de implementação, mas a sua convergência já pode ser vista nas 5 primeiras épocas conforme é visto na Figura 8. Na Figura 8 pode ser observado o que acontece com o erro médio quadrático de treinamento em cada implementação. O treinamento utilizando a função de ativação em software converge em menos épocas quando comparado as implementações com função de ativação em hardware, pois a função implementada em software tem um comportamento mais suave gerando menos erros. Entretanto, a implementação da função de ativação com 20 degraus apresenta um erro médio quadrático de treinamento menor que a implementação com 60 degraus. Isto pode ser devido ao uso das mesmas taxas de aprendizado e momento. Na Figura 9 é apresentado o gráfico do erro médio quadrático de treinamento em função do tempo de processamento para cada implementação. Pode-se observar que a implementação da função de ativação com 20 degraus convergiu em menos tempo

8 apesar de utilizar mais épocas de treinamento do que a implementação da função de ativação em software. Figura 7 - Gráfico do tempo utilizado para treinamento da RNA em relação as épocas Figura 8 - Gráfico do erro médio quadrático de treinamento por época Observando os gráficos das Figuras 8 e 9, e considerando que a convergência do algoritmo de treinamento da RNA acontece quando o erro médio quadrático é menor que 0.01, o treinamento da RNA com a função de ativação sigmóide contínua (em software) dura 560 segundos, equivalente a 9 minutos e 20 segundos, enquanto o treinamento da mesma RNA, porém usando função de ativação sigmóide discreta com 20 degraus, gastou 355 segundos, equivalente a 5 minutos e 55 segundos. Isso mostra que essa função gastou 3 minutos e 25 segundos a menos que aquela, durante as 4 épocas necessárias para a convergência da rede nos dois casos. Figura 9 - Gráfico do erro médio quadrático de treinamento em função do tempo e processamento Figura 10 - Relatório do Quartus II da função de hardware criada (sig_hardware) A implementação da função de ativação em hardware em forma de tabela consome de mais dispositivos lógicos da FPGA, porém os resultados foram

9 satisfatórios. A função sigmoidal com 60 degraus gastou somente 2% a mais de dispositivos lógicos da FPGA utilizada. Somente foram usados 84 registradores e 852 ALUTs combinacionais a mais. Isso pode ser constatado pela Figura 10 no relatório de saída do software Quartus II, que apresenta quantos dispositivos lógicos foram gastos somente para a função sigmóide (cujo nome no programa é sig_hardware ). A função sigmoidal discretizada com 20 degraus utilizou somente 65 registradores e 353 ALUTs combinacionais a mais, cerca de 1% de dispositivos lógicos a mais da FPGA utilizada para o projeto. Para comprovar a eficiência da função sigmóide implementada em hardware, foram feitos testes separados do treinamento da RNA. Primeiramente, foi calculado o tempo médio gasto para que uma função seja executada uma vez apenas. A função implementada em software gastou s para executar a função. O sistema com a instrução customizada com 20 degraus gastou x 10-9 s e a com 60 degraus, x 10-9 s. A função implementada em hardware gastou muito menos tempo que a função recursiva implementada em software. Esses tempos calculados para cada situação e a quantidade de dispositivos lógicos utilizados para implementar a rede neural artificial com 16 neurônios pode ser verificado na Tabela 1. Tabela 1 - Resultados do tempo de execução obtido e da utilização dos elementos lógicos para cada tipo de implementação. Implementação Tempo gasto em uma iteração Tempo gasto em 100 mil iterações Registradores úmero de ALUT Sistema sem a instrução customizada s 43.61s Sistema com a instrução customizada: 20 degraus x 10-9 s x 10-3 s Sistema com a instrução customizada: 60 degraus x 10-9 s x 10-3 s Assim, tanto a implementação com instrução customizada (função de ativação em hardware) e a implementação da função de ativação em software realizaram a mesma tarefa com sucesso: treinar a RNA para executar a função lógica XOR de 4 entradas. Porém, a implementação com a instrução customizada gasta menos tempo de execução do treinamento da RNA que a implementação com a função recursiva. A vantagem de utilizar a implementação da função de ativação em software está na economia de dispositivos lógicos. 5. Conclusão Foi mostrado nesse trabalho como foi implementada a função de ativação do neurônio artificial (função sigmoidal) em hardware (FPGA) utilizando de valores tabelados da função com 20 e 60 degraus. Os resultados dos testes de desempenho de uma Rede Neural Artificial treinada para executar a função lógica XOR mostraram que o tempo gasto em 100 mil iterações a que foi sujeita a função sem customização foi de

10 aproximadamente segundos. A função customizada criada, com o mesmo número de iterações, gastou x 10-3 segundos, com a mesma exatidão dos resultados da função sem customização. Para a continuação deste trabalho, pretende-se realizar as seguintes propostas: Testar a metodologia para resolver problemas de aproximação com RNA em hardware. Utilizar o sistema neural em hardware em uma aplicação que demanda execução em tempo real. Verificar o consumo de energia no sistema com implementação de instrução customizada. Implementação de todo o modelo do neurônio artificial em hardware, para obter maiores ganhos no tempo de execução da RNA. Agradecimentos Os autores agradecem o suporte financeiro da FAPEMIG para o desenvolvimento desta pesquisa e a sua publicação. Referências Alippi, Cesare; Nigri, Meyer E. (1991). Hardware requirements for digital VLSI implementation of neural networks. In IEEE International Joint Conference on Neural Networks, November 1991, vol. 3, p Altera Corporation (2009). Stratix II Device Handbook. San Jose, USA. Altera Corporation (2009a). Nios II Software Developer s Handbook. San Jose, USA. Altera Corporation (2009b). Quartus II Handbook v9.1. San Jose, USA. Blake, J. J., Maguire, L. P., McGinnity, T. M., Roche, B. and McDaid, L. J. (1998). The implementation of fuzzy systems, neural networks and fuzzy neural networks using FPGAs. Information Sciences, 112: Braga, Antônio de Pádua; de Carvalho, André Ponce de Leon F; Ludemir, Teresa Bernarda (2007). Redes Neurais Artificiais: Teoria e Aplicações. Rio de Janeiro: Editora Livros Técnicos e Científicos, 2ª edição. Dou, Yong; Xia, Fei; Jiang, Jingfei (2009). Fine-grained Parallel Application Specific Computing for RNA Secondary Structure Prediction Using SCFGs on FPGA. Proceedings of the 2009 International Conference on Compilers, Architecture, and Synthesis for Embedded Systems. National Laboratory for Parallel & Distributed Processing. National University of Defence Technology, China, p Fabbrycio A.C.M; Cardoso, Marcelo Augusto Costa Fernandes (2007). FPGA e Fluxo de projeto. Disponível em: <http://www.decom.fee.unicamp.br/~cardoso/ie344b/introducao_fpga_fluxo_de_p rojeto.pdf>. Consultado em 16/10/2009.

11 Granado, J. M.; Vega, M. A.; Pérez, R.; Sánchez, J. M.; Gómez, J. A (2006). Using FPGAs to Implement Artificial Neural Networks. In 13 th IEEE International Conference on Electronics, Circuits and Systems, December 2006, p Hassan, A. A.; Elnakib, M.; Abo-Elsoud, M (2008). FPGA-Based Neuro-Architecture Intrusion Detection System. In Proceedings of the Internatinal Conference on Computer Engineering & Systems, Cairo, pp Haykin, Simon (2001). Redes Neurais: Princípios e Prática. Porto Alegre: Bookman, 2ª edição, 900 p. Ludwig Jr., O.; Costa, Eduard Montgomery M. (2007). Redes Neurais: Fundamentos e Aplicações com Programas em C. Rio de Janeiro: Editora Ciência Moderna Ltda. Moerland, Perry; Fiesler, Emile (1996). Hardware-friendly learning algorithms for neural networks: An overview. In Proceedings of MicroNeuro '96, pages Moerland, Perry; Fiesler, Emile (1997). Neural network adaptations to hardware implementations. Technical Report RR 97-17, Dalle Molle Institute for Perceptive Artificial Intelligence, Martigny, Valais, Switzerland, January Molz, Rolf F; Engel, Paulo M.; Moraes, Fernando G. (1999). Uso de um Ambiente Codesign para a Implementação de Redes Neurais. In Proceedings of the IV Brazilian Conference on Neural Networks - IV Congresso Brasileiro de Redes Neurais, July 1999, p Omondi, Amos R.; Rajapakse, Jagath C. (2006). FPGA Implementations of Neural Networks. Springer, 1ª edição, 380 p. Savran, A.; Ünsal, S. (2003). Hardware Implementation of a Feedforward Neural Network Using FPGAs. Lecture Notes in Computer Science, p , Bursa, Turkey. Nacer, Carlos Henrique; Baratto, Giovani (2008). Rede Neural Artificial em Hardware Reconfigurável. In Simpósio Internacional de Iniciação Científica, 16º SIICUSP, 6 a 7 de novembro de Resumos. Soares, André Muniz (2006). Implementação digital de redes neurais artificiais para o controle de motor de indução. Dissertação de Mestrado em Engenharia Elétrica, Universidade Federal de Mato Grosso do Sul, 19 de dezembro de Valença, Mêuser (2005). Aplicando Redes Neurais: Um Guia Completo. Olinda, PE: Ed. do Autor. Weber, Leo; Klein, Pedro Antonio Trierweiler (2003). Aplicação da Lógica Fuzzy em Software e Hardware. Editora da ULBRA, ISBN , 112 p. Widrow, Bernard; Rumelhart, David E.; Lehr, Michael A. (1994). Neural networks: applications in industry, business and science. Journal of Communications of the ACM, vol. 37, n. 3, March 1994, p

ÁREA: CV ( ) CHSA ( ) ECET ( )

ÁREA: CV ( ) CHSA ( ) ECET ( ) ADAPTAÇÃO E INTEGRAÇÃO DO PROCESSADOR RISCO A UMA ARQUITETURA MULTI-CORE PARA SISTEMAS EMBARCADOS DE PROPOSITO GERAL Laysson Oliveira Luz (Bolsista PIBIC/CNPq), Ivan Saraiva Silva (Orientador, Departamento

Leia mais

Curso Superior de Sistemas de Telecomunicações Unidade São José. Disciplina: Síntese de Sistemas de Telecomunicações 7º Fase

Curso Superior de Sistemas de Telecomunicações Unidade São José. Disciplina: Síntese de Sistemas de Telecomunicações 7º Fase Curso Superior de Sistemas de Telecomunicações Unidade São José Disciplina: Síntese de Sistemas de Telecomunicações 7º Fase Bases tecnológicas Dispositivos Lógicos Programáveis. Introdução à Tecnologia

Leia mais

RAFAEL MARQUES CHAVES

RAFAEL MARQUES CHAVES RAFAEL MARQUES CHAVES IMPLEMENTAÇÃO EM HARDWARE DA FUNÇÃO DE ATIVAÇÃO DO NEURÔNIO ARTIFICIAL UTILIZANDO INSTRUÇÃO CUSTOMIZADA PARA O PROCESSADOR NIOS II LAVRAS-MG 2010 RAFAEL MARQUES CHAVES IMPLEMENTAÇÃO

Leia mais

Implementação de um módulo Ethernet 10/100Mbps com interface Avalon para o processador Nios II da Altera

Implementação de um módulo Ethernet 10/100Mbps com interface Avalon para o processador Nios II da Altera Implementação de um módulo Ethernet 10/100Mbps com interface Avalon para o processador Nios II da Altera Ricardo Menotti Orientador: Prof. Dr. Eduardo Marques Instituto de Ciências Matemáticas e de Computação

Leia mais

Sistemas Digitais. Módulo 15 Prof. Celso PLD - DISPOSITIVOS LÓGICOS PROGRAMÁVEIS

Sistemas Digitais. Módulo 15 Prof. Celso PLD - DISPOSITIVOS LÓGICOS PROGRAMÁVEIS 1 PLD - DISPOSITIVOS LÓGICOS PROGRAMÁVEIS Os projetos com circuitos digitais mais complexos podem se tornar inviáveis devido a vários problemas, tais como: - Elevado número de C.I. (circuitos integrados)

Leia mais

Disciplina: Processamento Digital de Sinais (ENG577) Aula 05 Parte 2: Dispositivos de Hardware Programável Prof.: Eduardo Simas eduardo.simas@ufba.

Disciplina: Processamento Digital de Sinais (ENG577) Aula 05 Parte 2: Dispositivos de Hardware Programável Prof.: Eduardo Simas eduardo.simas@ufba. Universidade Federal da Bahia Escola Politécnica Programa de Pós Graduação em Engenharia Elétrica Disciplina: Processamento Digital de Sinais (ENG577) Aula 05 Parte 2: Dispositivos de Hardware Programável

Leia mais

Previsão do Índice da Bolsa de Valores do Estado de São Paulo utilizandoredes Neurais Artificiais

Previsão do Índice da Bolsa de Valores do Estado de São Paulo utilizandoredes Neurais Artificiais Previsão do Índice da Bolsa de Valores do Estado de São Paulo utilizandoredes Neurais Artificiais Redes Neurais Artificiais Prof. Wilian Soares João Vitor Squillace Teixeira Ciência da Computação Universidade

Leia mais

Complemento II Noções Introdutória em Redes Neurais

Complemento II Noções Introdutória em Redes Neurais Complemento II Noções Introdutória em Redes Neurais Esse documento é parte integrante do material fornecido pela WEB para a 2ª edição do livro Data Mining: Conceitos, técnicas, algoritmos, orientações

Leia mais

Ao longo do presente capítulo será apresentada uma descrição introdutória da tecnologia FPGA e dos módulos básicos que a constitui.

Ao longo do presente capítulo será apresentada uma descrição introdutória da tecnologia FPGA e dos módulos básicos que a constitui. 3 Tecnologia FPGA Ao longo do presente capítulo será apresentada uma descrição introdutória da tecnologia FPGA e dos módulos básicos que a constitui. 3.1. FPGA: Histórico, linguagens e blocos Muitos dos

Leia mais

Programa da disciplina, i metodologia de ensino, avaliações e bibliografia básica. Objetivos da Disciplina

Programa da disciplina, i metodologia de ensino, avaliações e bibliografia básica. Objetivos da Disciplina Circuitos Digitais Cap. 1 Prof. José Maria P. de Menezes Jr. Circuitos Digitais Tópicos Digitais I- Engenharia Elétrica -UFPI Programa da disciplina, i metodologia de ensino, avaliações e bibliografia

Leia mais

Figura 5.1.Modelo não linear de um neurônio j da camada k+1. Fonte: HAYKIN, 2001

Figura 5.1.Modelo não linear de um neurônio j da camada k+1. Fonte: HAYKIN, 2001 47 5 Redes Neurais O trabalho em redes neurais artificiais, usualmente denominadas redes neurais ou RNA, tem sido motivado desde o começo pelo reconhecimento de que o cérebro humano processa informações

Leia mais

MLP (Multi Layer Perceptron)

MLP (Multi Layer Perceptron) MLP (Multi Layer Perceptron) André Tavares da Silva andre.silva@udesc.br Roteiro Rede neural com mais de uma camada Codificação de entradas e saídas Decorar x generalizar Perceptron Multi-Camada (MLP -

Leia mais

GUIA DE LABORATÓRIO DE SISTEMAS DIGITAIS PARA O CURSO DE ENGENHARIA DE CONTROLE E AUTOMAÇÃO

GUIA DE LABORATÓRIO DE SISTEMAS DIGITAIS PARA O CURSO DE ENGENHARIA DE CONTROLE E AUTOMAÇÃO GUIA DE LABORATÓRIO DE SISTEMAS DIGITAIS PARA O CURSO DE ENGENHARIA DE CONTROLE E AUTOMAÇÃO Agosto/2004 V2 INTRODUÇÃO Este guia foi preparado para auxilio às aulas de laboratório para o curso de Engenharia

Leia mais

INTERFACE RECONFIGURÁVEL PARA ARQUITETURA PARALELA BASEADA EM PROCESSADOR EMBARCADO NIOS II

INTERFACE RECONFIGURÁVEL PARA ARQUITETURA PARALELA BASEADA EM PROCESSADOR EMBARCADO NIOS II INTERFACE RECONFIGURÁVEL PARA ARQUITETURA PARALELA BASEADA EM PROCESSADOR EMBARCADO NIOS II Antonio Edson Ceccon Concluinte - Engenharia da Computação - UnicenP/Centro Universitário Positivo cecconae@ig.com.br

Leia mais

PROJETO DE PESQUISA MODALIDADE INICIAÇÃO CIENTÍFICA (BOLSA PIC/FACIT/FAPEMIG)

PROJETO DE PESQUISA MODALIDADE INICIAÇÃO CIENTÍFICA (BOLSA PIC/FACIT/FAPEMIG) PROJETO DE PESQUISA MODALIDADE INICIAÇÃO CIENTÍFICA (BOLSA PIC/FACIT/FAPEMIG) MONTES CLAROS FEVEREIRO/2014 COORDENAÇÃO DE PESQUISA PROGRAMA DE INICIAÇÃO CIENTÍFICA DISPOSITIVOS MÓVEIS INTELIGENTES ORIENTADOR:

Leia mais

FPGA Field Programmable Gate Array

FPGA Field Programmable Gate Array Arquitetura de Computadores FPGA Field Programmable Gate Array Alex Vidigal Bastos Sumário Dispositivos Reconfiguráveis Field Programmable Gate Arrays Funcionamento Desenvolvimento Ferramentas Dispositivos

Leia mais

ARQUITETURA DE COMPUTADORES Prof. João Inácio

ARQUITETURA DE COMPUTADORES Prof. João Inácio ARQUITETURA DE COMPUTADORES Prof. João Inácio Memórias Memória: é o componente de um sistema de computação cuja função é armazenar informações que são, foram ou serão manipuladas pelo sistema. Em outras

Leia mais

Simulador de Redes Neurais Multiplataforma

Simulador de Redes Neurais Multiplataforma Simulador de Redes Neurais Multiplataforma Lucas Hermann Negri 1, Claudio Cesar de Sá 2, Ademir Nied 1 1 Departamento de Engenharia Elétrica Universidade do Estado de Santa Catarina (UDESC) Joinville SC

Leia mais

A Evolução dos Sistemas Operacionais

A Evolução dos Sistemas Operacionais Capítulo 3 A Evolução dos Sistemas Operacionais Neste capítulo, continuaremos a tratar dos conceitos básicos com a intensão de construirmos, agora em um nível mais elevado de abstração, o entendimento

Leia mais

Implementações e Comparação de Multiplicadores de Alta Velocidade para Dispositivos Reconfiguráveis

Implementações e Comparação de Multiplicadores de Alta Velocidade para Dispositivos Reconfiguráveis Implementações e Comparação de Multiplicadores de Alta Velocidade para Dispositivos Reconfiguráveis Tiago dos Santos Patrocinio, Ivan Saraiva Silva Departamento de Computação Universidade Federal do Piauí

Leia mais

FERRAMENTA COMPUTACIONAL PARA PROJETOS DE REDES NEURAIS ARTIFICIAIS UTILIZANDO LINGUAGEM GRÁFICA

FERRAMENTA COMPUTACIONAL PARA PROJETOS DE REDES NEURAIS ARTIFICIAIS UTILIZANDO LINGUAGEM GRÁFICA FERRAMENTA COMPUTACIONAL PARA PROJETOS DE REDES NEURAIS ARTIFICIAIS UTILIZANDO LINGUAGEM GRÁFICA Hugo da Silva Bernardes Gonçalves hugo.bernardes@gmail.com IFSP Instituto Federal de Ciência e Tecnologia

Leia mais

Estudos Iniciais do Sistema didático para análise de sinais no domínio da frequência DSA-PC: tipos de janelas temporais.

Estudos Iniciais do Sistema didático para análise de sinais no domínio da frequência DSA-PC: tipos de janelas temporais. Estudos Iniciais do Sistema didático para análise de sinais no domínio da frequência DSA-PC: tipos de janelas temporais. Patricia Alves Machado Telecomunicações, Instituto Federal de Santa Catarina machadopatriciaa@gmail.com

Leia mais

Uma Implementação de Hiper-Realismo Baseada em Sistema Embarcado

Uma Implementação de Hiper-Realismo Baseada em Sistema Embarcado Uma Implementação de Hiper-Realismo Baseada em Sistema Embarcado Yuri G. G. da Costa 1, Alexandre S. G. Vianna 2, José A. G. de Lima 1, Liliane S. Machado 2, Ronei M. Moraes 2 {yuriggc,strapacao}@gmail.com,

Leia mais

UNIVERSIDADE FEDERAL DE SANTA CATARINA EEL5105 Circuitos e Técnicas Digitais Prof. Eduardo L. O. Batista

UNIVERSIDADE FEDERAL DE SANTA CATARINA EEL5105 Circuitos e Técnicas Digitais Prof. Eduardo L. O. Batista UNIVERSIDADE FEDERAL DE SANTA CATARINA EEL5105 Circuitos e Técnicas Digitais Prof. Eduardo L. O. Batista EXPERIMENTO 1 INTRODUÇÃO AO LABORATÓRIO A. Introdução O Quartus II é um software utilizado para

Leia mais

Relatório de uma Aplicação de Redes Neurais

Relatório de uma Aplicação de Redes Neurais UNIVERSIDADE ESTADUAL DE MONTES CLAROS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS DEPARTAMENTO DE CIÊNCIAS DA COMPUTACAÇÃO ESPECIALIZAÇÃO EM ENGENHARIA DE SISTEMAS DISCIPLINA: REDES NEURAIS PROFESSOR: MARCOS

Leia mais

Componentes de um computador típico

Componentes de um computador típico Componentes de um computador típico Assim como em um videocassete, no qual é necessário ter o aparelho de vídeo e uma fita contendo o filme que será reproduzido, o computador possui a parte física, chamada

Leia mais

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho 20 Capítulo 3 Avaliação de Desempenho Este capítulo aborda como medir, informar e documentar aspectos relativos ao desempenho de um computador. Além disso, descreve os principais fatores que influenciam

Leia mais

Características técnicas Baseado no ATMega da empresa AVR, fabricante de micro-controladores em plena ascensão e concorrente do PIC Pode usar ATMega

Características técnicas Baseado no ATMega da empresa AVR, fabricante de micro-controladores em plena ascensão e concorrente do PIC Pode usar ATMega ARDUINO O que é Arduino Arduino foi criado na Itália por Máximo Banzi com o objetivo de fomentar a computação física, cujo conceito é aumentar as formas de interação física entre nós e os computadores.

Leia mais

ULA- Unidade Lógica Aritmética. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h

ULA- Unidade Lógica Aritmética. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h ULA- Unidade Lógica Aritmética. Prof. Rômulo Calado Pantaleão Camara Carga Horária: 60h Sumário Unidade Lógica Aritmetrica Registradores Unidade Lógica Operações da ULA Unidade de Ponto Flutuante Representação

Leia mais

1.1. Organização de um Sistema Computacional

1.1. Organização de um Sistema Computacional 1. INTRODUÇÃO 1.1. Organização de um Sistema Computacional Desde a antiguidade, o homem vem desenvolvendo dispositivos elétricoeletrônicos (hardware) que funciona com base em instruções e que são capazes

Leia mais

As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem:

As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem: 1 As notas de aula que se seguem são uma compilação dos textos relacionados na bibliografia e não têm a intenção de substituir o livro-texto, nem qualquer outra bibliografia. Introdução O Cálculo Numérico

Leia mais

11/3/2009. Software. Sistemas de Informação. Software. Software. A Construção de um programa de computador. A Construção de um programa de computador

11/3/2009. Software. Sistemas de Informação. Software. Software. A Construção de um programa de computador. A Construção de um programa de computador Sistemas de Informação Prof. Anderson D. Moura Um programa de computador é composto por uma seqüência de instruções, que é interpretada e executada por um processador ou por uma máquina virtual. Em um

Leia mais

Rodrigo Baleeiro Silva Engenheiro de Controle e Automação. Introdução à Engenharia de Controle e Automação

Rodrigo Baleeiro Silva Engenheiro de Controle e Automação. Introdução à Engenharia de Controle e Automação Rodrigo Baleeiro Silva Engenheiro de Controle e Automação (do latim Automatus, que significa mover-se por si) ; Uso de máquinas para controlar e executar suas tarefas quase sem interferência humana, empregando

Leia mais

IMPLEMENTAÇÃO DE PROCESSADOR DIGITAL BASEADO EM LÓGICA FUZZY USANDO UM FPGA

IMPLEMENTAÇÃO DE PROCESSADOR DIGITAL BASEADO EM LÓGICA FUZZY USANDO UM FPGA IMPLEMENTAÇÃO DE PROCESSADOR DIGITAL BASEADO EM LÓGICA FUZZY USANDO UM FPGA Leonardo Mesquita Paloma Maria Silva Rocha Rizol mesquita@feg.unesp.br paloma@feg.unesp.br Departamento de Engenharia Elétrica,

Leia mais

1. CAPÍTULO COMPUTADORES

1. CAPÍTULO COMPUTADORES 1. CAPÍTULO COMPUTADORES 1.1. Computadores Denomina-se computador uma máquina capaz de executar variados tipos de tratamento automático de informações ou processamento de dados. Os primeiros eram capazes

Leia mais

Organização e Arquitetura de Computadores I. de Computadores

Organização e Arquitetura de Computadores I. de Computadores Universidade Federal de Campina Grande Unidade Acadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de Computadores I Organização Básica B de Computadores

Leia mais

Microcontroladores e Microprocessadores

Microcontroladores e Microprocessadores Microcontroladores e Microprocessadores Arquitetura Von Neumann e Arquitetura Harvard Prof. Samuel Cavalcante Conteúdo Componentes básicos de um computador Processamento Unidades de Entrada/Saída (I/O)

Leia mais

Redes neurais aplicadas na identificação de variedades de soja

Redes neurais aplicadas na identificação de variedades de soja Redes neurais aplicadas na identificação de variedades de soja Fábio R. R. Padilha Universidade Regional do Noroeste do Estado do Rio Grande do Sul - UNIJUÍ Rua São Francisco, 5 - Sede Acadêmica, 987-,

Leia mais

Universidade Federal de Goiás Escola de Engenharia Elétrica e de Computação Laboratório de Máquinas Especiais

Universidade Federal de Goiás Escola de Engenharia Elétrica e de Computação Laboratório de Máquinas Especiais Aspectos Relacionados ao Acionamento e Controle de Velocidade de um Motor Linear a Relutância Variável. MARIANO, Rodrigo Leandro; SANTOS, Euler Bueno. Universidade Federal de Goiás Escola de Engenharia

Leia mais

Universidade Tuiuti do Paraná UTP Faculdade de Ciências Exatas - FACET

Universidade Tuiuti do Paraná UTP Faculdade de Ciências Exatas - FACET Universidade Tuiuti do Paraná UTP Faculdade de Ciências Exatas - FACET Hardware de Computadores Questionário II 1. A principal diferença entre dois processadores, um deles equipado com memória cache o

Leia mais

AULA 1. Informática Básica. Gustavo Leitão. gustavo.leitao@ifrn.edu.br. Disciplina: Professor: Email:

AULA 1. Informática Básica. Gustavo Leitão. gustavo.leitao@ifrn.edu.br. Disciplina: Professor: Email: AULA 1 Disciplina: Informática Básica Professor: Gustavo Leitão Email: gustavo.leitao@ifrn.edu.br Estudo de caso Empresa do ramo de seguros Presidência RH Financeiro Vendas e Marketing TI CRM Riscos Introdução

Leia mais

Computador E/S, Memória, Barramento do sistema e CPU Onde a CPU Registradores, ULA, Interconexão interna da CPU e Unidade de controle.

Computador E/S, Memória, Barramento do sistema e CPU Onde a CPU Registradores, ULA, Interconexão interna da CPU e Unidade de controle. Introdução Os principais elementos de um sistema de computação são a unidade central de processamento (central processing unit CPU), a memória principal, o subsistema de E/S (entrada e saída) e os mecanismos

Leia mais

Cálculo Numérico. ECA / 4 créditos / 60 h Introdução, Erros e Matlab. Ricardo Antonello. www.antonello.com.br

Cálculo Numérico. ECA / 4 créditos / 60 h Introdução, Erros e Matlab. Ricardo Antonello. www.antonello.com.br Cálculo Numérico ECA / 4 créditos / 60 h Introdução, Erros e Matlab Ricardo Antonello www.antonello.com.br Conteúdo Erros na fase de modelagem Erros na fase de resolução Erros de arredondamento Erros de

Leia mais

Revista Hispeci & Lema On Line ano III n.3 nov. 2012 ISSN 1980-2536 unifafibe.com.br/hispecielemaonline Centro Universitário UNIFAFIBE Bebedouro-SP

Revista Hispeci & Lema On Line ano III n.3 nov. 2012 ISSN 1980-2536 unifafibe.com.br/hispecielemaonline Centro Universitário UNIFAFIBE Bebedouro-SP Reconhecimento de face utilizando banco de imagens monocromáticas e coloridas através dos métodos da análise do componente principal (PCA) e da Rede Neural Artificial (RNA) [Recognition to face using the

Leia mais

UNIVERSIDADE FEDERAL DE PERNAMBUCO

UNIVERSIDADE FEDERAL DE PERNAMBUCO UNIVERSIDADE FEDERAL DE PERNAMBUCO Mestrado em Ciência da Computação CENTRO DE INFORMÁTICA Análise comparativa entre os diferentes tipos De protocolos para transmissão de dados Grupo: Professora: Disciplina:

Leia mais

Redes Neurais. Profa. Flavia Cristina Bernardini

Redes Neurais. Profa. Flavia Cristina Bernardini Redes Neurais Profa. Flavia Cristina Bernardini Introdução Cérebro & Computador Modelos Cognitivos Diferentes Cérebro Computador Seqüência de Comandos Reconhecimento de Padrão Lento Rápido Rápido Lento

Leia mais

1 - Processamento de dados

1 - Processamento de dados Conceitos básicos sobre organização de computadores 2 1 - Processamento de dados O que é processamento? O que é dado? Dado é informação? Processamento é a manipulação das informações coletadas (dados).

Leia mais

Prof. Daniel Gondim danielgondimm@gmail.com. Informática

Prof. Daniel Gondim danielgondimm@gmail.com. Informática Prof. Daniel Gondim danielgondimm@gmail.com Informática Componentes de um SC Barramento Também conhecido como BUS É um conjunto de linhas de comunicação que permitem a interligação entre dispositivos,

Leia mais

O AMPLIFICADOR LOCK-IN

O AMPLIFICADOR LOCK-IN O AMPLIFICADOR LOCK-IN AUTORES: MARCELO PORTES DE ALBUQUERQUE LEONARDO CORREIA RESENDE JORGE LUÍS GONZALEZ RAFAEL ASTUTO AROUCHE NUNES MAURÍCIO BOCHNER FEVEREIRO 2008 SUMÁRIO RESUMO... 3 1. INTRODUÇÃO...

Leia mais

Curso Superior de Sistemas de Telecomunicações Unidade São José. Disciplina: Síntese de Sistemas de Telecomunicações 7º Fase

Curso Superior de Sistemas de Telecomunicações Unidade São José. Disciplina: Síntese de Sistemas de Telecomunicações 7º Fase Curso Superior de Sistemas de Telecomunicações Unidade São José Disciplina: Síntese de Sistemas de Telecomunicações 7º Fase Bases tecnológicas Dispositivos Lógicos Programáveis. Introdução à Tecnologia

Leia mais

Projeto de Redes Neurais e MATLAB

Projeto de Redes Neurais e MATLAB Projeto de Redes Neurais e MATLAB Centro de Informática Universidade Federal de Pernambuco Sistemas Inteligentes IF684 Arley Ristar arrr2@cin.ufpe.br Thiago Miotto tma@cin.ufpe.br Baseado na apresentação

Leia mais

Prof. Daniel Gondim danielgondimm@gmail.com. Informática

Prof. Daniel Gondim danielgondimm@gmail.com. Informática Prof. Daniel Gondim danielgondimm@gmail.com Informática Componentes de um SC Hardware X Software Memória do Computador Hardware X Software Toda interação dos usuários de computadores modernos é realizada

Leia mais

BARRAMENTO DO SISTEMA

BARRAMENTO DO SISTEMA BARRAMENTO DO SISTEMA Memória Principal Processador Barramento local Memória cachê/ ponte Barramento de sistema SCSI FireWire Dispositivo gráfico Controlador de vídeo Rede Local Barramento de alta velocidade

Leia mais

computador-cálculo numérico perfeita. As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem:

computador-cálculo numérico perfeita. As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem: 1 UNIVERSIDADE FEDERAL DE VIÇOSA Departamento de Matemática - CCE Cálculo Numérico - MAT 271 Prof.: Valéria Mattos da Rosa As notas de aula que se seguem são uma compilação dos textos relacionados na bibliografia

Leia mais

Simplifique a complexidade do sistema

Simplifique a complexidade do sistema 1 2 Simplifique a complexidade do sistema Com o novo controlador de alto desempenho CompactRIO Rodrigo Schneiater Engenheiro de Vendas National Instruments Leonardo Lemes Engenheiro de Sistemas National

Leia mais

5 Sistema Experimental

5 Sistema Experimental 5 Sistema Experimental Este capitulo apresenta o sistema experimental utilizado e é composto das seguintes seções: - 5.1 Robô ER1: Descreve o robô utilizado. É dividida nas seguintes subseções: - 5.1.1

Leia mais

Memórias Prof. Galvez Gonçalves

Memórias Prof. Galvez Gonçalves Arquitetura e Organização de Computadores 1 s Prof. Galvez Gonçalves Objetivo: Compreender os tipos de memória e como elas são acionadas nos sistemas computacionais modernos. INTRODUÇÃO Nas aulas anteriores

Leia mais

Figura 01 Visão Geral da Placa

Figura 01 Visão Geral da Placa 1. Hardware O kit de FPGA é formado por periféricos que possibilitam sua interação com sinais de áudio, display gráfico e alfanumérico, comunicação serial e USB, codec de áudio, chaves para simulação e

Leia mais

Inteligência Artificial. Redes Neurais Artificiais

Inteligência Artificial. Redes Neurais Artificiais Curso de Especialização em Sistemas Inteligentes Aplicados à Automação Inteligência Artificial Redes Neurais Artificiais Aulas Práticas no Matlab João Marques Salomão Rodrigo Varejão Andreão Matlab Objetivos:

Leia mais

Introdução a Informática. Prof.: Roberto Franciscatto

Introdução a Informática. Prof.: Roberto Franciscatto Introdução a Informática Prof.: Roberto Franciscatto 3.1 EXECUÇÃO DAS INSTRUÇÕES A UCP tem duas seções: Unidade de Controle Unidade Lógica e Aritmética Um programa se caracteriza por: uma série de instruções

Leia mais

O USO DE UM SENSOR DE LUZ LINEAR COMO RECURSO DIDÁTICO PARA DEMONSTRAR PRINCÍPIOS DE DIFRAÇÃO E ESPECTROSCOPIA

O USO DE UM SENSOR DE LUZ LINEAR COMO RECURSO DIDÁTICO PARA DEMONSTRAR PRINCÍPIOS DE DIFRAÇÃO E ESPECTROSCOPIA Quim. Nova, Vol. 38, No. 3, S1-S6, 2015 O USO DE UM SENSOR DE LUZ LINEAR COMO RECURSO DIDÁTICO PARA DEMONSTRAR PRINCÍPIOS DE DIFRAÇÃO E ESPECTROSCOPIA Fernando Arruda Mendes de Oliveira a,b, Eduardo Ribeiro

Leia mais

AUTOMAÇÃO E INSTRUMENTAÇÃO VIRTUAL. Sistema Integrado de Teste em Umbilicais

AUTOMAÇÃO E INSTRUMENTAÇÃO VIRTUAL. Sistema Integrado de Teste em Umbilicais BI AUTOMAÇÃO E INSTRUMENTAÇÃO VIRTUAL Sistema Integrado de Teste em Umbilicais Objetivos da Apresentação Demonstrar a Arquitetura de hardware e software da National Instruments utilizada na solução; Discutir

Leia mais

5 Mecanismo de seleção de componentes

5 Mecanismo de seleção de componentes Mecanismo de seleção de componentes 50 5 Mecanismo de seleção de componentes O Kaluana Original, apresentado em detalhes no capítulo 3 deste trabalho, é um middleware que facilita a construção de aplicações

Leia mais

4 Arquitetura básica de um analisador de elementos de redes

4 Arquitetura básica de um analisador de elementos de redes 4 Arquitetura básica de um analisador de elementos de redes Neste capítulo é apresentado o desenvolvimento de um dispositivo analisador de redes e de elementos de redes, utilizando tecnologia FPGA. Conforme

Leia mais

IW10. Rev.: 02. Especificações Técnicas

IW10. Rev.: 02. Especificações Técnicas IW10 Rev.: 02 Especificações Técnicas Sumário 1. INTRODUÇÃO... 1 2. COMPOSIÇÃO DO IW10... 2 2.1 Placa Principal... 2 2.2 Módulos de Sensores... 5 3. APLICAÇÕES... 6 3.1 Monitoramento Local... 7 3.2 Monitoramento

Leia mais

Algoritmos e Programação I

Algoritmos e Programação I Algoritmos e Programação I Introdução a Computação Prof. Fernando Maia da Mota mota.fernandomaia@gmail.com CPCX/UFMS Fernando Maia da Mota 1 Computadores são dispositivos que só sabem fazer um tipo de

Leia mais

Estrutura de um Computador. Linguagem de Programação Rone Ilídio UFSJ - CAP

Estrutura de um Computador. Linguagem de Programação Rone Ilídio UFSJ - CAP Estrutura de um Computador Linguagem de Programação Rone Ilídio UFSJ - CAP Hardware e Software HARDWARE: Objetos Físicos que compões o computador Circuitos Integrados, placas, cabos, memórias, dispositivos

Leia mais

UNISINOS - UNIVERSIDADE DO VALE DO RIO DOS SINOS

UNISINOS - UNIVERSIDADE DO VALE DO RIO DOS SINOS UNISINOS - UNIVERSIDADE DO VALE DO RIO DOS SINOS Curso: Informática Disciplina: Redes Neurais Prof. Fernando Osório E-mail: osorio@exatas.unisinos.br EXEMPLO DE QUESTÕES DE PROVAS ANTIGAS 1. Supondo que

Leia mais

A implementação e o estudo. de redes neurais artificiais em ferramentas de software comerciais,

A implementação e o estudo. de redes neurais artificiais em ferramentas de software comerciais, Artigos A implementação e o estudo de redes neurais artificiais em ferramentas de software comerciais Cleber Gustavo Dias Professor do Departamento de Ciências Exatas Uninove. São Paulo SP [Brasil] diascg@uninove.br

Leia mais

Roteamento e Comutação

Roteamento e Comutação Roteamento e Comutação Design de Rede Local Design Hierárquico Este design envolve a divisão da rede em camadas discretas. Cada camada fornece funções específicas que definem sua função dentro da rede

Leia mais

Hardware de Computadores

Hardware de Computadores Placa Mãe Hardware de Computadores Introdução Placa-mãe, também denominada mainboard ou motherboard, é uma placa de circuito impresso eletrônico. É considerado o elemento mais importante de um computador,

Leia mais

Controladores Lógicos Programáveis (CLPs)

Controladores Lógicos Programáveis (CLPs) Controladores Lógicos Programáveis (CLPs) A UU L AL A Uma empresa fabrica clipes em três tamanhos: grande, médio e pequeno. Seus clientes consomem os produtos dos três tamanhos, mas a empresa nunca conseguiu

Leia mais

TÍTULO: PROPOSTA DE METODOLOGIA BASEADA EM REDES NEURAIS ARTIFICIAIS MLP PARA A PROTEÇÃO DIFERENCIAL DE TRANSFORMADORES DE POTÊNCIA

TÍTULO: PROPOSTA DE METODOLOGIA BASEADA EM REDES NEURAIS ARTIFICIAIS MLP PARA A PROTEÇÃO DIFERENCIAL DE TRANSFORMADORES DE POTÊNCIA TÍTULO: PROPOSTA DE METODOLOGIA BASEADA EM REDES NEURAIS ARTIFICIAIS MLP PARA A PROTEÇÃO DIFERENCIAL DE TRANSFORMADORES DE POTÊNCIA CATEGORIA: CONCLUÍDO ÁREA: ENGENHARIAS E ARQUITETURA SUBÁREA: ENGENHARIAS

Leia mais

SIMULADOR DE SISTEMAS DE PROTEÇÃO, CONTROLE E SUPERVISÃO: UMA FERRAMENTA PARA CAPACITAÇÃO DA OPERAÇÃO E MANUTENÇÃO.

SIMULADOR DE SISTEMAS DE PROTEÇÃO, CONTROLE E SUPERVISÃO: UMA FERRAMENTA PARA CAPACITAÇÃO DA OPERAÇÃO E MANUTENÇÃO. SIMULADOR DE SISTEMAS DE PROTEÇÃO, CONTROLE E SUPERVISÃO: UMA FERRAMENTA PARA CAPACITAÇÃO DA OPERAÇÃO E MANUTENÇÃO. J. A. P. MOUTINHO Centrais Elétricas do Norte do Brasil S/A ELETRONORTE Brasil RESUMO

Leia mais

ESTUDO DE CASO: LeCS: Ensino a Distância

ESTUDO DE CASO: LeCS: Ensino a Distância ESTUDO DE CASO: LeCS: Ensino a Distância HERMOSILLA, Lígia Docente da Faculdade de Ciências Jurídicas e Gerenciais de Garça FAEG - Labienópolis - CEP 17400-000 Garça (SP) Brasil Telefone (14) 3407-8000

Leia mais

Fundamentos de Automação. Controladores

Fundamentos de Automação. Controladores Ministério da educação - MEC Secretaria de Educação Profissional e Técnica SETEC Instituto Federal de Educação Ciência e Tecnologia do Rio Grande do Sul Campus Rio Grande Fundamentos de Automação Controladores

Leia mais

Redes Neurais. A IA clássica segue o paradigma da computação simbólica

Redes Neurais. A IA clássica segue o paradigma da computação simbólica Abordagens não simbólicas A IA clássica segue o paradigma da computação simbólica Redes Neurais As redes neurais deram origem a chamada IA conexionista, pertencendo também a grande área da Inteligência

Leia mais

Tipos de Sistemas Distribuídos (Cluster e Grid)

Tipos de Sistemas Distribuídos (Cluster e Grid) Tipos de Sistemas Distribuídos (Cluster e Grid) Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência

Leia mais

Programa de Pós-Graduação em Engenharia de Sistemas e Automação Departamento de Engenharia - Universidade Federal de Lavras

Programa de Pós-Graduação em Engenharia de Sistemas e Automação Departamento de Engenharia - Universidade Federal de Lavras Programa de Pós-Graduação em Engenharia de Sistemas e Automação Histórico Início 2007 com foco em modelagem biológica (Engenharias IV Capes) e característica multidisciplinar com professores da área de

Leia mais

Introdução à Organização e Arquitetura de Computadores. Prof. Leonardo Barreto Campos 1

Introdução à Organização e Arquitetura de Computadores. Prof. Leonardo Barreto Campos 1 Introdução à Organização e Arquitetura de Computadores Prof. Leonardo Barreto Campos 1 Sumário Introdução; Evolução dos Computadores; Considerações da Arquitetura de von Neumann; Execução de uma instrução

Leia mais

Disciplina: Introdução à Informática Profª Érica Barcelos

Disciplina: Introdução à Informática Profª Érica Barcelos Disciplina: Introdução à Informática Profª Érica Barcelos CAPÍTULO 4 1. ARQUITETURA DO COMPUTADOR- HARDWARE Todos os componentes físicos constituídos de circuitos eletrônicos interligados são chamados

Leia mais

ANÁLISE DA QUALIDADE DA ENERGIA ELÉTRICA EM CONVERSORES DE FREQUENCIA

ANÁLISE DA QUALIDADE DA ENERGIA ELÉTRICA EM CONVERSORES DE FREQUENCIA ANÁLISE DA QUALIDADE DA ENERGIA ELÉTRICA EM CONVERSORES DE FREQUENCIA Nome dos autores: Halison Helder Falcão Lopes 1 ; Sergio Manuel Rivera Sanhueza 2 ; 1 Aluno do Curso de Engenharia Elétrica; Campus

Leia mais

Ferramenta computacional para implementação de redes neuronais optimização das capacidades gráficas

Ferramenta computacional para implementação de redes neuronais optimização das capacidades gráficas INEB- PSI Technical Report 2007-2 Ferramenta computacional para implementação de redes neuronais optimização das capacidades gráficas Alexandra Oliveira aao@fe.up.pt Professor Joaquim Marques de Sá December

Leia mais

Engenharia de Software Introdução. Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1

Engenharia de Software Introdução. Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1 Engenharia de Software Introdução Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1 Tópicos Apresentação da Disciplina A importância do Software Software Aplicações de Software Paradigmas

Leia mais

O que é RAID? Tipos de RAID:

O que é RAID? Tipos de RAID: O que é RAID? RAID é a sigla para Redundant Array of Independent Disks. É um conjunto de HD's que funcionam como se fosse um só, isso quer dizer que permite uma tolerância alta contra falhas, pois se um

Leia mais

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Aula 3 Virtualização de Sistemas 1. Conceito Virtualização pode ser definida

Leia mais

MOTAGEM E MANUTENÇÃO Hardware. Professor: Renato B. dos Santos

MOTAGEM E MANUTENÇÃO Hardware. Professor: Renato B. dos Santos MOTAGEM E MANUTENÇÃO Hardware Professor: Renato B. dos Santos 1 O computador é composto, basicamente, por duas partes:» Hardware» Parte física do computador» Elementos concretos» Ex.: memória, teclado,

Leia mais

PALAVRAS-CHAVE: Massas Nodulares, Classificação de Padrões, Redes Multi- Layer Perceptron.

PALAVRAS-CHAVE: Massas Nodulares, Classificação de Padrões, Redes Multi- Layer Perceptron. 1024 UMA ABORDAGEM BASEADA EM REDES PERCEPTRON MULTICAMADAS PARA A CLASSIFICAÇÃO DE MASSAS NODULARES EM IMAGENS MAMOGRÁFICAS Luan de Oliveira Moreira¹; Matheus Giovanni Pires² 1. Bolsista PROBIC, Graduando

Leia mais

Migrando das clássicas tecnologias Fieldbus

Migrando das clássicas tecnologias Fieldbus EtherCAT simplifica a arquitetura de controle Exemplo: Arquitetura de controle de uma prensa hidráulica, Schuler AG, Alemanha Arquitetura de controle com Fieldbus clássicos Desempenho dos Fieldbus clássicos

Leia mais

1 Introdução. 1.1. Motivação

1 Introdução. 1.1. Motivação 15 1 Introdução Esta dissertação dedica-se ao desenvolvimento de um analisador de erro para Redes Ópticas através da utilização de circuitos integrados programáveis de última geração utilizando taxas que

Leia mais

Proposta de Implementação em Hardware dedicado de Redes Neurais Competitivas com Técnicas de Circuitos Integrados Analógicos

Proposta de Implementação em Hardware dedicado de Redes Neurais Competitivas com Técnicas de Circuitos Integrados Analógicos Proposta de Implementação em Hardware dedicado de Redes Neurais ompetitivas com Técnicas de ircuitos Integrados Analógicos Autores Prof. Dr. Paulo M. Engel Universidade Federal do Rio Grande do Sul UFRGS/rasil

Leia mais

UNIVERSIDADE FEDERAL DE SANTA CATARINA

UNIVERSIDADE FEDERAL DE SANTA CATARINA UNIVERSIDADE FEDERAL DE SANTA CATARINA CIÊNCIAS DA COMPUTAÇÃO MÁQUINAS DE COMITÊ APLICADAS À FILTRAGEM DE SPAM Monografia submetida à UNIVERSIDADE FEDERAL DE SANTA CATARINA para a obtenção do grau de BACHAREL

Leia mais

Sistemas Computacionais

Sistemas Computacionais 2 Introdução Barramentos são, basicamente, um conjunto de sinais digitais com os quais o processador comunica-se com o seu exterior, ou seja, com a memória, chips da placa-mãe, periféricos, etc. Há vários

Leia mais

4. Controlador Lógico Programável

4. Controlador Lógico Programável 4. Controlador Lógico Programável INTRODUÇÃO O Controlador Lógico Programável, ou simplesmente PLC (Programmiable Logic Controller), pode ser definido como um dispositivo de estado sólido - um Computador

Leia mais

CISC RISC Introdução A CISC (em inglês: Complex Instruction Set Computing, Computador com um Conjunto Complexo de Instruções), usada em processadores Intel e AMD; suporta mais instruções no entanto, com

Leia mais

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ CENTRO DE CIÊNCIAS EXATAS E DE TECNOLOGIA CCET CURSO DE ENGENHARIA DE COMPUTAÇÃO Henrique Soares Hinke José Eduardo da Silva Rodrigues Matheus Augusto de Queiroz

Leia mais

Admistração de Redes de Computadores (ARC)

Admistração de Redes de Computadores (ARC) Admistração de Redes de Computadores (ARC) Instituto Federal de Educação, Ciência e Tecnologia de Santa Catarina - Campus São José Prof. Glauco Cardozo glauco.cardozo@ifsc.edu.br RAID é a sigla para Redundant

Leia mais

MEMÓRIA. 0 e 1 únicos elementos do sistema de numeração de base 2

MEMÓRIA. 0 e 1 únicos elementos do sistema de numeração de base 2 MEMÓRIA CONCEITO Bit- 0 1 Essência de um sistema chamado BIESTÁVEL Ex: Lâmpada 0 apagada 1 acesa 0 e 1 únicos elementos do sistema de numeração de base 2 A que se destina a memória: Armazenamento das instruções

Leia mais

AULA1 Introdução a Microprocessadores gerais

AULA1 Introdução a Microprocessadores gerais AULA1 Introdução a Microprocessadores gerais Disciplina: Aplicações Avançadas de Microprocessadores (AAM) Prof. Eduardo Henrique Couto ehcouto@hotmail.com 2014/1 Apresentação do Professor: Cronograma:

Leia mais