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

Ghidul utilizatorului Intel® Cyclone® 10 GX Native Fixed Point DSP IP Core

Nucleul IP Intel Cyclone® 10 GX Native Fixed Point DSP instanțează și controlează un singur bloc Intel Cyclone 10 GX Variable Precision Digital Signal Processing (DSP). Nucleul IP Cyclone 10 GX Native Fixed Point DSP este disponibil numai pentru dispozitivele Intel Cyclone 10 GX.

Diagrama bloc funcțională Cyclone 10 GX Native Fixed Point DSP IP Coreintel-UG-20094-Cyclone-10-GX-Native-Fixed-Point-DSP-IP-Core-FIG- (1)

Informații conexe
Introducere în Intel FPGA IP Cores.

Cyclone 10 GX Native Fixed Point DSP IP Caracteristici de bază

Nucleul IP DSP Cyclone 10 GX Native Fixed Point acceptă următoarele caracteristici:

  • Operații de înmulțire de înaltă performanță, optimizate în funcție de putere și înregistrate complet
  • Lungimea cuvintelor de 18 și 27 de biți
  • Doi multiplicatori 18 × 19 sau un multiplicator 27 × 27 per bloc DSP
  • Registrul de adunare, scădere și acumulare dublă de 64 de biți încorporat pentru a combina rezultatele înmulțirii
  • În cascadă de 19 biți sau 27 de biți când pre-adunatorul este dezactivat și în cascadă de 18 biți când pre-adunatorul este utilizat pentru a forma linia de întârziere a apei pentru aplicația de filtrare
  • Busă de ieșire în cascadă pe 64 de biți pentru a propaga rezultatele de la un bloc la următorul bloc fără suport logic extern
  • Pre-adăugător dur acceptat în modurile de 19 și 27 de biți pentru filtre simetrice
  • Banca de registre de coeficienți intern în ambele moduri de 18 biți și 27 de biți pentru implementarea filtrului
  • Filtre de răspuns la impulsuri finite (FIR) sistolice de 18 și 27 de biți cu adaos de ieșire distribuită

Noțiuni de bază

Acest capitol oferă o prezentare generalăview a fluxului de proiectare a nucleului Intel FPGA IP pentru a vă ajuta să începeți rapid cu nucleul IP Cyclone 10 GX Native Fixed Point DSP. Biblioteca Intel FPGA IP este instalată ca parte a procesului de instalare Intel Quartus® Prime. Puteți selecta și parametriza orice nucleu Intel FPGA IP din bibliotecă. Intel oferă un editor de parametri integrat care vă permite să personalizați nucleul Intel FPGA DSP IP pentru a suporta o mare varietate de aplicații. Editorul de parametri vă ghidează prin setarea valorilor parametrilor și prin selectarea porturilor opționale.

Informații conexe

  • Introducere în Intel FPGA IP Cores
    Oferă informații generale despre toate nucleele IP Intel FPGA, inclusiv parametrizarea, generarea, actualizarea și simularea nucleelor ​​IP.
  • Crearea de scripturi de simulare IP independente de versiune și Platform Designer (Standard).
    Creați scripturi de simulare care nu necesită actualizări manuale pentru actualizări de software sau de versiune IP.
  • Cele mai bune practici de management de proiect
    Orientări pentru gestionarea eficientă și portabilitatea proiectului și IP-ul dvs files.
Cyclone 10 GX Native Fixed Point DSP IP Core Parameter Settings

Puteți personaliza nucleul IP Cyclone 10 GX Native Fixed Point DSP prin specificarea parametrilor utilizând editorul de parametri din software-ul Intel Quartus Prime.

Tab. Mod de operare

Parametru Parametru generat de IP Valoare Descriere
Vă rugăm să alegeți modul de funcționare operation_mode m18×18_full m18×18_sumof2 m18×18_plus36 m18×18_systolic m27×27 Selectați modul de funcționare dorit.
Configurația multiplicatorului
Format de reprezentare pentru operandul multiplicator x superior signed_max semnat nesemnat Specificați formatul de reprezentare pentru operandul multiplicator x superior.
Parametru Parametru generat de IP Valoare Descriere
Format de reprezentare pentru operandul multiplicator superior y semnat_mai semnat nesemnat Specificați formatul de reprezentare pentru operandul multiplicator superior y.
Format de reprezentare pentru operand multiplicatorul x inferior signed_mbx semnat nesemnat Specificați formatul de reprezentare pentru operandul multiplicator x inferior.
Format de reprezentare pentru operand multiplicatorul inferior y signed_mby semnat nesemnat Specificați formatul de reprezentare pentru operandul multiplicator inferior y.

Selectați întotdeauna nesemnat pentru m18×18_plus36 .

Activați portul „sub”. enable_sub Nu Da Selecta Da pentru a activa

subport.

Înregistrați intrarea „sub” a multiplicatorului sub_ceas Nu Ceas0 Ceas1 Ceas2 Selecta Ceas0, Ceas1, sau Ceas2 pentru a activa și specifica semnalul de ceas de intrare pentru registrul de intrare secundar.
Cascada de intrare
Activați cascada de intrare pentru intrarea „ay”. ay_use_scan_in Nu Da Selecta Da pentru a activa modulul în cascadă de intrare pentru orice intrare de date.

Când activați modulul în cascadă de intrare, nucleul IP DSP cu punct fix nativ Cyclone 10 GX utilizează semnalele de intrare de scanare ca intrare în loc de semnale de intrare.

Activați cascada de intrare pentru intrarea „prin”. by_use_scan_in Nu Da Selecta Da pentru a activa modulul în cascadă de intrare prin intrarea datelor.

Când activați modulul în cascadă de intrare, nucleul IP DSP Native Fixed Point Cyclone 10 GX utilizează semnalele de intrare ay ca intrare în loc de semnale de intrare.

Activați registrul de întârziere a datelor delay_scan_out_ay Nu Da Selecta Da pentru a activa registrul de întârziere între ay și registrele de intrare.

Această caracteristică nu este acceptată în m18×18_plus36 şi m27x27 modul de operare.

Parametru Parametru generat de IP Valoare Descriere
Activați datele prin registru de întârziere delay_scan_out_by Nu Da Selecta Da pentru a activa registrul de întârziere între registrele de intrare și magistrala de ieșire de scanare.

Această caracteristică nu este acceptată în m18×18_plus36 şi m27x27 modul de operare.

Activați portul de scanare gui_scanout_enable Nu Da Selecta Da pentru a activa

magistrală de ieșire de scanare.

lățimea magistralei de ieșire „scanout”. scan_out_width 1–27 Specificați lățimea

magistrală de ieșire de scanare.

Configurație de date „x”.
lățimea magistralei de intrare „ax”. ax_width 1–27 Specificați lățimea

magistrală de intrare ax.(1)

Înregistrați intrarea „ax” a multiplicatorului ax_clock Nu Ceas0 Ceas1 Ceas2 Selecta Ceas0, Ceas1, sau Ceas2 pentru a activa și specifica semnalul de ceas de intrare pentru registrul de intrare ax.

Registrul de intrare ax nu este disponibil dacă setați sursa operandului „ax”. la 'coef'.

lățimea magistralei de intrare „bx”. bx_width 1–18 Specificați lățimea

magistrală de intrare bx.(1)

Înregistrați intrarea „bx” a multiplicatorului bx_clock Nu Ceas0 Ceas1 Ceas2 Selecta Ceas0, Ceas1, sau Ceas2 pentru a activa și specifica semnalul de ceas de intrare pentru registrul de intrare bx.

Registrul de intrare bx nu este disponibil dacă ați setat sursa operandului „bx”. la 'coef'.

Configurație de date „y”.
„da” sau „scanează” lățimea autobuzului ay_scan_in_width 1–27 Specificați lățimea magistralei de intrare ay sau scanin.(1)
Înregistrați intrarea „da” sau introducerea „scanare” a multiplicatorului ay_scan_in_clock Nu Ceas0 Ceas1 Ceas2 Selecta Ceas0, Ceas1, sau Ceas2 pentru a activa și specifica semnalul de ceas de intrare pentru registrul de intrare ay sau scanin.
„prin” lățimea magistralei de intrare by_width 1–19 Specificați lățimea magistralei de intrare.(1)
Parametru Parametru generat de IP Valoare Descriere
Înregistrați intrarea „prin” a multiplicatorului la_ceas Nu Ceas0 Ceas1 Ceas2 Selecta Ceas0, Ceas1, sau Ceas2 pentru a activa și specifica semnalul de ceas de intrare pentru by sau scanin

registru de intrare.(1)

Ieșire „rezultat” Configurație
lățimea magistralei de ieșire „rezultat”. rezultat_a_lățime 1–64 Specificați lățimea

magistrala de ieșire rezultată.

lățimea magistralei de ieșire „rezultatb”. result_b_width 1–64 Specificați lățimea magistralei de ieșire rezultatb. resultb disponibil numai când se utilizează operation_mode m18×18_full.
Utilizați registrul de ieșire ceas_ieșire Nu Ceas0 Ceas1 Ceas2 Selecta Ceas0, Ceas1, sau Ceas2 pentru a activa și specifica semnalul de ceas de intrare pentru registrele de ieșire result și resultb.

Fila Pre-adunator

Parametru Parametru generat de IP Valoare Descriere
sursa operandului „da”. operand_source_may predder de intrare Specificați sursa operandului pentru intrarea ay. Selecta predder pentru a activa modulul pre-adăugător pentru multiplicatorul superior. Setările pentru ay și după sursa operandului trebuie să fie aceleași.
„de” sursa operandului operand_source_mby predder de intrare Specificați sursa operandului pentru intrare. Selecta predder pentru a activa modulul pre-adunator pentru multiplicatorul de jos. Setările pentru ay și după sursa operandului trebuie să fie aceleași.
Setați pre-adăugarea unei operații la scădere predder_subtract_a Nu Da Selecta Da pentru a specifica operația de scădere pentru modulul pre-adunator pentru multiplicatorul superior. Setările de pre-adăugător pentru multiplicatorul de sus și de jos trebuie să fie aceleași.
Setați operația de pre-adunator b la scădere predder_subtract_b Nu Da Selecta Da pentru a specifica operația de scădere pentru modulul pre-adunator pentru multiplicatorul de jos. Setările de pre-adăugător pentru multiplicatorul de sus și de jos trebuie să fie aceleași.
Configurație de date „z”.
lățimea magistralei de intrare „az”. az_width 1–26 Specificați lățimea magistralei de intrare az.(1)
Înregistrați intrarea „az” a multiplicatorului az_clock Nu Ceas0 Ceas1 Ceas2 Selecta Ceas0, Ceas1, sau Ceas2 pentru a activa și specifica semnalul de ceas de intrare pentru registrele de intrare az. Setările ceasului pentru registrele de intrare ay și az trebuie să fie aceleași.
lățimea magistralei de intrare „bz”. bz_width 1–18 Specificați lățimea magistralei de intrare bz.(1)
Înregistrați intrarea „bz” a multiplicatorului bz_clock Nu Ceas0 Ceas1 Ceas2 Selecta Ceas0, Ceas1, sau Ceas2 pentru a activa și specifica semnalul de ceas de intrare pentru registrele de intrare bz. Setările ceasului pentru registrele de intrare by și bz trebuie să fie aceleași.

Tab. Coeficient intern

Parametru Parametru generat de IP Valoare Descriere
sursa operandului „ax”. operand_source_max intrare coef Specificați sursa operandului pentru magistrala de intrare ax. Selecta coef pentru a activa modulul de coeficient intern pentru multiplicatorul superior.

Selecta Nu pentru Înregistrați intrarea „ax” a multiplicatorului parametru atunci când activați caracteristica coeficientului intern.

Parametru Parametru generat de IP Valoare Descriere
      Setările pentru sursa de operanzi ax și bx trebuie să fie aceleași.
sursa operandului „bx”. operand_source_mbx intrare coef Specificați sursa operandului pentru magistrala de intrare bx. Selecta coef pentru a activa modulul de coeficient intern pentru multiplicatorul superior.

Selecta Nu pentru Înregistrați intrarea „bx” a multiplicatorului parametru atunci când activați caracteristica coeficientului intern.

Setările pentru sursa de operanzi ax și bx trebuie să fie aceleași.

Configurația registrului de intrare „coefsel”.
Înregistrați intrarea „coefsela” a multiplicatorului coef_sel_a_clock Nu Ceas0 Ceas1 Ceas2 Selecta Ceas0, Ceas1, sau Ceas2 pentru a activa și specifica semnalul de ceas de intrare pentru registrele de intrare coefsela.
Înregistrați intrarea „coefselb” a multiplicatorului coef_sel_b_clock Nu Ceas0 Ceas1 Ceas2 Selecta Ceas0, Ceas1, sau Ceas2 pentru a activa și specifica semnalul de ceas de intrare pentru registrele de intrare coefselb.
Configurație de stocare a coeficientului
coef_a_0–7 coef_a_0–7 Întreg Specificați valorile coeficientului pentru magistrala de intrare ax.

Pentru modul de funcționare pe 18 biți, valoarea maximă de intrare este 218 – 1. Pentru funcționarea pe 27 de biți, valoarea maximă este 227 – 1.

coef_b_0–7 coef_b_0–7 Întreg Specificați valorile coeficientului pentru magistrala de intrare bx.

Fila Cascada Acumulator/Ieșire

Parametru Parametru generat de IP Valoare Descriere
Activați portul „acumulare”. enable_accumulate Nu Da Selecta Da pentru a activa

port acumulator.

Activați portul „negat”. enable_negate Nu Da Selecta Da pentru a activa

nega portul.

Activați portul „loadconst”. enable_loadconst Nu Da Selecta Da pentru a activa

portul loadconst.

Înregistrați intrarea „acumulată” a acumulatorului acumulare_clock Nu Ceas0 Ceas1 Ceas2 Selecta Ceas0 , Ceas1, sau Ceas2 pentru a activa și specifica semnalul de ceas de intrare pentru registrele de intrare acumulate.
Parametru Parametru generat de IP Valoare Descriere
Înregistrați intrarea „loadconst” a acumulatorului load_const_clock Nu Ceas0 Ceas1 Ceas2 Selecta Ceas0, Ceas1, sau Ceas2 pentru a activa și specifica semnalul de ceas de intrare pentru registrele de intrare loadconst.
Înregistrați intrarea „negație” a unității de adunare negate_clock Nu Ceas0 Ceas1 Ceas2 Selecta Ceas0, Ceas1, sau Ceas2 pentru a activa și specifica semnalul de ceas de intrare pentru registrele de intrare anulate.
Activați acumulatorul dublu enable_double_accum Nu Da Selecta Da pentru a activa caracteristica acumulatorului dublu.
Valoarea N a constantei prestabilite load_const_value 0 – 63 Specificați valoarea constantă prestabilită.

Această valoare poate fi 2N unde N este valoarea constantă prestabilită.

Activați portul de lanț use_chainadder Nu Da Selecta Da pentru a activa modulul în cascadă de ieșire și magistrala de intrare în lanț.

Funcția cascadă de ieșire nu este acceptată în m18×18_full mod de operare.

Activați portul chainout gui_chainout_enable Nu Da Selecta Da pentru a activa magistrala de ieșire chainout. Funcția cascadă de ieșire nu este acceptată în

m18×18_full mod de operare.

Fila Conducte

Parametru Parametru generat de IP Valoare Descriere
Adăugați registrul conductei de intrare la semnalul de date de intrare (x/y/z/coefsel) input_pipeline_clock Nu Ceas0 Ceas1 Ceas2 Selecta Ceas0, Ceas1, sau Ceas2 pentru a activa și specifica semnalul de ceas de intrare pentru registrele de intrare în conductă x, y, z, coefsela și coefselb.
Adăugați registrul conductei de intrare la semnalul de date „sub”. sub_pipeline_clock Nu Ceas0 Ceas1 Ceas2 Selecta Ceas0, Ceas1, sau Ceas2 pentru a activa și specifica semnalul de ceas de intrare pentru registrul de intrare al conductei secundare. (2)
Adăugați registrul conductei de intrare la semnalul de date „acumulat”. accum_pipeline_clock Nu Ceas0 Ceas1 Ceas2 Selecta Ceas0, Ceas1, sau Ceas2 pentru a activa și specifica semnalul de ceas de intrare pentru registrul de intrare al conductei de acumulare.(2)
Adăugați registrul conductei de intrare la semnalul de date „loadconst”. load_const_pipeline_clock Nu Ceas0 Ceas1 Ceas2 Selecta Ceas0, Ceas1, sau Ceas2 pentru a activa și specifica semnalul de ceas de intrare pentru registrul de intrare al conductei loadconst.(2)
Adăugați registrul conductei de intrare la semnalul de date „negat”. negate_pipeline_clock Nu Ceas0 Ceas1 Ceas2 Selecta Ceas0, Ceas1, sau Ceas2 pentru a activa și specifica semnalul de ceas de intrare pentru registrul de intrare a conductei de negare.(2)

Lățimea maximă a datelor de intrare pe mod de operare
Puteți personaliza lățimea datelor pentru intrările x, y și z, așa cum este specificat în tabel.

Toate registrele de intrare în conductă pentru semnalele de control dinamic trebuie să aibă aceeași setare de ceas.

Modul de operare Lățimea maximă a datelor de intrare
ax ay az bx by bz
Fără pre-asumator sau coeficient intern
m18×18_full 18 (semnat)

18

(nesemnat)

19 (semnat)

18 (nesemnat)

Nu este folosit 18 (semnat)

18

(nesemnat)

19 (semnat)

18

(nesemnat)

Nu este folosit
m18×18_sumof2
m18×18_sistolic
m18×18_plus36
m27×27 27 (semnat)

27 (nesemnat)

Nu este folosit
Doar cu funcția de pre-adăugător
m18×18_full 18 (semnat)

18 (nesemnat)

m18×18_sumof2
m18×18_sistolic
m27×27 27 (semnat)

27

(nesemnat)

26 (semnat)

26 (nesemnat)

Nu este folosit
Doar cu caracteristica de coeficient intern
m18×18_full Nu este folosit 19 (semnat)

18 (nesemnat)

Nu este folosit 19 (semnat)

18

(nesemnat)

Nu este folosit
m18×18_sumof2
m18×18_sistolic
m27×27 27 (semnat)

27 (nesemnat)

Nu este folosit

Descrierea funcțională

Nucleul IP Cyclone 10 GX Native Fixed Point DSP este format din 2 arhitecturi; Înmulțirea 18 × 18 și înmulțirea 27 × 27. Fiecare instanțiere a nucleului IP Cyclone 10 GX Native Fixed Point DSP generează doar 1 din cele 2 arhitecturi, în funcție de modurile de operare selectate. Puteți activa module opționale pentru aplicația dvs.

Informații conexe
Blocuri DSP cu precizie variabilă în capitolul Dispozitive Intel Cyclone 10 GX, Intel Cyclone 10 GX Core Fabric și manual I/O de uz general.

Moduri operaționale

Nucleul IP Cyclone 10 GX Native Fixed Point DSP acceptă 5 moduri de operare:

  • Modul complet 18 × 18
  • Modul Suma 18 18 × 2
  • Modul 18 × 18 Plus 36
  • Modul sistolic 18 × 18
  • Modul 27 × 27

Modul complet 18 × 18
Când este configurat ca modul complet 18 × 18, nucleul IP DSP Native Fixed Point Cyclone 10 GX funcționează ca două 18 (semnate/nesemnate) × 19 (semnate) sau 18 independente.
(semnați/nesemnati) × 18 multiplicatori (nesemnati) cu ieșire pe 37 de biți. Acest mod aplică următoarele ecuații:

  • rezulta = ax * ay
  • rezultatb = bx * de

Arhitectura Full Mode 18 × 18

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

Modul Suma 18 18 × 2
În 18 × 18 Sumă a 2 moduri, nucleul IP DSP Cyclone 10 GX Native Fixed Point activează multiplicatorii de sus și de jos și generează un rezultat din adunarea sau scăderea dintre cei 2 multiplicatori. Semnalul de control subdinamic controlează un sumator pentru a efectua operațiile de adunare sau scădere. Lățimea de ieșire rezultată a nucleului IP DSP cu punct fix nativ Cyclone 10 GX poate suporta până la 64 de biți atunci când activați cascada de acumulator/ieșire. Acest mod aplică ecuația rezultatului =[±(ax * ay) + (bx * by)].

Arhitectura 18 × 18 Suma a 2 moduri

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

Modul 18 × 18 Plus 36
Atunci când este configurat ca modul 18 × 18 Plus 36, nucleul IP DSP nativ cu punct fix Cyclone 10 GX activează doar multiplicatorul superior. Acest mod aplică ecuația rezultă = (ax * ay) + concatenate(bx[17:0],by[17:0]).

Arhitectura 18 × 18 Plus 36 Mode

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

Când utilizați acest mod, trebuie să setați formatul de reprezentare pentru multiplicatorii inferiori y operand la nesemnat. Când magistrala de intrare este mai mică de 36 de biți în acest mod, vi se cere să furnizați extensia semnată necesară pentru a completa intrarea pe 36 de biți.

Folosind operand mai puțin de 36 de biți în modul 18 × 18 Plus 36
Acest exampfișierul arată cum să configurați nucleul IP DSP Native Fixed Point Cyclone 10 GX pentru a utiliza modul operațional 18 × 18 Plus 36 cu date de intrare semnate pe 12 biți de 101010101010 (binar) în loc de operand pe 36 de biți.

  1. Setați Formatul de reprezentare pentru operand multiplicatorul x inferior: la semnat.
  2. Setați Formatul de reprezentare pentru operandul multiplicator inferior y: la nesemnat.
  3. Setați lățimea magistralei de intrare „bx” la 18.
  4. Setați lățimea magistralei de intrare „prin” la 18.
  5. Furnizați datele „111111111111111111” către magistrala de intrare bx.
  6. Furnizați datele „111111101010101010” prin magistrala de intrare.

Modul sistolic 18 × 18
În modurile operaționale sistolice 18 × 18, miezul IP DSP Cyclone 10 GX Native Fixed Point activează multiplicatorii de sus și de jos, un registru sistolic de intrare pentru multiplicatorul superior și un registru sistolic în lanț pentru lanțul de semnale de intrare. Când activați cascada de ieșire, acest mod acceptă o lățime de ieșire rezultată de 44 de biți. Când activați caracteristica acumulator fără cascadă de ieșire, puteți configura lățimea rezultatului de ieșire la 64 de biți.

Arhitectura modului sistolic 18 × 18

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

Modul 27 × 27
Când este configurat ca moduri 27 × 27, nucleul IP DSP Native Fixed Point Cyclone 10 GX activează un multiplicator 27(semnat/nesemnat) × 27(semnat/nesemnat). Busul de ieșire poate suporta până la 64 de biți cu acumulatorul/cascada de ieșire activată. Acest mod aplică ecuația rezultată = ax * ay.

Arhitectura modului 27 × 27

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

Module opționale

Modulele opționale disponibile în Cyclone 10 GX Native Fixed Point DSP IP Core sunt:

  • Cascada de intrare
  • Preasumatori
  • Coeficient intern
  • Acumulator și cascadă de ieșire
  • Registre de conducte

Cascada de intrare
Funcția cascadă de intrare este acceptată pe ay și de către magistrala de intrare. Când setați Activare cascadă de intrare pentru intrarea „ay” la Da, nucleul IP DSP Native Fixed Point Cyclone 10 GX va prelua intrări de la semnalele de intrare de scanare în loc de magistrala de intrare ay. Când setați Enable input cascade for 'by' input la Da, nucleul IP DSP Native Fixed Point Cyclone 10 GX va prelua intrări de la orice magistrală de intrare în loc de către magistrala de intrare.

Se recomandă activarea registrelor de intrare pentru ay și/sau by ori de câte ori este activată cascada de intrare pentru corectitudinea aplicației.

Puteți activa registrele de întârziere pentru a se potrivi cu cerințele de latență dintre registrul de intrare și registrul de ieșire. Există 2 registre de întârziere în nucleu. Registrul de întârziere superior este utilizat pentru porturile de intrare ay sau scanare în timp ce registrul de întârziere de jos este utilizat pentru porturile de ieșire de scanare. Aceste registre de întârziere sunt acceptate în modul complet 18 × 18, 18 × 18 sume a 2 moduri și moduri sistolice 18 × 18.

Preasumator

Pre-adunatorul poate fi configurat în următoarele configurații:

  • Două pre-adăugătoare independente pe 18 biți (semnate/nesemnate).
  • Un pre-adăugător pe 26 de biți.

Când activați pre-adunatorul în moduri de înmulțire 18 × 18, ay și az sunt folosite ca magistrală de intrare pentru pre-adunatorul de sus, în timp ce by și bz sunt folosite ca magistrală de intrare pentru pre-adunatorul de jos. Când activați pre-adunatorul în modul de înmulțire 27 × 27, ay și az sunt folosite ca magistrală de intrare pentru pre-asumator. Pre-adunatorul acceptă atât operații de adunare, cât și de scădere. Când sunt utilizate ambele preasumatoare din același bloc DSP, acestea trebuie să partajeze același tip de operație (fie adunare, fie scădere).

Coeficient intern
Coeficientul intern poate suporta până la opt coeficienți constanți pentru multiplicanții în modurile de 18 și 27 de biți. Când activați caracteristica de coeficient intern, vor fi generate două magistrale de intrare pentru a controla selecția multiplexorului de coeficienți. Busul de intrare coefsela este utilizat pentru a selecta coeficienții predefiniti pentru multiplicatorul de sus, iar magistrala de intrare consilier este folosit pentru a selecta coeficienții predefiniti pentru multiplicatorul de jos.

Stocarea internă a coeficientului nu acceptă valori ale coeficientului controlabile dinamic, iar stocarea coeficientului extern este necesară pentru a efectua o astfel de operație.

Acumulator și cascadă de ieșire

Modulul acumulator poate fi activat pentru a efectua următoarele operații:

  • Operație de adunare sau scădere
  • Operație de rotunjire părtinită folosind o valoare constantă de 2N
  • Acumulare cu două canale

Pentru a efectua în mod dinamic operația de adunare sau scădere a acumulatorului, controlați semnalul de intrare negat. Pentru o operațiune de rotunjire părtinitoare, puteți specifica și încărca o constantă prestabilită de 2N înainte ca modulul acumulator să fie activat prin specificarea unui număr întreg la valoarea parametrului N a constantei presetate. Numărul întreg N trebuie să fie mai mic de 64. Puteți activa sau dezactiva dinamic utilizarea constantei presetate controlând semnalul loadconst. Puteți utiliza această operațiune ca o muxare activă a valorii rotunde în calea de feedback al acumulatorului. Costul încărcat și utilizarea semnalului acumulat se exclud reciproc.

Puteți activa registrul acumulatorului dublu utilizând parametrul Activare acumulator dublu pentru a efectua acumularea dublă. Modulul de acumulator poate suporta înlănțuirea mai multor blocuri DSP pentru operațiuni de adunare sau scădere, activând portul de intrare în lanț și portul de ieșire de ieșire în lanț. În modul sistolic 18 × 18, vor fi utilizați numai 44 de biți din magistrala de intrare în lanț și magistrala de ieșire în lanț. Cu toate acestea, toate lanțurile de 64 de biți din magistrala de intrare trebuie să fie conectate la magistrala de ieșire de ieșire din lanț din blocul DSP precedent.

Registrul conductelor

Nucleul IP Cyclone 10 GX Native Fixed Point DSP acceptă un singur nivel de registru de conducte. Registrul conductei acceptă până la trei surse de ceas și un semnal clar asincron pentru a reseta registrele conductei. Există cinci registre de conducte:

  • registrul conductei magistralei de intrare a datelor
  • registrul conductei de semnal de control sub dinamic
  • anulați registrul conductei de semnal de control dinamic
  • acumulează registrul conductei de semnal de control dinamic
  • Registrul conductei de control dinamic loadconst

Puteți alege să activați fiecare registre de conducte ale magistralei de intrare de date și registrele conductei de semnal de control dinamic în mod independent. Cu toate acestea, toate registrele pipeline activate trebuie să utilizeze aceeași sursă de ceas.

Schema de ceas

Registrele de intrare, conductă și ieșire din nucleul IP DSP Native Fixed Point Cyclone 10 GX acceptă trei surse/activări de ceas și două ștergere asincrone. Toate registrele de intrare folosesc aclr[0] și toate registrele pipeline și de ieșire folosesc aclr[1]. Fiecare tip de registru poate selecta una dintre cele trei surse de ceas și semnale de activare a ceasului. Când configurați nucleul IP DSP cu punct fix nativ Cyclone 10 GX la modul de funcționare sistolic 18 × 18, software-ul Intel Quartus Prime va seta registrul sistolic de intrare și sursa ceasului registrului sistolic în lanț la aceeași sursă de ceas ca și registrul de ieșire intern.

Când activați caracteristica de acumulator dublu, software-ul Intel Quartus Prime va seta sursa de ceas cu registru de acumulator dublu la aceeași sursă de ceas ca și registrul de ieșire intern.

Constrângeri ale schemei de sincronizare
Această filă arată constrângerile pe care trebuie să le aplicați pentru toate schemele de sincronizare a registrului.

Stare Constrângere
Când pre-adunatorul este activat Sursa de ceas pentru registrele de intrare ay și az trebuie să fie aceeași.
  Sursa de ceas pentru registrele de intrare by și bz trebuie să fie aceeași.
Când registrele pipeline sunt activate Sursa de ceas pentru toate registrele conductei trebuie să fie aceeași.
Când oricare dintre intrări se înregistrează pentru semnale de control dinamic Sursa de ceas pentru registrele de intrare pentru sub, acumulare, loadconst și negate trebuie să fie aceeași.
Cyclone 10 GX Native Fixed Point DSP IP Core Signals

Următoarea figură arată semnalele de intrare și de ieșire ale nucleului IP DSP nativ cu punct fix Cyclone 10 GX.

Cyclone 10 GX Native Fixed Point DSP IP Core Signals

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

Semnale de intrare de date
Nume semnal Tip Lăţime Descriere
topor[] Intrare 27 Introduceți magistrala de date în multiplicatorul superior.
da[] Intrare 27 Introduceți magistrala de date în multiplicatorul superior.

Când pre-adunatorul este activat, aceste semnale sunt servite ca semnale de intrare către pre-adunatorul superior.

az[] Intrare 26 Aceste semnale sunt semnale de intrare către pre-adunatorul superior.

Aceste semnale sunt disponibile numai când pre-adunatorul este activat. Aceste semnale nu sunt disponibile în m18×18_plus36

modul de operare.

bx[] Intrare 18 Intrarea magistralei de date la multiplicatorul inferior.

Aceste semnale nu sunt disponibile în m27×27 modul de operare.

de[] Intrare 19 Intrarea magistralei de date la multiplicatorul inferior.

Când pre-adunatorul este activat, aceste semnale servesc ca semnale de intrare către pre-adunatorul de jos.

Aceste semnale nu sunt disponibile în m27×27 modul de operare.

bz[] Intrare 18 Aceste semnale sunt semnale de intrare către pre-adunatorul inferior. Aceste semnale sunt disponibile numai când pre-adunatorul este activat. Aceste semnale nu sunt disponibile în m27×27 şi m18×18_plus36 moduri de operare.
Semnale de ieșire de date
Nume semnal Tip Lăţime Decripție
rezultat[] Ieșire 64 Autobuz de date de ieșire de la multiplicatorul superior.

Aceste semnale acceptă până la 37 de biți pentru m18×18_full modul de operare.

rezultatb[] Ieșire 37 Ieșire magistrală de date de la multiplicatorul inferior.

Aceste semnale sunt disponibile numai în m18×18_full modul de operare.

Ceas, activare și ștergere semnale

Nume semnal Tip Lăţime Descriere
clk[] Intrare 3 Semnale de ceas de intrare pentru toate registrele.

Aceste semnale de ceas sunt disponibile numai dacă oricare dintre registrele de intrare, registrele conductei sau registrul de ieșire este setat la Ceas0, Ceas1, sau Ceas2.

• clk[0] = Ceas0

• clk[1] = Ceas1

• clk[2] = Ceas2

ena[] Intrare 3 Activare ceas pentru clk[2:0]. Acest semnal este activ - Înalt.

• ena[0] este pentru Ceas0

• ena[1] este pentru Ceas1

• ena[2] este pentru Ceas2

aclr[] Intrare 2 Semnale clare de intrare asincrone pentru toate registrele. Acest semnal este activ - Înalt.

Utilizare aclr[0] pentru toate registrele de intrare și utilizare aclr[1] pentru toate registrele conductei și registrul de ieșire.

În mod implicit, acest semnal este dezactivat.

Semnale de control dinamic

Nume semnal Tip Lăţime Descriere
sub Intrare 1 Semnal de intrare pentru a adăuga sau scădea ieșirea multiplicatorului de sus cu ieșirea multiplicatorului de jos.

• Dezactivați acest semnal pentru a specifica operația de adăugare.

• Afirmați acest semnal pentru a specifica operația de scădere.

În mod implicit, acest semnal este dezactivat. Puteți activa sau anula acest semnal în timpul rulării.(3)

nega Intrare 1 Semnal de intrare pentru a adăuga sau scădea suma multiplicatorilor de sus și de jos cu datele din semnalele în lanț.

• Dezactivați acest semnal pentru a specifica operația de adăugare.

• Afirmați acest semnal pentru a specifica operația de scădere.

În mod implicit, acest semnal este dezactivat. Puteți activa sau anula acest semnal în timpul rulării.(3)

acumula Intrare 1 Semnal de intrare pentru a activa sau dezactiva caracteristica acumulatorului.

• Dezactivați acest semnal pentru a dezactiva caracteristica acumulatorului.

• Afirmați acest semnal pentru a activa funcția acumulator.

În mod implicit, acest semnal este dezactivat. Puteți activa sau anula acest semnal în timpul rulării.(3)

loadconst Intrare 1 Semnal de intrare pentru a activa sau dezactiva caracteristica constantă de încărcare.

• Dezactivați acest semnal pentru a dezactiva caracteristica constantă de încărcare.

• Afirmați acest semnal pentru a activa caracteristica constantă de încărcare.

În mod implicit, acest semnal este dezactivat. Puteți activa sau anula acest semnal în timpul rulării.(3)

Semnale de coeficient intern

Nume semnal Tip Lăţime Descriere
coefsela[] Intrare 3 Semnale de selecție de intrare pentru 8 valori ale coeficientului definite de utilizator pentru multiplicatorul superior. Valorile coeficientului sunt stocate în memoria internă și specificate prin parametri coef_a_0 la coef_a_7.

• coefsela[2:0] = 000 se referă la coef_a_0

• coefsela[2:0] = 001 se referă la coef_a_1

• coelsela[2:0] = 010 se referă la coef_a_2

• … și așa mai departe.

Aceste semnale sunt disponibile numai când funcția de coeficient intern este activată.

coefselb[] Intrare 3 Semnale de selecție de intrare pentru 8 valori ale coeficientului definite de utilizator pentru multiplicatorul inferior. Valorile coeficientului sunt stocate în memoria internă și specificate prin parametri coef_b_0 la coef_b_7.

• coefselb[2:0] = 000 se referă la coef_b_0

• coefselb[2:0] = 001 se referă la coef_b_1

• coelselb[2:0] = 010 se referă la coef_b_2

• … și așa mai departe.

Aceste semnale sunt disponibile numai când funcția de coeficient intern este activată.

Semnale de intrare în cascadă

Nume semnal Tip Lăţime Descriere
scanare[] Intrare 27 Bus de date de intrare pentru modulul în cascadă de intrare.

Conectați aceste semnale la semnalele de scanare de la miezul DSP precedent.

scanout[] Ieșire 27 Bus de date de ieșire a modulului în cascadă de intrare.

Conectați aceste semnale la semnalele de scanare ale următorului nucleu DSP.

Semnale în cascadă de ieșire

Nume semnal Tip Lăţime Descriere
lanț[] Intrare 64 Bus de date de intrare pentru modulul în cascadă de ieșire.

Conectați aceste semnale la semnalele chainout de la miezul DSP precedent.

înlănțuire[] Ieșire 64 Bus de date de ieșire a modulului în cascadă de ieșire.

Conectați aceste semnale la semnalele în lanț ale următorului nucleu DSP.

Istoricul revizuirilor documentului pentru Ghidul utilizatorului Cyclone 10 GX Native Fixed Point DSP IP Core

Data Versiune Schimbări
noiembrie 2017 2017.11.06 Lansare inițială.

Intel Corporation. Toate drepturile rezervate. Intel, sigla Intel și alte mărci Intel sunt mărci comerciale ale Intel Corporation sau ale subsidiarelor sale. Intel garantează performanța produselor sale FPGA și semiconductoare conform specificațiilor actuale, în conformitate cu garanția standard Intel, dar își rezervă dreptul de a face modificări oricăror produse și servicii în orice moment, fără notificare. Intel nu își asumă nicio responsabilitate sau răspundere care decurg din aplicarea sau utilizarea oricăror informații, produse sau servicii descrise aici, cu excepția cazului în care Intel a convenit în mod expres în scris. Clienții Intel sunt sfătuiți să obțină cea mai recentă versiune a specificațiilor dispozitivului înainte de a se baza pe orice informații publicate și înainte de a plasa comenzi pentru produse sau servicii.

Alte nume și mărci pot fi revendicate ca fiind proprietatea altora.

Documente/Resurse

Intel UG-20094 Cyclone 10 GX Native Fixed Point DSP IP Core [pdfGhid de utilizare
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

Referințe

Lasă un comentariu

Adresa ta de e-mail nu va fi publicată. Câmpurile obligatorii sunt marcate *