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
Versione online ID: 683136
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
- Flusso di migrazione IP per dispositivi Arria V, Cyclone V e Stratix V a pagina 22
- Guide all'implementazione di Intel Stratix 10 I/O
Fornisce la guida per l'utente di base GPIOIP per i dispositivi Intel Stratix 10. - 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 Qsys 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. - GPIO Intel FPGA IP Guida per l'utente Archivi a pagina 24
Fornisce un elenco di guide per l'utente per le versioni precedenti del core IP GPIO. - Double Data Rate I/O (ALTDDIO_IN, ALTDDIO_OUT e ALTDDIO_BIDIR) IP Core Guida per l'utente
- Buffer I/O (ALTIOBUF) IP Core Guida per l'utente
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.
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
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
- Il pad riceve i dati.
- 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.
- DDIO IN (2) e DDIO IN (3) dimezzano la velocità dati.
- 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.
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
- PHY Lite per interfacce parallele Intel FPGA IP Core Guida per l'utente: dispositivi Intel Stratix 10, Intel Arria 10 e Intel Cyclone 10 GX
Fornisce ulteriori informazioni per le applicazioni che richiedono l'OCT dinamico per i pin bidirezionali. - Uscita e percorsi di abilitazione uscita a pagina 7
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
Figura 5. Forma d'onda del percorso di uscita in modalità DDIO con conversione Half-Rate
Figura 6. Semplificato View del percorso di abilitazione uscita
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
- PHY Lite per interfacce parallele Intel FPGA IP Core Guida per l'utente: dispositivi Intel Stratix 10, Intel Arria 10 e Intel Cyclone 10 GX
Fornisce ulteriori informazioni per le applicazioni che richiedono l'OCT dinamico per i pin bidirezionali. - Percorso di input a pagina 5
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
Figura 8. Segnali dell'interfaccia GPIO
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:
|
dout[DATA_SIZE-1:0] |
Produzione |
Uscita dati al core FPGA in modalità input o bidirezionale, DATA_SIZE dipende dalla modalità di registrazione:
|
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:
|
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:
|
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
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
- 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.
- 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 |
|
Spento |
Spento |
ck |
DDI |
On |
Spento |
ck_hr | |
|
Spento |
On |
ck_in | |
DDI |
On |
On |
ck_hr_in | |
|
|
Spento |
Spento |
ck |
DDI |
On |
Spento |
ck_hr | |
|
Spento |
On |
ck_out | |
DDI |
On |
On |
ck_hr_out | |
|
|
Spento |
Spento |
ck |
DDI |
On |
Spento |
ck_fr | |
|
Spento |
On |
|
|
DDI |
On |
On |
|
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.
- Nel menu, fare clic su Elaborazione ➤ Avvia compilazione per eseguire una compilazione completa.
- Dopo aver compilato il disegno, fare clic su Elaborazione ➤ Rapporto di compilazione.
- 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 |
— |
|
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 |
— |
|
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 |
— |
|
Se attivato, abilita i buffer I/O differenziali. |
Usa un buffer pseudo differenziale |
|
|
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 |
|
|
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 |
|
|
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 |
|
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 |
— |
|
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 |
— |
|
Specifica la modalità di registrazione per il core IP GPIO:
|
Abilita la porta di cancellazione/preimpostazione sincrona |
|
|
Specifica come implementare la porta di reimpostazione sincrona.
|
Abilita la porta di cancellazione/preimpostazione asincrona |
|
|
Specifica come implementare la porta di reimpostazione asincrona.
I segnali ACLR e ASET sono attivi alti. |
Abilita le porte di abilitazione dell'orologio | Modalità registro = DDIO |
|
|
Logica di metà tasso | Modalità registro = DDIO |
|
Se attivato, abilita DDIO a metà velocità. |
Orologi di ingresso / uscita separati |
|
|
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
Figura 11. Componenti di temporizzazione del percorso di uscita
Figura 12. Output Enable Path Timing Components
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
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
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
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
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:
- Apri il tuo core IP ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR o ALTIOBUF nell'editor dei parametri IP.
- Nel Famiglia di dispositivi attualmente selezionata, selezionare Intel Aria 10 or Intel Ciclone 10 GX.
- 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. - Se ci sono impostazioni incompatibili tra i due, selezionare nuove impostazioni supportate.
- Clic Fine per rigenerare il nucleo IP.
- 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:
|
2018.08.28 |
18.0 |
18.0 |
|
Data | Versione | Cambiamenti |
Novembre 2017 | 2017.11.06 |
|
Maggio 2017 | 2017.05.08 |
|
Ottobre 2016 | 2016.10.31 |
|
Agosto 2016 | 2016.08.05 |
|
Agosto 2014 | 2014.08.18 |
|
Novembre 2013 | 2013.11.29 | Versione iniziale. |
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 |