45
Andr´ e Lucas Schlichting Implementa¸c˜oes em VHDL de um Filtro FIR para Controle Ativo de Ru´ ıdo ao Jos´ e – SC Julho / 2012

Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

Embed Size (px)

Citation preview

Page 1: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

Andre Lucas Schlichting

Implementacoes em VHDL de um Filtro

FIR para Controle Ativo de Ruıdo

Sao Jose – SC

Julho / 2012

Page 2: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

Andre Lucas Schlichting

Implementacoes em VHDL de um Filtro

FIR para Controle Ativo de Ruıdo

Monografia apresentada a Coordenacao doCurso Superior de Tecnologia em Sistemasde Telecomunicacoes do Instituto Federalde Santa Catarina para a obtencao do di-ploma de Tecnologo em Sistemas de Teleco-municacoes.

Orientadores:

Prof. Elen Macedo Lobato Merlin, Dra.

Erwin Ofner, Professor Dipl.-Ing.Chi Zhang, MSc

Curso Superior de Tecnologia em Sistemas de TelecomunicacoesInstituto Federal de Santa Catarina

Sao Jose – SC

Julho / 2012

Page 3: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

Monografia sob o tıtulo ”Implementacoes em VHDL de um Filtro FIR para Controle

Ativo de Ruıdo”, defendida por Andre Lucas Schichting e aprovada em 13 de Julho de

2012, em Sao Jose, Santa Catarina, pela banca examinadora assim constituıda:

Prof. Elen Macedo Lobato Merlin, Dra.Orientadora

IFSC

Prof. Marcos Moecke, Dr.IFSC

Prof. Diego da Silva de MedeirosIFSC

Page 4: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

O pessimista queixa-se dos ventos,

o otimista espera que o vento mude,

o realista ajusta as velas.

William A. Ward

Page 5: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

Agradecimentos

Dedico meus sinceros agradecimentos a minha famılia, pelo apoio, suporte e incentivo

as minhas escolhas no ultimo ano.

Agradeco ao Instituto Federal de Santa Catarina e a todos que fizeram parte desta

jornada nos ultimos 4 anos, em especial aos colegas e aos professores.

A coordenadoria de assuntos internacionais por possibilitar, atraves do programa

PROPICIE, a execucao deste trabalho em parceria com a Carinthia University of Ap-

plied Sciences. Fundamental para meu progresso profissional e pessoal.

Page 6: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

Resumo

Este trabalho apresenta a implementacao em hardware VLSI de um filtro FIR paracontrole ativo de ruıdo. E abordado todo o processo de desenvolvimento do filtro bemcomo as simulacoes e resultados de atenuacao para um ruıdo branco simulado. O objetivodo projeto e a implementacao deste filtro utilizando tecnicas de fabricacao de hardwareem silıcio. As implementacoes simuladas neste projeto envolvem o uso de duas estruturasdistintas do filtro. As duas utilizam um conversor AD/DA do tipo Sigma-Delta (Σ∆),sendo diferenciadas pela taxa de trabalho de cada uma. Na primeira o sistema utilizafiltros decimador e interpolador para trabalhar a taxa PCM (44,1KHz) como um sistemamais tradicional. A segunda implementacao utiliza apenas o mesmo modulador Σ∆, semos outros dois filtros, e trabalha a uma taxa de 2,8MHz como processamento de stream debits. Comparando as duas estruturas implementadas, e possıvel ver que os resultados dearea de chip e consumo necessarios para o filtro desenvolvido apresentam valores favoraveisao filtro que utiliza o stream de bits. O projeto foi proposto e orientado pela equipe daCarinthia University of Applied Sciences (Villach - Austria).

Palavras Chave: Controle ativo de ruıdo, processamento de sinais em stream debits

Page 7: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

Abstract

The presented work shows up the hardware VLSI implementation for a FIR filter foractive noise control. Is dealt the whole development process as well as the simulations andattenuation outcomes of a simulated white noise. The goal is the implementation of thisfilter using silicon hardware manufacturing techniques. The implementations simulatedin this design use two different filter structures. Both use a Sigma-Delta (Σ∆) AD/DAconverter but differs in the working rate of each. The first one needs a decimation andinterpolation filter to be able to work at PCM (44,1KHz) rate like a usual process. Thesecond implementation uses only the converter dispensing the other filters from beforeand works at a 2,8MHz rate like a bit stream signal processing. Comparing these twoimplemented structures, It is possible to realize that the chip area and power consumptionvalues necessary for the developed filter are favourable to the bit stream filter. Theproject was proposed and oriented by the the Carinthia University of Applied Sciencesstaff (Villach - Austria).

Keywords: Active noise control, bit stream signal processing

Page 8: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

Sumario

Lista de Figuras

1 Introducao p. 11

1.1 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 12

1.2 Organizacao do texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 12

2 Fundamentacao Teorica p. 14

2.1 Controle Passivo de Ruıdo . . . . . . . . . . . . . . . . . . . . . . . . . p. 14

2.2 Controle Ativo de Ruıdo . . . . . . . . . . . . . . . . . . . . . . . . . . p. 15

2.2.1 Aplicacoes Gerais para ANC . . . . . . . . . . . . . . . . . . . . p. 15

2.3 Sistemas de Controle Ativo de Ruıdo . . . . . . . . . . . . . . . . . . . p. 17

2.3.1 Sistemas Feedforward . . . . . . . . . . . . . . . . . . . . . . . . p. 17

2.3.2 Sistemas Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . p. 18

2.4 Processamento de Sinais Bitstream . . . . . . . . . . . . . . . . . . . . p. 19

2.4.1 Conversor Sigma Delta . . . . . . . . . . . . . . . . . . . . . . . p. 19

2.4.2 Filtro FIR Sigma-Delta . . . . . . . . . . . . . . . . . . . . . . . p. 22

3 Desenvolvimento do Filtro p. 24

3.1 Descricao do Sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 24

3.2 Desenvolvimento do Filtro NC . . . . . . . . . . . . . . . . . . . . . . . p. 27

4 Implementacao em Hardware do Filtro p. 33

4.1 Implementacao em Hardware do filtro NC - PCM . . . . . . . . . . . . p. 33

Page 9: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

4.2 Implementacao em Hardware do Filtro NC - Bit stream . . . . . . . . . p. 39

5 Conclusoes p. 43

Referencias p. 44

Page 10: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

Lista de Figuras

2.1 Sistema feedforward de banda-larga para controle ativo de ruıdo . . . . p. 18

2.2 Sistema feedforward de banda-estreita para controle ativo de ruıdo . . . p. 18

2.3 Sistema feedback para controle ativo de ruıdo . . . . . . . . . . . . . . . p. 19

2.4 Conversor analogico para digital tradicional . . . . . . . . . . . . . . . p. 19

2.5 Conversor digital para analogico tradicional . . . . . . . . . . . . . . . p. 20

2.6 Forma analogica de um modulador Sigma-Delta de primeira ordem . . p. 20

2.7 Saıdas dos componentes de um sinal analogico em um modulador Sigma-

Delta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 21

2.8 O uso do conversor Sigma-Delta para processamento PCM . . . . . . . p. 22

2.9 O uso do conversor Sigma-Delta para processamento Bitstream . . . . . p. 22

2.10 Estrutura tradicional de um filtro FIR . . . . . . . . . . . . . . . . . . p. 23

2.11 Estrutura de um filtro FIR adaptada para processamento Bitstream . . p. 23

3.1 Exemplo de como o sistema pode ser implementado . . . . . . . . . . . p. 24

3.2 Diagrama de implementacao do sistema . . . . . . . . . . . . . . . . . . p. 25

3.3 Magnitude da Resposta em frequencia para AE (HAE) em dB. Fonte:

Sonaptics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 25

3.4 Magnitude da Resposta em frequencia para AM (HAM) em dB. Fonte:

Sonaptics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 26

3.5 Magnitude da Resposta em frequencia para DE (HDE) em dB. Fonte:

Sonaptics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 26

3.6 Resposta em frequencia do bloco NC (HA) . . . . . . . . . . . . . . . . p. 28

3.7 Atenuacao media alcancada para filtros com alta ordem . . . . . . . . . p. 29

Page 11: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

3.8 Problema de casamento entre o filtro desejado e obtido. Frequencia em

rad. e ganho linear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 31

3.9 Separacao da forma original do filtro NC em um filtro passa-altas e um

passa-baixas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 31

4.1 Saıda do filtro NC simulado e analisado no Matlab. O filtro VHDL deve

ter resultado equivalente a este. Amostras no eixo x e Amplitude no eixo y p. 36

4.2 Saıda do filtro NC VHDL simulado no MODELSIM e analisado no MA-

TLAB. Amostras no eixo x e Amplitude no eixo y . . . . . . . . . . . . p. 36

4.3 Apresentacao do resultado do leiaute do circuito no Encounter . . . . . p. 38

4.4 Circuito modelo equivalente para uma transicao 0 para 1 (RABAEY;

CHANDRAKASAN; NIKOLIC, 2003) . . . . . . . . . . . . . . . . . . . . . p. 39

4.5 Esquema para simulacao RTL do filtro ANC Bitstream . . . . . . . . . p. 41

Page 12: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

11

1 Introducao

As solucoes em controle de ruıdo comecaram a aparecer para amenizar os problemas

causados por ele. Seja ele interferindo em outros sistemas, como maquinas e motores, seja

como uma alternativa para aumentar o nıvel de conforto em algum local. As primeiras

solucoes envolviam tecnicas passivas de controle. A mais comum delas, utilizada ampla-

mente ate hoje, e o uso de tubos silenciadores, como os presentes em armas de fogo e

dutos de ar. No entanto, as limitacaos e incoveniencias desses equipamentos, as vezes, sao

problematicos para serem implantados, pois seu resultado depende de pecas especıficas

(como tubos silenciadores) e suas dimensoes podem ser incovenientes.

O controle ativo de ruıdo surge como uma maneira de suprir essas lacunas deixadas

por sistemas passivos de controle com seus metodos tradicionais, sendo a principal lacuna

e a atenuacao de ruıdo apenas em altas frequencias. Para frequencias mais baixas, se-

riam necessarias pecas de tamanho inversamente proporcional a frequencia que se deseja

atenuar em um sinal. Outra vantagem e a flexibilidade em se manejar um sistema de

controle ativo, muitas vezes de tamanho irrisorio comparado ao tradicional.

O controle ativo teoricamente e obtido inserindo no ambiente um sinal identico ao

ruıdo, de mesma amplitude porem defasado em 180o, atraves da superposicao das ondas. E

possıvel implementa-lo atraves de filtros analogicos ou digitais. Este trabalho de conclusao

de curso (TCC) utiliza sistemas digitais para planejar e desenvolver um sistema de controle

ativo de ruıdo. Os sistemas digitais que implementam filtros, evoluiram com o passar dos

anos, desde as primeiras pesquisas e patentes na area de controle, e acompanharam o

crescimento da industria de semicondutores e circuitos em geral.

No caso de aplicacoes que envolvam a conversao de um sinal de audio entre analogico

digital e vice-versa, e comum a utilizacao de conversores do tipo Sigma-Delta para essas

conversoes. Esses conversores possuem como caracterıstica principal uma saıda digital de

um unico bit por amostra (bit stream).

Page 13: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

1.1 Objetivos 12

1.1 Objetivos

Este TCC foi resultado do programa de intercambio PROPICIE do IFSC, planejado e

executado na Carinthia University of Applied Sciences (CUAS) em Villach, Austria. Faz

parte de um projeto maior em andamento na instituicao e tem como objetivo principal

desenvolver e comparar diferentes estruturas de hardware de um filtro FIR (Resposta ao

Impulso Finita) para um sistema de controle ativo de ruıdo.

Este mesmo filtro, desenvolvido no Matlab, pode ser futuramente implementado em

hardware (VLSI) atraves de duas estruturas de filtro diferentes e independentes entre si

desenvolvidas durante o trabalho. A primeira delas trata-se de um sistema tradicional

que trabalha a taxa de 44,1KHz (PCM). A segunda faz o uso das caracterısticas de

um modulador Sigma-Delta para implementar o filtro a uma taxa superamostrada de

aproximadamente 2,8MHz, esse processo e conhecido como processamento de sinal em

stream de bits.

Como resultados, devem-se obter valores de area e consumo de energia no circuito do

filtro para ambas as estruturas. Isso servira para dar uma nocao geral de quanto se pode

economizar de hardware.

1.2 Organizacao do texto

O texto esta dividido em Introducao, 3 Capıtulos de conteudo, Conclusoes e Re-

ferencias Bibliograficas.

O Capıtulo 1 e a Introducao deste documento. O Capıtulo 2 trata da teoria basica

sobre sistemas de controle de ruıdo, conceitos e classificacoes. A descricao do sistema

e tecnicas de conversao de sinais analogicos para digitais representados por um bit por

amostra. Tambem trata da nocao geral de implementacao de filtros FIR utilizando esse

tipo de sinal.

O capıtulo 3 envolve a descricao do sistema utilizado para o desenvolvimento do

filtro, seu desenvolvimento no Matlab, e o resultado da atenuacao obtido com este filtro

nas simulacoes.

O Capıtulo 5 mostra as duas implementacoes em hardware do filtro desenvolvido, PCM

e stream de bits, e aborda tambem os resultados em area e consumo correspondentes.

Em seguida mostra-se as conclusoes referentes ao objetivo do trabalho comparando os

Page 14: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

1.2 Organizacao do texto 13

resultados obtidos no Capıtulo 5.

Page 15: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

14

2 Fundamentacao Teorica

Este capıtulo trata da fundamentacao teorica sobre sistemas de controle de ruıdo e

posteriormente faz uma breve introducao sobre a tecnica de processamento de sinais de

stream de bits, utilizando um modulador do tipo sigma-delta. Alem disso, mostra como

implementar a estrutura de um filtro FIR para essa tecnica.

2.1 Controle Passivo de Ruıdo

Em ambientes industriais, o uso de equipamentos em larga escala tornou-se indis-

pensaveis para manter a producao em ritmo acelerado. No entanto, o seu uso tornou

evidente os problemas relacionados a problemas acusticos. Normalmente, esses problemas

sao originados de motores, transformadores, dutos de ar, sistemas de exaustao e compres-

sores (KUO; MORGAN, 1995). Os problemas de ruıdo acustico nao estao limitados apenas

ao ar. Vibracoes mecanicas, alem das geradas pelo ruıdo em si, ruıdos hidro-acusticos e

ruıdos gerados por equipamentos medicos tambem estao presentes ao redor.

As tecnicas mais tradicionais para controle de ruıdo utilizam de ferramentas passivas

para tal fim. Elas incluem gabinetes planejados, barreiras acusticas e silenciadores (KUO;

MORGAN, 1995) para atenuar determinado ruıdo. Essas ferramentas se aproveitam das

caracterısticas de propagacao do som no ar para funcionar. Os silenciadores passivos

utilizam o conceito da mudanca de impedancia causada pela combinacao de defletores

e tubos (silenciadores reativos) ou atuam como intensificadores de perda de energia de

propagacao do som (silenciadores resistivos).

Os silenciadores passivos, por exemplo, sao amplamente utilizados em motores de com-

bustao e sao caracterizados pela grande atenuacao em uma larga banda de frequencias.

No entanto, para algumas aplicacoes as dimensoes desses componentes, bem como peso

e custo, tornam seu uso inviavel. A atenuacao e baixa quando o comprimento de onda e

maior que as dimensoes do silenciador, isso dificulta a atenuacao de baixas frequencias.

Page 16: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

2.2 Controle Ativo de Ruıdo 15

Frequencias estas que sao consideradas estressantes apos certo perıodo de exposicao cau-

sando fadiga e perda de concentracao (KUO; MORGAN, 1995).

2.2 Controle Ativo de Ruıdo

Para resolver os problemas citados na Secao 2.1, passou-se a dar grande destaque ao

controle ativo de ruıdo (ANC - Active Noise Control). O ANC adiciona uma segunda

fonte de ruıdo baseado no ruıdo gerado pela fonte para gerar uma segunda onda acustica

capaz de anular a primeira. Esse sinal, chamado de anti-ruıdo, sera responsavel pela

atenuacao do ruıdo ambiente atraves do princıpio de superposicao e sua eficiencia esta

ligada diretamente as caracterısticas e precisao do sistema gerado. A principal vantagem

do ANC e sua capacidade de atenuar baixas frequencias sem ser um sistema caro ou

volumoso como os silenciadores passivos.

(KUO; MORGAN, 1995) afirma que o ANC deve ser fundamentalmente adaptativo, isto

significa que o sistema sera capaz de se adaptar a um ambiente dinamico e sempre ter

a melhor resposta possıvel dentro de suas limitacoes. Porem, a proposta deste trabalho

nao e desenvolver um sistema adaptativo e sim um sistema mais simples para comparar

duas estruturas diferentes, uma vez que um ambiente industrial, por exemplo, em certas

condicoes, como em salas de maquinas e sem a presenca de pessoas, o funcionamento

ininterrupto de maquinario mantera as caracterısticas do ambiente estaveis.

O desenvolvimento de um sistema para ANC envolve o estudo de alguns componentes

necessarios. Entre eles esta o microfone utilizado para capturar o ruıdo ambiente, o

sistema eletronico principal do sistema e o auto-falante utilizado (KUO; MORGAN, 1995),

alem das caracterısticas do ambiente que sera alvo do estudo. E desejavel que este sistema

seja digital, em que os sinais acusticos correspondentes ao ruıdo sejam amostrados e

processados utilizando de tecnicas de processamento digital de sinais e devido a natureza

do estudo, este sistema deve ser rapido e preciso o suficiente para executar as operacoes

necessarias da aplicacao. No entanto, a combinacao de componentes ativos e passivos

para controle de ruıdo sao a melhor forma de se alcancar os resultados desejados.

2.2.1 Aplicacoes Gerais para ANC

Algumas aplicacoes especıficas de ANC sao:

• Automoveis - Turbulencia externa; Sistema de Combustao do veıculo;

Page 17: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

2.2 Controle Ativo de Ruıdo 16

• Motores e maquinario em geral - Sistemas de ar condicionado e dutos de ar; Motores

de compressao; Eletrodomesticos em geral;

• Industrias - Exaustores; Dutos de ar; Transformadores; Bombas; Protetores de ore-

lha;

• Transporte de grande porte - Avioes; Barcos; Helicopteros; Trens;

Do ponto de vista geometrico, o ANC acustico e dividido em quatro categorias (KUO;

MORGAN, 1995):

1. Ruıdo proveniente de dutos (unidimensional)

Tem aplicacao direta em dutos de ar e e usado principalmente em industrias em

sistemas de calefacao e ar condicionado, alem de lugares com ambiente similar.

Devido a natureza do local, o sistema deve ser capaz de lidar com a variacao de

temperatura dos dutos. As frequencias alvo desses sistemas sao as baixas, por esse

motivo, o ANC tende a ser mais barato e simples de implementar comparando ao

controle passivo.

2. Ruıdo em espacos fechados

Neste caso, deve-se analisar se a fonte do ruıdo e interna ou externa para o correto

posicionamento dos microfones. Se a fonte estiver dentro do espaco, o microfone deve

ser colocado proximo a fonte. Caso a fonte seja externa, como e o caso de avioes, os

microfones devem ser posicionados dentro da aeronave de maneira cuidadosa, uma

vez que a distribuicao espacial do som nao interfira nos sons internos da cabine.

3. Ruıdo em espacos abertos

Funcionam como barreiras acusticas para evitar que o ruıdo indesejado se espalhe

para outras areas que nao seja ao redor da fonte. Pode ser utilizado em canteiros

de obras proximos a areas residenciais.

4. Protecao auricular pessoal

E considerada a situacao para ANC mais usual e compreende a distancia entre um

fone de ouvido e o sistema auditivo. Considerando um fone de ouvido do modelo

supra-auricular, que cobre toda a extensao externa da orelha, os sistemas de ANC

sao capazes de atenuar baixas frequencias enquanto a ”concha”do aparelho consegue

atenuar as altas frequencias com o material com o qual e fabricado. Neles o audio

Page 18: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

2.3 Sistemas de Controle Ativo de Ruıdo 17

desejado e somado ao anti-ruıdo gerado pelo sistema e enviado ao mesmo auto-

falante, ja que as baixas frequencias do ambiente ainda podem ser ouvidas.

Os sistemas hidro-acusticos e ruıdos provenientes de vibracao mecanica incluem um

outro campo de pesquisa que nao fazem parte deste trabalho.

2.3 Sistemas de Controle Ativo de Ruıdo

Existem dois tipos de ruıdo no ambiente, ruıdo banda-larga e ruıdo banda-estreita. O

banda-larga e causado, por exemplo, por turbulencia e e totalmente randomico, portanto

tem uma distribuicao uniforme em frequencia. O ruıdo banda-estreita concentra-se em

frequencias especıficas. Ele tende a ser periodico ou quase-periodico e normalmente e

causado por maquinas.

O ANC em banda-larga necessita a presenca de um microfone que forneca uma boa

aproximacao do ruıdo da fonte para o sistema. Ja os sistemas para banda-estreita, devido

a sua caracterıstica de periodicidade, podem possuir sensores que fornecem informacao

sobre o ruıdo. Uma vez que conhecido o perıodo, pode-se usar um sistema independente

para gerar o anti-ruıdo naquelas frequencias especıficas.

O controle ativo de ruıdo pode ser diferenciado como dois tipos de sistemas diferentes,

baseados no tipo de alimentacao da fonte do ruıdo: feedforward e feedback.

2.3.1 Sistemas Feedforward

Nos sistemas feedforward ha a presenca de um microfone ou um sensor posicionados

antes do auto-falante. Esse sensor e responsavel por captar o ruıdo a ser atenuado. Eles

podem ser separados em dois sistemas distintos (KUO; MORGAN, 1995): feedforward de

banda-larga, utilizado para este TCC, e feedforward de banda-estreita.

No sistema de banda-larga, Figura 2.1, o ruıdo indesejado (ruıdo primario) represen-

tado por x(n) e captado por um microfone e utilizado como referencia para o sistema

representado pelo bloco ANC. Este bloco gera o anti-ruıdo representado por y(n) e o en-

via para o autofalante. Com a sobreposicao das fases dos dois ruıdos, tem-se a atenuacao

do indesejado.

Os sistemas feedforward de banda-estreita, Figura 2.2 utiliza um sensor que capta

informacoes especıficas do ruıdo. Essas informacoes sao interpretadas por um gerador de

Page 19: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

2.3 Sistemas de Controle Ativo de Ruıdo 18

Figura 2.1: Sistema feedforward de banda-larga para controle ativo de ruıdo

sinal, como por exemplo as frequencias de ressonancia, e os resultados (x(n)) sao levados

ao gerador de anti-ruıdo (bloco ANC). Como no sistema anterior, o anti-ruıdo (y(n))

alimenta um auto-falante para obter a atenuacao do ruıdo indesejado.

Figura 2.2: Sistema feedforward de banda-estreita para controle ativo de ruıdo

Para o ANC obter resultados deve-se atentar para dois fatores muito importantes,

a velocidade do sistema e a posicao do auto-falante em relacao ao microfone. Isso e

necessario para o melhor casamento de fase possıvel seja alcancado. Tomando como

exemplo o ar como meio de propagacao do som e desconsiderando fatores como pressao

e temperatura, a velocidade do som e constante. Deve-se planejar o sistema para que

capture, processe e reproduza o anti-ruıdo em tempo equivalente ao que o mesmo ruıdo

capturado atinja a posicao do auto-falante. Isso evitara que o ruıdo capturado seja ouvido

antes do anti-ruıdo, sendo este agora mais um incomodo indesejado. Esse pensamento

sera retomado novamente durante o desenvolvimento pratico do sistema.

2.3.2 Sistemas Feedback

Nos sistemas feedback, diferentemente do sistema descrito na Secao 2.3.1, nao ha um

microfone ou um sensor para capturar o ruıdo da fonte, processa-lo e enviar um sinal

para um auto-falante. Neste caso a captacao fica como descrito pela Figura 2.3, sendo

capturado o ruıdo residual e(n) que serve como alimentador do bloco ANC que tem o

trabalho de estimar antecipadamente o ruıdo com base no seu proprio desempenho. Por

esse motivo esse sistema pode ocasionar em menores atenuacoes devido a relacao entre

as mudancas das caracterısticas estatısticas do ruıdo da fonte e o tempo de adaptacao do

Page 20: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

2.4 Processamento de Sinais Bitstream 19

sistema (KUO; MORGAN, 1995).

Figura 2.3: Sistema feedback para controle ativo de ruıdo

2.4 Processamento de Sinais Bitstream

O processamento de sinais em stream (fluxo) de bits, quando utilizado junto a um mo-

dulador sigma-delta pode servir para economizar recursos de hardware totais necessarios

para a implementacao de um sistema. Esta secao mostra a utilizacao de um modulador

deste tipo na conversao analogico-digital e digital-analogico de um sinal e mostra como

e possıvel suprimir o uso de filtros interpoladores e decimadores, que servem para a uti-

lizacao do conversor para processamento PCM, para efetuar o processamento de um sinal

representado por apenas um bit por amostra.

2.4.1 Conversor Sigma Delta

A conversao de sinais analogicos em digitais existe para que sinais reais, como o som,

possam ser interpretados e trabalhados por sistemas digitais, como computadores e chips,

e sejam devolvidos posteriormente para o ambiente. Um sinal para se tornar digital passa

basicamente por dois processos chamados de amostragem, quantizacao e codificacao.

A amostragem de um sinal serve para capturar e armazenar periodicamente um valor

instantaneo de um sinal analogico. A tecnica mais comum e o sample and hold. Apos a ar-

mazenagem destes valores, eles sao convertidos para a forma binaria atraves da codificacao

seguindo e respeitando diversos parametros do processo.

Figura 2.4: Conversor analogico para digital tradicional

Os processos de conversao analogico para digital (ADC), exemplificado na Figura s

2.4, normalmente resulta em um sinal multibit, ou seja, cada grupo de N bits representa

Page 21: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

2.4 Processamento de Sinais Bitstream 20

Figura 2.5: Conversor digital para analogico tradicional

uma amostra do sinal analogico. Porem, esta e apenas uma das classes de conversores

existentes (SMITH, 2003). Neste projeto foi utilizada uma classe muito comum para a

conversao de audio e em sistemas de telecomunicacoes, esta classe utiliza frequencias

de amostragem super elevadas e resultam em um sinal digital de apenas um bit para

representar cada amostra. Essa classe de conversor pode ser implementada com diversos

circuitos, no entanto, o mais comum deles e o modulador sigma delta (Sigma-Delta),

exemplificado na Figura 2.6. Os sinais internos em um modulador sigma delta podem ser

vistos na Figura 2.7.

O funcionamento de um modulador sigma-delta de primeira ordem, mostrado na

Figura 2.6, comeca quando amostras do sinal analogico sao tomadas a uma taxa muito

elevada (64 x 44,1kHz = 2,8MHz). Cada uma dessas amostras e subtraıda com a saıda de

um conversor DA de um bit que possui um valor de referencia (+VF) fixo. O resultado

e levado a um integrador que soma a entrada com o seu valor anterior armazenado,

guardando em seguida o novo valor para os proximos ciclos. A saıda do integrador e

comparada com o valor zero. Se for maior ou igual, a saıda do conversor sera o bit 1 e

o valor do conversor DA sera seu valor de referencia . Caso seja menor que zero, a saıda

do conversor tera o bit 0 e a saıda do conversor DA tera -VF. Esse processo se repete

para cada amostra do sinal analogico, gerando em cada ciclo um unico bit por amostra

na saıda do conversor.

Figura 2.6: Forma analogica de um modulador Sigma-Delta de primeira ordem

Um modulador Sigma-Delta, assim como os conversores tradicionais, possui um ruıdo

de quantizacao. Uma das vantagens do modulador e possuir uma relacao sinal ruıdo

Page 22: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

2.4 Processamento de Sinais Bitstream 21

Figura 2.7: Saıdas dos componentes de um sinal analogico em um moduladorSigma-Delta

melhor, pois nele, a banda do sinal sera muito pequena comparada a banda do sistema.

Por exemplo, um sinal de audio com banda de 20kHz e superamostrado pelo modulador a

uma taxa R=64xfs=44,1kHz (2,8MHz). A banda total do sinal convertido sera de 1,4MHz,

no entanto a parte importante do sinal continuara na banda ate 20kHz. Desta maneira,

o ruıdo total do sistema estara espalhado por uma banda muito maior comparado a um

sistema utilizando a taxa PCM, que teria, comumente, um clock entre 44kHz e 48kHz.

Outra maneira de reduzir este ruıdo, e aumentar a ordem do modulador Sigma-Delta que

no caso deste projeto e 3 (WANG et al., 2010).

E importante destacar que o modulador Sigma-Delta e apenas parte do conversor.

Como a maioria dos sistemas trabalha com taxas proximas a taxa de Nyquist (PCM),

e a saıda de um modulador Sigma-Delta esta superamostrada, e necessario reduzir esta

taxa. Para isso, utiliza-se um filtro de decimacao. No processo contrario, utiliza-se um

filtro interpolador para novamente superamostrar o sinal e converte-lo novamente para um

sinal analogico. O conversor AD/DA Sigma-Delta compreende o uso destes dois filtros

(ZOELZER; AMATRIAIN, 2002).

O conversor utilizado no sistema deste projeto foi um conversor Sigma-Delta de ter-

ceira ordem (WANG et al., 2010) e os filtros interpolador e decimador possuem tambem

20 bits. Para utilizar o filtro NC descrito no capıtulo 3 e necessario o uso dos filtros

interpolador e decimador para que se possa trabalhar na taxa de 44,1kHz. Entretanto,

em algumas aplicacoes e possıvel efetuar o processamento de sinais (filtro NC, no caso)

diretamente no domınio superamostrado, utilizando apenas um bit por amostra do sinal.

Essa tecnica e chamada de processamento de sinais em Bitstream (stream de bits). Um

comparativo de como funciona os dois sistemas, processamento PCM e Bitstream super-

Page 23: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

2.4 Processamento de Sinais Bitstream 22

mostrado em uma taxa R, pode ser visto nas Figura s 2.8 e 2.9. O processamento de sinais

Bitstream pode resultar em sinais multibit, isso sera visto na Secao 2.4.2 e e resolvido

por um circuito chamado sigma delta Loop, que reduz o sinal novamente para um bit por

amostra (ZOELZER; AMATRIAIN, 2002).

Figura 2.8: O uso do conversor Sigma-Delta para processamento PCM

Figura 2.9: O uso do conversor Sigma-Delta para processamento Bitstream

2.4.2 Filtro FIR Sigma-Delta

Diferentemente dos filtros FIR usuais, a entrada de um filtro FIR Sigma-Delta faz

com que a estrutura do filtro tenha que ser adaptada. Considerando a estrutura basica

de um filtro FIR tradicional demonstrada na Figura 2.10, a estrutura de um filtro FIR

Sigma-Delta, com as adaptacoes devidas e representada pela Figura 2.11. A principal

diferenca entre os dois filtros, PCM e Bitstream e a frequencia de operacao. Uma vez

que o filtro PCM trabalha com frequencias mais baixas, os filtros Bitstream, de mesmo

proposito, trabalham em frequencias muito altas, no caso deste projeto, 64 vezes maior

que a do projeto em PCM.

A entrada de um filtro Sigma-Delta e um sinal de apenas um bit por ciclo de clock. Os

multiplicadores sao substituıdos por ”multiplexadores”que selecionam os coeficientes entre

bi e -bi dependendo da entrada 0 ou 1. E importante lembrar que estes coeficientes sao

exatamente os mesmos do filtro PCM. A interpolacao por um fator de superamostragem

de R e atingida substituindo o operador z−1 por z−R. (ZOELZER; AMATRIAIN, 2002). Para

este TCC, utiliza-se uma taxa de superamostragem de R=64. Os valores dos coeficientes

determinam o tamanho do vetor do sinal de saıda, por exemplo, se o maior coeficiente for

representado por 9 bits, como no caso deste projeto, a saıda do filtro tambem sera um

Page 24: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

2.4 Processamento de Sinais Bitstream 23

Figura 2.10: Estrutura tradicional de um filtro FIR

Figura 2.11: Estrutura de um filtro FIR adaptada para processamento Bitstream

sinal com 9 bits. Para ajustar esse numero novamente para um sinal de um unico bit antes

da conversao DA, existe um processo chamado sigma delta loop (ZOELZER; AMATRIAIN,

2002).

Page 25: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

24

3 Desenvolvimento do Filtro

3.1 Descricao do Sistema

Para a implementacao dos filtros para ANC deste projeto, um sistema, descrito pela

Figura 3.1, e apresentado em uma versao simplificada para uma possıvel aplicacao real.

Figura 3.1: Exemplo de como o sistema pode ser implementado

Na Figura 3.2, tem-se o diagrama em blocos de implementacao do sistema, em que ha

os quatro blocos principais descritos pelas siglas AE (Ambient-to-Ear - Ambiente-Ouvido),

AM (Ambient-to-microphone - Ambiente-Microfone), NC (Noise Control - Controle de

Ruıdo) e DE (Driver-to-Ear - Auto-Falante-Ouvido. Cada um desses blocos representa

uma funcao de transferencia de um sistema independente descritos a seguir.

O bloco AE corresponde ao primeiro caminho de um sistema de controle ativo de

ruıdo (KUO; MORGAN, 1995), o caminho fısico, ou seja, o caminho direto entre a fonte e o

ouvido. HAE representa as caracterısticas em frequencia do ambiente como foram medidas.

A magnitude (em dB) de HAE e mostrada pela Figura 3.3. AM, NC e DE representam

Page 26: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

3.1 Descricao do Sistema 25

Figura 3.2: Diagrama de implementacao do sistema

o segundo caminho de um sistema de controle ativo de ruıdo (KUO; MORGAN, 1995), o

caminho mecanico-eletrico-mecanico. Os blocos AM e DE possuem caracterısticas fixas

em frequencia, pois sao produtos comerciais, representados por HAM e HDE, mostrados

nas Figura s 3.4 e 3.5, respectivamente. Portanto, o objetivo do projeto e calcular e

implementar o bloco NC para compensar todos os outros blocos e tornar o ruıdo residual

o mais baixo possıvel (ZHANG, 2011). A resposta em frequencia do bloco desenvolvido,

NC, e chamada de HA.

Figura 3.3: Magnitude da Resposta em frequencia para AE (HAE) em dB. Fonte:Sonaptics

Neste projeto, as frequencias do ambiente maiores a 2KHz podem ser atenuadas com

o material de fabricacao do fone de ouvido. Entao, a primeira preocupacao do projeto foi

atenuar e analisar o desempenho do sistema para frequencias entre 10 e 2kHz.

As fases e amplitudes, mostradas nas Figura s 3.3, 3.4 e 3.5, foram resultados de

medicoes feitas pela empresa Sonaptic 1, utilizando um manequim e um sistema especial

de medicao em um ambiente especıfico e controlado (ZHANG, 2011). O filtro ANC sera

1http://www.sonaptic.com

Page 27: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

3.1 Descricao do Sistema 26

Figura 3.4: Magnitude da Resposta em frequencia para AM (HAM) em dB. Fonte:Sonaptics

Figura 3.5: Magnitude da Resposta em frequencia para DE (HDE) em dB. Fonte:Sonaptics

Page 28: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

3.2 Desenvolvimento do Filtro NC 27

tratado como NC a partir de agora.

3.2 Desenvolvimento do Filtro NC

Deseja-se que o ruıdo do primeiro caminho seja atenuado. Logo, para gerar um anti-

ruıdo igual ao original, os sinais do primeiro e segundo caminho devem ser identicos, assim,

havera cancelamento total e o ruıdo residual sera nulo. Considerando que as magnitudes

da resposta em frequencia (em dB) dos sistemas AE, AM e DE sao fixas e devem ser

compensadas pelo sistema NC, pode-se chegar a HA, Equacao3.2, balanceando os dois

caminhos, entao:

HAE = HAM +HA +HDE (3.1)

isolando para obter HA temos:

HA = HAE −HAM −HDE (3.2)

Para o inıcio do desenvolvimento do filtro de compensacao correspondente ao bloco

NC, um total de 21 pontos2 de frequencias entre 10 e 2kHz sao escolhidas em todos os

outros blocos baseando-se nas frequencias que se deseja atenuar. Intervalos de 10Hz entre

DC e 100Hz e intervalos de 100Hz ate aproximadamente 2kHz. Alem disso, atribuiu-se o

valor da magnitude referente a 10Hz para DC e para a frequencia maxima do sinal a mag-

nitude da frequencia de 2500Hz. Isso e valido pois nao e indiferente analisar frequencias

maiores que 2kHz no sistema. Cada um desses pontos escolhidos junto ao ganho corres-

pondente, equacionadas de maneira correta fornecem a resposta em frequencia necessaria

para o bloco NC ser desenvolvido.

Como o objetivo maior do projeto e comparar recursos de hardware necessarios entre

diferentes estruturas de filtros e nao analisar o desempenho fısico e mecanico para o

casamento de fases entre o ruıdo e o anti-ruıdo, os coeficientes do filtro gerado foram

projetados assumindo que os dois sinais estejam sempre em fase. Em simulacoes e possıvel

calcular o ruıdo residual atraves da operacao de subtracao, o que nao funciona na pratica.

Nesse caso deve ser implementado um inversor de fase de 180 graus para o sinal do

segundo caminho. Optou-se por seguir esse caminho, pois a forma do filtro nesse caso e

210Hz, 20Hz, 30Hz, 40Hz, 50Hz, 60Hz, 70Hz, 80Hz, 90Hz, 100Hz, 200Hz, 300Hz, 400Hz, 500Hz, 600Hz,700Hz, 800Hz, 900Hz,1000Hz,2000Hz e 2500Hz

Page 29: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

3.2 Desenvolvimento do Filtro NC 28

mais simples de ser implementada.

Com a resposta em frequencia do filtro de compensacao, os coeficientes do filtro cor-

respondente pode ser calculado atraves da funcao fir2 do MATLAB3 baseado na forma

de HA, Figura 3.6. Essa funcao faz o calculo dos coeficientes de um filtro FIR de ordem

desejada, baseado no metodo da amostragem em frequencia (SHENOI, 2006).

Figura 3.6: Resposta em frequencia do bloco NC (HA)

Com os coeficientes do filtro calculados, decidiu-se por utilizar ruıdo branco limitado

em frequencia para simular o desempenho do filtro. Foram analisados os sinais do pri-

meiro e segundo caminho tanto no domınio do tempo quanto no domınio da frequencia

na banda de atenuacao desejada (10Hz-2kHz). Nas simulacoes, os blocos AE, AM e DE

foram implementados da mesma maneira que o bloco NC, gerando filtros FIR, no en-

tando, de ordem muito elevada (�5000) para obter o resultado mais proximo das funcoes

transferencias HAE, HAM e HDE que se possuıa.

A primeira simulacao realizada foi feita sem considerar um item muito importante

citado no Capıtulo 2, o tempo necessario para o processamento digital em comparacao

com a velocidade do som, porem serviu para montar o cenario de simulacoes, mostrar

como os resultados poderiam ser se nao houvesse essa restricao.

As simulacoes ocorreram da seguinte forma:

1. Geracao do ruıdo: O ruıdo branco R, era gerado no domınio do tempo;

2. Filtragem pelo bloco AE: O ruıdo R era convolvido com os coeficientes do filtro

3http://www.mathworks.com/

Page 30: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

3.2 Desenvolvimento do Filtro NC 29

correspondente ao bloco AE com ordem muito elevada, o resultado era salvo como

P1 ;

3. Filtragem pelo bloco AM, NC e DE: O mesmo ruıdo R era convolvido com os

coeficientes do filtro correspondente ao bloco AM, seu resultado convolvido com o

filtro NC e o mesmo ocorrendo com o filtro DE, o resultado salvo como P2 ;

4. Sobreposicao e analise: Os resultados finais dos dois caminhos, P1 e P2 eram

analisados e sobrepostos para analise do ruıdo residual e o resultado era arquivado.

No segundo caminho, todos os subprodutos de cada bloco tambem ficavam salvos caso

necessario para visualizacao. As transformacoes dos sinais para o domınio da frequencia

foram feitos utilizando-se da transformada de Fourier (LATHI, 2007).

A frequencia de trabalho do sistema e de 44,1kHz, pois representa uma faixa que ja

se consolidou tradicional para trabalhos com audio. Sem restricoes de tempo de processa-

mento, pode-se observar na Figura 3.7 que a atenuacao media (eixo vertical) entre 10Hz

e 2kHz obtida, alcanca a casa de 30dB dependendo da quantidade de bits de quantizacao

e da ordem do filtro (eixo horizontal). A Figura mostra ordens que variam de 20 ate 900

para o mesmo filtro, quantizado de 8 a 20 bits.

Figura 3.7: Atenuacao media alcancada para filtros com alta ordem

Considerando um caso mais realıstico e analisando as limitacoes fisicas e tambem as

eletronicas do sistema, deve-se achar um valor maximo para a ordem do filtro NC. Para

isso, considera-se tres fatores:

• Frequencia do sistema;

Page 31: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

3.2 Desenvolvimento do Filtro NC 30

• Distancia entre o microfone e o auto-falante (caminho eletrico e digital);

• Velocidade de propagacao do som.

Sendo a frequencia do sistema igual a 44,1kHz e a velocidade de propagacao do som

no ar de 340m/s, calcula-se que o tempo de propagacao para uma distancia de 3cm

aproximadamente (distancia arbitrada entre o microfone e o auto-falante) seja de 176µs.

Entao, considerando a taxa do sistema, para evitar o maximo possıvel de atraso entre os

sinais dos dois caminhos pode-se estimar a ordem maxima do filtro como sendo 8.

Dessa forma, tem-se a limitacao para o desenvolvimento do filtro, sua ordem deve ser

igual a 8. Isso forcara com que o ruıdo captado chegue na mesma posicao do auto-falante

quando ele ja tiver sido processado e funcione como um anti-ruıdo, chegado aos resultados

desejados4.

Como os resultados mostrados na Figura 3.7 nao podem mais ser considerados, o

programa escrito no MATLAB para gerar os coeficientes do filtro foi alterado para rodar

o comando fir2 com ordem 8. Apos essa alteracao, antes de analisar o desempenho do

filtro, verificou-se que com tal ordem o filtro gerado pela funcao nao era capaz de se

aproximar do formato do filtro original (Figura 3.6). Para exemplificar, a Figura 3.8

mostra o formato do filtro gerado pelo MATLAB quando com ordem 100. Neste caso,

ja e possıvel notar que as baixas frequencias do formato do filtro original (entre 10Hz e

40Hz) nao estao correspondendo. Como sabe-se que a ordem do filtro esta diretamente

relacionada ao casamento entre o formato original (desejado) e o desenvolvido pela funcao

fir2 observou-se que ordem tao baixa, mesmo sendo a maxima permitida pelo sistema,

deveria ser analisada mais detalhadamente.

O formato do filtro calculado pela funcao fir2 era praticamente uma resposta plana

em todo o espectro comparando com o formato original (SCHLICHTING, 2012) quando com

ordem 8. Observando isso, duas alternativas foram buscadas para solucionar o problema.

Alem de outras alternativas testadas para desenvolver o filtro, a solucao encontrada para

o problema do casamento foi separar o filtro em dois sub-sistemas e observar seu compor-

tamento.

Ao dividir o filtro em um filtro passa-altas e um passa-baixas (SHENOI, 2006), e ne-

cessario respeitar a limitacao da ordem imposta pelo sistema. Dessa forma, na melhor das

4Simulacoes mostraram que uma diferenca de aproximadamente 40µs podem ser aceitaveis entre osdois caminhos. Porem, afirma-se que sao necessarios testes fısicos em ambientes reais com medidoresespecıficos para uma conclusao definitiva sobre o delay no sistema (SCHLICHTING, 2012)

Page 32: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

3.2 Desenvolvimento do Filtro NC 31

Figura 3.8: Problema de casamento entre o filtro desejado e obtido. Frequencia em rad.e ganho linear

hipoteses, cada um dos filtros, mostrados com sua forma ideal e suavizada (SCHLICHTING,

2012) na Figura 3.9, poderia ter ordem 4.

Figura 3.9: Separacao da forma original do filtro NC em um filtro passa-altas e umpassa-baixas

Dessa maneira, poderia-se optar por convolver os resultados ou deixa-los como dois

sistemas separados. Como observado na Figura 3.9, a forma original foi suavizada para

evitar variacoes pequenas, isso nao influenciou nos resultados, uma vez que essas pequenas

variacoes necessitam de altas ordens para se realizarem na pratica.

O resultado final mostrou que em nenhuma combinacao de ordens, mesmo quando

testadas com maiores que 8, o filtro com o formato passa-baixas conseguiu ser realizado

Page 33: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

3.2 Desenvolvimento do Filtro NC 32

com um ganho praticamente constante na altura de aproximadamente 3dB, e o filtro do

formato passa-altas podia ser realizado, com algumas modificacoes (SCHLICHTING, 2012),

com ordem 8. Considerando as caracterısticas do sistema, os testes realizados e a banda de

interesse no sistema entre DC e 2kHz, foi possıvel implementar um unico filtro passa-altas

realizando pequenas alteracoes no formato do filtro para todo o sistema.

Primeiramente, ignorou-se o filtro passa-baixas compensando o ganho quase linear

de aproximadamente 3dB na magnitude filtro passa altas. Em seguida, verificou-se o

comportamento das frequencias acima de 2kHz e como elas influenciavam no casamento

das formas e no desempenho do filtro quando variavam arbitrariamente. Com isso, chegou-

se a conclusao de que apenas o filtro com formato passa-altas, adaptado, oferecia o melhor

resultado e poderia ser implementado em hardware (SCHLICHTING, 2012). O documento

que detalha as alteracoes minuciosas que levaram a resposta final do filtro e um documento

interno e pertencente a Fachhochschule Karnten.

A atenuacao do ruıdo atingida na faixa de interesse foi na media, de 9,6dB , sendo

os resultados mais pontuais medios de 20,1dB entre DC e 200Hz, 9,36dB entre 200Hz e

900Hz, 13dB entre 900Hz e 1,4kHz e 3,31dB entre 1,4kHz e 2kHz. As frequencias acima

de 2kHz variaram positivamente em 2dB do valor original de magnitude.

Page 34: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

33

4 Implementacao em Hardwaredo Filtro

Apos o desenvolvimento do filtro, iniciou-se o processo de implementacao em hardware.

Primeiramente utilizando a estrutura tradicional de um filtro FIR a uma taxa de 44,1kHz

e em seguida adaptando a estrutura para trabalhar a uma taxa de 2,8MHz utilizando

diretamente o sinal digital proveniente de um modulador do tipo sigma-delta. Ao fim de

cada implementacao obtem-se resultados de area e consumo de energia utilizados para a

implementacao do filtro desenvolvido.

4.1 Implementacao em Hardware do filtro NC - PCM

Com os coeficientes do filtro em seu formato final prontos, iniciou-se as etapas ne-

cessarias para sua implementacao. A primeira foi gerar o codigo que seria implementado.

Esse codigo foi gerado pelo MATLAB utilizando o toolbox HDL Coder. Essa ferramenta

gera um codigo em linguagem VHDL (VHSIC hardware description language - Lingua-

gem de descricao de hardware VHSIC), uma linguagem de codigo especıfica para projetar

circuitos digitais em hardwares (PEDRONI, 2004). O filtro possui ordem 8 e por uma

especificacao do conversor analogico digital que sera tratada mais adiante, possui 20 bits

de entrada e saıda.

O codigo gerado contem agora os coeficientes do filtro NC gerados pelo MATLAB

e sera implementado conforme uma serie de passos detalhados na sequencia. Os passos

para uma implementacao tıpica de um circuito digital em VHDL sao (PEDRONI, 2004;

KOEBERLE, 2011):

• Criacao do codigo VHDL: O objetivo e escrever ou gerar um codigo que possa ser

sintetizado. Para isso, pode-se utilizar ferramentas especıficas como o HDL Coder

ou editores de texto simples como o gedit ou o vi.

Page 35: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

4.1 Implementacao em Hardware do filtro NC - PCM 34

• Simulacao RTL: A simulacao RTL (Register Transfer Level - Nıvel de transferencia

de registros) serve para que, atraves de testes especıficos, tambem escritos em VHDL,

possa se garantir o comportamento do circuito como desejado. Essa verificacao e

feita atraves de um simulador logico, como o Modelsim1, utilizado neste projeto.

• Sıntese RTL: O processo de sıntese RTL aplica na descricao do circuito em VHDL

uma serie de limitacoes a nıvel dos componentes, como dimensoes litograficas (ta-

manho dos componentes fabricados no silıcio), consumo de energia, temporizacoes,

etc. Essas especificacoes sao inseridas atraves de ferramentas especıficas do kit de

desenvolvimento, e sao fornecidas diretamente por fabricantes ou companhias deten-

toras de propriedade intelectual. Neste projeto, utiliza-se uma biblioteca fornecida

pela austriamicrosystems2 especıfica para o software utilizado, o Design Compiler 3.

O software fornece os seguintes resultados:

– Um netlist em VHDL utilizada para simulacoes pos-sıntese. Uma netlist contem

informacoes sobre os componentes utilizados pelo circuito e como eles estao in-

terconectados, alem de informacoes sobre pinagem e alimentacao.

– Um netlist em VERILOG, uma outra linguagem para descricao de hardware,

que pode ser utilizado para simulacoes pos-sıntese ou roteamento e alocacao

de componentes.

– Uma descricao SDF que contem todas as informacoes sobre delay de circuito

para simulacoes. As informacoes de delay desta etapa sao apenas para os

componentes. Para as interconexoes nao se assume nenhum delay nesta etapa.

• Simulacao pos-sıntese: Utiliza as informacoes do codigo VERILOG ou VHDL

gerado do passo anterior, alem do uso das informacoes sobre delay para os compo-

nentes logicos do circuit do arquivo SDF. E importante verificar esse passo, pois

apos a sıntese RTL e aplicacao das caracterısticas fısicas de implementacao, o cir-

cuito pode nao se comportar da mesma maneira, principalmente devido a delays

internos no circuito. Para esta etapa utiliza-se o Modelsim.

• Roteamento e alocacao de celulas fısicas: Esse passo faz a implementacao fısica

dos componentes descritos no netlist a nıvel do transistor. Nessa etapa, podem ser

implementadas trilhas de metal destinadas a alimentacao (VCC), alem de aterra-

mento (GND). Tambem e possıvel definir em um chip, sua area de interconexao e

1http://www.mentor.com/products/fv/modelsim/2http://www.austriamicrosystems.com/3http://www.synopsys.com/home.aspx

Page 36: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

4.1 Implementacao em Hardware do filtro NC - PCM 35

pinagem externa. Para essa etapa, foi utilizado o software Velocity/Encounter 4, que

fornece os seguintes resultados.

– O leiaute do circuito em um arquivo do tipo GDS II. Esse arquivo contem

as informacoes necessarias para a fabricacao de montagem e fabricacao de um

chip de silıcio.

– Um netlist VERILOG utilizado para a simulacao pos-leiaute.

– Uma descricao SDF que contem as informacoes de delay dos componentes e

interconexoes entre os mesmos.

• Simulacao pos-leiaute: Utiliza as informacoes do netlist e do arquivo SDF para

verificar o comportamento do circuito com todas as caracterısticas fısicas dos com-

pontentes em acao. Utiliza-se o Modelsim nesta etapa conforme (KOEBERLE, 2011).

O circuito gerado em VHDL pode ter como fim a implementacao em um chip de silıcio.

Por possuir diversas caracterısticas integradas em um mesmo chip, incluindo conversores,

filtros, controle, esse chip pode ser considerado um VLSI (Very-large-scale integration -

Integracao em grande escala).

Apos a geracao do arquivo HDL, a simulacao RTL ocorreu utilizando o Modelsim.

Primeiramente, como descrito acima, foi escrito um segundo codigo no formato VHDL

para ser responsavel por executar as rotinas de teste necessarias. Para esta etapa do

projeto, decidiu-se por testar o codigo VHDL atraves de senoides geradas no Matlab e

importadas para um formato texto na forma hexadecimal. Estas senoides representariam

frequencias especıficas da faixa de interesse do projeto. Estes sinais eram importados pelo

arquivo de testes e processados pelo filtro descrito em VHDL no Modelsim. O resultado

foi salvo tambem na forma texto e comparados novamente no Matlab. A Figura 4.2

mostra os resultados dos sinais no primeiro e segundo caminhos utilizando todos os blocos

simulados no Matlab. Ja a Figura 4.1 mostra o mesmo resultado, no entanto, substituindo

o bloco NC pela implementacao em VHDL, simulada no Modelsim. Como as duas Figura

s mostram sinais correspondentes, o codigo VHDL mostrava-se correto. Os codigos sao

propriedade da instituicao onde o trabalho foi realizado.

Foi muito importante durante a escrita do codigo de testes assegurar que a frequencia

de clock gerada no arquivo correspondia a frequencia do sistema e dos sinais amostrados

no Matlab. Diversos erros podem mostrar resultados errados caso esse cuidado nao seja

considerado.4http://www.cadence.com/us/pages/default.aspx

Page 37: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

4.1 Implementacao em Hardware do filtro NC - PCM 36

Figura 4.1: Saıda do filtro NC simulado e analisado no Matlab. O filtro VHDL deve terresultado equivalente a este. Amostras no eixo x e Amplitude no eixo y

Figura 4.2: Saıda do filtro NC VHDL simulado no MODELSIM e analisado noMATLAB. Amostras no eixo x e Amplitude no eixo y

Page 38: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

4.1 Implementacao em Hardware do filtro NC - PCM 37

O codigo principal utilizado para testes, chamado de testbench, inclui o mapeamento

das portas do filtro, geracao do sinal de clock, geracao do sinal de reset, leitura do sinal

de entrada e escrita do sinal de saıda.

A sıntese logica do sistema foi executada a seguir assim como a simulacao pos-sıntese.

Da mesma maneira que o codigo VHDL foi verificado na simulacao RTL, ele foi verificado

apos o processo de sıntese. No entanto, foi utilizado o netlist VHDL, no lugar do VHDL

original, junto ao arquivo SDF descrito anteriormente. Os resultados sao identicos aos

resultados das Figura s 4.2 e 4.1.

Apos a sıntese RTL e sua verificacao, foi efetuado o processo de leiaute do circuito.

Esta etapa sera diretamente relacionada as dimensoes finais do circuito, pois nela pode-se

mudar manualmente diversos fatores como quantidade de camadas de metal utilizadas,

distribuicao de alimentacao entre os metais, area do nucleo, area de interconexoes e pina-

gens. No entanto, deve-se verificar todos os processos passo-a-passo, pois a ma distribuicao

das celulas fısicas do circuito podem gerar espacos nao utilizados ou gerar sobreposicao de

celulas, causando violacoes. Alguns processos sao otimizados durante o processo diversas

vezes, como a distribuicao das celulas para uma arvore de clock mais eficiente e um rote-

amento mais dinamico. Ao fim do processo, tem-se como resultado o arquivo GDSII que

pode ser enviado a fabricacao do componente e os arquivos necessarios para a verificacao

pos-leiaute. A Figura 4.3 mostra o resultado do leiaute do circuito no software. Em branco

aparece a arvore de clock, em azul, vermelho e verde as interconexoes das 3 camadas de

metal da tecnologia de hardware (C35, da Austriamicrosystems) implementadas, elas co-

nectam as celulas fısicas que possuem os registradores e todos os outros componentes do

circuito. Nos lados esquerdo e direito ve-se as conexoes de entrada e saıda e abaixo a

entrada do sinal de clock.

Apos o leiaute executou-se a verificacao com os arquivos correspondentes e os resulta-

dos novamente se mostraram corretos (SCHLICHTING, 2012) e podem ser vistos da mesma

maneira que nas Figura s 4.2 e 4.1.

Com a execucao dos passos de sıntese RTL e leiaute, e possıvel obter um relatorio

com as informacoes de area necessaria para o circuito. No entanto, o relatorio gerado pelo

Encounter e mais preciso por abranger mais informacoes fısicas do circuito. Para esse

projeto, na implementacao a taxa PCM trabalhando a 44,1kHz, o circuito do filtro ocupa

uma area de 333,4mm2.

Para simular o consumo de energia do circuito e necessario o uso do software Velo-

city/Encounter. Ele gera atraves do Modelsim um relatorio de chaveamento do circuito,

Page 39: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

4.1 Implementacao em Hardware do filtro NC - PCM 38

Figura 4.3: Apresentacao do resultado do leiaute do circuito no Encounter

esse relatorio e analisado pelo software e utiliza as informacoes da biblioteca como o tipo

de alimentacao do circuito, no caso 3,3V para gerar um relatorio do consumo de energia

dinamico.

O consumo de energia dinamico e calculado atraves da energia dissipada durante

as mudancas de estado dos clocks dos transistores de um circuito integrado (RABAEY;

CHANDRAKASAN; NIKOLIC, 2003). Esta energia pode ser calculada integrando o con-

sumo instantaneo da fonte ao longo de um perıodo como mostra a Equacao4.1 (RABAEY;

CHANDRAKASAN; NIKOLIC, 2003). Uma simplificacao modelo do circuito basico utilizado

pode ser visto na Figura 4.4. O capacitor nao representa um componente fısico, mas um

conjunto de capacitancias implıcitas dos componentes do chip.

EV DD =∫ ∞0

ivdd(t)VDDdt = VDD

∫ ∞0

CLdvoutdt

dt = CLVDD

∫ VDD

0dvout = CLV

2DD (4.1)

Basicamente multiplica-se o resultado da Equacao4.1 pela taxa do sistema e tem-se

o consumo do circuito. No entanto, nem todos os componentes sao utilizados em cada

perıodo de clock, resultando em uma economia de energia. Para compensar esse fator,

muito comum em circuitos mais modernos, utiliza-se uma variavel 0 ≤ A ≤ 1, chamada

de fator atividade e dependente da tecnologia de fabricacao utilizada, como mostra a

Page 40: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

4.2 Implementacao em Hardware do Filtro NC - Bit stream 39

Figura 4.4: Circuito modelo equivalente para uma transicao 0 para 1 (RABAEY;

CHANDRAKASAN; NIKOLIC, 2003)

Equacao4.2.

P = ACLVDD2f (4.2)

Esse processo todo pode ser simulado por software. O relatorio de chaveamento do

circuito, chamado de relatorio de atividade, deve ser gerado somente quando ha atividade

no circuito, caso contrario, havera perıodos de tempo que contabilizarao no total, mas

nao possuıram nenhuma atividade no circuito. No caso do filtro gerado, a simulacao para

gerar o relatorio foi feita ate o fim da leitura do arquivo com os sinais de entrada.

Apos gerar o relatorio de atividades, o Velocity/Encounter fornece o consumo do

circuito. Para o filtro NC PCM a taxa de 44,1kHz o consumo do circuito do filtro foi de

7,44µW (SCHLICHTING, 2012).

4.2 Implementacao em Hardware do Filtro NC - Bit

stream

A segunda forma implementada do filtro NC, tem como objetivo diminuir os recursos

de hardware necessarios, eliminando o uso dos filtros interpolador e decimador. Isso

e possıvel, como tratado anteriormente, utilizando diretamente a saıda do modulador

Sigma-Delta como entrada do filtro, um Sigma-Delta loop para ajustar o tamanho do

sinal e um demodulador sigma-delta na conversao DA, conforme as Figuras 2.10 e 2.11.

As informacoes do filtro sao exatamente as mesmas, mudando apenas a implementacao

em hardware com linguagem VHDL. Uma vez que o codigo HDL do filtro anterior foi

gerada automaticamente atraves de uma ferramenta do Matlab, o codigo para o filtro

Page 41: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

4.2 Implementacao em Hardware do Filtro NC - Bit stream 40

ANC Bit stream foi escrito manualmente. Os quadros de codigo 4.1 e 4.2 mostram a

implementacao dos registradores e multiplexadores respectivamente5.

Quadro 4.1: Implementacao dos registradores z−64

process ( c l k i n , r e s e t )

begin

i f r e s e t = ’1 ’ then

REG1 <= (OTHERS => ’ 0 ’ ) ;

REG2 <= (OTHERS => ’ 0 ’ ) ;

REG3 <= (OTHERS => ’ 0 ’ ) ;

REG4 <= (OTHERS => ’ 0 ’ ) ;

REG5 <= (OTHERS => ’ 0 ’ ) ;

REG6 <= (OTHERS => ’ 0 ’ ) ;

e l s i f c l k i n ’ event and c l k i n = ’1 ’ then

i f c l k e n a b l e = ’1 ’ then

REG1(63) <= inputreg ;

for i in 0 to 62 loop

REG1( i ) <= REG1( i +1);

REG2( i ) <= REG2( i +1);

REG3( i ) <= REG3( I +1);

REG4( i ) <= REG4( i +1);

REG5( i ) <= REG5( i +1);

REG6( i ) <= REG6( i +1);

end loop ;

REG2(63) <= REG1( 0 ) ;

REG3(63) <= REG2( 0 ) ;

REG4(63) <= REG3( 0 ) ;

REG5(63) <= REG4( 0 ) ;

REG6(63) <= REG5( 0 ) ;

end i f ;

end i f ;

end process ;

Quadro 4.2: Implementacao dos multiplexadores

m1 <= ”b0” when i nputreg = ’0 ’ else ”−b0” ;

m2 <= ”b1” when REG1(0) = ’0 ’ else ”−b1” ;

m3 <= ”b2” when REG2(0) = ’0 ’ else ”−b2” ;

m4 <= ”b3” when REG3(0) = ’0 ’ else ”−b3” ;

m5 <= ”b4” when REG4(0) = ’0 ’ else ”−b4” ;

m6 <= ”b5” when REG5(0) = ’0 ’ else ”−b5” ;

m7 <= ”b6” when REG6(0) = ’0 ’ else ”−b6” ;

5Os coeficientes foram substituıdos por b0, b1, ... , bn

Page 42: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

4.2 Implementacao em Hardware do Filtro NC - Bit stream 41

Da mesma forma como descrito no capıtulo 3 para o filtro NC PCM, o codigo escrito

precisou ser testado quanto ao seu funcionamento. A simulacao RTL foi executada, no

entanto os arquivos de teste, testbenchs, necessitaram de adaptacoes. Apos os ajustes foi

elaborado um sistema para verificar o funcionamento do codigo HDL do filtro.

Os testes do filtro NC bit stream devem ser feitos utilizando um sinal de entrada

de apenas um bit por amostra e este sinal deve ser gerado pelo modulador Sigma-Delta

desenvolvido por (WANG et al., 2010). A interpretacao dos dados deve ser feita atraves

de um processo especial, uma vez que o sinal digital nao passa a mesma informacao

visualmente comparando com as senoides dos testes do filtro NC PCM.

Para resolver o problema do sinal de entrada, utilizou-se arquivos com sinais digitais de

um bit resultantes do desenvolvimento do projeto de (WANG et al., 2010). Cada um destes

arquivos continha uma senoide digitalizada na forma de um unico bit pelo modulador

Sigma-Delta. Para interpretar a saıda do filtro, utilizou-se um calculador de SNR (Signal-

Noise Ratio - Relacao Sinal-Ruıdo) para analisar a forma espectral do sinal, alem do filtro

decimador do conversor Sigma-Delta. O processo de teste do filtro NC em stream de bit

esta descrito na Figura 4.5.

Figura 4.5: Esquema para simulacao RTL do filtro ANC Bitstream

Um arquivo .txt com a forma digitalizada em um bit de um seno e importada para

o Matlab. Esse sinal passa entao por um filtro decimador e por um calculador de SNR

que mostra a frequencia e a amplitude do sinal equivalente ao ruıdo e o ruıdo do sistema.

Esse mesmo sinal e importado para o Modelsim para a simulacao RTL. A saıda do filtro e

por sua vez levada ate o MATLAB onde o sinal, desta vez com 9 bits devido a estrutura e

coeficientes do filtro NC Bitstream e, da mesma forma, analisada pelo filtro decimador e

Page 43: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

4.2 Implementacao em Hardware do Filtro NC - Bit stream 42

calculador de SNR. Os sinais sao comparados para verificar a amplitude da representacao

do ruıdo e conferir se o filtro esta atuando como sua versao PCM. Para os testes realizados

o filtro atuou como previsto.

Do mesmo modo que o filtro NC PCM, foram executados todos os processos de si-

mulacao pos-sıntese, leiaute, simulacao pos-leiaute e calculo de area e energia (SCHLICH-

TING, 2012). O resultado do leiaute do filtro NC bit stream resultou em um circuito

com area de 182mm2. Ja o consumo de energia, calculado pelo Velocity/Encounter foi de

633µW.

Page 44: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

43

5 Conclusoes

Analisando os processos e resultados, pode-se verificar que o desenvolvimento das

duas estruturas do filtro NC comportou-se de forma esperada, uma vez que o filtro PCM

possui menos registradores ele consumira menos energia. O primeiro filtro implementado

conseguiu um consumo de energia de 7,4µW, e o filtro implementado superamostrado

consumiu 633µW.

No entando, o uso do filtro para processamento PCM e utilizacao do conversor sigma-

delta necessitam obrigatoriamente do uso dos filtros interpolador e decimador para ajustar

a taxa do sinal para a frequencia correta em cada etapa do processo. Isso traz um consumo

extra de energia do circuito de aproximadamente mais 900µW, de acordo com a informacao

do coordenador do projeto na instituicao. Isso torna o consumo total do circuito necessario

para a implementacao do filtro muito maior.

A area ocupada em hardware e de 182mm2 para o filtro bit stream e 333mm2 para

o filtro PCM. Mais uma vez observa-se vantagem de se trabalhar o sistema com uma

frequencia mais elevada.

Conclui-se assim, que consegue-se obter uma economia de aproximadamente 45,34%

em area, desconsiderando os acrescimos que os filtros interpolador e decimador teriam

sobre o circuito todo, e 30,24% em consumo de energia para o sistema descrito neste

trabalho a favor do filtro implementado a taxa de 2,8MHz (bit stream) implementado

neste TCC.

Para trabalhos futuros, sugerem-se o estudo e a implementacao da fase do filtro utili-

zando a estrutura que este trabalho demonstra ser mais favoravel em custos de hardware.

Page 45: Implementa˘c~oes em VHDL de um Filtro FIR para Controle ... · Prof. Elen Macedo Lobato Merlin, Dra. Erwin Ofner, Professor Dipl.-Ing. ... como as simula˘c~oes e resultados de atenua˘c~ao

44

Referencias

KOEBERLE, M. CAD Tools - Semicustom Top-Down Design Flow. Villach, Carinthia,Austria, 2011.

KUO, S. M.; MORGAN, D. Active Noise Control Systems: Algorithms and DSPImplementations. New York, NY, USA: John Wiley & Sons, Inc., 1995. ISBN0471134244.

LATHI, B. P. Sinais e Sistemas Lineares. 2nd. ed. Porto Alegre, RS, Brasil: ARTMEDS.A., 2007.

PEDRONI, V. Circuit Design With VHDL. [S.l.]: Mit Press, 2004. ISBN 9780262162241.

RABAEY, J.; CHANDRAKASAN, A.; NIKOLIC, B. Digital Integrated Circuits: adesign perspective. [S.l.]: Pearson Education, 2003. (Prentice Hall electronics and VLSIseries).

SCHLICHTING, A. L. Final Intern Report - VHDL ANC filter design. Villach,Carinthia, Austria, 2012.

SHENOI, B. A. Introduction to Digital Signal Processing and Filter Design. New Jersey,USA: John Wiley & Sons, Inc., 2006. ISBN 39780471464822.

SMITH, S. Digital Signal Processing: A Practical Guide for Engineers and Scientists.[S.l.]: Newnes, 2003. (Demystifying Technology Series). ISBN 9780750674447.

WANG, Y. et al. Third order delta sigma modulator for portable audio. In: Austrochip,Workshop on Microelectronics. Villach, Carinthia, Austria: Fachhochschule Kaernten,2010. ISBN 9783200019454.

ZHANG, C. Simulation on the Filter Design for ANC. Villach, Carinthia, Austria:Fachhochschule Kaernten, 2011.

ZOELZER, U.; AMATRIAIN, X. Dafx - Digital Audio Effects. [S.l.]: Wiley, 2002. ISBN9780471490784.