• Nenhum resultado encontrado

Módulo Windowing/Block Switching

No documento 2010.2Relatorio TCC Versao DEFESA V1 (páginas 71-85)

3 METODOLOGIA DE DESENVOLVIMENTO DO PROJETO

5.1 Módulo Windowing/Block Switching

Neste tópico serão apresentados os resultados obtidos com a execução do módulo

Windowing/Block Switching.

5.1.1 Gerador de Coeficientes da Janela Seno (256 coeficientes)

O sub-módulo Gerador da Janela Seno foi desenvolvido com o intuito de fornecer duas seqüencias de janelas básicas, a Short Window e a Long Window. A partir dessas janelas básicas é possível gerar outras duas janelas necessárias ao projeto, a Long Start Window e a

Long Stop Window.

Neste tópico serão apresentados alguns resultados da geração da Janela Short Window. Para a definição desta janela são gerados 256 coeficientes, a partir de 34 amostras pré- armazenadas. Para obter os 256 coeficientes foi utilizado o método numérico de interpolação linear.

5.1.1.1 Resultados da Geração da Janela Seno (256 coeficientes) no MATLAB

A partir do desenvolvimento do algoritmo de interpolação linear no software MATLAB e da geração dos Coeficientes Ideais da Janela Seno foram realizados os seguintes passos:

1- Foram armazenados 33 coeficientes a partir dos coeficientes Ideais.

2- No algoritmo de interpolação linear desenvolvido foram utilizados os 33 coeficientes pré-armazenados para obtenção dos 256 coeficientes.

Na Figura 30 são apresentados os gráficos referentes a: geração dos 256 coeficientes a partir da interpolação linear de 33 coeficientes pré-armazenados realizado no MATLAB, e os Coeficientes Ideais da Janela Seno.

Figura 30: Resultados da Geração da Janela Seno, 256 coeficientes, no MATLAB (Próprio Autor)

O software MATLAB realiza os cálculos utilizando números em ponto flutuante com 32 bits. Portanto, a margem de erro é relativamente pequena quando comparada com a margem de erro entre os coeficientes gerados pelo módulo Windowing/Block Switching e os coeficientes ideais. As diferenças entre os gráficos da Figura 30 são visualmente imperceptíveis. Portanto, na Figura 31 foi gerado um gráfico para a análise de erros, com o intuito de facilitar a visualização das margens de erros entre os coeficientes interpolados no

Figura 31: Margem de erro entre coeficientes ideais da Janela Seno e coeficientes interpolados (Próprio Autor)

Como pode ser visualizada na Figura 31 o erro máximo encontrado tem o valor aproximado de 0,1384%. A média de erro considerando todos os coeficientes é igual a aproximadamente 0,0799%.

5.1.1.2 Resultados da Geração da Janela Seno (256 coeficientes) no Módulo RTL

A partir do desenvolvimento do algoritmo de interpolação linear do Módulo RTL

Windowing/Block Switching e da geração dos Coeficientes Ideais da Janela Seno foram

realizados os seguintes passos:

1- Foram armazenados 33 coeficientes a partir dos coeficientes Ideais.

2- No algoritmo de interpolação linear desenvolvido foram utilizados os 34 (1 coeficiente adicional) coeficientes pré-armazenados para obtenção dos 256 coeficientes.

Na Figura 32 são apresentados os gráficos referentes a: Geração dos 256 coeficientes a partir da interpolação linear de 34 coeficientes pré-armazenados realizada pelo Módulo RTL

Figura 32: Resultados da Geração da Janela Seno do Módulo RTL e Coeficientes Ideais (Próprio Autor)

O Módulo Gerador de Coeficientes da Janela Seno realiza os cálculos utilizando números em ponto flutuante com 16 bits. Portanto, a margem de erro é maior quando comparada com a margem de erro entre os coeficientes interpolados no MATLAB e os coeficientes ideais. As diferenças entre os gráficos da Figura 32 são visualmente imperceptíveis. Portanto, na Figura 33 foi gerado um gráfico para a análise de erros, com o intuito de facilitar a visualização das margens de erros entre os coeficientes gerados pelo

Módulo RTL e os coeficientes ideais.

Como pode ser visualizado na Figura 33 o erro máximo encontrado tem o valor aproximado de 0,5741%. A média de erro considerando todos os coeficientes é igual a aproximadamente 0,1957%.

5.1.2 Gerador de Coeficientes da Janela Seno (2048 coeficientes)

Neste tópico serão apresentados alguns resultados da geração da Janela Long Window. Para a definição desta janela são gerados 2048 coeficientes, a partir de 90 amostras pré- armazenadas. Para obter os 2048 coeficientes foi utilizado o método numérico de interpolação linear.

5.1.2.1 Resultados da Geração da Janela Seno (2048 coeficientes) no MATLAB

A partir do desenvolvimento do algoritmo de interpolação linear no software MATLAB e da geração dos Coeficientes Ideais da Janela Seno foram realizados os seguintes passos:

1- Foram armazenados 65 coeficientes a partir dos coeficientes Ideais.

2- No algoritmo de interpolação linear desenvolvido foram utilizados os 65 coeficientes pré-armazenados para obtenção dos 2048 coeficientes.

Na Figura 34 são apresentados os gráficos referentes a: Geração dos 2048 coeficientes a partir da interpolação linear de 65 coeficientes pré-armazenados realizado no MATLAB, e os Coeficientes Ideais da Janela Seno.

Figura 34: Resultados da Geração da Janela Seno, 2048 coeficientes, no MATLAB (Próprio Autor)

As diferenças entre os gráficos da Figura 34 são visualmente imperceptíveis. Portanto, na Figura 35 foi gerado um gráfico para a análise de erros para facilitar a visualização das margens de erros entre os coeficientes interpolados no MATLAB e os coeficientes ideais.

Figura 35: Margem de erro entre coeficientes ideais da Janela Seno e coeficientes interpolados (Próprio Autor)

Como pode ser visualizada na Figura 35 o erro máximo encontrado tem o valor aproximado de 0,03717%. A média de erro considerando todos os coeficientes é igual a aproximadamente 0,0202%.

5.1.2.2 Resultados da Geração da Janela Seno (2048 coeficientes) no Módulo RTL

A partir do desenvolvimento do algoritmo de interpolação linear do Módulo RTL

Windowing/Block Switching e da geração dos Coeficientes Ideais da Janela Seno foram

realizados os seguintes passos:

1- Foram armazenados 65 coeficientes a partir dos coeficientes Ideais.

2- No algoritmo de interpolação linear desenvolvido foram utilizados os 90 (25 coeficientes adicionais) coeficientes pré-armazenados para obtenção dos 2048 coeficientes.

Na Figura 36 são apresentados os gráficos referentes a: geração dos 2048 coeficientes a partir da interpolação linear de 90 (25 coeficientes adicionais) coeficientes pré-armazenados realizada pelo Módulo RTL Windowing/Block Switching, e os Coeficientes Ideais da Janela Seno.

Figura 36: Resultados da Geração da Janela Seno do Módulo RTL e Coeficientes Ideais (Próprio Autor)

O Módulo Gerador de Coeficientes da Janela Seno realiza os cálculos utilizando números em ponto flutuante com 16 bits. Portanto, a margem de erro é maior quando comparada com a margem de erro entre os coeficientes interpolados no MATLAB e os coeficientes ideais. Na Figura 37 foi gerado um gráfico para a análise de erros, com o intuito de facilitar a visualização das margens de erros entre os coeficientes gerados pelo Módulo

Figura 37: Margem de erro entre coeficientes ideais e coeficientes interpolados pelo Módulo RTL (Próprio Autor)

Como pode ser visualizada na Figura 37 o erro máximo encontrado tem o valor aproximado de 0,98844%. A média de erro considerando todos os coeficientes é igual a aproximadamente 0,4340%.

5.1.3 Resultados do Janelamento utilizando a Short Window

Neste tópico serão abordados os resultados da aplicação da janela seno com 256 coeficientes gerados pelo Módulo RTL Windowing/Block Switching aos 256 coeficientes gerados randomicamente, para fins de simulação. Os 256 coeficientes gerados randomicamente substituem os coeficientes do Módulo IMDCT, pois tal módulo ainda não está agregado a este projeto.

O janelamento realizado é caracterizado pela multiplicação entre os 256 coeficientes gerados pelo Módulo RTL e os 256 coeficientes gerados randomicamente.

5.1.3.1 Resultados do Janelamento

Os 256 coeficientes foram gerados randomicamente na ferramenta ModelSim e convertidos para ponto flutuante. A partir dos números convertidos para ponto flutuante foi possível realizar a operação de janelamento no Módulo RTL. Na Figura 38 os 256 coeficientes gerados podem ser visualizados.

Figura 38: Coeficientes gerados randomicamente (Próprio Autor)

Na Figura 32 foi apresentada a janela seno com 256 coeficientes gerados pelo Módulo

RTL. A partir da aplicação desta janela nos coeficientes apresentados na Figura 38 tem-se

Figura 39: Resultado do Janelamento aplicado aos coeficientes gerados randomicamente (Próprio Autor)

A partir da análise da Figura 39 é possível perceber os efeitos do janelamento nos coeficientes gerados randomicamente. A suavização do sinal nas bordas é visualmente perceptível quando comparada com a Figura 38. Considerando que os índices dos coeficientes em torno de 128 e 129 estão no centro do sinal, percebe-se que os coeficientes mais próximos à tais índices tem os seus valores relativamente preservados, entretanto, quanto mais os coeficientes se aproximam dos índices 1 ou 256, os valores dos coeficientes sofrem mais suavização.

5.1.3.2 Análise de Erros a partir do Janelamento

A análise de erros levou em consideração o resultado da multiplicação entre os coeficientes gerados randomicamente e os coeficientes gerados pelo Módulo RTL

Windowing/Block Switching. Utilizando o software MATLAB foi realizada a multiplicação

entre os coeficientes gerados randomicamente e os coeficientes gerados pelo Módulo RTL e o resultado dessa operação tornou-se o modelo de referência para a realização da análise de erros.

A Figura 40 apresenta uma comparação entre a multiplicação realizada no MATLAB entre os coeficientes gerados randomicamente e os coeficientes gerados pelo Módulo RTL e a multiplicação realizada no Módulo Windowing/Block Switching entre os coeficientes gerados randomicamente e os coeficientes gerados pelo Módulo RTL.

Figura 40: Comparação entre o Janelamento aplicado no MATLAB e no Módulo RTL (Próprio Autor)

A partir da análise da Figura 40 percebe-se que os valores de ambos os gráficos são muito próximos. Portanto, para ficarem visualmente perceptíveis as diferenças, a Figura 41 apresenta as margens de erros obtidas entre os resultados dos gráficos apresentados na Figura 40.

Como podem ser visualizados na Figura 41, os erros apresentam-se abaixo de 1%. O erro máximo obtido foi de 0,82%. A métrica utilizada para análise do erro considera a subtração entre o resultado ideal e o resultado esperado fornecendo o resultado obtido da

subtração, em seguida obtém-se o resultado final a partir da divisão entre o resultado obtido da subtração e o resultado ideal.

5.1.4 Resultados do Janelamento utilizando a Long Window

Neste tópico serão abordados os resultados da aplicação da janela seno com 2048 coeficientes gerados pelo Módulo RTL Windowing/Block Switching aos 2048 coeficientes gerados randomicamente, para fins de simulação. Os 2048 coeficientes gerados randomicamente substituem os coeficientes do Módulo IMDCT, pois tal módulo ainda não está agregado a este projeto.

O janelamento realizado é caracterizado pela multiplicação entre os 2048 coeficientes gerados pelo Módulo RTL e os 2048 coeficientes gerados randomicamente.

5.1.4.1 Resultados do Janelamento

Os 2048 coeficientes foram gerados randomicamente na ferramenta ModelSim e convertidos para ponto flutuante. A partir dos números convertidos para ponto flutuante foi possível realizar a operação de janelamento no Módulo RTL. Na Figura 42 os 2048 coeficientes gerados podem ser visualizados.

Figura 42: 2048 Coeficientes gerados randomicamente (Próprio Autor)

Na Figura 36 foi apresentada a janela seno com 2048 coeficientes gerados pelo

Módulo RTL. A partir da aplicação desta janela nos coeficientes apresentados na Figura 42

tem-se como resultado os coeficientes janelados apresentados na Figura 43.

5.1.5 Resultados do Janelamento numa Função Sinc

Neste tópico será apresentado o resultado do janelamento efetuado pelo módulo

Windowing/Block Switching numa função Sinc gerada no software MATLAB. Inicialmente

foram gerados os coeficientes que correspondem a uma função Sinc, com um total de 256 coeficientes.

A Figura 44 apresenta um gráfico com os coeficientes da função Sinc gerados no

MATLAB.

Figura 44: Função Sinc com 256 coeficientes gerados no MATLAB (Próprio Autor)

A próxima etapa consiste em aplicar o janelamento utilizando o módulo

Windowing/Block Switching, portanto, o resultado do janelamento pode ser visualizado na

Figura 45: Função Sinc janelada pelo módulo Windowing Block/Switching (Próprio Autor)

No documento 2010.2Relatorio TCC Versao DEFESA V1 (páginas 71-85)

Documentos relacionados