intel-logo

intel UG-20094 Cyclone 10 GX Native Fixed Point DSP IP Core

intel-UG-20094-Cyclone-10-GX-Native-Fixed Point-DSP-IP-Core-PRODUCT

Intel® Cyclone® 10 GX Native Fixed Point DSP IP Core User Guide

De Intel Cyclone® 10 GX Native Fixed Point DSP IP-kearn instantiearret en kontrolearret in inkele Intel Cyclone 10 GX Variable Precision Digital Signal Processing (DSP) blok. De Cyclone 10 GX Native Fixed Point DSP IP-kearn is allinich beskikber foar Intel Cyclone 10 GX-apparaten.

Cyclone 10 GX Native Fêst punt DSP IP Core funksjoneel blokdiagramintel-UG-20094-Cyclone-10-GX-Native-Fixed Point-DSP-IP-Core-FIG- (1)

Related Information
Yntroduksje ta Intel FPGA IP Cores.

Cyclone 10 GX Native Fêst punt DSP IP Core Features

De Cyclone 10 GX Native Fixed Point DSP IP-kearn stipet de folgjende funksjes:

  • Hege prestaasjes, power-optimalisearre en folslein registrearre fermannichfâldigje operaasjes
  • 18-bit en 27-bit wurd lingtes
  • Twa 18 × 19 multipliers of ien 27 × 27 multiplier per DSP blok
  • Ynboude tafoeging, subtraksje en 64-bit dûbele akkumulaasjeregister om multiplikaasjeresultaten te kombinearjen
  • Cascading 19-bit of 27-bit as pre-adder is útskeakele en cascading 18-bit as pre-adder wurdt brûkt om de tap-fertragingsline te foarmjen foar filterapplikaasje
  • Cascading fan 64-bit útfierbus om útfierresultaten fan it iene blok nei it folgjende blok te propagearjen sûnder eksterne logika-stipe
  • Hurde pre-adder stipe yn 19-bit en 27-bit modi foar symmetryske filters
  • Ynterne koeffisientregisterbank yn sawol 18-bit as 27-bit modus foar filterimplementaasje
  • 18-bit en 27-bit systolic finite impulse response (FIR) filters mei ferspraat útfier adder

Getting Started

Dit haadstik jout in algemiene oerview fan 'e stream fan Intel FPGA IP-kearnûntwerp om jo te helpen fluch te begjinnen mei de Cyclone 10 GX Native Fixed Point DSP IP-kearn. De Intel FPGA IP-bibleteek wurdt ynstalleare as ûnderdiel fan it ynstallaasjeproses fan Intel Quartus® Prime. Jo kinne elke Intel FPGA IP-kearn selektearje en parameterisearje fan 'e bibleteek. Intel leveret in yntegreare parameterbewurker wêrmei jo de Intel FPGA DSP IP-kearn kinne oanpasse om in breed ferskaat oan applikaasjes te stypjen. De parameterbewurker liedt jo troch it ynstellen fan parameterwearden en de seleksje fan opsjonele havens.

Related Information

  • Yntroduksje ta Intel FPGA IP Cores
    Jout algemiene ynformaasje oer alle Intel FPGA IP-kearnen, ynklusyf parameterisearjen, generearjen, opwurdearjen en simulearjen fan IP-kearnen.
  • It meitsjen fan ferzje-ûnôfhinklike IP- en platfoarmûntwerper (Standert) Simulaasjeskripts
    Meitsje simulaasjeskripts dy't gjin hânmjittige fernijings nedich binne foar upgrades fan software of IP-ferzje.
  • Project Management Best Practices
    Rjochtlinen foar effisjint behear en portabiliteit fan jo projekt en IP files.
Cyclone 10 GX Native Fêst punt DSP IP Core Parameter ynstellings

Jo kinne de Cyclone 10 GX Native Fixed Point DSP IP-kearn oanpasse troch de parameters op te jaan mei de parameterbewurker yn 'e Intel Quartus Prime-software.

Operaasje Mode Tab

Parameter IP Generearre Parameter Wearde Beskriuwing
Kies asjebleaft de operaasjemodus operaasje_modus m18×18_full m18×18_sumof2 m18×18_plus36 m18×18_systolic m27×27 Selektearje de winske operasjonele modus.
Multiplier Konfiguraasje
Fertsjintwurdigingsformaat foar topmultiplikator x operand tekene_max ûndertekene net ûndertekene Spesifisearje de fertsjintwurdiging opmaak foar de top multiplier x operand.
Parameter IP Generearre Parameter Wearde Beskriuwing
Fertsjintwurdiging opmaak foar top multiplier y operand tekene_mei ûndertekene net ûndertekene Spesifisearje de represintaasje opmaak foar de top multiplier y operand.
Fertsjintwurdigingsformaat foar ûnderste multiplier x operand ûndertekene_mbx ûndertekene net ûndertekene Spesifisearje de represintaasje opmaak foar de ûnderste multiplier x operand.
Fertsjintwurdigingsformaat foar ûnderste multiplier y operand ûndertekene_mby ûndertekene net ûndertekene Spesifisearje de fertsjintwurdiging opmaak foar de ûnderste multiplier y operand.

Altyd selektearje net ûndertekene foar m18×18_plus36 .

Aktivearje 'sub' poarte enable_sub Nee Ja Selektearje Ja ynskeakelje

sub poarte.

Registrearje ynfier 'sub' fan 'e multiplier sub_klok Nee Klok0 Klok1 Klok2 Selektearje Klok 0, Klok 1,of Klok 2 om it ynfierkloksinjaal yn te skeakeljen en oan te jaan foar sub-ynputregister.
Ynfier Cascade
Ynputkaskade ynskeakelje foar 'ay' ynfier ay_use_scan_in Nee Ja Selektearje Ja om ynfierkaskademodule yn te skeakeljen foar ay gegevensynfier.

As jo ​​ynfierkaskademodule ynskeakelje, brûkt de Cyclone 10 GX Native Fixed Point DSP IP-kearn de scanin-ynputsinjalen as ynfier ynstee fan ay-ynputsinjalen.

Ynputkaskade ynskeakelje foar 'by' ynfier by_use_scan_in Nee Ja Selektearje Ja ynskeakelje input cascade module foar troch gegevens input.

As jo ​​​​ynputkaskademodule ynskeakelje, brûkt de Cyclone 10 GX Native Fixed Point DSP IP-kearn de ay-ynputsinjalen as ynfier ynstee fan troch ynfiersinjalen.

Aktivearje gegevens ay fertraging register delay_scan_out_ay Nee Ja Selektearje Ja om fertragingsregister yn te skeakeljen tusken ay en troch ynfierregisters.

Dizze funksje wurdt net stipe yn m18×18_plus36 en m27x27 operasjonele modus.

Parameter IP Generearre Parameter Wearde Beskriuwing
Ynskeakelje gegevens troch fertraging register delay_scan_out_by Nee Ja Selektearje Ja te aktivearjen fertraging register tusken troch ynfier registers en scanout útfier bus.

Dizze funksje wurdt net stipe yn m18×18_plus36 en m27x27 operasjonele modus.

Scanoutpoarte ynskeakelje gui_scanout_enable Nee Ja Selektearje Ja ynskeakelje

scanout útfier bus.

'scanout' útfier bus breedte scan_out_width 1-27 Spesifisearje de breedte fan

scanout útfier bus.

Data 'x' konfiguraasje
'ax' input bus breedte ax_width 1-27 Spesifisearje de breedte fan

ax input bus.(1)

Registrearje ynfier 'ax' fan de multiplier ax_klok Nee Klok0 Klok1 Klok2 Selektearje Klok 0, Klok 1,of Klok 2 om it ynfierkloksinjaal yn te skeakeljen en oan te jaan foar akse-ynputregister.

ax input register is net beskikber as jo ynstelle 'ax' operand boarne nei 'koef'.

'bx' ynfier bus breedte bx_width 1-18 Spesifisearje de breedte fan

bx input bus.(1)

Registrearje ynfier 'bx' fan 'e multiplier bx_klok Nee Klok0 Klok1 Klok2 Selektearje Klok 0, Klok 1,of Klok 2 om it ynfierkloksinjaal yn te skeakeljen en oan te jaan foar bx-ynputregister.

bx input register is net beskikber as jo ynstelle 'bx' operand boarne nei 'koef'.

Data 'y' konfiguraasje
'ay' of 'scanin' busbreedte ay_scan_in_width 1-27 Spesifisearje de breedte fan ay of scaninputbus.(1)
Registrearje ynfier 'ay' of ynfier 'scanin' fan 'e multiplier ay_scan_in_clock Nee Klok0 Klok1 Klok2 Selektearje Klok 0, Klok 1,of Klok 2 om it ynfierkloksinjaal yn te skeakeljen en oan te jaan foar ay of scanin ynfierregister.
'by' ynfier bus breedte by_width 1-19 Spesifisearje de breedte fan troch ynfierbus.(1)
Parameter IP Generearre Parameter Wearde Beskriuwing
Registrearje ynfier 'troch' fan 'e multiplier by_klok Nee Klok0 Klok1 Klok2 Selektearje Klok 0, Klok 1,of Klok 2 om it ynfierkloksinjaal yn te skeakeljen en oan te jaan foar troch of scanin

ynfier register.(1)

Utfier 'resultaat' Konfiguraasje
'resulta' útfier bus breedte result_a_width 1-64 Spesifisearje de breedte fan

resulta útfier bus.

'resultb' útfier bus breedte result_b_width 1-64 Spesifisearje de breedte fan resultb útfier bus. resultb allinich beskikber by it brûken fan operation_mode m18×18_fol.
Brûk output register útfier_klok Nee Klok0 Klok1 Klok2 Selektearje Klok 0, Klok 1,of Klok 2 om it ynfierkloksinjaal yn te skeakeljen en oan te jaan foar resulta- en resultb-útfierregisters.

Pre-adder Tab

Parameter IP Generearre Parameter Wearde Beskriuwing
'ay' operand boarne operand_source_may input preadder Spesifisearje de operandboarne foar ay-ynfier. Útkieze preadder te aktivearjen pre-adder module foar top multiplier. Ynstellings foar ay en troch operandboarne moatte itselde wêze.
'troch' operand boarne operand_source_mby input preadder Spesifisearje de operandboarne foar troch ynfier. Útkieze preadder te aktivearjen pre-adder module foar boaiem multiplier. Ynstellings foar ay en troch operandboarne moatte itselde wêze.
Set pre-adder in operaasje oan subtraksje preadder_subtract_a Nee Ja Selektearje Ja te spesifisearje subtraction operaasje foar pre-adder module foar de top multiplier. Pre-adder ynstellings foar boppe- en ûnderste multiplier moatte wêze itselde.
Set pre-adder b operaasje op subtraksje preadder_subtract_b Nee Ja Selektearje Ja te spesifisearje subtraction operaasje foar pre-adder module foar de boaiem multiplier. Pre-adder ynstellings foar boppe- en ûnderste multiplier moatte wêze itselde.
Data 'z' konfiguraasje
'az' ynfier bus breedte az_width 1-26 Spesifisearje de breedte fan az input bus.(1)
Registrearje ynfier 'az' fan de multiplier az_klok Nee Klok0 Klok1 Klok2 Selektearje Klok 0, Klok 1,of Klok 2 om it ynfierkloksinjaal foar az-ynputregisters yn te skeakeljen en oan te jaan. Klokynstellingen foar ay- en az-ynputregisters moatte itselde wêze.
'bz' ynfier bus breedte bz_width 1-18 Spesifisearje de breedte fan bz input bus.(1)
Registrearje ynfier 'bz' fan 'e multiplier bz_klok Nee Klok0 Klok1 Klok2 Selektearje Klok 0, Klok 1,of Klok 2 om it ynfierkloksinjaal foar bz-ynputregisters yn te skeakeljen en oan te jaan. Klokynstellingen foar by en bz ynfierregisters moatte itselde wêze.

Ynterne koëffisjint Tab

Parameter IP Generearre Parameter Wearde Beskriuwing
'ax' operand boarne operand_source_max ynfier coef Spesifisearje de operand boarne foar ax input bus. Útkieze coef om ynterne koeffisientmodule foar topmultiplikator yn te skeakeljen.

Selektearje Nee foar Registrearje ynfier 'ax' fan de multiplier parameter as jo de ynterne koeffisientfunksje ynskeakelje.

Parameter IP Generearre Parameter Wearde Beskriuwing
      Ynstellings foar ax en bx operand boarne moatte itselde wêze.
'bx' operand boarne operand_source_mbx ynfier coef Spesifisearje de operand boarne foar bx input bus. Útkieze coef om ynterne koeffisientmodule foar topmultiplikator yn te skeakeljen.

Selektearje Nee foar Registrearje ynfier 'bx' fan 'e multiplier parameter as jo de ynterne koeffisientfunksje ynskeakelje.

Ynstellings foar ax en bx operand boarne moatte itselde wêze.

'coefsel' Ynput Register Konfiguraasje
Registrearje input 'coefsela' fan de multiplier coef_sel_a_clock Nee Klok0 Klok1 Klok2 Selektearje Klok 0, Klok 1,of Klok 2 om it ynfierkloksinjaal foar de coefsela-ynputregisters yn te skeakeljen en oan te jaan.
Registrearje input 'coefselb' fan de multiplier coef_sel_b_clock Nee Klok0 Klok1 Klok2 Selektearje Klok 0, Klok 1,of Klok 2 om it ynfierkloksinjaal foar de coefselb-ynputregisters yn te skeakeljen en oan te jaan.
Koëffisjint Storage Konfiguraasje
coef_a_0–7 coef_a_0–7 Integer Spesifisearje de koeffisient wearden foar ax input bus.

Foar 18-bit operaasjemodus is de maksimale ynfierwearde 218 - 1. Foar 27-bit operaasje is de maksimale wearde 227 - 1.

coef_b_0–7 coef_b_0–7 Integer Spesifisearje de koeffisientwearden foar bx input bus.

Akkumulator / Utfier Cascade Tab

Parameter IP Generearre Parameter Wearde Beskriuwing
Aktivearje 'accumulearje' poarte enable_accumulate Nee Ja Selektearje Ja ynskeakelje

accumulator haven.

Aktivearje 'negate' poarte enable_negate Nee Ja Selektearje Ja ynskeakelje

negearje haven.

Ynskeakelje 'loadconst' poarte enable_loadconst Nee Ja Selektearje Ja ynskeakelje

loadconst haven.

Registrearje ynfier 'akkumulearje' fan 'e accumulator accumulearje_klok Nee Klok0 Klok1 Klok2 Selektearje Klok 0 , Klok 1,of Klok 2 om it ynfierkloksinjaal yn te skeakeljen en oan te jaan foar de accumulearjende ynfierregisters.
Parameter IP Generearre Parameter Wearde Beskriuwing
Registrearje ynfier 'loadconst' fan 'e accumulator load_const_clock Nee Klok0 Klok1 Klok2 Selektearje Klok 0, Klok 1,of Klok 2 om it ynfierkloksinjaal yn te skeakeljen en oan te jaan foar de ynfierregisters fan loadconst.
Registrearje ynfier 'negate' fan 'e adder-ienheid negate_clock Nee Klok0 Klok1 Klok2 Selektearje Klok 0, Klok 1,of Klok 2 om it ynfierkloksinjaal yn te skeakeljen en oan te jaan foar de negate-ynputregisters.
Aktivearje dûbele accumulator enable_double_accum Nee Ja Selektearje Ja om dûbele accumulatorfunksje yn te skeakeljen.
N wearde fan ynsteld konstante load_const_value 0 – 63 Spesifisearje de ynstelde konstante wearde.

Dizze wearde kin 2 wêzeN wêr N is de ynstelde konstante wearde.

Ynskeakelje chainin haven use_chainadder Nee Ja Selektearje Ja om útfierkaskademodule en de kettingynputbus yn te skeakeljen.

Utfierkaskadefunksje wurdt net stipe yn m18×18_fol operaasje modus.

Ynskeakelje chainout haven gui_chainout_enable Nee Ja Selektearje Ja om de chainout-útfierbus yn te skeakeljen. Utfierkaskadefunksje wurdt net stipe yn

m18×18_fol operaasje modus.

Pipelining Tab

Parameter IP Generearre Parameter Wearde Beskriuwing
Foegje ynfierpipelineregister ta oan it ynfiergegevenssinjaal (x/y/z/coefsel) input_pipeline_clock Nee Klok0 Klok1 Klok2 Selektearje Klok 0, Klok 1,of Klok 2 om it ynfierkloksinjaal yn te skeakeljen en oan te jaan foar x, y, z, coefsela en coefselb pipeline input registers.
Foegje ynfierpipelineregister ta oan it 'sub' gegevenssinjaal sub_pipeline_klok Nee Klok0 Klok1 Klok2 Selektearje Klok 0, Klok 1,of Klok 2 om it ynfierkloksinjaal foar it subpipeline-ynputregister yn te skeakeljen en oan te jaan. (2)
Foegje ynfierpipelineregister ta oan it gegevenssinjaal 'accumulearje' accum_pipeline_clock Nee Klok0 Klok1 Klok2 Selektearje Klok 0, Klok 1,of Klok 2 om it ynfierkloksinjaal yn te skeakeljen en te spesifisearjen foar it akkumulearre pipeline-ynputregister.(2)
Foegje ynfierpipelineregister ta oan it gegevenssinjaal 'loadconst' load_const_pipeline_clock Nee Klok0 Klok1 Klok2 Selektearje Klok 0, Klok 1,of Klok 2 om it ynfierkloksinjaal yn te skeakeljen en te spesifisearjen foar it ynfierregister fan 'e loadconst pipeline.(2)
Foegje ynfierpipelineregister ta oan it 'negate' gegevenssinjaal negate_pipeline_clock Nee Klok0 Klok1 Klok2 Selektearje Klok 0, Klok 1,of Klok 2 om it ynfierkloksinjaal yn te skeakeljen en op te jaan foar it ynputregister fan negate pipeline.(2)

Maksimum Input Data Breedte Per Operation Mode
Jo kinne de gegevensbreedte oanpasse foar x-, y- en z-ynputs lykas oantsjutte yn 'e tabel.

Alle pipeline ynfier registers foar dynamyske kontrôle sinjalen moatte hawwe deselde klok ynstelling.

Operaasje Mode Maksimum Input Data Breedte
ax ay az bx by bz
Sûnder Pre-adder of ynterne koëffisjint
m18×18_fol 18 (ûndertekene)

18

(net ûndertekene)

19 (ûndertekene)

18 (net ûndertekene)

Net brûkt 18 (ûndertekene)

18

(net ûndertekene)

19 (ûndertekene)

18

(net ûndertekene)

Net brûkt
m18×18_sumof2
m18×18_systolik
m18×18_plus36
m27×27 27 (ûndertekene)

27 (net ûndertekene)

Net brûkt
Allinich mei Pre-adder-funksje
m18×18_fol 18 (ûndertekene)

18 (net ûndertekene)

m18×18_sumof2
m18×18_systolik
m27×27 27 (ûndertekene)

27

(net ûndertekene)

26 (ûndertekene)

26 (net ûndertekene)

Net brûkt
Allinich mei ynterne koëffisjintfunksje
m18×18_fol Net brûkt 19 (ûndertekene)

18 (net ûndertekene)

Net brûkt 19 (ûndertekene)

18

(net ûndertekene)

Net brûkt
m18×18_sumof2
m18×18_systolik
m27×27 27 (ûndertekene)

27 (net ûndertekene)

Net brûkt

Funksjonele beskriuwing

De Cyclone 10 GX Native Fixed Point DSP IP-kearn bestiet út 2-arsjitektuer; 18 × 18 multiplikaasje en 27 × 27 multiplikaasje. Elke ynstânsje fan 'e Cyclone 10 GX Native Fixed Point DSP IP-kearn genereart allinich 1 fan' e 2-arsjitektueren ôfhinklik fan 'e selekteare operasjonele modi. Jo kinne opsjonele modules ynskeakelje foar jo applikaasje.

Related Information
Fariabele Precision DSP-blokken yn Intel Cyclone 10 GX-apparaten haadstik, Intel Cyclone 10 GX Core Fabric en Algemien Doel I / Os Hânboek.

Operasjonele Modes

De Cyclone 10 GX Native Fixed Point DSP IP-kearn stipet 5 operasjonele modi:

  • De 18 × 18 Folsleine modus
  • De 18 × 18 Som fan 2 Mode
  • De 18 × 18 Plus 36 Mode
  • De 18 × 18 systolyske modus
  • De 27 × 27 modus

De 18 × 18 Folsleine modus
As ynsteld as 18 × 18 folsleine modus, wurket de Cyclone 10 GX Native Fixed Point DSP IP-kearn as twa ûnôfhinklike 18 (ûndertekene / net ûndertekene) × 19 (ûndertekene) of 18
(ûndertekene / net ûndertekene) × 18 (net ûndertekene) multipliers mei 37-bit útfier. Dizze modus jildt de folgjende fergelikingen:

  • resulta = ax * ay
  • resultb = bx * by

De 18 × 18 Full Mode Architecture

intel-UG-20094-Cyclone-10-GX-Native-Fixed Point-DSP-IP-Core-FIG- (2)

De 18 × 18 Som fan 2 Mode
Yn 18 × 18 Som fan 2-modi makket de Cyclone 10 GX Native Fixed Point DSP IP-kearn de boppe- en ûnderste multipliers yn en genereart in resultaat fan tafoeging of subtraksje tusken de 2 multipliers. It subdynamyske kontrôlesinjaal kontrolearret in opteller om de tafoeging- of subtraksje-operaasjes út te fieren. De resulta-útfierbreedte fan 'e Cyclone 10 GX Native Fixed Point DSP IP-kearn kin maksimaal 64 bits stypje as jo accumulator / útfierkaskade ynskeakelje. Dizze modus jildt de fergeliking fan resulta =[±(ax * ay) + (bx * by)].

De 18 × 18 Sum of 2 Mode Architecture

intel-UG-20094-Cyclone-10-GX-Native-Fixed Point-DSP-IP-Core-FIG- (3)

De 18 × 18 Plus 36 Mode
As konfigureare as 18 × 18 Plus 36-modus, makket de Cyclone 10 GX Native Fixed Point DSP IP-kearn allinich de topmultiplikator mooglik. Dizze modus jildt de fergeliking fan resulta = (ax * ay) + concatenate(bx[17:0],by[17:0]).

De 18 × 18 Plus 36 Mode Architecture

intel-UG-20094-Cyclone-10-GX-Native-Fixed Point-DSP-IP-Core-FIG- (4)

Jo moatte it Representation-formaat foar ûnderste multipliers y operand ynstelle op net ûndertekene by it brûken fan dizze modus. As de ynfierbus minder is as 36-bit yn dizze modus, binne jo ferplichte om de nedige ûndertekene útwreiding te leverjen om de 36-bit-ynput te foljen.

Minder dan 36-bit operand brûke yn 18 × 18 Plus 36-modus
Dizze eksample lit sjen hoe't jo de Cyclone 10 GX Native Fixed Point DSP IP-kearn konfigurearje om 18 × 18 Plus 36 operasjonele modus te brûken mei in tekene 12-bit ynfiergegevens fan 101010101010 (binêr) ynstee fan in 36-bit operand.

  1. Set Representation format foar ûnderste multiplier x operand: oan ûndertekene.
  2. Set Representation format foar ûnderste multiplier y operand: nei unsigned.
  3. Stel 'bx' ynfierbusbreedte yn op 18.
  4. Stel 'by' ynfierbusbreedte yn op 18.
  5. Jou gegevens fan '111111111111111111' oan bx input bus.
  6. Jou gegevens fan '111111101010101010' oan troch ynfierbus.

De 18 × 18 systolyske modus
Yn 18 × 18 systolike operative modi makket de Cyclone 10 GX Native Fixed Point DSP IP-kearn de boppe- en ûnderste multipliers, in ynfier systolik register foar de boppeste multiplier, en in keten systolik register foar de ketting yn ynfiersignalen. As jo ​​útfierkaskade ynskeakelje, stipet dizze modus resultaat in útfierbreedte fan 44 bits. As jo ​​de akkumulatorfunksje ynskeakelje sûnder útfierkaskade, kinne jo de resulta-útfierbreedte konfigurearje nei 64 bits.

De 18 × 18 Systolic Mode Architecture

intel-UG-20094-Cyclone-10-GX-Native-Fixed Point-DSP-IP-Core-FIG- (4)

De 27 × 27 modus
As konfigureare as 27 × 27-modi, makket de Cyclone 10 GX Native Fixed Point DSP IP-kearn in 27 (ûndertekene / net ûndertekene) × 27 (ûndertekene / net ûndertekene) multiplier. De útfierbus kin oant 64 bits stypje mei accumulator / útfierkaskade ynskeakele. Dizze modus jildt de fergeliking fan resulta = ax * ay.

De arsjitektuer fan 27 × 27 modus

intel-UG-20094-Cyclone-10-GX-Native-Fixed Point-DSP-IP-Core-FIG- (6)

Optionale modules

De opsjonele modules te krijen yn 'e Cyclone 10 GX Native Fixed Point DSP IP Core binne:

  • Ynput kaskade
  • Pre-adders
  • Ynterne koëffisjint
  • Akkumulator en útfier kaskade
  • Pipeline registers

Ynfier Cascade
Ynputkaskadefunksje wurdt stipe op ay en troch ynfierbus. As jo ​​ynfierkaskade ynskeakelje foar 'ay' ynfier op Ja ynstelle, sil de Cyclone 10 GX Native Fixed Point DSP IP-kearn ynputen nimme fan scan-ynputsinjalen ynstee fan ay-ynputbus. As jo ​​ynfierkaskade ynskeakelje foar 'troch' ynfier op Ja ynstelle, sil de Cyclone 10 GX Native Fixed Point DSP IP-kearn ynputen nimme fan ay-ynputbus ynstee fan troch ynfierbus.

It is oan te rieden om de ynfierregisters yn te skeakeljen foar ay en / of troch wannear't ynfierkaskade ynskeakele is foar de korrektheid fan 'e applikaasje.

Jo kinne de fertragingsregisters ynskeakelje om oerien te kommen mei de latency-eask tusken it ynfierregister en it útfierregister. D'r binne 2 fertragingsregisters yn 'e kearn. It boppeste fertragingsregister wurdt brûkt foar ay- of scan-yn-ynputpoarten, wylst it ûnderste fertragingsregister wurdt brûkt foar scanoutútfierpoarten. Dizze fertragingsregisters wurde stipe yn 18 × 18 folsleine modus, 18 × 18 sommen fan 2 modi, en 18 × 18 systolyske modi.

Pre-adder

De pre-adder kin wurde konfigureare yn de folgjende konfiguraasjes:

  • Twa ûnôfhinklike 18-bit (ûndertekene / net ûndertekene) pre-adders.
  • Ien 26-bit pre-adder.

As jo ​​pre-adder ynskeakelje yn 18 × 18 multiplikaasjemodi, wurde ay en az brûkt as de ynfierbus nei de boppeste pre-adder, wylst by en bz wurde brûkt as de ynfierbus nei de ûnderste pre-adder. As jo ​​pre-adder ynskeakelje yn 27 × 27 multiplikaasjemodus, wurde ay en az brûkt as de ynfierbus nei de pre-adder. De pre-adder stipet sawol optellen as subtraksje operaasjes. As beide pre-adders binnen itselde DSP-blok wurde brûkt, moatte se itselde operaasjetype diele (sawol tafoeging as subtraksje).

Ynterne koëffisjint
De ynterne koeffizient kin maksimaal acht konstante koeffizienten stypje foar de multiplikanen yn 18-bit en 27-bit modus. As jo ​​de ynterne koëffisjintfunksje ynskeakelje, wurde twa ynfierbussen om de seleksje fan 'e koëffisjintmultiplexer te kontrolearjen oanmakke. De coefsela-ynputbus wurdt brûkt om de foarôf definieare koeffizienten foar de boppeste multiplier te selektearjen en de riedsinputbus wurdt brûkt om de foarôf definieare koeffizienten foar de ûnderste multiplier te selektearjen.

De ynterne koeffisientopslach stipet gjin dynamysk kontrolearbere koeffizientwearden en eksterne koeffisientopslach is nedich om sa'n operaasje út te fieren.

Akkumulator en Output Cascade

De accumulatormodule kin ynskeakele wurde om de folgjende operaasjes út te fieren:

  • Opheffen of subtraksje operaasje
  • Biased rounding operaasje mei help fan in konstante wearde fan 2N
  • Dual kanaal accumulation

Om dynamysk út te fieren tafoeging of subtraksje operaasje fan 'e accumulator, kontrolearje de negate ynfier sinjaal. Foar in biased rounding operaasje, kinne jo oantsjutte en lade in foarôf ynstelde konstante fan 2N foar de accumulator module wurdt ynskeakele troch it opjaan fan in hiel getal oan de parameter N wearde fan de ynstelde konstante. It heule getal N moat minder wêze as 64. Jo kinne it gebrûk fan 'e foarynstelde konstante dynamysk yn- of útskeakelje troch it loadconst-sinjaal te kontrolearjen. Jo kinne dizze operaasje brûke as in aktive muxing fan 'e rûne wearde yn it accumulatorfeedbackpaad. De laden kosten en it opboude sinjaalgebrûk binne inoar eksklusyf.

Jo kinne it dûbele accumulatorregister ynskeakelje mei de parameter Dûbele accumulator ynskeakelje om dûbele accumulator út te fieren. De akkumulatormodule kin it keatling fan meardere DSP-blokken stypje foar tafoegings- of subtraksje-operaasjes troch it ynskeakeljen fan de ketting-ynputpoarte en chain-out-útfierpoarte. Yn 18 × 18 systolyske modus sil allinich 44-bit fan 'e ketting-ynputbus en kettingútútfierbus brûkt wurde. Lykwols, alle 64-bit keatlingen yn de ynfier bus moatte wurde ferbûn mei de ketting-out útfier bus út de foargeande DSP blok.

Pipeline Register

De Cyclone 10 GX Native Fixed Point DSP IP-kearn stipet ien nivo fan pipelineregister. It pipelineregister stipet maksimaal trije klokboarnen en ien asynchrone dúdlik sinjaal om de pipelineregisters werom te setten. D'r binne fiif pipelineregisters:

  • data input bus pipeline register
  • sub dynamyske kontrôle sinjaal pipeline register
  • negate dynamyske kontrôle sinjaal pipeline register
  • accumulearje dynamyske kontrôle sinjaal pipeline register
  • loadconst dynamyske kontrôle pipeline register

Jo kinne kieze te skeakeljen eltse gegevens ynfier bus pipeline registers en de dynamyske kontrôle sinjaal pipeline registers ûnôfhinklik. Alle ynskeakele pipelineregisters moatte lykwols deselde klokboarne brûke.

Clocking Scheme

De ynfier-, pipeline- en útfierregisters yn 'e Cyclone 10 GX Native Fixed Point DSP IP-kearn stipet trije klokboarnen / ynskeakelje en twa asynchrone wissingen. Alle ynfierregisters brûke aclr[0] en alle pipeline- en útfierregisters brûke aclr[1]. Elts register type kin selektearje ien fan de trije klok boarnen en klok ynskeakelje sinjalen. As jo ​​​​de Cyclone 10 GX Native Fixed Point DSP IP-kearn konfigurearje nei 18 × 18 systolyske operaasjemodus, sil de Intel Quartus Prime-software it ynfier systolysk register en de keatling systolyske registerklokboarne ynstelle op deselde klokboarne as it útfierregister yntern.

As jo ​​​​de dûbele accumulatorfunksje ynskeakelje, sil de Intel Quartus Prime-software de klokboarne fan 'e dûbele accumulatorregister ynstelle op deselde klokboarne as it útfierregister yntern.

Clocking Scheme beheinings
Dit ljepblêd toant de beheiningen dy't jo moatte oanfreegje foar alle registerklokskema's.

Betingst Beheining
As pre-adder is ynskeakele Klokboarne foar ay- en az-ynputregisters moatte itselde wêze.
  Klokboarne foar by en bz ynfierregisters moatte itselde wêze.
As pipeline registers binne ynskeakele Klokboarne foar alle pipelineregisters moat itselde wêze.
Wannear't ien fan de ynfier registers foar dynamyske kontrôle sinjalen Klokboarne foar ynfierregisters foar sub, accumulearje, loadconst en negate moat itselde wêze.
Cyclone 10 GX Native Fêst punt DSP IP Core sinjalen

De folgjende figuer toant de ynfier- en útfiersinjalen fan 'e Cyclone 10 GX Native Fixed Point DSP IP-kearn.

Cyclone 10 GX Native Fêst punt DSP IP Core sinjalen

intel-UG-20094-Cyclone-10-GX-Native-Fixed Point-DSP-IP-Core-FIG- (7)

Data Input sinjalen
Sinjaal Namme Type Breedte Beskriuwing
bile[] Ynfier 27 Input data bus nei top multiplier.
ja[] Ynfier 27 Input data bus nei top multiplier.

As pre-adder ynskeakele is, wurde dizze sinjalen tsjinne as ynfiersinjalen nei de boppeste pre-adder.

az[] Ynfier 26 Dizze sinjalen binne ynfiersinjalen nei de boppeste pre-adder.

Dizze sinjalen binne allinich beskikber as pre-adder ynskeakele is. Dizze sinjalen binne net beskikber yn m18×18_plus36

operasjonele modus.

bx[] Ynfier 18 Input data bus nei boaiem multiplier.

Dizze sinjalen binne net beskikber yn m27×27 operasjonele modus.

troch[] Ynfier 19 Input data bus nei boaiem multiplier.

As pre-adder ynskeakele is, tsjinje dizze sinjalen as ynfiersinjalen nei de ûnderste pre-adder.

Dizze sinjalen binne net beskikber yn m27×27 operasjonele modus.

bz[] Ynfier 18 Dizze sinjalen binne ynfiersignalen nei de ûnderste pre-adder. Dizze sinjalen binne allinich beskikber as pre-adder ynskeakele is. Dizze sinjalen binne net beskikber yn m27×27 en m18×18_plus36 operasjonele modes.
Data útfier sinjalen
Sinjaal Namme Type Breedte Beslút
resultaat[] Utfier 64 Utfier data bus út top multiplier.

Dizze sinjalen stypje oant 37 bits foar m18×18_fol operasjonele modus.

resultaatb[] Utfier 37 Utfier data bus út boaiem multiplier.

Dizze sinjalen allinne beskikber yn m18×18_fol operasjonele modus.

Klok, ynskeakelje en sinjalen wiskje

Sinjaal Namme Type Breedte Beskriuwing
klk[] Ynfier 3 Input klok sinjalen foar alle registers.

Dizze kloksinjalen binne allinich beskikber as ien fan 'e ynfierregisters, pipelineregisters of útfierregister is ynsteld op Klok 0, Klok 1,of Klok 2.

• clk[0] = Klok 0

• clk[1] = Klok 1

• clk[2] = Klok 2

ena[] Ynfier 3 Klok ynskeakelje foar clk[2:0]. Dit sinjaal is aktyf-High.

• ena[0] is foar Klok 0

• ena[1] is foar Klok 1

• ena[2] is foar Klok 2

aclr[] Ynfier 2 Asynchronous dúdlike ynfier sinjalen foar alle registers. Dit sinjaal is aktyf-High.

Gebrûk aclr[0] foar alle ynfier registers en gebrûk aclr[1] foar alle pipeline registers en útfier register.

Standert wurdt dit sinjaal de-asserted.

Dynamic Control Signals

Sinjaal Namme Type Breedte Beskriuwing
sub Ynfier 1 Ynfiersinjaal om de útfier fan 'e boppeste multiplier ta te foegjen of te subtrahearjen mei de útfier fan' e ûnderste multiplier.

• Deassert dit sinjaal te spesifisearjen addition operaasje.

• Assert dit sinjaal te spesifisearjen subtraction operaasje.

Standert is dit sinjaal deasserted. Jo kinne dit sinjaal beweare of deasserje tidens run-time.(3)

negearje Ynfier 1 Ynfiersinjaal om de som fan boppe- en ûnderste multipliers ta te foegjen of ôf te trekken mei de gegevens fan kettingsinjalen.

• Deassert dit sinjaal te spesifisearjen addition operaasje.

• Assert dit sinjaal te spesifisearjen subtraction operaasje.

Standert is dit sinjaal deasserted. Jo kinne dit sinjaal beweare of deasserje tidens run-time.(3)

accumulearje Ynfier 1 Ynfiersinjaal om de accumulatorfunksje yn te skeakeljen of út te skeakeljen.

• Deassert dit sinjaal te skeakeljen de accumulator funksje.

• Assert dit sinjaal te skeakeljen de accumulator funksje.

Standert is dit sinjaal deasserted. Jo kinne dit sinjaal beweare of deasserje tidens run-time.(3)

loadconst Ynfier 1 Ynfiersinjaal om de funksje foar konstante lading yn te skeakeljen of út te skeakeljen.

• Deassert dit sinjaal te skeakeljen de lading konstante funksje.

• Assert dit sinjaal te skeakeljen de lading konstante funksje.

Standert is dit sinjaal deasserted. Jo kinne dit sinjaal beweare of deasserje tidens run-time.(3)

Ynterne koëffisjint sinjalen

Sinjaal Namme Type Breedte Beskriuwing
coefsela[] Ynfier 3 Input seleksje sinjalen foar 8 koeffisient wearden definiearre troch brûker foar de top multiplier. De koeffizientwearden wurde opslein yn it ynterne ûnthâld en oantsjutte troch parameters coef_a_0 nei coef_a_7.

• coefsela[2:0] = 000 ferwiist nei coef_a_0

• coefsela[2:0] = 001 ferwiist nei coef_a_1

• coelsela[2:0] = 010 ferwiist nei coef_a_2

• … ensafuorthinne.

Dizze sinjalen binne allinich beskikber as de ynterne koëffisjintfunksje ynskeakele is.

koefselb[] Ynfier 3 Input seleksje sinjalen foar 8 koeffisient wearden definiearre troch brûker foar de ûnderste multiplier. De koeffizientwearden wurde opslein yn it ynterne ûnthâld en oantsjutte troch parameters coef_b_0 nei coef_b_7.

• coefselb[2:0] = 000 ferwiist nei coef_b_0

• coefselb[2:0] = 001 ferwiist nei coef_b_1

• coelselb[2:0] = 010 ferwiist nei coef_b_2

• … ensafuorthinne.

Dizze sinjalen binne allinich beskikber as de ynterne koëffisjintfunksje ynskeakele is.

Input Cascade sinjalen

Sinjaal Namme Type Breedte Beskriuwing
skennen[] Ynfier 27 Input data bus foar input cascade module.

Ferbine dizze sinjalen mei de scanout sinjalen út de foargeande DSP kearn.

scanout[] Output 27 Utfier data bus fan de ynfier cascade module.

Ferbine dizze sinjalen mei de scansinjalen fan 'e folgjende DSP-kearn.

Utfier Cascade sinjalen

Sinjaal Namme Type Breedte Beskriuwing
ketting[] Ynfier 64 Input gegevens bus foar útfier cascade module.

Ferbine dizze sinjalen mei de chainout sinjalen út de foargeande DSP kearn.

keatling[] Utfier 64 Utfier data bus fan de útfier cascade module.

Ferbine dizze sinjalen mei de kettingsinjalen fan 'e folgjende DSP-kearn.

Dokumintferzjeskiednis foar de Cyclone 10 GX Native Fixed Point DSP IP Core User Guide

Datum Ferzje Feroarings
novimber 2017 2017.11.06 Inisjele release.

Intel Corporation. Alle rjochten foarbehâlden. Intel, it Intel-logo en oare Intel-merken binne hannelsmerken fan Intel Corporation of har dochterûndernimmingen. Intel garandearret de prestaasjes fan har FPGA- en semiconductorprodukten oan hjoeddeistige spesifikaasjes yn oerienstimming mei Intel's standert garânsje, mar behâldt it rjocht foar om op elk momint feroarings oan te bringen oan produkten en tsjinsten sûnder notice. Intel nimt gjin ferantwurdlikens of oanspraaklikens oan dy't fuortkomme út 'e applikaasje of gebrûk fan ynformaasje, produkt of tsjinst beskreaun hjiryn, útsein as útdruklik skriftlik ôfpraat troch Intel. Intel-klanten wurde advisearre om de lêste ferzje fan apparaatspesifikaasjes te krijen foardat se fertrouwe op alle publisearre ynformaasje en foardat se oarders pleatse foar produkten of tsjinsten.

Oare nammen en merken kinne wurde opeaske as eigendom fan oaren.

Dokuminten / Resources

intel UG-20094 Cyclone 10 GX Native Fixed Point DSP IP Core [pdf] Brûkersgids
UG-20094 Cyclone 10 GX Native Fêst punt DSP IP Core, UG-20094, Cyclone 10 GX Native Fêst punt DSP IP Core, Native Fêst punt DSP IP Core, Fêst punt DSP IP Core, DSP IP Core

Referinsjes

Lit in reaksje efter

Jo e-mailadres sil net publisearre wurde. Ferplichte fjilden binne markearre *