Filtro Digital: Estudo de Caso de Projeto e Implementação

Documentos relacionados
Dispositivo Lógico Programável(PLD)

Dispositivos de Lógica Programável

ELETRÔNICA DIGITAL I

Aula 11. Dispositivos Lógicos Programáveis. SEL Sistemas Digitais. Prof. Dr. Marcelo Andrade da Costa Vieira

DISPOSITIVOS LÓGICOS PROGRAMÁVEIS. SEL Sistemas Digitais Prof. Homero Schiabel

ELD - Eletrônica Digital Aula 11 Introdução à Lógica Programável. Prof. Antonio Heronaldo de Sousa

PROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar

Hardware Reconfigurável

Parte # 2 - Circuitos Combinatórios

Disciplina: Processamento Digital de Sinais Aula 05 - Implementação de Sistemas de Processamento Digital de Sinais (Parte 01)

Circuitos Digitais Representação Numérica. Sistema Digital. Circuitos Digitais. Conversão A/D e D/A. Circuitos Digitais

Palavras-Chave: Filtro digital, FPGA, VHDL.

Projeto com Linguagens de Descrição de Hardware

Projetos de Circuitos Digitais em VHDL e FPGA

FPGA & VHDL. Tutorial

Capítulo13 Arquiteturas de Dispositivos Lógicos Programáveis Pearson. Todos os direitos reservados.

Profa. Luiza Maria Romeiro Codá Profa. Dra Maria Stela Veludo de Paiva

FPGA & VHDL. Tutorial Aula 1. Computação Digital

Livro texto: VHDL- Descrição e Síntese de Circuitos Digitais Roberto D Amore Editora LTC

EPUSP PCS2355 Laboratório Digital SOMADORES DECIMAIS

Calculadora Simples em VHDL

EPUSP PCS 2011/2305/2355 Laboratório Digital SOMADORES DECIMAIS

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

Dispositivos Lógicos Programáveis (PLDs) Leandro Schwarz

Introdução a filtros digitais. Theo Pavan e Adilton Carneiro TAPS

Revisão: Projeto e síntese de Circuitos Digitais em FPGA

ELETRÔNICA DIGITAL. Prof. Fabio Martins Domingues

Comparação de filtros IIR e FIR

Processamento de sinais digitais

Pontifícia Universidade Católica Federal do Rio de Santa Grande Catarina do Sul

Curso de Engenharia Elétrica Processamento Digital de Sinais II Exercícios sobre filtros não recursivos Data de entrega: 17/11/2015

O Mundo Real é Analógico ou Digital?

Sistemas Digitais I LESI :: 2º ano. Introdução

Introdução ao Max+Plus II

Desenvolvendo aplicações com LabVIEW FPGA. Rogério Rodrigues Engenheiro de Marketing Técnico Marcos Cardoso Engenheiro de Vendas

Conceitos Introdutórios Capítulo 1. Prof. Gustavo Fernandes de Lima

Aula 22. Conversão Sigma-Delta (continuação)

Revisão: Projeto de Processadores em VHDL

Departamento de Engenharia Elétrica e de Computação EESC-USP. Guia de Projetos VHDL utilizando o QUARTUIS II. Profa. Luiza Maria Romeiro Codá

EPUSP PCS 2011 Laboratório Digital I. Uma ULA Simples

EPUSP PCS 2011/2305/2355 Laboratório Digital. Frequencímetro

EPUSP PCS 2011 Laboratório Digital I. Uma ULA Simples

Parâmetros importantes de um Analisador de Espectros: Faixa de frequência. Exatidão (frequência e amplitude) Sensibilidade. Resolução.

CONVERSORES D/A e A/D

EPROM - EEPROM Dispositivos Lógicos Programáveis

Circuitos Lógicos. Profa. Grace S. Deaecto. Faculdade de Engenharia Mecânica / UNICAMP , Campinas, SP, Brasil.

Circuitos Lógicos. Prof. Odilson Tadeu Valle

Sistemas Digitais (SD) Lógica Programável

Curso de Tecnologia em Sistemas Eletrônicos MATRIZ CURRICULAR. Módulo I /Semestre 1 Carga horária total: 400h

UNIVERSIDADE ESTADUAL PAULISTA. LMAEE Laboratório de Matemática Aplicada a Engenharia Elétrica

Resumo teórico INTRODUÇÃO AOS DISPOSITIVOS LÓGICOS PROGRAMÁVEIS

HENNESSY, J.; PATTERSON, D. A. Arquitetura de Computadores: uma abordagem quantitativa. Campus, 2003.

T&S EQUIPAMENTOS ELETRÔNICOS Manual do Usuário

Introdução ao Projeto de Sistemas Digitais com Dispositivos Programáveis

Sistemas Digitais (SD) Lógica Programável

Introdução à Automação Industrial

Introdução ao Projeto de Sistemas Digitais com Dispositivos Programáveis

Prof. André Rabelo LÓGICA DIGITAL INTRODUÇÃO

Seminário de programação em sistemas embarcados

DISPOSITIVOS LÓGICOS PROGRAMÁVEIS DLP. 15/8/2013 Prof. Joselito ELP1DLP1 / npee / DEE 1

Análise de vibrações mecânica com FPGA

Apresentação da Disciplina Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h

Processamento de sinais digitais

Eric Ericson Fabris

Painel Luminoso com LEDs

SEL 0412 Tecnologia Digital Teoria

Arquitetura e organização de computadores Uma visão geral

EPUSP PCS 3335 Laboratório Digital A. Introdução ao VHDL

EPUSP PCS 2011 Laboratório Digital GERADOR DE SINAIS

EXPERIÊNCIA 4: IMPLEMENTAÇÃO DE UM CRONÔMETRO

PCS 3115 Sistemas Digitais I

INTRODUÇÃO À ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES. Função e Estrutura. Introdução Organização e Arquitetura. Organização e Arquitetura

Sistema Supervisório - IHM

Introdução Conversão Digital Analógica Conversão Analógica Digital Referências. Conversão D/A e A/D. Aula 01 - DAC / ADC

Implementação de algoritmos de processamento em FPGA para reconstrução de imagens biomédicas por ultrassom

Análise e Processamento de Bio-Sinais. Mestrado Integrado em Engenharia Biomédica. Sinais e Sistemas. Licenciatura em Engenharia Física

CONJUNTO DE INSTRUÇÕES

Processamento Digital de Sinais

BLOCKSIM. Simulador de Sistemas Dinâmicos por Diagrama de Blocos

Plano de Ensino. Leandro Schwarz Endereço eletrônico:

Introdução aos sinais discretos e conversão de sinais analógicos para digitais

Projeto e Implementação de um Fatorial em Hardware para Dispositivos Reconfiguráveis

Transcrição:

Filtro Digital: Estudo de Caso de Projeto e Implementação O conteúdo deste tutorial foi obtido do artigo de autoria do Weverson dos Santos Cirino para a etapa de classificação do II Concurso Teleco de Trabalhos de Conclusão de Curso (TCC) 2006. Este tutorial apresenta a simulação dos filtros digitais FIR e IIR utilizando a ferramenta Simulink e sua possível estrutura escrita em VHDL e implementada em PLD. A utilização dos filtros digitais permite resolver problemas tais como os advindos dos distúrbios que interferem na qualidade das informações que trafegam nos sinais digitais presentes nos sistemas de comunicações à distância. Nos últimos dez anos a tecnologia dos PLD s evolui de tal forma que suas aplicações permitiram suprimir vários circuitos de lógica discreta, já que se integram em um único Circuito Integrado com quantidades de blocos variáveis, de acordo com a necessidade, capazes de implementar muitas funções lógicas. Por outro lado, a Linguagem de Descrição de Hardware VHDL contribuiu de uma forma decisiva para o fortalecimento das etapas de desenvolvimento, modelação e documentação de circuitos digitais complexos. Estes aspectos foram decisivos para facilitar a implementação dos filtros digitais apresentados neste tutorial. Weverson dos Santos Cirino Engenheiro de Telecomunicações pelo Centro Universitário Luterano de Manaus (CEULM, 2007), e Técnico em Eletrônica pela Fundação de Ensino e Pesquisa Matias Machilline (FMM, 1992). Cursa, Pós-graduação em Criptografia e Segurança de Redes na Universidade Federal Fluminense UFF (Niterói, RJ), desenvolvendo o tema Estudo e Análise da Criptografia Quântica na Transmissão de Sinais utilizando Técnica de Visada Direta e Pós-graduação em Engenharia de Redes e Sistemas de Telecomunicação na Universidade Paulista - UNIP (Manaus, AM), desenvolvendo o tema Estudo e Análise dos Modelos de Propagação das Ondas Eletromagnéticas na Faixa de 2,4 GHz em Ambientes Fechados (Indoor). Atualmente é Gerente da Qualidade na Solteco - Tecnologia De Corte Ltda (Manaus, AM). Email: weverson@solteco.com.br Categoria: Sistemas de Transmissão Nível: Introdutório Enfoque: Técnico 1

Duração: 15 minutos Publicado em: 24/09/2007 2

Filtro Digital: Introdução As principais vantagens dos sistemas digitais em relação aos sistemas analógicos são: alta confiabilidade, facilidade de modificar as características do sistema e baixo custo. Essas vantagens motivaram a implementação digital de muitos sistemas de processamento de sinais que costumavam ser implementados com a tecnologia de circuitos analógicos (DINIZ, SILVA e NETTO, 2004). Grandes evoluções aconteceram dentro da indústria eletrônica durante os últimos dez anos no que se refere ao desenvolvimento de sistemas digitais; de computadores pessoais, sistemas de áudio e vídeo até dispositivos de alta velocidade desenvolvidos para os circuitos de comunicações, produtos esses com uma alta tecnologia que permitem aumentar a eficiência, diminuir custos, melhorar o aproveitamento da energia, assim como dar continuidade à tendência de miniaturização desses componentes. Isto somente foi possível graças ás ferramentas de desenvolvimento e projeto de sistemas eletrônicos assistidos por computadores, e que são conhecidas como ferramentas EDA (Eletronic Design Automation). Esses softwares de projeto eletrônico cada vez mais auxiliam os engenheiros no desenvolvimento e projeto de circuitos eletrônicos, têm-se tornado cada vez mais sofisticadas, e contam ainda com computadores cada vez mais velozes e de maior capacidade de processamento. Ambos, hardware e software constituem atualmente ferramentas importantíssimas que simplificam o trabalho de desenvolvimento e projeto de sistemas eletrônicos. Outra facilidade que as ferramentas EDA trouxeram, foi o aumento da velocidade dos processos de desenvolvimento e projeto. Esta situação conduziu a adoção de novas metodologias para o projeto e evolução dos circuitos eletrônicos. O uso das ferramentas EDA junto com dispositivos lógicos programáveis que podem ser utilizados em diferentes aplicações, inclusive os reprogramáveis, mudou bastante a concepção de desenvolvimento e projeto de circuitos digitais. VHDL é uma linguagem que foi criada para o desenvolvimento, projeto, modelamento e documentação de circuitos digitais complexos. Atualmente é utilizada para a síntese de circuitos digitais utilizando dispositivos lógicos programáveis (PLD). Assim, os dispositivos lógicos programáveis, VHDL, VHSIC (Very High Speed Integrated Circuit) e HDL (Hardware Description Language), constituem os elementos fundamentais para as novas metodologias de desenvolvimento e projeto de circuitos digitais. Este tutorial vem apresentar a evolução dos PLD s até o mais recente FPGA, apresentar de forma sucinta os códigos da linguagem VHDL, conceituar filtros digitais e simular e modelar filtros digitais FIR e IIR. 3

Filtro Digital: PLD e VHDL Evolução do PLD Para reduzir o número de CI's a serem usados no projeto, é necessário colocar mais funções em um chip. É claro que isso tem sido feito com as tecnologias LSI e VLSI para funções padronizadas como memórias, microprocessadores, sintetizadores de voz, chips de calculadora e assim por diante. Esses dispositivos contêm centenas e milhares de portas lógicas conectadas para operar de um modo determinado. O desenvolvimento recente dos Dispositivos Lógicos Programáveis ofereceu aos projetistas uma alternativa para substituição de um número grande de CI's padronizados por um único CI (TOCCI e WIDMER, 2000). Um dispositivo lógico programável ou simplesmente PLD, do inglês Programmable Logic Device, é um dispositivo cujas características podem ser modificadas e alteradas mediante programação. A arquitetura de um dispositivo lógico programável consiste em uma matriz de células lógicas que podem ser interconectadas através de programação para implementar diferentes projetos (TOCCI e WIDMER, 2000). O dispositivo programável mais simples e que foi o primeiro chip a ser programado pelo usuário é o PROM, do inglês Programmable Ready Only Memory. Ele é constituído por um arranjo de portas AND e portas OR. O arranjo AND é fixo enquanto o arranjo de portas OR é programável. Uma das principais aplicações desse primeiro tipo de PLD foi para implementar circuitos lógicos. Introduzido no mercado pela Philips na década de 70, o PLA (Programmable Logic Array) foi o primeiro dispositivo desenvolvido para implementar funções lógicas definidas. Um PLA é constituído por arranjos AND e OR, onde ambos são programáveis. Por esse motivo o PLA é adequado para a implementação de funções na forma de soma de produtos, sendo muito versátil, pois tanto os arranjos AND como os OR podem ter muitas entradas. Em meados da década de 1970 o FPLA (Field Programmable Logic Array) foi o primeiro dispositivo programável sem memória a ser desenvolvido. Ele usava um arranjo AND programável, bem como um arranjo OR programável. Embora o FPLA seja mais flexível do que a PLA, ela não foi bem aceita pelos projetistas. (TOCCI e WIDMER, 2000). Em 1978 foi introduzido pela Monolithic um inovador dispositivo de lógica programável chamado PAL (Programmable Array Logic). Este é constituído também por arranjos AND e OR, sendo que o arranjo AND é programável e o arranjo OR é fixo. Esta disposição barateou em muito a fabricação dos dispositivos de lógica programável, contudo para compensar a impossibilidade de programar os arranjos OR, alguns PAL s são fabricados com diferentes números de entradas e saídas, bem como vários tamanhos de portas OR. Hoje, tanto os PLA s e PAL s, bem como outros dispositivos que surgiram a partir dessas estruturas e que possuem nomenclaturas diferentes, são classificados como SPLD s (Simple PLD s), cujas características principais são o baixo custo e o alto desempenho. Atualmente existentes diversos PLD s sendo comercializados com diferentes estruturas, com mais ou com menos blocos SPLD s, onde são chamados de CPLD s (Complex PLD's). Os primeiros CPLD s foram introduzidos pela Altera Corporation. 4

Os CPLD s disponíveis atualmente de maior capacidade lógica são os tradicionais Gate Arrays, algumas vezes chamados de MPGA (Mask - Programmable Gate Array). Assim como as MPGA s, as FPGA s (Field Programmable Gate Arrays) são formadas por blocos lógicos e interconexões entre estes blocos, e a diferença está na configuração realizada através de programação pelo usuário final. No ano de 1985, o primeiro FPGA foi disponibilizado para ser comercializado pela empresa Xilinx Inc. Atualmente os FPGA s oferecem capacidades lógicas de trabalho elevadas e são os responsáveis pela maior parte das mudanças ocorridas na maneira como os circuitos digitais são desenvolvidos. Linguagem de Descrição de Hardware VHDL O termo VHDL significa VHSIC Hardware Description Language, e VHSIC é Very High Speed Integrated Circuits. Portanto, VHDL foi concebido para desenvolver circuitos integrados. Na realidade, ele pode ser usado para descrever vários tipos de sistema: uma rede de computadores, um circuito integrado, ou simplesmente uma simples porta lógica (DÉHARBE, 1998). A linguagem VHDL foi desenvolvida para descrever sistemas eletrônicos digitais. Surgiu a partir de um programa de Circuitos Integrados de Velocidade Muito Alta (VHSIC) do Departamento de Defesa dos Estados Unidos em 1980. Na história desse programa houve uma padronização para descrever a estrutura e função de Circuitos Integrados (CI s). Posteriormente a Linguagem de Descrição de Hardware VHSIC foi aperfeiçoada e tornou-se um padrão reconhecido pelo Instituto de Engenheiros Elétricos e Eletrônicos (IEEE) nos EUA (DÉHARBE, 1998). Atualmente existente duas padronizações sucessivas liberadas para uso emitidas pelo Institute of Electrical and Electronic Engineers (IEEE): uma de 1987, o IEEE Std 1076 1987 (chamada de VHDL 1987 ), e a outra de 1993, o IEEE Std 1076 1993 (chamada VHDL 1993 ). Ambas as normas VHDL 1987 e 1993 são totalmente integradas ao programa Max Plus II. Pode-se escrever um código VHDL 1987 ou 1993 utilizando-se a aplicação Max Plus II Text Editor, ou qualquer outro editor de texto. Em VHDL constantes, sinais, variáveis, funções, e parâmetros podem ser declarados como um tipo que define suas características. Cada objeto pode controlar ou retornar valores destes tipos. Cada descrição em VHDL de um circuito é constituída por uma entidade (Entity) e por uma ou mais arquiteturas (Architecture). O Altera Multiple Array MatriX Programable Logic User System ou software Max Plus II torna o desenvolvimento e a programação de dispositivos de hardware tarefas simples, fáceis e confiáveis. Ele é um ambiente de desenvolvimento para a prática da tecnologia de lógica programável. Nele é possível criar, editar, simular esquemas com circuitos lógicos e programar componentes. A interface com o usuário é amigável e de fácil aprendizado (MONTEBELLER, 2005). Através do Max Plus II, o projetista pode combinar vários tipos de arquivos diferentes para a entrada de projeto no programa, escolhendo assim, a maneira que mais se adapta ao projeto. 5

Filtro Digital: Conceitos e Projeto Conceitos Em um sistema e transmissão, a função de um filtro é remover partes não desejadas do sinal, como o ruído, ou extrair partes úteis do sinal, como determinadas componentes de freqüência que estão dentro do gama de freqüência. Há dois tipos principais de filtro: o analógico e o digital. Eles são bastante diferentes na montagem física e em seu funcionamento. Um filtro analógico usa circuitos eletrônicos analógicos feitos de componentes como resistores, indutores e capacitores para produzir o efeito de filtragem exigido. Tais circuitos de filtro são extensamente usados em aplicações como redução de ruído em sistema de alta-fidelidade e muitas outras áreas. Existem técnicas padrões para se projetar um circuito de filtro analógico para uma determinada aplicação. Em todas as fases do projeto a característica mais importante no circuito desse filtro é a tensão e a corrente elétrica, bem como a precisão dos componentes. Já no caso de um filtro digital, este usa um processador digital para executar cálculos numéricos em valores amostrados do sinal de entrada. O processador pode ser um computador ou um DSP. Em um processo de filtragem digital, o sinal analógico deve ser primeiramente digitalizado usando um ADC. Isto quer dizer que, a cada intervalo de tempo previamente definido é retirada uma amostra do sinal de entrada que vai ser codificada em forma binária e este procedimento é aplicado sucessivamente a cada novo intervalo de tempo. Esta amostragem é transferida ao processador que efetuar os cálculos numéricos. Estes cálculos envolvem multiplicações e soma com constantes de seus termos - produtos. Os resultados desses cálculos produzidos pelo processador agora representam valores do sinal filtrado e podem ser reconstituídos através de um DAC, o qual irá converter o sinal filtrado em um sinal na forma analógica. Note que num filtro digital, o sinal é representado por uma sucessão de números, em lugar de uma tensão ou corrente. Os filtros digitais são parte importante do Processamento Digital de Sinais (PDS). Na realidade, o desempenho extraordinário deles é uma das razões fundamentais para a popularização do PDS (STEVEN, 1999). Existem várias vantagens advindas da utilização de filtros digitais, entre ela: 1. Um filtro digital é programável, ou seja, a sua operação é determinada por um programa armazenado na memória do processador. Isto significa que o filtro digital pode ser mudado facilmente sem afetar seu circuito eletrônico (hardware). No caso de um filtro analógico ocorre somente se mudarmos o seu circuito eletrônico; 2. Os filtros digitais são facilmente projetados, sendo os mesmos testados e implementados em um computador ou estação de trabalho de forma simples; 3. As características funcionais dos circuitos de filtros analógicos (particularmente os circuitos elaborados com componentes) estão sujeitos a variação da temperatura, variação de valores devido à construção dos componentes utilizados nos circuitos, entre outros parâmetros que dependem do projeto e aplicação. Filtros digitais não sofrem estes problemas, logo são extremamente estáveis obtendo com isso resultados mais precisos. 6

A ordem de um filtro digital é o número de contribuições previamente armazenadas na memória do processador utilizadas para calcular a próxima componente. Sendo assim, todos os filtros digitais podem ser escritos da seguinte maneira: Zero ordem: Primeira - ordem: Segunda - ordem: Filtros Digitais com ordens superiores a segunda podem ser desenvolvidos usando expressões semelhantes. As componentes a0, a1, a2,..., an são chamadas de Coeficientes de Filtro. Os valores desses coeficientes é que determinam as características do filtro em particular. Outra característica muito importante nos filtros digitais é a sua Função de Transferência. Esta função é obtida pela simetria da expressão do filtro, que nos permite descrever um filtro por meio de uma expressão conveniente e compacta. Pode-se usar a função de transferência de um filtro para trabalhar fora de sua resposta de freqüência. Projeto de Filtro Digital IIR A resposta de um filtro de Resposta Infinita ao Impulso (IIR) é função dos sinais de entrada presentes e passados, e dos sinais de saída passados. A equação diferencial representa um filtro IIR porque é uma função dos elementos de excitação e resposta. A dependência das saídas passadas (recursividade) faz com que a duração da resposta seja infinita, mesmo quando cessaram os sinais de entrada. A equação a seguir retrata esse enunciado. De maneira prática e didática é muito fácil a implementação de um filtro digital IIR utilizando o software MatLab 6.5. A função BUTTER acompanhada do termo N que é especificado como sendo a ordem do filtro e, Wn que é a freqüência de corte do filtro, que varia entre 0.0 e 1.0. A linha de comando então será [B,A] = BUTTER (N, Wn). As letras B e A então serão dadas pelo software, e correspondem aos coeficientes do filtro Butterworth, Letra B (Numerador) e Letra A (Denominador). A figura a seguir demonstra o procedimento para a obtenção dos coeficientes do Numerador (B) e do Denominador (A) de um Filtro Digital IIR Butterworth, tipo Passa-baixa com N = 4 e Wn = 0.2. 7

Figura 1: Projeto de Filtro Digital IIR. Projeto de Filtro Digital FIR Se as saídas do sistema dependem somente da entrada presente e de um número finito de entradas passadas, então o filtro de Resposta Finita ao Impulso (FIR) tem uma resposta impulsiva finita. Logo a representa de um filtro FIR de duração L é dada da seguinte forma: Nessa equação os coeficientes do filtro são equivalentes a sua resposta impulsiva. Devido ao fato de que os valores de saída passados não influenciam no cálculo dos valores de saída presentes, este filtro também é chamado de filtro não-recursivo. Existem duas implementações eficientes adotáveis para filtros FIR: [1] implementação no domínio do tempo e [2] implementação no domínio da freqüência. A implementação no domínio do tempo utiliza poucos coeficientes do filtro e efetua a filtragem através de uma convolução do sinal de entrada com estes coeficientes. As vantagens dos filtros FIR são as seguintes: (a) Resposta de fase linear e, portanto sem distorção e com aritmética real; (b) Não tem problemas de estabilidade, e; (c) Implementação eficiente através da utilização da TFD. Através da utilização do software MatLab 6.5 pode-se implementar um filtro digital FIR utilizando a função FIR1, a partir do qual é possível determinar os coeficientes da resposta impulsiva do filtro FIR. É importante ressaltar que na freqüência de corte indicada temos 6 db de atenuação. A figura a seguir demonstra o procedimento para obtenção dos coeficientes do Numerador (B) de um Filtro Digital FIR Método Hamming, tipo Passa-baixa com N = 12 e Wn = 0.2. 8

Figura 2: Projeto de Filtro Digital FIR. 9

Filtro Digital: Parâmetros Os parâmetros que serviram como base para os projetos dos filtros digitais foram elaborados utilizando o MatLab 6.5 e o Simulink 5.0. Sinal de Entrada O sinal de entrada foi composto pela somatória de dois sinais: informação e ruído. O sinal de informação tinha as seguintes características: amplitude de 1 V, freqüência de 0.5 rad/sec e fase zero. O sinal de ruído tinha as seguintes características: amplitude de 0.4V, freqüência de 10 rad/sec e fase zero. O sinal de entrada resultante é apresentado na figura a seguir. Figura 3: Sinal de Entrada. Para simular o sinal de entrada foram usados 2 blocos do tipo Sine Wave e 1 bloco do tipo Sum. O bloco Sine Wave foi usado para representar o sinal de informação e foi configurado com 1 V de amplitude e freqüência 0.5 rad/sec. Já o bloco Sine Wave1 foi usado para representar o sinal de ruído e foi configurado com 0.4 V de amplitude e freqüência 10 rad/sec. A saída do bloco Sum, que é o somador, representa o sinal de entrada. A figura a seguir apresenta o sinal de entrada. Figura 4: Blocos que representam a formação do sinal de entrada. Filtro Digital IIR 10

O Filtro Digital IIR foi projetado para ser do tipo Butterworth, Passa-baixa, com N = 4, Wn = 0.2, e com atenuação na freqüência de corte igual a 6 db. Os coeficientes do numerador e denominador do filtro digital IIR foram determinados utilizando o software MatLab 6.5, conforme já mostrado anteriormente. Com a ajuda do software MatLab 6.5 e sabendo que a função BUTTER oferece os coeficientes do numerador e denominador do filtro digital IIR, foi utilizado o comando [B,A] = BUTTER (4,0.2), obtendo-se os seguintes coeficientes: B (Denominador): [1.0000-2.9754 3.8060-2.5453 0.8811-0.1254]; A (Numerador): [0.0013 0.0064 0.0128 0.0128 0.0064 0.0013]. A função BUTTER no MatLab 6.5 fornece os coeficientes do filtro digital IIR através da metodologia de Butterworth sendo que para a freqüência de corte estabelecida, no caso 0.2 rad/sec, a atenuação é de 6 db. Para demonstrar o funcionamento de um filtro digital IIR Butterworth, tipo Passa-baixa no Simullink versão 5.0, optou-se por trabalhar com o bloco Discrete Transfer Fcn Função de Transferência Discreta. A figura a seguir apresenta os resultados obtidos. Figura 5: Bloco do Filtro Digital IIR adicionado (direita) e seus coeficientes (esquerda). Para completar a implementação do filtro digital, foram adicionados blocos de medição para permitir a visualização conjunta do sinal de entrada e do sinal filtrado. A figura a seguir apresenta o Filtro Digital IIR devidamente implementado no Simulink versão 5.0. 11

Figura 6: Filtro digital IIR implementado. A visualização conjunta do sinal de entrada e do sinal filtrado permite verificar qual foi a ação do filtro IIR, ou seja, no sinal resultante não existe mais o ruído inicial. A figura a seguir apresenta esses sinais, sendo o sinal de entrada na cor amarela e o sinal de saída filtrado na cor vermelha. Filtro Digital FIR Figura 7: Sinais de entrada e saída do filtro IIR. O Filtro Digital FIR foi projetado para ser do tipo Janelamento Hamming, Passa-baixa, com N = 4, Wn = 0.2, e com atenuação na freqüência de corte igual a 6 db. Os coeficientes do numerador do filtro digital FIR foram determinados utilizando o software MatLab 6.5, conforme já mostrado anteriormente. Para a simulação do filtro digital FIR foi utilizado o mesmo sinal de entrada do caso anterior. As definições para o projeto do filtro foram: método por janelamento, janela de Hamming, ordem do filtro igual a 4, 12

freqüência de corte igual a 0.2 rad/sec e atenuação de 6 db. A implementação do filtro digital FIR utilizou os mesmos blocos do caso anterior e adicionou o bloco Digital Filter Design, Zero-Order Hold (discretador) e o Discrete-time Integrator (integrador). O projeto do filtro digital FIR possui freqüência de corte igual a 0.2 rad/sec, sendo que para esta freqüência de corte há uma atenuação de 6 db. Figura 8: Filtro digital FIR implementado. Com todas as especificações do projeto do filtro digital FIR definidas e digitadas, a simulação do filtro produziu o sinal de saída apresentado a seguir, sendo o sinal de entrada na cor amarela e o sinal de saída filtrado na cor vermelha. Figura 9: Sinais de entrada e saída do filtro FIR. 13

Filtro Digital: Simulação do Código VHDL Os códigos descritos em VHDL os quais retratam toda a sistemática de filtragem de ambos os filtros digitais IIR e FIR foram simulados no software Quartus II, sendo seus resultados demonstrados a seguir. Durante a aplicação e simulação dos programas em VHDL expostos e descritos acima, alguns detalhes foram modificados, contudo a maioria dos itens descritos foi mantida. O filtro digital IIR corresponde diretamente aos seus equivalentes analógicos. Uma forma de se implementar esse tipo de filtro é criando sua função de transferência no domínio analógico e depois transformá-la para o domínio da freqüência (z) e depois calcular os coeficientes do filtro. A implementação do filtro IIR pode se dar de várias formas. Assumindo o comportamento linear e invariante no tempo do sistema, as equações diferenciais do filtro podem ser manipuladas matematicamente para obter uma realização com N elementos de memória. Figura 10: Estrutura do filtro digital IIR. Os blocos de atrasos podem ser conseguidos aplicando, nesta estrutura, registradores ou endereços de memórias. As multiplicações devem ser calculadas e endereçadas para que sejam levadas para os somadores. Os somadores existentes devem ser do tipo full-adder com carry de carregamento. Os resultados na saída dos somadores devem convergir para um único somador, sendo que a sua saída deve ser endereçada com o objetivo de direcioná-la para a saída do filtro. Em relação ao filtro digital FIR, para facilitar ainda mais sua aplicação, foi feita uma modificação em sua estrutura interna. Na figura a seguir podemos observar a estrutura interna normal de um filtro digital FIR, composta por registradores, somadores e multiplicadores, os quais são responsáveis pela operação de convolução. Contudo, os coeficientes do filtro são fixos. 14

Figura 11: Estrutura convencional de um filtro digital FIR. Sendo assim, com os coeficientes fixos o filtro digital fica limitado, o que restringe a sua aplicação. A mudança efetuada no filtro projetado é juntamente eliminar esta condição de coeficientes fixos, deixando-os variáveis conforme as componentes do sinal de entrada. Isso quer dizer que, quanto maior for a complexidade do sinal de entrada, maior será a quantidade dos coeficientes do filtro e vice-versa. Quando isto acontece, chamamos esse filtro de filtro adaptativo. A diferença está na possibilidade de alteração automática dos coeficientes durante a operação. Um filtro normal (não adaptativo) executará a mesma função continuamente enquanto não houver uma intervenção externa para modificação dos coeficientes, que devem ser determinados a parte. Um filtro adaptativo, por sua vez, tem a capacidade de calcular os seus coeficientes para a execução de uma função qualquer e, principalmente, modificar esta função dinamicamente, com ou sem intervenção externa (CARRO, 2001). A figura 12 mostra um exemplo de filtro digital FIR Linear Adaptativo com 5 taps. Os taps na verdade são as amostras retiradas do sinal de entrada, que estão devidamente atrasadas umas das outras. No exemplo a seguir, o filtro possui 5 amostras do sinal de entrada. Figura 12: Exemplo de filtro digital FIR adaptativo com 5 taps. A figura a seguir apresenta a Tela do Quartus II mostrando o sucesso na compilação do projeto Filtro digital FIR Linear Adaptativo. 15

Figura 13: Resultado da compilação do Filtro digital FIR Linear Adaptativo. Para o correto funcionamento do filtro foi empregado o endereçamento circular. O nome endereçamento circular deve-se ao fato de que o endereço de memória do dado de entrada aponta para a posição anterior (ou posterior) a cada início de convolução, e os endereços inicial e final são logicamente contínuos (CARRO, 2001). 16

Filtro Digital: Considerações Finais O projeto dos filtros digitais IIR e FIR apresentados neste tutorial, e sua posterior simulação, levaram às seguintes conclusões: 1. Foi possível notar que a estrutura do sinal de saída filtrado do filtro FIR aproxima-se similar do sinal de informação (onda senoidal), em comparação ao sinal de saída do filtro IIR. Isso já era de se esperar, pois uma das características do filtro digital FIR é sua função linear, bem como, o tratamento dado as componentes do sinal de entrada e saída. Sendo assim, o filtro FIR, conforme resultado obtido, foi o que demonstrou melhor desempenho; 2. O desenvolvimento de sistemas digitais de baixa, média e alta complexidade utilizando linguagem de descrição de hardware VHDL, simuladores de VHDL, tal como o software Quartus II, bem como a implementação desses códigos em placas de desenvolvimento com CPD s e FPGA s ficaram mais fáceis em comparação aos processos anteriormente aplicados; 3. A substituição de filtros analógicos por filtros digitais no âmbito de Sistemas de Transmissão é sem sombra de dúvida um dos maiores ganhos para a qualidade da informação; 4.Adicionalmente, pode-se afirmar que existe pouca literatura técnica na área de Microeletrônica, VHDL e estruturas de PLD s. Referências (CARRO, 2001) CARRO, LUIGI. Projeto e prototipação de sistemas digitais. 1 ed. Porto Alegre: Editora Universidade / UFRGS. 2001. (DÉHARBE, 1998) DÉHARBE, DAVID. Apostila de VHDL: nota de aulas. Universidade Federal do Rio Grande do Norte: Departamento de Informática e Matemática Aplicada, 1º Semestre de 1998. (DINIZ, SILVA e NETTO, 2004) DINIZ, PAULO SERGIO RAMIREZ. Processamento Digital de Sinais: projeto e análise de sistemas. Paulo Sergio Ramirez Diniz, Eduardo Antônio Barros da Silva e Sergio Lima Netto. Tradução Luiz Wagner Pereira Biscainho. 1. ed. Porto Alegre: Bookman, 2004. Página 23. (MONTEBELLER, 2005) MONTEBELLER, SIDNEY JOSÉ. Apostila sobre Dispositivo de Lógica Programável. Facens. Departamento de Eletrônica. 2005. (STEVEN, 1999) SMITH, STEVEN W. DSP Guide. 2 ed. San Diego: California Technical Publishing, 1999. (TOCCI e WIDMER, 2000) TOCCI, RONALD J., WIDNER, NEAL S.. Sistemas Digitais: Princípios e aplicações.7 ed. Rio de Janeiro: LTC, 2000. 17

Filtro Digital: Teste seu Entendimento 1. Qual é a função do filtro, seja ele analógico ou digital? Equalizar partes desejadas do sinal, como o ruído, ou partes úteis do sinal, como determinadas componentes de freqüência que estão dentro da faixa de freqüência desse sinal. Equalizar partes não desejadas do sinal, como o ruído, ou partes úteis do sinal, como determinadas componentes de freqüência que estão dentro da faixa de freqüência desse sinal. Remover partes não desejadas do sinal, como o ruído, ou extrair partes úteis do sinal, como determinadas componentes de freqüência que estão dentro da faixa de freqüência desse sinal. Adicionar partes de teste ao sinal, como o ruído, ou partes úteis ao sinal, como determinadas componentes de freqüência que estão dentro da faixa de freqüência desse sinal. 2. Qual a diferença entre o filtro analógico e o filtro digital? O filtro analógico usa circuitos eletrônicos analógicos (componentes discretos) e filtro digital usa um processador digital para executar cálculos numéricos sobre os valores amostrados do sinal de entrada. O filtro analógico usa circuitos integrados e filtro digital componentes discretos para executar cálculos numéricos sobre os valores amostrados do sinal de entrada. O filtro analógico filtra sinais analógicos e o filtro digital filtra sinais digitais. A diferença não está nos filtros, e sim nos sinal filtrados (analógico ou digital). 3. No contexto deste tutorial, o que facilitou o projeto e implementação dos filtros digitais IIR e FIR? Os componentes baseados na tecnologia PLD. A Linguagem de Descrição de Hardware VHDL. Os softwares matemático MatLab e de simulação Simulink. Todos os fatores anteriores. 18