IE309 - Tópicos em Comunicações VI (Turma F)

Processamento Digital de Sinais com FPGA

2° Semestre de 2011


Ementa

AULA 1) 02/08

 

- Apresentação do curso

 

            - Objetivos do curso

            - Avaliações

            - Material didático

            - Referências bibliográficas

            - Ementa

-        Calendário

 

AULA 2) 09/08

 

- Histórico

 

            - Avanços na área de processamento digital de sinais

            - Primeiros DSPs

            - Soluções atuais

            - Aplicações atuais em DSP (áudio, imagem, radar, rádio)

            - Requisitos dos sistemas atuais

            - Comparação com as primeiras soluções de DSP

            - Throughput, frequências de operação, custos, etc

            - Padrões e tecnologias (LTE, SDR, CR)

            - Tendências para o futuro...SoC, Virtex-7

 

Linhas gerais sobre DSP e suas aplicações. Enfoque informativo. Objetivo: criar uma visão geral sobre o avanço da tecnologia até os dias atuais e apresentar onde estamos (roadmap).

 

- Arquiteturas de DSP

 

            - Arquiteturas analógicas (filtros passivos) e suas vantagens/desvantagens

            - Arquiteturas digitais (vantagens/desvantagens)

            - Elementos básicos de uma arquitetura de DSP (conversores A/D, D/A, e processador)

            - Conceito de pré-processador e co-processador

            - Arquiteturas modernas:

- FPGA

- FPGA/DSP

- FPGA/Embedded uP

- DSP

- Multicore DSP

- Multi FPGA

            - Vantagens e desvantagens de cada arquitetura (comparações, etc)

            - Exemplos reais: SDR, HPC, placas de desenvolvimento, produtos, etc

            - Fluxo de processamento: paralelo e serial, controle

            - Considerações sobre custos, consumo de potência, tempo de desenvolvimento, etc

           

Descrição das principais arquiteturas de processamento digital existentes. Tratar dos requisitos dos sistemas e sua evolução ao longo do tempo. Descrever as primeiras soluções analógicas e suas dificuldades e limitações. Apresentar as arquiteturas digitais e suas vantagens. Tratar das diferentes arquiteturas existentes no mercado (citar exemplos práticos na industria)

 

AULA 3) 16/08

 

- Revisão: Sinais e Sistemas

 

            - O que é um sinal

            - Analógico / Digital

            - Continuo / Discreto

            - Principais sinais: impulso, degrau unitário

            - Conceitos de amostragem

            - Ruído

            - Sistemas e propriedades

            - Convolução

            - Sinais complexos

            - Magnitude e ângulo

            - Potência / Amplitude

            - dBs e SNR

 

Avaliação: simulação em matlab (Ex. Proakis, DSP using matlab)

 

- Revisão: Amostragem periódica

 

            - Amostragem

            - Aliasing

            - Teorema de Nyquist

            - Superamostragem/ Subamostragem

            - Filtros anti-aliasing e de reconstrução

 

Avaliação: simulação em matlab. Propor exercícios que verifiquem o efeito de alising e propor um exercício para IF sampling

 

AULA 4) 23/08

 

- DFT

 

            - Conceitos de domínio temporal e de frequência

            - DFT (direta e inversa)

            - Propriedades

            - Leakage e Processing Gain

            - Windowing

            - DFT resolution, zero padding

 

Avaliação: simulação em matlab. Propor exercício para calcular uma DFT de 8 pontos passo-a-passo. Propor exercício para verificação dos efeitos de leakage. Propor janelamento para correção. Propor exercío para verificação do Processing Gain. Propor exercício usando zero padding.

 

 

- FFT

           

            - Vantagens FFT

            - FFT e DFT

            - Algoritmo

            - Radix-2 / Radix-4

            - Bit reversal

            - Butterfly structure

            - Tweedle factors

 

Avaliação: simulação em matlab. Propor exercício para comparação do esforço computacional entre uma DFT de 16 pontos e uma FFT de 16 pontos. Propor a implementação do algoritmo de FFT radix-2

 

AULA 5) 30/08

 

- Filtros Digitais

 

            - Transformada Z

            - FIR

            - IIR

- Comparação FIR vs IIR

- Estruturas: direta, transposta e simétrica

- Projeto de filtros: parâmetros de projeto (banda passante, ripple, freq de corte, etc)

- Frequência (normalizada)

- Efeito de quantização de coeficientes

 

Avaliação: simulação em matlab. Propor o projeto de alguns filtros digitais usando a ferramenta FDATool. Propor análise de resultados para alguma entrada ruidosa no filtro

 

AULA 6) 13/09

 

- Precisão

 

            - Faixa dinâmica e precisão

- Complemento de 2 (inteiros com e sem sinal)

            - Ponto-fixo

            - Ponto-flutuante

            - Overflow / Underflow

            - Arredondamento: truncamento, round-up, round-down, round even

            - Saturação

            - Impacto da precisão nos resultados

            - Algoritmos ADD / SUB / MUL / DIV

            - Bit growth (ADD) e 2N-bit (MUL)

           

Tratar os principais conceitos de precisão e faixa dinâmica. Padrões de representação. Impacto no hardware. Técnicas de arredondamento. Algoritmos para operações elementares. Impacto dos métodos de representação e de arredondamento. Problemas de bit-growth em operações elementares. Avaliação: desenvolver em C ou Matlab uma biblioteca fracionária, avaliar problemas do padrão float, comparar desempenho, verificar efeitos de arredondamento.

 

AULA 7) 20/09

 

- VHDL Intro

 

-        Apresentação da linguagem

-        Descrição de circuitos

-        Entidade

-        Arquitetura

-        Classes

-        Tipos

-        Operadores

-        Atributos

-        Vetores

-        Processos

-        Construções concorrentes e sequenciais

-        Projeto estrutural

 

Projeto: codificação em VHDL e simulação. Elaborar um circuito para multiplicação e soma de dois números complexos.

 

AULA 8) 27/09

 

- FPGA Design

 

-        Definição

-        Características

-        FPGA vs ASIC

-        Estrutura

-        Fluxo de projeto

-        Exemplos

 

Projeto: elaborar um multiplicador IEEE-754. Separar o projeto em um controlador e um datapath.

 

- Ferramentas

 

            - ISE Xilinx 13.1

           

AULA 9) 04/10

 

- FPGA Architecture Virtex-5

           

-        DCMs

-        SRL

-        FFD

-        Memória (bloco e distribuída)

-        IOs

-        Slices

-        DSP48

-        Embedded Mults

-        SERDES

-        Etc...

 

- Design for performance

 

-        Velocidade

-        Área

-        Potência

-        Problemas de Clocks

-        Problemas de Reset

-        Sincronismo

-        Opções de Síntese e PAR

 

Avaliação: prova

 

AULA 10) 11/10

 

- DSP para FPGA

 

-        Aplicações

-        Tecnologias

-        DSP

-        FPGA

-        Comparações

-        Desenvolvimento

-        Métricas

-        DSP vs FPGA

 

Avaliação: prova

 

 

 

Demais) Projeto

 

Avaliação: projeto aberto. Filtro FIR serial, paralelo, FFT-16, DCT-16, qualquer outra sugestão viável...CORDIC...talvez...abs...deverá ser feito em VHDL