Logo Intel1

Contenuto nascondere
1 GPIO Intel® FPGA IP Guida dell'utente

GPIO Intel® FPGA IP Guida dell'utente


Dispositivi Intel® Arria® 10 e Intel® Cyclone® 10 GX

Aggiornato per Intel® Quartus® Prime Design Suite: 21.2
Versione IP: 20.0.0

IP FPGA Intel GPIO - Feedback Versione online                                                               ID: 683136
GPIO Intel FPGA IP - In tutto il mondo Invia feedback             ug-altera_gpio            Versione: 2021.07.15


Il core IP GPIO Intel® FPGA supporta le funzionalità e i componenti GPIO (General Purpose I/O). È possibile utilizzare GPIO in applicazioni generiche che non sono specifiche per ricetrasmettitori, interfacce di memoria o LVDS.

Il core IP GPIO è disponibile solo per i dispositivi Intel Arria® 10 e Intel Cyclone® 10 GX. Se si esegue la migrazione dei progetti dai dispositivi Stratix® V, Arria V o Cyclone V, è necessario migrare i core IP ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR o ALTIOBUF.

Informazioni correlate

Informazioni sulla versione per GPIO Intel FPGA IP

Le versioni Intel FPGA IP corrispondono alle versioni del software Intel Quartus® Prime Design Suite fino alla v19.1. A partire dalla versione 19.2 del software Intel Quartus Prime Design Suite, Intel FPGA IP ha un nuovo schema di controllo delle versioni.


Intel Corporation. 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 attuali 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 qualsiasi informazione, prodotto o servizio qui descritto, 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 possono essere rivendicati come proprietà di altri.

Certificato ISO 9001: 2015

Il numero di versione Intel FPGA IP (XYZ) può cambiare con ciascuna versione del software Intel Quartus Prime. Un cambiamento in:

  • X indica una revisione importante dell'IP. Se aggiorni il software Intel Quartus Prime, devi rigenerare l'IP.
  • Y indica che l'IP include nuove funzionalità. Rigenera il tuo IP per includere queste nuove funzionalità.
  • Z indica che l'IP include modifiche minori. Rigenera il tuo IP per includere queste modifiche.

Tabella 1. Informazioni sulla versione corrente di GPIO Intel FPGA IP Core

Articolo

Descrizione

Versione IP 20.0.0
Versione Intel Quartus Prime 21.2
Data di rilascio 2021.06.23
Funzionalità IP GPIO Intel FPGA

Il core IP GPIO include funzionalità per supportare i blocchi I/O del dispositivo. È possibile utilizzare l'editor di parametri Intel Quartus Prime per configurare il core IP GPIO.

Il core IP GPIO fornisce questi componenti:

  • Double data rate input/output (DDIO): un componente digitale che raddoppia o dimezza la velocità dati di un canale di comunicazione.
  • Catene di ritardo: configura le catene di ritardo per eseguire un ritardo specifico e assistere nella chiusura della temporizzazione I/O.
  • Buffer I/O: collegano i pad all'FPGA.
Percorsi dati IP GPIO Intel FPGA

Figura 1. Alto livello View di GPIO single-ended

IP FPGA Intel GPIO - Figura 1

Tabella 2. Modalità di percorso dati core IP GPIO

Percorso dati

Modalità di registrazione
Bypassare Registro semplice

I/O DDR

Tariffa piena

Metà tariffa

Ingresso I dati vanno dall'elemento di ritardo al core, bypassando tutti gli I/O a doppia velocità dati (DDIO). Il DDIO full-rate funziona come un semplice registro, bypassando i DDIO half-rate. L'installatore sceglie se impacchettare il registro nell'I/O o implementare il registro nel nucleo, a seconda dell'area e dei compromessi temporali. Il DDIO full-rate funziona come un normale DDIO, bypassando i DDIO half-rate. Il DDIO full-rate funziona come un normale DDIO. I DDIO half-rate convertono i dati full-rate in dati half-rate.
Produzione I dati vanno dal core direttamente all'elemento di ritardo, bypassando tutti i DDIO. Il DDIO full-rate funziona come un semplice registro, bypassando i DDIO half-rate. L'installatore sceglie se impacchettare il registro nell'I/O o implementare il registro nel nucleo, a seconda dell'area e dei compromessi temporali. Il DDIO full-rate funziona come un normale DDIO, bypassando i DDIO half-rate. Il DDIO full-rate funziona come un normale DDIO. I DDIO half-rate convertono i dati full-rate in dati half-rate.
bidirezionale Il buffer di output guida sia un pin di output che un buffer di input. Il DDIO a tariffa piena funziona come un semplice registro. Il buffer di output guida sia un pin di output che un buffer di input. Il DDIO full-rate funziona come un normale DDIO. Il buffer di output guida sia un pin di output che un buffer di input. Il buffer di input guida un set di tre flip-flop. Il DDIO full-rate funziona come un normale DDIO. I DDIO a metà velocità convertono i dati a velocità piena in metà velocità. Il buffer di output guida sia un pin di output che un buffer di input. Il buffer di input guida un set di tre flip-flop.

Se si utilizzano segnali asincroni chiari e preimpostati, tutti i DDIO condividono questi stessi segnali.

I DDIO half-rate e full-rate si connettono a clock separati. Quando si utilizzano DDIO half-rate e full-rate, il clock full-rate deve funzionare al doppio della frequenza half-rate. È possibile utilizzare diverse relazioni di fase per soddisfare i requisiti di temporizzazione.

Informazioni correlate
Bit alti e bassi del bus di ingresso e uscita a pagina 12

Percorso di input

Il pad invia i dati al buffer di input e il buffer di input alimenta l'elemento di ritardo. Dopo che i dati vanno all'uscita dell'elemento di ritardo, i multiplexer di bypass programmabili selezionano le caratteristiche e i percorsi da utilizzare. Ogni percorso di ingresso contiene due stages di DDIO, che sono a tariffa piena e metà tariffa.

Figura 2. Semplificato View del percorso di input GPIO single-ended

IP FPGA Intel GPIO - Figura 2

  1. Il pad riceve i dati.
  2. DDIO IN (1) acquisisce i dati sui fronti di salita e di discesa di ck_fr e invia i dati, i segnali (A) e (B) nella seguente figura della forma d'onda, a velocità dati singola.
  3. DDIO IN (2) e DDIO IN (3) dimezzano la velocità dati.
  4. dout[3:0] presenta i dati come un bus half-rate.

Figura 3. Forma d'onda del percorso di ingresso in modalità DDIO con conversione Half-Rate

In questa figura, i dati vanno dal clock full-rate a double data rate a half-rate clock a single data rate. La velocità dati è divisa per quattro e la dimensione del bus è aumentata dello stesso rapporto. Il throughput complessivo attraverso il core IP GPIO rimane invariato.

La relazione di temporizzazione effettiva tra i diversi segnali può variare a seconda del design, dei ritardi e delle fasi specifici scelti per i clock full-rate e half-rate.

IP FPGA Intel GPIO - Figura 3

Nota: il core IP GPIO non supporta la calibrazione dinamica dei pin bidirezionali. Per le applicazioni che richiedono la calibrazione dinamica dei pin bidirezionali, fare riferimento alle informazioni correlate.

Informazioni correlate

Uscita e percorsi di abilitazione uscita

L'elemento di ritardo dell'uscita invia i dati al pad attraverso il buffer di uscita.

Ogni percorso di uscita contiene due stages di DDIO, che sono metà tariffa e tariffa intera.

Figura 4. Semplificato View del percorso di output GPIO single-ended

IP FPGA Intel GPIO - Figura 4

Figura 5. Forma d'onda del percorso di uscita in modalità DDIO con conversione Half-Rate

IP FPGA Intel GPIO - Figura 5

Figura 6. Semplificato View del percorso di abilitazione uscita

IP FPGA Intel GPIO - Figura 6

La differenza tra il percorso di output e il percorso di abilitazione output (OE) è che il percorso OE non contiene DDIO full-rate. Per supportare le implementazioni di registri compressi nel percorso OE, un semplice registro funziona come DDIO full-rate. Per lo stesso motivo, è presente solo un DDIO half-rate.

Il percorso OE opera nelle seguenti tre modalità fondamentali:

  • Bypass: il core invia i dati direttamente all'elemento di ritardo, bypassando tutti i DDIO.
  • Packed Register: bypassa DDIO a metà velocità.
  • Output SDR a velocità dimezzata: i DDIO a velocità dimezzata convertono i dati da velocità piena a velocità dimezzata.

Nota: il core IP GPIO non supporta la calibrazione dinamica dei pin bidirezionali. Per le applicazioni che richiedono la calibrazione dinamica dei pin bidirezionali, fare riferimento alle informazioni correlate.

Informazioni correlate

Segnali di interfaccia IP GPIO Intel FPGA

A seconda delle impostazioni dei parametri specificate, sono disponibili diversi segnali di interfaccia per il core IP GPIO.

Figura 7. Interfacce principali IP GPIO

IP FPGA Intel GPIO - Figura 7

Figura 8. Segnali dell'interfaccia GPIO

IP FPGA Intel GPIO - Figura 8

Tabella 3. Segnali interfaccia pad

L'interfaccia pad è la connessione fisica dal core IP GPIO al pad. Questa interfaccia può essere un'interfaccia di input, output o bidirezionale, a seconda della configurazione del core IP. In questa tabella, SIZE è la larghezza dei dati specificata nell'editor dei parametri principali IP.

Nome del segnale

Direzione

Descrizione

pad_in[DIMENSIONE-1:0]

Ingresso

Segnale di ingresso dal pad.
pad_in_b[DIMENSIONE-1:0]

Ingresso

Nodo negativo del segnale di ingresso differenziale dal pad. Questa porta è disponibile se si accende il Usa buffer differenziale opzione. 
pad_out[SIZE-1:0]

Produzione

Segnale di uscita al pad.
pad_out_b[SIZE-1:0]

Produzione

Nodo negativo del segnale di uscita differenziale al pad. Questa porta è disponibile se si accende il Usa buffer differenziale opzione.
pad_io[DIMENSIONE-1:0]

bidirezionale

Collegamento del segnale bidirezionale con il pad.
pad_io_b[DIMENSIONE-1:0]

bidirezionale

Nodo negativo della connessione del segnale bidirezionale differenziale con il pad. Questa porta è disponibile se si accende il Usa buffer differenziale opzione.

Tabella 4. Segnali interfaccia dati

L'interfaccia dati è un'interfaccia di input o output dal core IP GPIO al core FPGA. In questa tabella, SIZE è la larghezza dei dati specificata nell'editor dei parametri principali IP.

Nome del segnale

Direzione

Descrizione

din[DATA_SIZE-1:0]

Ingresso

Ingresso dati dal core FPGA in uscita o in modalità bidirezionale.
DATA_SIZE dipende dalla modalità di registrazione:
  • Ignora o registra semplicemente: DATA_SIZE = SIZE
  • DDIO senza logica half-rate: DATA_SIZE = 2 × SIZE
  • DDIO con logica half-rate: DATA_SIZE = 4 × SIZE
dout[DATA_SIZE-1:0]

Produzione

Uscita dati al core FPGA in modalità input o bidirezionale,
DATA_SIZE dipende dalla modalità di registrazione:
  • Ignora o registra semplicemente: DATA_SIZE = SIZE
  • DDIO senza logica half-rate: DATA_SIZE = 2 × SIZE
  • DDIO con logica half-rate: DATA_SIZE = 4 × SIZE
oe[OE_SIZE-1:0]

Ingresso

Ingresso OE dal core FPGA in modalità di output con Abilita la porta di abilitazione dell'uscita acceso o modalità bidirezionale. OE è attivo alto.
Quando si trasmettono dati, impostare questo segnale su 1. Quando si ricevono dati, impostare questo segnale su 0. OE_SIZE dipende dalla modalità di registro:
  • Ignora o registra semplicemente: DATA_SIZE = SIZE
  • DDIO senza logica half-rate: DATA_SIZE = SIZE
  • DDIO con logica half-rate: DATA_SIZE = 2 × SIZE

Tabella 5. Segnali interfaccia orologio

L'interfaccia dell'orologio è un'interfaccia dell'orologio di ingresso. È composto da diversi segnali, a seconda della configurazione. Il core IP GPIO può avere zero, uno, due o quattro ingressi di clock. Le porte di clock appaiono in modo diverso nelle diverse configurazioni per riflettere la funzione effettiva svolta dal segnale di clock.

Nome del segnale

Direzione

Descrizione

ck

Ingresso

Nei percorsi di input e output, questo clock alimenta un registro compresso o DDIO se si disattiva il Logica di metà tasso parametro.
In modalità bidirezionale, questo clock è l'unico clock per i percorsi di input e output se si disattiva il Clock di ingresso/uscita separati parametro.
ck_fr

Ingresso

Nei percorsi di input e output, questi clock alimentano i DDIO full-rate e half-rate se si attiva il Logica di metà tasso parametro.
In modalità bidirezionale, i percorsi di input e output utilizzano questi clock se si disattiva il Clock di ingresso/uscita separati parametro.

ck_hr

ck_in

Ingresso

In modalità bidirezionale, questi clock alimentano un registro compresso o DDIO nei percorsi di input e output se si specificano entrambe queste impostazioni:
  • Spegni il Logica di metà tasso parametro.
  • Accendi il Clock di ingresso/uscita separati parametro.
ck_out
ck_fr_in

Ingresso

In modalità bidirezionale, questi clock alimentano un DDIOS full-rate e half-rate nei percorsi di input e output se si specificano entrambe queste impostazioni
  • Accendi il Logica di metà tasso parametro.
  • Accendi il Clock di ingresso/uscita separati parametro.

Per esempioample, ck_fr_out alimenta il DDIO full-rate nel percorso di output.

ck_fr_out
ck_hr_in
ck_hr_out
ponte

Ingresso

Abilitazione orologio.

Tabella 6. Segnali dell'interfaccia di terminazione

L'interfaccia di terminazione collega il core IP GPIO ai buffer I/O.

Nome del segnale

Direzione

Descrizione

controllo di sterminio in serie

Ingresso

Ingresso dal blocco di controllo della terminazione (OCT) ai buffer. Imposta il valore dell'impedenza della serie del buffer.
controllo di terminazione parallelo

Ingresso

Ingresso dal blocco di controllo della terminazione (OCT) ai buffer. Imposta il valore dell'impedenza parallela del buffer.

Tabella 7. Reset segnali interfaccia

L'interfaccia di ripristino collega il core IP GPIO ai DDIO.

Nome del segnale

Direzione

Descrizione

scrl

Ingresso

Ingresso chiaro sincrono. Non disponibile se abiliti sset.
aclr

Ingresso

Ingresso chiaro asincrono. Alto attivo. Non disponibile se abiliti aset.
insieme

Ingresso

Ingresso insieme asincrono. Alto attivo. Non disponibile se si abilita aclr.
isset

Ingresso

Ingresso set sincrono. Non disponibile se abiliti sclr.

Informazioni correlate
Bit alti e bassi del bus di ingresso e uscita a pagina 12

Segnali condivisi
  • I percorsi di input, output e OE condividono gli stessi segnali chiari e preimpostati.
  • L'output e il percorso OE condividono gli stessi segnali di clock.
Ordine di bit di dati per l'interfaccia dati

Figura 9. Convenzione dell'ordine di bit dei dati

Questa figura mostra la convenzione dell'ordine dei bit per i segnali dati din, dout e oe.

IP FPGA Intel GPIO - Figura 9

  • Se il valore della dimensione del bus dati è SIZE, l'LSB si trova nella posizione più a destra.
  • Se il valore della dimensione del bus dati è 2 × SIZE, il bus è composto da due parole di SIZE .
  • Se il valore della dimensione del bus dati è 4 × SIZE, il bus è composto da quattro parole di SIZE.
  • L'LSB è nella posizione più a destra di ogni parola.
  • La parola più a destra specifica la prima parola in uscita per i bus di uscita e la prima parola in entrata per i bus di ingresso.

Informazioni correlate
Percorso di input a pagina 5

Bit alti e bassi del bus di ingresso e uscita

I bit alti e bassi nei segnali di ingresso o uscita sono inclusi nei bus di ingresso e uscita din e dout.

Bus di ingresso

Per il bus din, se datain_h e datain_l sono i bit alti e bassi, con ciascuna larghezza datain_width:

  • datain_h = din[(2 × datain_width – 1):datain_width]
  • dati_l = din[(larghezza_dati – 1):0]

Per esempioample, per din[7:0] = 8'b11001010:

  • datain_h = 4'b1100
  • datain_l = 4'b1010

Bus di uscita

Per il bus dout, se dataout_h e dataout_l sono i bit alti e bassi, con ciascuna larghezza dataout_width:

  • dataout_h = dout[(2 × dataout_width – 1):dataout_width]
  • dataout_l = dout[(larghezza_dataout – 1):0]

Per esempioample, per dout[7:0] = 8'b11001010:

  • dataout_h = 4'b1100
  • dataout_l = 4'b1010
Segnali di interfaccia dati e clock corrispondenti

Tabella 8. Segnali dell'interfaccia dati e clock corrispondenti

Nome del segnale 

Configurazione dei parametri Orologio
Modalità di registrazione Metà tariffa

Orologi separati

frastuono
  • Registro semplice
  • DDI

Spento

Spento

ck
DDI

On

Spento

ck_hr
  • Registro semplice
  • DDI

Spento

On

ck_in
DDI

On

On

ck_hr_in
  • dubbio
  • oe
  • Registro semplice
  • DDI

Spento

Spento

ck
DDI

On

Spento

ck_hr
  • Registro semplice
  • DDI

Spento

On

ck_out
DDI

On

On

ck_hr_out
  • scrl
  • isset
  • Tutti i segnali del pad
  • Registro semplice
  • DDI

Spento

Spento

ck
DDI

On

Spento

ck_fr
  • Registro semplice
  • DDI

Spento

On

  • Percorso di input: ck_in
  • Percorso di uscita: ck_out
DDI

On

On

  • Percorso di input: ck_fr_in
  • Percorso di uscita: ck_fr_out
Verifica dell'utilizzo delle risorse e delle prestazioni di progettazione

È possibile fare riferimento ai rapporti di compilazione di Intel Quartus Prime per ottenere dettagli sull'utilizzo delle risorse e sulle prestazioni del progetto.

  1. Nel menu, fare clic su Elaborazione ➤ Avvia compilazione per eseguire una compilazione completa.
  2. Dopo aver compilato il disegno, fare clic su Elaborazione ➤ Rapporto di compilazione.
  3. Utilizzando il Sommario, vai a Installatore ➤ Sezione Risorse.
    un. a view le informazioni sull'utilizzo delle risorse, selezionare Riepilogo sull'utilizzo delle risorse.
    B. Per view le informazioni sull'utilizzo delle risorse, selezionare Utilizzo delle risorse per entità.
Impostazioni dei parametri IP FPGA Intel GPIO

È possibile configurare le impostazioni dei parametri per il core IP GPIO nel software Intel Quartus Prime. Ci sono tre gruppi di opzioni: Generale, Respingente, E Registri.

Tabella 9. Parametri principali IP GPIO - Generale

Parametro

Condizione Valori consentiti

Descrizione

Direzione dei dati

  • Ingresso
  • Produzione 
  • Bidir
Specifica la direzione dei dati per il GPIO.
Larghezza dei dati

Da 1 a 128 Specifica la larghezza dei dati.
Utilizza nomi di porte legacy di primo livello

  • On
  • Spento
Utilizzare gli stessi nomi di porta dei dispositivi Stratix V, Arria V e Cyclone V.
Per esempioample, dout diventa dataout_h e dataout_l e din diventa datain_h e datain_l.
Nota: il comportamento di queste porte è diverso rispetto ai dispositivi Stratix V, Arria V e Cyclone V. Per le linee guida sulla migrazione, fare riferimento alle informazioni correlate.

Tabella 10. Parametri GPIO IP Core – Buffer

Parametro

Condizione Valori consentiti

Descrizione

Usa buffer differenziale

  • On 
  • Spento
Se attivato, abilita i buffer I/O differenziali.
Usa un buffer pseudo differenziale
  • Direzione dati = Uscita
  • Usa buffer differenziale = On 
  • On 
  • Spento
Se attivato in modalità di output, abilita i buffer di output pseudo differenziali.
Questa opzione viene attivata automaticamente per la modalità bidirezionale se si attiva Usa buffer differenziale.
Utilizzare circuiti di attesa bus
  • Direzione dati = Input o Bidir
  • Usa buffer differenziale = Off
  • On 
  • Spento
Se attivato, il circuito di mantenimento del bus può trattenere debolmente il segnale su un pin I/O nel suo ultimo stato pilotato in cui lo stato del buffer di uscita sarà 1 o 0 ma non ad alta impedenza.
Utilizzare l'uscita a scarico aperto
  • Direzione dati = Output o Bidir
  • Usa buffer differenziale = Off
  • On 
  • Spento
Se attivata, l'uscita open drain consente al dispositivo di fornire segnali di controllo a livello di sistema come segnali di interruzione e abilitazione alla scrittura che possono essere asseriti da più dispositivi nel sistema.
Abilita la porta di abilitazione dell'uscita Direzione dati = Uscita
  • On 
  • Spento
Se attivata, abilita l'input dell'utente alla porta OE. Questa opzione viene attivata automaticamente per la modalità bidirezionale.
Abilita le porte di terminazione in serie/in parallelo

  • On 
  • Spento
Se attivata, abilita le porte di controllo di terminazione in serie e di controllo di terminazione in parallelo del buffer di output.

Tabella 11. Parametri GPIO IP Core – Registri

Parametro Condizione Valori consentiti Descrizione
Modalità di registrazione

  • Nessuno 
  • Registro semplice 
  • DDI
Specifica la modalità di registrazione per il core IP GPIO:
  • Nessuno—Specifica una semplice connessione via cavo da/verso il buffer.
  • Registro semplice—Specifica che il DDIO viene utilizzato come registro semplice in modalità a velocità dati singola (SDR). L'installatore può impacchettare questo registro nell'I/O.
  • DDI— specifica che il nucleo IP utilizza il DDIO.
Abilita la porta di cancellazione/preimpostazione sincrona
  • Modalità registro = DDIO
  • Nessuno 
  • Chiaro 
  • Preimpostato
Specifica come implementare la porta di reimpostazione sincrona.
  • Nessuno—Disabilita la porta di ripristino sincrono.
  • Chiaro—Abilita la porta SCLR per le cancellazioni sincrone.
  • Preimpostato—Abilita la porta SSET per la preimpostazione sincrona.
Abilita la porta di cancellazione/preimpostazione asincrona
  • Modalità registro = DDIO
  • Nessuno 
  • Chiaro 
  • Preimpostato
Specifica come implementare la porta di reimpostazione asincrona.
  • Nessuno—Disabilita la porta di ripristino asincrona.
  • Chiaro—Abilita la porta ACLR per le cancellazioni asincrone.
  • Preimpostato—Abilita la porta ASET per la preimpostazione asincrona.

I segnali ACLR e ASET sono attivi alti.

Abilita le porte di abilitazione dell'orologio Modalità registro = DDIO
  • On 
  • Spento
  • On—espone la porta di abilitazione orologio (CKE) per consentire di controllare quando i dati vengono sincronizzati in entrata o in uscita. Questo segnale impedisce il passaggio dei dati senza il tuo controllo.
  • Spento—la porta di abilitazione dell'orologio non è esposta e i dati passano sempre automaticamente attraverso il registro.
Logica di metà tasso Modalità registro = DDIO
  • On 
  • Spento
Se attivato, abilita DDIO a metà velocità.
Orologi di ingresso / uscita separati
  • Direzione dati = Bidir 
  • Modalità registro = registro semplice o DDIO
  • On 
  • Spento
Se attivato, abilita clock separati (CK_IN e CK_OUT) per i percorsi di ingresso e uscita in modalità bidirezionale.

Informazioni correlate

  • Bit alti e bassi del bus di ingresso e uscita a pagina 12
  • Linea guida: scambio delle porte datain_h e datain_l nell'IP migrato a pagina 23
Registrati Imballaggio

Il core IP GPIO consente di impacchettare il registro nella periferia per risparmiare spazio e utilizzo delle risorse.

È possibile configurare il DDIO full-rate sul percorso di input e output come flip flop. Per farlo, aggiungi le assegnazioni .qsf elencate in questa tabella.

Tabella 12. Registrare l'imballaggio delle assegnazioni QSF

Sentiero

Assegnazione QSF

Impacchettamento del registro di input Assegnazione QSF set_instance_assignment -name FAST_INPUT_REGISTER ON -to
Imballaggio del registro di uscita set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to
L'output abilita l'impacchettamento del registro set_instance_assignment -name FAST_OUTPUT_ENABLE_REGISTER ON -to

Nota: queste assegnazioni non garantiscono l'impacchettamento del registro. Tuttavia, questi incarichi consentono all'Installatore di trovare una collocazione legale. In caso contrario, il Fitter mantiene il flip flop nel nucleo.

Temporizzazione IP FPGA Intel GPIO

Le prestazioni del core IP GPIO dipendono dai vincoli di I/O e dalle fasi di clock. Per convalidare i tempi per la configurazione GPIO, Intel consiglia di utilizzare Timing Analyzer.

Informazioni correlate
L'analizzatore di temporizzazione Intel Quartus Prime

Componenti di temporizzazione

I componenti di temporizzazione core GPIO IP sono costituiti da tre percorsi.

  • Percorsi dell'interfaccia I/O: dall'FPGA ai dispositivi di ricezione esterni e dai dispositivi di trasmissione esterni all'FPGA.
  • Percorsi dell'interfaccia principale di dati e clock: dall'I/O al core e dal core all'I/O.
  • Percorsi di trasferimento: da DDIO half rate a full rate e da DDIO full rate a half rate.

Nota: Timing Analyzer tratta il percorso all'interno dei blocchi DDIO_IN e DDIO_OUT come scatole nere.

Figura 10. Componenti di temporizzazione del percorso di ingresso

IP FPGA Intel GPIO - Figura 10

Figura 11. Componenti di temporizzazione del percorso di uscita

IP FPGA Intel GPIO - Figura 11

Figura 12. Output Enable Path Timing Components

IP FPGA Intel GPIO - Figura 12

Elementi di ritardo

Il software Intel Quartus Prime non imposta automaticamente gli elementi di ritardo per massimizzare il gioco nell'analisi dei tempi di I/O. Per chiudere i tempi o massimizzare lo slack, impostare manualmente gli elementi di ritardo nelle impostazioni di Intel Quartus Prime file (.qsf).

Tabella 13. Elementi di ritardo .qsf Assegnazioni

Specificare queste assegnazioni nel file .qsf per accedere agli elementi di ritardo.

Elemento di ritardo .qsf Assegnazione
Elemento di ritardo in ingresso set_instance_assignment a -name INPUT_DELAY_CHAIN ​​<0..63>
Elemento di ritardo dell'uscita set_instance_assignment a -name OUTPUT_DELAY_CHAIN ​​<0..15>
Elemento di ritardo abilitazione uscita set_instance_assignment a -name OE_DELAY_CHAIN ​​<0..15>
Analisi dei tempi

Il software Intel Quartus Prime non genera automaticamente i vincoli temporali SDC per il core IP GPIO. È necessario inserire manualmente i vincoli temporali.

Seguire le linee guida sulla tempistica ed esample per garantire che Timing Analyzer analizzi correttamente la temporizzazione I/O.

  • Per eseguire un'analisi della temporizzazione corretta per i percorsi dell'interfaccia I/O, specificare i vincoli a livello di sistema dei pin di dati rispetto al pin dell'orologio di sistema nel file .sdc file.
  • Per eseguire un'analisi della temporizzazione corretta per i percorsi dell'interfaccia principale, definire queste impostazioni di clock nel file .sdc file:
    — Orologio ai registri principali
    — Orologio ai registri I/O per le modalità registro semplice e DDIO

Informazioni correlate
AN 433: Vincolo e analisi delle interfacce sincrone alla sorgente
Descrive le tecniche per limitare e analizzare le interfacce sincrone all'origine.

Registro di immissione velocità dati singola

Figura 13. Registro di input velocità dati singola

IP FPGA Intel GPIO - Figura 13

Tabella 14. Registro di input velocità dati singola Comando .sdc Esamples

Comando Comando Example Descrizione
crea_orologio create_clock -name sdr_in_clk -period
“100 MHz” sdr_in_clk
Crea l'impostazione del clock per il clock di ingresso.
set_input_delay set_input_delay -orologio sdr_in_clk
0.15 sdr_in_data
Indica all'analizzatore di temporizzazione di analizzare la temporizzazione dell'I/O di ingresso con un ritardo di ingresso di 0.15 ns.
Registro di ingresso DDIO full-rate o half-rate

Il lato di ingresso dei registri di ingresso DDIO full-rate e half-rate è lo stesso. È possibile vincolare correttamente il sistema utilizzando un orologio virtuale per modellare il trasmettitore off-chip sull'FPGA.

Figura 14. Registro di ingresso DDIO Full-Rate o Half-Rate

IP FPGA Intel GPIO - Figura 14

Tabella 15. Registro di ingresso DDIO Full-Rate o Half-Rate Comando .sdc Esamples

Comando Comando Example Descrizione
crea_orologio create_clock -nome orologio_virtuale
-periodo “200 MHz”
create_clock -name ddio_in_clk
-periodo “200 MHz” ddio_in_clk
Crea l'impostazione dell'orologio per l'orologio virtuale e l'orologio DDIO.
set_input_delay set_input_delay -clock orologio_virtuale
0.25 ddio_in_data
set_input_delay -add_delay
-clock_fall -clock virtual_clock 0.25
ddio_in_data
Indicare all'analizzatore di temporizzazione di analizzare il fronte di clock positivo e il fronte di clock negativo del trasferimento. Nota il -add_delay nel secondo comando set_input_delay.
set_false_path set_false_path -fall_from
virtual_clock -rise_to ddio_in_clk
set_false_path -rise_from
virtual_clock -fall_to ddio_in_clk
Indicare all'analizzatore di temporizzazione di ignorare il fronte di clock positivo al registro attivato dal fronte negativo e il fronte di clock negativo al registro attivato dal fronte positivo.

Nota: la frequenza ck_hr deve essere la metà della frequenza ck_fr. Se l'I/O PLL guida i clock, puoi prendere in considerazione l'utilizzo del comando derive_pll_clocks .sdc.

Registro di uscita a velocità dati singola

Figura 15. Registro di uscita a velocità dati singola

IP FPGA Intel GPIO - Figura 15

Tabella 16. Registro di uscita a velocità dati singola Comando .sdc Esamples

Comando Comando Example Descrizione
create_clock e create_generated_clock create_clock -nome sdr_out_clk
-periodo “100 MHz” sdr_out_clk
create_generated_clock -source
sdr_out_clk -nome sdr_out_outclk
sdr_out_outclk
Genera il clock di origine e il clock di uscita da trasmettere.
set_output_delay set_output_delay -orologio sdr_out_clk
0.45 sdr_out_data
Indica a Timing Analyzer di analizzare i dati di output da trasmettere rispetto al clock di output da trasmettere.
Registro di uscita DDIO full-rate o half-rate

Il lato di uscita dei registri di uscita DDIO full-rate e half-rate è lo stesso.

Tabella 17. Registro di uscita DDIO Comando .sdc Esamples

Comando Comando Example Descrizione
create_clock e create_generated_clock create_clock -name ddio_out_fr_clk
-periodo “200 MHz” ddio_out_fr_clk
create_generated_clock -source
ddio_out_fr_clk -nome
ddio_out_fr_outclk
ddio_out_fr_outclk
Genera i clock per il DDIO e il clock da trasmettere.
set_output_delay set_output_delay -orologio
ddio_out_fr_outclk 0.55
ddio_out_fr_data
set_output_delay -add_delay
-clock_fall -orologio
ddio_out_fr_outclk 0.55
ddio_out_fr_data
Indicare all'analizzatore di temporizzazione di analizzare i dati positivi e negativi rispetto al clock di uscita.
set_false_path set_false_path -rise_from
ddio_out_fr_clk -fall_to
ddio_out_fr_outclk
set_false_path -fall_from
ddio_out_fr_clk -rise_to
ddio_out_fr_outclk
Indica all'analizzatore di temporizzazione di ignorare il fronte di salita del clock sorgente rispetto al fronte di discesa del clock di uscita e il fronte di discesa del clock sorgente rispetto al fronte di salita del clock di uscita
Linee guida per la chiusura dei tempi

Per i registri di input GPIO, è probabile che il trasferimento I/O di input fallisca il tempo di attesa se non si imposta la catena di ritardo di input. Questo errore è causato dal ritardo dell'orologio maggiore del ritardo dei dati.

Per rispettare il tempo di attesa, aggiungi un ritardo al percorso dei dati di input utilizzando la catena di ritardo di input. In generale, la catena di ritardo in ingresso è di circa 60 ps per passo al grado di velocità 1. Per ottenere un'impostazione approssimativa della catena di ritardo di ingresso per passare il tempo, dividere l'allentamento della tenuta negativa per 60 ps.

Tuttavia, se l'I/O PLL guida i clock dei registri di ingresso GPIO (registro semplice o modalità DDIO), è possibile impostare la modalità di compensazione sulla modalità sincrona della sorgente. L'installatore tenterà di configurare il PLL di I/O per una migliore configurazione e manterrà il margine per l'analisi della temporizzazione di I/O in ingresso.

Per l'uscita GPIO e i registri di abilitazione dell'uscita, è possibile aggiungere un ritardo ai dati di uscita e al clock utilizzando le catene di ritardo di abilitazione dell'uscita e dell'uscita.

  • Se si osserva una violazione del tempo di configurazione, è possibile aumentare l'impostazione della catena di ritardo del clock di uscita.
  • Se si osserva una violazione del tempo di attesa, è possibile aumentare l'impostazione della catena di ritardo dei dati di output.
GPIO Intel FPGA IP Design esamples

Il core IP GPIO può generare design esample che corrispondono alla configurazione IP nell'editor dei parametri. Puoi usare questi design esample come riferimenti per istanziare il nucleo IP e il comportamento previsto nelle simulazioni.

Puoi generare il design esample dall'editor dei parametri di base IP GPIO. Dopo aver impostato i parametri desiderati, fare clic su Genera esampil design. Il core IP genera il design esample fonte files nella directory specificata.

Figura 16. Fonte Files nel Generated Design Exampli Directory

IP FPGA Intel GPIO - Figura 16

Nota: il file .qsys files sono per uso interno durante la progettazione exampsolo generazione. Non puoi modificare questi .qsys files.

GPIO IP Core sintetizzabile Intel Quartus Prime Design esample

Il design sintetizzabile example è un sistema Platform Designer pronto per la compilazione che puoi includere in un progetto Intel Quartus Prime.

Generazione e utilizzo del progetto esample

Per generare il design sintetizzabile Intel Quartus Prime example dalla fonte files, esegui il seguente comando nel design esampdirectory:

quartus_sh -t make_qii_design.tcl

Per specificare un dispositivo esatto da utilizzare, eseguire il comando seguente:

quartus_sh -t make_qii_design.tcl [nome_dispositivo]

Lo script TCL crea una directory qii che contiene il progetto ed_synth.qpf file. Puoi aprire e compilare questo progetto nel software Intel Quartus Prime.

GPIO IP Core Simulation Design esample

Il progetto di simulazione esample utilizza le impostazioni dei parametri principali dell'IP GPIO per creare l'istanza IP connessa a un driver di simulazione. L'autista genera traffico casuale e controlla internamente la legalità dei dati in uscita.

Utilizzando il design esample, puoi eseguire una simulazione usando un singolo comando, a seconda del simulatore che usi. La simulazione dimostra come utilizzare il core IP GPIO.

Generazione e utilizzo del progetto esample

Per generare il progetto di simulazione esample dalla fonte files per un simulatore Verilog, esegui il seguente comando nel design esampdirectory:

quartus_sh -t make_sim_design.tcl

Per generare il progetto di simulazione esample dalla fonte filePer un simulatore VHDL, esegui il seguente comando nel design esampdirectory:

quartus_sh -t make_sim_design.tcl VHDL

Lo script TCL crea una directory sim che contiene sottodirectory, una per ogni strumento di simulazione supportato. Puoi trovare gli script per ogni strumento di simulazione nelle directory corrispondenti.

Flusso di migrazione IP per dispositivi Arria V, Cyclone V e Stratix V

Il flusso di migrazione IP consente di migrare i core IP ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR e ALTIOBUF dei dispositivi Arria V, Cyclone V e Stratix V al core IP GPIO dei dispositivi Intel Arria 10 e Intel Cyclone 10 GX.

Questo flusso di migrazione IP configura il core IP GPIO in modo che corrisponda alle impostazioni dei core IP ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR e ALTIOBUF, consentendo di rigenerare il core IP.

Nota: alcuni core IP supportano il flusso di migrazione IP solo in modalità specifiche. Se il core IP è in una modalità non supportata, potrebbe essere necessario eseguire l'editor dei parametri IP per il core IP GPIO e configurare manualmente il core IP.

Migrazione dei core IP ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR e ALTIOBUF

Per eseguire la migrazione dei core IP ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR e ALTIOBUF al core IP IP FPGA Intel GPIO, attenersi alla seguente procedura:

  1. Apri il tuo core IP ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR o ALTIOBUF nell'editor dei parametri IP.
  2. Nel Famiglia di dispositivi attualmente selezionata, selezionare Intel Aria 10 or Intel Ciclone 10 GX.
  3. Clic Fine per aprire l'editor dei parametri IP GPIO.
    L'editor dei parametri IP configura le impostazioni di base IP GPIO simili alle impostazioni di base ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR o ALTIOBUF.
  4. Se ci sono impostazioni incompatibili tra i due, selezionare nuove impostazioni supportate.
  5. Clic Fine per rigenerare il nucleo IP.
  6. Sostituisci l'istanza del core IP ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR o ALTIOBUF in RTL con il core IP GPIO.

Nota: i nomi delle porte principali dell'IP GPIO potrebbero non corrispondere ai nomi delle porte principali dell'IP ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR o ALTIOBUF. Pertanto, la semplice modifica del nome core IP nell'istanza potrebbe non essere sufficiente.

Informazioni correlate
Bit alti e bassi del bus di ingresso e uscita a pagina 12

Linea guida: scambia le porte datain_h e datain_l nell'IP migrato

Quando esegui la migrazione del tuo IP GPIO dai dispositivi precedenti al core IP GPIO, puoi attivare Utilizza nomi di porte legacy di primo livello opzione nell'editor dei parametri di base IP GPIO. Tuttavia, il comportamento di queste porte nel core IP GPIO è diverso rispetto ai core IP utilizzati per i dispositivi Stratix V, Arria V e Cyclone V.

Il core IP GPIO indirizza queste porte ai registri di output su questi fronti di clock:

  • datain_h: sul fronte di salita di outclock
  • datain_l: sul fronte di discesa di outclock

Se hai migrato il tuo IP GPIO da dispositivi Stratix V, Arria V e Cyclone V, scambia le porte datain_h e datain_l quando crei un'istanza dell'IP generato dal core IP GPIO.

Informazioni correlate
Bit alti e bassi del bus di ingresso e uscita a pagina 12

Archivi della guida per l'utente di GPIO Intel FPGA IP

Le versioni IP sono le stesse delle versioni del software Intel Quartus Prime Design Suite fino alla v19.1. A partire dalla versione 19.2 o successiva del software Intel Quartus Prime Design Suite, i core IP hanno un nuovo schema di controllo delle versioni IP.

Se una versione IP core non è elencata, si applica la guida per l'utente per la versione IP core precedente.

Versione IP Core

Guida per l'utente

20.0.0 GPIO Intel FPGA IP Guida dell'utente: dispositivi Intel Arria 10 e Intel Cyclone 10 GX
19.3.0 GPIO Intel FPGA IP Guida dell'utente: dispositivi Intel Arria 10 e Intel Cyclone 10 GX
19.3.0 GPIO Intel FPGA IP Guida dell'utente: dispositivi Intel Arria 10 e Intel Cyclone 10 GX
18.1 GPIO Intel FPGA IP Guida dell'utente: dispositivi Intel Arria 10 e Intel Cyclone 10 GX
18.0 GPIO Intel FPGA IP Guida dell'utente: dispositivi Intel Arria 10 e Intel Cyclone 10 GX
17.1 Intel FPGA GPIO IP Core Guida per l'utente
17.0 Guida per l'utente di Altera GPIO IP Core
16.1 Guida per l'utente di Altera GPIO IP Core
16.0 Guida per l'utente di Altera GPIO IP Core
14.1 Guida per l'utente della megafunzione Altera GPIO
13.1 Guida per l'utente della megafunzione Altera GPIO
Cronologia delle revisioni del documento per GPIO Intel FPGA IP Guida dell'utente: dispositivi Intel Arria 10 e Intel Cyclone 10 GX

Versione del documento

Versione Intel Quartus Prime Versione IP

Cambiamenti

2021.07.15

21.2

20.0.0

Aggiornato il diagramma che mostra la semplificata view del percorso di input GPIO single-ended per aggiornare dout[0] a dout[3] e dout[3] a dout[0].

2021.03.29

21.1

20.0.0

Aggiornato il numero di versione IP GPIO a 20.0.0.

2021.03.12

20.4

19.3.0

Aggiornate le linee guida sulla migrazione IP per specificare che l'IP GPIO guida datain_h sul fronte di salita e datain_l sul fronte di discesa.

2019.10.01

19.3

19.3.0

Corretto errore tipografico nei codici di assegnazione .qsf nell'argomento relativo agli elementi di ritardo.

2019.03.04

18.1

18.1

Negli argomenti relativi al percorso di input e ai percorsi di abilitazione output e output:
  • Corrette le note negli argomenti per specificare che GPIO Intel FPGA IP non supporta la calibrazione dinamica dei pin bidirezionali.
  • Aggiunti collegamenti a PHY Lite per interfacce parallele Intel FPGA IP Core Guida dell'utente: dispositivi Intel Stratix 10, Intel Arria 10 e Intel Cyclone 10 GX per ulteriori informazioni sulle applicazioni che richiedono la calibrazione dinamica per i pin bidirezionali.

2018.08.28

18.0

18.0

  • Il documento è stato rinominato dalla Guida dell'utente Intel FPGA GPIO IP Core a GPIO Intel FPGA IP User Guide: Intel Arria 10 and Intel Cyclone 10 GX Devices.
  • Aggiunto un collegamento alla guida per l'utente di Intel Stratix 10 GPIO IP. 
  • L'IP è stato rinominato da "Intel FPGA GPIO" a "GPIO Intel FPGA IP". 
  • Corrette le istanze di "clk_fr" e "clk_hr" in "ck_fr" e "ck_hr". 
  • Aggiornati i diagrammi dei percorsi di ingresso e di uscita dell'IP GPIO per mostrare i nomi effettivi del segnale principale IP.
Data Versione Cambiamenti
Novembre 2017 2017.11.06
  • Aggiunto supporto per dispositivi Intel Cyclone 10 GX.
  • Aggiornati i nomi dei segnali in cifre in modo che corrispondano ai nomi dei segnali nel core IP GPIO.
  • Aggiunta la forma d'onda del percorso di uscita.
  • Rinominato "Altera GPIO IP core" in "Intel FPGA GPIO IP core".
  • Rinominato "Altera IOPLL IP core" in "Intel FPGA IOPLL IP core".
  • Rinominato "TimeQuest Timing Analyzer" in "Timing Analyzer".
  • Rinominato "Qsys" in "Platform Designer".
  • Chiarito che i segnali ASET e ACLR sono attivi alti.
Maggio 2017 2017.05.08
  • Aggiornata la tabella che elenca i parametri del buffer GPIO per specificare le condizioni per il file Utilizzare circuiti di attesa bus opzione parametro.
  • Ribattezzato Intel.
Ottobre 2016 2016.10.31
  • Aggiornata la forma d'onda del percorso di input.
  • Aggiunto un argomento che descrive i bit alti e bassi nei bus din e dout.
Agosto 2016 2016.08.05
  • Aggiunte note sul supporto OCT dinamico nel core IP GPIO.
  • Aggiornato l'argomento sulle impostazioni dei parametri per migliorare la precisione e la chiarezza.
  • Aggiornata la sezione relativa alla generazione del disegno esamplui.
  • Aggiunto un argomento di linee guida sul comportamento delle porte legacy durante la migrazione al core IP GPIO dai dispositivi Stratix V, Arria V e Cyclone V.
  • Riscritto e ristrutturato il documento per migliorarne la chiarezza e facilitarne la consultazione.
  • Modificate le istanze di Quartus II in Quartus Prime.
Agosto 2014 2014.08.18
  • Aggiunte informazioni sui tempi.
  • Aggiunte informazioni sull'imballaggio del registro.
  • Aggiunto Utilizza nomi di porte legacy di primo livello parametro. Questo è un nuovo parametro.
  • Aggiunte informazioni sull'imballaggio del registro.
  • Sostituito il termine megafunzione con core IP.
Novembre 2013 2013.11.29 Versione iniziale.

IP FPGA Intel GPIO - Feedback Invia feedback

GPIO Intel FPGA IP Guida dell'utente: dispositivi Intel Arria 10 e Intel Cyclone 10 GX

Documenti / Risorse

Intel GPIO Intel FPGA IP [pdf] Guida utente
GPIO Intel FPGA IP, GPIO, Intel FPGA IP, FPGA IP

Riferimenti

Lascia un commento

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