logo intel

Intel UG-20094 Cyclone 10 GX Nucleo IP DSP a virgola fissa nativa

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

Intel® Cyclone® 10 GX Native Fixed Point DSP IP Core Guida dell'utente

Il core IP DSP nativo a virgola fissa Intel Cyclone® 10 GX istanzia e controlla un singolo blocco DSP (Variable Precision Digital Signal Processing) Intel Cyclone 10 GX. Il core IP Cyclone 10 GX Native Fixed Point DSP è disponibile solo per i dispositivi Intel Cyclone 10 GX.

Cyclone 10 GX Native Fixed Point DSP IP Core Diagramma a blocchi funzionaleintel-UG-20094-Cyclone-10-GX-Native-Fixed-Point-DSP-IP-Core-FIG- (1)

Informazioni correlate
Introduzione ai core IP FPGA Intel.

Cyclone 10 GX Caratteristiche principali IP DSP a virgola fissa nativa

Il core IP DSP a virgola fissa nativa di Cyclone 10 GX supporta le seguenti funzionalità:

  • Operazioni di moltiplicazione ad alte prestazioni, ottimizzate dal punto di vista energetico e completamente registrate
  • Lunghezza delle parole di 18 bit e 27 bit
  • Due moltiplicatori 18 × 19 o un moltiplicatore 27 × 27 per blocco DSP
  • Registro integrato di addizione, sottrazione e doppia accumulazione a 64 bit per combinare i risultati delle moltiplicazioni
  • 19 bit o 27 bit in cascata quando il pre-adder è disabilitato e 18 bit in cascata quando viene utilizzato il pre-adder per formare la linea di tap-delay per l'applicazione di filtraggio
  • Bus di output a 64 bit in cascata per propagare i risultati di output da un blocco al blocco successivo senza supporto logico esterno
  • Pre-adder rigido supportato nelle modalità a 19 e 27 bit per filtri simmetrici
  • Banco di registri dei coefficienti interni sia in modalità a 18 bit che a 27 bit per l'implementazione del filtro
  • Filtri a risposta all'impulso finita (FIR) sistolica a 18 bit e 27 bit con sommatore di uscita distribuito

Iniziare

Questo capitolo fornisce una panoramica generaleview del flusso di progettazione del core Intel FPGA IP per aiutarti a iniziare rapidamente con il core IP DSP a virgola fissa nativa di Cyclone 10 GX. La libreria Intel FPGA IP viene installata come parte del processo di installazione di Intel Quartus® Prime. È possibile selezionare e parametrizzare qualsiasi core Intel FPGA IP dalla libreria. Intel fornisce un editor di parametri integrato che consente di personalizzare il core Intel FPGA DSP IP per supportare un'ampia varietà di applicazioni. L'editor dei parametri guida l'utente attraverso l'impostazione dei valori dei parametri e la selezione delle porte opzionali.

Informazioni correlate

  • Introduzione ai core IP FPGA Intel
    Fornisce informazioni generali su tutti i core IP FPGA Intel, inclusa la parametrizzazione, la generazione, l'aggiornamento e la simulazione dei core IP.
  • Creazione di script di simulazione IP e Platform Designer (standard) indipendenti dalla versione
    Crea script di simulazione che non richiedono aggiornamenti manuali per aggiornamenti software o versioni IP.
  • Migliori pratiche di gestione del progetto
    Linee guida per una gestione efficiente e portabilità del tuo progetto e IP files.
Cyclone 10 GX Native Fixed Point DSP IP Core Impostazioni dei parametri

È possibile personalizzare il core IP DSP a virgola fissa nativa di Cyclone 10 GX specificando i parametri utilizzando l'editor dei parametri nel software Intel Quartus Prime.

Scheda modalità operativa

Parametro Parametro generato dall'IP Valore Descrizione
Si prega di scegliere la modalità operativa modalità di funzionamento m18×18_full m18×18_sumof2 m18×18_plus36 m18×18_systolic m27×27 Selezionare la modalità operativa desiderata.
Configurazione del moltiplicatore
Formato di rappresentazione per il moltiplicatore superiore x operando firmato_max firmato non firmato Specificare il formato di rappresentazione per l'operando x del moltiplicatore superiore.
Parametro Parametro generato dall'IP Valore Descrizione
Formato di rappresentazione per il moltiplicatore superiore y operando firmato_maggio firmato non firmato Specificare il formato di rappresentazione per l'operando y del moltiplicatore superiore.
Formato di rappresentazione per il moltiplicatore inferiore x operando firmato_mbx firmato non firmato Specificare il formato di rappresentazione per l'operando x del moltiplicatore inferiore.
Formato di rappresentazione per il moltiplicatore inferiore y operando firmato_mby firmato non firmato Specificare il formato di rappresentazione per l'operando y del moltiplicatore inferiore.

Seleziona sempre non firmato per m18×18_più36 .

Abilita porta 'sub' abilita_sub NO Selezionare abilitare

porta secondaria.

Registrare l'input 'sub' del moltiplicatore sub_orologio NO Orologio0 Orologio1 Orologio2 Selezionare Orologio0, Orologio1, O Orologio2 per abilitare e specificare il segnale di clock di ingresso per il registro di ingresso secondario.
Ingresso in cascata
Abilita la cascata di input per l'input 'ay' ay_use_scan_in NO Selezionare per abilitare il modulo di ingresso in cascata per l'immissione di tutti i dati.

Quando si abilita il modulo input cascade, il core IP DSP nativo a virgola fissa di Cyclone 10 GX utilizza i segnali di input scanin come input invece di tutti i segnali di input.

Abilita la cascata di input per l'input 'by' by_use_scan_in NO Selezionare per abilitare il modulo di ingresso in cascata per l'immissione di dati.

Quando si abilita il modulo input cascade, il core IP DSP nativo a virgola fissa di Cyclone 10 GX utilizza i segnali di input ay come input invece che tramite segnali di input.

Abilita data e registro ritardo ritardo_scan_out_ay NO Selezionare per abilitare il registro di ritardo tra y e by input registers.

Questa funzione non è supportata in m18×18_più36 E m27x27 modalità operativa.

Parametro Parametro generato dall'IP Valore Descrizione
Abilita i dati per registro di ritardo ritardo_scan_out_by NO Selezionare per abilitare il registro di ritardo tra i registri di ingresso e il bus di uscita scanout.

Questa funzione non è supportata in m18×18_più36 E m27x27 modalità operativa.

Abilita la porta di scansione gui_scanout_enable NO Selezionare abilitare

bus di uscita scanout.

larghezza del bus di uscita 'scanout' scan_out_width Numero di telefono: 1–27 Specificare la larghezza di

bus di uscita scanout.

Dati 'x' Configurazione
larghezza del bus di ingresso 'ax' larghezza_ascia Numero di telefono: 1–27 Specificare la larghezza di

ascia bus di ingresso.(1)

Registrare l'input 'ax' del moltiplicatore ax_clock NO Orologio0 Orologio1 Orologio2 Selezionare Orologio0, Orologio1, O Orologio2 per abilitare e specificare il segnale di clock di ingresso per il registro di ingresso ax.

ax input register non è disponibile se si imposta Fonte dell'operando 'ax' A 'coef'.

larghezza del bus di ingresso 'bx' bx_larghezza Numero di telefono: 1–18 Specificare la larghezza di

bx bus di ingresso.(1)

Registrare l'ingresso 'bx' del moltiplicatore bx_orologio NO Orologio0 Orologio1 Orologio2 Selezionare Orologio0, Orologio1, O Orologio2 per abilitare e specificare il segnale di clock di ingresso per il registro di ingresso bx.

bx input register non è disponibile se si imposta Fonte dell'operando 'bx' A 'coef'.

Dati 'y' Configurazione
larghezza bus 'ay' o 'scanin' ay_scan_in_width Numero di telefono: 1–27 Specificare la larghezza del bus di ingresso y o scanin.(1)
Registra l'input 'ay' o l'input 'scanin' del moltiplicatore ay_scan_in_clock NO Orologio0 Orologio1 Orologio2 Selezionare Orologio0, Orologio1, O Orologio2 per abilitare e specificare il segnale di clock di ingresso per il registro di ingresso y o scanin.
larghezza del bus di ingresso 'by' per_larghezza Numero di telefono: 1–19 Specificare la larghezza del bus di input.(1)
Parametro Parametro generato dall'IP Valore Descrizione
Registra l'input 'by' del moltiplicatore entro_orologio NO Orologio0 Orologio1 Orologio2 Selezionare Orologio0, Orologio1, O Orologio2 per abilitare e specificare il segnale di clock in ingresso per by o scanin

registro di ingresso.(1)

Output 'risultato' Configurazione
larghezza del bus di uscita 'resulta' risultato_a_larghezza Numero di telefono: 1–64 Specificare la larghezza di

risultatoun bus di uscita.

larghezza del bus di uscita 'resultb' risultato_b_larghezza Numero di telefono: 1–64 Specificare la larghezza del bus di uscita resultb. resultb disponibile solo quando si utilizza operation_mode m18×18_pieno.
Usa il registro di uscita output_clock NO Orologio0 Orologio1 Orologio2 Selezionare Orologio0, Orologio1, O Orologio2 per abilitare e specificare il segnale di clock di ingresso per i registri di uscita resulta e resultb.

Scheda pre-sommatore

Parametro Parametro generato dall'IP Valore Descrizione
'ay' sorgente dell'operando operando_source_may preamplificatore di ingresso Specificare l'origine dell'operando per un input y. Selezionare preadder per abilitare il modulo pre-adder per il moltiplicatore superiore. Le impostazioni per ay e by operand source devono essere le stesse.
'by' origine operando operando_source_mby preamplificatore di ingresso Specificare l'origine dell'operando per l'input. Selezionare preadder per abilitare il modulo pre-adder per il moltiplicatore di fondo. Le impostazioni per ay e by operand source devono essere le stesse.
Imposta pre-sommatore un'operazione sulla sottrazione preadder_subtract_a NO Selezionare per specificare l'operazione di sottrazione per il modulo pre-adder per il moltiplicatore superiore. Le impostazioni pre-adder per il moltiplicatore superiore e inferiore devono essere le stesse.
Imposta l'operazione pre-addizionatrice b su sottrazione preadder_subtract_b NO Selezionare per specificare l'operazione di sottrazione per il modulo pre-adder per il moltiplicatore inferiore. Le impostazioni pre-adder per il moltiplicatore superiore e inferiore devono essere le stesse.
Dati 'z' Configurazione
larghezza del bus di ingresso 'az' az_larghezza Numero di telefono: 1–26 Specificare la larghezza di un bus di input z.(1)
Registrare l'input 'az' del moltiplicatore az_clock NO Orologio0 Orologio1 Orologio2 Selezionare Orologio0, Orologio1, O Orologio2 per abilitare e specificare il segnale di clock di ingresso per i registri di ingresso az. Le impostazioni dell'orologio per i registri di ingresso ay e az devono essere le stesse.
larghezza del bus di ingresso 'bz' bz_larghezza Numero di telefono: 1–18 Specifica la larghezza del bus di ingresso bz.(1)
Registrare l'ingresso 'bz' del moltiplicatore bz_orologio NO Orologio0 Orologio1 Orologio2 Selezionare Orologio0, Orologio1, O Orologio2 per abilitare e specificare il segnale di clock di ingresso per i registri di ingresso bz. Le impostazioni dell'orologio per i registri di ingresso by e bz devono essere le stesse.

Coefficiente interno Tab

Parametro Parametro generato dall'IP Valore Descrizione
Fonte dell'operando 'ax' operando_sorgente_max ingresso coefficiente Specificare la sorgente dell'operando per il bus di ingresso ax. Selezionare coefficiente per abilitare il modulo del coefficiente interno per il moltiplicatore superiore.

Selezionare NO per Registrare l'input 'ax' del moltiplicatore parametro quando si abilita la funzione del coefficiente interno.

Parametro Parametro generato dall'IP Valore Descrizione
      Le impostazioni per la sorgente degli operandi ax e bx devono essere le stesse.
Fonte dell'operando 'bx' operando_sorgente_mbx ingresso coefficiente Specificare la sorgente dell'operando per il bus di ingresso bx. Selezionare coefficiente per abilitare il modulo del coefficiente interno per il moltiplicatore superiore.

Selezionare NO per Registrare l'ingresso 'bx' del moltiplicatore parametro quando si abilita la funzione del coefficiente interno.

Le impostazioni per la sorgente degli operandi ax e bx devono essere le stesse.

Configurazione del registro di input 'coefsel'
Registrare l'input 'coefsela' del moltiplicatore coef_sel_a_clock NO Orologio0 Orologio1 Orologio2 Selezionare Orologio0, Orologio1, O Orologio2 per abilitare e specificare il segnale di clock di ingresso per i registri di ingresso coefsela.
Registrare l'input 'coefselb' del moltiplicatore coef_sel_b_clock NO Orologio0 Orologio1 Orologio2 Selezionare Orologio0, Orologio1, O Orologio2 per abilitare e specificare il segnale di clock di ingresso per i registri di ingresso coefselb.
Coefficiente di configurazione della memorizzazione
coef_a_0–7 coef_a_0–7 Intero Specificare i valori dei coefficienti per il bus di ingresso ax.

Per la modalità operativa a 18 bit, il valore di ingresso massimo è 218 – 1. Per il funzionamento a 27 bit, il valore massimo è 227 – 1.

coef_b_0–7 coef_b_0–7 Intero Specificare i valori dei coefficienti per il bus di ingresso bx.

Accumulatore/Uscita Cascata Tab

Parametro Parametro generato dall'IP Valore Descrizione
Abilita la porta "accumula". abilita_accumulare NO Selezionare abilitare

porta dell'accumulatore.

Abilita porta 'nega' abilita_nega NO Selezionare abilitare

porta negata.

Abilita la porta 'loadconst' abilita_caricoconst NO Selezionare abilitare

porta loadconst.

Registrare l'ingresso 'accumulate' dell'accumulatore accumula_orologio NO Orologio0 Orologio1 Orologio2 Selezionare Orologio0 , Orologio1, O Orologio2 per abilitare e specificare il segnale di clock di ingresso per gli accumulate input registers.
Parametro Parametro generato dall'IP Valore Descrizione
Registrare l'ingresso 'loadconst' dell'accumulatore load_const_clock NO Orologio0 Orologio1 Orologio2 Selezionare Orologio0, Orologio1, O Orologio2 per abilitare e specificare il segnale di clock di ingresso per i registri di ingresso loadconst.
Registrare l'input 'negate' dell'unità addizionatrice nega_orologio NO Orologio0 Orologio1 Orologio2 Selezionare Orologio0, Orologio1, O Orologio2 per abilitare e specificare il segnale di clock di ingresso per i registri di ingresso negati.
Abilita doppio accumulatore abilita_doppio_accum NO Selezionare per abilitare la funzione doppio accumulatore.
Valore N della costante preimpostata carico_const_valore 0 – 63 Specificare il valore costante preimpostato.

Questo valore può essere 2N Dove N è il valore costante preimpostato.

Abilita porta concatenata use_chainadder NO Selezionare per abilitare il modulo di uscita in cascata e il bus di ingresso concatenato.

La funzione Output Cascade non è supportata in m18×18_pieno modalità di funzionamento.

Abilita porta chainout gui_chainout_enable NO Selezionare per abilitare il bus di uscita della catena. La funzione Output Cascade non è supportata in

m18×18_pieno modalità di funzionamento.

Scheda pipeline

Parametro Parametro generato dall'IP Valore Descrizione
Aggiungi il registro della pipeline di input al segnale di dati di input (x/y/z/coefsel) input_pipeline_clock NO Orologio0 Orologio1 Orologio2 Selezionare Orologio0, Orologio1, O Orologio2 per abilitare e specificare il segnale di clock di ingresso per i registri di input della pipeline x, y, z, coefsela e coefselb.
Aggiungi il registro della pipeline di input al segnale di dati "sub". sub_pipeline_clock NO Orologio0 Orologio1 Orologio2 Selezionare Orologio0, Orologio1, O Orologio2 per abilitare e specificare il segnale di clock di ingresso per il registro di input della pipeline secondaria. (2)
Aggiungi il registro della pipeline di input al segnale di dati "accumula". accum_pipeline_clock NO Orologio0 Orologio1 Orologio2 Selezionare Orologio0, Orologio1, O Orologio2 per abilitare e specificare il segnale di clock di input per il registro di input della pipeline di accumulo.(2)
Aggiungi il registro della pipeline di input al segnale di dati "loadconst". load_const_pipeline_clock NO Orologio0 Orologio1 Orologio2 Selezionare Orologio0, Orologio1, O Orologio2 per abilitare e specificare il segnale di clock di input per il registro di input della pipeline loadconst.(2)
Aggiungi il registro della pipeline di input al segnale di dati "negato". negate_pipeline_clock NO Orologio0 Orologio1 Orologio2 Selezionare Orologio0, Orologio1, O Orologio2 per abilitare e specificare il segnale di clock di input per il registro di input della pipeline negata.(2)

Larghezza massima dei dati di input per modalità operativa
È possibile personalizzare la larghezza dei dati per gli input x, y e z come specificato nella tabella.

Tutti i registri di input della pipeline per i segnali di controllo dinamico devono avere la stessa impostazione di clock.

Modalità di funzionamento Larghezza massima dei dati di input
ax ay az bx by bz
Senza pre-sommatore o coefficiente interno
m18×18_pieno 18 (firmato)

18

(non firmato)

19 (firmato)

18 (non firmato)

Non utilizzato 18 (firmato)

18

(non firmato)

19 (firmato)

18

(non firmato)

Non utilizzato
m18×18_sommadi2
m18×18_sistolico
m18×18_più36
m27×27 27 (firmato)

27 (non firmato)

Non utilizzato
Solo con funzione pre-adder
m18×18_pieno 18 (firmato)

18 (non firmato)

m18×18_sommadi2
m18×18_sistolico
m27×27 27 (firmato)

27

(non firmato)

26 (firmato)

26 (non firmato)

Non utilizzato
Solo con funzione di coefficiente interno
m18×18_pieno Non utilizzato 19 (firmato)

18 (non firmato)

Non utilizzato 19 (firmato)

18

(non firmato)

Non utilizzato
m18×18_sommadi2
m18×18_sistolico
m27×27 27 (firmato)

27 (non firmato)

Non utilizzato

Descrizione funzionale

Il core IP DSP a virgola fissa nativa di Cyclone 10 GX è costituito da 2 architetture; Moltiplicazione 18 × 18 e moltiplicazione 27 × 27. Ciascuna istanza del core IP DSP a virgola fissa nativa di Cyclone 10 GX genera solo 1 delle 2 architetture a seconda delle modalità operative selezionate. Puoi abilitare i moduli opzionali per la tua applicazione.

Informazioni correlate
Blocchi DSP a precisione variabile nel capitolo sui dispositivi Intel Cyclone 10 GX, Intel Cyclone 10 GX Core Fabric e manuale sugli I/O per uso generico.

Modalità operative

Il core IP DSP nativo a virgola fissa Cyclone 10 GX supporta 5 modalità operative:

  • La modalità completa 18 × 18
  • La modalità 18 × 18 Somma di 2
  • La modalità 18 × 18 Plus 36
  • La modalità sistolica 18 × 18
  • La modalità 27 × 27

La modalità completa 18 × 18
Se configurato come modalità completa 18 × 18, il core IP DSP nativo a virgola fissa di Cyclone 10 GX funziona come due 18 indipendenti (firmato/non firmato) × 19 (firmato) o 18
Moltiplicatori (con segno/senza segno) × 18 (senza segno) con output a 37 bit. Questa modalità applica le seguenti equazioni:

  • risultato = ax * ay
  • risultatob = bx * per

L'architettura in modalità completa 18 × 18

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

La modalità 18 × 18 Somma di 2
Nelle modalità Somma di 18 18 × 2, il core IP DSP nativo a virgola fissa Cyclone 10 GX abilita i moltiplicatori superiore e inferiore e genera un risultato dall'addizione o dalla sottrazione tra i 2 moltiplicatori. Il segnale di controllo subdinamico controlla un sommatore per eseguire le operazioni di addizione o sottrazione. L'ampiezza dell'uscita risultante del core IP DSP a virgola fissa nativa di Cyclone 10 GX può supportare fino a 64 bit quando si abilita la cascata di accumulatore/uscita. Questa modalità applica l'equazione di resulta =[±(ax * ay) + (bx * by)].

L'architettura 18 × 18 Somma di 2 modalità

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

La modalità 18 × 18 Plus 36
Se configurato come modalità 18 × 18 Plus 36, il core IP Cyclone 10 GX Native Fixed Point DSP abilita solo il moltiplicatore superiore. Questa modalità applica l'equazione di resulta = (ax * ay) + concatenate(bx[17:0],by[17:0]).

L'architettura della modalità 18 × 18 Plus 36

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

È necessario impostare il formato di rappresentazione per i moltiplicatori inferiori e l'operando su unsigned quando si utilizza questa modalità. Quando il bus di ingresso è inferiore a 36 bit in questa modalità, è necessario fornire l'estensione firmata necessaria per riempire l'ingresso a 36 bit.

Utilizzo di un operando inferiore a 36 bit in modalità 18 × 18 Plus 36
Questo example mostra come configurare il core IP DSP a virgola fissa nativa di Cyclone 10 GX per utilizzare la modalità operativa 18 × 18 Plus 36 con dati di input a 12 bit con segno di 101010101010 (binario) invece di un operando a 36 bit.

  1. Imposta il formato di rappresentazione per il moltiplicatore inferiore x operando: su firmato.
  2. Imposta il formato di rappresentazione per il moltiplicatore inferiore y operando: su senza segno.
  3. Imposta la larghezza del bus di ingresso 'bx' su 18.
  4. Imposta la larghezza del bus di ingresso 'by' su 18.
  5. Fornire i dati di '111111111111111111' al bus di ingresso bx.
  6. Fornire i dati di '111111101010101010' al bus di ingresso.

La modalità sistolica 18 × 18
Nelle modalità operative sistoliche 18 × 18, il core IP DSP nativo a virgola fissa Cyclone 10 GX abilita i moltiplicatori superiore e inferiore, un registro sistolico di ingresso per il moltiplicatore superiore e un registro sistolico a catena per la catena nei segnali di ingresso. Quando si abilita l'output a cascata, questa modalità supporta una larghezza di output del risultato di 44 bit. Quando si abilita la funzione dell'accumulatore senza uscita in cascata, è possibile configurare la larghezza dell'uscita risultante a 64 bit.

L'architettura della modalità sistolica 18 × 18

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

La modalità 27 × 27
Se configurato come modalità 27 × 27, il core IP DSP Native Fixed Point Cyclone 10 GX abilita un moltiplicatore 27 (con segno/senza segno) × 27 (con segno/senza segno). Il bus di uscita può supportare fino a 64 bit con cascata accumulatore/uscita abilitata. Questa modalità applica l'equazione di resulta = ax * ay.

L'architettura della modalità 27 × 27

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

Moduli opzionali

I moduli opzionali disponibili nel Cyclone 10 GX Native Fixed Point DSP IP Core sono:

  • Ingresso in cascata
  • Pre-sommatori
  • Coefficiente interno
  • Accumulatore e uscita in cascata
  • Registri della pipeline

Ingresso in cascata
La funzione Input Cascade è supportata su y e dal bus di input. Quando si imposta Enable input cascade for 'ay' input su Yes, il core IP Cyclone 10 GX Native Fixed Point DSP prenderà gli input dai segnali di input di scansione anziché da un bus di input y. Quando si imposta Enable input cascade for 'by' input su Yes, il core IP DSP nativo a virgola fissa di Cyclone 10 GX prenderà gli input da un bus di input invece che dal bus di input.

Si consiglia di abilitare i registri di ingresso per ay e/o by ogni volta che si abilita la cascata di ingressi per la correttezza dell'applicazione.

È possibile abilitare i registri di ritardo in modo che corrispondano al requisito di latenza tra il registro di ingresso e il registro di uscita. Ci sono 2 registri di ritardo nel core. Il registro di ritardo superiore viene utilizzato per le porte di ingresso y o scan-in, mentre il registro di ritardo inferiore viene utilizzato per le porte di uscita scanout. Questi registri di ritardo sono supportati in modalità completa 18 × 18, somme di 18 modalità 18 × 2 e modalità sistoliche 18 × 18.

Pre-vipera

Il pre-adder può essere configurato nelle seguenti configurazioni:

  • Due pre-adder indipendenti a 18 bit (con/senza segno).
  • Un pre-adder a 26 bit.

Quando si abilita il pre-adder nelle modalità di moltiplicazione 18 × 18, ay e az vengono utilizzati come bus di ingresso per il pre-adder superiore mentre by e bz vengono utilizzati come bus di ingresso per il pre-adder inferiore. Quando si abilita il pre-adder in modalità di moltiplicazione 27 × 27, ay e az vengono utilizzati come bus di ingresso per il pre-adder. Il pre-adder supporta sia le operazioni di addizione che di sottrazione. Quando vengono utilizzati entrambi i pre-adder all'interno dello stesso blocco DSP, devono condividere lo stesso tipo di operazione (addizione o sottrazione).

Coefficiente interno
Il coefficiente interno può supportare fino a otto coefficienti costanti per i moltiplicandi nelle modalità a 18 e 27 bit. Quando si abilita la funzione del coefficiente interno, verranno generati due bus di ingresso per controllare la selezione del multiplexer di coefficienti. Il bus di input coefsela viene utilizzato per selezionare i coefficienti predefiniti per il moltiplicatore superiore e il bus di input counsel viene utilizzato per selezionare i coefficienti predefiniti per il moltiplicatore inferiore.

La memorizzazione interna dei coefficienti non supporta valori di coefficienti controllabili dinamicamente e per eseguire tale operazione è necessaria la memorizzazione esterna dei coefficienti.

Accumulatore e uscita in cascata

Il modulo accumulatore può essere abilitato a svolgere le seguenti operazioni:

  • Operazione di addizione o sottrazione
  • Operazione di arrotondamento parziale utilizzando un valore costante di 2N
  • Accumulo a doppio canale

Per eseguire dinamicamente l'operazione di addizione o sottrazione dell'accumulatore, controllare il segnale di ingresso negativo. Per un'operazione di arrotondamento parziale, è possibile specificare e caricare una costante preimpostata di 2N prima che il modulo accumulatore venga abilitato specificando un numero intero nel valore del parametro N della costante preimpostata. Il numero intero N deve essere minore di 64. È possibile abilitare o disabilitare dinamicamente l'uso della costante preimpostata controllando il segnale loadconst. È possibile utilizzare questa operazione come muxing attivo del valore di arrotondamento nel percorso di feedback dell'accumulatore. Il costo caricato e l'utilizzo del segnale accumulato si escludono a vicenda.

È possibile abilitare il registro del doppio accumulatore utilizzando il parametro Abilita doppio accumulatore per eseguire il doppio accumulo. Il modulo accumulatore può supportare il concatenamento di più blocchi DSP per operazioni di addizione o sottrazione abilitando la porta di ingresso del concatenamento e la porta di uscita del concatenamento. In modalità sistolica 18 × 18, verranno utilizzati solo 44 bit del bus di ingresso della catena e del bus di uscita della catena. Tuttavia, tutte le catene a 64 bit nel bus di ingresso devono essere collegate al bus di uscita della catena dal blocco DSP precedente.

Registro della pipeline

Il core IP DSP Native Fixed Point di Cyclone 10 GX supporta un singolo livello di registro pipeline. Il registro della pipeline supporta fino a tre sorgenti di clock e un segnale chiaro asincrono per reimpostare i registri della pipeline. Esistono cinque registri della pipeline:

  • registro della pipeline del bus di input dei dati
  • registro della pipeline del segnale di controllo sub dinamico
  • negare il registro della pipeline del segnale di controllo dinamico
  • accumulare il registro della pipeline del segnale di controllo dinamico
  • registro della pipeline di controllo dinamico loadconst

È possibile scegliere di abilitare i registri della pipeline del bus di input di dati e i registri della pipeline del segnale di controllo dinamico in modo indipendente. Tuttavia, tutti i registri della pipeline abilitati devono usare la stessa sorgente di clock.

Schema di clock

I registri di input, pipeline e output nel core IP DSP nativo a virgola fissa di Cyclone 10 GX supportano tre sorgenti/abilitazioni di clock e due cancellazioni asincrone. Tutti i registri di input utilizzano aclr[0] e tutti i registri di pipeline e output utilizzano aclr[1]. Ciascun tipo di registro può selezionare una delle tre sorgenti di clock e segnali di abilitazione del clock. Quando si configura il core Cyclone 10 GX Native Fixed Point DSP IP sulla modalità operativa sistolica 18 × 18, il software Intel Quartus Prime imposterà internamente il registro sistolico di ingresso e la sorgente di clock del registro sistolico a catena sulla stessa sorgente di clock del registro di uscita.

Quando si abilita la funzione del doppio accumulatore, il software Intel Quartus Prime imposterà internamente la sorgente di clock del registro del doppio accumulatore sulla stessa sorgente di clock del registro di uscita.

Vincoli dello schema di clocking
Questa scheda mostra i vincoli che devi applicare per tutti gli schemi di timbratura dei registri.

Condizione Vincolo
Quando il pre-adder è abilitato La sorgente di clock per i registri di input ay e az deve essere la stessa.
  La sorgente di clock per i registri di ingresso by e bz deve essere la stessa.
Quando i registri della pipeline sono abilitati L'origine dell'orologio per tutti i registri della pipeline deve essere la stessa.
Quando uno qualsiasi dei registri di ingresso per i segnali di controllo dinamico La sorgente di clock per i registri di input per sub, accumulate, loadconst e negate deve essere la stessa.
Cyclone 10 GX Segnali core IP DSP a virgola fissa nativi

La figura seguente mostra i segnali di ingresso e di uscita del core IP DSP Native Fixed Point di Cyclone 10 GX.

Cyclone 10 GX Segnali core IP DSP a virgola fissa nativi

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

Segnali di ingresso dati
Nome del segnale Tipo Larghezza Descrizione
ascia[] Ingresso 27 Ingresso bus dati al moltiplicatore superiore.
Ay[] Ingresso 27 Ingresso bus dati al moltiplicatore superiore.

Quando il pre-adder è abilitato, questi segnali vengono forniti come segnali di ingresso al pre-adder superiore.

az[] Ingresso 26 Questi segnali sono segnali di ingresso al pre-sommatore superiore.

Questi segnali sono disponibili solo quando il pre-adder è abilitato. Questi segnali non sono disponibili in m18×18_più36

modalità operativa.

bx[] Ingresso 18 Ingresso bus dati al moltiplicatore inferiore.

Questi segnali non sono disponibili in m27×27 modalità operativa.

di[] Ingresso 19 Ingresso bus dati al moltiplicatore inferiore.

Quando il pre-sommatore è abilitato, questi segnali fungono da segnali di ingresso per il pre-sommatore inferiore.

Questi segnali non sono disponibili in m27×27 modalità operativa.

bz[] Ingresso 18 Questi segnali sono segnali di ingresso al pre-sommatore inferiore. Questi segnali sono disponibili solo quando il pre-adder è abilitato. Questi segnali non sono disponibili in m27×27 m18×18_più36 modalità operative.
Segnali di uscita dati
Nome del segnale Tipo Larghezza descrizione
risultato[] Produzione 64 Uscita bus dati dal moltiplicatore superiore.

Questi segnali supportano fino a 37 bit per m18×18_pieno modalità operativa.

risultatob[] Produzione 37 Uscita bus dati dal moltiplicatore inferiore.

Questi segnali sono disponibili solo in m18×18_pieno modalità operativa.

Segnali Clock, Enable e Clear

Nome del segnale Tipo Larghezza Descrizione
clic[] Ingresso 3 Segnali di clock in ingresso per tutti i registri.

Questi segnali di clock sono disponibili solo se uno qualsiasi dei registri di input, dei registri della pipeline o del registro di output è impostato su Orologio0, Orologio1, O Orologio2.

• clic[0] = Orologio0

• clic[1] = Orologio1

• clic[2] = Orologio2

ena[] Ingresso 3 Abilitazione orologio per clk[2:0]. Questo segnale è attivo-Alto.

• ena[0] è per Orologio0

• ena[1] è per Orologio1

• ena[2] è per Orologio2

aclr[] Ingresso 2 Segnali di ingresso chiari asincroni per tutti i registri. Questo segnale è attivo-Alto.

Utilizzo aclr[0] per tutti i registri di ingresso e l'uso aclr[1] per tutti i registri della pipeline e il registro di output.

Per impostazione predefinita, questo segnale è deasserito.

Segnali di controllo dinamico

Nome del segnale Tipo Larghezza Descrizione
sub Ingresso 1 Segnale di ingresso per sommare o sottrarre l'uscita del moltiplicatore superiore con l'uscita del moltiplicatore inferiore.

• Deassert questo segnale per specificare l'operazione di addizione.

• Asserire questo segnale per specificare l'operazione di sottrazione.

Per impostazione predefinita, questo segnale è deasserito. Puoi affermare o deasserire questo segnale durante il runtime.(3)

negare Ingresso 1 Segnale di ingresso per sommare o sottrarre la somma dei moltiplicatori superiore e inferiore con i dati dei segnali concatenati.

• Deassert questo segnale per specificare l'operazione di addizione.

• Asserire questo segnale per specificare l'operazione di sottrazione.

Per impostazione predefinita, questo segnale è deasserito. Puoi affermare o deasserire questo segnale durante il runtime.(3)

accumulare Ingresso 1 Segnale di ingresso per abilitare o disabilitare la funzione dell'accumulatore.

• Annullare questo segnale per disabilitare la funzione dell'accumulatore.

• Asserire questo segnale per abilitare la funzione dell'accumulatore.

Per impostazione predefinita, questo segnale è deasserito. Puoi affermare o deasserire questo segnale durante il runtime.(3)

cost.carico Ingresso 1 Segnale di ingresso per abilitare o disabilitare la funzione costante di carico.

• Deasserire questo segnale per disabilitare la funzione della costante di carico.

• Asserire questo segnale per abilitare la funzione della costante di carico.

Per impostazione predefinita, questo segnale è deasserito. Puoi affermare o deasserire questo segnale durante il runtime.(3)

Segnali coefficienti interni

Nome del segnale Tipo Larghezza Descrizione
coefsela[] Ingresso 3 Segnali di selezione dell'ingresso per 8 valori di coefficiente definiti dall'utente per il moltiplicatore superiore. I valori dei coefficienti sono memorizzati nella memoria interna e specificati dai parametri coef_a_0 A coef_a_7.

• coefsela[2:0] = 000 si riferisce a coef_a_0

• coefsela[2:0] = 001 si riferisce a coef_a_1

• coelsela[2:0] = 010 si riferisce a coef_a_2

• … e così via.

Questi segnali sono disponibili solo quando la funzione del coefficiente interno è abilitata.

coefselb[] Ingresso 3 Segnali di selezione dell'ingresso per 8 valori di coefficiente definiti dall'utente per il moltiplicatore inferiore. I valori dei coefficienti sono memorizzati nella memoria interna e specificati dai parametri coef_b_0 A coef_b_7.

• coefselb[2:0] = 000 si riferisce a coef_b_0

• coefselb[2:0] = 001 si riferisce a coef_b_1

• coelselb[2:0] = 010 si riferisce a coef_b_2

• … e così via.

Questi segnali sono disponibili solo quando la funzione del coefficiente interno è abilitata.

Segnali in cascata in ingresso

Nome del segnale Tipo Larghezza Descrizione
scansione[] Ingresso 27 Bus dati di ingresso per modulo ingresso in cascata.

Collegare questi segnali ai segnali di scanout dal core DSP precedente.

scansione[] Uscita 27 Bus dati di uscita del modulo cascata di ingressi.

Collegare questi segnali ai segnali scanin del core DSP successivo.

Segnali di uscita in cascata

Nome del segnale Tipo Larghezza Descrizione
concatena[] Ingresso 64 Bus dati di ingresso per modulo uscita in cascata.

Collega questi segnali ai segnali di chainout dal core DSP precedente.

catena[] Produzione 64 Bus dati di uscita del modulo cascata di uscite.

Collega questi segnali ai segnali concatenati del core DSP successivo.

Cronologia delle revisioni del documento per la guida per l'utente di Cyclone 10 GX Native Fixed Point DSP IP Core

Data Versione Cambiamenti
Novembre 2017 2017.11.06 Versione iniziale.

Società Intel. Tutti i diritti riservati. Intel, il logo Intel e altri marchi Intel sono marchi di Intel Corporation o delle sue consociate. Intel garantisce le prestazioni dei suoi prodotti FPGA e semiconduttori in base alle specifiche correnti in conformità con la garanzia standard di Intel, ma si riserva il diritto di apportare modifiche a qualsiasi prodotto e servizio in qualsiasi momento senza preavviso. Intel non si assume alcuna responsabilità derivante dall'applicazione o dall'uso di informazioni, prodotti o servizi qui descritti, salvo quanto espressamente concordato per iscritto da Intel. Si consiglia ai clienti Intel di ottenere la versione più recente delle specifiche del dispositivo prima di fare affidamento su qualsiasi informazione pubblicata e prima di effettuare ordini per prodotti o servizi.

Altri nomi e marchi potrebbero essere rivendicati come proprietà di terzi.

Documenti / Risorse

Intel UG-20094 Cyclone 10 GX Nucleo IP DSP a virgola fissa nativa [pdf] Guida utente
UG-20094 Cyclone 10 GX Core IP DSP a virgola fissa nativa, UG-20094, Core IP DSP a virgola fissa nativa Cyclone 10 GX, Core IP DSP a virgola fissa nativa, Core IP DSP a virgola fissa, Core IP DSP

Riferimenti

Lascia un commento

Il tuo indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *