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:
- Inizializza a sequenza di input X(0), X(1),…, X(N-1).
- Configurate a dimensione è u puntu di trasfurmazioni.
- Eseguite l'operazione FFT avanti o inversa cum'è necessariu.
- 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:
- Inizializza a sequenza di input X(0), X(1),…, X(N-1).
- Configurate a dimensione è u puntu di trasfurmazioni.
- Eseguite l'operazione FFT avanti o inversa cum'è necessariu.
- 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
Iè
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
Iè
Bloccu cundizionale in virgule flottante
Iè
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
Iè
Innò
Iè
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 |