
Brugervejledning til GPIO Intel® FPGA IP
Intel® Arria® 10 og Intel® Cyclone® 10 GX-enheder
Opdateret til Intel® Quartus® Prime Design Suite: 21.2
IP-version: 20.0.0
Online Version ID: 683136
Send feedback ug-altera_gpio Version: 2021.07.15
GPIO Intel® FPGA IP-kernen understøtter de generelle I/O-funktioner (GPIO) og komponenter. Du kan bruge GPIO'er i generelle applikationer, der ikke er specifikke for transceivere, hukommelsesgrænseflader eller LVDS.
GPIO IP-kernen er kun tilgængelig for Intel Arria® 10- og Intel Cyclone® 10 GX-enheder. Hvis du migrerer design fra Stratix® V-, Arria V- eller Cyclone V-enheder, skal du migrere ALTDDIO_IN-, ALTDDIO_OUT-, ALTDDIO_BIDIR- eller ALTIOBUF IP-kernerne.
Relateret information
- IP-migreringsflow for Arria V-, Cyclone V- og Stratix V-enheder på side 22
- Intel Stratix 10 I/O-implementeringsvejledninger
Leverer GPIOIP-kernebrugervejledningen til Intel Stratix 10-enheder. - Introduktion til Intel FPGA IP Cores
Giver generel information om alle Intel FPGA IP-kerner, herunder parametrisering, generering, opgradering og simulering af IP-kerner. - Oprettelse af versionsuafhængige IP- og Qsys-simuleringsscripts
Opret simuleringsscripts, der ikke kræver manuelle opdateringer til software- eller IP-versionsopgraderinger. - Projektledelse bedste praksis
Retningslinjer for effektiv styring og portabilitet af dit projekt og IP files. - GPIO Intel FPGA IP Brugervejledning Arkiver på side 24
Giver en liste over brugervejledninger til tidligere versioner af GPIO IP-kernen. - Dobbelt datahastighed I/O (ALTDDIO_IN, ALTDDIO_OUT og ALTDDIO_BIDIR) IP Cores brugervejledning
- I/O Buffer (ALTIOBUF) IP Core brugervejledning
Udgivelsesoplysninger for GPIO Intel FPGA IP
Intel FPGA IP-versioner matcher Intel Quartus® Prime Design Suite-softwareversionerne indtil v19.1. Startende i Intel Quartus Prime Design Suite-softwareversion 19.2 har Intel FPGA IP et nyt versionssystem.
Intel Corporation. Alle rettigheder forbeholdes. Intel, Intel-logoet og andre Intel-mærker er varemærker tilhørende Intel Corporation eller dets datterselskaber. Intel garanterer ydeevnen af sine FPGA- og halvlederprodukter i henhold til de aktuelle specifikationer i overensstemmelse med Intels standardgaranti, men forbeholder sig retten til at foretage ændringer af produkter og tjenester til enhver tid uden varsel. Intel påtager sig intet ansvar eller erstatningsansvar som følge af applikationen eller brugen af oplysninger, produkter eller tjenester beskrevet heri, undtagen som udtrykkeligt skriftligt aftalt af Intel. Intel-kunder rådes til at indhente den seneste version af enhedsspecifikationerne, før de stoler på nogen offentliggjort information, og før de afgiver ordrer på produkter eller tjenester. *Andre navne og mærker kan hævdes at være andres ejendom.
Intel FPGA IP-versionsnummeret (XYZ) kan ændres med hver Intel Quartus Prime-softwareversion. En ændring i:
- X angiver en større revision af IP. Hvis du opdaterer Intel Quartus Prime-softwaren, skal du genskabe IP'en.
- Y angiver, at IP'en indeholder nye funktioner. Gendan din IP for at inkludere disse nye funktioner.
- Z angiver, at IP'en indeholder mindre ændringer. Gendan din IP for at inkludere disse ændringer.
Tabel 1. GPIO Intel FPGA IP Core aktuelle udgivelsesoplysninger
|
Punkt |
Beskrivelse |
| IP version | 20.0.0 |
| Intel Quartus Prime-version | 21.2 |
| Udgivelsesdato | 2021.06.23 |
GPIO Intel FPGA IP-funktioner
GPIO IP-kernen indeholder funktioner, der understøtter enhedens I/O-blokke. Du kan bruge Intel Quartus Prime-parametereditoren til at konfigurere GPIO IP-kernen.
GPIO IP-kernen indeholder disse komponenter:
- Dobbelt datahastighed input/output (DDIO) - en digital komponent, der fordobler eller halverer datahastigheden for en kommunikationskanal.
- Forsinkelseskæder – konfigurer forsinkelseskæderne til at udføre specifik forsinkelse og hjælpe med I/O-timinglukning.
- I/O-buffere—tilslut pads til FPGA.
GPIO Intel FPGA IP-datastier
Figur 1. Højt niveau View af Single-Ended GPIO

Tabel 2. GPIO IP Core Data Path Modes
|
Datasti |
Registreringstilstand | |||
| Bypass | Enkelt register |
DDR I/O |
||
|
Fuld pris |
Halv pris |
|||
| Input | Data går fra forsinkelseselementet til kernen og omgår alle I/O'er med dobbelt datahastighed (DDIO'er). | DDIO'en med fuld hastighed fungerer som et simpelt register, der omgår halvhastigheds DDIO'er. Montøren vælger, om registret skal pakkes i I/O'en eller implementeres i kernen, afhængigt af området og timing-afvejninger. | DDIO'en med fuld hastighed fungerer som en almindelig DDIO og omgår halvhastigheds DDIO'erne. | DDIO'en med fuld rate fungerer som en almindelig DDIO. Halvhastigheds-DDIO'erne konverterer fuldhastighedsdata til halvhastighedsdata. |
| Produktion | Data går fra kernen direkte til forsinkelseselementet og omgår alle DDIO'er. | DDIO'en med fuld hastighed fungerer som et simpelt register, der omgår halvhastigheds DDIO'er. Montøren vælger, om registret skal pakkes i I/O'en eller implementeres i kernen, afhængigt af området og timing-afvejninger. | DDIO'en med fuld hastighed fungerer som en almindelig DDIO og omgår halvhastigheds DDIO'erne. | DDIO'en med fuld rate fungerer som en almindelig DDIO. Halvhastigheds-DDIO'erne konverterer fuldhastighedsdata til halvhastighedsdata. |
| Tovejs | Outputbufferen driver både en output-pin og en inputbuffer. | DDIO'en med fuld hastighed fungerer som et simpelt register. Outputbufferen driver både en output-pin og en inputbuffer. | DDIO'en med fuld rate fungerer som en almindelig DDIO. Outputbufferen driver både en output-pin og en inputbuffer. Indgangsbufferen driver et sæt af tre flip-flops. | DDIO'en med fuld rate fungerer som en almindelig DDIO. Halvhastigheds-DDIO'erne konverterer fuldhastighedsdata til halvhastighedsdata. Outputbufferen driver både en output-pin og en inputbuffer. Indgangsbufferen driver et sæt af tre flip-flops. |
Hvis du bruger asynkrone klare og forudindstillede signaler, deler alle DDIO'er de samme signaler.
Halvhastigheds- og fuldhastigheds-DDIO'er forbindes til separate ure. Når du bruger halvhastigheds- og fuldhastigheds-DDIO'er, skal fuldhastighedsuret køre med dobbelt så høj frekvens som halvhastighedsfrekvensen. Du kan bruge forskellige faseforhold til at opfylde tidskravene.
Relateret information
Input og Output Bus High og Low Bits på side 12
Indtastningssti
Pad'en sender data til inputbufferen, og inputbufferen føder forsinkelseselementet. Når dataene går til udgangen af forsinkelseselementet, vælger de programmerbare bypass-multipleksere de funktioner og stier, der skal bruges. Hver inputsti indeholder to stages af DDIO'er, som er fuld-rate og halv-rate.
Figur 2. Forenklet View af Single-Ended GPIO Input Path

- Puden modtager data.
- DDIO IN (1) fanger data på de stigende og faldende kanter af ck_fr og sender dataene, signalerne (A) og (B) i den følgende kurvefigur med en enkelt datahastighed.
- DDIO IN (2) og DDIO IN (3) halverer datahastigheden.
- dout[3:0] præsenterer dataene som en halvhastighedsbus.
Figur 3. Input Path Waveform i DDIO Mode med Half-Rate Conversion
I denne figur går dataene fra fuldhastighedsur ved dobbelt datahastighed til halvhastighedsur ved enkelt datahastighed. Datahastigheden divideres med fire, og busstørrelsen øges med samme forhold. Den samlede gennemstrømning gennem GPIO IP-kernen forbliver uændret.
Det faktiske timingforhold mellem forskellige signaler kan variere afhængigt af det specifikke design, forsinkelser og faser, som du vælger for ure med fuld hastighed og halv hastighed.

Bemærk: GPIO IP-kernen understøtter ikke dynamisk kalibrering af tovejs ben. For applikationer, der kræver dynamisk kalibrering af tovejsstifter, henvises til de relaterede oplysninger.
Relateret information
- PHY Lite til parallelle grænseflader Intel FPGA IP Core Brugervejledning: Intel Stratix 10, Intel Arria 10 og Intel Cyclone 10 GX-enheder
Giver flere oplysninger til applikationer, der kræver dynamisk OCT for tovejs ben. - Output- og outputaktiveringsstier på side 7
Output og Output Aktiver stier
Udgangsforsinkelseselementet sender data til puden gennem outputbufferen.
Hver outputsti indeholder to stages af DDIO'er, som er halv-rate og fuld-rate.
Figur 4. Forenklet View af Single-Ended GPIO Output Path

Figur 5. Output Path Waveform i DDIO Mode med Half-Rate Conversion

Figur 6. Forenklet View af Output Enable Path

Forskellen mellem output-stien og output-aktiveringsstien (OE) er, at OE-stien ikke indeholder fuldhastigheds-DDIO. For at understøtte implementeringer af pakket register i OE-stien fungerer et simpelt register som DDIO med fuld hastighed. Af samme grund er der kun en halv-rate DDIO til stede.
OE-stien fungerer i følgende tre grundlæggende tilstande:
- Bypass - kernen sender data direkte til forsinkelseselementet og omgår alle DDIO'er.
- Pakket register—omgår halv-rate DDIO.
- SDR-output ved halv hastighed – DDIO'er med halv hastighed konverterer data fra fuld hastighed til halv hastighed.
Bemærk: GPIO IP-kernen understøtter ikke dynamisk kalibrering af tovejs ben. For applikationer, der kræver dynamisk kalibrering af tovejsstifter, henvises til de relaterede oplysninger.
Relateret information
- PHY Lite til parallelle grænseflader Intel FPGA IP Core Brugervejledning: Intel Stratix 10, Intel Arria 10 og Intel Cyclone 10 GX-enheder
Giver flere oplysninger til applikationer, der kræver dynamisk OCT for tovejs ben. - Indtastningssti på side 5
GPIO Intel FPGA IP-interfacesignaler
Afhængigt af de parameterindstillinger, du angiver, er forskellige interfacesignaler tilgængelige for GPIO IP-kernen.
Figur 7. GPIO IP Core Interfaces

Figur 8. GPIO-grænsefladesignaler

Tabel 3. Pad-interfacesignaler
Pad-interfacet er den fysiske forbindelse fra GPIO IP-kernen til puden. Denne grænseflade kan være en input-, output- eller tovejsgrænseflade, afhængigt af IP-kernekonfigurationen. I denne tabel er SIZE den databredde, der er angivet i IP-kerneparametereditoren.
|
Signal navn |
Retning |
Beskrivelse |
| pad_in[SIZE-1:0] |
Input |
Indgangssignal fra puden. |
| pad_in_b[SIZE-1:0] |
Input |
Negativ knude på det differentielle indgangssignal fra puden. Denne port er tilgængelig, hvis du tænder for Brug differentiel buffer valgmulighed. |
| pad_out[SIZE-1:0] |
Produktion |
Udgangssignal til puden. |
| pad_out_b[SIZE-1:0] |
Produktion |
Negativ knudepunkt for det differentielle udgangssignal til puden. Denne port er tilgængelig, hvis du tænder for Brug differentiel buffer valgmulighed. |
| pad_io[SIZE-1:0] |
Tovejs |
Tovejs signalforbindelse med puden. |
| pad_io_b[SIZE-1:0] |
Tovejs |
Negativ knude på den differentielle tovejssignalforbindelse med puden. Denne port er tilgængelig, hvis du tænder for Brug differentiel buffer valgmulighed. |
Tabel 4. Datagrænsefladesignaler
Datagrænsefladen er en input- eller outputgrænseflade fra GPIO IP-kernen til FPGA-kernen. I denne tabel er SIZE den databredde, der er angivet i IP-kerneparametereditoren.
|
Signal navn |
Retning |
Beskrivelse |
| din[DATA_SIZE-1:0] |
Input |
Datainput fra FPGA-kernen i output- eller tovejstilstand. DATA_SIZE afhænger af registreringstilstanden:
|
| dout[DATA_SIZE-1:0] |
Produktion |
Dataoutput til FPGA-kernen i input- eller tovejstilstand, DATA_SIZE afhænger af registreringstilstanden:
|
| oe[OE_SIZE-1:0] |
Input |
OE input fra FPGA kernen i output mode med Aktiver udgangsaktiveringsport tændt eller tovejstilstand. OE er aktiv høj. Når du sender data, skal du indstille dette signal til 1. Når du modtager data, skal du indstille dette signal til 0. OE_SIZE afhænger af registertilstanden:
|
Tabel 5. Urgrænsefladesignaler
Ur-interfacet er et input-clock-interface. Den består af forskellige signaler, afhængigt af konfigurationen. GPIO IP-kernen kan have nul, en, to eller fire clock-indgange. Urporte vises forskelligt i forskellige konfigurationer for at afspejle den faktiske funktion, der udføres af ursignalet.
|
Signal navn |
Retning |
Beskrivelse |
| ck |
Input |
I input- og output-stier føder dette ur et pakket register eller DDIO, hvis du slukker for Halv sats logik parameter. I tovejstilstand er dette ur det unikke ur for input- og outputstierne, hvis du slukker for Separate input/output ure parameter. |
| ck_fr |
Input |
I input- og outputstier leverer disse ure DDIO'erne med fuld hastighed og halv hastighed, hvis du tænder for Halv sats logik parameter. I tovejstilstand bruger input- og outputstierne disse ure, hvis du slukker for Separate input/output ure parameter. |
|
ck_hr |
||
| ck_in |
Input |
I tovejstilstand leverer disse ure et pakket register eller DDIO i input- og outputstierne, hvis du angiver begge disse indstillinger:
|
| ck_out | ||
| ck_fr_in |
Input |
I tovejstilstand leverer disse ure en fuld- og halvhastigheds DDIOS i input- og outputstierne, hvis du angiver begge disse indstillinger
F.eksample, ck_fr_out føder fuldhastigheds-DDIO'en i outputstien. |
| ck_fr_out | ||
| ck_hr_in | ||
| ck_hr_out | ||
| bro |
Input |
Ur aktiveret. |
Tabel 6. Termineringsgrænsefladesignaler
Termineringsgrænsefladen forbinder GPIO IP-kernen til I/O-bufferne.
|
Signal navn |
Retning |
Beskrivelse |
| serietermineringskontrol |
Input |
Input fra termineringskontrolblokken (OCT) til bufferne. Den indstiller bufferseriens impedansværdi. |
| paralleltermineringskontrol |
Input |
Input fra termineringskontrolblokken (OCT) til bufferne. Den indstiller bufferens parallelle impedansværdi. |
Tabel 7. Nulstil grænsefladesignaler
Nulstillingsgrænsefladen forbinder GPIO IP-kernen til DDIO'erne.
|
Signal navn |
Retning |
Beskrivelse |
| sclr |
Input |
Synkron klar input. Ikke tilgængelig, hvis du aktiverer sset. |
| aclr |
Input |
Asynkron klar input. Aktiv høj. Ikke tilgængelig, hvis du aktiverer aset. |
| asset |
Input |
Asynkron sæt input. Aktiv høj. Ikke tilgængelig, hvis du aktiverer aclr. |
| sset |
Input |
Synkron sæt input. Ikke tilgængelig, hvis du aktiverer sclr. |
Relateret information
Input og Output Bus High og Low Bits på side 12
- Input-, output- og OE-stierne deler de samme klare og forudindstillede signaler.
- Outputtet og OE-stien deler de samme kloksignaler.
Data Bit-Order for Data Interface
Figur 9. Data Bit-Order-konvention
Denne figur viser bitrækkefølgen for din, dout og oe datasignalerne.

- Hvis databusstørrelsesværdien er SIZE, er LSB'en længst til højre.
- Hvis databusstørrelsesværdien er 2 × STØRRELSE, er bussen lavet af to ord af STØRRELSE.
- Hvis databusstørrelsen er 4 × STØRRELSE, er bussen lavet af fire ord af STØRRELSE.
- LSB er i positionen længst til højre for hvert ord.
- Ordet længst til højre angiver det første ord, der går ud for udgangsbusser og det første ord, der kommer ind for inputbusser.
Relateret information
Indtastningssti på side 5
Input og Output Bus High og Low Bits
De høje og lave bits i input- eller outputsignalerne er inkluderet i din og dout input- og outputbusserne.
Input bus
For din-bussen, hvis datain_h og datain_l er de høje og lave bits, hvor hver bredde er datain_width:
- datain_h = din[(2 × datain_width – 1):datain_width]
- datain_l = din[(datain_width – 1):0]
F.eksample, for din[7:0] = 8'b11001010:
- datain_h = 4'b1100
- datain_l = 4'b1010
Output bus
For dout-bussen, hvis dataout_h og dataout_l er de høje og lave bits, hvor hver bredde er dataout_width:
- dataout_h = dout[(2 × dataout_width – 1):dataout_width]
- dataout_l = dout[(dataout_width – 1):0]
F.eksample, for dout[7:0] = 8'b11001010:
- dataout_h = 4'b1100
- dataout_l = 4'b1010
Datagrænsefladesignaler og tilsvarende ure
Tabel 8. Datagrænsefladesignaler og tilsvarende ure
|
Signal navn |
Parameterkonfiguration | Ur | ||
| Registreringstilstand | Halv sats |
Separate ure |
||
| din |
|
Slukket |
Slukket |
ck |
| DDIO |
On |
Slukket |
ck_hr | |
|
Slukket |
On |
ck_in | |
| DDIO |
On |
On |
ck_hr_in | |
|
|
Slukket |
Slukket |
ck |
| DDIO |
On |
Slukket |
ck_hr | |
|
Slukket |
On |
ck_out | |
| DDIO |
On |
On |
ck_hr_out | |
|
|
Slukket |
Slukket |
ck |
| DDIO |
On |
Slukket |
ck_fr | |
|
Slukket |
On |
|
|
| DDIO |
On |
On |
|
|
Verifikation af ressourceudnyttelse og designydelse
Du kan henvise til Intel Quartus Prime-kompileringsrapporterne for at få detaljer om ressourceforbruget og ydeevnen af dit design.
- Klik på i menuen Behandler ➤ Start kompilering at køre en fuld kompilering.
- Efter at have kompileret designet, klik Behandling ➤ Kompileringsrapport.
- Ved hjælp af Indholdsfortegnelse, naviger til Montør ➤ Ressourcesektion.
en. Til view ressourceforbrugsoplysningerne, skal du vælge Ressourceforbrug Resumé.
b. Til view oplysninger om ressourceudnyttelse skal du vælge Ressourceudnyttelse efter enhed.
GPIO Intel FPGA IP-parameterindstillinger
Du kan indstille parameterindstillingerne for GPIO IP-kernen i Intel Quartus Prime-softwaren. Der er tre grupper af muligheder: Generel, Buffer, og Registre.
Tabel 9. GPIO IP-kerneparametre – Generelt
|
Parameter |
Tilstand | Tilladte værdier |
Beskrivelse |
| Dataretning |
— |
|
Angiver dataretningen for GPIO'en. |
| Data bredde |
— |
1 til 128 | Angiver databredden. |
| Brug ældre portnavne på øverste niveau |
— |
|
Brug samme portnavne som i Stratix V-, Arria V- og Cyclone V-enheder. F.eksample, dout bliver dataout_h og dataout_l, og din bliver datain_h og datain_l. Bemærk: Disse portes adfærd er anderledes end i Stratix V-, Arria V- og Cyclone V-enhederne. For migrationsvejledningen henvises til de relaterede oplysninger. |
Tabel 10. GPIO IP Core Parameters – Buffer
|
Parameter |
Tilstand | Tilladte værdier |
Beskrivelse |
| Brug differentiel buffer |
— |
|
Hvis den er slået til, aktiveres differentielle I/O-buffere. |
| Brug pseudo differentiel buffer |
|
|
Hvis den er slået til i outputtilstand, aktiveres pseudo-differentielle outputbuffere. Denne indstilling aktiveres automatisk for tovejstilstand, hvis du tænder Brug differentiel buffer. |
| Brug bushold-kredsløb |
|
|
Hvis det er slået til, kan bushold-kredsløbet svagt holde signalet på en I/O-pin i sin sidst drevne tilstand, hvor outputbuffertilstanden vil være 1 eller 0, men ikke højimpedans. |
| Brug åben afløbsudgang |
|
|
Hvis det er slået til, gør det åbne afløbsudgang enheden i stand til at levere kontrolsignaler på systemniveau, såsom afbrydelses- og skriveaktiveringssignaler, der kan påstås af flere enheder i dit system. |
| Aktiver udgangsaktiveringsport | Dataretning = Output |
|
Hvis den er slået til, aktiveres brugerinput til OE-porten. Denne indstilling aktiveres automatisk for tovejstilstand. |
| Aktiver serieterminering / paralleltermineringsporte |
— |
|
Hvis den er slået til, aktiveres serietermineringskontrol- og paralleltermineringskontrolportene på outputbufferen. |
Tabel 11. GPIO IP-kerneparametre – registre
| Parameter | Tilstand | Tilladte værdier | Beskrivelse |
| Registreringstilstand |
— |
|
Angiver registertilstanden for GPIO IP-kernen:
|
| Aktiver synkron clear/forudindstillet port |
|
|
Angiver, hvordan synkron nulstillingsport implementeres.
|
| Aktiver asynkron clear/forudindstillet port |
|
|
Angiver, hvordan asynkron nulstillingsport skal implementeres.
ACLR- og ASET-signaler er aktive høje. |
| Aktiver uraktiverede porte | Registreringstilstand = DDIO |
|
|
| Halv sats logik | Registreringstilstand = DDIO |
|
Hvis den er slået til, aktiveres halvhastigheds DDIO. |
| Separat input/output ure |
|
|
Hvis den er slået til, aktiveres separate ure (CK_IN og CK_OUT) for input- og outputstierne i tovejstilstand. |
Relateret information
- Input og Output Bus High og Low Bits på side 12
- Retningslinje: Skift datain_h og datain_l porte i migreret IP på side 23
Registrer pakning
GPIO IP-kernen giver dig mulighed for at pakke register ind i periferien for at spare areal og ressourceudnyttelse.
Du kan konfigurere fuldhastigheds-DDIO'en på input- og outputstien som en flip flop. For at gøre det skal du tilføje .qsf-tildelingerne, der er angivet i denne tabel.
Tabel 12. Register Packing QSF Assignments
|
Sti |
QSF opgave |
| Indtastningsregisterpakning | QSF Assignment set_instance_assignment -navn FAST_INPUT_REGISTER ON -to |
| Output register pakning | set_instance_assignment -navn FAST_OUTPUT_REGISTER TIL -til |
| Output aktivere registerpakning | set_instance_assignment -navn FAST_OUTPUT_ENABLE_REGISTER TIL -til |
Bemærk: Disse opgaver garanterer ikke registerpakning. Disse opgaver gør det dog muligt for montøren at finde en lovlig placering. Ellers holder Fitteren flip-floppen i kernen.
GPIO Intel FPGA IP-timing
Ydeevnen af GPIO IP-kernen afhænger af I/O-begrænsningerne og clock-faserne. For at validere timingen for din GPIO-konfiguration anbefaler Intel, at du bruger Timing Analyzer.
Relateret information
Intel Quartus Prime Timing Analyzer
Timing komponenter
GPIO IP kerne timing komponenterne består af tre stier.
- I/O-grænsefladestier - fra FPGA'en til eksterne modtageenheder og fra eksterne sendeenheder til FPGA'en.
- Kernegrænsefladestier for data og ur – fra I/O til kernen og fra kernen til I/O.
- Overførselsstier - fra halv-rate til fuld-rate DDIO og fra fuld-rate til halv-rate DDIO.
Bemærk: Timing Analyzer behandler stien inde i DDIO_IN- og DDIO_OUT-blokkene som sorte bokse.
Figur 10. Input Path Timing Components

Figur 11. Output Path Timing Components

Figur 12. Output Enable Path Timing Components

Forsinkelseselementer
Intel Quartus Prime-softwaren indstiller ikke automatisk forsinkelseselementer for at maksimere slæk i I/O-timinganalysen. For at lukke timingen eller maksimere slæk, skal du indstille forsinkelseselementerne manuelt i Intel Quartus Prime-indstillingerne file (.qsf).
Tabel 13. Forsinkelseselementer .qsf-tildelinger
Angiv disse tildelinger i .qsf for at få adgang til forsinkelseselementerne.
| Forsinkelseselement | .qsf Opgave |
| Indgangsforsinkelseselement | set_instance_assignment til -navn INPUT_DELAY_CHAIN <0..63> |
| Udgangsforsinkelseselement | set_instance_assignment til -navn OUTPUT_DELAY_CHAIN <0..15> |
| Output Enable Delay Element | set_instance_assignment til -navn OE_DELAY_CHAIN <0..15> |
Tidsanalyse
Intel Quartus Prime-softwaren genererer ikke automatisk SDC-timingsbegrænsningerne for GPIO IP-kernen. Du skal manuelt indtaste tidsbegrænsningerne.
Følg tidsretningslinjerne og f.eksamples for at sikre, at Timing Analyzer analyserer I/O-timingen korrekt.
- For at udføre korrekt timinganalyse for I/O-grænsefladestierne skal du angive systemniveaubegrænsningerne for datastifterne mod systemurpinden i .sdc. file.
- For at udføre korrekt timinganalyse for kernegrænsefladestierne skal du definere disse urindstillinger i .sdc file:
— Ur til kerneregistrene
— Ur til I/O-registrene for de simple register- og DDIO-tilstande
Relateret information
AN 433: Begrænsning og analyse af kildesynkrone grænseflader
Beskriver teknikker til at begrænse og analysere kildesynkrone grænseflader.
Single Data Rate Input Register
Figur 13. Single Data Rate Input Register

Tabel 14. Single Data Rate Input Register .sdc Kommando Eksamples
| Kommando | Kommando Eksample | Beskrivelse |
| oprette_ur | oprette_ur -navn sdr_in_clk -periode "100 MHz" sdr_in_clk |
Opretter urindstilling for input-uret. |
| set_input_delay | set_input_delay -ur sdr_in_clk 0.15 sdr_in_data |
Instruerer Timing Analyzer til at analysere timingen af input I/O med en inputforsinkelse på 0.15 ns. |
Full-Rate eller Half-Rate DDIO Input Register
Indgangssiden af DDIO-indgangsregistrene med fuld hastighed og halv hastighed er den samme. Du kan begrænse systemet korrekt ved at bruge et virtuelt ur til at modellere off-chip-senderen til FPGA'en.
Figur 14. DDIO-inputregister med fuld hastighed eller halv hastighed

Tabel 15. Full-Rate eller Half-Rate DDIO Input Register .sdc Command Examples
| Kommando | Kommando Eksample | Beskrivelse |
| oprette_ur | create_clock -navn virtuelt_ur -periode "200 MHz" create_clock -navn ddio_in_clk -periode "200 MHz" ddio_in_clk |
Opret urindstilling for det virtuelle ur og DDIO-uret. |
| set_input_delay | set_input_delay -ur virtuelt_ur 0.25 ddio_in_data set_input_delay -add_delay -clock_fall -clock virtual_clock 0.25 ddio_in_data |
Instruer Timing Analyzer til at analysere den positive urflanke og den negative urflanke af overførslen. Bemærk -add_delay i den anden set_input_delay kommando. |
| sæt_falsk_sti | sæt_falsk_sti -fald_fra virtual_clock -rise_to ddio_in_clk sæt_falsk_sti -stige_fra virtual_clock -fall_to ddio_in_clk |
Instruer Timing Analyzer om at ignorere den positive clock-flanke til det negative flanke triggede register, og den negative clock edge til det positive flanke triggede register.
Bemærk: ck_hr-frekvensen skal være halvdelen af ck_fr-frekvensen. Hvis I/O PLL'en driver urene, kan du overveje at bruge kommandoen derive_pll_clocks .sdc. |
Single Data Rate Output Register
Figur 15. Single Data Rate Output Register

Tabel 16. Single Data Rate Output Register .sdc Kommando Eksamples
| Kommando | Kommando Eksample | Beskrivelse |
| create_clock og create_generated_clock | oprette_ur -navn sdr_out_clk -periode “100 MHz” sdr_out_clk create_generated_clock -kilde sdr_out_clk -navn sdr_out_outclk sdr_out_outclk |
Generer kildeuret og output-uret til at transmittere. |
| set_output_delay | set_output_delay -clock sdr_out_clk 0.45 sdr_out_data |
Instruerer timinganalysatoren til at analysere outputdataene, der skal transmitteres i forhold til output-uret, der skal transmitteres. |
DDIO-outputregister med fuld hastighed eller halv hastighed
Udgangssiden af DDIO-outputregistrene med fuld hastighed og halv hastighed er den samme.
Tabel 17. DDIO Output Register .sdc Kommando Eksamples
| Kommando | Kommando Eksample | Beskrivelse |
| create_clock og create_generated_clock | create_clock -navn ddio_out_fr_clk -periode “200 MHz” ddio_out_fr_clk create_generated_clock -kilde ddio_out_fr_clk -navn ddio_out_fr_outclk ddio_out_fr_outclk |
Generer urene til DDIO og uret til at sende. |
| set_output_delay | set_output_delay -ur ddio_out_fr_outclk 0.55 ddio_out_fr_data set_output_delay -add_delay -ur_fald -ur ddio_out_fr_outclk 0.55 ddio_out_fr_data |
Instruer Timing Analyzer til at analysere de positive og negative data i forhold til output-uret. |
| sæt_falsk_sti | sæt_falsk_sti -stige_fra ddio_out_fr_clk -fall_to ddio_out_fr_outclk sæt_falsk_sti -fald_fra ddio_out_fr_clk -rise_to ddio_out_fr_outclk |
Instruer Timing Analyzer til at ignorere den stigende flanke af kildeuret mod den faldende flanke af outputuret, og den faldende flanke af kildeuret mod stigende flanke af outputuret |
Retningslinjer for lukning af timing
For GPIO-indgangsregistrene vil input-I/O-overførslen sandsynligvis mislykkes med holdetiden, hvis du ikke indstiller inputforsinkelseskæden. Denne fejl skyldes, at urforsinkelsen er større end dataforsinkelsen.
For at overholde holdetiden skal du tilføje forsinkelse til inputdatastien ved hjælp af inputforsinkelseskæden. Generelt er input-forsinkelseskæden omkring 60 ps pr. trin ved 1 hastighedsgraden. For at få en omtrentlig input forsinkelse kæde indstilling til at passere timingen, dividere den negative hold slack med 60 ps.
Men hvis I/O PLL'en driver urene i GPIO-indgangsregistrene (simpelt register eller DDIO-tilstand), kan du indstille kompensationstilstanden til kildesynkrontilstand. Montøren vil forsøge at konfigurere I/O PLL'en for en bedre opsætning og holde slæk for input I/O-timinganalysen.
For GPIO-output- og outputaktiveringsregistre kan du tilføje forsinkelse til outputdata og ur ved hjælp af output- og outputaktiveringsforsinkelseskæderne.
- Hvis du observerer en overtrædelse af opsætningstiden, kan du øge indstillingen af output-urforsinkelseskæden.
- Hvis du observerer en overtrædelse af holdetiden, kan du øge kædeindstillingen for outputdataforsinkelse.
GPIO Intel FPGA IP Design Eksamples
GPIO IP-kernen kan generere design f.eksampfiler, der matcher din IP-konfiguration i parametereditoren. Du kan bruge disse design f.eksamples som referencer til at instansiere IP-kernen og den forventede adfærd i simuleringer.
Du kan generere designet f.eksampfiler fra GPIO IP-kerneparametereditoren. Når du har indstillet de ønskede parametre, skal du klikke Generer eksample Design. IP-kernen genererer designet f.eksampkilden files i den mappe, du angiver.
Figur 16. Kilde Files i Generated Design Example Vejviser

Bemærk: .qsys files er til internt brug under design exampkun generation. Du kan ikke redigere disse .qsys files.
GPIO IP Core Synthesizable Intel Quartus Prime Design Example
Det syntetiserbare design example er et kompileringsklart Platform Designer-system, som du kan inkludere i et Intel Quartus Prime-projekt.
Generering og brug af designet Example
For at generere det syntetiserbare Intel Quartus Prime-design, f.eksample fra kilden files, kør følgende kommando i designeksampkataloget:
quartus_sh -t make_qii_design.tcl
For at angive en nøjagtig enhed, der skal bruges, skal du køre følgende kommando:
quartus_sh -t make_qii_design.tcl [enhedsnavn]
TCL-scriptet opretter en qii-mappe, der indeholder ed_synth.qpf-projektet file. Du kan åbne og kompilere dette projekt i Intel Quartus Prime-softwaren.
GPIO IP Core Simulation Design Example
Simuleringsdesignet example bruger dine GPIO IP-kerneparameterindstillinger til at bygge IP-instansen forbundet til en simuleringsdriver. Chaufføren genererer tilfældig trafik og kontrollerer internt lovligheden af de udgående data.
Ved at bruge designet example, kan du køre en simulering ved hjælp af en enkelt kommando, afhængigt af den simulator, du bruger. Simuleringen viser, hvordan du kan bruge GPIO IP-kernen.
Generering og brug af designet Example
For at generere simuleringsdesignet f.eksample fra kilden files for en Verilog simulator, køre følgende kommando i design exampkataloget:
quartus_sh -t make_sim_design.tcl
For at generere simuleringsdesignet f.eksample fra kilden fileFor en VHDL-simulator skal du køre følgende kommando i designeksampkataloget:
quartus_sh -t make_sim_design.tcl VHDL
TCL-scriptet opretter en sim-mappe, der indeholder undermapper - en for hvert understøttet simuleringsværktøj. Du kan finde scripts for hvert simuleringsværktøj i de tilsvarende mapper.
IP-migreringsflow for Arria V-, Cyclone V- og Stratix V-enheder
IP-migreringsflowet giver dig mulighed for at migrere ALTDDIO_IN-, ALTDDIO_OUT-, ALTDDIO_BIDIR- og ALTIOBUF IP-kernerne af Arria V-, Cyclone V- og Stratix V-enheder til GPIO IP-kernen af Intel Arria 10- og Intel Cyclone 10 GX-enheder.
Dette IP-migreringsflow konfigurerer GPIO IP-kernen til at matche indstillingerne for ALTDDIO_IN-, ALTDDIO_OUT-, ALTDDIO_BIDIR- og ALTIOBUF IP-kernerne, så du kan regenerere IP-kernen.
Bemærk: Nogle IP-kerner understøtter kun IP-migreringsflowet i specifikke tilstande. Hvis din IP-kerne er i en tilstand, der ikke understøttes, skal du muligvis køre IP Parameter Editor for GPIO IP-kernen og konfigurere IP-kernen manuelt.
Migrering af dine ALTDDIO_IN-, ALTDDIO_OUT-, ALTDDIO_BIDIR- og ALTIOBUF IP-kerner
Følg disse trin for at migrere dine ALTDDIO_IN-, ALTDDIO_OUT-, ALTDDIO_BIDIR- og ALTIOBUF IP-kerner til GPIO Intel FPGA IP IP-kernen:
- Åbn din ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR eller ALTIOBUF IP-kerne i IP Parameter Editor.
- I den I øjeblikket valgt enhedsfamilie, vælg Intel Arria 10 or Intel Cyclone 10 GX.
- Klik Slutte for at åbne GPIO IP Parameter Editor.
IP Parameter Editor konfigurerer GPIO IP-kerneindstillingerne svarende til ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR eller ALTIOBUF kerneindstillingerne. - Hvis der er nogen inkompatible indstillinger mellem de to, skal du vælge nye understøttede indstillinger.
- Klik Slutte at regenerere IP-kernen.
- Udskift din ALTDDIO_IN-, ALTDDIO_OUT-, ALTDDIO_BIDIR- eller ALTIOBUF IP-kerneforekomst i RTL med GPIO IP-kernen.
Bemærk: GPIO IP-kerneportnavnene matcher muligvis ikke ALTDDIO_IN-, ALTDDIO_OUT-, ALTDDIO_BIDIR- eller ALTIOBUF IP-kerneportnavnene. Derfor er det måske ikke tilstrækkeligt blot at ændre IP-kernenavnet i instansieringen.
Relateret information
Input og Output Bus High og Low Bits på side 12
Retningslinje: Skift datain_h og datain_l porte i migreret IP
Når du migrerer din GPIO IP fra tidligere enheder til GPIO IP-kernen, kan du tænde Brug ældre portnavne på øverste niveau mulighed i GPIO IP-kerneparametereditoren. Opførselen af disse porte i GPIO IP-kernen er dog anderledes end i de IP-kerner, der bruges til Stratix V-, Arria V- og Cyclone V-enhederne.
GPIO IP-kernen driver disse porte til outputregistrene på disse clock-kanter:
- datain_h—på den stigende kant af outclock
- datain_l—på den faldende kant af outclock
Hvis du migrerede din GPIO IP fra Stratix V-, Arria V- og Cyclone V-enheder, skal du bytte datain_h- og datain_l-portene, når du instansierer den IP, der genereres af GPIO IP-kernen.
Relateret information
Input og Output Bus High og Low Bits på side 12
GPIO Intel FPGA IP Brugervejledning Arkiver
IP-versioner er de samme som Intel Quartus Prime Design Suite-softwareversioner op til v19.1. Fra Intel Quartus Prime Design Suite-softwareversion 19.2 eller nyere har IP-kerner et nyt IP-versionssystem.
Hvis en IP-kerneversion ikke er angivet, gælder brugervejledningen til den tidligere IP-kerneversion.
|
IP Core version |
Brugervejledning |
| 20.0.0 | GPIO Intel FPGA IP Brugervejledning: Intel Arria 10 og Intel Cyclone 10 GX-enheder |
| 19.3.0 | GPIO Intel FPGA IP Brugervejledning: Intel Arria 10 og Intel Cyclone 10 GX-enheder |
| 19.3.0 | GPIO Intel FPGA IP Brugervejledning: Intel Arria 10 og Intel Cyclone 10 GX-enheder |
| 18.1 | GPIO Intel FPGA IP Brugervejledning: Intel Arria 10 og Intel Cyclone 10 GX-enheder |
| 18.0 | GPIO Intel FPGA IP Brugervejledning: Intel Arria 10 og Intel Cyclone 10 GX-enheder |
| 17.1 | Intel FPGA GPIO IP Core brugervejledning |
| 17.0 | Altera GPIO IP Core brugervejledning |
| 16.1 | Altera GPIO IP Core brugervejledning |
| 16.0 | Altera GPIO IP Core brugervejledning |
| 14.1 | Altera GPIO Megafunktion Brugervejledning |
| 13.1 | Altera GPIO Megafunktion Brugervejledning |
Dokumentrevisionshistorik for GPIO Intel FPGA IP Brugervejledning: Intel Arria 10 og Intel Cyclone 10 GX-enheder
|
Dokumentversion |
Intel Quartus Prime-version | IP version |
Ændringer |
|
2021.07.15 |
21.2 |
20.0.0 |
Opdateret diagrammet, der viser det forenklede view af den single-ended GPIO-inputsti for at opdatere dout[0] til dout[3] og dout[3] til dout[0]. |
|
2021.03.29 |
21.1 |
20.0.0 |
Opdaterede GPIO IP-versionsnummeret til 20.0.0. |
|
2021.03.12 |
20.4 |
19.3.0 |
Opdaterede IP-migreringsretningslinjen for at specificere, at GPIO IP'en driver datain_h på den stigende kant og datain_l på den faldende kant. |
|
2019.10.01 |
19.3 |
19.3.0 |
Rettet typografiske fejl i .qsf tildelingskoderne i emnet om forsinkelseselementer. |
|
2019.03.04 |
18.1 |
18.1 |
I emnerne om inputstien og output- og outputaktiveringsstier:
|
|
2018.08.28 |
18.0 |
18.0 |
|
| Dato | Version | Ændringer |
| november 2017 | 2017.11.06 |
|
| maj 2017 | 2017.05.08 |
|
| oktober 2016 | 2016.10.31 |
|
| august 2016 | 2016.08.05 |
|
| august 2014 | 2014.08.18 |
|
| november 2013 | 2013.11.29 | Første udgivelse. |
GPIO Intel FPGA IP Brugervejledning: Intel Arria 10 og Intel Cyclone 10 GX-enheder
Dokumenter/ressourcer
![]() |
intel GPIO Intel FPGA IP [pdfBrugervejledning GPIO Intel FPGA IP, GPIO, Intel FPGA IP, FPGA IP |




