intel AN 889 8K DisplayPort Video Format Cunversione Design Example
Circa u 8K DisplayPort Video Format Cunversione Design Example
U 8K DisplayPort Video Format Cunversione Design Example integra l'IP di cunnessione di video Intel DisplayPort 1.4 cù una pipeline di processazione video. U disignu furnisce una scala di alta qualità, cunversione di u spaziu di culore è cunversione di freccia di frames per flussi video finu à 8K à 30 frames per seconda, o 4K à 60 frames per secondu.
U disignu hè altamente configurabile in software è hardware, chì permette una cunfigurazione rapida di u sistema è riprogettazione. U disignu hè destinatu à i dispositi Intel® Arria® 10 è utilizeghja l'ultime 8K ready Intel FPGA IP da u Video and Image Processing Suite in Intel Quartus® Prime v19.2.
À propositu di DisplayPort Intel FPGA IP
Per creà disinni Intel Arria 10 FPGA cù interfacce DisplayPort, istanziate l'IP DisplayPort Intel FPGA. Tuttavia, questa IP DisplayPort implementa solu u protocolu di codificazione o decodificazione per DisplayPort. Ùn include micca i transceivers, PLL, o funziunalità di ricunfigurazione di transceiver necessariu per implementà u cumpunente seriale d'alta velocità di l'interfaccia. Intel furnisce transceiver separati, PLL è cumpunenti IP di ricunfigurazione. A selezzione, a parametrizzazione è a cunnessione di sti cumpunenti per creà un ricevitore o interfaccia di trasmettitore DisplayPort cumplettamente cumpletu richiede cunniscenze specializate.
Intel furnisce stu disignu per quelli chì ùn sò micca esperti di transceiver. L'editore di parametri GUI per u DisplayPort IP permette di custruisce u disignu.
Crea una istanza di l'IP DisplayPort (chì pò esse solu ricevitore, trasmettitore solu o ricevitore è trasmettitore cumminatu) in Platform Designer o in u Catalogu IP. Quandu parametrizzate l'istanza IP DisplayPort, pudete selezziunate per generà un exampu disignu per quella cunfigurazione particulare. U disignu cumminatu di u receptore è u trasmettitore hè un passaghju simplice, induve l'output da u ricevitore alimenta direttamente à u trasmettitore. Un disignu di passthrough fissu crea un receptore PHY cumplettamente funziunale, un trasmettitore PHY, è blocchi di ricunfigurazione chì implementanu tutta a logica di transceiver è PLL. Pudete o cupià direttamente e sezioni pertinenti di u disignu, o aduprà u disignu cum'è riferimentu. U disignu genera un DisplayPort Intel Arria 10 FPGA IP Design Example è poi aghjunghje parechji di i files generati direttamente in a lista di compilazione utilizata da u prughjettu Intel Quartus Prime. Questi include:
- Files per creà istanze IP parametrizzate per transceivers, PLL è blocchi di ricunfigurazione.
- Verilog HDL files per cunnette questi IP in u receptore di livellu più altu PHY, u trasmettitore PHY, è i blocchi Arbiter di ricunfigurazione di transceiver.
- Sinopsys design constraint (SDC) files per stabilisce e restrizioni di timing pertinenti.
Funzioni di u 8K DisplayPort Video Format Cunversione Design Example
- Input:
- A cunnessione DisplayPort 1.4 supporta risoluzioni da 720 × 480 à 3840 × 2160 à qualsiasi frame rate finu à 60 fps, è risoluzioni finu à 7680 × 4320 à 30 fps.
- Supportu hot-plug.
- Supportu per i formati di culore RGB è YCbCr (4:4:4, 4:2:2 è 4:2:0).
input. - U software rileva automaticamente u formatu di input è stabilisce a pipeline di trasfurmazioni in modu adattatu.
- Output:
- Connettività DisplayPort 1.4 selezionabile (via DIP switches) per una risoluzione 1080p, 1080i o 2160p à 60 fps, o 2160p à 30 fps.
- Supportu hot-plug.
- Interruttori DIP per stabilisce u formatu di culore di output necessariu in RGB, YCbCr 4:4:4, YCbCr 4:2:2, o YCbCr 4:2:0.
- Unicu pipeline di trasfurmazione RGB 10K 8-bit cù scala configurabile da u software è cunversione di freccia di frame:
- 12-tap Lanczos downscaler.
- Scaler Lanczos à 16 fasi, 4 tap.
- Triple buffering video frame buffer furnisce cunversione di frame rate.
- Mixer cù alpha-blending permette a superposizione di icone OSD.
Cumincià cù u 8K DisplayPort Video Format Cunversione Design Example
Requisiti di Hardware è Software
U 8K DisplayPort Video Format Cunversione Design Example richiede hardware è software specifichi.
Hardware:
- Intel Arria 10 GX FPGA Development Kit, cumprese a DDR4 Hilo Daughter Card
- Scheda figlia Bitec DisplayPort 1.4 FMC (revisione 11)
- Sorgente DisplayPort 1.4 chì pruduce video finu à 3840x2160p60 o 7680x4320p30
- Lavamanu DisplayPort 1.4 chì mostra video finu à 3840x2160p60
- Cavi DisplayPort 1.4 certificati VESA.
Software:
- OS Windows o Linux
- L'Intel Quartus Prime Design Suite v19.2, chì include:
- Intel Quartus Prime Pro Edition
- Designer di piattaforma
- Nios® II EDS
- Biblioteca IP Intel FPGA (cumpresa a Suite di Trattamentu Video è Image)
U disignu funziona solu cù questa versione di Intel Quartus Prime.
Scaricamentu è Installazione di Intel 8K DisplayPort Video Format Conversion Design Example
U disignu hè dispunibule nantu à Intel Design Store.
- Scaricate u prughjettu archiviatu file udx10_dp.par.
- Estrae u prughjettu Intel Quartus Prime da l'archiviu:
- a. Aprite Intel Quartus Prime Pro Edition.
- b. Cliccate File ➤ Open Project.
A finestra Open Project si apre. - c. Navigate è selezziunate udx10_dp.par file.
- d. Cliccate Open.
- e. In a finestra Open Design Template, stabilisce u cartulare di destinazione à u locu desideratu per u prughjettu estratto. L'entrate per u mudellu di disignu file è u nome di u prugettu deve esse currettu è ùn avete micca bisognu di cambià.
- f. Cliccate OK.
Disegnu Files per l'Intel 8K DisplayPort Video Format Conversion Design Example
Table 1. Design Files
File o Nome di u cartulare | Descrizzione |
ip | Contene l'istanza IP files per tutte l'istanze IP Intel FPGA in u disignu:
• Un IP DisplayPort (trasmettitore è ricevitore) • Un PLL chì genera clock à u livellu superiore di u disignu • Tutti l'IP chì custituiscenu u sistema Platform Designer per u pipeline di trasfurmazioni. |
immagine_maestra | Contene pre_compiled.sof, chì hè una prugrammazione di bordu precompilata file per u disignu. |
non_acds_ip | Contene codice fonte per IP supplementari in questu disignu chì Intel Quartus Prime ùn include micca. |
sdc | Contene un SDC file chì descrive e restrizioni di timing supplementari chì stu disignu richiede. A SDC files inclusi in autumàticu cù l'istanze IP ùn trattanu micca queste limitazioni. |
software | Contene codice fonte, biblioteche, è script di custruzzione per u software chì corre nantu à u processatore Nios II incrustatu per cuntrullà a funziunalità d'altu livellu di u disignu. |
udx10_dp | Un cartulare in quale Intel Quartus Prime genera output files per u sistema Platform Designer. U output udx10_dp.sopcinfo file permette di generà l'inizializazione di memoria file per a memoria di u software di processore Nios II. Ùn avete micca prima generà u sistema cumpletu di Platform Designer. |
non_acds_ip.ipx | Questu IPX file dichjarà tutte l'IP in u cartulare non_acds_ip à Platform Designer cusì appare in a Biblioteca IP. |
README.txt | Istruzzioni brevi per custruisce è eseguisce u disignu. |
cima.qpf | U prughjettu Intel Quartus Prime file per u disignu. |
cima.qsf | I paràmetri di u prughjettu Intel Quartus Prime file per u disignu. Questu file elenca tutti i files necessariu per custruisce u disignu, cù l'assignazioni di pin è una quantità di altre paràmetri di prughjettu. |
cima.v | Verilog HDL di primu livellu file per u disignu. |
udx10_dp.qsys | U sistema Platform Designer chì cuntene u pipeline di processazione di video, u processatore Nios II è i so periferichi. |
Cumpilà u 8K DisplayPort Video Format Cunversione Design Example
Intel furnisce una prugrammazione di bordu precompilata file per u disignu in u cartulare master_image (pre_compiled.sof) per permette di eseguisce u disignu senza eseguisce una compilazione completa.
PASSI:
- In u software Intel Quartus Prime, apre u prughjettu top.qpf file. L'archiviu scaricatu crea questu file quandu unzip u prugettu.
- Cliccate File ➤ Aprite è selezziunate ip/dp_rx_tx/dp_rx_tx.ip. L'editore di parametri GUI per l'IP DisplayPort si apre, chì mostra i paràmetri per l'istanza DisplayPort in u disignu.
- Cliccate Generate Example Design (micca Generate).
- Quandu a generazione cumpleta, chjude l'editore di paràmetri.
- In File Explorer, navigate à u cartulare di u software è unzip l'archiviu vip_control_src.zip per generà u repertoriu vip_control_src.
- In un terminal BASH, navigate à u software / script è eseguite u script shell build_sw.sh.
U script crea u software Nios II per u disignu. Si crea tramindui un .elf file chì pudete scaricà à u bordu à u tempu di esecuzione, è un .hex file per cumpilà in u prugramma di bordu .sof file. - In u software Intel Quartus Prime, cliccate Processing ➤ Start Compilation.
- Intel Quartus Prime genera u sistema udx10_dp.qsys Platform Designer.
- Intel Quartus Prime stabilisce u prugettu à top.qpf.
A compilazione crea top.sof in output_files annuariu quandu si compie.
Viewing è Rigenerazione di u Sistema di Designer Platform
- Cliccate Strumenti ➤ Platform Designer.
- Selezziunate system name.qsys per l'opzione di sistema Platform Designer.
- Cliccate Open.
Platform Designer apre u sistema. - Review u sistema.
- Rigenerate u sistema:
- a. Cliccate Genera HDL….
- b. In a Finestra Generation, attivate Clear output directories per i target di generazione selezziunati.
- c. Cliccate Generate
Cumpilà u 8K DisplayPort Video Format Cunversione Design Example cù u Nios II Software Build Tools per Eclipse
Avete stallatu un spaziu di travagliu interattivu Nios II Eclipse per u disignu per pruduce un spaziu di travagliu chì usa i stessi cartulare chì u script di custruzzione usa. Se prima eseguite u script di custruzzione, duvete eliminà i cartulare software/vip_control è software/vip_control_bsp prima di creà u spaziu di travagliu Eclipse. Se ripete u script di custruzzione in ogni puntu, soprascrive u spaziu di travagliu Eclipse.
PASSI:
- Navigate à u cartulare di u software è unzip l'archiviu vip_control_src.zip per generà u repertoriu vip_control_src.
- In u cartulare di u prughjettu installatu, crea un novu cartulare è u nome di u spaziu di travagliu.
- In u software Intel Quartus Prime, cliccate Strumenti ➤ Nios II Software Build Tools for Eclipse.
- a. In a finestra di Workspace Launcher, selezziunate u cartulare di u spaziu di travagliu chì avete creatu.
- b. Cliccate OK.
- In a finestra Nios II - Eclipse, cliccate File ➤ Novu ➤ Applicazione Nios II è BSP da Template.
Apparirà a finestra di dialogu Applicazione Nios II è BSP da Template.- a. In u SOPC Information File casella, selezziunate u udx10_dp/ udx10_dp.sopcinfo file. U Nios II SBT per Eclipse riempie u nome CPU cù u nome di processore da u .sopcinfo file.
- b. In a casella di u nome di u prughjettu, scrive vip_control.
- c. Selezziunà Prughjettu Blank da a lista di mudelli.
- d. Cliccate Next.
- e. Selezziunate Crea un novu prughjettu BSP basatu annantu à u mudellu di prughjettu di l'applicazione cù u nome di prughjettu vip_control_bsp.
- f. Activate Utilizà u locu predeterminatu.
- g. Cliccate Finish per creà l'applicazione è u BSP basatu annantu à .sopcinfo file.
Dopu chì u BSP hà generatu, i prughjetti vip_control è vip_control_bsp appariscenu in a tabulazione Esplora di Prughjetti.
- In Windows Explorer, copiate u cuntenutu di u repertoriu software/vip_control_src à u cartulare di novu software/vip_control.
- In a tabulazione Project Explorer di a finestra Nios II - Eclipse, cliccate right in u cartulare vip_control_bsp è selezziunate Nios II > BSP Editior.
- a. Selezziunà Nisunu da u menù a tendina per sys_clk_timer.
- b. Selezziunate cpu_timer da u menù a tendina per timestamp_timer.
- c. Attivate enable_small_c_library.
- d. Cliccate Generate.
- e. Quandu a generazione cumpleta, cliccate Esci.
- In a tabulazione di l'Explorer di u Prughjettu, cliccate right-click u cartulare vip_control è cliccate Properties.
- a. In a finestra di Pruprietà per vip_control, expandà e proprietà di l'applicazione Nios II è cliccate nantu à Percorsi di l'applicazione Nios II.
- b. Cliccate Aggiungi… accantu à Progetti di Biblioteche.
- c. In a finestra di i Prughjetti di Biblioteche, andate à u udx10.dp \ spftware \ vip_control_src directory è selezziunate u cartulare bkc_dprx.syslib.
- d. Cliccate OK. Un missaghju apparisce Cunvertite in una strada relative. Cliccate Sì.
- e. Repetite i passi 7.b in pagina 8 è 7.c in pagina 8 per i repertorii bkc_dptx.syslib è bkc_dptxll_syslib
- f. Cliccate OK.
- Selezziunate Prughjettu ➤ Custruisce tuttu per generà u file vip_control.elf in u cartulare software/vip_control.
- Custruite u mem_init file per a compilazione Intel Quartus Prime:
- a. Cliccate right vip_control in a finestra di Project Explorer.
- b. Selezziunate Fate Targets ➤ Custruisce ....
- c. Selezziunà mem_init_generate.
d. Cliccate Custruisce.
U software Intel Quartus Prime genera u
udx10_dp_onchip_memory2_0_onchip_memory2_0.hex file in u cartulare software/vip_control/mem_init.
- Cù u disignu chì funziona nantu à una scheda cunnessa, eseguite a prugrammazione vip_control.elf file creatu da e custruzzioni Eclipse.
- a. Cliccate right vip_control folder in a tabulazione Project Explorer di a finestra Nios II -Eclipse.
- b. Selezzione Run As ➤ Nios II Hardware. Se tenete una finestra di terminal Nios II aperta, chjude prima di scaricà u novu software.
Configurazione di l'Intel Arria 10 GX FPGA Development Kit
Descrive cumu cunfigurà u kit per eseguisce u 8K DisplayPort Video Format Conversion Design Example.
Figura 1. Intel Arria 10 GX Development Kit cù HiLo Daughter Card
A figura mostra a tavula cù u dissipatore di calore blu sguassatu per vede a pusizione di a carta DDR4 Hilo. Intel ricumanda chì ùn eseguite micca u disignu senza u dissipatore di calore in pusizione.
PASSI:
- Aduprate a carta Bitec DisplayPort 1.4 FMC à a scheda di sviluppu usendu FMC Port A.
- Assicuratevi chì l'interruttore di alimentazione (SW1) hè spento, dopu cunnette u cunnessu di alimentazione.
- Cunnette un cable USB à u vostru urdinatore è à u MicroUSB Connector (J3) nantu à u pianu di sviluppu.
- Attach a DisplayPort 1.4 cable between the DisplayPort source and the Receiver port of the Bitec DisplayPort 1.4 FMC card è assicuratevi chì a fonte hè attiva.
- Attach a DisplayPort 1.4 cable between the DisplayPort display and the Transmitter port of the Bitec DisplayPort 1.4 FMC card è assicuratevi chì a visualizazione hè attiva.
- Accende u tavulinu cù SW1.
LED di Statu di Scheda, Pulsanti è Interruttori DIP
L'Intel Arria 10 GX FPGA Development Kit hà ottu LED di status (cù emettitori verdi è rossi), trè pulsanti d'utilizatori è ottu interruttori DIP d'utilizatori. U 8K DisplayPort Video Format Cunversione Design Example illumina i LED per indicà u statu di u ligame di u ricevitore DisplayPort. I pulsanti è i switch DIP permettenu di cambià i paràmetri di disignu.
LED di statu
Table 2. Status LED
LED | Descrizzione |
LED rossi | |
0 | Calibrazione DDR4 EMIF in corso. |
1 | A calibrazione DDR4 EMIF hà fiascatu. |
7: 2 | Inutilizatu. |
LED verdi | |
0 | S'illumina quandu a furmazione di u ligame di u receptore DisplayPort finisce cù successu, è u disignu riceve un video stabile. |
5: 1 | Conte di corsia di u ricevitore DisplayPort: 00001 = 1 corsia
00010 = 2 corsie 00100 = 4 corsie |
7: 6 | Velocità di corsia di u ricevitore DisplayPort: 00 = 1.62 Gbps
01 = 2.7 Gbps 10 = 5.4 Gbps 11 = 8.1 Gbps |
A tavula lista u statutu chì ogni LED indica. Ogni pusizioni LED hà dui indicatori rossi è verdi chì ponu illuminà indipindente. Ogni LED aranciu brillanti significa chì l'indicatori rossi è verdi sò accesi.
Pulsanti di l'utilizatori
Pulsante di l'utilizatori 0 cuntrolla a visualizazione di u logu Intel in l'angulu superiore destra di a visualizazione di output. À l'iniziu, u disignu permette a visualizazione di u logò. A pressione di u buttone 0 cambia l'attivazione per a visualizazione di u logu. Pulsante di l'utilizatori 1 cuntrola u modu di scala di u disignu. Quandu una fonte o un lavamanu hè cunnessu in caldu, u disignu predeterminatu hè:
- Modu passthrough, se a risoluzione di input hè menu o uguale à a risoluzione di output
- Modu downscale, se a risoluzione di input hè più grande di a risoluzione di output
Ogni volta chì premete u buttone 1 di l'utilizatori, u disignu passa à u prossimu modu di scala (passthrough> upscale, upscale> downscale, downscale> passthrough). Pulsante di l'utilizatori 2 hè inutilizatu.
Interruttori DIP d'utilizatori
L'interruttori DIP cuntrolanu a stampa di terminale Nios II opzionale è i paràmetri per u formatu video di output guidatu da u trasmettitore DisplayPort.
Table 3. DIP Switches
A tabella elenca a funzione di ogni DIP switch. L'interruttori DIP, numerati da 1 à 8 (micca da 0 à 7), currispondenu à i numeri stampati nantu à u cumpunente di u switch. Per mette ogni interruttore in ON, move l'interruttore biancu versu u LCD è alluntanate da i LED nantu à u bordu.
Cambia | Funzione |
1 | Permette a stampa di terminal Nios II quandu hè attivatu. |
2 | Impostare i bit di output per colore:
OFF = 8 bit ON = 10 bit |
4: 3 | Imposta u spaziu di culore di output è 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 | Imposta a risoluzione di output è a frequenza di fotogrammi: SW4 OFF, SW3 OFF = 4K60
SW4 OFF, SW3 ON = 4K30 SW4 ON, SW3 OFF = 1080p60 SW4 ON, SW3 ON = 1080i60 |
8: 7 | Inutilizatu |
Esecuzione di u 8K DisplayPort Video Format Cunversione Design Example
Avete da scaricà u .sof compilatu file per u disignu à l'Intel Arria 10 GX FPGA Development Kit per eseguisce u disignu.
PASSI:
- In u software Intel Quartus Prime, cliccate Strumenti ➤ Programmatore.
- In a finestra di u Programmatore, cliccate Auto Detect per scansà u JTAG catena è scopre i dispusitivi cunnessi.
Se una finestra pop-up vi dumandu di aghjurnà a lista di i dispositi di u Programmeru, cliccate Iè. - In a lista di i dispositi, selezziunate a fila tichjata 10AX115S2F45.
- Cliccate Cambia File…
- Per utilizà a versione precompilata di u prugramma file chì Intel include cum'è parte di u scaricamentu di u disignu, selezziunate master_image/pre_compiled.sof.
- Per utilizà a vostra prugrammazione file creatu da a compilazione locale, selezziunate output_files/top.sof.
- Accende u prugramma / cunfigurazione in a fila 10AX115S2F45 di a lista di i dispositi.
- Cliccate Start.
Quandu u programatore cumpleta, u disignu corre automaticamente. - Apertura un terminal Nios II per riceve i missaghji di testu di output da u disignu, altrimenti u disignu si chjude dopu à una quantità di cambiamenti di switch (solu s'ellu si mette l'interruttore DIP di l'utilizatore 1 à ON).
- a. Aprite una finestra di terminal è scrivite nios2-terminal
- b. Press Enter.
cunnessu à l'input. Senza fonte, l'output hè una schermu neru cù u logu Intel in l'angulu superiore destra di u screnu.
Descrizzione Funziunale di u 8K DisplayPort Video Format Cunversione Design Example
U sistema Platform Designer, udx10_dp.qsys, cuntene l'IP di u protokollu di u receptore è u trasmettitore DisplayPort, l'IP di pipeline di video, è i cumpunenti di u processatore Nios II. U disignu cunnetta u sistema Platform Designer à u ricevitore DisplayPort è a logica PHY di trasmettitore (chì cuntene i transceivers d'interfaccia) è a logica di ricunfigurazione di transceiver à u livellu superiore in un disignu Verilog HDL RTL. file (top.v). U disignu comprende una sola strada di trasfurmazioni video trà l'input DisplayPort è l'output DisplayPort.
Figura 2. Diagramma di Blocu
U diagramma mostra i blocchi in u 8K DisplayPort Video Format Conversion Design Example. U diagramma ùn mostra micca alcuni di i periferici generici cunnessi à u Nios II, l'Avalon-MM trà u processatore Nios II, è l'altri cumpunenti di u sistema. U disignu accetta u video da una fonte DisplayPort à a manca, processa u video attraversu a pipeline di video da manca à diritta prima di passà u video à u lavamanu DisplayPort à a diritta.
DisplayPort Receiver PHY è DisplayPort Receiver IP
A carta Bitec DisplayPort FMC furnisce un buffer per u signale DisplayPort 1.4 da a fonte DisplayPort. A cumminazzioni di DisplayPort Receiver PHY è DisplayPort Receiver IP decode u signale entrante per creà un flussu video. U ricevitore DisplayPort PHY cuntene i transceivers per deserializà e dati in entrata è u ricevitore DisplayPort IP decode u protocolu DisplayPort. U DisplayPort Receiver IP cumminatu processa u signale DisplayPort entrante senza software. U segnu video risultatu da l'IP di u receptore DisplayPort hè un formatu di streaming packetized nativu. U disignu cunfigurà u ricevitore DisplayPort per output 10-bit.
DisplayPort à IP Video Clocked
L'output di u formatu di dati in streaming packetized da u ricevitore DisplayPort ùn hè micca direttamente cumpatibile cù u formatu di dati video clock chì l'IP di l'Input Video Clocked aspetta. U DisplayPort to Clock Video IP hè un IP persunalizatu per stu disignu. Cunverte a pruduzzioni DisplayPort in un furmatu di video clock compatible chì pudete cunnette direttamente à l'Input Video Clock. U DisplayPort to Clock Video IP pò mudificà u standard di signalazione di filu è pò cambià l'ordine di i piani di culore in ogni pixel. U standard DisplayPort specifica l'ordine di culore chì hè diversu da l'ordine IP di pipeline di video Intel. U processatore Nios II cuntrolla u scambiu di culore. Leghje u spaziu di culore attuale per a trasmissione da l'IP di u receptore DisplayPort cù a so interfaccia slave Avalon-MM. Dirige u DisplayPort à l'IP Video Clocked per applicà a correzione approprita cù a so interfaccia slave Avalon-MM.
Input Video Clocked
L'input di video clock processa u signale di l'interfaccia di u video clock da u DisplayPort à l'IP di u Video Clocked è u cunvertisce in u formatu di signale Avalon-ST Video. Stu formatu di signale striscia tutte l'infurmazioni di blanking horizontale è verticale da u video lascendu solu dati di stampa attiva. L'IP packetizeghja cum'è un pacchettu per frame video. Aghjunghje ancu pacchetti di metadati supplementari (riferiti cum'è pacchetti di cuntrollu) chì descrizanu a risoluzione di ogni quadru video. U flussu Avalon-ST Video attraversu u pipa di trasfurmazioni hè quattru pixel in parallelu, cù trè simbuli per pixel. L'input video clock furnisce u clock crossing per a cunversione da u segnu video clock variabile da u ricevitore DisplayPort IP à a freccia fissa (300 MHz) per u pipeline video IP.
Stream Cleaner
U pulitore flussu assicura chì u signale Video Avalon-ST passanu à u pipeline di trasfurmazioni hè senza errore. Hot plugging di a surgente DisplayPort pò causari lu disignu di prisentà frames incomplete di dati à l 'input video clock IP è à generà errori in u risultatu Avalon-ST Video stream. A dimensione di i pacchetti chì cuntenenu i dati video per ogni quadru ùn currispondenu micca à a dimensione rappurtata da i pacchetti di cuntrollu assuciati. U stream cleaner detecta queste cundizioni è aghjunghje dati supplementari (pixels grigi) à a fine di i pacchetti di video offensive per cumplettà u quadru è currisponde à l'specificazione in u pacchettu di cuntrollu.
Chroma Resampler (Input)
I dati video chì u disignu riceve à l'input da DisplayPort pò esse 4:4:4, 4:2:2, o 4:2:0 chroma samppurtatu. L'input chroma resampler piglia u video entrata in ogni furmatu è cunvertisce in 4:4:4 in tutti i casi. Per furnisce una qualità visuale più altu, u chroma resampler usa l'algoritmu filtratu più caru di calculu. U processore Nios II leghje l'attuale chroma sampling da l'IP di u receptore DisplayPort via a so interfaccia slave Avalon-MM. Comunica u furmatu à u chroma resampler via a so interfaccia slave Avalon-MM.
Convertitore di spaziu di culore (Input)
I dati video di input da DisplayPort ponu aduprà u spaziu di culore RGB o YCbCr. U cunvertitore di spaziu di culore di input piglia u video in entrata in qualunque formatu ghjunghje è u cunvertisce in RGB in tutti i casi. U processatore Nios II leghje u spaziu di culore attuale da l'IP di u receptore DisplayPort cù a so interfaccia slave Avalon-MM; carica i coefficienti di cunversione curretti à u chroma resampler attraversu a so interfaccia slave Avalon-MM.
Clipper
U clipper selezziunate una zona attiva da u flussu di video in entrata è scarta u restu. U cuntrollu di u software in esecuzione nantu à u processatore Nios II definisce a regione per selezziunà. A regione dipende da a risuluzione di e dati ricevuti à a fonte DisplayPort è a risoluzione di output è u modu di scala. U processatore cumunica a regione à u Clipper attraversu a so interfaccia slave Avalon-MM.
Scaler
U disignu applica a scala à i dati video in entrata secondu a risoluzione di input ricevuta, è a risoluzione di output chì avete bisognu. Pudete ancu selezziunate trà trè modi di scala (upscale, downscale è passthrough). Dui IP scalari furniscenu a funziunalità di scaling: unu implementa qualsiasi downscaling necessariu; l'altru implementa l'upscaling. U disignu richiede dui scalers.
- Quandu u scaler implementa un downscale, ùn pruduce micca dati validi nantu à ogni ciclu di clock à a so output. Per esample, s'ellu implementa un rapportu downscale 2x, u signale validu à l'output hè altu ogni altru ciclu di clock mentre u disignu riceve ogni linea di input numerata pari, è poi bassu per l'inseme di e linee di input numerate impari. Stu cumpurtamentu di bursting hè fundamentale per u prucessu di riduzzione di a tarifa di dati à l'output, ma hè incompatibile cù l'IP Mixer downstream, chì in generale aspetta una tarifa di dati più consistente per evità underflow à l'output. U disignu richiede u Frame Buffer trà qualsiasi downscale è mixer. U Frame Buffer permette à u Mixer di leghje e dati à u ritmu necessariu.
- Quandu u scaler implementa un upscale, pruduce dati validi nantu à ogni ciculu di clock, cusì u miscelatore seguente ùn hà micca prublemi. Tuttavia, ùn pò micca accettà novi dati di input in ogni ciclu di clock. Pigliendu un 2x upscale cum'è example, nantu à e linee di output numerate pari accetta un novu battitu di dati ogni altru ciclu di clock, dopu ùn accetta micca novi dati di input nantu à e linee di output numerate dispari. Tuttavia, u Clipper upstream pò pruduce dati à un ritmu completamente diversu se applica un clip significativu (per esempiu, durante un zoom-in). Per quessa, un Clipper è upscale deve esse in generale siparati da un Frame Buffer, chì impone u Scaler à pusà dopu à u Frame Buffer in u pipeline. U Scaler deve esse pusatu davanti à u Frame Buffer per downscales, cusì u disignu implementa dui scaler separati à ogni latu di Frame Buffer: unu per upscale; l'altru per downscale.
Dui Scalers riducenu ancu a larghezza di banda massima DDR4 necessaria da u Frame Buffer. Duvete sempre applicà downscales prima di u Frame Buffer, minimizendu a tarifa di dati in u latu di scrittura. Sempre applicate upscale dopu à u Frame Buffer, chì minimizza a tarifa di dati in u latu di lettura. Ogni Scaler riceve a risoluzione di input necessaria da i pacchetti di cuntrollu in u flussu di video in entrata, mentre chì u processore Nios II cù l'interfaccia slave Avalon-MM stabilisce a risoluzione di output per ogni Scaler.
Frame Buffer
U buffer di frames usa a memoria DDR4 per realizà buffering triple chì permette à u pipeline di processazione di video è di l'imaghjini per realizà a cunversione di frame rate trà i frame rates entranti è in uscita. U disignu pò accettà qualsiasi freccia di frame di input, ma a tarifa totale di pixel ùn deve micca più di 1 giga pixel per seconda. U software Nios II stabilisce a freccia di frame di output à 30 o 60 fps, secondu u modu di output chì sceglite. A frequenza di u quadru di output hè una funzione di i paràmetri di l'output video clocked è u clock di pixel video di output. A backpressure chì l'Output Video Clocked si applica à a pipeline determina a tarifa à quale u latu di lettura di u Frame Buffer tira i frames video da a DDR4.
Mixer
U mixer genera una maghjina di fondo neru di dimensione fissa chì u prucessore Nios II programa per currisponde à a dimensione di l'imagine di output attuale. U mixer hà dui inputs. U primu input si cunnetta à l'upscaler per permette à u disignu di mostra l'output da u pipeline video attuale. U secondu input cunnetta à u bloccu generatore di icone. U disignu permette solu a prima entrata di u mixer quandu detecta un video attivu è stabile à l'input video clock. Dunque, u disignu mantene una maghjina di output stabile à l'output mentre hot-plugging à l'input. L'alfa di cuncepimentu combina a seconda input à u mixer, cunnessu à u generatore di icone, sia nantu à l'imaghjini di sfondate è video pipeline cù 50% di trasparenza.
Convertitore di spaziu di culore (output)
U cunvertitore di u spaziu di culore di output trasforma i dati video RGB di input in u spaziu di culore RGB o YCbCr basatu annantu à l'impostazione di runtime da u software.
Chroma Resampler (output)
L'output chroma resampler converte u furmatu da 4:4:4 à unu di i formati 4:4:4, 4:2:2, o 4:2:0. U software stabilisce u furmatu. L'output chroma resampler usa ancu un algoritmu filtratu per ottene video di alta qualità.
Output Video Clocked
A pruduzzioni video clock converts u flussu Avalon-ST Video à u furmatu video clock. L'output di video clock aghjunghjenu l'informazione di u tempu di sincronizazione horizontale è verticale à u video. U processore Nios II programa i paràmetri pertinenti in l'output video clock secondu a risoluzione di output è a freccia di fotogrammi chì dumandate. L'output video clock converte u clock, passendu da u clock di pipeline fissu 300 MHz à a tarifa variabile di u video clock.
Clock Video à DisplayPort
U cumpunente di trasmettitore DisplayPort accetta dati furmatu cum'è video clock. Differenzi in a signalazione di filu è a dichjarazione di l'interfaccia di cundutti in Platform Designer impediscenu di cunnette l'output video clocked direttamente à l'IP trasmettitore DisplayPort. U cumpunente Video Clocked à DisplayPort hè un IP persunalizatu specificu per u disignu per furnisce a cunversione simplice necessaria trà l'Output Video Clocked è l'IP trasmettitore DisplayPort. Hè ancu scambià l'urdinamentu di i piani di culore in ogni pixel per cuntà i diversi standard di furmatu di culore utilizati da Avalon-ST Video è DisplayPort.
DisplayPort Transmitter IP è DisplayPort Transmitter PHY
U trasmettitore DisplayPort IP è u trasmettitore DisplayPort PHY travaglianu inseme per cunvertisce u flussu video da u video clock in un flussu DisplayPort conforme. U trasmettitore DisplayPort IP gestisce u protocolu DisplayPort è codifica i dati DisplayPort validi, mentre chì u trasmettitore DisplayPort PHY cuntene i transceivers è crea l'output seriale d'alta velocità.
Processore Nios II è periferiche
U sistema Platform Designer cuntene un processore Nios II, chì gestisce u ricevitore DisplayPort è l'IP di trasmettitore è i paràmetri di runtime per u pipeline di trasfurmazioni. U processore Nios II cunnetta à sti periferichi basi:
- Una memoria in chip per almacenà u prugramma è i so dati.
- AJTAG UART per vede u software printf output (via un terminal Nios II).
- Un timer di u sistema per generà ritardi di livellu di millisecondi in diversi punti di u software, cum'è necessariu da a specificazione DisplayPort di durata minima di l'avvenimentu.
- LED per vede u statu di u sistema.
- Push-button switches per permette di cambià trà i modi di scala è per attivà è disattivà a visualizazione di u logu Intel.
- Interruttori DIP per permette u cambiamentu di u formatu di output è per attivà è disattivà a stampa di missaghji à un terminal Nios II.
Eventi hot-plug sia in a fonte DisplayPort sia in l'interruzioni di u focu chì attivanu u Processor Nios II per cunfigurà u trasmettitore DisplayPort è a pipeline currettamente. U ciclu principale in u codice di u software monitoreghja ancu i valori nantu à i pulsanti è i switch DIP è altera a configurazione di pipeline in cunseguenza.
Controllers I²C
U disignu cuntene dui controller I²C (Si5338 è PS8460) per edità i paràmetri di trè di l'altri cumpunenti nantu à l'Intel Arria 10 10 GX FPGA Development Kit. Dui generatori di clock Si5338 nantu à l'Intel Arria 10 GX FPGA Development Kit sò cunnessi à u stessu bus I²C. U primu genera u clock di riferimentu per u DDR4 EMIF. Per automaticamente, stu clock hè stallatu à 100 MHz per l'utilizazione cù 1066 MHz DDR4, ma stu disignu corre a DDR4 à 1200 MHz, chì esige un clock di riferimentu di 150 MHz. À l'iniziu, u processatore Nios II, via u perifericu di u controller I²C, cambia i paràmetri in a mappa di registru di u primu Si5338 per aumentà a velocità di u clock di riferimentu DDR4 à 150MHz. U secondu generatore di clock Si5338 genera u vid_clk per l'interfaccia di video clock trà u pipeline è l'IP trasmettitore DisplayPort. Duvete aghjustà a velocità di stu clock per ogni diversa risoluzione di output è frame rate supportatu da u disignu. Pudete aghjustà a velocità in u tempu di esecuzione quandu u processatore Nios II richiede. A carta figlia Bitec DisplayPort 1.4 FMC usa u ripetitore è retimer di pulizia di jitter Parade PS8460. À l'iniziu, u processatore Nios II edita i paràmetri predeterminati di stu cumpunente per risponde à i requisiti di u disignu.
Descrizione di u Software
U 8K DisplayPort Video Format Cunversione Design Example include IP da l'Intel Video and Image Processing Suite è l'interfaccia DisplayPort IP Tutti questi IP ponu processà frames di dati senza alcuna intervenzione in più quandu a stallazione curretta. Duvete implementà un cuntrollu esterno d'altu livellu per cunfigurà l'IP per cumincià è quandu u sistema cambia, per esempiu, ricevitore DisplayPort o trasmettitore eventi hot-plug o attività di buttone di l'utilizatori. In questu disignu, un processore Nios II, chì esegue un software di cuntrollu apposta, furnisce u cuntrollu di altu livellu. À l'iniziu di u software:
- Pone u clock di rif DDR4 à 150 MHz per permette una velocità DDR di 1200 MHz, poi resetta l'IP di l'interfaccia di memoria esterna per ricalibrate nantu à u novu clock di riferimentu.
- Configura u ripetitore è u retimer PS8460 DisplayPort.
- Inizializza l'interfaccia di trasmettitore è ricevitore DisplayPort.
- Inizializza l'IP di pipeline di trasfurmazioni.
Quandu l'inizializazione hè cumpleta, u software entra in un ciclu mentri continuu, verificandu è reagisce à una quantità di avvenimenti.
Cambiamenti à u Modu Scaling
U disignu supporta trè modi di scala basi; passthrough, upscale è downscale. In u modu passthrough, u disignu ùn scala micca u video di input, in u modu upscale u disignu upscale u video input, è in u modu downscale u disignu riduce u video input.
I quattru blocchi in u pipeline di trasfurmazioni; u Clipper, u downscaler, u upscaler è u Mixer determinanu a presentazione di u risultatu finali in ogni modu. U software cuntrolla i paràmetri di ogni bloccu secondu a risoluzione di input attuale, a risoluzione di output, è u modu di scala chì selezziunate. In a maiò parte di i casi, u Clipper passa l'input senza alterazione, è a dimensione di u fondu di u Mixer hè a stessa dimensione di a versione finale, scalata di u video di input. Tuttavia, se a risoluzione di u video di input hè più grande di a dimensione di output, ùn hè micca pussibule di applicà un upscale à u video di input senza prima clipping it. Se a risoluzione di l'input hè menu di l'output, u software ùn pò micca applicà un downscale senza applicà una strata di fondo Mixer chì hè più grande di a strata di video di input, chì aghjunghjenu barre nere intornu à u video di output.
Table 4. Processing Block Pipelines
Questa tabella elenca l'azzione di i quattru blocchi di pipeline di trasfurmazioni in ognuna di e nove cumminazzioni di u modu di scala, a risoluzione di input è a risoluzione di output.
Modu | in > fora | in = fora | in < fora |
Passthrough | Clip à a dimensione di output Senza downscale | Nisun clip
Nisun downscale |
Nisun clip
Nisun downscale |
cuntinuò… |
Modu | in > fora | in = fora | in < fora |
Nisun upscale
Nisuna fruntiera nera |
Nisun upscale
Nisuna fruntiera nera |
Nisun upscale
Cuscinetti di cunfini neri à a dimensione di output |
|
Upscale | Clip à a taglia di output 2/3 No downscale
Upscale à a taglia di output Nisun bordu neru |
Clip à a taglia di output 2/3 No downscale
Upscale à a taglia di output Nisun bordu neru |
Nisun clip
Nisun downscale Upscale à a taglia di output Nisun bordu neru |
Downscale | Nisun clip
Downscale à a dimensione di output Nisun upscale Nisuna fruntiera nera |
Nisun clip
Downscale à a dimensione di output Nisun upscale Nisuna fruntiera nera |
Nisun clip
Riduzzione à a dimensione di input 2/3 No upscale Cuscinetti di cunfini neri à a dimensione di output |
Cambià trà i modi pressu u buttone di l'utilizatori 1. U software monitoreghja i valori nantu à i buttoni nantu à ogni run through the loop (fa un debounce di u software) è cunfigurà l'IP in u pipeline di trasfurmazioni in modu adattatu.
Cambiamenti à l'Input DisplayPort
In ogni corsa à traversu u ciclu, u software sonda l'estatus di l'Input Video Clocked, cercandu cambiamenti in a stabilità di u flussu di video di input. U software cunsidereghja chì u video hè stabile se:
- L'Input Video Clock informa chì u video clock hè chjusu cù successu.
- A risoluzione di l'input è u spaziu di culore ùn anu micca cambiamenti da a corsa precedente attraversu u ciclu.
Se l'input era stabile ma hà persu a serratura o e proprietà di u flussu di video sò cambiate, u software ferma l'Input Video Clocked chì invià u video attraversu u pipeline. Imposta ancu u Mixer per cessà di vede a strata di video di input. L'output resta attivu (mostra una schermu nera è u logu Intel) durante qualsiasi eventi di hotplug di ricevitore o cambiamenti di risoluzione.
Se l'input ùn era micca stabile, ma hè issa stabile, u software cunfigurà u pipeline per vede a nova risoluzione di input è u spaziu di culore, riavvia l'output da u CVI, è stabilisce u Mixer per visualizà a capa di video di input di novu. A riattivazione di a strata di mixer ùn hè micca immediata postu chì u Frame Buffer pò ancu ripetiri vechji frames da un input precedente è u disignu deve sguassate questi frames. Allora pudete riattivate a visualizazione per evità glitching. U buffer di frame mantene un cuntu di u numeru di frames leghje da a DDR4, chì u processatore Nios II pò leghje. U software samples stu cuntu quandu l'input diventa stabile è riattiva a strata Mixer quandu u cuntu hè aumentatu di quattru frames, chì assicura chì u disignu sguassate qualsiasi vechji frames da u buffer.
Trasmettitore DisplayPort Eventi Hot-plug
L'avvenimenti hot-plug in u trasmettitore DisplayPort sparanu una interruzzione in u software chì stabilisce una bandiera per avvisà u ciclu di u software principale di un cambiamentu in l'output. Quandu u disignu rileva un trasmettitore hot plug, u software leghje l'EDID per a nova visualizazione per determinà quali risoluzioni è spazii di culore sò supportati. Se mette i DIP switches à un modu chì a nova visualizazione ùn pò micca sustene, u software torna à un modu di visualizazione menu esigente. Dopu cunfigura u pipeline, l'IP di trasmettitore DisplayPort, è a parte Si5338 chì genera u trasmettitore vid_clk per u novu modu di output. Quandu l'input vede cambiamenti, a capa Mixer per u video di input ùn si mostra micca cum'è u software edita i paràmetri per u pipeline. U software ùn hè micca riabilitatu
a visualizazione finu à quattru frames quandu i novi paràmetri passanu per u quadru
buffer.
Cambiamenti à i paràmetri di l'interruttore DIP d'utilizatore
E pusizioni di l'interruttori DIP di l'utilizatori 2 à 6 cuntrolanu u formatu di output (risoluzione, frame rate, spaziu di culore è bits per culore) guidatu da u trasmettitore DisplayPort. Quandu u software rileva cambiamenti nantu à questi interruttori DIP, passa per una sequenza chì hè virtualmente identica à un trasmettitore hot plug. Ùn avete bisognu di interrogà u trasmettitore EDID perchè ùn cambia micca.
Storia di Revisione per AN 889: 8K DisplayPort Video Format Conversion Design Example
Table 5. Storia di Revisione per AN 889: 8K DisplayPort Video Format Conversion Design Example
Versione di documentu | Cambiamenti |
2019.05.30 | Liberazione iniziale. |
Intel Corporation. Tutti i diritti riservati. Intel, u logu Intel è altri marchi Intel sò marchi di Intel Corporation o di e so filiali. Intel garantisce a prestazione di i so prudutti FPGA è semiconduttori à e specificazioni attuali in cunfurmità cù a garanzia standard di Intel, ma si riserva u dirittu di fà cambiamenti à qualsiasi prudutti è servizii in ogni mumentu senza avvisu. Intel ùn assume alcuna rispunsabilità o responsabilità derivante da l'applicazione o l'usu di qualsiasi informazione, pruduttu o serviziu descritta quì, salvu cum'è espressamente accunsentutu in scrittura da Intel. I clienti Intel sò cunsigliati per ottene l'ultima versione di e specificazioni di u dispositivu prima di cunfidendu qualsiasi infurmazione publicata è prima di fà ordini per prudutti o servizii.
* Altri nomi è marche ponu esse rivendicate cum'è a pruprietà di l'altri.
Documenti / Risorse
![]() |
intel AN 889 8K DisplayPort Video Format Cunversione Design Example [pdfGuida di l'utente AN 889 8K DisplayPort Video Format Cunversione Design Example, AN 889, 8K DisplayPort Video Format Cunversione Design Example, Format Cunversione Design Example, Cunversione Design Example |