v8.0 CoreFFT Fourier Transform

CoreFFT v8.0

Specificazioni

  • Trasfurmà dimensioni, punti: 32, 64, 128, 256, 512, 1024, 2048,
    4096, 8192 è 16384.
  • FFT in situ: FFT in avanti è inversa
  • Streaming FFT: FFT in avanti è inversu
  • Larghezza di bit di dati di input: cumplementu di dui
  • Larghezza di bit fattore Twiddle: Uscita naturale sampl'ordine
  • Formatu di dati di input / output: bloccu cundizionale in virgule flottante
    scaling
  • Pianu di scala predefinitu o senza scala
  • Configurazioni opzionali di memoria minima o buffered
  • Tabella di ricerca twiddle basata in blocchi RAM integrata (LUT)
  • Supportu per rinfrescante twiddle LUT
  • Segnali di handshake per facilità l'interfaccia faciule à l'utilizatore
    circuiti
  • Interfaccia di streaming AXI4: No
  • Cunfigurazione di trasfurmazione in avanti / inversa di run-time: Sì

Istruzzioni per l'usu di u produttu

FFT in situ

L'implementazione In-Place FFT supporta u Radix-2
trasformazione di decimazione in u tempu. Per utilizà a FFT In-Place, seguitate questi
passi:

  1. Inizializza a sequenza di input X(0), X(1),…, X(N-1).
  2. Configurate a dimensione è u puntu di trasfurmazioni.
  3. Eseguite l'operazione FFT avanti o inversa cum'è necessariu.
  4. Ritruvà i dati trasfurmati da a sequenza di output.

FFT in streaming

L'implementazione di Streaming FFT supporta u Radix-22
trasformazione di decimazione in frequenza. Per utilizà u Streaming FFT, seguitate
sti passi:

  1. Inizializza a sequenza di input X(0), X(1),…, X(N-1).
  2. Configurate a dimensione è u puntu di trasfurmazioni.
  3. Eseguite l'operazione FFT avanti o inversa cum'è necessariu.
  4. Ritruvà i dati trasfurmati da a sequenza di output.

FAQ

Q: Chì dimensioni di trasfurmazioni sò supportate?

A: U CoreFFT supporta dimensioni di trasfurmazioni di 32, 64, 128, 256,
512, 1024, 2048, 4096, 8192 è 16384.

Q: Cosa hè u furmatu di dati input?

A: U furmatu di dati input hè cumplementu di dui.

Q: CoreFFT supporta a FFT in avanti è inversa
operazioni?

A: Sì, CoreFFT supporta FFT avanti è inversu
operazioni.

CoreFFT v8.0
Guida per l'utente CoreFFT
Introduzione
U core di a trasformata di Fourier veloce (FFT) implementa l'algoritmu efficiente di Cooley-Turkey per calculà a trasformata discreta di Fourier. CoreFFT hè adupratu in una larga gamma di applicazioni cum'è cumunicazioni digitale, audio, misurazioni, cuntrollu è biomedicale. CoreFFT furnisce una FFT basata in MACC altamente parametrizzabile, efficiente in zona è altu rendiment. U core hè dispunibule cum'è un codice di u Livellu di Trasferimentu di Registru (RTL) di a trasfurmazioni in e lingue Verilog è VHDL. Equazione 1. N-punto avanti FFT (N è una potenza di 2) di una successione x(0), x(1),…, x(N-1) dove, k = 0, 1… N-1
Equazione 2. FFT inversa a N punti (N è una potenza di 2) di una sequenza X(0), X(1),…, X(N-1) dove, n = 0, 1… N-1
Impurtante: Mentre eseguisce una FFT inversa, u core ùn applica micca a divisione per N di EQ 2 (cum'è a divisione per una putenza di dui hè triviale).
A figura seguente illustra un sistema basatu in FFT chì hè custituitu da una fonte di dati, u modulu FFT è un lavamanu di dati, chì hè u destinatariu di dati trasfurmatu. Figura 1. FFT-Based System Example

Features
CoreFFT supporta l'implementazioni di trasformazione FFT di decimazione in-tempu in situ Radix-2 è Radix-22. A tavula seguente lista e caratteristiche chjave per ogni implementazione.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 1

CoreFFT v8.0

Table 1. Chjave Features Support

Feature Trasforma dimensioni, punti

In locu

Streaming

32, 64, 128, 256, 512, 1024, 2048, 16, 32, 64, 128, 256, 512, 1024,

4096, 8192 è 16384.

2048, è 4096

Nota: U FFT 16384-pt hè supportatu nantu à RTG4TM, PolarFire®,

e parti SoC PolarFire solu.

FFT in avanti è inversu

Larghezza di bit di dati di input

8

Larghezza di bit fattore Twiddle

8

Formatu di dati di input / output

Two’s complement

Produzione naturale sampl'ordine

Bloccu cundizionale in virgule flottante

scaling

Calendrier de mise à l'échelle prédéfini ou non Aucune mise à l'échelle

Memoria minima o buffer opzionale Sì cunfigurazioni

Twiddle basatu in blocchi RAM integrati Sì Tabella di ricerca (LUT)

Supportu per rinfrescante twiddle LUT Sì

Segnali di handshake per facilità l'interfaccia sì faciule à i circuiti di l'utilizatori

Interfaccia di streaming AXI4

Innò

Trasformazione avanti/inversa in run-time Nisuna cunfigurazione

Iè 8 32 Complementu di dui Optional No

Innò

No Iè
Iè Iè

Famiglie sustegnu
CoreFFT supporta e seguenti famiglie FPGA. · PolarFire® · PolarFire SoC · SmartFusion® 2 · IGLOO® 2 · RTG4TM
Utilizazione è prestazione di u dispositivu
CoreFFT hè statu implementatu in u dispositivu SmartFusion2 M2S050 utilizendu u gradu di velocità -1 è PolarFire MPF300 cù u gradu di velocità -1. Un riassuntu di e dati di implementazione hè furnitu in 6. Appendice A: Utilizazione è Rendimentu di u Dispositiu FFT In-Place è 7. Appendice B: Streaming FFT Utilizazione è Prestazione di u Dispositiu.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 2

CoreFFT v8.0
Table of Contents
Introduzione …………………………………………………………………………………………………………………………………………………… ..1 Caratteristiche…………………………………………………………………………………………………………………………………… …….. 1 Famiglie supportate ………………………………………………………………………………………………………………………… 2 Utilizazione è Rendimentu di u Dispositiu…………………………………………………………………………………………………….. 2
1. Descrizzione Funziunale………………………………………………………………………………………………………………………..4 1.1. Opzioni di l'Architettura……………………………………………………………………………………………………………………… 4 1.2. FFT in situ…………………………………………………………………………………………………………………………… 4 1.3. Buffer di memoria in situ…………………………………………………………………………………………………………..5 1.4. Streaming FFT………………………………………………………………………………………………………………………….. 7
2. Interfaccia………………………………………………………………………………………………………………………………………………… … 12 2.1. FFT in situ…………………………………………………………………………………………………………………………….12 2.2. Streaming FFT……………………………………………………………………………………………………………………… 14
3. Diagrammi di timing…………………………………………………………………………………………………………………………… 20 3.1. FFT in situ…………………………………………………………………………………………………………………………….20 3.2. Streaming FFT……………………………………………………………………………………………………………………… 21
4. U flussu di l'attrezzi ……………………………………………………………………………………………………………………… ….. 23 4.1. Licenza……………………………………………………………………………………………………………………… 23 4.2. Configurazione di CoreFFT in SmartDesign……………………………………………………………………………………. 23 4.3. Flussi di simulazione………………………………………………………………………………………………………… 24 4.4. Limitazioni di Design………………………………………………………………………………………………………… 25 4.5. Sintesi in Libero SoC…………………………………………………………………………………………………………. 25 4.6. Place-and-Route in Libero SoC…………………………………………………………………………………………………………..25
5. Integrazione di u Sistema…………………………………………………………………………………………………………………………………… 26 5.1 . FFT in situ………………………………………………………………………………………………………………………….26 5.2. Streaming FFT………………………………………………………………………………………………………… 26
6. Appendice A: Utilizazione è Prestazione di i Dispositivi FFT in Locu……………………………………………………28
7. Appendice B: Utilizazione è Prestazione di u Dispositivu FFT in Streaming………………………………………………………………30
8. Storia di a revisione………………………………………………………………………………………………………… 32
Supportu Microchip FPGA……………………………………………………………………………………………………………………… 34
Infurmazioni Microchip…………………………………………………………………………………………………………………………….. 34 U Microchip Websitu……………………………………………………………………………………………………………………………………..34 Serviziu di Notificazione di Cambiamentu di Produttu…… …………………………………………………………………………………. 34 Assistenza Clienti…………………………………………………………………………………………………………………………… 34 Codice di Dispositivi Microchip Funzione di Prutezzione………………………………………………………………………………..34 Avvisu Legale……………………………………………… ……………………………………………………………………………………………… 35 Marchi ……………………………………………………… ………………………………………………………………………………. 35 Sistema di Gestione di a Qualità ……………………………………………………………………………………………………………. 36 Vendite è serviziu in u mondu sanu……………………………………………………………………………………………………………….37

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 3

CoreFFT v8.0
Descrizzione Funziunale
1. Descrizzione Funziunale
Questa sezione descrive a descrizzione funziunale di u CoreFFT.
1.1 Opzioni di Architettura
Sicondu a cunfigurazione di l'utilizatori, CoreFFT genera una di e seguenti implementazioni di trasfurmazioni: · FFT in situ · FFT in streaming
1.2 FFT in situ
L'opzione di architettura carica un quadru di N dati cumplessiamples in a so RAM in u locu è li processa sequentially, usendu un solu processatore Radix-2. Memorizza i risultati di ogni stage in a RAM in situ. U FFT in situ piglia menu risorse di chip cà u FFT streaming, ma u tempu di trasfurmazioni hè più longu. A figura seguente mostra un schema funziunale di a trasformazione in-lace. Figura 1-1. Diagramma di blocchi funziunali in situ Radix-2 FFT (Configurazione minima)

I dati di input è output sò rapprisentati cum'è parole 2 * WIDTH-bit composte da parti reali è imaginarie. E duie parti sò dui numeri di cumplementari di bit WIDTH ognunu. U modulu processa frames (bursts) di dati cù una dimensione di frame di N parole cumplesse. U quadru da esse processatu hè caricatu in a memoria in situ. A memoria cuntene dui blocchi RAM identichi, ognunu hè capaci di almacenà N / 2 parole cumplesse. A memoria in situ sustene a doppia larghezza di banda. Pò leghje è scrive duie parolle cumplesse à u stessu tempu. Una volta i dati cumplessu N sampi li sò caricati in a memoria, u calculu FFT principia automaticamente, è a memoria in situ hè aduprata per i calculi.
U prucessu di calculu FFT in situ si trova in una sequenza di stages cù u numeru di staghè uguale à log2N. Ad ogni stage di u prucessu di dati FFT, a farfalla Radix-2 leghje tutti i dati cullucatu in a memoria in u locu, duie parolle cumplessu à tempu. L'interruttore di lettura cù un generatore di indirizzu di lettura (micca mostratu in a Figura 1-1) aiuta à a farfalla à ottene dati almacenati in l'ordine necessariu da l'algoritmu FFT. In più di i dati, a farfalla ottene fattori di twiddle (coefficienti senu / cosenu) da a LUT twiddle. A farfalla scrive risultati intermedi à a memoria in situ attraversu u switch di scrittura.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 4

CoreFFT v8.0
Descrizzione Funziunale
Dopu à l'ultimu calculu stage, a memoria in u locu almacena i dati cumpletamente trasfurmati. U modulu mette in un quadru di dati trasfurmatu N-parola, una parolla à volta, sempre chì u signale READ_OUTP hè attivu. CoreFFT calcula i fattori di twiddle richiesti da l'algoritmu FFT è li scrive à u LUT twiddle. Questu succede automaticamente à l'accensione quandu u reset globale asincronu NGRST hè affermatu.

1.3
1.3.1

Buffer di memoria in situ
Questa sezione descrive i Buffer di Memoria In-Place di u CoreFFT.
Configurazione minima A cunfigurazione minima, cum'è mostra in a Figura 1-1, hè abbastanza per rializà a FFT perchè hà a RAM in situ necessaria da l'algoritmu FFT. Ma a cunfigurazione minima ùn utilizeghja micca u mutore di trasfurmazioni tuttu u tempu. À u cuntrariu, quandu i dati sò caricati in a memoria in u locu, o i dati trasfurmati sò leghjiti, a farfalla resta inattiva. A figura seguente mostra a cronologia di u ciclu FFT. U ciclu hè custituitu da e trè fasi seguenti:
· Scaricate un novu quadru di dati di input in a RAM in situ · Eseguite a trasfurmazioni attuale · Caricate u risultatu di trasfurmazioni per liberà a RAM in-ilace
Figura 1-2. Configurazione Minima In-Place FFT Cycle

1.3.2

In a cunfigurazione minima, a farfalla corre solu durante a fase di calculu. Quandu u ritmu di burst di dati permette, a cunfigurazione minima furnisce u megliu usu di risorse di u dispositivu. In particulare, salva un numeru significativu di blocchi RAM.
Configurazione Buffered Per migliurà l'utilizazione di a farfalla è per quessa riduce u tempu mediu di trasfurmazioni, ponu esse aduprati buffer di memoria supplementari. A figura seguente mostra u diagramma di blocu FFT buffered.
Figura 1-3. Diagramma di blocchi FFT buffered

L'opzione buffered hà dui banchi di memoria in situ identici chì implementanu un buffer di ping-pong è un buffer di output. Ogni banca hè capaci di almacenà N parolle cumplessu è leghje duie parolle cumplesse à tempu. U core state machine cuntrolla u ping-pong switching, cusì chì una fonte di dati vede solu un buffer chì hè pronta per accettà novi dati. U buffer chì ùn accetta micca i novi dati hè utilizatu cum'è RAM in situ da u mutore FFT.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 5

CoreFFT v8.0
Descrizzione Funziunale
L'architettura di buffering ping-pong aumenta l'efficienza di u mutore FFT. Mentre chì unu di i dui banche di input hè implicatu in u calculu FFT attuale, l'altru hè dispunibule per scaricà u prossimu quadru di dati di input. In u risultatu, u mutore FFT ùn hè micca inattivu in attesa di dati freschi per riempie u buffer di input. Da a perspettiva di a fonte di dati, u core pò riceve una splutazione di dati in ogni locu in u periodu di calculu FFT. Quandu u mutore hà finitu di trasfurmà u quadru di dati attuale è u bancu di buffer di input hè statu pienu di un altru quadru di dati, a macchina statale scambia i banche di ping-pong, è a carica di dati è u calculu cuntinueghja nantu à i banche di memoria alterna.
L'ultimu stage di u calculu FFT usa un schema fora di locu. U mutore FFT leghje e dati intermedi da a memoria in situ ma scrive u risultatu finali in u buffer di dati di output. I risultati finali restanu in u buffer di output finu à chì u mutore FFT li rimpiazza cù i risultati di u prossimu quadru di dati. Da a perspettiva di u destinatariu di dati, i dati di output sò dispunibuli per leghje in ogni mumentu, eccettu l'ultimi FFT stage.
U ciclu FFT di cunfigurazione buffered hè mostratu in a figura seguente.
Figura 1-4. Cicli FFT di cunfigurazione buffered

1.3.3

Considerazioni di lunghezza di parole finite À ogni stage di l'algoritmu FFT in situ, a farfalla piglia dui samples fora di a memoria in situ è ​​torna dui s processatiample à i stessi lochi di memoria. U calculu di farfalla implica a multiplicazione cumplessa, l'addizione è a sottrazione. U ritornu samples pò avè una larghezza di dati più grande cà u sampscelti da a memoria. Precauzioni deve esse pigliatu per assicurà chì ùn ci hè micca overflow di dati.
Per evità u risicu di overflow, u core impiega unu di i trè metudi seguenti:
· Scala di dati di input · Scala in virgula flottante di bloccu incondizionale · Scala in virgula flottante di bloccu condizionale
Scala di dati di input: a scala di dati di input richiede una pre-pendenza di i dati di input samples cun abbastanza bit sign extra, chjamati guard bits. U numaru di bit di guardia necessariu per cumpensà a crescita massima di bit pussibule per una FFT N-puntu, hè log2N + 1. Per esempiuample, ogni input sample di un FFT di 256 punti deve cuntene nove bit di guardia. Una tale tecnica riduce notevolmente la risoluzione effettiva di bit FFT.
Scala in Puntu Flotante di Blocchi Incondizionati: A seconda manera di cumpensà a crescita di bit FFT hè di scalà i dati da un fattore di dui à ogni s.tage. In cunseguenza, i risultati finali FFT sò scalati da un fattore di 1/N. Stu approcciu hè chjamatu scala in virgola flottante di bloccu incondizionatu.
I dati di input deve esse scalatu da un fattore di dui per prevene u overflow à u primu stage. Per impedisce u overflow in successivi stages, u core riduce i risultati di ogni s precedentetage da u fattore di dui trasferendu tuttu u bloccu di dati (tutti i risultati di u currente stage) un pocu à diritta. U numeru tutale di bits chì i dati perdenu per via di u cambiamentu di bit in u calculu FFT hè log2N.
U bloccu incondizionatu in virgola flottante risulta in u listessu numeru di bit persi cum'è in a scala di dati di input. Tuttavia, pruduce risultati più precisi, cum'è u mutore FFT principia cù dati di input più precisi.
Scala in virgola flottante di bloccu cundizionale: In a scala in virgola flottante di bloccu condizionale, i dati sò spustati solu se a crescita di bit si verifica veramente. Se una o più outputs di farfalla crescenu, tuttu u bloccu di dati hè spustatu à diritta. U monitoru di a virgola flottante di bloccu condicionale verifica ogni output di farfalla per a crescita. Se u cambiamentu hè necessariu, hè

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 6

CoreFFT v8.0
Descrizzione Funziunale
eseguita dopu à tuttu u stage hè cumpletu, à l'input di u prossimu stage farfalla. Sta tecnica furnisce a minima quantità di distorsioni (rumore di quantificazione) causata da a lunghezza finita di a parolla.
In u modalità Floating-Point Block Conditional, u core pò eventualmente calculà u fattore di scala attuale. Face cusì se u paràmetru SCALE_EXP_ON hè stabilitu per esse 1. Allora u fattore attuale calculatu appare nantu à u portu SCALE_EXP. U fattore rapprisenta u numeru di turni dritti chì u mutore FFT applica à i risultati. Per esample, u valore SCALE_EXP di 4 (100) significa chì i risultati FFT sò stati spostati à destra (downscaled) da 4 bits; vale à dì, divisu da 2SCALE_EXP = 16. U signale accumpagna i risultati FFT è hè validu mentre OUTP_READY hè affirmatu. Per scalare i risultati attuali di CoreFFT, vale à dì, per rende paragunabili à i bins trasformati in virgola flottante, ogni output FFT sample deve esse multiplicatu da 2SCALE_EXP:
· Risultatu FFT (Reale) = DATAO_RE*2SCALE_EXP · Risultatu FFT (Imaginariu) = DATAO_IM*2SCALE_EXP
Impurtante: A calculatrice di l'esponente di scala pò esse attivata solu in u modu di virgule flottante di bloccu condicionale.

1.3.4

U CoreFFT, per difettu, hè cunfiguratu per applicà u scaling in virgule flottante di bloccu condicionale. In u modu Floating-Point di bloccu cundizionale, i dati di input sò verificati è scalate da un fattore di dui se ne necessariu, prima di u primu s.tage.
Tempu di Trasfurmazione U calculu FFT piglia (N / 2 + L) x log2N + 2 cicli di clock, induve L hè un paràmetru specificu di implementazione chì rapprisenta a latenza aggregata di un bancu di memoria, switch, è a farfalla. L ùn dipende micca da a dimensione di trasformazione N. Solu dipende da a risoluzione di u bit FFT. L è uguale a 10 a risoluzioni di bit da 8 a 18, e L è uguale a 16 a risoluzioni di bit da 19 a 32. Per es.ample,
· Per un FFT a 256 punti a 16 bit
Tempu di calculu = (256/2 + 10) x log2256 + 2 = 1106 periodi di clock.
· Per un FFT a 4096 punti a 24 bit
Tempu di calculu = (4096/2 + 16) x log24096 + 2 = 24770 periodi di clock.

1.3.5

Implementazione di Memoria U core usa blocchi RAM duri per implementà a memoria in situ, altri buffer di memoria, è un LUT twiddle. I FPGA portanu dui tipi di RAM dura: grande SRAM (LSRAM) è micro-RAM. L'implementazione di memoria pò esse cuntrullata da u paràmetru URAM_MAXDEPTH. CoreFFT usa micro-RAM se a prufundità necessaria ùn supera u valore di u paràmetru. Per esample, u paràmetru URAM_MAXDEPTH stabilitu à 64, utilizza micro-RAM in qualsiasi dimensione FFT finu à 128 punti, postu chì a prufundità necessaria hè POINTS/2. Fixendu u valore di u paràmetru à 0 impedisce à u core di utilizà i micro-RAM in tuttu, perch'elli ponu esse usatu in altrò.
U paràmetru URAM_MAXDEPTH hè accessibile attraversu l'interfaccia d'utilizatore core.

1.4 Streaming FFT
Streaming FFT supporta l'elaborazione di dati cumplessu cuntinuu, una data di input cumplessa sample per periodu di clock. L'architettura di streaming hà tanti processori Radix-22, blocchi RAM è LUT necessarii per sustene a trasfurmazioni di dati in streaming. A figura seguente mostra un diagramma funzionale di a trasformazione di streaming di 256 punti.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 7

Figura 1-5. Streaming Radix-22 256-pt FFT Functional Block Diagram

CoreFFT v8.0
Descrizzione Funziunale

I dati di input è output sò rapprisentati cum'è (2 x DATA_BITS) parole bit composte da parti reali è imaginarie. E duie parti sò dui numeri cumplementarii di DATA_BITS bits ognunu. U modulu processa frames di dati cù una dimensione di frame uguale à a dimensione di trasformazione di N parole cumplesse. U quadru per esse processatu vene à l'input x (n) cum'è una sequenza di e parolle di dati cumplessi, una parola (2 x DATA_BITS)-bit per intervallu di clock. U prossimu quadru pò principià immediatamente dopu à l'ultima parola di dati di un quadru attuale o in ogni mumentu dopu.
A figura seguente mostra un example du cadre i+1 qui suit immédiatement le cadre i, et le cadre i+2 venant après un intervalle arbitraire. I dati di input sampi le in un quadru deve vene à ogni intervallu di clock, cusì un quadru chì dura esattamente N intervalli di clock. Ci hè una latenza sustanziale assuciata à l'algoritmu di streaming. I frames di dati di output appariscenu à u listessu ordine, freccia di clock, è cù i stessi spazii (s'ellu ci hè) trà i frames output, cum'è quelli trà i frames input.
Figura 1-6. Streaming FFT Input Data Frames

1.4.1 1.4.2

U numaru di farfalle FFT hè uguali à log2(N), cusì ogni stagE esse trattatu da una farfalla separata. Di conseguenza, tutti i stages sò trattati in parallelu.
CoreFFT calcula i fattori di twiddle richiesti da l'algoritmu FFT. À l'accensione, u core carica automaticamente i fatturi di twiddle in RAM in chip chì diventanu i LUT twiddle. L'azzione di l'utilizatori ùn hè micca necessariu per fà accade. À a fine di u caricamentu, u core attiva u signale RFS, lascendu una fonte di dati sapè chì u core hè prontu per inizià a trasfurmazioni FFT. U cuntenutu LUT pò esse rinfriscatu in ogni mumentu emettendu un signalu di un clock wide, REFRESH.
Streaming FFT Latency A latenza di streaming FFT hè principarmenti definita da a dimensione di trasfurmazioni, N. L'implementazione aghjunghjenu una quantità di ritardi di pipeline chì dipendenu da a dimensione FFT è a larghezza di u bit di a strada di dati. In altri palori, i risultati FFT sò ritardati in quantu à i dati di input da micca menu di N intervalli di dati per i outputs bit-invertiti. A latenza di output urdinata hè circa duie volte più grande.
Streaming FFT Memory Implementation Similmente à l'architettura in situ, u streaming FFT usa blocchi RAM duri per implementà e memorie necessarie, LUT è linee di ritardu. L'implementazione di a memoria pò esse cuntrullata da u paràmetru URAM_MAXDEPTH. CoreFFT usa micro RAM se a prufundità di a memoria ùn supera u valore di u paràmetru. Per esample, u paràmetru URAM_MAXDEPTH, stabilitu à 128, utilizza micro-RAM per creà ricordi di prufundità di 128 è menu. Fixendu u valore di u paràmetru à 0, impedisce à u core di utilizà i micro RAM in tuttu, perch'elli ponu esse usatu in altrò.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 8

CoreFFT v8.0
Descrizzione Funziunale

1.4.3

Streaming FFT Output Data Words Order I risultati di output ottenuti da l'algoritmi FFT Radix-2 è Radix-22 sò in l'ordine di bit-inversu.
Tuttavia, l'implementazione in situ eseguisce internamente l'artampl'ordine. Dunque, u core mette i risultati in un ordine naturali. U Streaming FFT supporta l'ordine di output bit-inversu è naturali. L'opzione bit-invertita utilizza menu risorse di chip è furnisce una latenza più chjuca.

1.4.4 1.4.4.1

Cunsiderazioni di a lunghezza di a parolla finita Questa sezione descrive e considerazioni di a lunghezza di a parolla finita di u CoreFFT.

Unscaled è Scale Schedule Modes
U calculu di farfalla implica l'addizione è a sottrazione. Queste operazioni ponu fà cresce a larghezza di dati di farfalla da input à output. Ogni farfalla, BF2I, o BF2II (vede a Figura 1-5), ponu intruduce un pocu extra à a larghezza di dati. Inoltre, i multiplicazioni ponu aghjunghje un pocu à u risultatu. A crescita di bit potenziale generale = log2 (N) + 1 bit. Precauzioni deve esse pigliatu per assicurà chì ùn ci hè micca overflow di dati.

Per evitari o riduce u risicu di overflow, u core impiega una di duie tecniche:
· U modu senza scala crea una strada di dati abbastanza larga per accoglie a crescita di bit. A larghezza di a strada di dati cresce da stage à stage per allughjà cumplettamente a crescita di l'algoritmu di bit, cusì chì l'overflow di dati ùn succede mai. La larghezza di bit di output reale o immaginaria è log2(N)+1 bit più larga di quella di input. U disignu hè cumplettamente sicuru da u puntu di overflow view.
· A tecnica di pianificazione di scala configurabile furnisce un utilizatore cun cuntrollu nantu à a scala (truncamentu di) ogni risultatu intermediu chì pò causà overflow. La larghezza di bit di output è uguale alla larghezza di bit di input. A tecnica hè overflow-safe solu quandu u calendariu di scala currisponde à a crescita di u bit attuale, chì ùn hè micca faciule d'ottene. L'approcciu prudente à a scala configurabile spessu porta à una scala extra. Ma s'è a natura di u signale trasfurmatu hè cunnisciuta per esse overflow-safe cù qualchi o tutti i stagEscludendu u ridimensionamentu estensivu, a tecnica hè benefica sia da u rapportu signale-à-rumore sia da i punti di vista di l'utilizazione di risorse di chip. Quandu hè cunfiguratu per a tecnica di pianificazione di scala, u core genera una bandiera di overflow se u overflow hè accadutu. A farfalla Radix-22 pò intruduce a crescita di 3-bit: farfalle BF2I, BF2II, è un multiplicatore ognunu pò aghjunghje un pocu. Ma solu una multiplicazione di tutti i FFT stages pò aghjunghje u bit. Cum'è ùn hè micca cunnisciutu prima u stage à quale u multiplicatore induce u bit extra s'ellu ci hè, u mutore FFT in u modu senza scala estende u percorsu di dati da u bit partendu da u primu s.tage.
In a tecnica di pianificazione scala ogni Radix-22 stage pò intruduce a crescita di 3-bit. U percorsu di dati in u stage cresce cusì, vale à dì, u stagL'output è tre bit più largo di stage input. U mutore taglia i trè pezzi in più dopu à u stagU risultatu hè calculatu, vale à dì u stagL'output hè troncatu di trè bit prima di passà à u prossimu stage. Un tali approcciu elimina a necessità di guessing the sub-stage à quale u downscaling deve esse applicatu.
A tabella seguente spiega i trè bit chì sò tagliati in u modu di pianificazione di scala secondu u valore di pianificazione di 2 bit per un s particulare.tage.

Table 1-1. Cutting Out Three Bits Extra in Scale Schedule Mode

Scale Schedule per una data Radix-22 Stage

Bits the Core Cuts Out

00

Tagliate trè MSB

01

Tagliate dui MSB è tondu unu LSB

10

Tagliate un MSB è tondu dui LSB

11

Trè round di LSB

U FFT / IFFT di e dimensioni 32, 128, o 512 chì ùn sò micca un putere di quattru, in più di e farfalle Radix-22, utilizanu una sola farfalla Radix-2. Quellu applicà à l'ultimu trasfurmazioni stage è taglia un solu bit extra.
U core invoca automaticamente a rilevazione di overflow in u modu di pianificazione di scala. A bandiera di overflow (OVFLOW_FLAG) appare appena u core detecta u overflow attuale. A bandiera ferma attiva finu à a fine di un quadru di output induve u overflow hè rilevatu.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 9

CoreFFT v8.0
Descrizzione Funziunale

1.4.4.2

Limitazioni di larghezza di bit di input in modalità Unscaled U modu Unscaled limita l'input massimu sampla larghezza di u bit trattatu da u core. A tabella seguente elenca a larghezza massima di bit per ogni dimensione FFT.
Table 1-2. Streaming Unscaled FFT Max Input Data Bit Width

Taglia FFT 16

Larghezza massima di input 32

32

30

64

30

128

28

256

28

512

26

1024

26

2048

24

4096

24

1.4.4.3

Ingressu in Scale Schedule U Scale Schedule identifica u fattore di downscaling per ogni streaming FFT stage. Ogni Radix-22 stagU fattore di scala hè cuntrullatu da dui bits dedicati di u calendariu di scala, è u Radix-2 stage usatu in u non-putere-di-quattru FFTs hè cuntrullata da una sola bit. A figura seguente mostra un example di una interfaccia d'utilizatore di pianificazione di scala per 1024-pt FFT. Un paru di checkboxes currisponde à un specificu Radix-22 stage è presenta dui bit di u fattore di downscaling. U fattore di downscaling attuale à un particulare stage hè calculatu cum'è 22*Bit1+Bit0 è piglia unu di i seguenti valori: 1, 2, 4, 8. I checkboxes mostrati in a figura seguente currispondenu à u valore di u calendariu di scala binaria di 10 10 10 10 11. Stu valore presenta un schedulu scala cunservatore chì ùn pruvucarà u overflow.
Figura 1-7. Scale Schedule User Interface

A tavula seguente elenca i scheduli di scala conservativa per ogni taglia FFT chì hè cumplettamente sicura.

Table 1-3. Schedule di Scale Conservative per Diverse Taglie FFT

Taglia FFT

Radix-22 Stage

5

4

3

2

1

0

4096

1

0

1

0

1

0

1

0

1

0

1

1

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 10

………..continua Taglia FFT
2048 1024 512 256 128 64 32 16

CoreFFT v8.0
Descrizzione Funziunale

Radix-22 Stage

5

4

3

2

1

0

x

1

1

0

1

0

1

0

1

0

1

1

x

x

1

0

1

0

1

0

1

0

1

1

x

x

x

1

1

0

1

0

1

0

1

1

x

x

x

x

1

0

1

0

1

0

1

1

x

x

x

x

x

1

1

0

1

0

1

1

x

x

x

x

x

x

1

0

1

0

1

1

x

x

x

x

x

x

x

1

1

0

1

1

x

x

x

x

x

x

x

x

1

0

1

1

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 11

CoreFFT v8.0
Interfaccia

2. Interfaccia
Questa sezione descrive l'interfaccia di u CoreFFT.

2.1
2.1.1

FFT in situ
Questa sezione descrive a FFT In-Place di u CoreFFT.

Parametri di cunfigurazione CoreFFT hà parametri (Verilog) o generici (VHDL) per cunfigurà u codice RTL. A tavula seguente descrive i paràmetri è i generici. Tutti i paràmetri è i generici sò tipi interi.
Table 2-1. Descrizzione di i paràmetri CoreFFT in situ

Parametru INVERSE

Gamma valida 0

Default 0

Descrizzione
0: Transformazione di Fourier in avanti 1: Transformazione di Fourier inversa

SCALA

0

0

0: Scala in virgule flottante di bloccu cundizionale

1: Scala in virgule flottante di bloccu incondizionatu

Per applicà a scala di dati di input, stabilisce u paràmetru SCALE à 0 è prependu u numeru propiu di guard bits à i dati di input. Allora a virgola flottante di bloccu condicionale ùn hà micca effettu.

PUNTI
LARGHEZZA MEMBUF

32, 64, 128,

256

256, 512, 1024,

2048, 4096,

8192, 16384

8

18

0

0

Trasforma a taglia. Nota: U FFT 16384-pt hè supportatu solu in parti RTG4, PolarFire è PolarFire SoC.
Larghezza di bit di dati è fattore di twiddle
0: cunfigurazione minima (senza buffer) 1: cunfigurazione buffered

SCALE_EXP_ON

0

0

0: Ùn custruisce micca u bloccu condicionale in virgola flottante

calculatrice d'esponente

1: Custruisce a calculatrice

URAM_MAXDEPTH

0, 4, 8, 16, 32, 64, 128, 256, 512

A più grande prufundità di RAM per esse implementata cù a microRAM dispunibule nantu à e parti SmartFusion2, IGLOO2, RTG4, PolarFire è PolarFire SoC. Quandu a prufundità di RAM necessaria per un PUNTI di dimensione di trasformazione selezziunata da l'utente supera u URAM_MAXDEPTH, sò usati grandi blocchi LSRAM.

2.1.2

Ports A tavula seguente lista i signali portu per l'architettura CoreFFT in situ.
Table 2-2. Descrizioni di u portu CoreFFT in situ

Port Name DATAI_IM

In / Out Port Width Bits Description

In

LARGHEZZA

Dati di input imaginariu da trasfurmà

DATAI_RE

In

LARGHEZZA

Dati di input reale da trasfurmà

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 12

CoreFFT v8.0
Interfaccia

………..cuntinuà

Nome di u portu

In / Out

DATAI_VALID In

Bits di larghezza di u portu 1

Descrizzione
Parolla cumplessa di input validu U signale accumpagna parole cumplesse di input valide prisenti nantu à l'inputs DATAI_IM, DATAI_RE. Quandu u signale hè attivu, a parolla cumplessa di input hè caricata in a memoria di u core sempre chì u signale BUF_READY hè statu affirmatu.

READ_OUTP In

1

Leghjite i dati trasformati Normalmente u modulu mette fora risultati FFT, una volta chì sò pronti, in una sola burst di N parole cumplesse. U destinatariu di dati trasfurmatu pò inserisce interruzioni arbitrarie in u burst deasserting u signale READ_OUTP.

DATAO_IM

Fora

DATAO_RE

Fora

DATAO_VALID Out

LARGHEZZA LARGHEZZA 1

Dati di output imaginariu
Dati di output reale
Parolla cumplessa di output validu U signale accumpagna parole cumplesse di output valide prisenti nantu à e output DATAO_IM è DATAO_RE.

BUF_READY Fora

1

FFT accetta dati freschi U core affirmeghja u signale quandu hè prontu à accettà dati. U signale ferma attivu finu à chì a memoria core hè piena. In altre parolle, u signale ferma attivu finu à PUNTI cumplessu input sampi sò caricati.

OUTP_READY Fora

1

I risultati FFT pronti U core affirmeghja u signale quandu i risultati FFT sò pronti per u destinatariu di dati trasformati per leghje. U signale resta attivu mentre u quadru di dati trasfurmatu hè lettu. Normalmente dura per POINTS intervalli di clock, salvu chì u signale READ_OUTP hè disattivatu.

SCALE_EXP

Fora

floor[log2 ( Ceil(log2(POIN TS)))]+1

Esponente di scala in virgule flottante di bloccu cundizionale Questa output opzionale pò esse attivata da u paràmetru SCALE_EXP_ON. L'output pò esse attivatu quandu u core hè in modu di scaling in virgule flottante di bloccu condicionale solu (u paràmetru SCALE = 0).

PONG CLK

Fora

1

In

1

U bancu Pong di u buffer di memoria di input hè utilizatu da u mutore FFT cum'è memoria di travagliu in situ. Stu signale opzionale hè validu solu in a cunfigurazione buffered.
Clock Rising Edge attivu U core master clock

SlowCLK

In

1

NGRST

In

1

Segnale di clock Rising-edge à bassa frequenza per l'inizializazione LUT di twiddle, deve esse almenu divisu per ottu volte di a frequenza CLK.
Reset asincronu Active-Low

Impurtante: Tutti i signali sò attivi-altu (logica 1) salvu chì altrimenti specificati.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 13

CoreFFT v8.0
Interfaccia

2.2
2.2.1

FFT in streaming
Streaming FFT hè dispunibule cù l'interfaccia nativa configurabile GUI o l'interfaccia di streaming AXI4.

Parametri di cunfigurazione CoreFFT hà parametri (Verilog) o generici (VHDL) per cunfigurà u codice RTL. A tavula seguente descrive questi parametri è generici. Tutti i paràmetri è i generici sò tipi interi.
Table 2-3. CoreFFT Streaming Architecture Parameter Descrizioni

Parametru Nome FFT_SIZE

Valid Range Default
16, 32, 64, 128, 256 256, 512, 1024, 2048 è 4096

Descrizzione
Trasforma i punti di dimensione U core processa frames di dati cumplessi cù ogni quadru chì cuntene FFT_SIZE complex samples. I frames di dati trasfurmati sò di listessa dimensione.

NATIV_AXI4

0 - 1

0

Selezzione di l'interfaccia di l'IP

· 0 - Interfaccia nativa

· 1 - Interfaccia streaming AXI4

Hè dispunibule solu per l'architettura streaming

SCALE_ON

0 - 1

1

1 - Abilita u calendariu di scala configurabile

Quandu l'opzione hè attivata, u core applica u configurable

fattore di scala, SCALE_SCH dopu à ogni farfalla.

0 - Modu senza scala

SCALE_SCH

0

Scala di u calendariu

Se u paràmetru SCALE_ON hè uguale à 1, SCALE_SCH hè usatu per

definisce u fattore di scala per ogni trasfurmazioni stage.

DATA_BITS TWID_BITS ORDINE

8-32 8-32 0-1

18

Larghezza di bit di dati di input di parti reali o imaginarie.

18

Twiddle factor di larghezza di bit di e so parti reali o imaginarie.

0

0: Dati di output in ordine di bit invertitu

1: Dati di output in ordine normale

URAM_MAXDEPTH 0, 4, 8, 16, 32, 0 64, 128, 256, 512

A più grande prufundità di RAM per esse implementata cù micro-RAM dispunibule nantu à e parti SmartFusion2, IGLOO2, RTG4, PolarFire, o PolarFire SoC. Quandu a prufundità di RAM necessaria per un PUNTI di dimensione di trasformazione selezziunata da l'utilizatori supera u URAM_MAXDEPTH, sò usati grandi blocchi LSRAM.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 14

CoreFFT v8.0
Interfaccia

………..cuntinuà
Nome di u paràmetru
AXI4S_IN_DATA Nota: Spiega u padding di 0 per i dati di input reali è imaginariiamples quand NATIV_AXI4 = 1

Gamma valida 8,16,24,32

Default 24

Descrizzione
Hè un paràmetru generatu internamente, micca accessibile per l'utilizatori. Hè adupratu per interpretà i dati di input samples in termini di limiti di byte per facilità l'interfaccia di streaming AXI4. Taglia AXI4S_IN_DATA definita cusì:
1. Se DATA_BITS = 8 allora AXI4S_IN_DATA= 8, ùn hè micca necessariu padding per i dati di input samples
2. Se 8 < DATA_BITS < 16 allora AXI4S_IN_DATA = 16, i dati di input sampu le deve esse riempitu cù 16 (DATA_BITS) di 0 à a pusizione MSB, sia per i dati reali sia imaginariiamples prima di mandà
3. Se 16 < DATA_BITS < 24 allora AXI4S_IN_DATA = 24, i dati di input sampu le deve esse riempitu cù 24 (DATA_BITS) di 0 à a pusizione MSB, sia per i dati reali sia imaginariiamples prima di mandà
4. Se 24 < DATA_BITS < 32 allora AXI4S_IN_DATA = 32, i dati di input sampu le deve esse riempitu cù 32 (DATA_BITS) di 0 à a pusizione MSB, sia per i dati reali sia imaginariiamples prima di mandà
Nota: L'imbottitura deve esse partendu da MSB.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 15

CoreFFT v8.0
Interfaccia

………..continued Name Parametru

Gamma valida

AXI4S_OUT_DATA 8,16,24,32, 40 Nota: Spiega u padding di 0 per i dati di output reali è imaginariiamples quand NATIV_AXI4 = 1

Default 24

Descrizzione
Hè un paràmetru generatu internamente, micca accessibile per l'utilizatori. Hè adupratu per interpretà i dati di output samples in termini di limiti di byte per facilità l'interfaccia di streaming AXI4. Taglia AXI4S_OUT_DATA definita cusì:
Quandu SCALE_ON = 0, allora output sampa dimensione di u file hè STREAM_DATAO_BITS = DATA_BITS + ceil_log2 (FFT_SIZE) + 1
Quandu SCALE_ON = 1, allora output sampa dimensione di u file hè STREAM_DATAO_BITS = DATA_BITS
1. Se STREAM_DATAO_BITS = 8 allora AXI4S_OUT_DATA = 8, ùn hè aghjuntu micca padding per i dati di output samples
2. Se 8 < STREAM_DATAO_BITS < 16 allora AXI4S_OUT_DATA = 16, i dati di output sampi le sò riempiti cù 16 - (STREAM_DATAO_BITS) di 0 à a pusizione MSB, sia per i dati reali sia imaginarii.amples prima di framing
3. Se 16 < STREAM_DATAO_BITS < 24 allora AXI4S_OUT_DATA = 24, i dati di output sampi le sò riempiti cù 24 - (STREAM_DATAO_BITS) di 0 à a pusizione MSB, sia per i dati reali sia imaginarii.amples prima di framing
4. Se 24 < STREAM_DATAO_BITS < 32 allora AXI4S_OUT_DATA = 32, i dati di output sampI file sò riempiti cù 32-(STREAM_DATAO_BITS) di 0 à a pusizione MSB, sia per i dati reali sia imaginarii.amples prima di framing
5. Se 32 < STREAM_DATAO_BITS < 40 allora AXI4S_OUT_DATA = 40, i dati di output sampi le sò imbottiti cù 40 - (STREAM_DATAO_BITS) di 0 à a pusizione MSB, sia per i dati reali sia imaginarii.amples prima di framing
Nota: L'imbottitura deve esse partendu da MSB.

2.2.2

Ports A tabella seguente descrive i signali di portu per a macro Streaming CoreFFT.
Table 2-4. Streaming FFT I/O Signal Descrizioni

Port Name CLK SLOWCLK
CLKEN

In / Out In In
In

Larghezza di Portu, Bits Descrizzione

1

Segnale di clock in rising-edge

1

Segnale di clock Rising-edge à bassa frequenza per twiddle LUT

inizializazione, deve esse almenu divisu per quattru volte di CLK

frequenza.

1

Segnale di attivazione di l'orologio opzionale

Dopu à de-asserting u signale, u core ferma di generà validu

risultati

NGRST

In

1

RST

In

1

Porti dispunibuli quandu NATIV_AXI4 = 1

Segnale di reset asincronu attivu-bassu. Segnale di reset sincronu opzionale attivu-altu.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 16

CoreFFT v8.0
Interfaccia

………..cuntinuà

Nome di u portu

In / Out

AXI4_S_DATAI_ In TVALID

AXI4_S_DATAI_ Out TREADY
AXI4_S_TDATAI In

AXI4_S_TLASTI In
AXI4_M_DATAO Out _TVALID

AXI4_M_DATAO In _TREADY

AXI4_M_TDATA Out O

AXI4_M_TLAST Out O
AXI4_S_CONFIG In I_TVALID

AXI4_S_

Fora

CONFIGI

_TREADY

AXI4_S_CONFIG In I

AXI4_M_CONFI Out GO_TVALID
AXI4_M_CONFI In GO _TREADY

Larghezza di Portu, Bits Descrizzione

1

AXI4 Stream data input validu à u core da fonte esterna

indica a dispunibilità di dati. Agisce cum'è START di u core.

Nota: Leghjite a descrizzione di u portu START per più infurmazione.

1

AXI4 Stream dati pronti à a fonte esterna

Indica chì i core sò pronti à accettà i dati

(2 *

AXI4 Stream input di dati da a fonte à u core.

AXI4S_IN_DATA) Contene dati reali (DATAI_RE) riempiti cù 0 è imaginarii

(DATAI_IM) dati riempiti cù 0 in cunseguenza.

1

Indica a trasmissione di l'ultimi dati sample da l'esterno

fonte.

1

L'output validu di dati AXI4 Stream à u ricevitore indica chì u core hè prontu

per mandà dati trasfurmati. Agisce cum'è DATAO_VALID di u core.

Nota: Leghjite a descrizzione di u portu DATAO_VALID per più

infurmazione.

1

AXI4 Stream dati pronti da u ricevitore

Indicate a preparazione di u ricevitore esternu

Deve esse sempre 1 per a funziunalità core

(2 * AXI4S_OUT_DA TA)

AXI4 Trasmette i dati à u ricevitore.
Contene dati reali trasformati (DATAO_RE) riempiti cù 0 è dati imaginarii (DATAO_IM) riempiti cù 0 in cunseguenza.

1

Indica a trasmissione di l'ultimi dati trasfurmati sample da

IP

1

Input validu à u core da una fonte esterna

Indica a dispunibilità di dati di cunfigurazione

1

Pronta à a fonte esterna per indicà a prontezza di i core

accettà i dati di cunfigurazione.

8

Input di dati di cunfigurazione da a fonte à u core è a fonte

deve cunfigurà u IP nanzu trasmette i dati samples. Hè

cuntene e seguenti informazioni di cunfigurazione:

· Bit0 - INVERSE (Quandu u bit hè altu, u core calcula FFT inversa di u seguente frame di dati, altrimenti Forward FFT)

· Bit1 - REFRESH (Ricarica i LUT di coefficienti di twiddle in i blocchi RAM corrispondenti)

1

Dati di statutu validu output à u ricevitore

Indicate u core hè prontu à mandà dati trasfurmati

1

Dati di statutu pronti da u ricevitore

Indica chì u ricevitore esternu hè pronta.

Deve esse sempre 1 per a funziunalità core.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 17

CoreFFT v8.0
Interfaccia

………..cuntinuà

Nome di u portu

In / Out

AXI4_M_CONFI Out GO

Larghezza di Portu, Bits Descrizzione

8

Dati di statutu fora à u ricevitore

Contene e seguenti informazioni di statutu:

Bit0 - OVFLOW_FLAG (Bandiera di overflow aritmetica, CoreFFT affirma a bandiera se u calculu FFT / IFFT overflows. A bandiera principia appena u core detecta overflow. A bandiera finisce quandu u quadru di dati di output attuale finisce)

Porti dispunibuli quandu NATIV_AXI4=0

DATAI_IM

In

DATA_BITS

DATAI_RE

In

DATA_BITS

START

In

1

Dati di input imaginariu da trasfurmà.
Dati di input reale da trasfurmà.
Segnale di partenza di trasfurmazioni
Significa u mumentu u primu sample di un frame di dati di input di N cumplessu samples entra in u core.
Se u START vene quandu u quadru di dati di input precedente ùn hè micca statu cumpletu, u signale serà ignoratu.

INVERSE

In

1

Trasfurmazione inversa Quandu u signale hè affirmatu, u core calcula FFT inversa di u quadru di dati seguenti, altrimenti FFT in avanti.

REFRESH

In

DATAO_IM

Fora

DATAO_RE

Fora

OUTP_READY Fora

1
DATA_BITS DATA_BITS 1

Ricarica i LUT di coefficienti di twiddle in i blocchi RAM corrispondenti.
Dati di output imaginariu
Dati di output reale
I risultati di FFT sò pronti U core affirmeghja u signale quandu hè vicinu à pruduce un quadru di dati N FFT'ed. A larghezza di u signale hè un intervallu di clock.

DATAO_VALID Out

1

U quadru di output hè validu
Accompagna un quadru di dati di output validu. Una volta cuminciatu, u signale dura N cicli di clock.
Se i dati di input venenu continuamente senza spazii trà frames, u DATAO_VALID una volta iniziatu durà indefinitu.

OVFLOW_FLAG Fora

1

Bandiera di overflow aritmeticu CoreFFT affirmeghja u flag se u calculu FFT/IFFT overflows. A bandiera principia appena u core detecta overflow. A bandiera finisce quandu u quadru di dati di output attuale finisce.

RFS

Fora

1

Request for start U core affirmeghja u signale quandu hè prontu per u prossimu quadru di dati di input. U signale principia appena u core hè prontu per u prossimu quadru. U signale finisce quandu u core riceve u signale START dumandatu.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 18

CoreFFT v8.0
Interfaccia
Impurtante: Tutti i signali sò attivi-altu (logica 1) salvu chì altrimenti specificati.

2.2.3

Formatu di frame di dati di input/output per l'interfaccia di streaming AXI4 Quandu l'interfaccia di streaming AXI4 hè selezziunata, i frames di dati di input è output sò dispunibuli cum'è dati reali è immaginari in cascata, i dati sampi primi sò imbottiti cù zeri per abbinà i limiti di byte per facilità u streaming AXI4.
Per esample, DATA_BITS di 26, u cunfini di byte più vicinu hè 32, cusì ci vole à aghjunghje sei 0 per i dati reali è imaginariiample prima di cascata in frame AXI4 streaming I/O DATA
Table 2-5. AXI4 Streaming Interface I/O Format di frame di dati

Bits: 63…58 0's Padding

Bits: 57…32 Dati Immaginari

Bits: 31..26 0's Padding

Bits: 25…0 Dati Reali

Cunsigliu: Vede a descrizzione di i paràmetri AXI4S_IN_DATA è AXI4S_OUT_DATA per u padding zero in a Tabella 2-3.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 19

CoreFFT v8.0
Diagrammi di u tempu
3. Diagrams Timing
Questa sezione descrive u diagramma di timing di CoreFFT.
3.1 FFT in situ
Quandu u FFT in situ affirmeghja u signale BUF_READY, una fonte di dati cumencia à furnisce i dati s.amples à esse trasfurmatu. Metà immaginaria è reale di i dati di input sample deve esse furnitu simultaneamente è accumpagnatu cù u bit di validità DATAI_VALID. A fonte di dati pò furnisce u sample à ogni ciculu di clock o à un ritmu arbitrariu più lento (consultate a Figura 3-1). Una volta chì u modulu FFT riceve N-input samples, si cala u signali BUF_READY. U mutore FFT principia à trasfurmà i dati automaticamente dopu chì hè prontu. In a cunfigurazione di memoria minima, a fase di trasfurmazioni principia immediatamente dopu chì a carica di dati hè cumpleta. In a cunfigurazione buffered, u mutore FFT pò aspittà finu à chì u burst di dati precedente hè processatu. Allora, u mutore principia automaticamente. A figura seguente mostra a carica di dati di input. Figura 3-1. Caricà i dati di input
À a fine di a trasfurmazioni, u modulu FFT affirmeghja u signale OUTP_READY è principia à generà i risultati FFT. A metà imaginaria è reale di l'output sampi le appariscenu simultaneamente in uscite multibit DATAO_IM è DATAO_RE. Ogni output sample hè accumpagnatu da u bit DATAO_VALID. U ricevitore di dati accetta i dati trasfurmati sia à ogni ciculu di u clock o à un ritmu arbitrariu più lento. U modulu FFT cuntinueghja à furnisce una output di dati mentre u signale READ_OUTP hè affirmatu. Per cuntrullà l'output sampLe rate, le récepteur doit désasserter le signal READ_OUTP au besoin (comme illustré dans la figure suivante). A figura seguente mostra a ricezione di e dati di trasfurmazioni. Figura 3-2. Riceve Dati Trasformati

Quandu s'utilice u signale READ_OUTP per cuntrullà a rata di lettura, a crescita di u ciclu FFT pussibule deve esse cunsideratu. In a cunfigurazione di memoria minima, ogni prolongazione di u tempu di lettura (upload) estende u ciculu FFT vede Figura 1-2. In a cunfigurazione buffered, u ciculu FFT cresce quandu u tempu di upload attuale supera l'intervallu dedicatu indicatu in Figura 1-3 cum'è "Disponibile per leghje i risultati di u ciclu i.". Inoltre, in a cunfigurazione buffered, u buffer di output cumencia à accettà i risultati freschi di FFT ancu s'è i risultati più vechji ùn sò micca stati letti, cusì soprascrive i più vechji. In questu casu, u core deasserts i signali OUTP_READY è DATAO_VALID quandu ùn sò più validi.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 20

CoreFFT v8.0
Diagrammi di u tempu

3.2
3.2.1

FFT in streaming
Per l'interfaccia AXI4S, l'operazione di i porti di l'interfaccia AXI4S sò mappate à quella di l'interfaccia nativa. Per una mappatura unu à unu, vede a Table 2-4 in Ports of 2.2. FFT in streaming.
RFS è START U core genera u signale RFS per fà sapè à una fonte di dati chì hè pronta per u prossimu quadru di i dati di input samples. Dopu chì hè affirmatu, u RFS ferma attivu finu à chì a fonte di dati risponde cù u signale START.
Una volta chì u core riceve u START, annulla u signale RFS è principia à riceve u quadru di dati di input. Dopu à N intervalli di clock, a ricezione di u quadru di dati hè cumpleta, è u signale RFS torna attivu. A figura seguente mostra un example quandu u mutore FFT aspetta per a fonte di dati per furnisce u signale START.
Figura 3-3. RFS aspetta START

U signale START hà un valore attivu permanente, è u core principia à riceve un altru quadru di input subitu dopu à a fine di un quadru precedente. Hè opzionale per a fonte di dati per fighjà u signale RFS. Pò affirmà u signale START in ogni mumentu, è u core principia à accettà un altru quadru di input appena pò. In a situazione di a Figura 3-3, una nova carica di quadru principia immediatamente dopu à u signale START. Se u signale START vene quandu un quadru di input precedente hè caricatu, u core aspetta finu à a fine di u quadru è poi principia à carricà un altru quadru. A figura seguente mostra un altru example induve i dati di input venenu indefinitamente senza spazii trà i frames. Figura 3-4. Trasfurmà Dati Streaming
A figura seguente mostra chì u signale START porta u quadru di input attuale da un intervallu di clock. Figura 3-5. START Conduce i Dati

3.2.2

OUTP_READY è DATAO_VALID
Questi dui signali servenu per avvisà un receptore di dati quandu i risultati FFT sò pronti. L'OUTP_READY hè un impulsu di u clock-wide. U core affirmeghja quandu u quadru di dati di output hè vicinu à uscita. U core affirmeghja u signale DATAO_VALID mentre genera u quadru di output. U signale DATAO_VALID traccia u signale OUTP_READY da un intervallu di clock. A figura seguente mostra e relazioni di timing trà i dui signali è u quadru di dati FFTed.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 21

Figura 3-6. Dati di output è signali di Handshake

CoreFFT v8.0
Diagrammi di u tempu

A figura seguente mostra un scenariu induve u signale DATAO_VALID hè permanentemente attivu quandu i dati in streaming ùn anu micca spazii trà i frames.
Figura 3-7. Streaming Output Dati senza Lacune

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 22

CoreFFT v8.0
U flussu di u strumentu
4. Strumenta Flussu
Questa sezione descrive u flussu di l'utillita di CoreFFT.
4.1 Licenza
CoreFFT hè una licenza chjusa.
4.2 Configurazione di CoreFFT in SmartDesign
CoreFFT hè dispunibule per u scaricamentu in u catalogu Libero® IP attraversu u web repository. Dopu chì hè listatu in u catalogu, u core pò esse instanziatu cù u flussu SmartDesign. Per sapè cumu creà un prughjettu SmartDesign, vede SmartDesign User Guide. Dopu a cunfigurazione è a generazione di l'istanza core, a funziunalità di basa pò esse simulata cù u bancu di prova furnitu cù CoreFFT. I paràmetri di testbench si adattanu automaticamente à a cunfigurazione CoreFFT. CoreFFT pò esse instanziatu cum'è un cumpunente di un disignu più grande.
Impurtante: CoreFFT hè cumpatibile cù l'ambiente di cuncepimentu integratu Libero (IDE) è Libero SoC. Sauf indication contraire, ce document utilise le nom Libero pour identifier à la fois Libero IDE et Libero SoC. Figura 4-1. SmartDesign CoreFFT Instance View
U core pò esse cunfiguratu utilizendu a cunfigurazione di l'interfaccia grafica d'utilizatore (GUI) in SmartDesign. Un exampU file di a GUI per a famiglia SmartFusion2 hè mostratu in a figura seguente.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 23

Figura 4-2. Configurazione di CoreFFT in SmartDesign

CoreFFT v8.0
U flussu di u strumentu

4.3 Flussi di simulazione
U testbench di l'utilizatori per CoreFFT hè inclusu in a liberazione. Per fà questu, eseguite i seguenti passi: 1. Per eseguisce u testbench di l'utilizatori, stabilisce u Design Root à l'istanziazione CoreFFT in u pane di gerarchia di cuncepimentu di Libero SoC. 2. Sottu Verify Pre-Synthesized Design, in a finestra Libero SoC Design Flow, cliccate right click Simulate, è dopu selezziunate Open Interactively. Questu invoca ModelSim è eseguisce automaticamente a simulazione.
Impurtante: Quandu simulate a versione VHDL di u core, pudete vulete sguassà l'avvisi di a biblioteca IEEE.NUMERIC_STD. Per fà cusì, aghjunghje e seguenti duie linee à u run.do generatu automaticamente file:
· stabilisce NumericStdNoWarnings -1 · stabilisce StdArithNoWarnings -1

4.3.1 4.3.1.1

Testbench U testbench unificatu utilizatu per verificà è pruvà CoreFFT hè chjamatu cum'è testbench d'utilizatori.
User Testbench A figura seguente mostra u schema di bloccu per testbench. L'equazione seguente mostra cumu a FFT comportamentale d'oru implementa i calculi di precisione finita mostrati in
x(k) = n= 0N-1X(n)e?jnk2?/N

L'Equazione 1 o l'Equazione 2 in Introduzione, i dui FFT d'oru è CoreFFT sò cunfigurati in modu identicu è ricevenu u stessu signale di prova. U testbench compara i signali di output di u modulu d'oru è u CoreFFT attuale.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 24

Figura 4-3. CoreFFT User Testbench

CoreFFT v8.0
U flussu di u strumentu

U testbench furnisce example di cumu utilizà u modulu FFT generatu. U bancu di prova pò esse mudificatu secondu e esigenze.
4.4 Design Constraints
U core timing hà bisognu di eccezzioni (vale à dì, u falsu percorsu è u percorsu multiciclu) sò da esse aduprati trà e fruntiere di u clock. Per riferimentu nantu à e restrizioni richieste per esse aghjuntu, vede CoreFFT.sdc da u percorsu. /component/Actel/DirectCores/CoreFFT/ /constraints/ CoreFFT.sdc.
4.5 Sintesi in Libero SoC
Per eseguisce a sintesi di a cunfigurazione selezziunata, fate i seguenti passi: 1. Pone a radica di u disignu in modu adattatu in a GUI di cunfigurazione. 2. Sottu Implement Design, in a tabulazione Design Flow, right click on Synthesize è selezziunate Run.
4.6 Place-and-Route in Libero SoC
Dopu avè stabilitu a radica di u disignu in modu adattatu è eseguite Synthesis. Sottu Implement Design in a tabulazione Design Flow, cliccate right on Place and Route è cliccate Run.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 25

CoreFFT v8.0
Integrazione di u sistema
5. Integrazione di u sistema
Questa sezione furnisce un example chì mostra l'integrazione di CoreFFT.
5.1 FFT in situ
A figura seguente mostra un exampl'usu di u core. Quandu u FFT in situ affirmeghja u signale BUF_READY, una fonte di dati cumencia à furnisce i dati s.amples à esse trasfurmatu. Metà immaginaria è reale di i dati di input sample deve esse furnitu simultaneamente è accumpagnatu cù a validità bit-DATAI_VALID. A fonte di dati pò furnisce u sample à ogni ciclu di clock o à un ritmu arbitrariu più lento (vede a Figura 3-1). Dopu chì u modulu FFT riceve N-input samples, si cala u signali BUF_READY. Figura 5-1. Esample di u Sistema FFT In-Place

U mutore FFT principia à trasfurmà i dati automaticamente dopu chì hè prontu. In a cunfigurazione di memoria minima, a fase di trasfurmazioni principia immediatamente dopu chì a carica di dati hè cumpleta. In a cunfigurazione buffered, u mutore FFT pò aspittà finu à chì un burst di dati precedente hè processatu. Allora u mutore parte automaticamente.
5.2 Streaming FFT
U core esegue FFT in avanti nantu à i dati chì venenu à ogni ciclu di clock. A fonte di dati cuntinueghja à furnisce i dati mentre u ricevitore di dati riceve continuamente i risultati FFT-ed è monitorizza a bandiera di overflow se ne necessariu. U signale START di input opzionale è u signale RFS di output pò esse usatu se u processu di i frames di dati hè necessariu. A fonte di dati genera u signale START per marcà l'iniziu di un altru quadru, è u receptore di dati usa u signale RFS per marcà l'iniziu di u quadru di output. Streaming CoreFFT pò processà infiniti flussi di dati cumplessi, cum'è mostra in a figura seguente.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 26

Figura 5-2. Esample di un sistema FFT in streaming

CoreFFT v8.0
Integrazione di u sistema

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 27

CoreFFT v8.0
Appendice A: Utilizazione di Dispositivi FFT in Locu ...

6. Appendice A: Utilizazione è Prestazione di i Dispositivi FFT in Locu
A Tabella 6-1 è a Tabella 6-2 mostranu l'utilizazione è u rendiment per una varietà di dimensioni FFT in situ è ​​larghezza di dati. I numeri sò stati ottenuti da a cunfigurazione listata in Table 6-3.
Table 6-1. Utilizazione è Prestazione di u Dispositivu FFT SmartFusion2 M2S050 in Locu (Configurazione di Memoria Minimu)

Parametri core

Usu di e Risorse di Tessuti

Blocchi

Prestazione

Points 256

larghezza 18

DFF 1227

4 LUT 1245

Totale 2472 XNUMX

LSRAM MACC

3

4

Frequenza di u Clock
328

Tempu FFT (s)
3.3

512

18

1262

1521

2783

3

4

321

7.4

1024

18

1299

2029

3328

3

4

310

16.8

4096

18

1685

4190

5875

12

4

288

85.7

Table 6-2. Utilizazione è Prestazione di u Dispositivu FFT SmartFusion2 M2S050 in Locu (Configurazione Buffered)

Parametri core

PUNTI LARGHEZZA

256

18

512

18

1024

18

4096

18

Usu di e Risorse di Tessuti

DFF

4LUT

Totale

1487

1558

3045

1527

1820

3347

1579

2346

3925

2418

4955

7372

Blocchi LSRAM 7 7 7 28

MACC 4 4 4 4

Prestazione

Clock Rate FFT Time (s)

328

3.3

321

7.4

310

16.8

281

87.8

Tip: · Dati in Table 6-1 è Table 6-2 sò stati ottenuti utilizendu paràmetri tipici di sintesi. A frequenza Synplify (MHz) hè stata stabilita à 500
· I numeri d'utilizazione sò ottenuti utilizendu Libero v12.4 è ci pò esse una zona potenziale è una migliione di u rendiment cù rivisioni più recenti
· In i paràmetri di sintesi, i cumpunenti ROM sò mappati à a logica è l'ottimisazione di RAM mappata per High Speed
· I paràmetri di u layout eranu i seguenti:
A creazione di blocchi di design hè attivata
Layout High Effort attivatu
· U tempu FFT mostratu riflette solu u tempu di trasfurmazioni. Ùn cunta micca i tempi di scaricamentu di dati o di risultà

Table 6-3. Utilizazione è Prestazione di i Dispositivi FFT PolarFire MPF300 in Locu (Configurazione di Memoria Minimu)

Parametri core

Usu di e Risorse di Tessuti

Orologio Massimu

PUNTI WIDTH uRAM Depth 4 LUT DFF uRAM LSRAM MACC Frequency

64

18

512

939 1189 9

0

4

415

Trasformazione di u tempu (uS)
0.6

128

18

512

1087 1254 9

0

4

415

1.2

256

18

512

1501 1470 18 0

4

415

2.6

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 28

CoreFFT v8.0
Appendice A: Utilizazione di Dispositivi FFT in Locu ...

………..cuntinuà

Parametri core

Usu di e Risorse di Tessuti

Orologio Massimu

PUNTI WIDTH uRAM Depth 4 LUT DFF uRAM LSRAM MACC Frequency

512

18

0

1519 1275 0

3

4

386

512

25

0

2494 2841 0

6

16

364

1024 25

0

3088 2859 0

6

16

369

4096 18

0

4161 1679 0

12

4

352

4096 25

0

6426 3237 0

15

16

339

16384 18

0

9667 3234 0

54

4

296

16384 25

0

17285 5483 0

75

16

325

Trasformazione di u tempu (uS)
6.2 6.7 14.3 70.1 73 387 353.5

Table 6-4. Utilizazione è prestazione di u dispositivu FFT PolarFire MPF300 in situ (Configurazione buffered)

Parametri core

Usu di e Risorse di Tessuti

Orologio Massimu

PUNTI WIDTH uRAM Depth 4 LUT DFF uRAM LSRAM MACC Frequency

Trasformazione di u tempu (uS)

64

18

512

1294 1543 21 0

4

351

0.7

256

18

512

2099 2050 42 0

4

351

3.1

512

18

512

2858 2858 84 0

4

351

6.8

1024 18

512

4962 4488 168 0

4

278

18.7

16384 18

0

12346 6219 0

126

4

335

342

Cunsigliu: · I dati in a Tabella 6-3 è a Tabella 6-4 sò stati ottenuti cù i paràmetri tipici di l'utillita Libero SoC. A limitazione di timing hè stata stabilita à 400 MHz
· I numeri d'utilizazione sò ottenuti utilizendu Libero v12.4 è ci pò esse una zona potenziale è una migliione di u rendiment cù rivisioni più recenti
· In i paràmetri di sintesi, i cumpunenti ROM sò mappati à a logica è l'ottimisazione di RAM mappata per High Speed
· U Locu è a Ruta hè stata stabilita per un Layout d'Altu Sforzu Impulsu da Timing
· U tempu FFT riflette solu u tempu di trasfurmazioni. Ùn cunta micca u scaricamentu di dati o i tempi di caricamentu di u risultatu

Impurtante: risorse FPGA è dati di rendiment per a famiglia PolarFire SoC sò simili à a famiglia PolarFire.

Table 6-5. Utilizazione FFT in situ è ​​Parametru di cunfigurazione di prestazione INVERSE SCALE SCALE_EXP_ON Tipu HDL

Valore 0 0 0 Verilog

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 29

CoreFFT v8.0
Appendice B: Utilizzo di u dispositivu FFT in streaming...

7. Appendice B: Streaming FFT Dispositivi Utilizazione è Prestazione
I seguenti tabelle listanu l'utilizazione è u rendiment per una varietà di cunfigurazioni di streaming FFT.
Table 7-1. Streaming FFT SmartFusion2 M2S050T Speed ​​​​Grade -1

Parametri core

Resource Usage

Blocchi

Frequenza di u Clock

FFT_SIZE DATA_BITS TWID_BITS Order DFF 4LUT Total LSRAM uRAM MACC

16

18

18

Inversu 2198 1886 4084 0

11

8

241

16

18

18

Normale 1963 1600 3563 0

5

8

241

32

18

18

Inversu 3268 2739 6007 0

16

16

225

64

18

18

Inversu 3867 3355 7222 0

19

16

217

128

18

18

Inversu 4892 4355 9247 5

16

24

216

256

18

18

Inversu 5510 5302 10812 7

16

24

229

256

18

18

Normale 5330 5067 10406 3

16

24

229

256

24

25

Inversu 8642 7558 16200 8

21

48

223

512

18

18

Inversu 6634 6861 13495 10

16

32

228

512

18

24

Inversu 9302 8862 18164 12

18

64

228

1024

24

24

Inversu 10847 11748 22595 17

18

64

225

1024

24

25

Inversu 11643 12425 24068 19

22

64

221

Tip: · a prufundità massima di uRAM hè stata stabilita à 64
· I numeri d'utilizazione sò ottenuti utilizendu Libero v12.4, è ci pò esse un potenziale area è migliurà a prestazione cù rivisioni più recenti
· In i paràmetri di sintesi, i cumpunenti ROM sò mappati à a logica è l'ottimisazione di RAM mappata per High Speed. A frequenza Synplify hè stata stabilita à 500
· U modu di layout altu sforzu hè statu stabilitu

Table 7-2. Streaming FFT PolarFire MPF300 Speed ​​​​Grade -1

Parametri core
FFT_SIZE DATA_BIT TWID_BITS SCALE uRAM Profundità di ordine

Resource Usage

Clock

4LUT DFF uRAM LSRAM MACC Rate

16

16

18

On

256 Inversu 1306 1593 6

0

4

319

16

16

18

On

256 Normale 1421 1700 12 0

4

319

32

16

18

On

256 Inversu 1967 2268 18 0

8

319

64

16

18

On

256 Inversu 2459 2692 15 0

8

319

128

20

18

On

256 Normale 4633 4911 44 0

24

310

256

22

18

Off

256 Normale 6596 6922 94 0

24

307

256

24

25

512

18

18

On

0

On

0

Inversu 8124 8064 0

14

48

304

Inversu 6686 5691 0

9

32

293

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 30

CoreFFT v8.0
Appendice B: Utilizzo di u dispositivu FFT in streaming...

………..continua Parametri Core
FFT_SIZE DATA_BIT TWID_BITS SCALE uRAM Profundità di ordine

Resource Usage

Clock

4LUT DFF uRAM LSRAM MACC Rate

1024

24

25

On

0

Inversu 13974 10569 0

21

64

304

1024

18

18

On

0

Normale 14289 10816 0

27

64

307

2048

18

18

On

0

Normale 12852 7640 0

24

40

304

2048

18

18

On

0

Inversu 12469 7319 0

16

40

315

4096

24

25

On

0

Normale 29977 14288 0

59

80

305

4096

28

28

On

512 Normale 34448 17097 120 48

80

301

Tip: · I dati in a tavula precedente sò stati ottenuti cù i paràmetri tipici di l'utillita Libero SoC. A limitazione di timing hè stata stabilita à 400 MHz
· I numeri d'utilizazione di u dispositivu di l'architettura di streaming sò quasi listessi sia per l'interfaccia AXI4S sia per l'interfaccia nativa
· I numeri d'utilizazione sò ottenuti utilizendu Libero v12.4, è ci pò esse un potenziale area è migliurà a prestazione cù rivisioni più recenti
· In i paràmetri di sintesi, i cumpunenti ROM sò mappati à a logica è l'ottimisazione di RAM mappata per High Speed
· U Locu è a Ruta hè stata stabilita per u Layout d'Altu Sforzu Impulsu da Timing
· Risorse FPGA è dati di rendiment per a famiglia PolarFire SoC sò simili à a famiglia PolarFire

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 31

CoreFFT v8.0
Storia di rivisione

8. Storia di rivisione
A storia di rivisione descrive i cambiamenti chì sò stati implementati in u documentu. I cambiamenti sò listati per rivisione, cuminciendu cù a publicazione più attuale.
Table 8-1. Storia di rivisione

Revision Data Description

C

08/2022 In a rivisione C di u documentu, Tabella 6-1, Tabella 6-2, Tabella 6-3, Tabella 6-4, Tabella 7-1,

è Table 7-2.

B

07/2022 Questa hè a lista di i cambiamenti in a rivisione B di u documentu:

· Actualizatu: Tabella 2-2 in 2.1.2. Porti.

· Actualizatu: Tabella 2-4 in 2.2.2. Porti.

· Aghjurnatu: 4.4. Limitazioni di Design.

· Eliminatu: rùbbrica "Configurazione di limitazioni di timing".

A

07/2022 Questa hè a lista di i cambiamenti in a rivisione A di u documentu:

· U documentu hè statu migratu à u mudellu Microchip.

· U numeru di documentu hè statu aghjurnatu à DS50003348A da 50200267.

· I seguenti sezzioni sò aghjurnati:

Table 1 in Features.

Utilizazione è prestazione di u dispositivu.

Table 1-2 in 1.4.4.2. Limitazioni di larghezza di bit di ingressu di u modu senza scala.

Figura 1-7 in 1.4.4.3. Entra in Scale Schedule.

Table 1-3 in 1.4.4.3. Entra in Scale Schedule.

Table 2-3 in 2.2.1. Parametri di cunfigurazione.

Table 2-4 in 2.2.2. Porti.

Table 2-2 in 2.1.2. Porti.

Figura 4-2 in 4.2. Configurazione di CoreFFT in SmartDesign.

· Sò aghjunte e seguenti rùbbriche : 1.4.3. Streaming FFT Output Data Word Orders. 2.2.3. Formatu di frame di dati di input/output per l'interfaccia di streaming AXI4. 4.3. Flussi di simulazione. 4.4. Limitazioni di Design. 4.5. Sintesi in Libero SoC. 4.6. Place-et-itinéraire in Libero SoC.
· I seguenti rùbbriche sò eliminati: "Versione supportata". "Ordine di output naturale".

10

Hè aghjuntu u supportu PolarFire® SoC.

9

"Supportu di u produttu": Sguassatu.

8

Cambiamenti aghjurnati ligati à CoreFFT v7.0.

7

Cambiamenti aghjurnati ligati à CoreFFT v6.4.

6

Cambiamenti aghjurnati ligati à CoreFFT v6.3.

5

Cambiamenti aghjurnati riguardanti Famiglie Supportate (SAR 47942).

4

Cambiamenti aghjurnati ligati à CoreFFT v6.1.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 32

CoreFFT v8.0
Storia di rivisione

………..continua Data di Revisione

3

2

1

Descrizzione
Questa hè a lista di i cambiamenti in a rivisione 3.0 di u documentu: · Cambiamenti aghjurnati ligati à CoreFFT v6.0. · A liberazione aghjusta u supportu per a famiglia SmartFusion2 (solu architettura In-Place).
Questa hè a lista di i cambiamenti in a rivisione 2.0 di u documentu: · Cambiamenti aghjurnati in relazione à CoreFFT v5.0. · Questa versione aghjusta una nova architettura à l'esistente CoreFFT v4.0 in situ. · A nova architettura supporta Streaming Forward è Inverse FFT chì trasforma u flussu di dati à alta velocità.
Liberazione iniziale.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 33

CoreFFT v8.0
Supportu Microchip FPGA
U gruppu di prudutti Microchip FPGA sustene i so prudutti cù diversi servizii di supportu, cumpresu u serviziu di u cliente, u centru di supportu tecnicu di u cliente, un websitu, è uffizii di vendita in u mondu. I clienti sò suggeriti à visità e risorse in linea di Microchip prima di cuntattà l'assistenza postu chì hè assai prubabile chì e so dumande sò digià rispostu. Cuntattate u Centru di Assistenza Tecnica attraversu u websitu à www.microchip.com/support. Mencione u numeru di parte di u dispositivu FPGA, selezziunate a categuria di casu adatta è carica u disignu files mentre crea un casu di supportu tecnicu. Cuntattate u Serviziu Clienti per un supportu di produttu micca tecnicu, cum'è u prezzu di u produttu, l'aghjurnamenti di u produttu, l'infurmazioni di l'aghjurnamentu, u statu di l'ordine è l'autorizazione.
· Da l'America di u Nordu, chjamate 800.262.1060 · Da u restu di u mondu, chjamate 650.318.4460 · Fax, da ogni locu in u mondu, 650.318.8044
Infurmazioni Microchip
U Microchip Websitu
Microchip furnisce supportu in linea via u nostru websitu à www.microchip.com/. Questu website hè usatu per fà files è l'infurmazioni facilmente dispunibili à i clienti. Alcune di u cuntenutu dispunibule include:
· Product Support Data sheets è errata, note appiicazioni è sampi prugrammi, risorse di cuncepimentu, guide d'utilizatori è documenti di supportu hardware, l'ultime versioni di u software è u software archiviatu
· Domande Frequenti di Supportu Tecnicu Generale (FAQs), richieste di supportu tecnicu, gruppi di discussione in linea, lista di membri di u prugramma di partner di design Microchip
· Business di Microchip Selettore di prudutti è guide di ordine, ultimi comunicati di stampa Microchip, lista di seminarii è avvenimenti, liste di uffizii di vendita di Microchip, distributori è rapprisentanti di fabbrica
Serviziu di Notificazione di Cambiamentu di Produttu
U serviziu di notificazione di cambiamentu di produttu di Microchip aiuta à mantene i clienti attuali nantu à i prudutti Microchip. L'abbonati riceveranu una notificazione per e-mail ogni volta chì ci sò cambiamenti, aghjurnamenti, rivisioni o errata in relazione à una famiglia di prudutti specifica o strumentu di sviluppu d'interessu. Per registrà, andate à www.microchip.com/pcn è seguite l'istruzzioni di registrazione.
Assistenza Clienti
L'utilizatori di i prudutti Microchip ponu riceve assistenza attraversu parechji canali: · Distributore o Rappresentante · Uffiziu Locale di Vendita · Ingegnere di Soluzioni Incrustate (ESE) · Supportu Tecnicu
I clienti anu da cuntattà u so distributore, rappresentante o ESE per supportu. L'uffizii di vendita lucali sò ancu dispunibili per aiutà i clienti. Una lista di l'uffizii di vendita è i lochi hè inclusa in stu documentu. U supportu tecnicu hè dispunibule attraversu u websitu à: www.microchip.com/support
Funzione di prutezzione di codice di i dispositi Microchip
Nota i seguenti dettagli di a funzione di prutezzione di codice nantu à i prudutti Microchip:

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 34

CoreFFT v8.0
· I prudutti Microchip rispondenu à e specificazioni cuntenute in a so specifica Scheda di dati Microchip. · Microchip crede chì a so famiglia di prudutti hè sicura quandu s'utilice in u modu previstu, in u funziunamentu
specificazioni, è in cundizioni normali. · Microchip valorizza è prutegge aggressivamente i so diritti di pruprietà intellettuale. Tentativi di violazione di u codice
e funzioni di prutezzione di u produttu Microchip sò strettamente pruibiti è ponu violà a Digital Millennium Copyright Act. · Nè Microchip nè un altru fabricatore di semiconductor pò guarantisci a sicurità di u so codice. A prutezzione di u codice ùn significa micca chì guarantimu chì u pruduttu hè "unbreakable". A prutezzione di u codice hè in constante evoluzione. Microchip hè impegnatu à migliurà continuamente e funzioni di prutezzione di codice di i nostri prudutti.
Avvisu Legale
Questa publicazione è l'infurmazioni quì ponu esse aduprate solu cù i prudutti Microchip, cumpresu per cuncepisce, pruvà è integrà i prudutti Microchip cù a vostra applicazione. L'usu di sta infurmazione in ogni altra manera viola questi termini. L'infurmazioni riguardanti l'applicazioni di u dispositivu sò furnite solu per a vostra comodità è ponu esse rimpiazzate da l'aghjurnamenti. Hè a vostra rispunsabilità per assicurà chì a vostra applicazione risponde à e vostre specificazioni. Cuntattate u vostru uffiziu di vendita Microchip locale per un supportu supplementu o uttene supportu supplementu à www.microchip.com/en-us/support/design-help/client-support-services.
QUESTA INFORMAZIONE hè furnita da u microchip "AS IS". MICROCHIP NON FACCIA RIPRESENTAZIONI O GARANTIE DI ALCUNA TIPI, SIA ESPRESSA O IMPLICITA, SCRITTA O ORALE, STATUTARIA O ALTRE, RELATIVA A L'INFORMAZIONI INCLUSI, MA NON LIMITATE A ALCUNA GARANZIA IMPLICITA DI NON VIOLAZIONE, POSSIBILITÀ E PARTECIPABILITÀ PER A COMMERCIALE, A PUBLICIDAD, A PUBLICIDAD. GARANTIE RELATATI À A SO CONDIZIONE, QUALITÀ, O PRESTAZIONI.
IN NESSUN CASU MICROCHIP SERA RESPONSABILE PER QUALSIASI PERDITA INDIRETTA, SPECIALE, PUNITIVE, INCIDENTALE, O CONSEGUENTE, DANNI, COSTO, O SPESE DI QUALUNQUE TIPI RELATATI À L'INFORMAZIONI O U U U U U SO, IN QUANTO CAUSATE, ANCHE QUANTO ESE ADVERTIMENTO. PUSSIBILITÀ OR I DANNI SONT PREVISIBILI. À LA MESSA ALTERNATA PERMISSATA DA LEGGE, A RESPONSABILITÀ TOTALE DI MICROCHIP PER TUTTE LE RECLAMAZIONI IN QUALSIA MANIERA RELATATA À L'INFORMAZIONI O U U SO USU NON SUPERARÀ L'IMPORTU DI TARIFFE, SE CUALQUIE, CHE AVRAI PAGATA DIRETTAMENTE À MICROCHIP PER L'INFORMAZIONI.
L'usu di i dispositi Microchip in l'applicazioni di supportu di vita è / o di sicurezza hè interamente à u risicu di u cumpratore, è u cumpratore accetta di difende, indemnizà è mantene innocu Microchip da qualsiasi danni, rivendicazioni, vestiti, o spese risultanti da tali usu. Nisuna licenza hè trasmessa, implicitamente o altrimenti, sottu à alcunu diritti di pruprietà intellettuale di Microchip, salvu s'ellu ùn hè micca dichjaratu altrimenti.
Marchi
U nome è u logu Microchip, u logu Microchip, Adaptec, AVR, logo AVR, AVR Freaks, BesTime, BitCloud, CryptoMemory, CryptoRF, dsPIC, flexPWR, HELDO, IGLOO, JukeBlox, KeeLoq, Kleer, LANCheck, LinkMD, maXStyluuchs, MediaLB, megaAVR, Microsemi, Microsemi logo, MOST, MOST logo, MPLAB, OptoLyzer, PIC, picoPower, PICSTART, PIC32 logo, PolarFire, Prochip Designer, QTouch, SAM-BA, SenGenuity, SpyNIC, SST, SST Logo, SuperFlash, Symmetricom , SyncServer, Tachyon, TimeSource, tinyAVR, UNI/O, Vectron è XMEGA sò marchi registrati di Microchip Technology Incorporated in i Stati Uniti è in altri paesi.
AgileSwitch, APT, ClockWorks, The Embedded Control Solutions Company, EtherSynch, Flashtec, Hyper Speed ​​Control, HyperLight Load, Libero, motorBench, mTouch, Powermite 3, Precision Edge, ProASIC, ProASIC Plus, ProASIC Plus logo, Quiet- Wire, SmartFusion, SyncWorld, Temux, TimeCesium, TimeHub, TimePictra, TimeProvider, TrueTime è ZL sò marchi registrati di Microchip Technology Incorporated in i Stati Uniti.
Suppressione Chjave Adjacente, AKS, Analogicu per l'Età Digitale, Qualchese Capacitor, AnyIn, AnyOut, Switching Augmented, BlueSky, BodyCom, Clockstudio, CodeGuard, CryptoAuthentication, CryptoAutomotive, CryptoCompanion, CryptoController, dsPICDEM, dsPICDEM Matching, Dynamic Average. , DAM, ECAN, Espresso T1S, EtherGREEN, GridTime, IdealBridge, Programmazione Seriale In-Circuit, ICSP, INICnet, Parallelazione Intelligente, IntelliMOS, Connettività Inter-Chip, JitterBlocker, Knob-on-Display, KoD, maxCrypto, maxView, memBrain, Mindi, MiWi, MPASM, MPF, MPLAB Certified logo, MPLIB, MPLINK, MultiTRAK, NetDetach, Omniscient Code Generation, PICDEM, PICDEM.net, PICkit, PICtail, PowerSmart, PureSilicon, QMatrix, REAL ICE, Ripple Blocker, , RTG4, SAM-

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 35

CoreFFT v8.0
ICE, Serial Quad I/O, simpleMAP, SimpliPHY, SmartBuffer, SmartHLS, SMART-IS, storClad, SQI, SuperSwitcher, SuperSwitcher II, Switchtec, SynchroPHY, Total Endurance, Trusted Time, TSHARC, USBCheck, VariSense, VectorBlox, VeriPHY, ViewSpan, WiperLock, XpressConnect è ZENA sò marchi di Microchip Technology Incorporated in i Stati Uniti è in altri paesi. SQTP hè una marca di serviziu di Microchip Technology Incorporated in i Stati Uniti U logu Adaptec, Frequency on Demand, Silicon Storage Technology è Symmcom sò marchi registrati di Microchip Technology Inc. in altri paesi. GestIC hè una marca registrata di Microchip Technology Germany II GmbH & Co. KG, una filiale di Microchip Technology Inc., in altri paesi. Tutti l'altri marchi citati quì sò pruprietà di e so cumpagnie rispettive. © 2022, Microchip Technology Incorporated è e so filiali. Tutti i diritti riservati. ISBN : 978-1-6683-1058-8
Sistema di Gestione di Qualità
Per infurmazione nantu à i Sistemi di Gestione di Qualità di Microchip, visitate www.microchip.com/quality.

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 36

AMERICA
Uffiziu Corporate 2355 West Chandler Blvd. Chandler, AZ 85224-6199 Tel: 480-792-7200 Fax: 480-792-7277 Assistenza tecnica: www.microchip.com/support Web Indirizzu: www.microchip.com Atlanta Duluth, GA Tel: 678-957-9614 Fax: 678-957-1455 Austin, TX Tel: 512-257-3370 Boston Westborough, MA Tel: 774-760-0087 Fax: 774-760-0088 Chicago Itasca, IL Tel: 630-285-0071 Fax: 630-285-0075 Dallas Addison, TX Tel: 972-818-7423 Fax: 972-818-2924 Detroit Novi, MI Tel: 248-848-4000 Houston, TX Tel: 281-894-5983 Indianapolis Noblesville, IN Tel: 317-773-8323 Fax: 317-773-5453 Tel: 317-536-2380 Los Angeles Mission Viejo, CA Tel: 949-462-9523 Fax: 949-462-9608 Tel: 951-273-7800 Raleigh, NC Tel: 919-844-7510 New York, NY Tel: 631-435-6000 San Jose, CA Tel: 408-735-9110 Tel: 408-436-4270 Canada - Toronto Tel: 905-695-1980 Fax: 905-695-2078

Vendite è serviziu in u mondu sanu

ASIA / PACIFIC
Australia - Sydney Tel: 61-2-9868-6733 China - Beijing Tel: 86-10-8569-7000 China - Chengdu Tel: 86-28-8665-5511 China - Chongqing Tel: 86-23-8980-9588 China - Dongguan Tel: 86-769-8702-9880 China - Guangzhou Tel: 86-20-8755-8029 China - Hangzhou Tel: 86-571-8792-8115 China - Hong Kong SAR Tel: 852-2943-5100 China - Nanjing Tel : 86-25-8473-2460 China – Qingdao Tel: 86-532-8502-7355 China – Shanghai Tel: 86-21-3326-8000 China – Shenyang Tel: 86-24-2334-2829 China – Shenzhen Tel: 86 -755-8864-2200 China - Suzhou Tel: 86-186-6233-1526 China - Wuhan Tel: 86-27-5980-5300 China - Xian Tel: 86-29-8833-7252 China - Xiamen Tel: 86-592 -2388138 China - Zhuhai Tel: 86-756-3210040

ASIA / PACIFIC
India - Bangalore Tel: 91-80-3090-4444 India - New Delhi Tel: 91-11-4160-8631 India - Pune Tel: 91-20-4121-0141 Giappone - Osaka Tel: 81-6-6152-7160 Giappone – Tokyo Tel: 81-3-6880- 3770 Korea – Daegu Tel: 82-53-744-4301 Korea – Seoul Tel: 82-2-554-7200 Malaysia – Kuala Lumpur Tel: 60-3-7651-7906 Malaysia – Penang Tel: 60-4-227-8870 Filippine - Manila Tel: 63-2-634-9065 Singapore Tel: 65-6334-8870 Taiwan - Hsin Chu Tel: 886-3-577-8366 Taiwan - Kaohsiung Tel: 886- 7-213-7830 Taiwan - Taipei Tel: 886-2-2508-8600 Tailanda - Bangkok Tel: 66-2-694-1351 Vietnam - Ho Chi Minh Tel: 84-28-5448-2100

EUROPA
Austria - Wels Tel: 43-7242-2244-39 Fax: 43-7242-2244-393 Danimarca - Copenhagen Tel: 45-4485-5910 Fax: 45-4485-2829 Finland - Espoo Tel: 358-9-4520 Francia - Parigi Tel: 820-33-1-69-53-63 Fax: 20-33-1-69-30-90 Germania - Garching Tel: 79-49-8931 Germania - Haan Tel: 9700-49-2129 Germania – Heilbronn Tel: 3766400-49-7131 Germania – Karlsruhe Tel: 72400-49-721 Germania – Munich Tel: 625370-49-89-627-144 Fax: 0-49-89-627-144 Germania – Rosenheim Tel: 44 -49-8031-354 Israel – Ra'anana Tel: 560-972-9-744 Italy – Milan Tel: 7705-39-0331 Fax: 742611-39-0331 Italy – Padova Tel: 466781-39-049 Drune Nether Tel: 7625286-31-416 Fax: 690399-31-416 Norvegia - Trondheim Tel: 690340-47 Polonia - Varsavia Tel: 72884388-48-22 Romania - Bucarest Tel: 3325737-40-21-407-87 : 50-34-91-708-08 Fax: 90-34-91-708-08 Svezia - Gothenberg Tel: 91-46-31-704-60 Svezia - Stoccolma Tel: 40-46-8-5090 UK - Wokingham Tel: 4654-44-118-921 Fax: 5800-44-118-921

© 2022 Microchip Technology Inc.
è e so filiali

Guida d'usu

DS50003348C-pagina 37

Documenti / Risorse

MICROCHIP v8.0 CoreFFT Fourier Transform [pdfGuida di l'utente
v8.0 CoreFFT Fourier Transform, v8.0 CoreFFT, Fourier Transform, Transform

Referenze

Lascia un cumentu

U vostru indirizzu email ùn serà micca publicatu. I campi obbligatori sò marcati *