Implementando sistemas DSP em FPGA

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

Download "Implementando sistemas DSP em FPGA"

Transcrição

1 Implementando sistemas DSP em FPGA Neste artigo são apresentadas as bases teóricas e práticas para implementar sistemas de processamento digital de sinais (DSP) em dispositivos lógicos programáveis FPGA (Field-Programable-Gate-Array), apresentando as principais vantagens deste tipo de implementação sobre o uso de processadores DSP convencionais. São apresentados ainda os principais recursos e sistemas de desenvolvimento e simulação disponíveis para o desenvolvimento destes sistemas para dispositivos da Altera. Introdução Os modernos algoritmos necessários para a implementação dos novos padrões de sistemas de comunicação de dados com e sem fios, compressão de som e imagem, sistemas criptográficos e sistemas de transmissão de imagens com resoluções cada vez maiores, exigem capacidade de processamento DSP cada vez maiores. Os processadores DSP atuais apresentam desempenho cada vez maior [1], mas ainda assim a complexidade crescente necessária a implementação destes algoritmos exige um número cada vez maior de processadores DSPs convencionais para a implementação destes novos algoritmos, aumentando muito o custo destas soluções. Alguns exemplos de sistemas que exigem capacidade de processamento muito superior à capacidade dos processadores DSP atuais de alto desempenho são sistemas de compressão de imagem em tempo real para imagens de alta resolução, tais como compressão nos padrões H.264 [2] (AVC) para as resoluções mais altas (1920x1080), sistemas de modulação e demodulação OFDM [3] para comunicação sem fio e transmissão de sinais de TV digital em banda larga e sistemas criptográficos necessários à implementação de VPNs em sistemas ethernet de banda larga (1Gbps e 10 Gbps). A principal alternativa disponível hoje para implementar sistemas de DSP de alto desempenho, como os citados acima, é a utilização de FPGAs para implementá-los. A principal característica desta alternativa é a possibilidade de executar sistemas com capacidade de processamento e ordens de grandeza superior se comparadas com a implementação destes sitemas utilizando processadores DSPs convencionais, em um único dispositivo e a um custo muito menor. Neste artigo serão apresentados os conceitos básicos de desenvolvimento de sistemas de processamento DSP em FPGAs, as ferramentas de desenvolvimento e simulação disponíveis e será apresentado um exemplo de implementação de um sistema simples em FPGA. Arquitetura das FPGAs Altera Antes de apresentar os conceitos e as ferramentas envolvidas na implementação de sistemas de processamento DSP em FPGAs, será feita uma breve revisão dos recursos disponívies em FPGAs da Altera voltadas para implementação de sistemas DSP, apresentando para cada recurso quais as principais aplicações em tais sistemas. A família de componentes com maior capacidade de processamento DSP da Altera é a família Stratix II [4], família de FPGA implementada em tecnologia de 90 nm, com interconexão em cobre, freqüência interna de operação máxima de 500 MHz para a lógica e de 1 GHz para interfaces seriais rápidas. Os dispositivos que compõem esta família são apresentados na Tabela 1 a seguir. Tab. 1 : Dispositivos Da família Stratix II Na Fig. 1 pode-se ver o diagrama de uma FPGA da família Stratix II, mostrando a localização dos principais recursos do dispositivo. Fig. 1 : Diagrama de um dispositivo Stratix II Os pricipais recursos disponíveis nas FPGAs da família Stratix II são:

2 ALMs : Adaptative Logic Modules são os módulos individuais que implementam os circuitos lógicos combinatórios e registrados de um circuito digital. É composto por uma tabela adaptativa com duas saídas (ALUT Adaptative Look Up Table), que implementa lógica combinatória, podendo implementar funções lógicas de 1 até 7 entradas, um somador por hardware e dois flip-flops,conectados à saída da ALUT ou à saída dos somadores. O diagrama de uma ALM pode ser visto na Fig. 2 abaixo. Fig. 2 : Diagrama de um ALM As ALMs são capazes de implementar circuitos lógicos e registrados de projetos de processamento DSP, além de somadores e, de forma menos eficiente, multiplicadores. É nas ALMs também que são implementadas as máquinas de estados necessárias à implementação de circuitos seqüenciais complexos, tais como controle de loops, sistemas de tomada de decisão e outros circuitos similares. MACs : As MACs (Multiply-Add-Accumulate) são sistemas complexos, capazes de executar operações de multiplicação, soma, deslocamento e acumular o resultado em pipeline, com a execução em média de uma operação por ciclo de relógio, em freqüências de até 370 MHz. Cada MAC pode ser usada como uma única MAC de 36x36 bits de entrada e 72 bits de saída, quatro MACs de 18x18 e 36 bits de saída ou como 8 MACs de 9x9 e com 18 bits de saída. Podem ainda ser configuradas para não executar a soma e o deslocamento, operando assim apenas como multiplicadores. Na Fig. 3 pode ser visto o diagrama de uma MAC. As MACs são os elementos centrais de processamento DSP, sendo cada MAC equivalente a uma unidade de processamento de um processador DSP. Na Família Stratix II, o menor dispositivo tem 16 MACs e o maior 96. Memória : A família Stratix II tem um sistema interno de memória baseado no conceito TriMatrix, com módulos de memória de três tamanhos diferentes : M512, com 512 bits, M4K, com 4K bits e M-RAM com 512 Kbits de memória. Os blocos de memória podem ser utilizados para implementar memória do tipo Simple-Port, Simple Dual-Port e True Dual-port, sendo que cada bloco de memória pode ser configurado para acessos de 1 a 36 bits, com sinais de byte enable ao se configurar o bloco de memória com acesso de 16 bits ou mais. Quando configurados com tamanho de palavra de 8 bits ou mais, pode-se configurar o bloco de memória para incluir um bit extra por byte, usado como paridade para o referido byte. O número de blocos de memória de cada densidade é inversamente proporcional à capacidade do bloco, sendo o número de blocos M512 grande, menor de M4K e poucos blocos M- RAM disponíveis. A capacidade de transferência de dados para cada tipo de bloco é proporcional ao número de blocos de memória disponíveis, conforme pode ser visto na Fig. 4. Fig. 4 : Densidade e capacidade de trasnferência dos blocos de RAM Na Fig. 5 são mostrados os recursos disponíveis em cada tipo de bloco de memória. Fig. 5 : Recursos dos blocos de memória Fig. 3 : Diagrama de uma MAC

3 Pinos de Entrada e Saída : Os dispositivos da família Stratix II têm pinos de entrada e saída capazes de serem configurados para fazer interface com circuitos externos em uma série de padrões elétricos diferentes, tais como LVTTL, LVCMOS, PCI, PCI-X, LVDS, LVPECL, HyperTransport, SSTL e HSTL classe I e II. O circuito de entrada e saída permite ainda que se implementem circuitos de interface com memória rápida, do tipo SDRAM (Syncronous DRAM), DDR (Double Data Rate) e DDR2 (Double Data Rate de segunda geração), QDR (Quad Data Rate) e QDR2. além de interface com processadores normais e DSP externos. Relógios globais e Locais : Um dos grandes desafios no projeto de dispositivos do tipo Gate Array é o controle do atraso dos sinais de relógio para que todos os flip-flops do circuito sejam sincronizados corretamente. Nas FPGAs da família Stratix II este desafio foi resolvido com a implementação em hardware de 16 sinais de relógio globais, que tem o tempo de propagação ajustado para que chegue com diferença de tempo de atraso mínimo a todos os flip-flops. Além dos 16 sinais de relógio global, há ainda 32 sinais de relógio chamados sinais de relógio regional, que são distribuídos 8 por cada quadrante do dispositivo e tem as mesmas características de tempo de propagação que os sinais globais. Na Fig. 8 pode-se ver a distribuição dos sinais de relógio globais e regionais. Fig. 6 : Diagrama de um pino de ES Alguns dos pinos de entrada e saída podem ainda ser utilizados para implementar interfaces seriais rápidas, com taxa de transferência de até 1 Gbps por pino. Nos dispositivos Stratix II, a interface SerDes rápida é implementada em hardware, no próprio pino de entrada e saída, permitindo a transferência de dados à taxa máxima de 1 Gbps. O sistema tem ainda implementado em hardware um circuito de alinhamento de fase automático, conforme pode ser visto na Fig. 7. Fig. 8 : Diagrama de distribuição de relógios Globais e Locais em uma FPGA Stratix II Os sinais de relógio globais e regionais são utilizados na implementação de qualquer circuito registrado síncrono, garantindo o funcionamento correto do mesmo independente do número de flip-flops presente no circuito e da posição dos mesmos no dispositivo. Fig. 7 : Interface Serial rápida Os pinos de entrada e saída são utilizados para implementar a interface com dispositivos externos à FPGA, além de implementarem sistemas de interface com dispositivos de memória externa do tipo SDRAM, DDR, DDR2, QDR, QDR2, RAM e FLASH, entre outros. Permitem ainda implementar interface com dispositivos como conversores A/D e D/A, codecs de áudio e vídeo, PLLs : Circuitos complexos de processamento DSP em geral necessitam de mais de uma freqüência de relógio para operar. Para gerar as diversas freqüências de relógio necessárias à operação de diferentes módulos dos circuitos, os dispositivos Stratix II têm seis ou doze PLLs disponíveis, sendo 2 ou 4 PLLs do tipo Enhanced PLL e 4 ou 8 do tipo Fast PLL. As principais diferenças entre os dois tipos de PLLs são os recursos de cada PLL e quais parâmetros podem ser configurados durante a operação em cada um

4 deles. Os PLLs do tipo Enhanced têm como recursos extras a possibilidade de chaveamento automático do sinal de referência, a possibilidade de implementar Spread Spectrum (+/- 500 KHz em torno da freqüência central de operação) e duas saídas a mais que os PLLs do tipo Fast. Nas Fig. 9 e 10 são apresentados os diagramas de blocos dos PLLs do tipo Enhanced e Fast, respectivamente. próprio ambiente do MATLAB, e um ambiente para desenvolvimento de sistemas, um ambiente gráfico, onde podem ser instanciados blocos desenvolvidos em.m, chamado SIMULINK [6]. O uso integrado destas duas ferramentas permite o desenvolvimento de algoritmos e sistemas de forma muito eficiente, permitindo desenvolver partes do algoritmo em.m, simular estas partes individualmente e depois integrá-las no sistema completo, simular o sistema e verificar o resultado final. O sistema de desenvolvimento permite ainda, uma vez concluído o desenvolvimento e a simulação do sistema, gerar programas em C ou código de descrição de hardware com a implementação do sistema completo utilizando ferramentas de implementação. Na Fig. 11 pode-se ver o fluxo de projeto completo utlizando o MATLAB e o SIMULINK. Fig. 9 : Diagrama de blocos de um PLL do tipo Enhanced Fig. 10 : Diagrama de blocos de um PLL do tipo Fast O desenvolvimento de algoritmos DSP O processo de desenvolvimento de um novo algoritmo DSP é feito, normalmente, com o auxílio de ferramentas de desenvolvimento voltadas para aplicações matemáticas, utilizando sistemas de desenvolvimento tais como MATLAB, da Mathworks, Matematica, MatCad e afins. No processo de desenvolvimento, a função destes softwares é a de prover um ambiente de simulação para desenvolver o algoritmo utilizando uma linguagem de desenvolvimento, simular o algoritmo e comparar o resultado da simulação com os valores esperados validando assim o algoritmo desenvolvido. O sistema de desenvolvimento mais utilizado hoje é o MATLAB [5], da Mathworks, empresa fundada em O MATLAB oferece um ambiente para desenvimento de algoritmos em dois níveis, o desenvolvimento do algoritmo utilizando uma linguagem proprietária para descrição de algoritmos, semelhante ao C, com arquivos.m no Fig. 11 : Desenvolvimento de sistemas no MATLAB/SIMULINK Outros recursos oferecidos pelo MATLAB são interface com sistemas de aquisição de dados e geração de sinais, interface com aplicativos para geração automática de relatórios e visualização gráfica dos resultados de simulação e conjuntos de funções prontas para aplicações específicas chamadas Toolboxes. Para o SIMULINK, dispõe ainda de conjuntos de funções pré-definidas, tais como geradores de funções, sistemas de verificação de resultados e diversas outras funções específicas, tais como funções de controle, de processamento DSP voltadas para aplicações específicas como redes neurais, organizadas em blocksets. Na Fig. 12 pode-se ver a organização funcional do MATLAB e do SIMULINK.

5 Implementando algoritmos DSP em FPGAs Fig. 12 : Organização funcional do sistema O MATLAB oferece um ambiente de desenvolvimento voltado para desenvimento de arquivos em formato.m, arquivos escritos em linguagem de descrição de funções e operações proprietária da Mathworks. Na Fig. 13 pode ser vista uma janela do MALAB com os diversos elementos presentes na interface. A implementação de algoritmos DSP em FPGAs é normalmente feita em duas etapas: na primeira etapa o algoritmo é desenvolvido e simulado em um ambiente de desenvolvimento como o MATLAB. Uma vez concluída a etapa de desenvolvimento, e estando a simulação do algoritmo concluída e de acordo com as especificações iniciais do algoritmo, inicia-se a segunda etapa que é a conversão do algoritmo para uma linguagem de descrição de hardware e a implementação do mesmo em hardware. Como todo desenvolvimento para FPGA, esta etapa é desenvolvida em diversas fases, conforme mostra a Fig. 14 a seguir. Fig. 12 : Janela do MATLAB O SIMULINK é o ambiente gráfico de desenvolvimento de sistemas que roda utilizando os recursos do MATLAB. Do MATLAB ele pode ser iniciado, como pode ser visto no detalhe em vermelho da Fig. 12. A janela do SIMULINK com um modelo implementado pode ser vista na Fig. 13 a seguir, mostrando ainda uma janela gráfica de resultados, uma janela com a conversão do sistema para um programa em C e uma janela do MATLAB utilizada para enviar comandos para o sistema. Fig. 13 : Janelas do SIMULINK Fig. 14 : Fases do desenvolvimento de um projeto em FPGA A especificação do projeto é a implementação do algoritmo desenvolvida no MATLAB e no SIMULINK. A partir desta especificação se cria um código HDL (Linguagem de Descrição de Hardware) em RTL (Regiter Transfer Level), simula-se o código RTL gerado, e a partir do momento que a simulação do código RTL está coerente com o resultado da simulação obtida no MATLAB/SIMULINK, compila-se o código RTL, faz-se a análise de tempos do projeto, simula-se o resultado da compilação já com os atrasos internos do componente incluídos nesta simulação, gravase o componente e testa-se o sistema completo. Este é o fluxo de projeto natural para implementação de algoritmos e funções DSP em FPGA. O que será apresentado a seguir é o DSP Builder, ferramenta que permite integrar os dois fluxos de desenvolvimento em uma única ferramenta.

6 O DSP Builder O DSP Builder é uma ferramenta de desenvolvimento que integra em um único ambiente os fluxos de projeto do MATLAB e de FPGA, permitindo de forma simples e direta implementar um algoritmo DSP utilizando recusos do DSP Builder (Blocos para o SIMULINK) no SIMULINK, simular o sistema criado e, uma vez que a fase do desenvolvimento tenha sido concluída, converter o algoritmo para código RTL em HDL, simular o código RTL utilizando os mesmos vetores de teste utilizados no SIMULINK e finalmente compilar o projeto, carregá-lo em hardware e testar em hardware o sistema completo. Na Fig. 15 pode ser visto o fluxo de projeto completo utilizando o DSP Builder. Fig. 15 : Bibliotecas disponíveis no DSP Builder As principais bibliotecas disponíveis são: Fig. 15 : Fluxo de projeto com o DSP Builder Após a instalação, o DSP Builder acrescenta uma nova biblioteca de blocksets ao SIMULINK, chamada DSP Builder, onde são incluídos modelos.m e.mdl (Linguagem de descrição dos blocos do SIMULINK) ao sistema. Estes blocos contêm a descrição das funções básicas disponíveis em.mdl e.m, além de terem associadas a respectiva descrição em HDL da funcionalidade equivalente a ser implementada em hardware. Além dos blocos que implementam funções básicas, o DSP Builder permite a inclusão de blocos que permitem converter o projeto para HDL, compilar o código HDL gerado, configurar o componente e simular o código RTL gerado utilizando o ModelSim, ferramenta de simulação da Mentor Graphics. Inclui ainda blocos que permitem fazer a interface direta com as placas de desenvolvimento DSP disponíveis na Altera, tais como utilizar pinos de entrada específicos, utilizar de forma direta os conversores A/D e D/A disponíveis na placa, acessar os LEDs e chaves da placa, entre outros recursos. Na Fig. 16 é mostrada a relação das bibliotecas de blocksets disponíveis no SIMULINK após a instalação do DSP Builder. Será a seguir feita uma breve descrição das funções disponíveis em cada biblioteca do DSP Builder. AltLab Biblioteca de sistemas específicos de dispositivos Altera, que permitem controlar a compilação, simulação e verificação dos dispositivos, criar novos modelos, importar modelos VHDL para formato.m/.mdl e criar subsistemas novos. Arithmetic Biblioteca com as funções aritméticas básicas para valores inteiros. Boards : Biblioteca com as especificações das placas existentes para as quais há suporte direto no DSP Builder e os recursos disponíveis em cada placa. Complex Type Nesta biblioteca estão presentes as funções para tratamento de números complexos, incluindo a formação de um valor complexo a partir de dois valores inteiros, o desmembramento de um número complexo em dois valores inteiros, um com a parte real e outro com a imaginária, e as operações aritméticas entre valores complexos. Gate & Control : Biblioteca com blocos lógicos básicos (AND, OR, XOR, FF, etc...) e módulos de controle digitais simples, tais como MUX, decodificadores e geradores de padrão. IO & Bus : Incluem os módulos de interface com entrada e saída (Sinais de entrada, saída e entrada/saída do dispositivo) e os sistemas de conversão e manipulação de barramentos de dados.

7 Rate Change : Biblioteca com os módulos que permitem alterar a freqüência de operação de uma determinada parte do projeto. Inclui PLLs, geradores de taxa de amostragem e conjuntos de flip-flops operando em freqüências diferentes. SOPC Builder Links: Uma das funcionalidades disponíveis no DSP Builder é a geração de módulos para o NIOS II, processador do tipo SoftCore da Altera. Esta biblioteca permite incluir os sinais de interface necessários à criação de um periférico ou de uma instrução proprietária para o NIOS II. State Machine Functions : Permite implementar máquinas de estado, permitindo definir os sinais de entrada, saída e os estados, bem como as condições de transição de estado. Storage : Inclui os elementos de armazenamento disponíveis, como blocos de RAM, ROM, FIFO, Shift Registers, LUT, LFSR, entre outros. Megacore Functions : Muitas vezes é necessário o uso de funções complexas no projeto para as quais já existem implementações prontas, tais como filtros FIR, NCOs (Numerically Controlled Oscilator), FFTs, IFFTs, entre outros. Nesta categoria de funções estão incluídas as funções complexas de DSP desenvolvidas pela Altera e que podem ser inclusas no projeto de forma imediata, bastando configurar os parâmetros da função e incluí-la no projeto como um novo bloco. Para avaliar o DSP Builder, inicialmente precisase de um PC rodando Windows versões 2000 ou XP, o Quartus II e o Matlab instalados e habilitados rodando na máquina. Para instalar o Quartus II, baixe-o gratuitamente do site da Altera [7] e instale a licença para o Quartus pedida também no site da Altera [8]. Uma versão de avaliação do Matlab pode ser obtido gratuitamente no site da Matworks [9]. Esta versão de avaliação do Matlab funcionará por 30 dias após ser baixada e instalada. Uma versão gratuita do DSP Builder pode ser baixada gratuitamente do site da Altera [10]. O DSP Builder deve ser o último pacote de software a ser instalado. Após completar a instalação do DSP Builder, um passo extra deve ser feito para completar sua instalação no Matlab. As instruções deste passo final se encontram em uma janela aberta pelo programa de instalação do DSP Builder ao final da execução do mesmo. A versão gratuita do DSP Builder é completamente funcional para o Matlab, permitindo a construção de modelos e a simulação dos mesmos, mas não gera código VHDL que possa ser implementado em FPGAs como a versão completa. Após baixar e instalar todos os pacotes de software acima em um PC rodando Windows 2000 ou XP e com o Matlab instalado e habilitado, pode-se iniciar a construção de modelos e a simulação dos mesmos. Vantagens e limitações do uso de FPGAs na implementação de algoritmos DSP Na implementação de um algoritmo DSP utilizando um processador DSP o algoritmo é implementado inicialmente em uma linguagem de programação, geralmente C/C++, compilado para o processador DSP a ser usado e executado. O processador DSP atualmente com maior poder de processamento tem implementadas internamente seis MACs que operam em paralelo sobre conjuntos de dados, permitindo a execução simultânea de seis operações de processamento DSP em um ciclo de relógio. Um exemplo de processadores DSP com esta característica são os processadores da linha TMS320C6xx, da Texas Instruments. A maioria dos processadores DSP disponíveis no mercado, entretanto, tem apenas uma MAC, e apenas uma operação DSP pode ser implementada em um determinado ciclo de relógio. Além desta limitação, antes de executar uma operação sobre um conjunto de dados, o dado ou conjunto de dados deve inicialmente ser carregado em um registrador ou em uma memória interna do DSP antes de ser processado, o que acarreta em um tempo maior de processamento. As principais vantagens da implementação em FPGA sobre processadores DSP de algoritmos DSP são: 1) Uso paralelo de recursos. Em implementações em FPGA de algoritmos DSP, pode-se implementar o número de MACs desejado para implementar o algoritmo, sendo que cada MAC ou conjunto de MACs pode ser usado para implementar partes do algoritmo seqüencialmente ou em paralelo. O maior dispositivo Altera disponível hoje, o EP2S180, com 180K LEs, disponibiliza 96 MACs de 36 bits, e estas MACs podem ser utilizadas como recurso de processamento. 2) Implementação de algoritmos em pipeline. É a capacidade de se implementar uma série de operações necessárias a implementação do algoritmo de forma seqüencial, sendo cada MAC ou conjunto de MACs responsável pela

8 implementação de uma parte do algoritmo e o algoritmo sendo implementado de forma seqüencial, onde cada parte da seqüência do algoritmo é realizada em uma parte do dispositivo e o processamento completo sendo realizado seqüencialmente. Neste tipo de arquitetura, cada etapa do algoritmo é executada ao mesmo tempo que as etapas anteriores são executadas para outros conjuntos de dados, de modo que em um determinado instante todas as estapas do algoritmo estão sendo executadas ao mesmo tempo sobre conjuntos de dados diferentes. 3) Maior capacidade de processamento paralelo pelo uso conjunto de MACs e blocos de memória. Além da vantagem de possuir maior numero de MACs que um processador DSP, as FPGAs ainda contam com memória interna que pode ser utilizada em conjunto com as MACs permitindo assim a criação de módulos de processamento compostos por memória, lógica de controle e blocos de memória que armazenam blocos de dados de entrada e de saída, permitindo reduzir em muito o tempo gasto por um processador DSP normal para ler os dados a serem processados e escrever os resultados na memória. Para se ter uma idéia do ganho de performance que pode ser obtido com este recurso, imaginemos a implementação de um filtro FIR. Em um filtro FIR, cada dado de saída é o resultado da somatória da seqüência de dados de entrada multiplicada por um coeficiente para cada dado de entrada. Para um filtro fir de 16 TAPs, a equação da saída é: D out = D i *C i para i=0 até 15. Em um DSP normal, para cada interação são gastos pelo menos 3 ciclos de relógio, sendo um para ler um dado da memória e armazenar o dado em um registrador, outro para ler o coeficiente da memória e armazenar em outro registrador e finalmente um terceiro ciclo de relógio para calcular o resultado intermediário e armazenar na MAC o resultado. Em uma FPGA toda operação seria realizada em um único ciclo de relógio, sendo o dado lido de um registrador de deslocamento, o coeficiente de uma memória e o resultado armazenado na MAC em um único ciclo de relógio. Se forem usadas 16 MACs para criar uma implementação paralela do filtro, o cálculo de uma nova saída do filtro gastaria apenas um ciclo de relógio na implementação em FPGA contra 48 ciclos de relógio gastos para calcular o mesmo resultado em um processador DSP. 4) Uso de recursos da FPGA para implementar novas MACs. Além das MACs disponíveis na FPGAs, os elementos lógicos e blocos de memória da FPGA podem ainda ser utilizados para criar novas MACs, com desempenho um pouco inferior as MACs implementadas em hardware já disponíveis na FPGA mas ainda assim operando em freqüências acima de 200 MHz e sendo capaz de aumentar a capacidade de processamento DSP da FPGA. 5) Uso da lógica da FPGA para criar sistemas de controle de operação e do fluxo de dados para permitir a implementação dos algoritmos em paralelo e/ou em pipeline. A implementação de algoritmos DSP em FPGAs tem, também, algumas limitações se comparadas à implementação do mesmo algoritmo em DSP, e as principais são: 1) O tempo de desenvolvimento para a implementação de algoritmos DSP em FPGA é, em geral, muito maior que a implementação do mesmo algoritmo DSP em processamedores DSP. Entretanto, o uso do DSP Builder pode reduzir significativamente este tempo de desenvolvimento. 2) A complexidade da implementação de um algoritmo em FPGA é bem maior que a implementação do mesmo algoritmo em processadores DSP, por envolver além do fluxo de projeto normal do algoritmo, o fluxo de projeto de hardware em FPGA. 3) Existem disponíveis, de forma gratuita, inclusive, muito mais projetos e programas referência de implementação de algoritmos para DSP que modelos HDL de implementação destes algoritmos para FPGA. 4) Para processamento de algoritmos que envolvam baixa capacidade de processamento, como para processamento de som para poucos canais e de imagem de baixa resolução, a solução utilizando processadores DSP tem um custo menor que a implementação do mesmo algoritmo em FPGA. Criando e Simulando modelos com o DSP Builder Com todo o sistema de desenvolvimento instalado, pode-se finalmente iniciar a construção e simulação de modelos utilizando do DSP Builder. A construção e simulação de um modelo no SIMULINK utilizando os blocos do DSP Builder é muito simples e direta. Inicialmente abre-se um novo modelo.mdl no SIMULINK, salva-se o

9 modelo no diretório desejado e com o nome desejado. A seguir arrastam-se os blocos desejados para o novo modelo em construção. A interligação dos blocos entre si para montar o modelo desejado é feita utilizando-se os recursos do SIMULINK. Uma vez o modelo tenha sido construído, a simulação é feita com o uso do botão de simulação da barra de ferramentas do SIMULINK. Alguns cuidados devem ser tomados ao se construir um modelo com o DSP Builder para permitir a implementação em FPGA do mesmo. Os principais cuidados são: Somente se deve utilizar no modelo em construção que será convertido para VHDL a ser utilizado na implementação em FPGA posteriormente blocos disponíveis no DSP Builder. Se forem utilizados blocos de outros Toolbox que não o DSP Builder, estes blocos não serão implementados em VHDL. Podem ser utilizados os Sinks e Sources do Toolbox Simulink sem problemas, desde que os blocos utilizados seja utilizados apenas para gerar os sinais de entrada e para monitorar os resutados intermediários e finais do modelo em construção. Para analisar o que ocorre efetivamente no modelo implementado em FPGA devem ser utilizados os recursos do SignalTap II disponíveis, que permitem monitorar sinais na implementação em FPGA do modelo. No SIMULINK, a criação de submódulos a partir de uma parte do circuito é feita de forma automática, e é muito simples de ser usada, mas a criação de submódulos para o DSP Builder não pode ser feita utilizando esta ferramenta. A forma correta de implementar submódulos para o DSP Builder é utilizando o bloco HDL SubSystem disponível na bliblioteca AltLab do DSP Builder. Utilizando esta opção pode-se criar um ou mais submódulos que serão corretamente inseridos no sistema final e convertidos para VHDL. Para se trabalhar com uma placa específica, além do bloco SignalCompiler, deve-se inserir no modelo o símbolo da placa a ser usada. Por exemplo, para se desenvolver um projeto para a placa DSP Development Board Cyclone II Edition, deve-se inserir o bloco Altera Cyclone II EP2C35 DSP Development Board disponível na biblioteca Altera Cyclone II EP2C35 DSP Development Board da biblioteca Boards do DSP Builder. Outro cuidado a ser tomado para que os recursos sejam utilizados corretamente e as especificações de pinagem sejam feitas de forma correta é que ao se executar o SignalCompiler, seja selecionado como dispositivo a ser usado (Opção Device da janela principal) a opção Development Board, associando assim o projeto a uma placa de desenvolvimento. Ao se selecionar uma placa de desenvolvimento específica, só se pode usar PLLs em um modelo dentro de submódulos. A melhor forma de se aprender a utilizar uma nova ferramenta é através da implementação de um projeto exemplo, onde todos os passos necessários à implementação do sistema são mostrados. Como exemplos completos da implementação de sistemas no DSP Builder, estão disponíveis os seguintes recursos: 1) No próprio DSP Builder há um projeto exemplo, um Tutorial de um sistema de modulação AM (Só o modulador). Este tutorial pode ser acessado no Help do SIMULINK, selecionando a opção Help on Selected Book. Selecionar a orelha Demos e nesta orelha selecionar DSP Builder. Em DSP Builder, selecionar DSP Builder Tutorial e seguir passo a passo as instruções ali contidas. 2) Baixar do site da Altera o exemplo NCO [11], que vem com instrução detalhada de como montar o sistema. Para tal, baixar o arquivo NCO.ZIP do site da PI Componentes e o documento de instruções InstrucoesNCO.PDF e instalar em C:/NCO. Este exemplo implementa um oscilador NCO (Numerically Controlled Oscilator) baseado em uma ROM. Este modelo pode ser simulado e implementado em FPGA. 3) Baixar do site da PI Componentes o arquivo MODULADORAM.ZIP [12] e instalar em C:\MODULADORAM. A seguir, simular o modelo. Este modelo implementa um transmissor AM completo, composto por dois moduladores NCO e um modulador AM. Este modelo foi implementado para uma placa DSP Development Board Cyclone II Edition. Conclusão

10 Para implementar sistemas com alta capacidade de processamento DSP necessários à implementação dos novos algoritmos existentes que exigem alto desempenho, as FPGAs são uma das melhores opções disponíveis hoje. A solução da Altera para implementação de algoritmos DSP em FPGA inclui novas famílias de FPGA com uma série de recursos voltados para implementação destes algoritmos e um sistema de desenvolvimento que integra os ciclos de projeto do algoritmo na ferramenta de projeto de alto nível e simulação, o MATLAB/SIMULINK e de desenvolvimento de FPGA, o Quartus II, o DSP Builder. Neste artigo foram apresentados os recursos existentes nas novas FPGAs da família Stratix II para implementação de algoritmos DSP, foram abordadas as pricipais etapas de desenvolvimento do ciclo de projeto de algoritmos DSP e de projetos em FPGA e como o DSP Builder é capaz de integrar em um único ambiente as duas etapas do ciclo de desenvolvimento. Bibliografia [1] TMS320C6727, Floating-Point Digital Signal Processor Disponível em < [2] H.264 / MPEG-4 Part 10 Tutorials Disponível em < [3] Orthogonal Frequency Division Multiplexing (OFDM) Disponível em < [4] Stratix II Devices: The Biggest & Fastest FPGAs Disponível em < [5] MATLAB - The Language of Technical Computing Disponível em < [6] Simulink - Simulation and Model-Based Design Disponível em < [DSPBuilder] DSP Builder Disponível em < [7] Versão gratuita do Quartus II para ser baixada da internet Disponível em < [8] Licença do Quartus II : Selecionar opção Quartus II Web Edition Software Disponível em < [9] Versão de avaliação do Matlab para ser baixada da internet Disponível em < [10] Versão do DSP Builder para ser baixada da internet Disponível em < [11] Exemplo com instruções para a construção passo a passo de um NCO usando o DSP Builder Disponível em < [12] Exemplo de um modulador AM baseado no exemplo do NCO usando o DSP Builder Disponível em <

5 Entrada e Saída de Dados:

5 Entrada e Saída de Dados: 5 Entrada e Saída de Dados: 5.1 - Arquitetura de Entrada e Saída: O sistema de entrada e saída de dados é o responsável pela ligação do sistema computacional com o mundo externo. Através de dispositivos

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

ARQUITETURA DE COMPUTADORES - 1866

ARQUITETURA DE COMPUTADORES - 1866 7 Unidade Central de Processamento (UCP): O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento e de controle, durante a execução de um

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

Unidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01

Unidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01 Unidade Central de Processamento (CPU) Processador Renan Manola Introdução ao Computador 2010/01 Componentes de um Computador (1) Computador Eletrônico Digital É um sistema composto por: Memória Principal

Leia mais

Organização de Computadores 1

Organização de Computadores 1 Organização de Computadores 1 SISTEMA DE INTERCONEXÃO (BARRAMENTOS) Prof. Luiz Gustavo A. Martins Arquitetura de von Newmann Componentes estruturais: Memória Principal Unidade de Processamento Central

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

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

Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores.

Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores. Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores. 7.3.1.2 Registradores: São pequenas unidades de memória, implementadas na CPU, com as seguintes características:

Leia mais

3. Arquitetura Básica do Computador

3. Arquitetura Básica do Computador 3. Arquitetura Básica do Computador 3.1. Modelo de Von Neumann Dar-me-eis um grão de trigo pela primeira casa do tabuleiro; dois pela segunda, quatro pela terceira, oito pela quarta, e assim dobrando sucessivamente,

Leia mais

Figura 1 - O computador

Figura 1 - O computador Organização e arquitectura dum computador Índice Índice... 2 1. Introdução... 3 2. Representação da informação no computador... 4 3. Funcionamento básico dum computador... 5 4. Estrutura do processador...

Leia mais

Somador e subtrator de 8 bits

Somador e subtrator de 8 bits Somador e subtrator de 8 bits Nota: Para desenvolver o somador e subtrator de 8 bits na Plataforma Windows, utilize preferencialmente Windows XP ou Vista. Você poderá encontrar problemas durante algumas

Leia mais

EA773 - Experimento 5

EA773 - Experimento 5 EA773 - Experimento 5 Wu Shin - Ting DCA - FEEC - Unicamp 19 de Novembro de 2009 O projeto consiste em implementar uma calculadora com memória com uso de barramento de 8 bits. Neste documento são discutidos

Leia mais

Quadro de consulta (solicitação do mestre)

Quadro de consulta (solicitação do mestre) Introdução ao protocolo MODBUS padrão RTU O Protocolo MODBUS foi criado no final dos anos 70 para comunicação entre controladores da MODICON. Por ser um dos primeiros protocolos com especificação aberta

Leia mais

Santa Cruz do Sul, outubro de 2015.

Santa Cruz do Sul, outubro de 2015. MANUAL DO USUÁRIO Santa Cruz do Sul, outubro de 2015. Adilson Ben da Costa & Ederson Luis Posselt Programa de Pós-graduação em Sistemas e Processos Industriais, Universidade de Santa Cruz do Sul (UNISC),

Leia mais

Capacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB

Capacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB Calculando a capacidade de disco: Capacidade = (# bytes/setor) x (méd. # setores/trilha) x (# trilhas/superfície) x (# superfícies/prato) x (# pratos/disco) Exemplo 01: 512 bytes/setor 300 setores/trilha

Leia mais

DSP Builder - Altera. MO801 - Tópicos em Arquitetura e Hardware. Michele Tamberlini 05/2006

DSP Builder - Altera. MO801 - Tópicos em Arquitetura e Hardware. Michele Tamberlini 05/2006 DSP Builder - Altera MO801 - Tópicos em Arquitetura e Hardware Michele Tamberlini 05/2006 DSP Builder Roteiro Introdução Funcionalidades MegaCore MATLAB / SIMULINK SOPC Builder Bibliotecas Introdução Algoritmos

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

Prof. Sandrina Correia

Prof. Sandrina Correia Tecnologias de I informação de C omunicação 9º ANO Prof. Sandrina Correia TIC Prof. Sandrina Correia 1 Objectivos Definir os conceitos de Hardware e Software Identificar os elementos que compõem um computador

Leia mais

INDICE 1. INTRODUÇÃO... 3 2. CONFIGURAÇÃO MÍNIMA... 4 3. INSTALAÇÃO... 4 4. INTERLIGAÇÃO DO SISTEMA... 5 5. ALGUNS RECURSOS... 6 6. SERVIDOR BAM...

INDICE 1. INTRODUÇÃO... 3 2. CONFIGURAÇÃO MÍNIMA... 4 3. INSTALAÇÃO... 4 4. INTERLIGAÇÃO DO SISTEMA... 5 5. ALGUNS RECURSOS... 6 6. SERVIDOR BAM... 1 de 30 INDICE 1. INTRODUÇÃO... 3 2. CONFIGURAÇÃO MÍNIMA... 4 3. INSTALAÇÃO... 4 3.1. ONDE SE DEVE INSTALAR O SERVIDOR BAM?... 4 3.2. ONDE SE DEVE INSTALAR O PROGRAMADOR REMOTO BAM?... 4 3.3. COMO FAZER

Leia mais

Escola Secundária de Emídio Navarro

Escola Secundária de Emídio Navarro Escola Secundária de Emídio Navarro Curso Secundário de Carácter Geral (Agrupamento 4) Introdução às Tecnologias de Informação Ficha de trabalho N.º 1 1. Refere algumas das principais áreas das Tecnologias

Leia mais

Aula 04 A. Barramentos. Prof. Ricardo Palma

Aula 04 A. Barramentos. Prof. Ricardo Palma Aula 04 A Barramentos Prof. Ricardo Palma Definição Em ciência da computação barramento é um conjunto de linhas de comunicação que permitem a interligação entre dispositivos, como o CPU, a memória e outros

Leia mais

Placa Acessório Modem Impacta

Placa Acessório Modem Impacta manual do usuário Placa Acessório Modem Impacta Parabéns, você acaba de adquirir um produto com a qualidade e segurança Intelbras. A Placa Modem é um acessório que poderá ser utilizado em todas as centrais

Leia mais

Um Driver NDIS Para Interceptação de Datagramas IP

Um Driver NDIS Para Interceptação de Datagramas IP Um Driver NDIS Para Interceptação de Datagramas IP Paulo Fernando da Silva psilva@senior.com.br Sérgio Stringari stringari@furb.br Resumo. Este artigo apresenta o desenvolvimento de um driver NDIS 1 para

Leia mais

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES Prof. Ms. Carlos José Giudice dos Santos cpgcarlos@yahoo.com.br www.oficinadapesquisa.com.br Conceito de Computador Um computador digital é

Leia mais

Introdução aos Computadores

Introdução aos Computadores Os Computadores revolucionaram as formas de processamento de Informação pela sua capacidade de tratar grandes quantidades de dados em curto espaço de tempo. Nos anos 60-80 os computadores eram máquinas

Leia mais

1) MANUAL DO INTEGRADOR Este documento, destinado aos instaladores do sistema, com informações de configuração.

1) MANUAL DO INTEGRADOR Este documento, destinado aos instaladores do sistema, com informações de configuração. O software de tarifação é uma solução destinada a rateio de custos de insumos em sistemas prediais, tais como shopping centers. O manual do sistema é dividido em dois volumes: 1) MANUAL DO INTEGRADOR Este

Leia mais

Arquitetura de Computadores. Tipos de Instruções

Arquitetura de Computadores. Tipos de Instruções Arquitetura de Computadores Tipos de Instruções Tipos de instruções Instruções de movimento de dados Operações diádicas Operações monádicas Instruções de comparação e desvio condicional Instruções de chamada

Leia mais

ULA Sinais de Controle enviados pela UC

ULA Sinais de Controle enviados pela UC Solução - Exercícios Processadores 1- Qual as funções da Unidade Aritmética e Lógica (ULA)? A ULA é o dispositivo da CPU que executa operações tais como: Adição Subtração Multiplicação Divisão Incremento

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

1.3. Componentes dum sistema informático HARDWARE SOFTWARE

1.3. Componentes dum sistema informático HARDWARE SOFTWARE 1.3. Componentes dum sistema informático Computador Sistema Informático HARDWARE SOFTWARE + Periféricos Sistema Operativo Aplicações HARDWARE - representa todos os componentes físicos de um sistema informático,

Leia mais

CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA

CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA 8 CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA A porta paralela, também conhecida por printer port ou Centronics e a porta serial (RS-232) são interfaces bastante comuns que, apesar de estarem praticamente

Leia mais

CAPÍTULO 5. INTERFACES PARA PERIFÉRICOS DE ARMAZENAMENTO INTERFACES DIVERSAS: FIREWIRE, SPI e I 2 C INTERFACES COM O MUNDO ANALÓGICO

CAPÍTULO 5. INTERFACES PARA PERIFÉRICOS DE ARMAZENAMENTO INTERFACES DIVERSAS: FIREWIRE, SPI e I 2 C INTERFACES COM O MUNDO ANALÓGICO 28 CAPÍTULO 5 INTERFACES PARA PERIFÉRICOS DE ARMAZENAMENTO INTERFACES DIVERSAS: FIREWIRE, SPI e I 2 C INTERFACES COM O MUNDO ANALÓGICO Interfaces para periféricos de armazenamento: Periféricos de armazenamento,

Leia mais

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira IFPE Disciplina: Sistemas Operacionais Prof. Anderson Luiz Moreira SERVIÇOS OFERECIDOS PELOS SOS 1 Introdução O SO é formado por um conjunto de rotinas (procedimentos) que oferecem serviços aos usuários

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

Organização Básica do Computador

Organização Básica do Computador Organização Básica do Computador Modelo de Von Neumann MEMÓRIA ENTRADA ARITMÉTICA LÓGICA SAÍDA CONTROLE Modelo de Von Neumann Introduziu o conceito do computador controlado por programa armazenado. Todo

Leia mais

Sistemas Computacionais II Professor Frederico Sauer

Sistemas Computacionais II Professor Frederico Sauer Sistemas Computacionais II Professor Frederico Sauer Livro-texto: Introdução à Organização de Computadores 4ª edição Mário A. Monteiro Livros Técnicos e Científicos Editora. Atenção: Este material não

Leia mais

Guilherme Pina Cardim. Relatório de Sistemas Operacionais I

Guilherme Pina Cardim. Relatório de Sistemas Operacionais I Guilherme Pina Cardim Relatório de Sistemas Operacionais I Presidente Prudente - SP, Brasil 30 de junho de 2010 Guilherme Pina Cardim Relatório de Sistemas Operacionais I Pesquisa para descobrir as diferenças

Leia mais

O cursor se torna vermelho e uma Paleta de Edição contendo as instruções mais utilizadas é apresentada.

O cursor se torna vermelho e uma Paleta de Edição contendo as instruções mais utilizadas é apresentada. Editor de Ladder para VS7 Versão Teste O editor de ladder é um software de programação que permite que o VS7 e o µsmart sejam programados em linguagem de contatos. Esse editor está contido na pasta Público

Leia mais

Arquitetura e Organização de Computadores I

Arquitetura e Organização de Computadores I Arquitetura e Organização de Computadores I Interrupções e Estrutura de Interconexão Prof. Material adaptado e traduzido de: STALLINGS, William. Arquitetura e Organização de Computadores. 5ª edição Interrupções

Leia mais

CALCULADORA SIMPLES COM ULA

CALCULADORA SIMPLES COM ULA CALCULADORA SIMPLES COM ULA Versão 2012 RESUMO 1 Esta experiência tem por objetivo a utilização de circuitos integrados de operações lógicas e aritméticas para o desenvolvimento de circuitos que executam

Leia mais

SCD 912. Dispositivo de comunicação e armazenamento. Apresentação. Dados Técnicos. Conexões

SCD 912. Dispositivo de comunicação e armazenamento. Apresentação. Dados Técnicos. Conexões Conv. USB-Serial Baudrate, stop bit e nro de dados programável. Baudrate de 1200 a 38400 bauds. Emula porta COM virtual. Led de indicação de operação como conversor USB-serial. Não possui linhas de controle

Leia mais

Paralelismo. Computadores de alto-desempenho são utilizados em diversas áreas:

Paralelismo. Computadores de alto-desempenho são utilizados em diversas áreas: Computadores de alto-desempenho são utilizados em diversas áreas: - análise estrutural; - previsão de tempo; - exploração de petróleo; - pesquisa em fusão de energia; - diagnóstico médico; - simulações

Leia mais

Fundamentos em Informática

Fundamentos em Informática Fundamentos em Informática 04 Organização de Computadores nov/2011 Componentes básicos de um computador Memória Processador Periféricos Barramento Processador (ou microprocessador) responsável pelo tratamento

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

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

3. O NIVEL DA LINGUAGEM DE MONTAGEM

3. O NIVEL DA LINGUAGEM DE MONTAGEM 3. O NIVEL DA LINGUAGEM DE MONTAGEM Nas aulas anteriores tivemos a oportunidade de discutir dois diferentes níveis presentes na maioria dos computadores atuais. Nesta aula dedica-se a outro nível que também

Leia mais

Geral: Manual de Utilização do Software de Teste Gradual Windows

Geral: Manual de Utilização do Software de Teste Gradual Windows Manual de Utilização do Software de Teste Gradual Windows Geral: Este aplicativo é utilizado para testar os Microterminais Gradual Tecnologia Ltda. Para tanto deve ter as Dll s necessárias para controlar

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Sistemas Operacionais Prof. Marcelo Sabaris Carballo Pinto Gerenciamento de Dispositivos Gerenciamento de Dispositivos de E/S Introdução Gerenciador de Dispositivos Todos os dispositivos

Leia mais

GUIA INTEGRA SERVICES E STATUS MONITOR

GUIA INTEGRA SERVICES E STATUS MONITOR GUIA INTEGRA SERVICES E STATUS MONITOR 1 - Integra Services Atenção: o Integra Services está disponível a partir da versão 2.0 do software Urano Integra. O Integra Services é um aplicativo que faz parte

Leia mais

CDE4000 MANUAL 1. INTRODUÇÃO 2. SOFTWARE DE CONFIGURAÇÃO 3. COMUNICAÇÃO

CDE4000 MANUAL 1. INTRODUÇÃO 2. SOFTWARE DE CONFIGURAÇÃO 3. COMUNICAÇÃO CDE4000 MANUAL 1. INTRODUÇÃO O controlador CDE4000 é um equipamento para controle de demanda e fator de potência. Este controle é feito em sincronismo com a medição da concessionária, através dos dados

Leia mais

Memória principal; Unidade de Controle U C P. Unidade Lógica e Aritmética

Memória principal; Unidade de Controle U C P. Unidade Lógica e Aritmética Tecnologia da Administração Computador: origem, funcionamento e componentes básicos Parte II Sumário Introdução Origem Funcionamento Componentes Básicos Referências Sistema Binário O computador identifica

Leia mais

Introdução. Em se tratando de computador, entendemos que memória são dispositivos que armazenam dados com os quais o processador trabalha.

Introdução. Em se tratando de computador, entendemos que memória são dispositivos que armazenam dados com os quais o processador trabalha. Memorias Introdução Em se tratando de computador, entendemos que memória são dispositivos que armazenam dados com os quais o processador trabalha. Necessariamente existe dois tipos de memórias: -Memória

Leia mais

O protocolo I2C. Fig. 1 Diagrama em blocos e pinos do circuito integrado PT2313.

O protocolo I2C. Fig. 1 Diagrama em blocos e pinos do circuito integrado PT2313. O protocolo I2C 1 - Introdução O protocolo I2C ou I 2 C, também chamado IIC, foi criado para possibilitar a comunicação entre circuitos integrados com um número reduzido de fios, reduzindo o número de

Leia mais

Arquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados

Arquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados Arquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados Organização de um Computador Típico Memória: Armazena dados e programas. Processador (CPU - Central Processing

Leia mais

Barramentos - BUS. Professor Especialista: Airton Ribeiro de Sousa

Barramentos - BUS. Professor Especialista: Airton Ribeiro de Sousa Professor Especialista: Airton Ribeiro de Sousa É o percurso principal dos dados entre dois ou mais componentes de um sistema de computação, neste caso são os caminhos arquitetados na PLACA MÃE até o ponto

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

PROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br

PROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br - Aula 2 - O NÍVEL DA MICROARQUITETURA 1. INTRODUÇÃO Este é o nível cuja função é implementar a camada ISA (Instruction Set Architeture). O seu projeto depende da arquitetura do conjunto das instruções

Leia mais

Componentes do Computador e. aula 3. Profa. Débora Matos

Componentes do Computador e. aula 3. Profa. Débora Matos Componentes do Computador e modelo de Von Neumann aula 3 Profa. Débora Matos O que difere nos componentes que constituem um computador? Princípios básicos Cada computador tem um conjunto de operações e

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

O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware

O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware 1 2 Revisão de Hardware 2.1 Hardware O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware 2.1.1 Processador O Processador

Leia mais

Estrutura interna de um microcontrolador

Estrutura interna de um microcontrolador Estrutura interna de um microcontrolador Um microcontrolador é composto por um conjunto de periféricos interligados a uma unidade de processamento e todo este conjunto confere a este componente uma versatilidade

Leia mais

Capítulo 4. MARIE (Machine Architecture Really Intuitive and Easy)

Capítulo 4. MARIE (Machine Architecture Really Intuitive and Easy) Capítulo 4 João Lourenço Joao.Lourenco@di.fct.unl.pt Faculdade de Ciências e Tecnologia Universidade Nova de Lisboa 2007-2008 MARIE (Machine Architecture Really Intuitive and Easy) Adaptado dos transparentes

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

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

Como Gerar documento em PDF com várias Imagens

Como Gerar documento em PDF com várias Imagens Como Gerar documento em PDF com várias Imagens Para Gerar documento em PDF com várias Imagens, temos que seguir dois passos: 1. Inserir Imagens no Word 2. Gerar PDF a partir de documento do Word 1- Inserir

Leia mais

28/9/2010. Unidade de Controle Funcionamento e Implementação

28/9/2010. Unidade de Controle Funcionamento e Implementação Arquitetura de Computadores Unidade de Controle Funcionamento e Implementação Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Operação da Unidade de Controle Unidade de controle: parte do

Leia mais

www.vwsolucoes.com Copyright 2013 VW Soluções

www.vwsolucoes.com Copyright 2013 VW Soluções 1 1. Especificação técnicas: Dimensões do módulo 4EA2SA v1.0: 100 mm x 56 mm Peso aproximado: xxx gramas (montada). Alimentação do circuito : 12 ou 24Vcc Tipo de comunicação: RS232 ou RS485 Tensão de referencia:

Leia mais

MANUAL DO USUÁRIO. TOOLBOX SIA.

MANUAL DO USUÁRIO. TOOLBOX SIA. MANUAL DO USUÁRIO. TOOLBOX SIA. 1. Arquivos Disponibilizados. Os seguintes arquivos compõem o toolbox desenvolvido: - Pacote SIA: arquivos de comando tipo M (Malab) que resolvem o GAP utilizando o SIA.

Leia mais

MANUAL DE INSTALAÇÃO 1) ORACLE VIRTUALBOX ; 2) MICROSOFT WINDOWS ; 3) SUMÁRIOS GENEPLUS.

MANUAL DE INSTALAÇÃO 1) ORACLE VIRTUALBOX ; 2) MICROSOFT WINDOWS ; 3) SUMÁRIOS GENEPLUS. PROGRAMA EMBRAPA DE MELHORAMENTO DE GADO DE CORTE MANUAL DE INSTALAÇÃO 1) ORACLE VIRTUALBOX ; 2) MICROSOFT WINDOWS ; 3) SUMÁRIOS GENEPLUS. MANUAL DE INSTALAÇÃO: 1) ORACLE VIRTUALBOX ; 2) MICROSOFT WINDOWS

Leia mais

Anexo III Funcionamento detalhado do Sistema Montador de Autoria

Anexo III Funcionamento detalhado do Sistema Montador de Autoria 1 Sumário Anexo III Funcionamento detalhado do Sistema Montador de Autoria Anexo III Funcionamento detalhado do Sistema Montador de Autoria... 1 1 Sumário... 1 2 Lista de Figuras... 5 3 A Janela principal...

Leia mais

ENTRADA E SAÍDA DE DADOS

ENTRADA E SAÍDA DE DADOS ENTRADA E SAÍDA DE DADOS Os dispositivos de um computador compartilham uma única via de comunicação BARRAMENTO. BARRAMENTO Elétrica/Mecânica + Protocolo. GERENCIAMENTO DE E/S O controle da troca de dados

Leia mais

PROGRAMAÇÃO EM VHDL DE CIRCUITOS LÓGICOS PARA IMPLEMENTAÇÃO EM FPGA RELATÓRIO FINAL DE PROJETO DE INICIAÇÃO CIENTÍFICA

PROGRAMAÇÃO EM VHDL DE CIRCUITOS LÓGICOS PARA IMPLEMENTAÇÃO EM FPGA RELATÓRIO FINAL DE PROJETO DE INICIAÇÃO CIENTÍFICA PROGRAMAÇÃO EM VHDL DE CIRCUITOS LÓGICOS PARA IMPLEMENTAÇÃO EM FPGA RELATÓRIO FINAL DE PROJETO DE INICIAÇÃO CIENTÍFICA (PIBIC/CNPq/INPE) Yegor Gomes de Mello (UFRN, Bolsista PIBIC/CNPq) E-mail: yegor_melo@crn.inpe.br

Leia mais

Tecnologia PCI express. Introdução. Tecnologia PCI Express

Tecnologia PCI express. Introdução. Tecnologia PCI Express Tecnologia PCI express Introdução O desenvolvimento de computadores cada vez mais rápidos e eficientes é uma necessidade constante. No que se refere ao segmento de computadores pessoais, essa necessidade

Leia mais

NOTAS DE AULA Prof. Antonio Carlos Schneider Beck Filho (UFSM) Prof. Júlio Carlos Balzano de Mattos (UFPel) Arquitetura de Von Neumann

NOTAS DE AULA Prof. Antonio Carlos Schneider Beck Filho (UFSM) Prof. Júlio Carlos Balzano de Mattos (UFPel) Arquitetura de Von Neumann Universidade Federal de Santa Maria NOTAS DE AULA Prof. Antonio Carlos Schneider Beck Filho (UFSM) Prof. Júlio Carlos Balzano de Mattos (UFPel) Arquitetura de Von Neumann O modelo (ou arquitetura) de von

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

AULA4: PROCESSADORES. Figura 1 Processadores Intel e AMD.

AULA4: PROCESSADORES. Figura 1 Processadores Intel e AMD. AULA4: PROCESSADORES 1. OBJETIVO Figura 1 Processadores Intel e AMD. Conhecer as funcionalidades dos processadores nos computadores trabalhando suas principais características e aplicações. 2. INTRODUÇÃO

Leia mais

William Stallings Arquitetura e Organização de Computadores 8 a Edição

William Stallings Arquitetura e Organização de Computadores 8 a Edição William Stallings Arquitetura e Organização de Computadores 8 a Edição Capítulo 7 Entrada/saída Os textos nestas caixas foram adicionados pelo Prof. Joubert slide 1 Problemas de entrada/saída Grande variedade

Leia mais

Instituto Tecnológico de Aeronáutica - ITA Divisão de Engenharia Eletrônica Departamento de Eletrônica Aplicada Laboratório de EEA-21

Instituto Tecnológico de Aeronáutica - ITA Divisão de Engenharia Eletrônica Departamento de Eletrônica Aplicada Laboratório de EEA-21 Instituto Tecnológico de Aeronáutica - ITA Divisão de Engenharia Eletrônica Departamento de Eletrônica Aplicada Laboratório de EEA-21 7ª Experiência Síntese de Circuitos Sequenciais Síncronos 1. Objetivos

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

DESENVOLVIMENTO DE UMA BIBLIOTECA PARA COMUNICAÇÃO COM A CAMADA FÍSICA USB PADRÃO ULPI

DESENVOLVIMENTO DE UMA BIBLIOTECA PARA COMUNICAÇÃO COM A CAMADA FÍSICA USB PADRÃO ULPI UNIVERSIDADE FEDERAL DE PERNAMBUCO GRADUAÇÃO EM ENGENHARIA DA COMPUTAÇÃO CENTRO DE INFORMÁTICA DESENVOLVIMENTO DE UMA BIBLIOTECA PARA COMUNICAÇÃO COM A CAMADA FÍSICA USB PADRÃO ULPI PROPOSTA DE TRABALHO

Leia mais

02 - Usando o SiteMaster - Informações importantes

02 - Usando o SiteMaster - Informações importantes 01 - Apresentação do SiteMaster - News Edition O SiteMaster foi desenvolvido para ser um sistema simples de gerenciamento de notícias, instalado em seu próprio computador e com configuração simplificada,

Leia mais

Arquitetura de Computadores Arquitetura de entrada e saída

Arquitetura de Computadores Arquitetura de entrada e saída Arquitetura de Entrada e Saída Arquitetura de Computadores Arquitetura de entrada e saída Barramento Meio de transmissão de dados entre a CPU, a memória principal e os dispositivos de entrada e saída.

Leia mais

ROTEIRO PARA TREINAMENTO DO SAGRES DIÁRIO Guia do Docente

ROTEIRO PARA TREINAMENTO DO SAGRES DIÁRIO Guia do Docente Conceito ROTEIRO PARA TREINAMENTO DO SAGRES DIÁRIO Guia do Docente O Sagres Diário é uma ferramenta que disponibiliza rotinas que facilitam a comunicação entre a comunidade Docente e Discente de uma instituição,

Leia mais

Estrutura de um Computador

Estrutura de um Computador SEL-0415 Introdução à Organização de Computadores Estrutura de um Computador Aula 7 Prof. Dr. Marcelo Andrade da Costa Vieira MODELO DE VON NEUMANN PRINCÍPIOS A arquitetura de um computador consiste de

Leia mais

Visão Geral da Arquitetura de Computadores. Prof. Elthon Scariel Dias

Visão Geral da Arquitetura de Computadores. Prof. Elthon Scariel Dias Visão Geral da Arquitetura de Computadores Prof. Elthon Scariel Dias O que é Arquitetura de Computadores? Há várias definições para o termo arquitetura de computadores : É a estrutura e comportamento de

Leia mais

Manual do Usuário Android Neocontrol

Manual do Usuário Android Neocontrol Manual do Usuário Android Neocontrol Sumário 1.Licença e Direitos Autorais...3 2.Sobre o produto...4 3. Instalando, Atualizando e executando o Android Neocontrol em seu aparelho...5 3.1. Instalando o aplicativo...5

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Gerência de processos Controle e descrição de processos Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Representação e controle de processos pelo SO Estrutura

Leia mais

PROCEDIMENTO PARA INSTALAR REDE ETHERNET EM CNC s FAGOR.

PROCEDIMENTO PARA INSTALAR REDE ETHERNET EM CNC s FAGOR. PROCEDIMENTO PARA INSTALAR REDE ETHERNET EM CNC s FAGOR. INDICE 1 Verificar a compatibilidade dos sistemas de hardware e software 1.1 Opcionais de Hardware 1.2 Opcionais de Software 2 Parametrização do

Leia mais

CONFIGURADOR DO PAINEL FP1 v 1.3

CONFIGURADOR DO PAINEL FP1 v 1.3 CONFIGURADOR DO PAINEL FP1 v 1.3 1. INTRODUÇÃO Este software permite a configuração dos dispositivos de detecção manuais e ou automáticos do sistema digital de alarme de incêndio FP1. Pode-se, por intermédio

Leia mais

Aperfeiçoamento Técnico com respeito ao Profissional.

Aperfeiçoamento Técnico com respeito ao Profissional. Política de Treinamento DME Aperfeiçoamento Técnico com respeito ao Profissional. A DME é uma empresa voltada para o atendimento das necessidades em conclusão e consumo de Energia Elétrica, consagrou-se

Leia mais

3.a Aula Prática Projeto de Circuitos Sequenciais com FPGA. Projeto e simulação de um gerador de frequência

3.a Aula Prática Projeto de Circuitos Sequenciais com FPGA. Projeto e simulação de um gerador de frequência 3.a Aula Prática Projeto de Circuitos Sequenciais com FPGA Prof. Cesar da Costa Projeto e simulação de um gerador de frequência Muitas vezes, várias frequências de clock são necessárias em um circuito

Leia mais

Taxa de Gravação da Memória RAM (MegaBytes / segundo) G5 2.7 Ghz (Mac) Linux Kernel 2.6 2799 1575

Taxa de Gravação da Memória RAM (MegaBytes / segundo) G5 2.7 Ghz (Mac) Linux Kernel 2.6 2799 1575 21 4 Análise É necessária uma análise criteriosa, que busque retornar as questões primordiais sobre o que é realmente preciso para a aquisição de uma plataforma de produção gráfica digital profissional.

Leia mais

ARQUITETURA DE COMPUTADORES

ARQUITETURA DE COMPUTADORES 01001111 01110010 01100111 01100001 01101110 01101001 01111010 01100001 11100111 11100011 01101111 00100000 01100100 01100101 00100000 01000011 01101111 01101101 01110000 01110101 01110100 01100001 01100100

Leia mais

Edeyson Andrade Gomes

Edeyson Andrade Gomes Sistemas Operacionais Conceitos de Arquitetura Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula Máquinas de Níveis Revisão de Conceitos de Arquitetura 2 Máquina de Níveis Máquina de níveis Computador

Leia mais

BH PARK Software de Estacionamento

BH PARK Software de Estacionamento BH PARK Software de Estacionamento WWW.ASASSOFTWARES.COM.BR Índice 1 Informações Básicas... 1 1.1 Sair da aplicação... 1 1.2 Travar aplicação... 1 1.3 Licenciando a aplicação... 1 1.4 Contrato de Manutenção...

Leia mais

INTRODUÇÃO BARRAMENTO PCI EXPRESS.

INTRODUÇÃO BARRAMENTO PCI EXPRESS. INTRODUÇÃO BARRAMENTO EXPRESS. O processador se comunica com os outros periféricos do micro através de um caminho de dados chamado barramento. Desde o lançamento do primeiro PC em 1981 até os dias de hoje,

Leia mais

Capítulo 3 - Trabalhando com circuitos digitais

Capítulo 3 - Trabalhando com circuitos digitais Prof. Alan Petrônio Pinheiro Apostila de MultiSim 17 Capítulo 3 - Trabalhando com circuitos digitais O primeiro passo para se trabalhar com circuitos digitais é inserir portas lógicas. Para isto, dispomos

Leia mais

Introdução à Arquitetura de Computadores IFES Campus Serra

Introdução à Arquitetura de Computadores IFES Campus Serra Os computadores atuais possuem seis ou mais níveis de máquinas conforme podemos observar no quadro abaixo Nível de linguagem orientada para problemas Nível de linguagem de montagem Nível de sistema operacional

Leia mais

Técnicas de Manutenção de Computadores

Técnicas de Manutenção de Computadores Técnicas de Manutenção de Computadores Professor: Luiz Claudio Ferreira de Souza Processadores É indispensável em qualquer computador, tem a função de gerenciamento, controlando todas as informações de

Leia mais