Accumulatore di fase per DDS su FPGA

nanostallmann

New member
Ciao a tutti,
ho una domanda a riguardo di un accuulatore di fase per un DDS che sto implementando sulla ATLYS (Spartan6).
L'accumulatore che ho progettato lavora con una phase_word in ingresso d 18bit e pone in uscita un indirizzo a 10bit per un banco di ROM.
Quando mando in ingresso una phase_word che interviene solo sulla parte intera o solo su quella frazionaria (per esempio parole come 000000001000000000 or 000100000000000000 or 000000000010000000) l'accumulatore genera in uscita valori con incremento costante e pari a il valore imposto dalla parola (per l'esempio riportato su  2 ogni periodi di clock , 64 ogni periodi di clock  or 1 ogni 2 periodi di clock per l'esempio appena citato).
Quando mando in ingresso una phase_word che interviene sia sulla parte intera che su quella frazionaria (per esempio 000000000110000000) l'accumulatore pone in uscita una sequenza con un incremento variabile (per l'esempio appena citato una volta con un incremento pari a uno e una volta con un incremento pari a due).
Matematicamente io penso sia corretto ma la questione è:
Quando cambio la fase con un incremento variabile l'onda in uscita non risulterà distorta da spurie generate proprio da questo comportamento???

Per chiarezza allego degli screen-shoots ( diversi dagl'esempi riportati su):

Io penso che una soluzione potrebbe essere interpolare i valori di uscita.... la vostra opinione???
Grazie
 

Attachments

  • 1.png
    1.png
    25.4 KB · Views: 498
  • 2.png
    2.png
    26.7 KB · Views: 504
  • 3.png
    3.png
    27.2 KB · Views: 503
  • 4.png
    4.png
    25.8 KB · Views: 492
Ho cablato l'accumulatore con la rom contenente i campioni dell'onda da riprodurre e contrariamente a quello che mi aspettavo, dopo aver rielaborato i risultati ottenuti, ho notato che, a parte il (sempre presente) rumore di quantizzazione non sembra esserci presenza di spurie.
Allego uno screen-shot.
A presto
 

Attachments

  • Results.png
    Results.png
    19 KB · Views: 532

Welcome to EDABoard.com

Sponsor

Back
Top