v8.0 CoreFFT Fourier Transform
CoreFFT v8.0
Spesifikasies
- Transformeer groottes, punte: 32, 64, 128, 256, 512, 1024, 2048,
4096, 8192 en 16384. - In-Place FFT: Voorwaartse en omgekeerde FFT
- Stroom FFT: Voorwaartse en omgekeerde FFT
- Invoerdatabiswydte: Twee's komplement
- Twiddle faktor bis breedte: Natuurlike uitset sampdie bestelling
- Invoer-/uitvoerdataformaat: Voorwaardelike blok-swaaipunt
skaal - Vooraf gedefinieerde skaalskedule of geen skaal
- Opsionele minimale of gebufferde geheue konfigurasies
- Ingebedde RAM-blok-gebaseerde twiddle-opsoektabel (LUT)
- Ondersteuning vir verfrissende twiddle LUT
- Handdruk seine om maklike koppelvlak aan die gebruiker te fasiliteer
stroombaan - AXI4 Streaming koppelvlak: Nee
- Looptyd vorentoe/omgekeerde transformasie-konfigurasie: Ja
Produkgebruiksinstruksies
In-Place FFT
Die In-Place FFT implementering ondersteun die Radix-2
desimasie-in-tyd transformasie. Om die In-Place FFT te gebruik, volg hierdie
stappe:
- Inisialiseer die invoerreeks X(0), X(1),..., X(N-1).
- Stel die transformasiegrootte en -punt op.
- Voer die voorwaartse of omgekeerde FFT-bewerking uit soos vereis.
- Haal die getransformeerde data uit die uitvoervolgorde.
Stroom FFT
Die Streaming FFT-implementering ondersteun die Radix-22
desimasie-in-frekwensie transformasie. Om die Streaming FFT te gebruik, volg
hierdie stappe:
- Inisialiseer die invoerreeks X(0), X(1),..., X(N-1).
- Stel die transformasiegrootte en -punt op.
- Voer die voorwaartse of omgekeerde FFT-bewerking uit soos vereis.
- Haal die getransformeerde data uit die uitvoervolgorde.
Gereelde vrae
V: Watter transformasiegroottes word ondersteun?
A: Die CoreFFT ondersteun transformasiegroottes van 32, 64, 128, 256,
512, 1024, 2048, 4096, 8192 en 16384.
V: Wat is die invoerdataformaat?
A: Die invoerdataformaat is twee se komplement.
V: Ondersteun CoreFFT vorentoe en omgekeerde FFT
bedrywighede?
A: Ja, CoreFFT ondersteun beide vorentoe en omgekeerde FFT
bedrywighede.
CoreFFT v8.0
CoreFFT-gebruikersgids
Inleiding
Die Fast Fourier transform (FFT) kern implementeer die doeltreffende Cooley-Turkye algoritme vir die berekening van die diskrete Fourier transformasie. CoreFFT word gebruik in 'n wye reeks toepassings soos digitale kommunikasie, oudio, metings, beheer en biomedies. CoreFFT bied hoogs parameteriseerbare, area-doeltreffende en hoë werkverrigting MACC-gebaseerde FFT. Die kern is beskikbaar as 'n Register Transfer Level (RTL) kode van die transformasie in Verilog en VHDL tale. Vergelyking 1.N-punt vorentoe FFT (N is 'n mag van 2) van 'n ry x(0), x(1),…, x(N-1) waar, k = 0, 1… N-1
Vergelyking 2.N-punt inverse FFT (N is 'n mag van 2) van 'n ry X(0), X(1),…, X(N-1) waar, n = 0, 1… N-1
Belangrik: Terwyl 'n inverse FFT uitgevoer word, pas die kern nie deling deur N van EQ 2 toe nie (aangesien die deling deur 'n mag van twee triviaal is).
Die volgende figuur illustreer 'n FFT-gebaseerde stelsel wat bestaan uit 'n databron, die FFT-module en 'n datasink, wat die getransformeerde data-ontvanger is. Figuur 1. FFT-gebaseerde stelsel Example
Kenmerke
CoreFFT ondersteun die Radix-2 desimasie-in-tyd in-plek FFT en Radix-22 desimasie-in-frekwensie streaming FFT transformasie implementerings. Die volgende tabel lys die sleutelkenmerke vir elke implementering.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 1
CoreFFT v8.0
Tabel 1. Sleutelkenmerke Ondersteuning
Kenmerk Transformeer groottes, punte
In-Plek
Stroom
32, 64, 128, 256, 512, 1024, 2048, 16, 32, 64, 128, 256, 512, 1024,
4096, 8192 en 16384.
2048 4096 XNUMX en XNUMX XNUMX XNUMX
Let wel: Die 16384-pt FFT word ondersteun op die RTG4TM, PolarFire®,
en slegs PolarFire SoC-onderdele.
Vorentoe en omgekeerde FFT
Ja
Invoer data bis breedte
8
Twiddle faktor bis breedte
8
Invoer/uitvoer data formaat
Twee se komplement
Natuurlike uitset sampdie bestelling
Ja
Voorwaardelike blok drywende punt
Ja
skaal
Vooraf gedefinieerde skaalskedule of geen Geen skaal nie
Opsionele minimale of gebufferde geheue Ja-konfigurasies
Ingebedde RAM-blok-gebaseerde twiddle Ja Opsoektabel (LUT)
Ondersteuning vir verfrissende twiddle LUT Ja
Handdruk seine om maklike Ja-koppelvlak met die gebruikerskring te fasiliteer
AXI4 Streaming koppelvlak
Nee
Looptyd vorentoe/omgekeerde transformasie Geen konfigurasie
Ja 8 32 Twee's komplement Opsionele No
Ja
Nee
Ja
Nee Ja
Ja Ja
Ondersteunde gesinne
CoreFFT ondersteun die volgende FPGA-families. · PolarFire® · PolarFire SoC · SmartFusion® 2 · IGLOO® 2 · RTG4TM
Toestelbenutting en -prestasie
CoreFFT is in die SmartFusion2 M2S050-toestel geïmplementeer met spoedgraad -1 en PolarFire MPF300 met spoedgraad -1. 'n Opsomming van die implementeringsdata word verskaf in 6. Bylaag A: In-Place FFT Device Benutting en Werkverrigting en 7. Bylaag B: Streaming FFT Device Benutting en Prestasie.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 2
CoreFFT v8.0
Inhoudsopgawe
Inleiding……………………………………………………………………………………………………………………………………………………………… ..1 Kenmerke……………………………………………………………………………………………………………………………………………… …….. 1 Ondersteunde gesinne………………………………………………………………………………………………………………………………… 2 Toestelgebruik en werkverrigting……………………………………………………………………………………………………….. 2
1. Funksionele beskrywing…………………………………………………………………………………………………………………………..4 1.1. Argitektuuropsies………………………………………………………………………………………………………………4 1.2. In-Place FFT…………………………………………………………………………………………………………………………………4 1.3. In-Place Memory Buffers………………………………………………………………………………………………………………..5 1.4. Stroom FFT……………………………………………………………………………………………………………………………….. 7
2. Koppelvlak……………………………………………………………………………………………………………………………………………………… … 12 2.1. In-Place FFT……………………………………………………………………………………………………………………………….12 2.2. Stroom FFT……………………………………………………………………………………………………………………………… 14
3. Tydsberekeningdiagramme……………………………………………………………………………………………………………………………….. 20 3.1. In-Place FFT……………………………………………………………………………………………………………………………….20 3.2. Stroom FFT……………………………………………………………………………………………………………………………… 21
4. Gereedskapvloei……………………………………………………………………………………………………………………………………………… ….. 23 4.1. Lisensie……………………………………………………………………………………………………………………………… 23 4.2. Die opstel van CoreFFT in SmartDesign…………………………………………………………………………………………. 23 4.3. Simulasievloei………………………………………………………………………………………………………………… 24 4.4. Ontwerpbeperkings……………………………………………………………………………………………………………… 25 4.5. Sintese in Libero SoC………………………………………………………………………………………………………………. 25 4.6. Plek-en-roete in Libero SoC…………………………………………………………………………………………………..25
5. Stelselintegrasie……………………………………………………………………………………………………………………………….. 26 5.1 . In-Place FFT……………………………………………………………………………………………………………………………….26 5.2. Stroom FFT……………………………………………………………………………………………………………………………… 26
6. Bylaag A: In-Place FFT Toestelbenutting en Werkverrigting…………………………………………………………28
7. Bylaag B: Stroom FFT-toestelgebruik en -prestasie………………………………………………………………30
8. Hersieningsgeskiedenis………………………………………………………………………………………………………………………………… 32
Mikroskyfie FPGA Ondersteuning………………………………………………………………………………………………………………………………………34
Mikroskyfie-inligting……………………………………………………………………………………………………………………………….. 34 Die mikroskyfie Webwebwerf…………………………………………………………………………………………………………………………..34 Produkveranderingkennisgewingdiens…… …………………………………………………………………………………………. 34 Kliëntediens……………………………………………………………………………………………………………………………… 34 Mikroskyfie-toestelle-kode Beskermingskenmerk…………………………………………………………………………………………..34 Regskennisgewing……………………………………………… ………………………………………………………………………………………………… 35 Handelsmerke……………………………………………………… ………………………………………………………………………………………………. 35 Kwaliteitbestuurstelsel………………………………………………………………………………………………………………. 36 Wêreldwye verkope en diens……………………………………………………………………………………………………………….37
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 3
CoreFFT v8.0
Funksionele beskrywing
1. Funksionele beskrywing
Hierdie afdeling beskryf die funksionele beskrywing van die CoreFFT.
1.1 Argitektuuropsies
Afhangende van gebruikerkonfigurasie, genereer CoreFFT een van die volgende transformasie-implementerings: · In-plek FFT · Streaming FFT
1.2 In-Place FFT
Die argitektuur opsie laai 'n raam van N komplekse data samples in sy in-plek RAM en verwerk hulle opeenvolgend, met behulp van 'n enkele Radix-2 verwerker. Dit stoor die resultate van elke stage in die in-plek RAM. Die in-plek FFT neem minder chip hulpbronne as die streaming FFT, maar die transformasie tyd is langer. Die volgende figuur toon 'n funksionele diagram van die in-lace-transform. Figuur 1-1. In-Place Radix-2 FFT funksionele blokdiagram (minimale konfigurasie)
Die invoer- en uitvoerdata word voorgestel as 2 * WIDTH-bis woorde wat bestaan uit werklike en denkbeeldige dele. Beide dele is twee se komplementgetalle van WIDTH bisse elk. Die module verwerk rame (sarsies) van data met 'n raamgrootte van N komplekse woorde. Die raam wat verwerk moet word, word in die in-plek geheue gelaai. Die geheue bevat twee identiese RAM-blokke, elkeen is in staat om N/2 komplekse woorde te stoor. Die in-plek geheue ondersteun dubbele bandwydte. Dit kan twee komplekse woorde op dieselfde tyd lees en skryf. Sodra die N komplekse data samplese word in die geheue gelaai, die FFT-berekening begin outomaties, en die in-plek geheue word vir die berekeninge gebruik.
Die in-plek FFT-berekeningsproses vind plaas in 'n volgorde van stages met die aantal stages gelyk aan log2N. By elke stage van die FFT-dataverwerking, lees die Radix-2-vlinder al die data wat in die in-plek geheue gestoor is, twee komplekse woorde op 'n slag. Die leesskakelaar saam met 'n leesadresgenerator (nie in Figuur 1-1 getoon nie) help die skoenlapper om gestoorde data te verkry in die volgorde wat deur die FFT-algoritme vereis word. Benewens die data, verkry die skoenlapper twiddle-faktore (sinus/cosinus-koëffisiënte) van die twiddle-LUT. Die skoenlapper skryf tussenresultate na die in-plek geheue deur die skryfskakelaar.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 4
CoreFFT v8.0
Funksionele beskrywing
Na die laaste berekeningsatage, die in-plek geheue stoor die volledig getransformeerde data. Die module plaas 'n N-woord getransformeerde dataraam, een woord op 'n slag, mits die sein READ_OUTP aktief is. CoreFFT bereken die twiddle-faktore wat deur die FFT-algoritme vereis word en skryf dit na die twiddle-LUT. Dit gebeur outomaties by aanskakeling wanneer asynchrone globale terugstelling NGRST beweer word.
1.3
1.3.1
In-Place Memory Buffers
Hierdie afdeling beskryf die In-Place Memory Buffers van die CoreFFT.
Minimale konfigurasie Die minimale konfigurasie, soos getoon in Figuur 1-1, is voldoende om die FFT te bewerkstellig omdat dit die in-plek RAM het wat deur die FFT-algoritme vereis word. Maar die minimale konfigurasie gebruik nie die verwerkingsenjin heeltyd nie. Inteendeel, wanneer data in die plek-geheue gelaai word, of die getransformeerde data uitgelees word, bly die skoenlapper ledig. Die volgende figuur toon die FFT-siklustydlyn. Die siklus bestaan uit die volgende drie fases:
· Laai 'n vars invoerdataraam in die in-plek RAM af · Voer die werklike transformasie uit · Laai die transformasieresultaat op om die in-laace RAM vry te maak
Figuur 1-2. Minimale konfigurasie in-plek FFT-siklus
1.3.2
In die minimale konfigurasie loop die skoenlapper slegs tydens die berekeningsfase. Wanneer die databarstempo dit toelaat, bied die minimale konfigurasie die beste toestelhulpbronbenutting. Dit spaar veral 'n aansienlike aantal RAM-blokke.
Gebufferde konfigurasie Ten einde die skoenlapperbenutting te verbeter en gevolglik die gemiddelde transformasietyd te verminder, kan addisionele geheuebuffers gebruik word. Die volgende figuur toon die gebufferde FFT-blokdiagram.
Figuur 1-3. Gebufferde FFT-blokdiagram
Die gebufferde opsie het twee identiese geheuebanke wat 'n tafeltennisbuffer en een uitsetbuffer implementeer. Elke bank is in staat om N komplekse woorde te stoor en twee komplekse woorde op 'n slag te lees. Die kernstaatmasjien beheer die tafeltennisskakeling, sodat 'n databron slegs 'n buffer sien wat gereed is om nuwe data te aanvaar. Die buffer wat nie die nuwe data aanvaar nie, word as 'n in-plek RAM deur die FFT-enjin gebruik.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 5
CoreFFT v8.0
Funksionele beskrywing
Die tafeltennisbuffer-argitektuur verhoog die doeltreffendheid van die FFT-enjin. Terwyl een van die twee insetbanke by die huidige FFT-berekening betrokke is, is die ander beskikbaar vir die aflaai van die volgende insetdataraam. As gevolg hiervan, sit die FFT-enjin nie stil en wag vir vars data om die invoerbuffer te vul nie. Vanuit die databronperspektief kan die kern 'n databars enige plek binne die FFT-berekeningsperiode ontvang. Wanneer die enjin klaar is met die verwerking van die huidige dataraam en die invoerbufferbank gevul is met 'n ander dataraam, ruil die staatsmasjien die tafeltennisbanke om, en die datalading en berekening gaan voort op die alternatiewe geheuebanke.
Die laaste stage van die FFT-berekening gebruik 'n buite-plek-skema. Die FFT-enjin lees intermediêre data uit die in-plek geheue, maar skryf die finale resultaat in die uitset data buffer. Die finale resultate bly in die uitsetbuffer totdat die FFT-enjin dit vervang met die resultate van die volgende dataraam. Vanuit die data-ontvanger-perspektief is die uitsetdata enige tyd beskikbaar vir lees, behalwe vir die laaste FFT stage.
Die gebufferde konfigurasie FFT-siklus word in die volgende figuur getoon.
Figuur 1-4. Gebufferde konfigurasie FFT-siklusse
1.3.3
Eindige Woordlengte Oorwegings By elke atage van die in-plek FFT algoritme, die skoenlapper neem twee samples uit die in-plek geheue en gee twee verwerkte s terugamplees na dieselfde geheue plekke. Die skoenlapperberekening behels komplekse vermenigvuldiging, optelling en aftrekking. Die terugkerende samples kan 'n groter data breedte hê as die samples uit die geheue gekies. Voorsorgmaatreëls moet getref word om te verseker dat daar geen data-oorvloei is nie.
Om die risiko van oorloop te vermy, gebruik die kern een van die volgende drie metodes:
· Invoerdata-skaal · Onvoorwaardelike blok-swewende-punt-skaal · Voorwaardelike blok-swewende-punt-skaal
Invoerdataskaal: Die invoerdataskaal vereis dat die invoerdata-s vooraf gewag wordamples met genoeg ekstra teken stukkies, genoem wag stukkies. Die aantal wagbisse wat nodig is om te kompenseer vir die maksimum moontlike bisgroei vir 'n N-punt FFT, is log2N + 1. Bv.ample, elke invoer sample van 'n 256-punt FFT moet nege wagpunte bevat. So 'n tegniek verminder die effektiewe FFT-bisresolusie aansienlik.
Onvoorwaardelike blok-swewende-punt-skaal: Die tweede manier om te kompenseer vir die FFT-bisgroei is om die data af te skaal met 'n faktor van twee op elke stage. Gevolglik word die finale FFT-resultate met 'n faktor van 1/N afgeskaal. Hierdie benadering word onvoorwaardelike blok drywende punt-skaal genoem.
Die insetdata moet met 'n faktor van twee afgeskaal word om oorloop by die eerste s te voorkomtage. Om die oorloop in opeenvolgende s te voorkomtages, die kern skaal die resultate van elke vorige s aftage met die faktor van twee deur die hele blok data te skuif (alle resultate van die huidige stage) 'n bietjie na regs. Die totale aantal bisse wat die data verloor as gevolg van die bisverskuiwing in die FFT-berekening is log2N.
Die onvoorwaardelike blok drywende punt lei tot dieselfde aantal verlore bisse as in die insetdataskaal. Dit lewer egter meer presiese resultate, aangesien die FFT-enjin met meer presiese insetdata begin.
Voorwaardelike blok drywende punt skaal: In die voorwaardelike blok drywende punt skaal word data slegs verskuif as bietjie groei werklik plaasvind. As een of meer skoenlapperuitsette groei, word die hele blok data na regs geskuif. Die voorwaardelike blok-dryfpuntmonitor kontroleer elke skoenlapperuitset vir groei. As verskuiwing nodig is, is dit
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 6
CoreFFT v8.0
Funksionele beskrywing
uitgevoer na die hele stage is voltooi, by die invoer van die volgende stage skoenlapper. Hierdie tegniek verskaf die minste hoeveelheid vervorming (kwantiseringsgeraas) wat veroorsaak word deur eindige woordlengte.
In voorwaardelike blok drywende punt-modus kan die kern opsioneel die werklike skaalfaktor bereken. Dit doen dit as die parameter SCALE_EXP_ON op 1 gestel is. Dan verskyn die berekende werklike faktor op die SCALE_EXP-poort. Die faktor verteenwoordig die aantal regsverskuiwings wat die FFT-enjin op die resultate toegepas het. Byvoorbeeldample, die SCALE_EXP-waarde van 4 (100) beteken dat die FFT-resultate regs (afgeskaal) met 4 bisse geskuif is; dit wil sê, gedeel deur 2SCALE_EXP = 16. Die sein vergesel die FFT-resultate en is geldig terwyl OUTP_READY beweer word. Om die werklike CoreFFT-resultate terug te skaal, dit wil sê om dit vergelykbaar te maak met swaaipunt-getransformeerde houers, elke FFT-uitset sample moet vermenigvuldig word met 2SCALE_EXP:
· FFT-resultaat (werklik) = DATAO_RE*2SCALE_EXP · FFT-resultaat (denkbeeldig) = DATAO_IM*2SCALE_EXP
Belangrik: Die skaaleksponentsakrekenaar kan slegs in voorwaardelike blok swaaipuntmodus geaktiveer word.
1.3.4
Die CoreFFT is by verstek gekonfigureer om die voorwaardelike blok drywende-punt-skaal toe te pas. In voorwaardelike blok drywende punt-modus word die invoerdata gekontroleer en afgeskaal met 'n faktor van twee indien nodig, voor die eerste stage.
Transformasietyd Die FFT-berekening neem (N/2 + L) x log2N + 2 kloksiklusse, waar L 'n implementeringspesifieke parameter is wat die totale latensie van 'n geheuebank, skakelaars en die skoenlapper verteenwoordig. L is nie afhanklik van transformasiegrootte N nie. Dit hang net af van die FFT-bisresolusie. L is gelyk aan 10 by bisresolusies van 8 tot 18, en L is gelyk aan 16 by bisresolusies van 19 tot 32. Bv.ample,
· Vir 'n 256-punt 16-bis FFT
Berekeningstyd = (256/2 + 10) x log2256 + 2 = 1106 klokperiodes.
· Vir 'n 4096-punt 24-bis FFT
Berekeningstyd = (4096/2 + 16) x log24096 + 2 = 24770 klokperiodes.
1.3.5
Geheue-implementering Die kern gebruik harde RAM-blokke om die in-plek geheue, ander geheue buffers en 'n twiddle LUT te implementeer. Die FPGA's dra twee harde RAM-tipes: groot SRAM (LSRAM) en mikro-RAM's. Die geheue-implementering kan beheer word deur die URAM_MAXDEPTH-parameter in te stel. CoreFFT gebruik mikro-RAM's as die vereiste diepte nie die parameterwaarde oorskry nie. Byvoorbeeldample, die URAM_MAXDEPTH-parameter wat op 64 gestel is, gebruik mikro-RAM's in enige FFT-grootte tot 128 punte, aangesien die vereiste diepte PUNTE/2 is. Deur die parameterwaarde op 0 te stel, verhoed dat die kern glad nie die mikro-RAM's gebruik nie, sodat hulle elders gebruik kan word.
Die parameter URAM_MAXDEPTH is toeganklik deur die kerngebruikerskoppelvlak.
1.4 Stroom FFT
Streaming FFT ondersteun deurlopende komplekse dataverwerking, een komplekse invoerdata sample per klokperiode. Die stroomargitektuur het soveel Radix-22-verwerkers, RAM-blokke en LUT's as wat nodig is om stroomdatatransformasie te ondersteun. Die volgende figuur toon 'n funksionele diagram van die 256-punt-stroomtransformasie.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 7
Figuur 1-5. Stroom Radix-22 256-pt FFT Funksionele Blokdiagram
CoreFFT v8.0
Funksionele beskrywing
Die inset- en uitvoerdata word voorgestel as (2 x DATA_BITS)-biswoorde wat uit werklike en denkbeeldige dele bestaan. Beide dele is twee se komplementêre getalle van DATA_BITS bisse elk. Die module verwerk rame van data met 'n raamgrootte gelykstaande aan die transformasiegrootte van N komplekse woorde. Die raam wat verwerk moet word, kom na die x(n)-invoer as 'n volgorde van die komplekse datawoorde, een (2 x DATA_BITS)-bis woord per klokinterval. Die volgende raam kan onmiddellik na die laaste datawoord van 'n huidige raam begin of enige tyd later.
Die volgende figuur toon 'n example van raam i+1 onmiddellik na raam i, en die raam i+2 kom na 'n arbitrêre gaping. Die invoerdata samplese binne 'n raam moet by elke klokinterval kom, dus 'n raam wat presies N klokintervalle hou. Daar is 'n aansienlike latensie wat verband hou met die stroomalgoritme. Die uitsetdatarame verskyn teen dieselfde volgorde, kloktempo en met dieselfde gapings (indien enige) tussen die uitsetrame, as dié tussen die invoerrame.
Figuur 1-6. Stroom FFT-invoerdatarame
1.4.1 1.4.2
Die aantal FFT skoenlappers is gelyk aan log2(N), dus elke stage word deur 'n aparte skoenlapper verwerk. Gevolglik is alle atages word parallel verwerk.
CoreFFT bereken die twiddle-faktore wat deur die FFT-algoritme vereis word. By aanskakeling laai die kern outomaties die twiddle-faktore op in on-chip RAM's wat die twiddle LUT's word. Gebruikershandeling is nie nodig om dit te laat gebeur nie. Na voltooiing van die oplaai, aktiveer die kern die RFS-sein, wat 'n databron laat weet dat die kern gereed is om FFT-verwerking te begin. Die LUT-inhoud kan enige tyd verfris word deur 'n een-klokwye sein, REFRESH, uit te reik.
Streaming FFT Latency Die streaming FFT latency word hoofsaaklik gedefinieer deur die transformasie grootte, N. Die implementering voeg 'n aantal pyplyn vertragings by wat afhang van die FFT grootte en data pad bit breedte. Met ander woorde, die FFT-resultate word vertraag ten opsigte van die insetdata met nie minder nie as N data-intervalle vir die bis-omgekeerde uitsette. Die geordende uitsetvertraging is ongeveer twee keer groter.
Streaming FFT Memory Implementering Soortgelyk aan die in-place argitektuur, gebruik die streaming FFT harde RAM blokke om die vereiste herinneringe, LUT's en vertragingslyne te implementeer. Die geheue-implementering kan beheer word deur die URAM_MAXDEPTH-parameter in te stel. CoreFFT gebruik mikro-RAM's as die diepte van die geheue nie die parameterwaarde oorskry nie. Byvoorbeeldample, die URAM_MAXDEPTH-parameter, gestel op 128, gebruik mikro-RAM's om herinneringe van diepte van 128 en minder te skep. Deur die parameterwaarde op 0 te stel, verhoed dat die kern glad nie die mikro-RAM's gebruik nie, sodat hulle elders gebruik kan word.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 8
CoreFFT v8.0
Funksionele beskrywing
1.4.3
Stroom FFT Uitset Data Woorde Orde Die uitset resultate verkry vanaf die Radix-2 en die Radix-22 FFT algoritmes is in die bis-omgekeerde volgorde.
Die in-plek implementering voer egter intern die s uitampdie bestel. Daarom plaas die kern die resultate in 'n natuurlike volgorde. Die Streaming FFT ondersteun beide bit-omgekeerde en natuurlike uitvoer bestellings. Die bietjie-omgekeerde opsie gebruik minder skyfiehulpbronne en bied kleiner latensie.
1.4.4 1.4.4.1
Eindige woordlengte-oorwegings Hierdie afdeling beskryf die eindige woordlengte-oorwegings van die CoreFFT.
Ongeskaalde en Skaalskedulemodusse
Die skoenlapperberekening behels optelling en aftrekking. Hierdie bewerkings kan veroorsaak dat die vlinderdatawydte van inset na uitset groei. Elke skoenlapper, BF2I of BF2II (sien Figuur 1-5), kan 'n ekstra bietjie aan die datawydte bekendstel. Daarbenewens kan die vermenigvuldiging een bietjie by die resultaat voeg. Die algehele potensiële bisgroei = log2(N)+1 bisse. Voorsorgmaatreëls moet getref word om te verseker dat daar geen data-oorvloei is nie.
Om 'n risiko van oorloop te vermy of te verminder, gebruik die kern een van twee tegnieke:
· Ongeskaalde modus bou datapad wyd genoeg om die bietjie groei te akkommodeer. Die datapadwydte groei vanaf stage tot stage om die algoritme-bisgroei ten volle te akkommodeer, sodat die data-oorloop nooit plaasvind nie. Die werklike of denkbeeldige uitsetbiswydte is log2(N)+1 bisse wyer as die invoer een. Die ontwerp is heeltemal veilig vanaf die oorlooppunt van view.
· Konfigureerbare skaalskedule-tegniek bied 'n gebruiker beheer oor die afskaal (afkorting van) elke tussenresultaat wat oorloop kan veroorsaak. Die uitsetbiswydte is gelyk aan die invoerbiswydte. Die tegniek is slegs oorloop-veilig wanneer die skaalskedule ooreenstem met die werklike bietjie groei, wat nie maklik is om te bereik nie. Versigtige benadering tot die konfigureerbare skaal lei dikwels tot ekstra afskaling. Maar as die aard van die getransformeerde sein bekend is dat dit oorloop-veilig is met sommige of alle stagAs die uitgebreide afskaling weggelaat word, is die tegniek voordelig vir beide sein-tot-geraas-verhouding en skyfiehulpbronbenutting. Wanneer dit vir die skaalskedule-tegniek opgestel is, genereer die kern 'n oorloopvlag as die oorloop plaasgevind het. Die Radix-22 skoenlapper kan 3-bis groei bekendstel: skoenlappers BF2I, BF2II, en 'n vermenigvuldiger elk kan 'n bietjie byvoeg. Maar slegs een vermenigvuldiging uit alle FFT stages kan die bietjie byvoeg. Aangesien dit vooraf onbekend is, is die stage waar die vermenigvuldiger die ekstra bis induseer indien enige, die FFT-enjin in die ongeskaalde modus verleng die datapad met die bis wat by die eerste s begintage.
In die skaalskedule tegniek elke Radix-22 stage kan 3-bis groei bekendstel. Die datapad binne die atage groei dienooreenkomstig, dit wil sê die stage uitset is drie bisse wyer as die stage invoer. Die enjin sny die drie ekstra stukkies na die s uittagDie resultaat word bereken, dit wil sê die stagDie uitset word met drie bisse afgekap voordat dit na die volgende s gaantage. Sodanige benadering elimineer die behoefte om die sub-s te raaitage waarby afskaling toegepas moet word.
Die volgende tabel verduidelik die drie bisse wat uitgesny word in die skaalskedulemodus, afhangende van die 2-bis skedulewaarde vir 'n spesifieke stage.
Tabel 1-1. Knip drie ekstra stukkies uit in skaalskedulemodus
Skaalskedule vir 'n gegewe Radix-22 Stage
Bits the Core Knip uit
00
Knip drie MSB's uit
01
Knip twee MSB's uit en rond een LSB
10
Knip een MSB uit en rond twee LSB'e
11
Ronde drie LSB's
Die FFT/IFFT van die groottes 32, 128 of 512 wat nie 'n krag-van-vier is nie, benewens die Radix-22 skoenlappers, gebruik 'n enkele Radix-2 skoenlapper. Die een is van toepassing op die laaste verwerking stage en sny 'n enkele ekstra bietjie uit.
Die kern roep outomaties oorloopbespeuring in die skaalskedulemodus aan. Die oorloopvlag (OVFLOW_FLAG) verskyn sodra die kern die werklike oorloop bespeur. Die vlag bly aktief tot aan die einde van 'n uitsetraam waar die oorloop bespeur word.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 9
CoreFFT v8.0
Funksionele beskrywing
1.4.4.2
Ongeskaalde modus Invoerbiswydtebeperkings Die Ongeskaalde modus beperk die maksimum invoer sample bietjie breedte hanteer deur die kern. Die volgende tabel lys die maksimum biswydtes vir elke FFT-grootte.
Tabel 1-2. Stroom ongeskaalde FFT Max Invoer Data Bit Wide
FFT Grootte 16
Maksimum invoerwydte 32
32
30
64
30
128
28
256
28
512
26
1024
26
2048
24
4096
24
1.4.4.3
Betree skaalskedule Die skaalskedule identifiseer die afskaalfaktor vir elke stromende FFT stage. Elke Radix-22 stage skaalfaktor word beheer deur toegewyde twee bisse van die skaalskedule, en die Radix-2 stage wat in die nie-krag-van-vier FFT's gebruik word, word deur 'n enkele bis beheer. Die volgende figuur beeld 'n eks uitample van 'n skaal skedule gebruikerskoppelvlak vir 1024-pt FFT. 'n Paar merkblokkies stem ooreen met 'n spesifieke Radix-22 stage en bied twee stukkies van die afskaalfaktor aan. Die werklike afskaalfaktor by 'n bepaalde stage word bereken as 22*Bit1+Bit0 en neem een van die volgende waardes: 1, 2, 4, 8. Die merkblokkies wat in die volgende figuur gewys word stem ooreen met die binêre skaalskedulewaarde van 10 10 10 10 11. Hierdie waarde bied 'n konserwatiewe skaalskedule wat nie die oorloop veroorsaak nie.
Figuur 1-7. Skaal skedule-gebruikerskoppelvlak
Die volgende tabel lys die konserwatiewe skaalskedules vir elke FFT-grootte wat heeltemal oorloopveilig is.
Tabel 1-3. Konserwatiewe skaalskedules vir verskillende FFT-groottes
FFT grootte
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.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 10
………..vervolg FFT Grootte
2048 1024 512 256 128 64 32 16
CoreFFT v8.0
Funksionele beskrywing
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.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 11
CoreFFT v8.0
Koppelvlak
2. Koppelvlak
Hierdie afdeling beskryf die koppelvlak van die CoreFFT.
2.1
2.1.1
In-Place FFT
Hierdie afdeling beskryf die In-Place FFT van die CoreFFT.
Konfigurasieparameters CoreFFT het parameters (Verilog) of generiese (VHDL) vir die opstel van die RTL-kode. Die volgende tabel beskryf die parameters en generieke. Alle parameters en generieke is heelgetaltipes.
Tabel 2-1. In-Place CoreFFT-parameterbeskrywings
Parameter INVERSE
Geldige reeks 0
Verstek 0
Beskrywing
0: Vorentoe Fourier transformasie 1: Omgekeerde Fourier transformasie
SKAAL
0
0
0: Voorwaardelike blok dryfpunt-skaal
1: Onvoorwaardelike blok dryfpunt skaal
Om die insetdataskaal toe te pas, stel die SCALE-parameter op 0 en voeg die korrekte aantal wagbisse by die insetdata voor. Dan het die voorwaardelike blok drywende punt geen effek nie.
PUNTE
BREEDTE MEMBUF
32, 64, 128,
256
256, 512, 1024,
2048, 4096,
8192, 16384
8
18
0
0
Transformeer grootte. Let wel: Die 16384-pt FFT word slegs op RTG4-, PolarFire- en PolarFire SoC-onderdele ondersteun.
Data en twiddle faktor bis breedte
0: Minimale (geen buffer) konfigurasie 1: Gebufferde konfigurasie
SCALE_EXP_ON
0
0
0: Bou nie die voorwaardelike blok drywende punt nie
eksponent sakrekenaar
1: Bou die sakrekenaar
URAM_MAXDEPTH
0, 4, 8, 16, 32, 64, 128, 256, 512
Die grootste RAM-diepte wat geïmplementeer moet word met die mikroRAM wat beskikbaar is op die SmartFusion2-, IGLOO2-, RTG4-, PolarFire- en PolarFire SoC-onderdele. Wanneer die RAM-diepte wat benodig word vir 'n gebruiker-geselekteerde transformasiegrootte PUNTE die URAM_MAXDEPTH oorskry, word groot LSRAM-blokke gebruik.
2.1.2
Poorte Die volgende tabel lys die poortseine vir die in-plek CoreFFT argitektuur.
Tabel 2-2. In-Place CoreFFT-poortbeskrywings
Poortnaam DATAI_IM
In/Out Port Width Bits Beskrywing
In
BREEDTE
Denkbeeldige invoerdata wat getransformeer moet word
DATAI_RE
In
BREEDTE
Werklike invoerdata wat getransformeer moet word
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 12
CoreFFT v8.0
Koppelvlak
………..vervolg
Port Naam
In/Uit
DATAI_VALID In
Poortwydte stukkies 1
Beskrywing
Invoer komplekse woord geldig Die sein vergesel geldige invoer komplekse woorde teenwoordig op insette DATAI_IM, DATAI_RE. Wanneer die sein aktief is, word die inset komplekse woord in die kerngeheue gelaai mits die BUF_READY sein beweer is.
READ_OUTP In
1
Lees getransformeerde data Normaalweg plaas die module FFT-resultate, sodra hulle gereed is, in 'n enkele sarsie van N komplekse woorde. Die getransformeerde data-ontvanger kan arbitrêre onderbrekings in die sarsie invoeg deur die READ_OUTP-sein te deassertion.
DATAO_IM
Uit
DATAO_RE
Uit
DATAO_VALID Uit
WIDTH WIDTH 1
Denkbeeldige uitsetdata
Werklike uitsetdata
Uitset komplekse woord geldig Die sein vergesel geldige uitset komplekse woorde teenwoordig op DATAO_IM en DATAO_RE uitsette.
BUF_READY Uit
1
FFT aanvaar vars data Die kern beweer die sein wanneer dit gereed is om data te aanvaar. Die sein bly aktief totdat die kerngeheue vol is. Met ander woorde, die sein bly aktief totdat PUNTE komplekse invoer samples is gelaai.
OUTP_READY Uit
1
FFT-resultate gereed Die kern bevestig die sein wanneer die FFT-resultate gereed is vir die getransformeerde data-ontvanger om te lees. Die sein bly aktief terwyl die getransformeerde dataraam gelees word. Normaalweg duur dit vir POINTS-klokintervalle, tensy die READ_OUTP-sein gedeasserteerd is.
SCALE_EXP
Uit
vloer[log2 ( Ceil(log2(PUNT TS)))]+1
Voorwaardelike blok drywende punt skaal eksponent Hierdie opsionele uitset kan geaktiveer word deur die SCALE_EXP_ON parameter te stel. Die uitset kan geaktiveer word wanneer die kern slegs in voorwaardelike blok-sweefpunt-skaalmodus is (die parameter SKAAL = 0).
PONG CLK
Uit
1
In
1
Pongbank van die insetgeheuebuffer word deur die FFT-enjin as 'n werkende geheue gebruik. Hierdie opsionele sein is slegs geldig in die gebufferde konfigurasie.
Klok Stygende rand aktief Die kern meesterklok
SLOWCLK
In
1
NGRST
In
1
Laefrekwensie Stygende kloksein vir twiddle LUT-inisialisering, dit moet ten minste deur agt keer van CLK-frekwensie verdeel word.
Asinchroniese terugstel Active-Laag
Belangrik: Alle seine is aktief-hoog (logika 1) tensy anders gespesifiseer.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 13
CoreFFT v8.0
Koppelvlak
2.2
2.2.1
Stroom FFT
Streaming FFT is beskikbaar met GUI konfigureerbare inheemse koppelvlak of AXI4 streaming koppelvlak.
Konfigurasieparameters CoreFFT het parameters (Verilog) of generiese (VHDL) vir die opstel van die RTL-kode. Die volgende tabel beskryf hierdie parameters en generieke. Alle parameters en generieke is heelgetaltipes.
Tabel 2-3. CoreFFT-stroomargitektuurparameterbeskrywings
Parameternaam FFT_SIZE
Geldige reeks verstek
16, 32, 64, 128, 256 256, 512, 1024, 2048 en 4096
Beskrywing
Transformeer grootte punte Die kern verwerk rame van komplekse data met elke raam wat FFT_SIZE komplekse s bevatamples. Die getransformeerde datarame is van dieselfde grootte.
NATIV_AXI4
0 – 1
0
Interface keuse van die IP
· 0 – Inheemse koppelvlak
· 1 – AXI4-stroomkoppelvlak
Dit is slegs beskikbaar vir stromende argitektuur
SCALE_ON
0 – 1
1
1 – Aktiveer konfigureerbare skaalskedule
Wanneer die opsie geaktiveer is, pas die kern die konfigureerbare toe
skaalfaktor, SCALE_SCH na elke skoenlapper.
0 – Ongeskaalde modus
SCALE_SCH
0
Skaal skedule
As die SCALE_ON parameter gelyk is aan 1, word SCALE_SCH gebruik om
definieer die skaalfaktor vir elke verwerking stage.
DATA_BITS TWID_BITS BESTELLING
8 - 32 8 - 32 0 - 1
18
Invoerdatabiswydte van werklike of denkbeeldige dele.
18
Twiddle faktor bis breedte van sy werklike of denkbeeldige dele.
0
0: Uitvoer data in bis-omgekeerde volgorde
1: Uitvoer data in normale volgorde
URAM_MAXDEPTH 0, 4, 8, 16, 32, 0 64, 128, 256, 512
Die grootste RAM-diepte wat geïmplementeer moet word met mikro-RAM beskikbaar op die SmartFusion2-, IGLOO2-, RTG4-, PolarFire- of PolarFire SoC-onderdele. Wanneer die RAM-diepte wat benodig word vir 'n gebruiker-geselekteerde transformasiegrootte PUNTE die URAM_MAXDEPTH oorskry, word groot LSRAM-blokke gebruik.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 14
CoreFFT v8.0
Koppelvlak
………..vervolg
Parameter Naam
AXI4S_IN_DATA Let wel: Verduidelik die 0's opvulling vir werklike en denkbeeldige invoerdata samples wanneer NATIV_AXI4 = 1
Geldige reeks 8,16,24,32
Verstek 24
Beskrywing
Dit is intern gegenereerde parameter, nie toeganklik vir gebruiker nie. Dit word gebruik om die invoerdata te interpreteeramples in terme van greepgrense om AXI4-stroomkoppelvlak te vergemaklik. AXI4S_IN_DATA grootte word soos volg gedefinieer:
1. As DATA_BITS = 8 dan AXI4S_IN_DATA= 8, word geen opvulling vir invoerdata benodig nieamples
2. As 8 < DATA_BITS < 16 dan AXI4S_IN_DATA = 16, sal die invoerdata sample moet opvul met 16 (DATA_BITS) van 0'e by MSB-posisie, beide vir werklike en denkbeeldige data samples voordat dit gestuur word
3. As 16 < DATA_BITS < 24 dan AXI4S_IN_DATA = 24, sal die invoerdata sample moet opvul met 24 (DATA_BITS) van 0'e by MSB-posisie, beide vir werklike en denkbeeldige data samples voordat dit gestuur word
4. As 24 < DATA_BITS < 32 dan AXI4S_IN_DATA = 32, sal die invoerdata sample moet opvul met 32 (DATA_BITS) van 0'e by MSB-posisie, beide vir werklike en denkbeeldige data samples voordat dit gestuur word
Let wel: Opvulling moet vanaf MSB begin.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 15
CoreFFT v8.0
Koppelvlak
………..vervolg Parameter Naam
Geldige reeks
AXI4S_OUT_DATA 8,16,24,32, 40 Let wel: Verduidelik die 0's-vulling vir werklike en denkbeeldige uitsetdata samples wanneer NATIV_AXI4 = 1
Verstek 24
Beskrywing
Dit is intern gegenereerde parameter, nie toeganklik vir gebruiker nie. Dit word gebruik om die uitsetdata s te interpreteeramples in terme van greepgrense om AXI4-stroomkoppelvlak te vergemaklik. AXI4S_OUT_DATA grootte word soos volg gedefinieer:
Wanneer SCALE_ON = 0, voer dan s uitample grootte is STREAM_DATAO_BITS = DATA_BITS+plafon_log2 (FFT_SIZE) + 1
Wanneer SCALE_ON = 1, voer dan s uitample grootte is STREAM_DATAO_BITS = DATA_BITS
1. As STREAM_DATAO_BITS = 8 dan AXI4S_OUT_DATA = 8, word geen opvulling bygevoeg vir uitvoerdata samples
2. As 8 < STREAM_DATAO_BITS < 16 danAXI4S_OUT_DATA= 16, sal die uitsetdata samplese is opgevul met 16 – (STREAM_DATAO_BITS) van 0'e by MSB-posisie, beide vir werklike en denkbeeldige data samples voor raam
3. As 16 < STREAM_DATAO_BITS < 24 dan AXI4S_OUT_DATA = 24, sal die uitsetdata samplese is opgevul met 24 – (STREAM_DATAO_BITS) van 0'e by MSB-posisie, beide vir werklike en denkbeeldige data samples voor raam
4. As 24 < STREAM_DATAO_BITS < 32 dan AXI4S_OUT_DATA = 32, sal die uitsetdata samplese is opgevul met 32-(STREAM_DATAO_BITS) van 0'e by MSB-posisie, beide vir werklike en denkbeeldige data samples voor raam
5. As 32 < STREAM_DATAO_BITS < 40 dan AXI4S_OUT_DATA = 40, sal die uitsetdata samplese is opgevul met 40 – (STREAM_DATAO_BITS) van 0'e by MSB-posisie, beide vir werklike en denkbeeldige data samples voor raam
Let wel: Opvulling moet vanaf MSB begin.
2.2.2
Poorte Die volgende tabel beskryf die poortseine vir die Streaming CoreFFT-makro.
Tabel 2-4. Stroom FFT I/O seinbeskrywings
Poortnaam CLK SLOWCLK
CLKEN
In/Uit In In
In
Poortwydte, stukkies Beskrywing
1
Stygende kloksein
1
Laefrekwensie stygende kloksein vir twiddle LUT
inisialisering, moet dit ten minste deel deur vier keer van CLK
frekwensie.
1
Opsionele klok aktiveer sein
Nadat die sein gedeaktiveer is, hou die kern op om geldig te genereer
resultate
NGRST
In
1
RST
In
1
Poorte beskikbaar wanneer NATIV_AXI4 = 1
Asinchroniese terugstelsein aktief-laag. Opsionele sinchroniese terugstelsein aktief-hoog.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 16
CoreFFT v8.0
Koppelvlak
………..vervolg
Port Naam
In/Uit
AXI4_S_DATAI_ In TVALID
AXI4_S_DATAI_ Uit TREADY
AXI4_S_TDATAI In
AXI4_S_TLASTI In
AXI4_M_DATAO Uit _TVALID
AXI4_M_DATAO In _TREADY
AXI4_M_TDATA Uit O
AXI4_M_TLAST Uit O
AXI4_S_CONFIG In I_TVALID
AXI4_S_
Uit
CONFIGI
_TREADY
AXI4_S_CONFIG In I
AXI4_M_CONFI Uit GO_TVALID
AXI4_M_CONFI In GO _TREADY
Poortwydte, stukkies Beskrywing
1
AXI4 Stroom data geldige invoer na die kern vanaf eksterne bron
dui die databeskikbaarheid aan. Dit dien as BEGIN van die kern.
Let wel: Lees START-poortbeskrywing vir meer inligting.
1
AXI4 Stroom data gereed na die eksterne bron
Dui kerngereedheid aan om die data te aanvaar
(2 *
AXI4 Stroom data-invoer vanaf bron na die kern.
AXI4S_IN_DATA) Bevat regte data (DATAI_RE) opgevul met 0'e en denkbeeldige
(DATAI_IM) data opgevul met 0'e dienooreenkomstig.
1
Dui die oordrag van laaste data aanample van eksterne
bron.
1
AXI4 Stroom data geldige uitset na ontvanger dui aan dat kern gereed is
getransformeerde data te stuur. Dit dien as DATAO_VALID van die kern.
Let wel: Lees DATAO_VALID-poortbeskrywing vir meer
inligting.
1
AXI4 Stroom data gereed vanaf ontvanger
Dui die eksterne ontvanger gereedheid aan
Dit moet altyd 1 wees vir kernfunksies
(2 * AXI4S_OUT_DA TA)
AXI4 Stroom data uit na ontvanger.
Bevat getransformeerde werklike data (DATAO_RE) opgevul met 0'e en denkbeeldige data (DATAO_IM) opgevul met 0'e dienooreenkomstig.
1
Dui die oordrag van laaste getransformeerde data aanample van
IP
1
Geldige invoer na die kern vanaf eksterne bron
Dui die beskikbaarheid van konfigurasiedata aan
1
Gereed aan die eksterne bron om kerngereedheid van aan te dui
die konfigurasiedata te aanvaar.
8
Konfigurasiedata-invoer vanaf bron na die kern en die bron
moet die IP konfigureer voordat die data versend wordamples. Dit
bevat die volgende konfigurasie-inligting:
· Bit0 – INVERSE (Wanneer die bis hoog is, bereken die kern Inverse FFT van die volgende dataraam, anders Forward FFT)
· Bit1 – REFRRESH (Herlaai die twiddle-koëffisiënt LUT's in die ooreenstemmende RAM-blokke)
1
Statusdata geldige uitvoer na ontvanger
Dui aan dat kern gereed is om getransformeerde data te stuur
1
Statusdata gereed vanaf ontvanger
Dui die eksterne ontvanger gereedheid aan.
Dit moet altyd 1 wees vir kernfunksies.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 17
CoreFFT v8.0
Koppelvlak
………..vervolg
Port Naam
In/Uit
AXI4_M_CONFI Uit GO
Poortwydte, stukkies Beskrywing
8
Statusdata uit na ontvanger
Dit bevat die volgende statusinligting:
Bit0 – OVFLOW_FLAG (Rekenkundige oorloopvlag, CoreFFT bevestig die vlag as die FFT/IFFT-berekening oorloop. Die vlag begin sodra die kern oorloop bespeur. Die vlag eindig wanneer die huidige uitsetdataraam eindig)
Poorte beskikbaar wanneer NATIV_AXI4=0
DATAI_IM
In
DATA_BITS
DATAI_RE
In
DATA_BITS
BEGIN
In
1
Denkbeeldige invoerdata wat getransformeer moet word.
Werklike invoerdata wat getransformeer moet word.
Transformasie begin sein
Dui die oomblik aan wat die eerste sample van 'n invoerdataraam van N komplekse samples gaan die kern binne.
As die START kom wanneer die vorige invoerdataraam nie voltooi is nie, sal die sein geïgnoreer word.
INVERSE
In
1
Inverse transformasie Wanneer die sein beweer word, bereken die kern inverse FFT van die volgende dataraam, anders vorentoe FFT.
VERFRISS
In
DATAO_IM
Uit
DATAO_RE
Uit
OUTP_READY Uit
1
DATA_BITS DATA_BITS 1
Herlaai die twiddle-koëffisiënt LUT's in die ooreenstemmende RAM-blokke.
Denkbeeldige uitsetdata
Werklike uitsetdata
FFT-resultate is gereed Die kern bevestig die sein wanneer dit op die punt is om 'n raam van N FFT'ed data uit te voer. Die breedte van die sein is een klokinterval.
DATAO_VALID Uit
1
Uitsetraam is geldig
Vergesel geldige uitsetdataraam. Sodra dit begin is, duur die sein N kloksiklusse.
As die invoerdata deurlopend kom met geen gapings tussen rame nie, sal die DATAO_VALID sodra dit begin is, onbepaald duur.
OVFLOW_FLAG Uit
1
Rekenkundige oorloopvlag CoreFFT bevestig die vlag as die FFT/IFFT-berekening oorloop. Die vlag begin sodra die kern oorloop bespeur. Die vlag eindig wanneer die huidige uitsetdataraam eindig.
RFS
Uit
1
Versoek om begin Die kern bevestig die sein wanneer dit gereed is vir die volgende insetdataraam. Die sein begin sodra die kern gereed is vir die volgende raam. Die sein eindig wanneer die kern die gevraagde START-sein kry.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 18
CoreFFT v8.0
Koppelvlak
Belangrik: Alle seine is aktief-hoog (logika 1) tensy anders gespesifiseer.
2.2.3
Invoer-/uitsetdataraamformaat vir AXI4-stroomkoppelvlak Wanneer AXI4-stroomkoppelvlak gekies word, is die invoer- en uitvoerdatarame beskikbaar as gekaskadede werklike en denkbeeldige data, die data samplese word eers opgevul met nulle om byte-grense te pas om AXI4-stroming te vergemaklik.
Byvoorbeeldample, DATA_BITS van 26, naaste greepgrens is 32, dus moet ses 0'e byvoeg vir werklike en denkbeeldige data samples voordat dit oorval om AXI4-stroom-I/O DATA te raam
Tabel 2-5. AXI4 Streaming Interface I/O Dataraamformaat
Stukkies: 63…58 0's Opvulling
Bits: 57…32 denkbeeldige data
Stukkies: 31..26 0's Padding
Bits: 25…0 Werklike Data
Wenk: Sien AXI4S_IN_DATA en AXI4S_OUT_DATA parameterbeskrywing vir nulvulling in Tabel 2-3.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 19
CoreFFT v8.0
Tydsberekening Diagramme
3. Tydsberekeningdiagramme
Hierdie afdeling beskryf die tydsberekeningdiagram van CoreFFT.
3.1 In-Place FFT
Wanneer die in-plek FFT die BUF_READY sein bevestig, begin 'n databron die data s verskafamples om te transformeer. Denkbeeldige en werklike helftes van die insetdata sample moet gelyktydig verskaf word en vergesel word van die geldigheidsbis DATAI_VALID. Die databron kan die s verskafample by elke kloksiklus of teen 'n arbitrêre stadiger tempo (verwys na Figuur 3-1). Sodra die FFT-module N-invoer s ontvangamples, dit verlaag die BUF_READY-sein. Die FFT-enjin begin die data outomaties verwerk nadat dit gereed is. In die minimale geheue-konfigurasie begin die verwerkingsfase onmiddellik nadat die data-laai voltooi is. In die gebufferde konfigurasie kan die FFT-enjin wag totdat die vorige databars verwerk is. Dan begin die enjin outomaties. Die volgende figuur toon die laai van insetdata. Figuur 3-1. Laai insetdata
Nadat die transformasie voltooi is, bevestig die FFT-module die OUTP_READY-sein en begin die FFT-resultate genereer. Die denkbeeldige en werklike helftes van die uitset samplese verskyn gelyktydig op DATAO_IM en DATAO_RE multibit-uitsette. Elke uitset sample word vergesel deur die DATAO_VALID bis. Die data-ontvanger aanvaar die getransformeerde data óf by elke kloksiklus óf teen 'n arbitrêre stadiger tempo. Die FFT-module hou aan om data-uitvoer te verskaf terwyl die READ_OUTP-sein bevestig word. Om die uitset s te beheerampMet die koers moet die ontvanger die READ_OUTP-sein deasser soos en wanneer nodig (soos in die volgende figuur getoon). Die volgende figuur toon die ontvangs van die transformasiedata. Figuur 3-2. Ontvangs van getransformeerde data
Wanneer die READ_OUTP-sein gebruik word om leestempo te beheer, moet moontlike FFT-siklusgroei oorweeg word. In die minimale geheue opset verleng enige verlenging van die lees (oplaai) tyd die FFT siklus sien Figuur 1-2. In die gebufferde konfigurasie groei die FFT-siklus wanneer die werklike oplaaityd die toegewyde interval oorskry wat in Figuur 1-3 getoon word as "Beskikbaar vir die lees van resultate van siklus i." Ook, in die gebufferde konfigurasie, begin die uitsetbuffer die vars FFT-resultate aanvaar, selfs al is die ouer resultate nie uitgelees nie, en oorskryf dus die ouer. In hierdie geval bevestig die kern die OUTP_READY en die DATAO_VALID seine wanneer hulle nie meer geldig is nie.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 20
CoreFFT v8.0
Tydsberekening Diagramme
3.2
3.2.1
Stroom FFT
Vir AXI4S-koppelvlak word die werking van AXI4S-koppelvlakpoorte gekarteer na dié van inheemse koppelvlak. Vir een tot een kartering, sien Tabel 2-4 in Ports van 2.2. Stroom FFT.
RFS en START Die kern genereer die RFS-sein om 'n databron te laat weet dat dit gereed is vir die volgende raam van die invoerdata samples. Nadat dit beweer is, bly die RFS aktief totdat die databron met die START-sein reageer.
Sodra die kern die START kry, bevestig dit die RFS-sein en begin die insetdataraamwerk ontvang. Na N klokintervalle word die dataraamontvangs voltooi, en die RFS-sein word weer aktief. Die volgende figuur toon 'n example wanneer die FFT-enjin wag vir die databron om die START-sein te verskaf.
Figuur 3-3. RFS wag vir BEGIN
Die START-sein het 'n permanente aktiewe waarde, en die kern begin 'n ander insetraam ontvang direk na die einde van 'n vorige raam. Dit is opsioneel vir die databron om na die RFS-sein te kyk. Dit kan die START-sein te eniger tyd bevestig, en die kern begin so gou as moontlik 'n ander insetraam aanvaar. In die situasie van die Figuur 3-3 begin 'n nuwe raamlaai onmiddellik na die START-sein. As die START-sein kom wanneer 'n vorige invoerraam gelaai word, wag die kern totdat die raam eindig en begin dan 'n ander raam laai. Die volgende figuur toon 'n ander example waar die invoerdata onbepaald kom sonder gapings tussen die rame. Figuur 3-4. Transformasie van stroomdata
Die volgende figuur wys die START-sein lei die werklike insetraam met een klokinterval. Figuur 3-5. START lei die data
3.2.2
OUTP_READY en DATAO_VALID
Hierdie twee seine dien om 'n data-ontvanger in kennis te stel wanneer die FFT-resultate gereed is. Die OUTP_READY is 'n klokwye puls. Die kern beweer wanneer die uitsetdataraam op die punt is om uit te voer. Die kern bevestig die DATAO_VALID-sein terwyl die uitsetraam gegenereer word. Die DATAO_VALID-sein volg die OUTP_READY-sein met een klokinterval. Die volgende figuur toon die tydsberekening verhoudings tussen die twee seine en die FFTed data raam.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 21
Figuur 3-6. Uitset data en handdruk seine
CoreFFT v8.0
Tydsberekening Diagramme
Die volgende figuur toon 'n scenario waar die DATAO_VALID sein permanent aktief is wanneer die stroomdata geen gapings tussen die rame het nie.
Figuur 3-7. Stroom uitsetdata sonder gapings
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 22
CoreFFT v8.0
Gereedskapvloei
4. Gereedskapvloei
Hierdie afdeling beskryf die gereedskapvloei van CoreFFT.
4.1 Lisensie
CoreFFT is lisensie gesluit.
4.2 Konfigurasie van CoreFFT in SmartDesign
CoreFFT is beskikbaar vir aflaai in die Libero® IP-katalogus deur die web bewaarplek. Nadat dit in die katalogus gelys is, kan die kern geïnstansieer word deur die SmartDesign-vloei te gebruik. Om te weet hoe om SmartDesign-projek te skep, sien SmartDesign-gebruikersgids. Nadat die kerninstansie gekonfigureer en gegenereer is, kan die basiese funksionaliteit gesimuleer word met behulp van die toetsbank wat met CoreFFT verskaf word. Die toetsbankparameters pas outomaties aan by die CoreFFT-konfigurasie. CoreFFT kan geïnstansieer word as 'n komponent van 'n groter ontwerp.
Belangrik: CoreFFT is versoenbaar met beide Libero geïntegreerde ontwerpomgewing (IDE) en Libero SoC. Tensy anders gespesifiseer, gebruik hierdie dokument die naam Libero om beide Libero IDE en Libero SoC te identifiseer. Figuur 4-1. SmartDesign CoreFFT-instansie View
Die kern kan gekonfigureer word met behulp van die konfigurasie Graphical User Interface (GUI) binne SmartDesign. 'n eksample van die GUI vir die SmartFusion2-familie word in die volgende figuur getoon.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 23
Figuur 4-2. Konfigureer CoreFFT in SmartDesign
CoreFFT v8.0
Gereedskapvloei
4.3 Simulasievloeie
Die gebruikerstoetsbank vir CoreFFT is by die vrystelling ingesluit. Om dit te doen, voer die volgende stappe uit: 1. Om die gebruikerstoetsbank te laat loop, stel die Ontwerpwortel na die CoreFFT-instansiasie in die Libero SoC-ontwerphiërargie-paneel. 2. Onder Verifieer vooraf gesintetiseerde ontwerp, in die Libero SoC Design Flow-venster, regskliek Simuleer, en kies dan Open Interactively. Dit roep ModelSim op en laat die simulasie outomaties loop.
Belangrik:Wanneer jy die VHDL-weergawe van die kern simuleer, wil jy dalk ontslae raak van die IEEE.NUMERIC_STD-biblioteekwaarskuwings. Om dit te doen, voeg die volgende twee reëls by die outomaties gegenereerde run.do file:
· stel NumericStdNoWarnings -1 · stel StdArithNoWarnings -1
4.3.1 4.3.1.1
Toetsbank Die verenigde toetsbank wat gebruik word om CoreFFT te verifieer en te toets, word as gebruikerstoetsbank genoem.
Gebruikerstoetsbank Die volgende figuur toon die blokdiagram vir toetsbank. Die volgende vergelyking wys hoe die goue gedrags-FFT die eindige presisieberekeninge wat in getoon word, implementeer
x(k) = n= 0N-1X(n)e?jnk2?/N
Vergelyking 1 of Vergelyking 2 in Inleiding, beide die goue FFT en CoreFFT is identies gekonfigureer en ontvang dieselfde toetssein. Die toetsbank vergelyk die uitsetseine van die goue module en die werklike CoreFFT.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 24
Figuur 4-3. CoreFFT-gebruikerstoetsbank
CoreFFT v8.0
Gereedskapvloei
Die toetsbank verskaf eksamples van hoe om die gegenereerde FFT-module te gebruik. Die toetsbank kan volgens die vereistes aangepas word.
4.4 Ontwerpbeperkings
Kerntydberekening benodig uitsonderings (dit wil sê, vals pad en multifietspad) moet tussen die horlosiegrense gebruik word. Vir verwysing oor vereiste beperkings wat bygevoeg moet word, sien CoreFFT.sdc vanaf die pad. /component/Actel/DirectCores/CoreFFT/ /beperkings/ CoreFFT.sdc.
4.5 Sintese in Libero SoC
Om die sintese van die geselekteerde konfigurasie uit te voer, voer die volgende stappe uit: 1. Stel die ontwerpwortel gepas in die konfigurasie-GUI. 2. Onder Implementeer Ontwerp, in die Ontwerpvloei-oortjie, regskliek op Sintetiseer en kies Run.
4.6 Plek-en-roete in Libero SoC
Nadat u die ontwerpwortel toepaslik gestel het en voer Sintese uit. Onder Implementeer Ontwerp in die Ontwerpvloei-oortjie, regskliek op Plaas en Roete en klik Run.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 25
CoreFFT v8.0
Stelselintegrasie
5. Stelselintegrasie
Hierdie afdeling verskaf 'n example wat die integrasie van CoreFFT toon.
5.1 In-Place FFT
Die volgende figuur toon 'n example van die gebruik van die kern. Wanneer die in-plek FFT die BUF_READY sein bevestig, begin 'n databron die data s verskafamples om te transformeer. Denkbeeldige en werklike helftes van die insetdata sample moet gelyktydig verskaf word en vergesel word van die geldigheidsbis-DATAI_VALID. Die databron kan die s verskafample by elke kloksiklus of teen 'n arbitrêre stadiger tempo (sien Figuur 3-1). Nadat die FFT-module N-invoer s ontvangamples, dit verlaag die BUF_READY-sein. Figuur 5-1. Bvample van die In-Place FFT System
Die FFT-enjin begin die data outomaties verwerk nadat dit gereed is. In die minimale geheue-konfigurasie begin die verwerkingsfase onmiddellik nadat die data-laai voltooi is. In die gebufferde konfigurasie kan die FFT-enjin wag totdat 'n vorige databars verwerk is. Dan begin die enjin outomaties.
5.2 Stroom FFT
Die kern voer vorentoe FFT uit oor die data wat by elke kloksiklus kom. Die databron hou aan om die data te verskaf terwyl die data-ontvanger voortdurend die FFT-ed resultate ontvang en die oorloopvlag monitor indien nodig. Die opsionele inset BEGIN sein en die uitset RFS sein kan gebruik word indien verwerking van die data rame vereis word. Die databron genereer die START-sein om die begin van 'n ander raam te merk, en die data-ontvanger gebruik die RFS-sein om die begin van die uitsetraam te merk. Streaming CoreFFT kan oneindige komplekse datastrome verwerk, soos in die volgende figuur getoon.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 26
Figuur 5-2. Bvample van 'n Streaming FFT-stelsel
CoreFFT v8.0
Stelselintegrasie
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 27
CoreFFT v8.0
Bylaag A: In-Place FFT-toestelgebruik …
6. Bylaag A: In-Place FFT-toestelbenutting en -prestasie
Tabel 6-1 en Tabel 6-2 toon gebruik en werkverrigting vir 'n verskeidenheid van in-plek FFT groottes en data breedtes. Die getalle is verkry uit die konfigurasie wat in Tabel 6-3 gelys word.
Tabel 6-1. In-Place FFT SmartFusion2 M2S050 Toestelbenutting en -prestasie (minimale geheuekonfigurasie)
Kernparameters
Stofhulpbrongebruik
Blokke
Prestasie
Punte 256
Breedte 18
DFF 1227
4 LUT 1245
Totaal 2472
LSRAM MACC
3
4
Klokkoers
328
FFT Tyd (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
Tabel 6-2. In-Place FFT SmartFusion2 M2S050 Toestelbenutting en -werkverrigting (gebufferde konfigurasie)
Kernparameters
PUNTE BREEDTE
256
18
512
18
1024
18
4096
18
Stofhulpbrongebruik
DFF
4LUUT
Totaal
1487
1558
3045
1527
1820
3347
1579
2346
3925
2418
4955
7372
Blokke LSRAM 7 7 7 28
MACC 4 4 4 4
Prestasie
Klokkoers FFT Tyd (s)
328
3.3
321
7.4
310
16.8
281
87.8
Wenk: · Data in Tabel 6-1 en Tabel 6-2 is verkry deur gebruik te maak van tipiese sintese-instellings. Die Synplify-frekwensie (MHz) is op 500 gestel
· Die gebruiksgetalle word verkry met behulp van Libero v12.4 en daar kan potensiële area- en prestasieverbetering wees met nuwer hersienings
· In sintese-instellings word ROM-komponente na logika gekarteer en RAM-optimering gekarteer vir hoëspoed
· Uitleginstellings was soos volg:
Ontwerperblokskepping geaktiveer
Hoëpoging-uitleg geaktiveer
· Die FFT-tyd wat gewys word, weerspieël slegs die transformasietyd. Dit hou nie rekening met die aflaai van data of die oplaai van die resultate nie
Tabel 6-3. In-Place FFT PolarFire MPF300 Toestelle Gebruik en Werkverrigting (Minimale geheue konfigurasie)
Kernparameters
Stofhulpbrongebruik
Max klok
PUNTE BREEDTE uRAM Diepte 4 LUT DFF uRAM LSRAM MACC Frekwensie
64
18
512
939 1189 9
0
4
415
Transformeer tyd (vS)
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.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 28
CoreFFT v8.0
Bylaag A: In-Place FFT-toestelgebruik …
………..vervolg
Kernparameters
Stofhulpbrongebruik
Max klok
PUNTE BREEDTE uRAM Diepte 4 LUT DFF uRAM LSRAM MACC Frekwensie
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
Transformeer tyd (vS)
6.2 6.7 14.3 70.1 73 387 353.5
Tabel 6-4. In-Place FFT PolarFire MPF300 Toestelbenutting en -prestasie (gebufferde konfigurasie)
Kernparameters
Stofhulpbrongebruik
Max klok
PUNTE BREEDTE uRAM Diepte 4 LUT DFF uRAM LSRAM MACC Frekwensie
Transformeer tyd (vS)
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
Wenk: · Data in Tabel 6-3 en Tabel 6-4 is verkry deur gebruik te maak van tipiese Libero SoC-gereedskapinstellings. Die tydsbeperking is op 400 MHz gestel
· Die gebruiksgetalle word verkry met behulp van Libero v12.4 en daar kan potensiële area- en prestasieverbetering wees met nuwer hersienings
· In sintese-instellings word ROM-komponente na logika gekarteer en RAM-optimering gekarteer vir hoëspoed
· Plek en Roete is gestel vir Tydsberekening-gedrewe Hoë Poging-uitleg
· Die FFT-tyd weerspieël slegs die transformasietyd. Dit hou nie rekening met die aflaai van data of die oplaai van die resultate nie
Belangrik: FPGA-hulpbronne en werkverrigtingdata vir die PolarFire SoC-familie is soortgelyk aan die PolarFire-familie.
Tabel 6-5. In-Place FFT Benutting en Prestasie konfigurasie Parameter INVERSE SCALE SCALE_EXP_ON HDL tipe
Waarde 0 0 0 Verilog
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 29
CoreFFT v8.0
Bylaag B: Stroom FFT-toestelgebruik …
7. Bylaag B: Stroom FFT-toestelgebruik en -prestasie
Die volgende tabelle lys die gebruik en werkverrigting vir 'n verskeidenheid stromende FFT-konfigurasies.
Tabel 7-1. Stroom FFT SmartFusion2 M2S050T Spoed Graad -1
Kernparameters
Hulpbrongebruik
Blokke
Klokkoers
FFT_SIZE DATA_BITS TWID_BITS Bestel DFF 4LUT Totale LSRAM uRAM MACC
16
18
18
Omgekeerde 2198 1886 4084 0
11
8
241
16
18
18
Normaal 1963 1600 3563 0
5
8
241
32
18
18
Omgekeerde 3268 2739 6007 0
16
16
225
64
18
18
Omgekeerde 3867 3355 7222 0
19
16
217
128
18
18
Omgekeerde 4892 4355 9247 5
16
24
216
256
18
18
Omgekeerde 5510 5302 10812 7
16
24
229
256
18
18
Normaal 5330 5067 10406 3
16
24
229
256
24
25
Omgekeerde 8642 7558 16200 8
21
48
223
512
18
18
Omgekeerde 6634 6861 13495 10
16
32
228
512
18
24
Omgekeerde 9302 8862 18164 12
18
64
228
1024
24
24
Omgekeerde 10847 11748 22595 17
18
64
225
1024
24
25
Omgekeerde 11643 12425 24068 19
22
64
221
Wenk: · uRAM maksimum diepte is op 64 gestel
· Die gebruiksgetalle word verkry met Libero v12.4, en daar kan potensiële area- en prestasieverbetering wees met nuwer hersienings
· In sintese-instellings word ROM-komponente na logika gekarteer en RAM-optimering gekarteer vir Hoëspoed. Die Synplify-frekwensie is op 500 gestel
· Uitleg hoë moeite-modus is ingestel
Tabel 7-2. Stroom FFT PolarFire MPF300 Spoed Graad -1
Kernparameters
FFT_SIZE DATA_BIT TWID_BITS SKAAL uRAM Besteldiepte
Hulpbrongebruik
Horlosie
4LUT DFF uRAM LSRAM MACC Tarief
16
16
18
On
256 Omgekeerde 1306 1593 6
0
4
319
16
16
18
On
256 Normaal 1421 1700 12 0
4
319
32
16
18
On
256 Omgekeerde 1967 2268 18 0
8
319
64
16
18
On
256 Omgekeerde 2459 2692 15 0
8
319
128
20
18
On
256 Normaal 4633 4911 44 0
24
310
256
22
18
Af
256 Normaal 6596 6922 94 0
24
307
256
24
25
512
18
18
On
0
On
0
Omgekeerde 8124 8064 0
14
48
304
Omgekeerde 6686 5691 0
9
32
293
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 30
CoreFFT v8.0
Bylaag B: Stroom FFT-toestelgebruik …
………..vervolg Kernparameters
FFT_SIZE DATA_BIT TWID_BITS SKAAL uRAM Besteldiepte
Hulpbrongebruik
Horlosie
4LUT DFF uRAM LSRAM MACC Tarief
1024
24
25
On
0
Omgekeerde 13974 10569 0
21
64
304
1024
18
18
On
0
Normaal 14289 10816 0
27
64
307
2048
18
18
On
0
Normaal 12852 7640 0
24
40
304
2048
18
18
On
0
Omgekeerde 12469 7319 0
16
40
315
4096
24
25
On
0
Normaal 29977 14288 0
59
80
305
4096
28
28
On
512 Normaal 34448 17097 120 48
80
301
Wenk: · Data in die voorafgaande tabel is verkry deur gebruik te maak van die tipiese Libero SoC-gereedskapinstellings. Die tydsbeperking is op 400 MHz gestel
· Toestelgebruiksnommers van die stroomargitektuur is byna dieselfde vir beide AXI4S-koppelvlak en inheemse koppelvlak
· Die gebruiksgetalle word verkry met Libero v12.4, en daar kan potensiële area- en prestasieverbetering wees met nuwer hersienings
· In sintese-instellings word ROM-komponente na logika gekarteer en RAM-optimering gekarteer vir hoëspoed
· Plek en roete is gestel vir die tydsberekening-gedrewe hoëpoging-uitleg
· FPGA-hulpbronne en werkverrigtingdata vir die PolarFire SoC-familie is soortgelyk aan die PolarFire-familie
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 31
CoreFFT v8.0
Hersieningsgeskiedenis
8. Hersieningsgeskiedenis
Die hersieningsgeskiedenis beskryf die veranderinge wat in die dokument geïmplementeer is. Die veranderinge word volgens hersiening gelys, wat begin met die nuutste publikasie.
Tabel 8-1. hersiening Geskiedenis
Hersiening Datum Beskrywing
C
08/2022 In hersiening C van die dokument, bygewerk Tabel 6-1, Tabel 6-2, Tabel 6-3, Tabel 6-4, Tabel 7-1,
en Tabel 7-2.
B
07/2022 Die volgende is die lys van veranderinge in hersiening B van die dokument:
· Opgedateer: Tabel 2-2 in 2.1.2. Hawens.
· Opgedateer: Tabel 2-4 in 2.2.2. Hawens.
· Opgedateer: 4.4. Ontwerpbeperkings.
· Verwyder: "Konfigureer tydsbeperkings" afdeling.
A
07/2022 Die volgende is die lys van veranderinge in hersiening A van die dokument:
· Die dokument is na die Mikroskyfie-sjabloon gemigreer.
· Die dokumentnommer is opgedateer na DS50003348A vanaf 50200267.
· Die volgende afdelings word opgedateer:
Tabel 1 in Kenmerke.
Toestelbenutting en -prestasie.
Tabel 1-2 in 1.4.4.2. Ongeskaalde modus-invoerbiswydtebeperkings.
Figuur 1-7 in 1.4.4.3. Betree skaalskedule.
Tabel 1-3 in 1.4.4.3. Betree skaalskedule.
Tabel 2-3 in 2.2.1. Konfigurasie parameters.
Tabel 2-4 in 2.2.2. Hawens.
Tabel 2-2 in 2.1.2. Hawens.
Figuur 4-2 in 4.2. Konfigureer CoreFFT in SmartDesign.
· Die volgende afdelings word bygevoeg: 1.4.3. Stroom FFT Uitset Data Woorde Orde. 2.2.3. Invoer-/uitsetdataraamformaat vir AXI4-stroomkoppelvlak. 4.3. Simulasie vloei. 4.4. Ontwerpbeperkings. 4.5. Sintese in Libero SoC. 4.6. Plek-en-roete in Libero SoC.
· Die volgende afdelings word verwyder: "Ondersteunde weergawe." "Natuurlike uitsetvolgorde."
10
—
Bygevoeg PolarFire® SoC ondersteuning.
9
—
"Produkondersteuning": Verwyder.
8
—
Opgedateerde veranderinge wat verband hou met CoreFFT v7.0.
7
—
Opgedateerde veranderinge wat verband hou met CoreFFT v6.4.
6
—
Opgedateerde veranderinge wat verband hou met CoreFFT v6.3.
5
—
Opgedateerde veranderinge wat verband hou met Ondersteunde gesinne (SAR 47942).
4
—
Opgedateerde veranderinge wat verband hou met CoreFFT v6.1.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 32
CoreFFT v8.0
Hersieningsgeskiedenis
………..vervolg Hersieningsdatum
3
—
2
—
1
—
Beskrywing
Die volgende is die lys van veranderinge in revision3.0 van die dokument: · Opgedateerde veranderinge wat verband hou met CoreFFT v6.0. · Die vrystelling voeg ondersteuning by vir SmartFusion2-familie (slegs in-Place-argitektuur).
Die volgende is die lys van veranderinge in hersiening 2.0 van die dokument: · Opgedateerde veranderinge wat verband hou met CoreFFT v5.0. · Hierdie vrystelling voeg 'n nuwe argitektuur by die bestaande In-place CoreFFT v4.0. · Die nuwe argitektuur ondersteun Streaming Forward en Inverse FFT wat hoëspoedstroom data transformeer.
Aanvanklike vrystelling.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 33
CoreFFT v8.0
Mikroskyfie FPGA Ondersteuning
Microchip FPGA-produktegroep ondersteun sy produkte met verskeie ondersteuningsdienste, insluitend kliëntediens, kliënte-tegniese ondersteuningsentrum, 'n webwebwerf, en wêreldwye verkoopskantore. Kliënte word voorgestel om Microchip aanlyn hulpbronne te besoek voordat hulle ondersteuning kontak, aangesien dit baie waarskynlik is dat hul navrae reeds beantwoord is. Kontak Tegniese Ondersteuningsentrum deur die webwebwerf by www.microchip.com/support. Noem die FPGA-toestelonderdeelnommer, kies toepaslike gevalkategorie en laai ontwerp op files terwyl die skep van 'n tegniese ondersteuning geval. Kontak Kliëntediens vir nie-tegniese produkondersteuning, soos produkpryse, produkopgraderings, opdateringsinligting, bestellingstatus en magtiging.
· Van Noord-Amerika, skakel 800.262.1060 · Van die res van die wêreld, skakel 650.318.4460 · Faks, van enige plek in die wêreld, 650.318.8044
Mikroskyfie inligting
Die mikroskyfie Webwebwerf
Microchip bied aanlyn ondersteuning via ons webwebwerf by www.microchip.com/. Hierdie webwebwerf word gebruik om te maak files en inligting maklik beskikbaar vir kliënte. Sommige van die beskikbare inhoud sluit in:
· Produkondersteuningsdatablaaie en errata, toepassingsnotas en aample-programme, ontwerphulpbronne, gebruikersgidse en hardeware-ondersteuningsdokumente, nuutste sagtewarevrystellings en argiefsagteware
· Algemene Tegniese Ondersteuning Gereelde Vrae (Gereelde Vrae), tegniese ondersteuningsversoeke, aanlyn besprekingsgroepe, Mikroskyfie-ontwerpvennootprogramledelys
· Besigheid van Microchip Produkkieser en bestelgidse, jongste Microchip persvrystellings, lys van seminare en geleenthede, lyste van Microchip verkoopskantore, verspreiders en fabrieksverteenwoordigers
Kennisgewingdiens vir produkverandering
Microchip se kennisgewingdiens vir produkverandering help om kliënte op hoogte te hou van Microchip-produkte. Intekenare sal e-poskennisgewing ontvang wanneer daar veranderinge, opdaterings, hersienings of foute is wat verband hou met 'n spesifieke produkfamilie of ontwikkelingsinstrument van belang. Om te registreer, gaan na www.microchip.com/pcn en volg die registrasie-instruksies.
Kliënte ondersteuning
Gebruikers van Microchip-produkte kan bystand deur verskeie kanale ontvang: · Verspreider of Verteenwoordiger · Plaaslike verkoopskantoor · Embedded Solutions Engineer (ESE) · Tegniese Ondersteuning
Kliënte moet hul verspreider, verteenwoordiger of ESE kontak vir ondersteuning. Plaaslike verkoopskantore is ook beskikbaar om kliënte te help. 'n Lys van verkoopskantore en liggings is by hierdie dokument ingesluit. Tegniese ondersteuning is beskikbaar deur die webwebwerf by: www.microchip.com/support
Mikroskyfie-toestelle-kodebeskermingsfunksie
Let op die volgende besonderhede van die kodebeskermingsfunksie op Mikroskyfie-produkte:
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 34
CoreFFT v8.0
· Mikroskyfie-produkte voldoen aan die spesifikasies vervat in hul spesifieke mikroskyfie-datablad. · Microchip glo dat sy familie produkte veilig is wanneer dit op die beoogde wyse gebruik word, binne bedryf
spesifikasies, en onder normale toestande. · Mikroskyfie waardeer en beskerm sy intellektuele eiendomsregte aggressief. Pogings om die kode te oortree
beskermingskenmerke van Microchip-produk is streng verbode en kan die Digital Millennium Copyright Act oortree. · Nóg Microchip nóg enige ander halfgeleiervervaardiger kan die sekuriteit van sy kode waarborg. Kodebeskerming beteken nie dat ons waarborg dat die produk “onbreekbaar” is nie. Kodebeskerming ontwikkel voortdurend. Microchip is daartoe verbind om die kodebeskermingseienskappe van ons produkte voortdurend te verbeter.
Regskennisgewing
Hierdie publikasie en die inligting hierin mag slegs met Mikroskyfie-produkte gebruik word, insluitend om Mikroskyfie-produkte met jou toepassing te ontwerp, te toets en te integreer. Gebruik van hierdie inligting op enige ander wyse oortree hierdie bepalings. Inligting rakende toesteltoepassings word slegs vir u gerief verskaf en kan deur opdaterings vervang word. Dit is jou verantwoordelikheid om te verseker dat jou aansoek aan jou spesifikasies voldoen. Kontak jou plaaslike Microchip-verkoopskantoor vir bykomende ondersteuning of, kry bykomende ondersteuning by www.microchip.com/en-us/support/design-help/client-support-services.
HIERDIE INLIGTING WORD “SOOS IS” DEUR MICROCHIP VERSKAF. MICROCHIP MAAK GEEN VERTOë OF WAARBORGE VAN ENIGE AARD, HETsy UITDRUKKELIJK OF GEÏMPLISEERD, SKRIFTELIK OF MONDELING, STATUTÊR OF ANDERS NIE, VERWANTE MET DIE INLIGTING INGESLUIT, MAAR NIE BEPERK TOT ENIGE GEÏSPLISEERDE WAARBORGE-EN-VERBORGING, GESKIKTHEID VIR 'N SPESIFIEKE DOEL, OF WAARBORGE VERWANTE MET DIE TOESTAND, KWALITEIT OF PRESTASIE.
IN GEEN GEVAL SAL MICROCHIP AANSPREEKLIK WEES VIR ENIGE INDIREKTE, SPESIALE, STRAF-, TOEVALLE OF GEVOLLIKE VERLIES, SKADE, KOSTE OF UITGAWE VAN ENIGE AARD WAT OOKAL VERWANT IS MET DIE INLIGTING OF DIE GEBRUIK DAARVAN, WANNEER DIE OORSAAK IS, WANNEER OOKAL DIE OORSAAK IS. MOONTLIKHEID OF DIE SKADE IS VOORSIENBAAR. IN DIE VOLSTE MAAT DEUR WET TOEGELAAT, SAL MICROCHIP SE TOTALE AANSPREEKLIKHEID OP ALLE EISE OP ENIGE MANIER VERBAND MET DIE INLIGTING OF DIE GEBRUIK DAARVAN NIE DIE BEDRAG FOOIE, INDIEN ENIGE, WAARVOOR U DIREKS AAN DIE INFORMASIE BETAAL HET, OORSKRYF NIE.
Die gebruik van Mikroskyfie-toestelle in lewensondersteunende en/of veiligheidstoepassings is geheel en al op die koper se risiko, en die koper stem in om Mikroskyfie te verdedig, te vrywaar en skadeloos te hou teen enige en alle skade, eise, regsgedinge of uitgawes wat uit sodanige gebruik voortspruit. Geen lisensies word, implisiet of andersins, onder enige mikroskyfie intellektuele eiendomsregte oorgedra nie, tensy anders vermeld.
Handelsmerke
Die mikroskyfie naam en logo, die mikroskyfie logo, Adaptec, AVR, AVR logo, AVR Freaks, BesTime, BitCloud, CryptoMemory, CryptoRF, dsPIC, flexPWR, HELDO, IGLOO, JukeBlox, KeeLoq, Kleer, LANCheck, LinkMD, maXStylus, maXTouch, 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 en XMEGA is geregistreerde handelsmerke van Microchip Technology Incorporated in die VSA en ander lande.
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 en ZL is geregistreerde handelsmerke van Microchip Technology Incorporated in die VSA
Aangrensende sleutelonderdrukking, AKS, Analoog-vir-die-Digitale Ouderdom, Enige Kapasitor, AnyIn, AnyOut, Augmented Switching, BlueSky, BodyCom, Clockstudio, CodeGuard, CryptoAuthentication, CryptoAutomotive, CryptoCompanion, CryptoController, dsPICDEM, dsPICDEM.net, Dynamic Average Matching, Dynamic , DAM, ECAN, Espresso T1S, EtherGREEN, GridTime, IdealBridge, In-Circuit Serial Programmering, ICSP, INICnet, Intelligente Paralleling, IntelliMOS, Inter-Chip Connectivity, 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.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 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 en ZENA is handelsmerke van Microchip Technology Incorporated in die VSA en ander lande. SQTP is 'n diensmerk van Microchip Technology Ingelyf in die VSA. Die Adaptec-logo, Frequency on Demand, Silicon Storage Technology en Symmcom is geregistreerde handelsmerke van Microchip Technology Inc. in ander lande. GestIC is 'n geregistreerde handelsmerk van Microchip Technology Germany II GmbH & Co. KG, 'n filiaal van Microchip Technology Inc., in ander lande. Alle ander handelsmerke wat hierin genoem word, is die eiendom van hul onderskeie maatskappye. © 2022, Microchip Technology Incorporated en sy filiale. Alle regte voorbehou. ISBN: 978-1-6683-1058-8
Gehaltebestuurstelsel
Vir inligting oor Microchip se kwaliteitbestuurstelsels, besoek asseblief www.microchip.com/quality.
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 36
AMERIKA
Korporatiewe Kantoor 2355 West Chandler Blvd. Chandler, AZ 85224-6199 Tel: 480-792-7200 Faks: 480-792-7277 Tegniese ondersteuning: www.microchip.com/support Web Adres: www.microchip.com Atlanta Duluth, GA Tel: 678-957-9614 Faks: 678-957-1455 Austin, TX Tel: 512-257-3370 Boston Westborough, MA Tel: 774-760-0087 Faks: 774-760-0088 Chicago Itasca, IL Tel: 630-285-0071 Faks: 630-285-0075 Dallas Addison, TX Tel: 972-818-7423 Faks: 972-818-2924 Detroit Novi, MI Tel: 248-848-4000 Houston, TX Tel: 281-894-5983 Indianapolis Noblesville, IN Tel: 317-773-8323 Faks: 317-773-5453 Tel: 317-536-2380 Los Angeles Mission Viejo, CA Tel: 949-462-9523 Faks: 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 Kanada – Toronto Tel: 905-695-1980 Faks: 905-695-2078
Wêreldwye verkope en diens
ASIA/PASIFIK
Australië – 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 Tel China – Nanjing : 86-25-8473-2460 China – Qingdao Tel: 86-532-8502-7355 China – Sjanghai 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/PASIFIK
Indië – Bangalore Tel: 91-80-3090-4444 Indië – Nieu-Delhi Tel: 91-11-4160-8631 Indië – Pune Tel: 91-20-4121-0141 Japan – Osaka Tel: 81-6-6152-7160 Japan – Tokio Tel: 81-3-6880- 3770 Korea – Daegu Tel: 82-53-744-4301 Korea – Seoel Tel: 82-2-554-7200 Maleisië – Kuala Lumpur Tel: 60-3-7651-7906 Maleisië – Penang Tel: 60-4-227-8870 Filippyne – Manila Tel: 63-2-634-9065 Singapoer 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 Thailand – Bangkok Tel: 66-2-694-1351 Viëtnam – Ho Chi Minh Tel: 84-28-5448-2100
EUROPA
Oostenryk – Wels Tel: 43-7242-2244-39 Faks: 43-7242-2244-393 Denemarke – Kopenhagen Tel: 45-4485-5910 Faks: 45-4485-2829 Finland – Espoo Tel: 358-9-4520-820 Frankryk – Parys Tel: 33-1-69-53-63-20 Faks: 33-1-69-30-90-79 Duitsland – Garching Tel: 49-8931-9700 Duitsland – Haan Tel: 49-2129-3766400 Duitsland – Heilbronn Tel: 49-7131-72400 Duitsland – Karlsruhe Tel: 49-721-625370 Duitsland – München Tel: 49-89-627-144-0 Faks: 49-89-627-144-44 Duitsland – Rosenheim Tel: 49 -8031-354-560 Israel – Ra'anana Tel: 972-9-744-7705 Italië – Milaan Tel: 39-0331-742611 Faks: 39-0331-466781 Italië – Padova Tel: 39-049-7625286 Nederland – Drunen Tel: 31-416-690399 Faks: 31-416-690340 Noorweë – Trondheim Tel: 47-72884388 Pole – Warskou Tel: 48-22-3325737 Roemenië – Boekarest Tel: 40-21-407-87, Spanje – Madrid, Tel. : 50-34-91-708-08 Faks: 90-34-91-708-08 Swede – Gothenberg Tel: 91-46-31-704-60 Swede – Stockholm Tel: 40-46-8-5090 VK – Wokingham Tel: 4654-44-118-921 Faks: 5800-44-118-921
© 2022 Microchip Technology Inc.
en sy filiale
Gebruikersgids
DS50003348C-bladsy 37
Dokumente / Hulpbronne
![]() |
MICROCHIP v8.0 CoreFFT Fourier Transform [pdf] Gebruikersgids v8.0 CoreFFT Fourier Transform, v8.0 CoreFFT, Fourier Transform, Transformeer |