Oficina NCO e Filtros digitais

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar

Esta página traz um roteiro para a geração de sinais senoidais e a construção de filtros digitais em FPGAs Altera, usando o Quartus II. O sistema criado (figura abaixo) gera sinais senoidais de 1 MHz e 4 MHz, soma os dois sinais e realiza uma filtragem passa baixas, visando manter apenas o sinal de 1 MHz. Está prevista a construção de um multiplexador e de um divisor de clock. Todos os blocos utilizaram a ferramenta nativa do Quartus II, o MegaWizard Plug-In Manager.

Sistema desenvolvido


Geração dos sinais senoidais

Nesta seção, dois sinais senoidais serão criados, um de 1 MHz e outro de 4 MHz

  • Abrir o MegaWizard Plug-In Manager (Menu Tools)
  • Página 1: Selecionar Create a new custom megafunction variation
  • Página 2: Escrever na lupa nco, escolher a pasta para os arquivos e incluir um nome (sugestão: nco1MHz e nco4MHz)
Selecionando o MegaWizard NCO


  • Na janela do NCO, clique em Step1: Parameterize
  • Em Magnitude Precision, escolha o número de bits por amostra desejado para o sinal senoidal (sugestão: 10)
  • Em Clock Rate, escolha o clock da placa (no caso, 50 MHz). Digite o valor e tecle ENTER
  • Em Desired Output Frequency, escolha a frequência desejada para o sinal senoidal (1 MHz). Digite o valor e tecle ENTER
  • Anote o valor disponibilizado em Phase Increment Value (Para 1MHz, 85899346). Você pode dar dois cliques no valor e usar o CTRL+C para copiar. Esse número pode ser encontrado também através da equação:
onde as siglas se referem às iniciais dos parâmetros
NCO - Parameterize


  • No canto superior direito da aba Implementation, marque a opção Single Output
  • Clique em Finish para encerrar a parametrização
  • Clique em Generate para gerar o bloco
  • Quando o processamento encerrar, clique em Exit e selecione Yes quando questionado sobre adicionar o arquivo gerado ao projeto
  • De volta à janela padrão do Quartus II repare que o arquivo nco1MHz.qip foi adicionado ao projeto
NCO adicionado ao projeto


O mesmo procedimento deve ser feito para o NCO de 4 MHz (Phase Increment Value 343597384)