intel-LOGO

intel AN 889 8K DisplayPort Video Format Konvertering Design Eksample

intel-AN-889-8K-DisplayPort-Video-Format-Conversion-Design-Example-PRO

Om 8K DisplayPort Video Format Conversion Design Example

8K DisplayPort Video Format Conversion Design Example integrerer Intel DisplayPort 1.4-videoforbindelses-IP med en videobehandlingspipeline. Designet leverer højkvalitets skalering, farverumskonvertering og billedhastighedskonvertering for videostreams op til 8K ved 30 billeder i sekundet eller 4K ved 60 billeder i sekundet.
Designet er meget software- og hardwarekonfigurerbart, hvilket muliggør hurtig systemkonfiguration og redesign. Designet er rettet mod Intel® Arria® 10-enheder og bruger den seneste 8K-klare Intel FPGA IP fra video- og billedbehandlingspakken i Intel Quartus® Prime v19.2.

Om DisplayPort Intel FPGA IP
For at skabe Intel Arria 10 FPGA-design med DisplayPort-grænseflader skal du instansiere DisplayPort Intel FPGA IP. Denne DisplayPort IP implementerer dog kun protokollens kodning eller afkodning til DisplayPort. Det inkluderer ikke de transceivere, PLL'er eller transceiver-rekonfigurationsfunktioner, der kræves for at implementere den serielle højhastighedskomponent i grænsefladen. Intel leverer separate transceiver-, PLL- og rekonfigurations-IP-komponenter. Valg, parametrering og tilslutning af disse komponenter for at skabe en fuldt kompatibel DisplayPort-modtager eller -sendergrænseflade kræver specialistviden.
Intel leverer dette design til dem, der ikke er transceiver-eksperter. Parametereditorens GUI til DisplayPort IP giver dig mulighed for at bygge designet.
Du opretter en forekomst af DisplayPort IP (som kan være kun modtager, kun sender eller kombineret modtager og sender) i enten Platform Designer eller IP-kataloget. Når du parametrerer DisplayPort IP-instansen, kan du vælge at generere en exampdesign til den pågældende konfiguration. Det kombinerede modtager- og senderdesign er en simpel passthrough, hvor outputtet fra modtageren føres direkte ind i senderen. Et design med fast gennemløb skaber en fuldt funktionel modtager PHY, sender PHY og rekonfigurationsblokke, der implementerer al transceiver og PLL logik. Du kan enten kopiere de relevante dele af designet direkte eller bruge designet som reference. Designet genererer en DisplayPort Intel Arria 10 FPGA IP Design Example og tilføjer derefter mange af de files genereret direkte i kompileringslisten, der bruges af Intel Quartus Prime-projektet. Disse omfatter:

  • Files at skabe parametriserede IP-instanser til transceivere, PLL'er og reconfig-blokke.
  • Verilog HDL files for at forbinde disse IP'er til modtagerblokkene på højere niveau PHY, sender PHY og Transceiver Reconfiguration Arbiter
  • Synopsys design constraint (SDC) files for at indstille de relevante tidsbegrænsninger.

Funktioner i 8K DisplayPort Video Format Conversion Design Example

  • Input:
    • DisplayPort 1.4-forbindelse understøtter opløsninger fra 720×480 op til 3840×2160 ved enhver billedhastighed på op til 60 fps og opløsninger op til 7680×4320 ved 30 fps.
    • Hot-plug support.
    • Understøttelse af både RGB og YCbCr (4:4:4, 4:2:2 og 4:2:0) farveformater på
      input.
    • Software registrerer automatisk inputformatet og opsætter behandlingspipelinen korrekt.
  • Produktion:
    • DisplayPort 1.4-tilslutning kan vælges (via DIP-switche) til enten 1080p, 1080i eller 2160p opløsning ved 60 fps eller 2160p ved 30 fps.
    • Hot-plug support.
    • DIP-switche til at indstille det nødvendige outputfarveformat til RGB, YCbCr 4:4:4, YCbCr 4:2:2 eller YCbCr 4:2:0.
  • Enkelt 10-bit 8K RGB-behandlingspipeline med softwarekonfigurerbar skalering og billedhastighedskonvertering:
    • 12-taps Lanczos down-scaler.
    • 16-faset, 4-taps Lanczos up-scaler.
    • Tredobbelt buffering af videorammebuffer giver billedhastighedskonvertering.
    • Mixer med alfa-blanding tillader OSD-ikonoverlejring.

Kom godt i gang med 8K DisplayPort Video Format Conversion Design Example

Hardware- og softwarekrav

8K DisplayPort Video Format Conversion Design Example kræver specifik hardware og software.

Hardware:

  • Intel Arria 10 GX FPGA Development Kit, inklusive DDR4 Hilo Daughter Card
  • Bitec DisplayPort 1.4 FMC datterkort (revision 11)
  • DisplayPort 1.4-kilde, der producerer op til 3840x2160p60 eller 7680x4320p30 video
  • DisplayPort 1.4-vask, der viser op til 3840x2160p60 video
  • VESA-certificerede DisplayPort 1.4-kabler.

Software:

  • Windows eller Linux OS
  • Intel Quartus Prime Design Suite v19.2, som inkluderer:
    • Intel Quartus Prime Pro Edition
    • Platform designer
    • Nios® II EDS
    • Intel FPGA IP-bibliotek (inklusive video- og billedbehandlingspakken)

Designet fungerer kun med denne version af Intel Quartus Prime.

Download og installation af Intel 8K DisplayPort Video Format Conversion Design Example

Designet er tilgængeligt i Intel Design Store.

  1. Download det arkiverede projekt file udx10_dp.par.
  2. Uddrag Intel Quartus Prime-projektet fra arkivet:
    • a. Åbn Intel Quartus Prime Pro Edition.
    • b. Klik File ➤ Åbn Project.
      Vinduet Åbn projekt åbnes.
    • c. Naviger til og vælg udx10_dp.par file.
    • d. Klik på Åbn.
    • e. I vinduet Åbn designskabelon skal du indstille mappen Destination til den ønskede placering for det udpakkede projekt. Indgange til designskabelonen file og projektnavnet skal være korrekt, og du behøver ikke ændre dem.
    • f. Klik på OK.

Design Files til Intel 8K DisplayPort Video Format Conversion Design Example

Tabel 1. Design Files

File eller Mappenavn Beskrivelse
ip Indeholder IP-instansen files for alle Intel FPGA IP-instanser i designet:

• En DisplayPort IP (sender og modtager)

• En PLL, der genererer ure på det øverste niveau af designet

• Al den IP, der udgør Platform Designer-systemet til behandlingspipelinen.

master_image Indeholder pre_compiled.sof, som er en prækompileret tavleprogrammering file for designet.
non_acds_ip Indeholder kildekode til yderligere IP i dette design, som Intel Quartus Prime ikke inkluderer.
sdc Indeholder en SDC file der beskriver de yderligere tidsbegrænsninger, som dette design kræver. SDC files inkluderet automatisk med IP-instanserne håndterer ikke disse begrænsninger.
software Indeholder kildekode, biblioteker og build-scripts til softwaren, der kører på den indlejrede Nios II-processor for at kontrollere designets funktionalitet på højt niveau.
udx10_dp En mappe, hvori Intel Quartus Prime genererer output files til Platform Designer-systemet. Udx10_dp.sopcinfo output file giver dig mulighed for at generere hukommelsesinitialisering file til Nios II-processorsoftwarehukommelsen. Du behøver ikke først at generere det fulde Platform Designer-system.
non_acds_ip.ipx Denne IPX file erklærer hele IP-adressen i non_acds_ip-mappen til Platform Designer, så den vises i IP-biblioteket.
README.txt Korte instruktioner til at bygge og køre designet.
top.qpf Intel Quartus Prime-projektet file for designet.
top.qsf Indstillingerne for Intel Quartus Prime-projektet file for designet. Denne file lister alle fileer påkrævet for at bygge designet sammen med pin-tildelingerne og en række andre projektindstillinger.
top.v Det øverste niveau Verilog HDL file for designet.
udx10_dp.qsys Platform Designer-systemet, der indeholder videobehandlingspipeline, Nios II-processoren og dens periferiudstyr.

Kompilering af 8K DisplayPort Video Format Conversion Design Example
Intel leverer en prækompileret bordprogrammering file for designet i master_image-mappen (pre_compiled.sof) for at give dig mulighed for at køre designet uden at køre en fuld kompilering.
TRIN:

  1. Åbn top.qpf-projektet i Intel Quartus Prime-softwaren file. Det downloadede arkiv skaber dette file når du udpakker projektet.
  2. Klik File ➤ Åbn og vælg ip/dp_rx_tx/dp_rx_tx.ip. Parametereditorens GUI for DisplayPort IP åbnes og viser parametrene for DisplayPort-instansen i designet.
  3. Klik på Generer eksample Design (ikke Generer).
  4. Når genereringen er færdig, skal du lukke parametereditoren.
  5. In File Explorer, naviger til softwarebiblioteket og udpak vip_control_src.zip-arkivet for at generere vip_control_src-biblioteket.
  6. I en BASH-terminal skal du navigere til software/script og køre shell-scriptet build_sw.sh.
    Scriptet bygger Nios II-softwaren til designet. Det skaber både en .elf file som du kan downloade til boardet under kørsel, og en .hex file at kompilere i tavlen programmering .sof file.
  7. I Intel Quartus Prime-softwaren skal du klikke på Processing ➤ Start Compilation.
    • Intel Quartus Prime genererer udx10_dp.qsys Platform Designer-systemet.
    • Intel Quartus Prime sætter projektet til top.qpf.

Kompileringen skaber top.sof i output_files mappe, når den er færdig.

Viewing og regenerering af platformdesignersystemet

  1. Klik på Værktøjer ➤ Platformdesigner.
  2. Vælg systemnavn.qsys for systemindstillingen Platform Designer.
  3. Klik på Åbn.
    Platform Designer åbner systemet.
  4. Review systemet.
  5. Regenerer systemet:
    • a. Klik på Generer HDL….
    • b. Aktiver Ryd outputmapper for udvalgte generationsmål i genereringsvinduet.
    • c. Klik på Generer

Kompilering af 8K DisplayPort Video Format Conversion Design Exampmed Nios II Software Build Tools til Eclipse
Du opsætter et interaktivt Nios II Eclipse-arbejdsområde til designet for at producere et arbejdsområde, der bruger de samme mapper, som build-scriptet bruger. Hvis du tidligere har kørt build-scriptet, bør du slette mapperne software/vip_control og software/vip_control_bsp, før du opretter Eclipse-arbejdsområdet. Hvis du på et hvilket som helst tidspunkt kører build-scriptet igen, overskriver det Eclipse-arbejdsområdet.
TRIN:

  1. Naviger til softwarebiblioteket og udpak vip_control_src.zip-arkivet for at generere vip_control_src-biblioteket.
  2. I den installerede projektmappe skal du oprette en ny mappe og navngive den arbejdsområde.
  3. I Intel Quartus Prime-softwaren skal du klikke på Tools ➤ Nios II Software Build Tools for Eclipse.
    • a. I vinduet Workspace Launcher skal du vælge den arbejdsområdemappe, du har oprettet.
    • b. Klik på OK.
  4. I Nios II – Eclipse-vinduet skal du klikke File ➤ Nyt ➤ Nios II-applikation og BSP fra skabelon.
    Dialogboksen Nios II-applikation og BSP fra skabelon vises.
    • a. I SOPC Information File boksen skal du vælge udx10_dp/udx10_dp.sopcinfo file. Nios II SBT for Eclipse udfylder CPU-navnet med processornavnet fra .sopcinfo file.
    • b. Skriv vip_control i feltet Projektnavn.
    • c. Vælg Blank Project fra skabelonlisten.
    • d. Klik på Næste.
    • e. Vælg Opret et nyt BSP-projekt baseret på applikationsprojektskabelonen med projektnavnet vip_control_bsp.
    • f. Slå Brug standardplacering til.
    • g. Klik på Udfør for at oprette applikationen og BSP baseret på .sopcinfo file.
      Når BSP'en er genereret, vises projekterne vip_control og vip_control_bsp på fanen Project Explorer.
  5. I Windows Stifinder skal du kopiere indholdet af software/vip_control_src-biblioteket til det nyoprettede software/vip_control-bibliotek.
  6. På fanen Project Explorer i Nios II – Eclipse-vinduet skal du højreklikke på mappen vip_control_bsp og vælge Nios II > BSP Editor.
    • a. Vælg Ingen fra rullemenuen for sys_clk_timer.
    • b. Vælg cpu_timer fra rullemenuen for tidsindstillingamp_timer.
    • c. Slå enable_small_c_library til.
    • d. Klik på Generer.
    • e. Når genereringen er færdig, skal du klikke på Afslut.
  7. På fanen Project Explorer skal du højreklikke på mappen vip_control og klikke på Egenskaber.
    1. a. I vinduet Egenskaber for vip_control skal du udvide Nios II-applikationsegenskaber og klikke på Nios II-applikationsstier.
    2. b. Klik på Tilføj... ud for Biblioteksprojekter.
    3. c. I vinduet Biblioteksprojekter skal du navigere til biblioteket udx10.dp\spftware \vip_control_src og vælge biblioteket bkc_dprx.syslib.
    4. d. Klik på OK. En meddelelse vises Konverter til en relativ sti. Klik på Ja.
    5. e. Gentag trin 7.b på side 8 og 7.c på side 8 for mapperne bkc_dptx.syslib og bkc_dptxll_syslib
    6. f. Klik på OK.
  8. Vælg Projekt ➤ Byg alle for at generere file vip_control.elf i mappen software/vip_control.
  9. Byg mem_init file til Intel Quartus Prime-kompilationen:
    1. a. Højreklik på vip_control i vinduet Project Explorer.
    2. b. Vælg Lav mål ➤ Byg….
    3. c. Vælg mem_init_generate.
      d. Klik på Byg.
      Intel Quartus Prime-softwaren genererer
      udx10_dp_onchip_memory2_0_onchip_memory2_0.hex file i mappen software/vip_control/mem_init.
  10. Med designet kørende på et tilsluttet kort, kør vip_control.elf-programmeringen file skabt af Eclipse build.
    • a. Højreklik på mappen vip_control i Project Explorer-fanen i Nios II -Eclipse-vinduet.
    • b. Valg af Kør som ➤ Nios II hardware. Hvis du har et Nios II-terminalvindue åbent, skal du lukke det, før du downloader den nye software.

Opsætning af Intel Arria 10 GX FPGA Development Kit
Beskriver, hvordan sættet konfigureres til at køre 8K DisplayPort Video Format Conversion Design Example.

Figur 1. Intel Arria 10 GX Development Kit med HiLo Daughter Card
Figuren viser brættet med den blå køleplade fjernet for at vise placeringen af ​​DDR4 Hilo-kortet. Intel anbefaler, at du ikke kører designet uden kølepladen på plads.

intel-AN-889-8K-DisplayPort-Video-Format-Conversion-Design-Example-1
TRIN:

  1. Sæt Bitec DisplayPort 1.4 FMC-kortet på udviklingskortet ved hjælp af FMC-port A.
  2. Sørg for, at strømafbryderen (SW1) er slukket, og tilslut derefter strømstikket.
  3. Tilslut et USB-kabel til din computer og til MicroUSB-stikket (J3) på udviklingskortet.
  4. Tilslut et DisplayPort 1.4-kabel mellem DisplayPort-kilden og modtagerporten på Bitec DisplayPort 1.4 FMC-kortet, og sørg for, at kilden er aktiv.
  5. Tilslut et DisplayPort 1.4-kabel mellem DisplayPort-skærmen og transmitterporten på Bitec DisplayPort 1.4 FMC-kortet, og sørg for, at skærmen er aktiv.
  6. Tænd brættet med SW1.

Board Status LED'er, trykknapper og DIP switche
Intel Arria 10 GX FPGA Development Kit har otte status LED'er (med både grønne og røde emittere), tre brugertrykknapper og otte bruger DIP-switche. 8K DisplayPort Video Format Conversion Design Example tænder LED'erne for at angive tilstanden for DisplayPort-modtagerlinket. Trykknapperne og DIP-switcherne giver dig mulighed for at ændre designindstillinger.

Status-lysdioder

Tabel 2. Status LED'er

LED Beskrivelse
Røde lysdioder
0 DDR4 EMIF-kalibrering i gang.
1 DDR4 EMIF-kalibrering mislykkedes.
7:2 Ubrugt.
Grønne lysdioder
0 Lyser, når DisplayPort-modtagerlink-træningen er afsluttet med succes, og designet modtager stabil video.
5:1 DisplayPort-modtager baneantal: 00001 = 1 bane

00010 = 2 baner

00100 = 4 baner

7:6 DisplayPort-modtager banehastighed: 00 = 1.62 Gbps

01 = 2.7 Gbps

10 = 5.4 Gbps

11 = 8.1 Gbps

Tabellen viser den status, som hver LED angiver. Hver LED-position har både røde og grønne indikatorer, der kan lyse uafhængigt af hinanden. Enhver LED, der lyser orange, betyder, at både den røde og den grønne indikator er tændt.

Bruger trykknapper
Brugertrykknap 0 styrer visningen af ​​Intel-logoet i øverste højre hjørne af outputdisplayet. Ved opstart muliggør designet visning af logoet. Ved at trykke på trykknappen 0 skifter aktiveringen af ​​logovisningen. Brugertrykknap 1 styrer designets skaleringstilstand. Når en kilde eller vask er hot-plugged, er designet som standard enten:

  • Passthrough-tilstand, hvis inputopløsningen er mindre end eller lig med outputopløsningen
  • Nedskaleringstilstand, hvis inputopløsningen er større end outputopløsningen

Hver gang du trykker på brugertrykknap 1, skifter designet til den næste skaleringstilstand (gennemgang > opskaler, opskaler > nedskaler, nedskaler > gennemgang). Brugertrykknap 2 er ubrugt.

Bruger DIP-switche
DIP-switcherne styrer den valgfri Nios II-terminaludskrivning og indstillingerne for outputvideoformatet, der drives gennem DisplayPort-senderen.

Tabel 3. DIP-switche
Tabellen viser funktionen af ​​hver DIP-switch. DIP-switchene, nummereret 1 til 8 (ikke 0 til 7), svarer til tallene, der er trykt på switch-komponenten. For at sætte hver kontakt til ON, skal du flytte den hvide kontakt mod LCD'et og væk fra LED'erne på kortet.

Skifte Fungere
1 Aktiverer Nios II-terminaludskrivning, når den er indstillet til ON.
2 Indstil output bits pr. farve:

FRA = 8 bit

ON = 10 bit

4:3 Indstil outputfarverum og sampling: SW4 OFF, SW3 OFF = RGB 4:4:4 SW4 OFF, SW3 ON = YCbCr 4:4:4 SW4 ON, SW3 OFF = YCbCr 4:2:2 SW4 ON, SW3 ON = YCbCr 4:2:0
6:5 Indstil outputopløsning og billedhastighed: SW4 OFF, SW3 OFF = 4K60

SW4 OFF, SW3 ON = 4K30 SW4 ON, SW3 OFF = 1080p60 SW4 ON, SW3 ON = 1080i60

8:7 Ubrugt

Kørsel af 8K DisplayPort Video Format Conversion Design Example
Du skal downloade den kompilerede .sof file for designet til Intel Arria 10 GX FPGA Development Kit til at køre designet.
TRIN:

  1. I Intel Quartus Prime-softwaren skal du klikke på Værktøjer ➤ Programmer.
  2. I programmeringsvinduet skal du klikke på Auto Detect for at scanne JTAG kæde og opdag de tilsluttede enheder.
    Hvis der vises et pop op-vindue, hvor du bliver bedt om at opdatere programmørens enhedsliste, skal du klikke på Ja.
  3. På enhedslisten skal du vælge rækken mærket 10AX115S2F45.
  4. Klik på Skift File…
    • For at bruge den prækompilerede version af programmeringen file som Intel inkluderer som en del af designdownloaden, vælg master_image/pre_compiled.sof.
    • For at bruge din programmering file oprettet af den lokale kompilering, vælg output_files/top.sof.
  5. Slå Programmer/Konfigurer til i rækken 10AX115S2F45 på enhedslisten.
  6. Klik på Start.
    Når programmøren er færdig, kører designet automatisk.
  7. Åbn en Nios II-terminal for at modtage de udgående tekstbeskeder fra designet, ellers låser designet sig efter et antal switchskift (kun hvis du sætter bruger DIP-switch 1 til ON).
    • a. Åbn et terminalvindue og skriv nios2-terminal
    • b. Tryk på Enter.

tilsluttet ved indgangen. Uden kilde er outputtet en sort skærm med Intel-logoet i øverste højre hjørne af skærmen.

Funktionel beskrivelse af 8K DisplayPort Video Format Conversion Design Example

Platform Designer-systemet, udx10_dp.qsys, indeholder DisplayPort-modtager- og transmitterprotokol-IP, videopipeline-IP og Nios II-processorkomponenterne. Designet forbinder Platform Designer-systemet til DisplayPort-modtageren og senderens PHY-logik (som indeholder interface-transceiverne) og transceiver-rekonfigurationslogikken på øverste niveau i et Verilog HDL RTL-design file (top.v). Designet omfatter en enkelt videobehandlingssti mellem DisplayPort-indgangen og DisplayPort-udgangen.

Figur 2. Blokdiagram
Diagrammet viser blokkene i 8K DisplayPort Video Format Conversion Design Example. Diagrammet viser ikke nogle af de generiske perifere enheder forbundet til Nios II, Avalon-MM mellem Nios II-processoren og de andre komponenter i systemet. Designet accepterer video fra en DisplayPort-kilde til venstre, behandler videoen gennem videopipelinen fra venstre mod højre, før videoen sendes ud til DisplayPort-vasken til højre.intel-AN-889-8K-DisplayPort-Video-Format-Conversion-Design-Example-2

DisplayPort-modtager PHY og DisplayPort-modtager IP
Bitec DisplayPort FMC-kortet giver en buffer til DisplayPort 1.4-signalet fra DisplayPort-kilden. Kombinationen af ​​DisplayPort Receiver PHY og DisplayPort Receiver IP afkoder det indkommende signal for at skabe en videostream. DisplayPort-modtageren PHY indeholder transceiverne til at deserialisere de indgående data, og DisplayPort-modtagerens IP afkoder DisplayPort-protokollen. Den kombinerede DisplayPort-modtager IP behandler det indkommende DisplayPort-signal uden nogen software. Det resulterende videosignal fra DisplayPort-modtagerens IP er et indbygget pakkeformat streaming. Designet konfigurerer DisplayPort-modtageren til 10-bit output.

DisplayPort til Clocked Video IP
Det pakkede streamingdataformat, der outputtes af DisplayPort-modtageren, er ikke direkte kompatibelt med det clockede videodataformat, som Clocked Video Input IP forventer. DisplayPort til Clocked Video IP er en brugerdefineret IP til dette design. Den konverterer DisplayPort-outputtet til et kompatibelt clocket videoformat, som du kan tilslutte direkte til Clocked Video Input. DisplayPort til Clocked Video IP kan ændre ledningssignaleringsstandarden og kan ændre rækkefølgen af ​​farveplanerne inden for hver pixel. DisplayPort-standarden specificerer farverækkefølge, der er anderledes end Intels videopipeline IP-bestilling. Nios II-processoren styrer farveskiftet. Den læser det aktuelle farverum til transmission fra DisplayPort-modtagerens IP med dens Avalon-MM slave-interface. Den dirigerer DisplayPort til Clocked Video IP for at anvende den passende korrektion med dens Avalon-MM slave-interface.

Uret videoinput
Den clockede videoindgang behandler det clockede videointerfacesignal fra DisplayPort til Clocked Video IP og konverterer det til Avalon-ST Videosignalformat. Dette signalformat fjerner al horisontal og lodret blanking-information fra videoen og efterlader kun aktive billeddata. IP-adressen pakker den som én pakke pr. videoramme. Den tilføjer også yderligere metadatapakker (benævnt kontrolpakker), der beskriver opløsningen af ​​hver videoramme. Avalon-ST-videostrømmen gennem behandlingsrøret er fire pixel parallelt med tre symboler pr. pixel. Den clockede videoindgang giver clock-krydsning for konverteringen fra det clockede videosignal med variabel hastighed fra DisplayPort-modtagerens IP til den faste clock-hastighed (300 MHz) for video-IP-pipelinen.

Stream Cleaner
Strømrenseren sikrer, at Avalon-ST Video-signalet, der sendes til behandlingspipelinen, er fejlfrit. Hot plugging af DisplayPort-kilden kan få designet til at præsentere ufuldstændige frames af data til den clockede videoinput IP og generere fejl i den resulterende Avalon-ST Video-stream. Størrelsen af ​​pakkerne, der indeholder videodataene for hver frame, svarer så ikke til størrelsen rapporteret af de tilknyttede kontrolpakker. Strømrenseren registrerer disse forhold og tilføjer yderligere data (grå pixels) til slutningen af ​​de stødende videopakker for at fuldende rammen og matche specifikationen i kontrolpakken.

Chroma Resampler (input)
De videodata, som designet modtager ved input fra DisplayPort, kan være 4:4:4, 4:2:2 eller 4:2:0 chroma sampled. Indgangschroma resampler tager den indkommende video i ethvert format og konverterer den til 4:4:4 i alle tilfælde. For at give højere visuel kvalitet, chroma resampler bruger den mest beregningsmæssigt dyre filtrerede algoritme. Nios II-processoren læser de aktuelle chroma sampling-format fra DisplayPort-modtagerens IP via dens Avalon-MM slave-interface. Det kommunikerer formatet til chroma resampler via sin Avalon-MM slave-interface.

Farverumskonverter (input)
Indgangsvideodataene fra DisplayPort kan bruge enten RGB- eller YCbCr-farverummet. Indgangsfarverumskonverteren tager den indkommende video i det format, den ankommer, og konverterer den til RGB i alle tilfælde. Nios II-processoren læser det aktuelle farverum fra DisplayPort-modtagerens IP med dens Avalon-MM slave-interface; den indlæser de korrekte konverteringskoefficienter til kroma resampler gennem sin Avalon-MM slave-interface.

Clipper
Klipperen vælger et aktivt område fra den indgående videostream og kasserer resten. Softwarekontrollen, der kører på Nios II-processoren, definerer den region, der skal vælges. Området afhænger af opløsningen af ​​de data, der modtages ved DisplayPort-kilden, og outputopløsningen og skaleringstilstanden. Processoren kommunikerer regionen til Clipperen gennem dens Avalon-MM slave-interface.

Skaler
Designet anvender skalering til de indgående videodata i henhold til den modtagede inputopløsning og den outputopløsning, du har brug for. Du kan også vælge mellem tre skaleringstilstande (opskalering, nedskalering og passthrough). To Scalar IP'er giver skaleringsfunktionaliteten: den ene implementerer enhver påkrævet nedskalering; den anden implementerer opskalering. Designet kræver to scalers.

  • Når scaleren implementerer en nedskalering, producerer den ikke gyldige data for hver clock-cyklus ved dens output. F.eksample, hvis der implementeres et 2x nedskaleringsforhold, er det gyldige signal ved udgangen højt hver anden clock-cyklus, mens designet modtager hver lige nummererede inputlinje og derefter lavt for hele de ulige nummererede inputlinjer. Denne sprængningsadfærd er fundamental for processen med at reducere datahastigheden ved output, men er uforenelig med downstream Mixer IP, som generelt forventer en mere konsistent datahastighed for at undgå underflow ved output. Designet kræver Frame Buffer mellem enhver downscale og mixer. Rammebufferen gør det muligt for mixeren at læse dataene med den hastighed, den kræver.
  • Når scaleren implementerer en opskalering, producerer den gyldige data for hver clock-cyklus, så den følgende mixer har ingen problemer. Imidlertid accepterer den muligvis ikke nye inputdata for hver clock-cyklus. At tage en 2x opskalere som eksample, på de lige nummererede udgangslinjer accepterer den et nyt dataslag hver anden klokcyklus, og accepterer derefter ingen nye inputdata på de ulige nummererede outputlinjer. Opstrøms Clipper kan dog producere data med en helt anden hastighed, hvis den anvender et betydeligt klip (f.eks. under en zoom-in). Derfor skal en Clipper og upscale generelt adskilles af en Frame Buffer, hvilket kræver, at Scaler sidder efter Frame Bufferen i pipelinen. Scaler skal sidde foran Frame Buffer for nedskalering, så designet implementerer to separate scalers på hver side af Frame Buffer: en til opskalering; den anden til nedskalering.

To skalere reducerer også den maksimale DDR4-båndbredde, der kræves af Frame Buffer. Du skal altid anvende nedskaleringer før rammebufferen, hvilket minimerer datahastigheden på skrivesiden. Anvend altid opskaleringer efter Frame Buffer, hvilket minimerer datahastigheden på læsesiden. Hver Scaler får den nødvendige input-opløsning fra kontrolpakkerne i den indkommende videostream, mens Nios II-processoren med Avalon-MM slave-interface indstiller output-opløsningen for hver Scaler.

Rammebuffer
Rammebufferen bruger DDR4-hukommelsen til at udføre triple buffering, der gør det muligt for video- og billedbehandlingspipelinen at udføre billedhastighedskonvertering mellem de indgående og udgående billedhastigheder. Designet kan acceptere enhver input frame rate, men den samlede pixelhastighed må ikke overstige 1 giga pixels pr. sekund. Nios II-softwaren indstiller output-frame-hastigheden til enten 30 eller 60 fps, afhængigt af den output-tilstand, du vælger. Output frame rate er en funktion af Clocked Video Output-indstillingerne og output-videopixel-uret. Modtrykket, som Clocked Video Output påfører pipelinen, bestemmer den hastighed, hvormed læsesiden af ​​Frame Buffer trækker videoframes fra DDR4.

Blander
Mixeren genererer et sort baggrundsbillede i fast størrelse, som Nios II-processoren programmerer til at matche størrelsen på det aktuelle outputbillede. Mixeren har to indgange. Den første indgang forbindes til opskaleren for at tillade designet at vise output fra den aktuelle videopipeline. Den anden indgang forbindes til ikongeneratorblokken. Designet aktiverer kun mixerens første input, når den detekterer aktiv, stabil video ved den clockede videoindgang. Derfor bevarer designet et stabilt outputbillede ved udgangen, mens der er hot-plugging ved indgangen. Designet alpha blander det andet input til mixeren, forbundet til ikongeneratoren, over både baggrunds- og videopipelinebillederne med 50 % gennemsigtighed.

Farverumskonverter (output)
Outputfarverumskonverteren transformerer input RGB-videodata til enten RGB- eller YCbCr-farverum baseret på runtime-indstillingen fra softwaren.

Chroma Resampler (output)
Udgangschroma resampler konverterer formatet fra 4:4:4 til et af formaterne 4:4:4, 4:2:2 eller 4:2:0. Softwaren indstiller formatet. Udgangschroma resampler bruger også filtreret algoritme til at opnå video i høj kvalitet.

Uret videoudgang
Den clockede videoudgang konverterer Avalon-ST Video-streamen til det clockede videoformat. Den clockede videoudgang tilføjer horisontal og lodret blanking og synkroniseringstidsinformation til videoen. Nios II-processoren programmerer de relevante indstillinger i den clockede videoudgang afhængigt af outputopløsningen og billedhastigheden, du anmoder om. Den clockede videoudgang konverterer uret, krydser fra det faste 300 MHz pipeline-ur til den variable hastighed af den clockede video.

Uret video til DisplayPort
DisplayPort-senderkomponenten accepterer data formateret som clocked video. Forskelle i ledningssignalering og deklaration af ledningsgrænseflader i Platform Designer forhindrer dig i at forbinde Clocked Video Output direkte til DisplayPort-transmitterens IP. Clocked Video til DisplayPort-komponenten er designspecifik brugerdefineret IP for at give den enkle konvertering, der kræves mellem Clocked Video Output og DisplayPort-transmitterens IP. Det udskifter også rækkefølgen af ​​farveplanerne i hver pixel for at tage højde for de forskellige farveformateringsstandarder, der bruges af Avalon-ST Video og DisplayPort.

DisplayPort Transmitter IP og DisplayPort Transmitter PHY
DisplayPort-senderen IP og DisplayPort-senderen PHY arbejder sammen for at konvertere videostrømmen fra clocket video til en kompatibel DisplayPort-stream. DisplayPort-transmitterens IP håndterer DisplayPort-protokollen og koder for de gyldige DisplayPort-data, mens DisplayPort-senderen PHY indeholder transceiverne og skaber det seriel højhastighedsoutput.

Nios II-processor og periferiudstyr
Platform Designer-systemet indeholder en Nios II-processor, som styrer DisplayPort-modtageren og senderens IP'er og runtime-indstillingerne for behandlingspipelinen. Nios II-processoren forbinder til disse grundlæggende perifere enheder:

  • En on-chip hukommelse til at gemme programmet og dets data.
  • AJTAG UART for at vise software printf output (via en Nios II terminal).
  • En systemtimer til at generere forsinkelser på millisekundniveau på forskellige punkter i softwaren, som krævet af DisplayPort-specifikationen for minimumshændelsesvarigheder.
  • LED'er til at vise systemstatus.
  • Trykknapper for at tillade skift mellem skaleringstilstande og for at aktivere og deaktivere visning af Intel-logoet.
  • DIP-switche til at tillade skift af outputformat og til at aktivere og deaktivere udskrivning af meddelelser til en Nios II-terminal.

Hot-plug-hændelser på både DisplayPort-kilden og sink-brandafbrydelser, der udløser Nios II-processoren til at konfigurere DisplayPort-transmitteren og pipeline korrekt. Hovedsløjfen i softwarekoden overvåger også disse værdier på trykknapperne og DIP-switcherne og ændrer pipeline-opsætningen i overensstemmelse hermed.

I²C-controllere
Designet indeholder to I²C-controllere (Si5338 og PS8460) til at redigere indstillingerne for tre af de andre komponenter på Intel Arria 10 10 GX FPGA Development Kit. To Si5338-urgeneratorer på Intel Arria 10 GX FPGA Development Kit forbindes til den samme I²C-bus. Den første genererer referenceuret til DDR4 EMIF. Som standard er dette ur indstillet til 100 MHz til brug med 1066 MHz DDR4, men dette design kører DDR4 ved 1200 MHz, hvilket kræver et referenceur på 150 MHz. Ved opstart ændrer Nios II-processoren via I²C-controllerens periferiudstyr indstillingerne i registerkortet for den første Si5338 for at øge hastigheden på DDR4-referenceuret til 150MHz. Den anden Si5338 clockgenerator genererer vid_clk for den clockede videogrænseflade mellem pipelinen og DisplayPort-transmitterens IP. Du skal justere hastigheden på dette ur for hver anden outputopløsning og billedhastighed, der understøttes af designet. Du kan justere hastigheden på køretid, når Nios II-processoren kræver det. Bitec DisplayPort 1.4 FMC-datterkortet gør brug af Parade PS8460 jitter cleaning repeater og retimer. Ved opstart redigerer Nios II-processoren standardindstillingerne for denne komponent for at opfylde kravene til designet.

Softwarebeskrivelse

8K DisplayPort Video Format Conversion Design Example inkluderer IP fra Intel Video and Image Processing Suite og DisplayPort interface IP Alle disse IP'er kan behandle frames af data uden yderligere indgriben, når de er konfigureret korrekt. Du skal implementere ekstern kontrol på højt niveau for at konfigurere IP'erne til at begynde med, og når systemet ændrer sig, f.eks. DisplayPort-modtager eller -sender-hot-plug-hændelser eller brugertrykknapaktivitet. I dette design giver en Nios II-processor, der kører skræddersyet kontrolsoftware, kontrol på højt niveau. Ved opstart af softwaren:

  • Indstiller DDR4 ref clock til 150 MHz for at tillade 1200 MHz DDR hastighed, og nulstiller derefter eksternt hukommelsesinterface IP for at genkalibrere på det nye referenceur.
  • Opsætter PS8460 DisplayPort-repeater og retimer.
  • Initialiserer DisplayPort-modtager- og sendergrænseflader.
  • Initialiserer behandlingspipeline-IP'erne.

Når initialiseringen er færdig, går softwaren ind i en kontinuerlig while-løkke, hvor den tjekker for og reagerer på en række hændelser.

Skifter til skaleringstilstand
Designet understøtter tre grundlæggende skaleringstilstande; passthrough, upscale og downscale. I passthrough-tilstand foretager designet ingen skalering af input-videoen, i opskaleringstilstand opskalerer designet input-video, og i downscale-tilstand nedskalerer designet input-video.
De fire blokke i behandlingen pipeline; Clipper, downscaler, upscaler og Mixer bestemmer præsentationen af ​​det endelige output i hver tilstand. Softwaren styrer indstillingerne for hver blok afhængigt af den aktuelle inputopløsning, outputopløsning og den skaleringstilstand, du vælger. I de fleste tilfælde sender Clipper input uændret igennem, og Mixer-baggrundsstørrelsen er den samme størrelse som den endelige, skalerede version af inputvideoen. Men hvis inputvideoopløsningen er større end outputstørrelsen, er det ikke muligt at anvende en opskalering på inputvideoen uden først at klippe den. Hvis input-opløsningen er mindre end outputtet, kan softwaren ikke anvende en nedskalering uden at anvende et Mixer-baggrundslag, der er større end input-videolaget, som tilføjer sorte bjælker rundt om outputvideoen.

Tabel 4. Processing Block Pipelines
Denne tabel viser handlingen af ​​de fire behandlingspipelineblokke i hver af de ni kombinationer af skaleringstilstand, inputopløsning og outputopløsning.

Mode ind > ud ind = ud ind < ud
Gennemløb Klip til outputstørrelse Ingen nedskalering Intet klip

Ingen nedskalering

Intet klip

Ingen nedskalering

fortsatte…
Mode ind > ud ind = ud ind < ud
  Ingen eksklusivitet

Ingen sort kant

Ingen eksklusivitet

Ingen sort kant

Ingen eksklusivitet

Sorte kantpuder til outputstørrelse

Fornemme Klip til 2/3 outputstørrelse Ingen nedskalering

Opskaler til outputstørrelse Ingen sort kant

Klip til 2/3 outputstørrelse Ingen nedskalering

Opskaler til outputstørrelse Ingen sort kant

Intet klip

Ingen nedskalering

Opskaler til outputstørrelse Ingen sort kant

Nedskalere Intet klip

Nedskalering til outputstørrelse Ingen opskalering

Ingen sort kant

Intet klip

Nedskalering til outputstørrelse Ingen opskalering

Ingen sort kant

Intet klip

Nedskalering til 2/3 inputstørrelse Ingen opskalering

Sorte kantpuder til outputstørrelse

Skift mellem tilstande ved at trykke på brugertrykknap 1. Softwaren overvåger værdierne på trykknapperne ved hver kørsel gennem løkken (det laver en software-debounce) og konfigurerer IP'erne i behandlingspipelinen korrekt.

Ændringer ved DisplayPort-indgangen
Ved hver kørsel gennem løkken undersøger softwaren status for Clocked Video Input og leder efter ændringer i stabiliteten af ​​input-videostrømmen. Softwaren anser videoen for at være stabil, hvis:

  • Clocked Video Input rapporterer, at den urede video er låst.
  • Inputopløsningen og farverum har ingen ændringer siden den forrige kørsel gennem løkken.

Hvis inputtet var stabilt, men det har mistet låsen, eller videostrømmens egenskaber er ændret, stopper softwaren, at Clocked Video Input sender video gennem pipelinen. Det indstiller også mixeren til at stoppe med at vise input-videolaget. Outputtet forbliver aktivt (viser en sort skærm og Intel-logoet) under enhver modtager-hotplug-hændelse eller opløsningsændringer.
Hvis inputtet ikke var stabilt, men nu er stabilt, konfigurerer softwaren pipelinen til at vise den nye inputopløsning og farverum, den genstarter outputtet fra CVI, og den indstiller Mixeren til at vise inputvideolaget igen. Genaktiveringen af ​​mixerlaget er ikke øjeblikkelig, da Frame Buffer muligvis stadig gentager gamle rammer fra et tidligere input, og designet skal rydde disse rammer. Så kan du genaktivere skærmen for at undgå fejl. Rammebufferen holder en optælling af antallet af frames læst fra DDR4, som Nios II-processoren kan læse. Softwaren sampviser denne optælling, når inputtet bliver stabil, og genaktiverer Mixer-laget, når antallet er steget med fire frames, hvilket sikrer, at designet fjerner alle gamle frames fra bufferen.

DisplayPort-sender Hot-plug-begivenheder
Hot-plug-hændelser på DisplayPort-senderen udløser et afbrydelse i softwaren, der sætter et flag for at advare hovedsoftwaresløjfen om en ændring i outputtet. Når designet registrerer et sender-hot-plug, læser softwaren EDID for den nye skærm for at bestemme, hvilke opløsninger og farverum den understøtter. Hvis du indstiller DIP-switchene til en tilstand, som den nye skærm ikke kan understøtte, falder softwaren tilbage til en mindre krævende visningstilstand. Den konfigurerer derefter pipelinen, DisplayPort-transmitterens IP og Si5338-delen, der genererer senderen vid_clk til den nye outputtilstand. Når inputtet ser ændringer, vises Mixer-laget for inputvideoen ikke, da softwaren redigerer indstillinger for pipelinen. Softwaren genaktiverer ikke
displayet indtil efter fire billeder, når de nye indstillinger passerer gennem rammen
buffer.

Ændringer til User DIP Switch-indstillinger
Positionerne af brugerens DIP-switche 2 til 6 styrer outputformatet (opløsning, billedhastighed, farverum og bits pr. farve) drevet gennem DisplayPort-senderen. Når softwaren registrerer ændringer på disse DIP-switche, kører den gennem en sekvens, der er praktisk talt identisk med en senders hotplug. Du behøver ikke forespørge på senderens EDID, da den ikke ændres.

Revisionshistorik for AN 889: 8K DisplayPort-videoformatkonverteringsdesign Eksample

Tabel 5. Revisionshistorik for AN 889: 8K DisplayPort-videoformatkonverteringsdesign Eksample

Dokumentversion Ændringer
2019.05.30 Første udgivelse.


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.

Dokumenter/ressourcer

intel AN 889 8K DisplayPort Video Format Konvertering Design Eksample [pdfBrugervejledning
AN 889 8K DisplayPort Video Format Konvertering Design Eksample, AN 889, 8K DisplayPort-videoformatkonverteringsdesign Eksample, Formatkonverteringsdesign Eksample, Konverteringsdesign Eksample

Referencer

Efterlad en kommentar

Din e-mailadresse vil ikke blive offentliggjort. Påkrævede felter er markeret *