intel UG-20094 Cyclone 10 GX Native Fixed Point DSP IP Core
Intel® Cyclone® 10 GX Native Fixed Point DSP IP Core brugervejledning
Intel Cyclone® 10 GX Native Fixed Point DSP IP-kerne instansierer og styrer en enkelt Intel Cyclone 10 GX Variable Precision Digital Signal Processing (DSP) blok. Cyclone 10 GX Native Fixed Point DSP IP-kerne er kun tilgængelig for Intel Cyclone 10 GX-enheder.
Cyclone 10 GX Native Fixed Point DSP IP Core funktionelt blokdiagram
Relateret information
Introduktion til Intel FPGA IP Cores.
Cyclone 10 GX Native Fixed Point DSP IP-kernefunktioner
Cyclone 10 GX Native Fixed Point DSP IP-kerne understøtter følgende funktioner:
- Højtydende, strømoptimerede og fuldt registrerede multiplikationsoperationer
- 18-bit og 27-bit ordlængder
- To 18 × 19 multiplikatorer eller en 27 × 27 multiplikator pr. DSP-blok
- Indbygget addition, subtraktion og 64-bit dobbelt akkumuleringsregister til at kombinere multiplikationsresultater
- Cascading 19-bit eller 27-bit, når pre-adder er deaktiveret og cascading 18-bit, når pre-adder bruges til at danne tap-forsinkelseslinjen til filtreringsapplikation
- Kaskaderende 64-bit udgangsbus for at udbrede outputresultater fra en blok til den næste blok uden ekstern logikunderstøttelse
- Hard pre-adder understøttet i 19-bit og 27-bit tilstande til symmetriske filtre
- Intern koefficientregisterbank i både 18-bit og 27-bit tilstande til filterimplementering
- 18-bit og 27-bit systolisk finite impulse respons (FIR) filtre med distribueret output adder
Kom godt i gang
Dette kapitel giver en generel overview af Intel FPGA IP-kernedesignflowet for at hjælpe dig hurtigt i gang med Cyclone 10 GX Native Fixed Point DSP IP-kerne. Intel FPGA IP-biblioteket er installeret som en del af Intel Quartus® Prime-installationsprocessen. Du kan vælge og parametrere enhver Intel FPGA IP-kerne fra biblioteket. Intel leverer en integreret parametereditor, der giver dig mulighed for at tilpasse Intel FPGA DSP IP-kernen til at understøtte en lang række applikationer. Parametereditoren guider dig gennem indstilling af parameterværdier og valg af valgfrie porte.
Relateret information
- Introduktion til Intel FPGA IP Cores
Giver generel information om alle Intel FPGA IP-kerner, herunder parametrisering, generering, opgradering og simulering af IP-kerner. - Oprettelse af versionsuafhængige IP og Platform Designer (Standard) Simulatio Scripts
Opret simuleringsscripts, der ikke kræver manuelle opdateringer til software- eller IP-versionsopgraderinger. - Projektledelse bedste praksis
Retningslinjer for effektiv styring og portabilitet af dit projekt og IP files.
Cyclone 10 GX Native Fixed Point DSP IP Core Parameter Settings
Du kan tilpasse Cyclone 10 GX Native Fixed Point DSP IP-kernen ved at angive parametrene ved hjælp af parametereditoren i Intel Quartus Prime-softwaren.
Driftstilstand Faneblad
Parameter | IP-genereret parameter | Værdi | Beskrivelse |
Vælg venligst driftstilstanden | operation_mode | m18×18_full m18×18_sumof2 m18×18_plus36 m18×18_systolic m27×27 | Vælg den ønskede driftstilstand. |
Multiplikatorkonfiguration | |||
Repræsentationsformat for topmultiplikator x operand | underskrevet_max | underskrevet usigneret | Angiv repræsentationsformatet for den øverste multiplikator x-operand. |
Parameter | IP-genereret parameter | Værdi | Beskrivelse |
Repræsentationsformat for topmultiplikator y-operand | underskrevet_maj | underskrevet usigneret | Angiv repræsentationsformatet for den øverste multiplikator y-operand. |
Repræsentationsformat for bundmultiplikator x operand | underskrevet_mbx | underskrevet usigneret | Angiv repræsentationsformatet for den nederste multiplikator x-operand. |
Repræsentationsformat for bundmultiplikator y-operand | underskrevet_mby | underskrevet usigneret | Angiv repræsentationsformatet for den nederste multiplikator y-operand.
Vælg altid usigneret for m18×18_plus36 . |
Aktiver 'sub'-port | enable_sub | Ingen Ja | Vælge Ja at aktivere
underhavn. |
Registrer input 'sub' af multiplikatoren | sub_clock | Ingen Ur0 Ur1 Ur2 | Vælge Ur 0, Ur 1, eller Ur 2 for at aktivere og specificere input-clock-signalet for sub-input register. |
Input kaskade | |||
Aktiver inputkaskade for 'ay' input | ay_use_scan_in | Ingen Ja | Vælge Ja for at aktivere input kaskade modul for ay data input.
Når du aktiverer input-kaskademodulet, bruger Cyclone 10 GX Native Fixed Point DSP IP-kernen scanin-inputsignalerne som input i stedet for ay-indgangssignaler. |
Aktiver inputkaskade for 'ved' input | ved_brug_scan_ind | Ingen Ja | Vælge Ja for at aktivere input kaskade modul for ved data input.
Når du aktiverer input-kaskademodulet, bruger Cyclone 10 GX Native Fixed Point DSP IP-kernen ay-inputsignalerne som input i stedet for som inputsignaler. |
Aktiver data og forsinkelsesregister | delay_scan_out_ay | Ingen Ja | Vælge Ja for at aktivere forsinkelsesregister mellem ay og ved indgangsregistre.
Denne funktion understøttes ikke i m18×18_plus36 og m27x27 driftstilstand. |
Parameter | IP-genereret parameter | Værdi | Beskrivelse |
Aktiver data ved forsinkelsesregister | delay_scan_out_by | Ingen Ja | Vælge Ja for at aktivere forsinkelsesregister mellem af inputregistre og scanout output bus.
Denne funktion understøttes ikke i m18×18_plus36 og m27x27 driftstilstand. |
Aktiver scanoutport | gui_scanout_enable | Ingen Ja | Vælge Ja at aktivere
scanout udgangsbus. |
'scanout' udgangsbusbredde | scan_ud_bredde | 1-27 | Angiv bredden på
scanout udgangsbus. |
Data 'x' konfiguration | |||
'ax' input bus bredde | ax_width | 1-27 | Angiv bredden på
akse input bus.(1) |
Registrer input 'ax' af multiplikatoren | økse_ur | Ingen Ur0 Ur1 Ur2 | Vælge Ur 0, Ur 1, eller Ur 2 for at aktivere og specificere input-clock-signalet for ax input register.
økse input register er ikke tilgængeligt, hvis du indstiller 'ax' operandkilde til 'coef'. |
'bx' input bus bredde | bx_bredde | 1-18 | Angiv bredden på
bx input bus.(1) |
Registrer input 'bx' af multiplikatoren | bx_ur | Ingen Ur0 Ur1 Ur2 | Vælge Ur 0, Ur 1, eller Ur 2 for at aktivere og specificere input clock-signalet for bx input register.
bx input register er ikke tilgængeligt, hvis du indstiller 'bx' operandkilde til 'coef'. |
Data 'y' konfiguration | |||
'ay' eller 'scanning' busbredde | ay_scan_in_width | 1-27 | Angiv bredden af ay eller scanin input bus.(1) |
Registrer input 'ay' eller input 'scanin' af multiplikatoren | ay_scan_in_clock | Ingen Ur0 Ur1 Ur2 | Vælge Ur 0, Ur 1, eller Ur 2 for at aktivere og specificere input-clock-signalet for ay eller scanin input register. |
'ved' input bus bredde | by_width | 1-19 | Angiv bredden af input bus.(1) |
Parameter | IP-genereret parameter | Værdi | Beskrivelse |
Registrer input 'ved' af multiplikatoren | efter_ur | Ingen Ur0 Ur1 Ur2 | Vælge Ur 0, Ur 1, eller Ur 2 for at aktivere og specificere input-ursignalet for by eller scanin
input register.(1) |
Output 'resultat'-konfiguration | |||
'resulta' udgangsbusbredde | result_a_width | 1-64 | Angiv bredden på
resulterer udgangsbus. |
'resultb' output bus bredde | resultat_b_bredde | 1-64 | Angiv bredden af resultatb-outputbussen. resultb kun tilgængelig, når du bruger operation_mode m18×18_fuld. |
Brug udgangsregister | output_clock | Ingen Ur0 Ur1 Ur2 | Vælge Ur 0, Ur 1, eller Ur 2 for at aktivere og specificere input-clock-signalet for resulta- og resulta-outputregistre. |
Forudadder-fane
Parameter | IP-genereret parameter | Værdi | Beskrivelse |
'ay' operandkilde | operand_source_may | input præader | Angiv operandkilden for ay-input. Vælge præader for at aktivere pre-adder modul for top multiplikator. Indstillinger for ay og efter operandkilde skal være de samme. |
'ved' operandkilde | operand_source_mby | input præader | Angiv operandkilden for ved input. Vælge præader for at aktivere pre-adder-modul til bundmultiplikator. Indstillinger for ay og efter operandkilde skal være de samme. |
Indstil pre-adder en operation til subtraktion | preadder_subtract_a | Ingen Ja | Vælge Ja for at specificere subtraktionsoperation for pre-adder-modulet for topmultiplikatoren. Pre-adder-indstillinger for top- og bundmultiplikator skal være de samme. |
Indstil pre-adder b operation til subtraktion | preadder_subtract_b | Ingen Ja | Vælge Ja for at angive subtraktionsoperation for pre-adder-modulet for bundmultiplikatoren. Pre-adder-indstillinger for top- og bundmultiplikator skal være de samme. |
Data 'z' konfiguration | |||
'az' input bus bredde | az_width | 1-26 | Angiv bredden af az input bus.(1) |
Registrer input 'az' af multiplikatoren | az_ur | Ingen Ur0 Ur1 Ur2 | Vælge Ur 0, Ur 1, eller Ur 2 for at aktivere og specificere input-clock-signalet for az-indgangsregistre. Urindstillinger for ay- og az-inputregistre skal være de samme. |
'bz' input bus bredde | bz_width | 1-18 | Angiv bredden af bz input bus.(1) |
Registrer input 'bz' af multiplikatoren | bz_ur | Ingen Ur0 Ur1 Ur2 | Vælge Ur 0, Ur 1, eller Ur 2 for at aktivere og specificere input-clock-signalet for bz-indgangsregistre. Urindstillinger for by- og bz-indgangsregistre skal være de samme. |
Intern koefficient Tab
Parameter | IP-genereret parameter | Værdi | Beskrivelse |
'ax' operandkilde | operand_source_max | input coef | Angiv operandkilden for akse-inputbus. Vælge coef for at aktivere internt koefficientmodul for topmultiplikator.
Vælge Ingen for Registrer input 'ax' af multiplikatoren parameter, når du aktiverer den interne koefficientfunktion. |
Parameter | IP-genereret parameter | Værdi | Beskrivelse |
Indstillinger for ax- og bx-operandkilde skal være de samme. | |||
'bx' operandkilde | operand_source_mbx | input coef | Angiv operandkilden for bx-inputbus. Vælge coef for at aktivere internt koefficientmodul for topmultiplikator.
Vælge Ingen for Registrer input 'bx' af multiplikatoren parameter, når du aktiverer den interne koefficientfunktion. Indstillinger for ax- og bx-operandkilde skal være de samme. |
'coefsel' Input Register Konfiguration | |||
Registrer input 'coefsela' af multiplikatoren | coef_sel_a_clock | Ingen Ur0 Ur1 Ur2 | Vælge Ur 0, Ur 1, eller Ur 2 for at aktivere og specificere input-clock-signalet for coefsela-indgangsregistrene. |
Registrer input 'coefselb' af multiplikatoren | coef_sel_b_clock | Ingen Ur0 Ur1 Ur2 | Vælge Ur 0, Ur 1, eller Ur 2 for at aktivere og specificere input-clock-signalet for coefselb-indgangsregistrene. |
Koefficientlagringskonfiguration | |||
koef_a_0–7 | koef_a_0–7 | Heltal | Angiv koefficientværdierne for akseindgangsbus.
For 18-bit driftstilstand er den maksimale inputværdi 218 – 1. For 27-bit drift er den maksimale værdi 227 – 1. |
coef_b_0–7 | coef_b_0–7 | Heltal | Angiv koefficientværdierne for bx input bus. |
Akkumulator/Output Cascade Tab
Parameter | IP-genereret parameter | Værdi | Beskrivelse |
Aktiver 'akkumuler' port | enable_accumulate | Ingen Ja | Vælge Ja at aktivere
akkumulator port. |
Aktiver 'negativ' port | enable_negate | Ingen Ja | Vælge Ja at aktivere
ophæve havn. |
Aktiver 'loadconst'-port | enable_loadconst | Ingen Ja | Vælge Ja at aktivere
loadconst port. |
Registrer input 'akkumulering' af akkumulatoren | akkumulere_ur | Ingen Ur0 Ur1 Ur2 | Vælge Ur 0 , Ur 1, eller Ur 2 for at aktivere og specificere input-clock-signalet for de akkumulerede input-registre. |
Parameter | IP-genereret parameter | Værdi | Beskrivelse |
Registrer input 'loadconst' for akkumulatoren | load_const_clock | Ingen Ur0 Ur1 Ur2 | Vælge Ur 0, Ur 1, eller Ur 2 for at aktivere og specificere input-clock-signalet for loadconst-indgangsregistrene. |
Registrer input 'negate' for addererenheden | negate_clock | Ingen Ur0 Ur1 Ur2 | Vælge Ur 0, Ur 1, eller Ur 2 for at aktivere og specificere input-clock-signalet for de negative input-registre. |
Aktiver dobbelt akkumulator | enable_double_accum | Ingen Ja | Vælge Ja for at aktivere dobbeltakkumulatorfunktion. |
N værdi af forudindstillet konstant | load_const_value | 0 – 63 | Angiv den forudindstillede konstantværdi.
Denne værdi kan være 2N hvor N er den forudindstillede konstantværdi. |
Aktiver chainin-port | use_chainadder | Ingen Ja | Vælge Ja for at aktivere udgangskaskademodulet og kædeindgangsbussen.
Output kaskadefunktion understøttes ikke i m18×18_fuld driftstilstand. |
Aktiver chainout-port | gui_chainout_enable | Ingen Ja | Vælge Ja for at aktivere chainout-outputbussen. Output-kaskadefunktionen understøttes ikke i
m18×18_fuld driftstilstand. |
Rørledningsfane
Parameter | IP-genereret parameter | Værdi | Beskrivelse |
Tilføj inputpipelineregister til inputdatasignalet (x/y/z/coefsel) | input_pipeline_clock | Ingen Ur0 Ur1 Ur2 | Vælge Ur 0, Ur 1, eller Ur 2 for at aktivere og specificere input-clock-signalet for x, y, z, coefsela og coefselb pipeline input registre. |
Tilføj input pipeline register til 'sub' datasignalet | sub_pipeline_clock | Ingen Ur0 Ur1 Ur2 | Vælge Ur 0, Ur 1, eller Ur 2 for at aktivere og specificere input-clock-signalet for sub-pipeline-indgangsregisteret. (2) |
Tilføj input pipeline register til 'akkumuler' datasignalet | accum_pipeline_clock | Ingen Ur0 Ur1 Ur2 | Vælge Ur 0, Ur 1, eller Ur 2 for at aktivere og specificere input-clock-signalet for det akkumulerede pipeline-indgangsregister.(2) |
Tilføj input pipeline register til 'loadconst' datasignalet | load_const_pipeline_clock | Ingen Ur0 Ur1 Ur2 | Vælge Ur 0, Ur 1, eller Ur 2 for at aktivere og specificere input-clock-signalet for loadconst pipeline input register.(2) |
Tilføj input-pipeline-register til det 'negative' datasignal | negate_pipeline_clock | Ingen Ur0 Ur1 Ur2 | Vælge Ur 0, Ur 1, eller Ur 2 for at aktivere og specificere input-clock-signalet for negate pipeline input register.(2) |
Maksimal indgangsdatabredde pr. driftstilstand
Du kan tilpasse databredden for x-, y- og z-input som angivet i tabellen.
Alle pipeline-indgangsregistre for dynamiske styresignaler skal have samme urindstilling.
Driftstilstand | Maksimal Input Data Bredde | |||||
ax | ay | az | bx | by | bz | |
Uden Pre-adder eller intern koefficient | ||||||
m18×18_fuld | 18 (underskrevet)
18 (usigneret) |
19 (underskrevet)
18 (usigneret) |
Ikke brugt | 18 (underskrevet)
18 (usigneret) |
19 (underskrevet)
18 (usigneret) |
Ikke brugt |
m18×18_sumof2 | ||||||
m18×18_systolisk | ||||||
m18×18_plus36 | ||||||
m27×27 | 27 (underskrevet)
27 (usigneret) |
Ikke brugt | ||||
Kun med Pre-adder-funktion | ||||||
m18×18_fuld | 18 (underskrevet)
18 (usigneret) |
|||||
m18×18_sumof2 | ||||||
m18×18_systolisk | ||||||
m27×27 | 27 (underskrevet)
27 (usigneret) |
26 (underskrevet)
26 (usigneret) |
Ikke brugt | |||
Kun med intern koefficientfunktion | ||||||
m18×18_fuld | Ikke brugt | 19 (underskrevet)
18 (usigneret) |
Ikke brugt | 19 (underskrevet)
18 (usigneret) |
Ikke brugt | |
m18×18_sumof2 | ||||||
m18×18_systolisk | ||||||
m27×27 | 27 (underskrevet)
27 (usigneret) |
Ikke brugt |
Funktionsbeskrivelse
Cyclone 10 GX Native Fixed Point DSP IP-kernen består af 2 arkitekturer; 18 × 18 multiplikation og 27 × 27 multiplikation. Hver instansiering af Cyclone 10 GX Native Fixed Point DSP IP-kerne genererer kun 1 af de 2 arkitekturer afhængigt af de valgte driftstilstande. Du kan aktivere valgfrie moduler til din applikation.
Relateret information
Variable Precision DSP-blokke i kapitlet Intel Cyclone 10 GX-enheder, Intel Cyclone 10 GX Core Fabric og General Purpose I/Os-håndbogen.
Driftstilstande
Cyclone 10 GX Native Fixed Point DSP IP-kerne understøtter 5 driftstilstande:
- 18 × 18 fuld tilstand
- 18 × 18 Sum of 2 Mode
- 18 × 18 Plus 36-tilstanden
- Den 18 × 18 systoliske tilstand
- 27 × 27-tilstanden
18 × 18 fuld tilstand
Når den er konfigureret som 18 × 18 fuld tilstand, fungerer Cyclone 10 GX Native Fixed Point DSP IP-kerne som to uafhængige 18 (signeret/usigneret) × 19 (signeret) eller 18
(signed/unsigned) × 18 (usigned) multiplikatorer med 37-bit output. Denne tilstand anvender følgende ligninger:
- resulta = økse * ay
- resultb = bx * ved
18 × 18 fuld tilstandsarkitektur
18 × 18 Sum of 2 Mode
I 18 × 18 Sum of 2-tilstande aktiverer Cyclone 10 GX Native Fixed Point DSP IP-kerne de øverste og nederste multiplikatorer og genererer et resultat fra addition eller subtraktion mellem de 2 multiplikatorer. Det subdynamiske styresignal styrer en adderer til at udføre additions- eller subtraktionsoperationerne. Den resulterende outputbredde af Cyclone 10 GX Native Fixed Point DSP IP-kerne kan understøtte op til 64 bit, når du aktiverer akkumulator/output-kaskade. Denne tilstand anvender ligningen for resulta =[±(ax * ay) + (bx * by)].
18 × 18 Sum of 2 Mode Architecture
18 × 18 Plus 36-tilstanden
Når den er konfigureret som 18 × 18 Plus 36-tilstand, aktiverer Cyclone 10 GX Native Fixed Point DSP IP-kerne kun den øverste multiplikator. Denne tilstand anvender ligningen for resulta = (ax * ay) + concatenate(bx[17:0],by[17:0]).
18 × 18 Plus 36 Mode Architecture
Du skal indstille Repræsentationsformatet for bundmultiplikatorer y operand til usigneret, når du bruger denne tilstand. Når inputbussen er mindre end 36-bit i denne tilstand, skal du angive den nødvendige signerede forlængelse for at fylde 36-bit input.
Bruger mindre end 36-bit operand i 18 × 18 Plus 36-tilstand
Denne exampLe viser, hvordan man konfigurerer Cyclone 10 GX Native Fixed Point DSP IP-kernen til at bruge 18 × 18 Plus 36 driftstilstand med en signeret 12-bit inputdata på 101010101010 (binær) i stedet for en 36-bit operand.
- Indstil Repræsentationsformat for bundmultiplikator x operand: til signeret.
- Indstil Repræsentationsformat for bundmultiplikator y-operand: til usigneret.
- Indstil 'bx' input bus bredde til 18.
- Indstil 'ved' input bus bredde til 18.
- Angiv data for '111111111111111111' til bx-inputbussen.
- Angiv data på '111111101010101010' til via inputbus.
Den 18 × 18 systoliske tilstand
I 18 × 18 systoliske driftstilstande aktiverer Cyclone 10 GX Native Fixed Point DSP IP-kerne top- og bundmultiplikatorer, et systolisk inputregister for topmultiplikatoren og et kædesystolisk register for kæden i inputsignaler. Når du aktiverer outputkaskade, understøtter denne tilstand en outputbredde på 44 bit. Når du aktiverer akkumulatorfunktionen uden outputkaskade, kan du konfigurere resultatets outputbredde til 64 bit.
18 × 18 systolisk tilstandsarkitektur
27 × 27-tilstanden
Når den er konfigureret som 27 × 27-tilstande, muliggør Cyclone 10 GX Native Fixed Point DSP IP-kerne en 27(signeret/usigneret) × 27(signeret/usigneret) multiplikator. Udgangsbussen kan understøtte op til 64 bit med akkumulator/outputkaskade aktiveret. Denne tilstand anvender ligningen for resulta = ax * ay.
27 × 27 tilstandsarkitektur
Valgfrie moduler
De valgfrie moduler, der er tilgængelige i Cyclone 10 GX Native Fixed Point DSP IP Core, er:
- Input kaskade
- Pre-adders
- Intern koefficient
- Akkumulator og output kaskade
- Rørledningsregistre
Input kaskade
Input kaskade funktion er understøttet på ay og af input bus. Når du indstiller Aktiver inputkaskade for 'ay'-input til Ja, vil Cyclone 10 GX Native Fixed Point DSP IP-kerne tage input fra scanningsindgangssignaler i stedet for ay-indgangsbussen. Når du indstiller Enable input cascade for 'by' input til Ja, vil Cyclone 10 GX Native Fixed Point DSP IP-kerne tage input fra ay input bus i stedet for fra input bus.
Det anbefales at aktivere inputregistrene for ay og/eller hver gang inputkaskaden er aktiveret for korrektheden af applikationen.
Du kan aktivere forsinkelsesregistrene til at matche latenskravet mellem inputregisteret og outputregisteret. Der er 2 forsinkelsesregistre i kernen. Det øverste forsinkelsesregister bruges til ay- eller scan-in-inputporte, mens det nederste forsinkelsesregister bruges til scanout-outputporte. Disse forsinkelsesregistre understøttes i 18 × 18 fuld tilstand, 18 × 18 summer af 2 tilstande og 18 × 18 systoliske tilstande.
Foradder
Pre-adderen kan konfigureres i følgende konfigurationer:
- To uafhængige 18-bit (signerede/usignerede) pre-adders.
- En 26-bit pre-adder.
Når du aktiverer pre-adder i 18 × 18 multiplikationstilstande, bruges ay og az som input-bus til den øverste pre-adder, mens by og bz bruges som input-bus til den nederste pre-adder. Når du aktiverer pre-adder i 27 × 27 multiplikationstilstand, bruges ay og az som inputbussen til præadderen. Foradderen understøtter både additions- og subtraktionsoperationer. Når begge præaddere inden for den samme DSP-blok bruges, skal de dele den samme operationstype (enten addition eller subtraktion).
Intern koefficient
Den interne koefficient kan understøtte op til otte konstante koefficienter for multiplikanderne i 18-bit og 27-bit tilstande. Når du aktiverer den interne koefficientfunktion, genereres to inputbusser til at styre valget af koefficientmultiplekseren. Coefsela-inputbussen bruges til at vælge de foruddefinerede koefficienter for topmultiplikatoren, og rådgivningsinputbussen bruges til at vælge de foruddefinerede koefficienter for bundmultiplikatoren.
Det interne koefficientlager understøtter ikke dynamisk kontrollerbare koefficientværdier, og eksternt koefficientlager er påkrævet for at udføre en sådan operation.
Akkumulator og output kaskade
Akkumulatormodulet kan aktiveres til at udføre følgende operationer:
- Addition eller subtraktion operation
- Forspændt afrunding med en konstant værdi på 2N
- Dobbeltkanalakkumulering
For dynamisk at udføre additions- eller subtraktionsoperation af akkumulatoren, skal du kontrollere det negative inputsignal. For en forudindstillet afrundingsoperation kan du specificere og indlæse en forudindstillet konstant på 2N, før akkumulatormodulet aktiveres, ved at angive et heltal til parameteren N-værdien af den forudindstillede konstant. Heltallet N skal være mindre end 64. Du kan dynamisk aktivere eller deaktivere brugen af den forudindstillede konstant ved at styre loadconst-signalet. Du kan bruge denne operation som en aktiv muxing af den runde værdi til akkumulatorfeedback-stien. De indlæste omkostninger og det akkumulerede signalforbrug udelukker hinanden.
Du kan aktivere dobbeltakkumulatorregistret ved at bruge parameteren Aktiver dobbeltakkumulator for at udføre dobbeltakkumulering. Akkumulatormodulet kan understøtte kæden af flere DSP-blokke til additions- eller subtraktionsoperationer ved at aktivere kædeindgangsporten og kædeudgangsporten. I 18 × 18 systolisk tilstand vil kun 44-bit af kædeindgangsbussen og kædeudgangsbussen blive brugt. Imidlertid skal alle 64-bit kæder i inputbussen være forbundet til chain-out outputbussen fra den foregående DSP blok.
Rørledningsregister
Cyclone 10 GX Native Fixed Point DSP IP-kerne understøtter et enkelt niveau af pipelineregister. Rørledningsregistret understøtter op til tre klokkilder og et asynkront rydningssignal for at nulstille pipelineregistrene. Der er fem pipeline-registre:
- data input bus pipeline register
- sub dynamisk styresignal pipeline register
- negere dynamisk styresignal pipeline register
- akkumulere dynamisk styresignal pipeline register
- loadconst dynamisk kontrol pipeline register
Du kan vælge at aktivere hver datainput bus-pipeline-registre og de dynamiske styresignal-pipeline-registre uafhængigt. Alle aktiverede pipeline-registre skal dog bruge den samme klokkilde.
Urskema
Input-, pipeline- og outputregistrene i Cyclone 10 GX Native Fixed Point DSP IP-kerne understøtter tre clockkilder/aktiveringer og to asynkrone sletninger. Alle inputregistre bruger aclr[0], og alle pipeline- og outputregistre bruger aclr[1]. Hver registertype kan vælge en af de tre urkilder og clockaktiveringssignaler. Når du konfigurerer Cyclone 10 GX Native Fixed Point DSP IP-kerne til 18 × 18 systolisk driftstilstand, indstiller Intel Quartus Prime-softwaren det systoliske inputregister og det kædesystoliske registers klokkilde til den samme klokkilde som outputregisteret internt.
Når du aktiverer dobbeltakkumulatorfunktionen, indstiller Intel Quartus Prime-softwaren den dobbelte akkumulatorregister-urkilde til den samme klokkilde som outputregistret internt.
Urskemabegrænsninger
Denne fane viser de begrænsninger, du skal anvende for alle register-clocking-ordninger.
Tilstand | Begrænsning |
Når pre-adder er aktiveret | Urkilde for ay- og az-inputregistre skal være den samme. |
Urkilde for by- og bz-indgangsregistre skal være den samme. | |
Når pipeline-registre er aktiveret | Urkilden for alle pipelineregistre skal være den samme. |
Når nogen af indgangene registrerer for dynamiske styresignaler | Urkilde til inputregistre for sub, accumulate, loadconst og negate skal være den samme. |
Cyclone 10 GX Native Fixed Point DSP IP Core Signaler
Følgende figur viser input- og outputsignalerne fra Cyclone 10 GX Native Fixed Point DSP IP-kerne.
Cyclone 10 GX Native Fixed Point DSP IP Core Signaler
Datainputsignaler
Signal navn | Type | Bredde | Beskrivelse |
økse[] | Input | 27 | Input databus til topmultiplikator. |
ay[] | Input | 27 | Input databus til topmultiplikator.
Når pre-adder er aktiveret, serveres disse signaler som inputsignaler til top pre-adder. |
az[] | Input | 26 | Disse signaler er inputsignaler til den øverste præadder.
Disse signaler er kun tilgængelige, når pre-adder er aktiveret. Disse signaler er ikke tilgængelige i m18×18_plus36 driftstilstand. |
bx[] | Input | 18 | Input databus til bundmultiplikator.
Disse signaler er ikke tilgængelige i m27×27 driftstilstand. |
ved[] | Input | 19 | Input databus til bundmultiplikator.
Når pre-adder er aktiveret, fungerer disse signaler som inputsignaler til den nederste pre-adder. Disse signaler er ikke tilgængelige i m27×27 driftstilstand. |
bz[] | Input | 18 | Disse signaler er inputsignaler til den nederste præadder. Disse signaler er kun tilgængelige, når pre-adder er aktiveret. Disse signaler er ikke tilgængelige i m27×27 og m18×18_plus36 driftstilstande. |
Dataoutputsignaler
Signal navn | Type | Bredde | Beskrivelse |
resultat[] | Produktion | 64 | Output databus fra topmultiplikator.
Disse signaler understøtter op til 37 bit for m18×18_fuld driftstilstand. |
resultatb[] | Produktion | 37 | Output databus fra bundmultiplikator.
Disse signaler er kun tilgængelige i m18×18_fuld driftstilstand. |
Ur, Aktiver og Ryd signaler
Signal navn | Type | Bredde | Beskrivelse |
klk[] | Input | 3 | Input clock-signaler for alle registre.
Disse kloksignaler er kun tilgængelige, hvis nogen af inputregistrene, pipelineregistrene eller outputregistrene er indstillet til Ur 0, Ur 1, eller Ur 2. • clk[0] = Ur 0 • clk[1] = Ur 1 • clk[2] = Ur 2 |
ena[] | Input | 3 | Ur aktiveret for clk[2:0]. Dette signal er aktivt-Høj.
• ena[0] er for Ur 0 • ena[1] er for Ur 1 • ena[2] er for Ur 2 |
aclr[] | Input | 2 | Asynkrone klare indgangssignaler til alle registre. Dette signal er aktivt-Høj.
Bruge aclr[0] til alle inputregistre og brug aclr[1] for alle pipelineregistre og outputregister. Som standard er dette signal deaktiveret. |
Dynamiske styresignaler
Signal navn | Type | Bredde | Beskrivelse |
sub | Input | 1 | Indgangssignal for at lægge til eller trække output fra den øverste multiplikator med outputtet fra den nederste multiplikator.
• Fjern dette signal for at specificere additionsoperationen. • Anvend dette signal for at specificere subtraktionsoperation. Som standard er dette signal deaktiveret. Du kan hævde eller deaktivere dette signal under kørsel.(3) |
afvise | Input | 1 | Inputsignal for at tilføje eller trække summen af top- og bundmultiplikatorer med data fra kæde-in-signaler.
• Fjern dette signal for at specificere additionsoperationen. • Anvend dette signal for at specificere subtraktionsoperation. Som standard er dette signal deaktiveret. Du kan hævde eller deaktivere dette signal under kørsel.(3) |
ophobe | Input | 1 | Indgangssignal for at aktivere eller deaktivere akkumulatorfunktionen.
• Deaktiver dette signal for at deaktivere akkumulatorfunktionen. • Aktiver dette signal for at aktivere akkumulatorfunktionen. Som standard er dette signal deaktiveret. Du kan hævde eller deaktivere dette signal under kørsel.(3) |
belastningskonst | Input | 1 | Indgangssignal for at aktivere eller deaktivere belastningskonstant-funktionen.
• Deaktiver dette signal for at deaktivere belastningskonstant-funktionen. • Aktiver dette signal for at aktivere belastningskonstant-funktionen. Som standard er dette signal deaktiveret. Du kan hævde eller deaktivere dette signal under kørsel.(3) |
Interne koefficientsignaler
Signal navn | Type | Bredde | Beskrivelse |
coefsela[] | Input | 3 | Indgangsvalgssignaler for 8 koefficientværdier defineret af brugeren for den øverste multiplikator. Koefficientværdierne gemmes i den interne hukommelse og specificeres af parametre coef_a_0 til coef_a_7.
• coefsela[2:0] = 000 refererer til coef_a_0 • coefsela[2:0] = 001 refererer til coef_a_1 • coelsela[2:0] = 010 henviser til coef_a_2 • … og så videre. Disse signaler er kun tilgængelige, når den interne koefficientfunktion er aktiveret. |
coefselb[] | Input | 3 | Indgangsvalgssignaler for 8 koefficientværdier defineret af brugeren for bundmultiplikatoren. Koefficientværdierne gemmes i den interne hukommelse og specificeres af parametre coef_b_0 til coef_b_7.
• coefselb[2:0] = 000 refererer til coef_b_0 • coefselb[2:0] = 001 refererer til coef_b_1 • coelselb[2:0] = 010 refererer til coef_b_2 • … og så videre. Disse signaler er kun tilgængelige, når den interne koefficientfunktion er aktiveret. |
Input kaskadesignaler
Signal navn | Type | Bredde | Beskrivelse |
scanning[] | Input | 27 | Indgangsdatabus til inputkaskademodul.
Tilslut disse signaler til scanout-signalerne fra den foregående DSP-kerne. |
scanout[] | Udgang | 27 | Udgangsdatabus for inputkaskademodulet.
Forbind disse signaler til scanningssignalerne fra den næste DSP-kerne. |
Output kaskadesignaler
Signal navn | Type | Bredde | Beskrivelse |
kæde i[] | Input | 64 | Indgangsdatabus til udgangskaskademodul.
Forbind disse signaler til chainout-signalerne fra den foregående DSP-kerne. |
kæde ud[] | Produktion | 64 | Udgangsdatabus for outputkaskademodulet.
Forbind disse signaler til kædesignalerne i den næste DSP-kerne. |
Dokumentrevisionshistorik for Cyclone 10 GX Native Fixed Point DSP IP Core brugervejledning
Dato | Version | Ændringer |
november 2017 | 2017.11.06 | Første udgivelse. |
Intel Corporation. Alle rettigheder forbeholdes. Intel, Intel-logoet og andre Intel-mærker er varemærker tilhørende Intel Corporation eller dets datterselskaber. Intel garanterer ydeevnen af sine FPGA- og halvlederprodukter i henhold til de aktuelle specifikationer i overensstemmelse med Intels standardgaranti, men forbeholder sig retten til at foretage ændringer af produkter og tjenester til enhver tid uden varsel. Intel påtager sig intet ansvar eller erstatningsansvar, der opstår som følge af applikationen eller brugen af nogen information, produkt eller service, der er beskrevet heri, undtagen som udtrykkeligt skriftligt aftalt af Intel. Intel-kunder rådes til at indhente den seneste version af enhedsspecifikationerne, før de stoler på nogen offentliggjort information, og før de afgiver ordrer på produkter eller tjenester.
Andre navne og mærker kan hævdes som andres ejendom.
Dokumenter/ressourcer
![]() |
intel UG-20094 Cyclone 10 GX Native Fixed Point DSP IP Core [pdfBrugervejledning UG-20094 Cyclone 10 GX Native Fixed Point DSP IP Core, UG-20094, Cyclone 10 GX Native Fixed Point DSP IP Core, Native Fixed Point DSP IP Core, Fixed Point DSP IP Core, DSP IP Core |