HDMI Arria 10 FPGA IP Design Example
Guía de usuarioHDMI Intel® Arria 10 FPGA IP
Deseño Example Guía de usuario
Actualizado para Intel®Quartus®
Prime Design Suite: 22.4
Versión IP: 19.7.1
HDMI Intel® FPGA IP Design Example Guía de inicio rápido para dispositivos Intel® Arria® 10
Os dispositivos HDMI Intel® 10 inclúen un banco de probas de simulación e un deseño de hardware que admite compilación e probas de hardware.
Deseño IP FPGA example para Intel Arria®
O HDMI Intel FPGA IP ofrece o seguinte deseño, por exemploamples:
- Deseño de retransmisión HDMI 2.1 RX-TX co modo de enlace de taxa fixa (FRL) activado
- Deseño de retransmisión HDMI 2.0 RX-TX co modo FRL desactivado
- Deseño HDCP sobre HDMI 2.0
Nota: A función HDCP non está incluída no software Intel® Quartus Prime Pro Edition.
Para acceder á función HDCP, póñase en contacto con Intel en https://www.intel.com/content/www/us/en/broadcast/products/programmable/applications/connectivity-solutions.html.
Cando xeras un deseño example, o editor de parámetros crea automaticamente o fileé necesario para simular, compilar e probar o deseño en hardware.
Figura 1. Etapas de desenvolvementoInformación relacionada
Guía de usuario de HDMI Intel FPGA IP
1.1. Xeración do deseño
Use o editor de parámetros IP HDMI Intel FPGA no software Intel Quartus Prime para xerar o deseño, por exemploamples. Intel Corporation. Todos os dereitos reservados. Intel, o logotipo de Intel e outras marcas de Intel son marcas comerciais de Intel Corporation ou das súas subsidiarias. Intel garante o rendemento dos seus produtos FPGA e semicondutores segundo as especificacións actuais de acordo coa garantía estándar de Intel, pero resérvase o dereito de facer cambios en calquera produto e servizo en calquera momento e sen previo aviso. Intel non asume ningunha responsabilidade ou responsabilidade derivada da aplicación ou uso de calquera información, produto ou servizo descrito aquí, salvo que Intel o acorde expresamente por escrito. Recoméndase aos clientes de Intel que obteñan a versión máis recente das especificacións do dispositivo antes de confiar en calquera información publicada e antes de facer pedidos de produtos ou servizos. *Outros nomes e marcas poden ser reclamados como propiedade doutros.
Comezando polos Nios® II EDS no software Intel Quartus Prime Pro Edition versión 19.2 e Intel Quartus Prime Standard Edition versión 19.1, Intel eliminou o compoñente Cygwin na versión Windows* de Nios II EDS, substituíndoo por Windows* Subsystem for Linux (WSL). Se es usuario de Windows*, debes instalar WSL antes de xerar o teu deseño, por exemploample.
Figura 2. Xeración do fluxo de deseño
- Crea un proxecto dirixido á familia de dispositivos Intel Arria 10 e selecciona o dispositivo desexado.
- No Catálogo IP, localice e prema dúas veces en Protocolos de interface ➤ Audio e vídeo ➤ IP HDMI Intel FPGA. Aparece a ventá Nova variante IP ou Nova variación IP.
- Especifique un nome de nivel superior para a súa variación de IP personalizada. O editor de parámetros garda a configuración da variación de IP nun file designado .ip ou .qsys.
- Fai clic en Aceptar. Aparece o editor de parámetros.
- Na pestana IP, configure os parámetros desexados tanto para TX como para RX.
- Active o parámetro Support FRL para xerar o deseño HDMI 2.1, por exemploample en modo FRL. Desactívelo para xerar o deseño HDMI 2.0 example sen FRL.
- Sobre o deseño Example, seleccione Arria 10 HDMI RX-TX Retransmit.
- Seleccione Simulación para xerar o banco de probas e seleccione Síntese para xerar o deseño de hardware, por exemploample.Debes seleccionar polo menos unha destas opcións para xerar o deseño example files. Se seleccionas ambos, o tempo de xeración é máis longo.
- Para Xerar File Formatear, seleccione Verilog ou VHDL.
- Para Target Development Kit, seleccione Intel Arria 10 GX FPGA Development Kit. Se seleccionas un kit de desenvolvemento, o dispositivo de destino (seleccionado no paso 4) cambiará para coincidir co dispositivo da placa de destino. Para o kit de desenvolvemento FPGA Intel Arria 10 GX, o dispositivo predeterminado é 10AX115S2F4I1SG.
- Fai clic en Xerar Exampo Deseño.
Información relacionada
Como instalar o subsistema Windows* para Linux* (WSL) no sistema operativo Windows*?
1.2. Simulación do deseño
O banco de probas HDMI simula un deseño de loopback en serie desde unha instancia TX ata unha instancia RX. Xerador de patróns de vídeo interno, audio sampO xerador de le, o xerador de datos de banda lateral e os módulos xeradores de datos auxiliares impulsan a instancia HDMI TX e a saída en serie da instancia TX conéctase á instancia RX no banco de probas.
Figura 3. Fluxo de simulación de deseño
- Vaia ao cartafol de simulación desexado.
- Executa o script de simulación para o simulador compatible que elixas. O script compila e executa o banco de probas no simulador.
- Analiza os resultados.
Táboa 1. Pasos para executar a simulación
Simulador | Directorio de traballo | Instrucións |
Riviera-PRO* | /simulación/aldec | Na liña de comandos, escriba |
vsim -c -do aldec.do | ||
Modelo Sim* | /simulación/mentor | Na liña de comandos, escriba |
vsim -c -do mentor.do | ||
VCS* | /simulation/synopsys/vcs | Na liña de comandos, escriba |
fonte vcs_sim.sh | ||
VCS MX | /simulación/synopsys/ vcsmx | Na liña de comandos, escriba |
fonte vcsmx_sim.sh | ||
Xcelium* Paralelo | /simulación/xcelium | Na liña de comandos, escriba |
fonte xcelium_sim.sh |
Unha simulación exitosa remata coa seguinte mensaxe:
# SYMBOLS_PER_CLOCK = 2
# VIC = 4
# FRL_RATE = 0
# BPP = 0
# FRECUENCIA_AUDIO (kHz) = 48
# AUDIO_CHANNEL = 8
# Pase de simulación
1.3. Compilación e proba do deseño
Para compilar e executar unha proba de demostración no hardware exampo deseño, siga estes pasos:
- Asegúrese de hardware exampa xeración do deseño está completa.
- Inicie o software Intel Quartus Prime e abra o .qpf file.
• Deseño HDMI 2.1 examparchivo con soporte FRL activado: project directory/quartus/a10_hdmi21_frl_demo.qpf
• Deseño HDMI 2.0 examplieiro con soporte FRL desactivado: projectd irectory/quartus/a10_hdmi2_demo.qpf - Fai clic en Procesamento ➤ Iniciar compilación.
- Despois da compilación exitosa, un .sof file xerarase no quartus/output_filedirectorio s.
- Conéctese ao porto FMC incorporado B (J2):
• Deseño HDMI 2.1 example con soporte FRL activado: Bitec HDMI 2.1 FMC Daughter Card Rev 9
Nota: Podes seleccionar a revisión da túa tarxeta filla Bitec HDMI. Baixo o Deseño Example, configure a Revisión da tarxeta filla HDMI en Revisión 9, Revisión ou ningunha tarxeta filla. O valor predeterminado é a revisión 9.
• Deseño HDMI 2.0 example con soporte FRL desactivado: Bitec HDMI 2.0 FMC Daughter Card Rev 11 - Conecte TX (P1) da tarxeta filla Bitec FMC a unha fonte de vídeo externa.
- Conecte a RX (P2) da tarxeta filla Bitec FMC a un receptor de vídeo externo ou analizador de vídeo.
- Asegúrese de que todos os interruptores da placa de desenvolvemento estean na posición predeterminada.
- Configure o dispositivo Intel Arria 10 seleccionado na placa de desenvolvemento mediante o .sof xerado file (Ferramentas ➤ Programador ).
- O analizador debería mostrar o vídeo xerado desde a fonte.
Información relacionada
Guía de usuario do kit de desenvolvemento FPGA Intel Arria 10
1.4. HDMI Intel FPGA IP Design Example Parámetros
Táboa 2.
HDMI Intel FPGA IP Design ExampParámetros para dispositivos Intel Arria 10 Estas opcións están dispoñibles só para dispositivos Intel Arria 10.
Parámetro | Valor |
Descrición |
Deseño dispoñible Example | ||
Seleccione Deseño | Retransmisión Arria 10 HDMI RX-TX | Seleccione o deseño example que se vai xerar. |
Deseño Example Files |
||
Simulación | Acendido apagado | Activa esta opción para xerar o necesario files para o banco de probas de simulación. |
Síntese | Acendido apagado | Activa esta opción para xerar o necesario files para a compilación e demostración de hardware de Intel Quartus Prime. |
Formato HDL xerado |
||
Xerar File Formato | Verilog, VHDL | Selecciona o teu formato HDL preferido para o deseño xerado, por exemploample fileconxunto. Nota: Esta opción só determina o formato para a IP de nivel superior xerada files. Todos os demais files (p. example bancos de proba e nivel superior files para demostración de hardware) están en formato Verilog HDL |
Kit de desenvolvemento de obxectivos |
||
Seleccione Board | Sen kit de desenvolvemento, | Seleccione o taboleiro para o deseño dirixido, por exemploample. |
Kit de desenvolvemento Arria 10 GX FPGA,
Kit de desenvolvemento personalizado |
• Sen kit de desenvolvemento: esta opción exclúe todos os aspectos de hardware para o deseño, por exemploample. O núcleo IP establece todas as asignacións de pinos en pinos virtuais. • Kit de desenvolvemento FPGA Arria 10 GX: esta opción selecciona automaticamente o dispositivo de destino do proxecto para que coincida co dispositivo deste kit de desenvolvemento. Pode cambiar o dispositivo de destino usando o Cambiar o dispositivo de destino parámetro se a revisión da placa ten unha variante de dispositivo diferente. O núcleo IP establece todas as asignacións de pins segundo o kit de desenvolvemento. |
|
•Kit de desenvolvemento personalizado: esta opción permite o deseño example para probar nun kit de desenvolvemento de terceiros cunha FPGA Intel. É posible que teñas que configurar as asignacións de pin por ti mesmo. |
Dispositivo de destino |
||
Cambiar o dispositivo de destino | Acendido apagado | Activa esta opción e selecciona a variante de dispositivo preferida para o kit de desenvolvemento. |
Deseño HDMI 2.1 Example (soporte FRL = 1)
O deseño HDMI 2.1 example no modo FRL mostra un bucle paralelo de instancia HDMI que comprende catro canles RX e catro canles TX.
Táboa 3. Deseño HDMI 2.1 Example para dispositivos Intel Arria 10
Deseño Example | Taxa de datos | Modo de canle |
Tipo de loopback |
Retransmisión Arria 10 HDMI RX-TX | • 12 Gbps (FRL) • 10 Gbps (FRL) • 8 Gbps (FRL) • 6 Gbps (FRL) • 3 Gbps (FRL) • <6 Gbps (TMDS) |
Simplex | Paralelo co buffer FIFO |
Características
- O deseño crea unha instancia de búfer FIFO para realizar un paso directo de fluxo de vídeo HDMI entre a fonte e a fonte HDMI 2.1.
- O deseño é capaz de cambiar entre o modo FRL e o modo TMDS durante o tempo de execución.
- O deseño usa o estado LED para a depuración inicialtage.
- O deseño inclúe instancias HDMI RX e TX.
- O deseño demostra a inserción e filtrado de InfoFrame de Rango Dinámico e Mastering (HDR) no módulo de enlace RX-TX.
- O deseño negocia a taxa FRL entre o sumidoiro conectado a TX e a fonte conectada a RX. O deseño pasa polo EDID desde o lavabo externo ata o RX integrado na configuración predeterminada. O procesador Nios II negocia a base de enlace na capacidade do sumidoiro conectado a TX. Tamén pode activar o interruptor incorporado user_dipsw para controlar manualmente as capacidades TX e RX FRL.
- O deseño inclúe varias funcións de depuración.
A instancia de RX recibe unha fonte de vídeo do xerador de vídeo externo e, a continuación, os datos pasan por un loopback FIFO antes de ser transmitidos á instancia TX. Necesitas conectar un analizador de vídeo externo, un monitor ou un televisor con conexión HDMI ao núcleo TX para verificar a funcionalidade.
2.1. Diagrama de bloques de deseño de retransmisión HDMI 2.1 RX-TX
O deseño de retransmisión HDMI RX-TX example mostra un loopback paralelo no modo de canle simplex para HDMI 2.1 co soporte FRL activado.
Figura 4. Diagrama de bloques de retransmisión HDMI 2.1 RX-TX2.2. Creando un deseño só RX ou só TXns
Para usuarios avanzados, pode usar o deseño HDMI 2.1 para crear un deseño só para TX ou RX.
Figura 5. Compoñentes necesarios para o deseño RX-Only ou TX-OnlyPara usar compoñentes só RX ou TX, elimine os bloques irrelevantes do deseño.
Táboa 4. Requisitos de deseño só para RX e só para TX
Requisitos do usuario | Conservar | Eliminar |
Engadir |
Só HDMI RX | RX Top | • TX Top • Ligazón RX-TX • Subsistema CPU • Árbitro de transceptor |
– |
Só HDMI TX | • TX Top •Subsistema CPU |
• RX Top • Ligazón RX-TX •Arbitro de transceptor |
Xerador de patróns de vídeo (módulo personalizado ou xerado a partir da suite de procesamento de imaxes e vídeos (VIP)) |
Ademais dos cambios RTL, tamén debes editar o script main.c.
• Para deseños só con HDMI TX, desacopla a espera para o estado de bloqueo de HDMI RX eliminando as seguintes liñas e substituíndo por
tx_xcvr_reconfig(tx_frl_rate);
rx_hdmi_lock = READ_PIO(PIO_IN0_BASE, PIO_RX_LOCKED_OFFSET,
PIO_RX_LOCKED_WIDTH);
mentres (rx_hdmi_lock == 0) {
if (check_hpd_isr()) { break; }
// rx_vid_lock = READ_PIO(PIO_IN0_BASE, PIO_VID_LOCKED_OFFSET,
PIO_VID_LOCKED_WIDTH);
rx_hdmi_lock = READ_PIO(PIO_IN0_BASE, PIO_RX_LOCKED_OFFSET,
PIO_RX_LOCKED_WIDTH);
// Reconfig Tx despois de que rx estea bloqueado
if (rx_hdmi_lock == 1) {
se (READ_PIO(PIO_IN0_BASE, PIO_LOOPBACK_MODE_OFFSET,
PIO_LOOPBACK_MODE_WIDTH) == 1) {
rx_frl_rate = READ_PIO(PIO_IN0_BASE, PIO_RX_FRL_RATE_OFFSET,
PIO_RX_FRL_RATE_WIDTH);
tx_xcvr_reconfig(rx_frl_rate);
} máis {
tx_xcvr_reconfig(tx_frl_rate);
}}}
• Para deseños só para HDMI RX, mantén só as seguintes liñas no script main.c:
REDRIVER_INIT();
hdmi_rx_init();
2.3. Requisitos de hardware e software
Intel usa o seguinte hardware e software para probar o deseño, por exemploample.
Hardware
- Kit de desenvolvemento de FPGA Intel Arria 10 GX
- Fonte HDMI 2.1 (xerador Quantum Data 980 48G)
- Sink HDMI 2.1 (analizador de datos cuánticos 980 48G)
- Tarxeta filla Bitec HDMI FMC 2.1 (Revisión 9)
- Cables HDMI 2.1 Categoría 3 (probados con cable HDMI 48 de 2.1 Gbps de Belkin)
Software
- Versión de software Intel Quartus Prime Pro Edition 20.1
2.4. Estrutura do directorio
Os directorios conteñen o xerado files para o deseño IP HDMI Intel FPGA example.
Figura 6. Estrutura do directorio para o deseño ExampleTáboa 5. RTL xerado Files
Cartafoles | Files/Subcarpetas |
común | control_reloxo.ip |
clock_crosser.v | |
dcfifo_inst.v | |
detector_de_bordes.sv | |
fifo.ip | |
saída_buf_i2c.ip |
test_pattern_gen.v | |
tpg.v | |
tpg_data.v | |
gxb | gxb_rx.ip |
gxb_rx_reset.ip | |
gxb_tx.ip | |
gxb_tx_fpll.ip | |
gxb_tx_reset.ip | |
hdmi_rx | hdmi_rx.ip |
hdmi_rx_top.v | |
Panasonic.hex | |
hdmi_tx | hdmi_tx.ip |
hdmi_tx_top.v | |
i2c_slave | i2c_avl_mst_intf_gen.v |
i2c_clk_cnt.v | |
i2c_condt_det.v | |
i2c_databuffer.v | |
i2c_rxshifter.v | |
i2c_slvfsm.v | |
i2c_spksupp.v | |
i2c_txout.v | |
i2c_txshifter.v | |
i2cslave_to_avlmm_bridge.v | |
pll | pll_hdmi_reconfig.ip |
pll_frl.ip | |
pll_reconfig_ctrl.v | |
pll_tmds.ip | |
pll_vidclk.ip | |
quartus.ini | |
rxtx_link | altera_hdmi_hdr_infoframe.v |
aux_mux.qsys | |
aux_retransmit.v | |
aux_src_gen.v | |
ext_aux_filter.v |
rxtx_link.v | |
scfifo_vid.ip | |
reconfig | mr_rx_iopll_tmds/ |
mr_rxphy/ | |
mr_tx_fpll/ | |
altera_xcvr_functions.sv | |
mr_compare.sv | |
mr_rate_detect.v | |
mr_rx_rate_detect_top.v | |
mr_rx_rcfg_ctrl.v | |
mr_rx_reconfig.v | |
mr_tx_rate_detect_top.v | |
mr_tx_rcfg_ctrl.v | |
mr_tx_reconfig.v | |
rcfg_array_streamer_iopll.sv | |
rcfg_array_streamer_rxphy.sv | |
rcfg_array_streamer_rxphy_xn.sv | |
rcfg_array_streamer_txphy.sv | |
rcfg_array_streamer_txphy_xn.sv | |
rcfg_array_streamer_txpll.sv | |
sdc | a10_hdmi2.sdc |
jtag.sdc |
Táboa 6. Simulación xerada Files
Consulte o Banco de probas de simulación sección para máis información
Cartafoles | Files |
aldec | /aldec.do |
/rivierapro_setup.tcl | |
cadencia | /cds.lib |
/hdl.var | |
mentor | /mentor.do |
/msim_setup.tcl | |
sinopsis | /vcs/filelista.f |
/vcs/vcs_setup.sh |
/vcs/vcs_sim.sh | |
/vcsmx/synopsys_sim_setup | |
/vcsmx/vcsmx_setup.sh | |
/vcsmx/vcsmx_sim.sh | |
xcelio | /cds.lib |
/hdl.var | |
/xcelium_setup.sh | |
/xcelium_sim.sh | |
común | /modelsim_files.tcl |
/riviera_files.tcl | |
/vcs_files.tcl | |
/vcsmx_files.tcl | |
/xcelium_files.tcl | |
hdmi_rx | /hdmi_rx.ip |
/Panasonic.hex | |
hdmi_tx | /hdmi_tx.ip |
Táboa 7. Software xerado Files
Cartafoles | Files |
tx_control_src Nota: O cartafol tx_control tamén contén duplicados destes files. |
global.h |
hdmi_rx.c | |
hdmi_rx.h | |
hdmi_tx.c | |
hdmi_tx.h | |
hdmi_tx_read_edid.c | |
hdmi_tx_read_edid.h | |
intel_fpga_i2c.c | |
intel_fpga_i2c.h | |
principal.c | |
pio_ler_escribir.c | |
pio_ler_escribir.h |
2.5. Compoñentes de deseño
O deseño IP HDMI Intel FPGA example consta dos compoñentes comúns de nivel superior e dos compoñentes superiores HDMI TX e RX.
2.5.1. Compoñentes HDMI TX
Os compoñentes principais de HDMI TX inclúen os compoñentes de nivel superior do núcleo TX e o IOPLL, o controlador de reinicio PHY do transceptor, o PHY nativo do transceptor, a xestión da reconfiguración de TX e os bloques de búfer de saída.
Figura 7. Compoñentes superiores de HDMI TXTáboa 8. Compoñentes principais de HDMI TX
Módulo |
Descrición |
Núcleo HDMI TX | O IP recibe datos de vídeo do nivel superior e realiza codificación de datos auxiliares, codificación de datos de audio, codificación de datos de vídeo, codificación, codificación TMDS ou paquetes. |
IOPLL | O IOPLL (iopll_frl) xera o reloxo FRL para o núcleo TX. Este reloxo de referencia recibe o reloxo de saída TX FPLL. Frecuencia de reloxo FRL = Taxa de datos por carrís x 4 / (caracteres FRL por reloxo x 18) |
Controlador de reinicio de transceptor PHY | O controlador de reinicio Transceiver PHY garante unha inicialización fiable dos transceptores TX. A entrada de reinicio deste controlador desenvólvese desde o nivel superior e xera o sinal de reinicio analóxico e dixital correspondente ao bloque Transceiver Native PHY segundo a secuencia de reinicio dentro do bloque. O sinal de saída tx_ready deste bloque tamén funciona como un sinal de reinicio para o HDMI Intel FPGA IP para indicar que o transceptor está funcionando e listo para recibir datos do núcleo. |
Transceptor nativo PHY | Bloque de transceptor duro que recibe os datos paralelos do núcleo HDMI TX e serializa os datos a partir da súa transmisión. Nota: Para cumprir o requisito de sesgo entre canles HDMI TX, configure a opción de modo de vinculación de canles TX no editor de parámetros PHY nativo do transceptor Intel Arria 10 en Unión PMA e PCS. Tamén cómpre engadir o requisito de restrición de sesgo máximo (set_max_skew) ao sinal de reinicio dixital do controlador de reinicio do transceptor (tx_digitalreset) tal e como se recomenda no Guía de usuario de Intel Arria 10 Transceiver PHY. |
TX PLL | O bloque PLL do transmisor proporciona o reloxo rápido en serie ao bloque Transceiver Native PHY. Para este deseño IP HDMI Intel FPGA example, fPLL úsase como TX PLL. TX PLL ten dous reloxos de referencia. • O reloxo de referencia 0 está conectado ao oscilador programable (con frecuencia de reloxo TMDS) para o modo TMDS. Neste deseño example, o reloxo RX TMDS úsase para conectarse ao reloxo de referencia 0 para o modo TMDS. Intel recomenda que use un oscilador programable con frecuencia de reloxo TMDS para o reloxo de referencia 0. • O reloxo de referencia 1 está conectado a un reloxo fixo de 100 MHz para o modo FRL. |
Xestión de reconfiguración de TX | •No modo TMDS, o bloque de xestión de reconfiguración de TX reconfigura o PLL de TX para diferentes frecuencias de reloxo de saída segundo a frecuencia de reloxo TMDS do vídeo específico. •No modo FRL, o bloque de xestión de reconfiguración de TX reconfigura o PLL de TX para fornecer o reloxo rápido en serie para 3 Gbps, 6 Gbps, 8 Gbps, 10 Gbps e 12 Gbps segundo o campo FRL_Rate no rexistro SCDC 0x31. •O bloque de xestión de reconfiguración de TX cambia o reloxo de referencia TX PLL entre o reloxo de referencia 0 para o modo TMDS e o reloxo de referencia 1 para o modo FRL. |
Búfer de saída | Este búfer actúa como unha interface para interactuar coa interface I2C do HDMI DDC e os compoñentes do redriver. |
Táboa 9. Taxa de datos do transceptor e sobresampling Factor cada intervalo de frecuencia de reloxo
Modo | Taxa de datos | Oversampler 1 (2x oversample) | Oversampler 2 (4x oversample) | Oversample Factor | OversampTaxa de datos led (Mbps) |
TMDS | 250–1000 | On | On | 8 | 2000–8000 |
TMDS | 1000–6000 | On | Desactivado | 2 | 2000–12000 |
FRL | 3000 | Desactivado | Desactivado | 1 | 3000 |
FRL | 6000 | Desactivado | Desactivado | 1 | 6000 |
FRL | 8000 | Desactivado | Desactivado | 1 | 8000 |
FRL | 10000 | Desactivado | Desactivado | 1 | 10000 |
FRL | 12000 | Desactivado | Desactivado | 1 | 12000 |
Figura 8. Fluxo da secuencia de reconfiguración de TX2.5.2. Compoñentes HDMI RX
Os compoñentes principais de HDMI RX inclúen os compoñentes de nivel superior do núcleo RX, o escravo I²C opcional e a RAM EDID, IOPLL, o controlador de reinicio PHY do transceptor, o PHY nativo de RX e os bloques de xestión de reconfiguración de RX.
Figura 9. Compoñentes superiores de HDMI RXTáboa 10. Compoñentes principais de HDMI RX
Módulo |
Descrición |
Núcleo HDMI RX | O IP recibe os datos en serie do Transceiver Native PHY e realiza o aliñamento de datos, a descodificación de canles, a decodificación TMDS, a decodificación de datos auxiliares, a decodificación de datos de vídeo, a descodificación de datos de audio e a descodificación. |
Esclavo I2C | I2C é a interface utilizada para Sink Display Data Channel (DDC) e Status and Data Channel (SCDC). A fonte HDMI usa o DDC para determinar as capacidades e características da pía lendo a estrutura de datos de datos de identificación de pantalla ampliada mellorada (E-EDID). Os enderezos escravos I8C de 2 bits para E-EDID son 0xA0 e 0xA1. O LSB indica o tipo de acceso: 1 para lectura e 0 para escritura. Cando se produce un evento HPD, o escravo I2C responde aos datos E-EDID lendo desde o chip. O controlador I2C só escravo tamén admite SCDC para HDMI 2.0 e 2.1. O enderezo de escravo I9C de 2 bits para o SCDC é 0xA8 e 0xA9. Cando se produce un evento HPD, o escravo I2C realiza transaccións de escritura ou lectura desde ou desde a interface SCDC do núcleo HDMI RX. O proceso de adestramento de ligazóns para a ligazón de taxa fixa (FRL) tamén se realiza mediante I2C. Durante un evento HPD ou cando a fonte escribe unha taxa de FRL diferente no rexistro de taxa de FRL (SCDC rexistra 0x31 bit[3:0]), o proceso de adestramento de ligazóns comeza. Nota: Este controlador I2C só escravo para SCDC non é necesario se non se destina HDMI 2.0 ou HDMI 2.1 |
EDID RAM | O deseño almacena a información EDID usando a IP de 1 porto RAM. Un protocolo estándar de bus serie de dous fíos (reloxo e datos) (controlador I2C só escravo) transfire a estrutura de datos E-EDID conforme a CEA-861-D. Esta RAM EDID almacena a información E-EDID. •Cando está en modo TMDS, o deseño admite o paso EDID de TX a RX. Durante o paso EDID, cando o TX está conectado ao sumidoiro externo, o procesador Nios II le o EDID do sumidoiro externo e escribe na RAM EDID. • Cando está en modo FRL, o procesador Nios II escribe o EDID preconfigurado para cada taxa de ligazón en función do parámetro HDMI_RX_MAX_FRL_RATE no script global.h. Use as seguintes entradas HDMI_RX_MAX_FRL_RATE para a taxa FRL admitida: • 1: 3G 3 carrís • 2: 6G 3 carrís •3: 6G 4 carrís • 4: 8G 4 carrís •5: 10G 4 carriles (predeterminado) •6: 12G 4 carrís |
IOPLL | O HDMI RX usa dous IOPLL. • O primeiro IOPLL (pll_tmds) xera o reloxo de referencia RX CDR. Este IOPLL só se usa no modo TMDS. O reloxo de referencia deste IOPLL recibe o reloxo TMDS. O modo TMDS usa este IOPLL porque o CDR non pode recibir reloxos de referencia inferiores a 50 MHz e a frecuencia do reloxo TMDS varía de 25 MHz a 340 MHz. Este IOPLL proporciona unha frecuencia de reloxo que é 5 veces o reloxo de referencia de entrada para o intervalo de frecuencias entre 25 MHz e 50 MHz e proporciona a mesma frecuencia de reloxo que o reloxo de referencia de entrada para o intervalo de frecuencias entre 50 MHz e 340 MHz. •O segundo IOPLL (iopll_frl) xera o reloxo FRL para o núcleo RX. Este reloxo de referencia recibe o reloxo recuperado do CDR. Frecuencia de reloxo FRL = Taxa de datos por carrís x 4 / (caracteres FRL por reloxo x 18) |
Controlador de reinicio de transceptor PHY | O controlador de reinicio Transceiver PHY garante unha inicialización fiable dos transceptores RX. A entrada de reinicio deste controlador desenvólvese pola reconfiguración de RX e xera o sinal de reinicio analóxico e dixital correspondente ao bloque PHY nativo do transceptor segundo a secuencia de reinicio dentro do bloque. |
RX Nativo PHY | Bloque de transceptor duro que recibe os datos en serie dunha fonte de vídeo externa. Deserializa os datos en serie a datos paralelos antes de pasar os datos ao núcleo HDMI RX. Este bloque execútase en Enhanced PCS para o modo FRL. RX CDR ten dous reloxos de referencia. • O reloxo de referencia 0 está conectado ao reloxo de saída do IOPLL TMDS (pll_tmds), que se deriva do reloxo TMDS. • O reloxo de referencia 1 está conectado a un reloxo fixo de 100 MHz. No modo TMDS, RX CDR reconfigurase para seleccionar o reloxo de referencia 0, e no modo FRL, RX CDR reconfigurase para seleccionar o reloxo de referencia 1. |
Xestión de reconfiguración de RX | No modo TMDS, o bloque de xestión de reconfiguración de RX implementa un circuíto de detección de taxa co HDMI PLL para que o transceptor RX funcione a calquera velocidade de enlace arbitraria que vai de 250 Mbps a 6,000 Mbps. No modo FRL, o bloque de xestión de reconfiguración RX reconfigura o transceptor RX para que funcione a 3 Gbps, 6 Gbps, 8 Gbps, 10 Gbps ou 12 Gbps dependendo da taxa FRL no campo de rexistro SCDC_FRL_RATE (0x31[3:0]). O bloque de xestión de reconfiguración de RX cambia entre PCS/RX estándar para o modo TMDS e Enhanced PCS para o modo FRL. Consulte Figura 10 na páxina 22. |
Figura 10. Fluxo da secuencia de reconfiguración de RX
A figura ilustra o fluxo de secuencia de reconfiguración multitaxa do controlador cando recibe o fluxo de datos de entrada e a frecuencia do reloxo de referencia, ou cando o transceptor está desbloqueado.2.5.3. Bloques comúns de nivel superior
Os bloques comúns de nivel superior inclúen o árbitro do transceptor, os compoñentes de enlace RX-TX e o subsistema da CPU.
Táboa 11. Bloques comúns de nivel superior
Módulo |
Descrición |
Arbitro de Transceptor | Este bloque funcional xenérico impide que os transceptores se recalibran simultaneamente cando os transceptores RX ou TX dentro da mesma canle física requiren reconfiguración. A recalibración simultánea afecta ás aplicacións nas que os transceptores RX e TX dentro da mesma canle están asignados a implementacións IP independentes. Este árbitro de transceptor é unha extensión da resolución recomendada para combinar TX simplex e RX simplex na mesma canle física. Este árbitro de transceptor tamén axuda a fusionar e arbitrar as solicitudes de reconfiguración RX e TX mapeadas na memoria de Avalon® dirixidas aos transceptores RX e TX simples dentro dunha canle xa que só se pode acceder ao porto de interface de reconfiguración dos transceptores de forma secuencial. A conexión de interface entre o árbitro do transceptor e os bloques do controlador de restablecemento nativo de TX/RX PHY/PHY neste deseño éample demostra un modo xenérico que se aplica a calquera combinación de IP usando o árbitro do transceptor. O árbitro do transceptor non é necesario cando só se usa o transceptor RX ou TX nunha canle. O árbitro do transceptor identifica o solicitante dunha reconfiguración a través das súas interfaces de reconfiguración mapeadas en memoria de Avalon e asegura que o tx_reconfig_cal_busy ou rx_reconfig_cal_busy correspondente estea protexido en consecuencia. Para as aplicacións HDMI, só RX inicia a reconfiguración. Ao canalizar a solicitude de reconfiguración mapeada na memoria de Avalon a través do árbitro, o árbitro identifica que a solicitude de reconfiguración se orixina no RX, que logo impide que tx_reconfig_cal_busy se afirme e permite que rx_reconfig_cal_busy afirme. A porta impide que o transceptor TX se mova ao modo de calibración sen querer. Nota: Dado que HDMI só require a reconfiguración de RX, os sinais tx_reconfig_mgmt_* están atados. Ademais, a interface mapeada en memoria de Avalon non é necesaria entre o árbitro e o bloque TX Native PHY. Os bloques están asignados á interface no deseño example para demostrar a conexión de árbitro de transceptor xenérico ao controlador de restablecemento nativo de TX/RX PHY/PHY |
Enlace RX-TX | • A saída de datos de vídeo e os sinais de sincronización do núcleo HDMI RX pasan a través dun DCFIFO nos dominios do reloxo de vídeo RX e TX. • O porto de datos auxiliares do núcleo HDMI TX controla os datos auxiliares que flúen polo DCFIFO a través da contrapresión. A contrapresión garante que non haxa ningún paquete auxiliar incompleto no porto de datos auxiliares. • Este bloque tamén realiza filtrado externo: — Filtra os datos de audio e o paquete de rexeneración do reloxo de audio do fluxo de datos auxiliares antes de transmitilo ao porto de datos auxiliares do núcleo HDMI TX. — Filtra o High Dynamic Range (HDR) InfoFrame dos datos auxiliares HDMI RX e insire un example HDR InfoFrame aos datos auxiliares do HDMI TX a través do multiplexor de streaming Avalon. |
Subsistema CPU | O subsistema da CPU funciona como controladores SCDC e DDC e controlador de reconfiguración da fonte. • O controlador SCDC fonte contén o controlador mestre I2C. O controlador mestre I2C transfire a estrutura de datos SCDC desde a fonte FPGA ao sumidoiro externo para a operación HDMI 2.0. Por example, se o fluxo de datos de saída é de 6,000 Mbps, o procesador Nios II ordena ao controlador mestre I2C que actualice os bits TMDS_BIT_CLOCK_RATIO e SCRAMBLER_ENABLE do rexistro de configuración TMDS do sumidoiro a 1. • O mesmo mestre I2C tamén transfire a estrutura de datos DDC (E-EDID) entre a fonte HDMI e o sumidoiro externo. • A CPU Nios II actúa como controlador de reconfiguración da fonte HDMI. A CPU confía na detección de taxa periódica do módulo de xestión de reconfiguración de RX para determinar se o TX require reconfiguración. O tradutor escravo mapeado en memoria de Avalon proporciona a interface entre a interface mestra mapeada en memoria Avalon do procesador Nios II e as interfaces escravas mapeadas en memoria Avalon do IOPLL e TX Native PHY da fonte HDMI instanciada externamente. • Realizar adestramento de enlace a través da interface mestra I2C con sumidoiro externo |
2.6. Rango dinámico e masterización (HDR) Inserción e filtrado de InfoFrame
O deseño IP HDMI Intel FPGA example inclúe unha demostración da inserción de HDR InfoFrame nun sistema de loopback RX-TX.
A versión 2.0b da especificación HDMI permite que Dynamic Range e Mastering InfoFrame se transmitan a través do fluxo auxiliar HDMI. Na demostración, o bloque Auxiliary Packet Generator admite a inserción HDR. Só precisa formatear o paquete HDR InfoFrame previsto como se especifica na táboa de lista de sinais do módulo e a inserción do HDR InfoFrame ocorre unha vez en cada fotograma de vídeo.
Neste exampconfiguración do ficheiro, nos casos nos que o fluxo auxiliar entrante xa inclúe HDR InfoFrame, o contido HDR transmitido fíltrase. O filtrado evita que se transmitan os InfoFrames HDR en conflito e garante que só os valores especificados no HDR SampÚsase o módulo de datos.
Figura 11. Enlace RX-TX con rango dinámico e inserción de InfoFrame mastering
A figura mostra o diagrama de bloques da ligazón RX-TX, incluíndo a inserción de Dynamic Range e Mastering InfoFrame no fluxo auxiliar do núcleo HDMI TX.Táboa 12. Sinais do bloque de inserción de datos auxiliares (aux_retransmit).
Sinal | Dirección | Anchura |
Descrición |
Reloxo e reset | |||
clk | Entrada | 1 | Entrada de reloxo. Este reloxo debe estar conectado ao reloxo de vídeo. |
restablecer | Entrada | 1 | Restablecer entrada. |
Sinais de paquetes auxiliares |
|||
tx_aux_data | Saída | 72 | TX Saída de paquetes auxiliar do multiplexor. |
tx_aux_valid | Saída | 1 | |
tx_aux_listo | Saída | 1 | |
tx_aux_sop | Saída | 1 | |
tx_aux_eop | Saída | 1 | |
rx_aux_data | Entrada | 72 | RX Os datos auxiliares pasaron ao módulo de filtro de paquetes antes de entrar no multiplexor. |
rx_aux_valid | Entrada | 1 | |
rx_aux_sop | Entrada | 1 | |
rx_aux_eop | Entrada | 1 |
Sinal de control | |||
hdmi_tx_vsync | Entrada | 1 | Vsync de vídeo HDMI TX. Este sinal debe sincronizarse co dominio do reloxo da velocidade da ligazón. O núcleo insire o HDR InfoFrame no fluxo auxiliar no bordo ascendente deste sinal |
Táboa 13. Sinais do módulo de datos HDR (altera_hdmi_hdr_infoframe)
Sinal |
Dirección | Anchura |
Descrición |
hb0 | Saída | 8 | Byte de cabeceira 0 do Intervalo Dinámico e do InfoFrame de Mastering: Código de tipo InfoFrame. |
hb1 | Saída | 8 | Byte de cabeceira 1 do intervalo dinámico e do InfoFrame de dominio: número de versión do InfoFrame. |
hb2 | Saída | 8 | Byte de cabeceira 2 do intervalo dinámico e do cadro de información de dominio: lonxitude do cadro de información. |
pb | Entrada | 224 | Byte de datos do Rango Dinámico e do InfoFrame de Mastering. |
Táboa 14. Rango dinámico e dominio de campos de bits do paquete de bytes de datos InfoFrame
Campo de bits |
Definición |
Metadatos estáticos tipo 1 |
7:0 | Byte de datos 1: {5'h0, EOTF[2:0]} | |
15:8 | Byte de datos 2: {5'h0, Static_Metadata_Descriptor_ID[2:0]} | |
23:16 | Byte de datos 3: Descriptor_de_metadatos_estáticos | display_primaries_x[0], LSB |
31:24 | Byte de datos 4: Descriptor_de_metadatos_estáticos | display_primaries_x[0], MSB |
39:32 | Byte de datos 5: Descriptor_de_metadatos_estáticos | display_primaries_y[0], LSB |
47:40 | Byte de datos 6: Descriptor_de_metadatos_estáticos | display_primaries_y[0], MSB |
55:48 | Byte de datos 7: Descriptor_de_metadatos_estáticos | display_primaries_x[1], LSB |
63:56 | Byte de datos 8: Descriptor_de_metadatos_estáticos | display_primaries_x[1], MSB |
71:64 | Byte de datos 9: Descriptor_de_metadatos_estáticos | display_primaries_y[1], LSB |
79:72 | Byte de datos 10: Descriptor_de_metadatos_estáticos | display_primaries_y[1], MSB |
87:80 | Byte de datos 11: Descriptor_de_metadatos_estáticos | display_primaries_x[2], LSB |
95:88 | Byte de datos 12: Descriptor_de_metadatos_estáticos | display_primaries_x[2], MSB |
103:96 | Byte de datos 13: Descriptor_de_metadatos_estáticos | display_primaries_y[2], LSB |
111:104 | Byte de datos 14: Descriptor_de_metadatos_estáticos | display_primaries_y[2], MSB |
119:112 | Byte de datos 15: Descriptor_de_metadatos_estáticos | punto_branco_x, LSB |
127:120 | Byte de datos 16: Descriptor_de_metadatos_estáticos | white_point_x, MSB |
135:128 | Byte de datos 17: Descriptor_de_metadatos_estáticos | punto_branco_y, LSB |
143:136 | Byte de datos 18: Descriptor_de_metadatos_estáticos | white_point_y, MSB |
151:144 | Byte de datos 19: Descriptor_de_metadatos_estáticos | max_display_mastering_luminance, LSB |
159:152 | Byte de datos 20: Descriptor_de_metadatos_estáticos | max_display_mastering_luminance, MSB |
167:160 | Byte de datos 21: Descriptor_de_metadatos_estáticos | min_display_mastering_luminance, LSB |
175:168 | Byte de datos 22: Descriptor_de_metadatos_estáticos | min_display_mastering_luminance, MSB |
183:176 | Byte de datos 23: Descriptor_de_metadatos_estáticos | Nivel de luz de contido máximo, LSB |
191:184 | Byte de datos 24: Descriptor_de_metadatos_estáticos | Nivel de luz de contido máximo, MSB |
199:192 | Byte de datos 25: Descriptor_de_metadatos_estáticos | Nivel de luz medio máximo de cadros, LSB |
207:200 | Byte de datos 26: Descriptor_de_metadatos_estáticos | Nivel de luz medio máximo de cadros, MSB |
215:208 | Reservado | |
223:216 | Reservado |
Desactivando a inserción e filtrado HDR
A desactivación da inserción e do filtro HDR permítelle verificar a retransmisión do contido HDR xa dispoñible no fluxo auxiliar de orixe sen ningunha modificación no deseño de retransmisión RX-TX ex.ample.
Para desactivar a inserción e o filtrado de HDR InfoFrame:
- Establece block_ext_hdr_infoframe en 1'b0 en rxtx_link.v file para evitar o filtrado do HDR InfoFrame do fluxo auxiliar.
- Establecer multiplexer_in0_valid da instancia avalon_st_multiplexer no altera_hdmi_aux_hdr.v file a 1'b0 para evitar que o Xerador de Paquetes Auxiliar se forme e insira un InfoFrame HDR adicional no fluxo Auxiliar de TX.
2.7. Fluxo de software de deseño
No fluxo de software principal de deseño, o procesador Nios II configura a configuración do redriver TI e inicializa as rutas TX e RX ao acender.
Figura 12. Fluxo de software en main.c Script
O software executa un ciclo while para supervisar os cambios de fonte e de fonte e para reaccionar aos cambios. O software pode activar a reconfiguración de TX, o adestramento do enlace TX e comezar a transmitir vídeo.
Figura 13. Diagrama de fluxo de inicialización da ruta TX Inicializa a ruta TXFigura 14. Diagrama de fluxo de inicialización do camiño RX
Figura 15. Diagrama de fluxo de adestramento de reconfiguración e enlace de TX
Figura 16. Proceso LTS de formación de enlaces: 3 nun diagrama de fluxo de taxas FRL específicas
Figura 17. Diagrama de fluxo de transmisión de vídeo HDMI TX
2.8. Execución do deseño en diferentes tarifas FRL
Podes executar o teu deseño con diferentes taxas de FRL, ademais da taxa de FRL predeterminada do sumidoiro externo.
Para executar o deseño en diferentes tarifas FRL:
- Cambia o interruptor user_dipsw0 integrado á posición ON.
- Abra o shell de comandos de Nios II e, a continuación, escriba nios2-terminal
- Teclee os seguintes comandos e prema Intro para executalo.
Comando |
Descrición |
h | Mostra o menú de axuda. |
r0 | Actualice a capacidade FRL máxima de RX á taxa FRL 0 (só TMDS). |
r1 | Actualice a capacidade FRL máxima de RX á taxa FRL 1 (3 Gbps). |
r2 | Actualiza a capacidade FRL máxima de RX á taxa FRL 2 (6 Gbps, 3 carrís). |
r3 | Actualiza a capacidade FRL máxima de RX á taxa FRL 3 (6 Gbps, 4 carrís). |
r4 | Actualice a capacidade FRL máxima de RX á taxa FRL 4 (8 Gbps). |
r5 | Actualice a capacidade FRL máxima de RX á taxa FRL 5 (10 Gbps). |
r6 | Actualice a capacidade FRL máxima de RX á taxa FRL 6 (12 Gbps). |
t1 | TX configura a taxa de enlace coa taxa FRL 1 (3 Gbps). |
t2 | TX configura a taxa de enlace coa taxa FRL 2 (6 Gbps, 3 carrís). |
t3 | TX configura a taxa de enlace coa taxa FRL 3 (6 Gbps, 4 carrís). |
t4 | TX configura a taxa de enlace coa taxa FRL 4 (8 Gbps). |
t5 | TX configura a taxa de enlace coa taxa FRL 5 (10 Gbps). |
t6 | TX configura a taxa de enlace coa taxa FRL 6 (12 Gbps). |
2.9. Esquema de temporización
O esquema de reloxo ilustra os dominios de reloxo no deseño IP HDMI Intel FPGA, por exemploample.
Figura 18. Deseño HDMI 2.1 Exampo Esquema de temporizaciónTáboa 15. Sinais do esquema de reloxo
Reloxo |
Nome do sinal no deseño |
Descrición |
Reloxo de xestión | mgmt_clk | Un reloxo gratuíto de 100 MHz para estes compoñentes: • Interfaces Avalon-MM para reconfiguración — O requisito do intervalo de frecuencia está entre 100 e 125 MHz. • Controlador de reinicio PHY para a secuencia de reinicio do transceptor — O requisito do intervalo de frecuencias está entre 1 e 500 MHz. • Reconfiguración IOPLL — A frecuencia de reloxo máxima é de 100 MHz. • Xestión de reconfiguración de RX • Xestión de reconfiguración de TX • CPU • Mestre I2C |
Reloxo I2C | i2c_clk | Unha entrada de reloxo de 100 MHz que marca o escravo I2C, os búfers de saída, os rexistros SCDC e o proceso de adestramento de enlace no núcleo HDMI RX e a RAM EDID. |
Reloxo de referencia TX PLL 0 | tx_tmds_clk | Reloxo de referencia 0 ao TX PLL. A frecuencia de reloxo é a mesma que a frecuencia de reloxo TMDS esperada da canle de reloxo TMDS HDMI TX. Este reloxo de referencia úsase no modo TMDS. Para este deseño HDMI example, este reloxo está conectado ao reloxo RX TMDS con fins de demostración. Na súa aplicación, cómpre proporcionar un reloxo dedicado con frecuencia de reloxo TMDS a partir dun oscilador programable para un mellor rendemento de jitter. |
Nota: Non use un pin RX do transceptor como reloxo de referencia TX PLL. O teu deseño non encaixará se colocas o refclk HDMI TX nun pin RX. | ||
Reloxo de referencia TX PLL 1 | txfpll_refclk1/ rxphy_cdr_refclk1 | Reloxo de referencia para TX PLL e RX CDR, así como IOPLL para vid_clk. A frecuencia do reloxo é de 100 MHz. |
Reloxo de serie TX PLL | tx_bonding_clocks | Reloxo rápido en serie xerado por TX PLL. A frecuencia do reloxo establécese en función da taxa de datos. |
Saída do reloxo do transceptor TX | tx_clk | Recuperouse a saída do reloxo do transceptor e a frecuencia varía dependendo da taxa de datos e dos símbolos por reloxo. Frecuencia de saída do transceptor TX = Velocidade de datos do transceptor/Ancho do transceptor Para este deseño HDMI example, o reloxo do transceptor TX que sae da canle 0 marca a entrada do núcleo do transceptor TX (tx_coreclkin), o reloxo de referencia IOPLL da velocidade do enlace (pll_hdmi) e o reloxo de referencia de vídeo e FRL IOPLL (pll_vid_frl). |
Reloxo de vídeo | tx_vid_clk/rx_vid_clk | Reloxo de vídeo ao núcleo TX e RX. O reloxo funciona a unha frecuencia fixa de 225 MHz. |
Reloxo TX/RX FRL | tx_frl_clk/rx_frl_clk | Reloxo FRL para núcleos TX e RX. |
Reloxo RX TMDS | rx_tmds_clk | Canle de reloxo TMDS desde o conector HDMI RX e conéctase a un IOPLL para xerar o reloxo de referencia para o reloxo de referencia CDR 0. O núcleo usa este reloxo cando está no modo TMDS. |
Reloxo de referencia RX CDR 0 | rxphy_cdr_refclk0 | Reloxo de referencia 0 a RX CDR. Este reloxo deriva do reloxo RX TMDS. A frecuencia de reloxo do RX TMDS varía de 25 MHz a 340 MHz mentres que a frecuencia de reloxo de referencia mínima do RX CDR é de 50 MHz. Un IOPLL úsase para xerar unha frecuencia de reloxo de 5 para o reloxo TMDS entre 25 MHz e 50 MHz e xerar a mesma frecuencia de reloxo para o reloxo TMDS entre 50 MHz e 340 MHz. |
Saída do reloxo do transceptor RX | rx_clk | Recuperouse a saída do reloxo do transceptor e a frecuencia varía dependendo da velocidade de datos e do ancho do transceptor. Frecuencia de saída do transceptor RX = Velocidade de datos do transceptor/Ancho do transceptor Para este deseño HDMI example, o reloxo do transceptor RX da canle 1 reloxa a entrada do núcleo do transceptor RX (rx_coreclkin) e o reloxo de referencia FRL IOPLL (pll_frl). |
2.10. Sinais de interface
As táboas enumeran os sinais para o deseño HDMI, por exemploampli con FRL activado.
Táboa 16. Sinais de nivel superior
Sinal |
Dirección | Anchura |
Descrición |
Sinal do oscilador a bordo | |||
clk_fpga_b3_p | Entrada | 1 | Reloxo de funcionamento libre de 100 MHz para o reloxo de referencia principal. |
refclk4_p | Entrada | 1 | Reloxo de funcionamento libre de 100 MHz para o reloxo de referencia do transceptor. |
Botóns e LEDs de usuario | |||
usuario_pb | Entrada | 3 | Preme o botón para controlar a funcionalidade de deseño IP HDMI Intel FPGA. |
cpu_resetn | Entrada | 1 | Restablecemento global. |
user_led_g | Saída | 8 | Pantalla LED verde. Consulte Configuración de hardware na páxina 48 para obter máis información sobre as funcións dos LED. |
usuario_dipsw | Entrada | 1 | Interruptor DIP definido polo usuario. Consulte Configuración de hardware na páxina 48 para obter máis información sobre as funcións do interruptor DIP. |
Pins da tarxeta filla HDMI FMC no porto FMC B | |||
fmcb_gbtclk_m2c_p_0 | Entrada | 1 | Reloxo HDMI RX TMDS. |
fmcb_dp_m2c_p | Entrada | 4 | Reloxo HDMI RX, canles de datos vermello, verde e azuis. |
fmcb_dp_c2m_p | Saída | 4 | Reloxo HDMI TX, canles de datos vermellas, verdes e azuis. |
fmcb_la_rx_p_9 | Entrada | 1 | Detección de potencia HDMI RX +5V. |
fmcb_la_rx_p_8 | Saída | 1 | Detección de conexión en caliente HDMI RX. |
fmcb_la_rx_n_8 | Entrada | 1 | HDMI RX I2C SDA para DDC e SCDC. |
fmcb_la_tx_p_10 | Entrada | 1 | HDMI RX I2C SCL para DDC e SCDC. |
fmcb_la_tx_p_12 | Entrada | 1 | Detección de conexión en caliente HDMI TX. |
fmcb_la_tx_n_12 | Entrada | 1 | HDMI I2C SDA para DDC e SCDC. |
fmcb_la_rx_p_10 | Entrada | 1 | HDMI I2C SCL para DDC e SCDC. |
fmcb_la_tx_n_9 | Entrada | 1 | HDMI I2C SDA para control de redriver. |
fmcb_la_rx_p_11 | Entrada | 1 | HDMI I2C SCL para control de redriver. |
fmcb_la_tx_n_13 | Saída | 1 | HDMI TX +5V Nota: Só dispoñible cando Bitec HDMI Daughter Card Revisión 9 está seleccionado. |
Táboa 17. Sinais de nivel superior HDMI RX
Sinal | Dirección | Anchura | Descrición |
Reloxo e reinicio de sinais | |||
mgmt_clk | Entrada | 1 | Entrada de reloxo do sistema (100 MHz). |
restablecer | Entrada | 1 | Entrada de reinicio do sistema. |
rx_tmds_clk | Entrada | 1 | Reloxo HDMI RX TMDS. |
i2c_clk | Entrada | 1 | Entrada de reloxo para interfaces DDC e SCDC. |
Reloxo e reinicio de sinais | |||
rxphy_cdr_refclk1 | Entrada | 1 | Entrada de reloxo para o reloxo de referencia RX CDR 1. A frecuencia de reloxo é de 100 MHz. |
rx_vid_clk | Saída | 1 | Saída do reloxo de vídeo. |
sys_init | Saída | 1 | Inicialización do sistema para restablecer o sistema ao acender. |
Transceptor RX e sinais IOPLL | |||
rxpll_tmds_locked | Saída | 1 | Indica que o IOPLL do reloxo TMDS está bloqueado. |
rxpll_frl_bloqueado | Saída | 1 | Indica que o IOPLL do reloxo FRL está bloqueado. |
rxphy_serial_data | Entrada | 4 | Datos de serie HDMI ao RX Native PHY. |
rxphy_listo | Saída | 1 | Indica que o RX Native PHY está listo. |
rxphy_cal_busy_raw | Saída | 4 | Calibración PHY nativa de RX ocupada para o árbitro do transceptor. |
rxphy_cal_busy_gated | Entrada | 4 | Sinal de ocupado de calibración do árbitro do transceptor ao RX Native PHY. |
rxphy_rcfg_slave_write | Entrada | 4 | Reconfiguración do transceptor Interface de mapeo de memoria de Avalon desde o RX Native PHY ata o árbitro do transceptor. |
rxphy_rcfg_slave_read | Entrada | 4 | |
rxphy_rcfg_slave_address | Entrada | 40 | |
rxphy_rcfg_slave_writedata | Entrada | 128 | |
rxphy_rcfg_slave_readdata | Saída | 128 | |
rxphy_rcfg_slave_waitrequest | Saída | 4 |
Xestión de reconfiguración de RX | |||
rxphy_rcfg_busy | Saída | 1 | Sinal de ocupado de reconfiguración RX. |
rx_tmds_freq | Saída | 24 | Medición de frecuencia de reloxo HDMI RX TMDS (en 10 ms). |
rx_tmds_freq_valid | Saída | 1 | Indica que a medición da frecuencia do reloxo RX TMDS é válida. |
rxphy_os | Saída | 1 | Oversampfactor ling: •0: 1x sobresampling • 1: 5 veces máisampling |
rxphy_rcfg_master_write | Saída | 1 | Xestión de reconfiguración de RX Interface mapeada de memoria de Avalon ao árbitro do transceptor. |
rxphy_rcfg_master_read | Saída | 1 | |
rxphy_rcfg_master_address | Saída | 12 | |
rxphy_rcfg_master_writedata | Saída | 32 | |
rxphy_rcfg_master_readdata | Entrada | 32 | |
rxphy_rcfg_master_waitrequest | Entrada | 1 |
Sinais de núcleo HDMI RX | |||
rx_vid_clk_bloqueado | Entrada | 1 | Indica que vid_clk é estable. |
rxcore_frl_rate | Saída | 4 | Indica a taxa de FRL que está a executar o núcleo RX. • 0: Modo Legado (TMDS) • 1: 3 Gbps 3 carrís • 2: 6 Gbps 4 carrís • 3: 6 Gbps 4 carrís • 4: 8 Gbps 4 carrís • 5: 10 Gbps 4 carrís • 6: 12 Gbps 4 carrís • 7-15: Reservado |
rxcore_frl_locked | Saída | 4 | Cada bit indica o carril específico que logrou o bloqueo FRL. O FRL está bloqueado cando o núcleo RX realiza correctamente o aliñamento, a desviación e o bloqueo do carril. • Para o modo de 3 carriles, o bloqueo do carril conséguese cando o núcleo RX recibe Scrambler Reset (SR) ou Start-Super-Block (SSB) por cada 680 períodos de caracteres FRL durante polo menos 3 veces. • Para o modo de 4 carriles, o bloqueo do carril conséguese cando o núcleo RX recibe Scrambler Reset (SR) ou Start-Super-Block (SSB) por cada 510 períodos de caracteres FRL durante polo menos 3 veces. |
rxcore_frl_ffe_levels | Saída | 4 | Corresponde ao bit FFE_level no bit de rexistro SCDC 0x31 [7:4] no núcleo RX. |
rxcore_frl_flt_ready | Entrada | 1 | Afirma para indicar que o RX está listo para que se inicie o proceso de adestramento da ligazón. Cando se afirma, tamén se afirma o bit FLT_ready no rexistro SCDC 0x40 bit 6. |
rxcore_frl_src_test_config | Entrada | 8 | Especifica as configuracións de proba de orixe. O valor escríbese no rexistro de configuración de proba SCDC no rexistro SCDC 0x35. |
rxcore_tbcr | Saída | 1 | Indica a relación de bits a reloxo TMDS; corresponde ao rexistro TMDS_Bit_Clock_Ratio no rexistro SCDC 0x20 bit 1. • Cando se executa no modo HDMI 2.0, este bit é afirmado. Indica a relación de bits a reloxo TMDS de 40:1. • Cando se executa en HDMI 1.4b, este bit non se afirma. Indica a relación de bits a reloxo TMDS de 10:1. • Este bit non se utiliza para o modo FRL. |
rxcore_scrambler_enable | Saída | 1 | Indica se os datos recibidos están codificados; corresponde ao campo Scrambling_Enable no rexistro SCDC 0x20 bit 0. |
rxcore_audio_de | Saída | 1 | Interfaces de audio do núcleo HDMI RX Consulte o Interfaces de lavabo sección no Guía de usuario de HDMI Intel FPGA IP para máis información. |
rxcore_audio_data | Saída | 256 | |
rxcore_audio_info_ai | Saída | 48 | |
rxcore_audio_N | Saída | 20 | |
rxcore_audio_CTS | Saída | 20 | |
rxcore_audio_metadata | Saída | 165 | |
rxcore_audio_format | Saída | 5 | |
rxcore_aux_pkt_data | Saída | 72 | Interfaces auxiliares do núcleo HDMI RX Consulte o Interfaces de lavabo sección no Guía de usuario de HDMI Intel FPGA IP para máis información. |
rxcore_aux_pkt_addr | Saída | 6 | |
rxcore_aux_pkt_wr | Saída | 1 | |
rxcore_aux_data | Saída | 72 | |
rxcore_aux_sop | Saída | 1 | |
rxcore_aux_eop | Saída | 1 | |
rxcore_aux_valid | Saída | 1 | |
rxcore_aux_error | Saída | 1 | |
rxcore_gcp | Saída | 6 | Sinais de banda lateral do núcleo HDMI RX Consulte o Interfaces de lavabo sección no Guía de usuario de HDMI Intel FPGA IP para máis información. |
rxcore_info_avi | Saída | 123 | |
rxcore_info_vsi | Saída | 61 | |
rxcore_bloqueado | Saída | 1 | Portos de vídeo do núcleo HDMI RX Nota: N = píxeles por reloxo Consulte o Interfaces de lavabo sección no Guía de usuario de HDMI Intel FPGA IP para máis información. |
rxcore_vid_data | Saída | N*48 | |
rxcore_vid_vsync | Saída | N | |
rxcore_vid_hsync | Saída | N | |
rxcore_vid_de | Saída | N | |
rxcore_vid_valid | Saída | 1 | |
rxcore_vid_lock | Saída | 1 | |
rxcore_mode | Saída | 1 | Control do núcleo HDMI RX e portos de estado. Nota: N = símbolos por reloxo Consulte o Interfaces de lavabo sección no Guía de usuario de HDMI Intel FPGA IP para máis información. |
rxcore_ctrl | Saída | N*6 | |
rxcore_color_depth_sync | Saída | 2 | |
hdmi_5v_detect | Entrada | 1 | Detección de HDMI RX 5V e detección de conexión en quente. Consulte o Interfaces de lavabo sección no Guía de usuario de HDMI Intel FPGA IP para máis información. |
hdmi_rx_hpd | Saída | 1 | |
rx_hpd_trigger | Entrada | 1 |
I2C Sinais | |||
hdmi_rx_i2c_sda | Entrada | 1 | Interface HDMI RX DDC e SCDC. |
hdmi_rx_i2c_scl | Entrada | 1 |
Sinais RX EDID RAM | |||
edid_ram_access | Entrada | 1 | Interfaz de acceso HDMI RX EDID RAM. |
enderezo_edid_ram | Entrada | 8 | Afirma edid_ram_access cando queiras escribir ou ler desde a RAM EDID, se non, este sinal debería manterse baixo. Cando afirma edid_ram_access, o sinal de conexión en quente desactiva para permitir a escritura ou a lectura na RAM EDID. Cando se complete o acceso á RAM EDID, debes desactivar edid_ram_assess e o sinal de conexión en quente afirmárase. A fonte lerá o novo EDID debido á alternancia do sinal de conexión en quente. |
edid_ram_write | Entrada | 1 | |
edid_ram_read | Entrada | 1 | |
edid_ram_readdata | Saída | 8 | |
edid_ram_writedata | Entrada | 8 | |
edid_ram_waitrequest | Saída | 1 |
Táboa 18.Sinais de nivel superior HDMI TX
Sinal | Dirección | Anchura | Descrición |
Reloxo e reinicio de sinais | |||
mgmt_clk | Entrada | 1 | Entrada de reloxo do sistema (100 MHz). |
restablecer | Entrada | 1 | Entrada de reinicio do sistema. |
tx_tmds_clk | Entrada | 1 | Reloxo HDMI RX TMDS. |
txfpll_refclk1 | Entrada | 1 | Entrada de reloxo para o reloxo de referencia TX PLL 1. A frecuencia de reloxo é de 100 MHz. |
tx_vid_clk | Saída | 1 | Saída do reloxo de vídeo. |
tx_frl_clk | Saída | 1 | Saída de reloxo FRL. |
sys_init | Entrada | 1 | Inicialización do sistema para restablecer o sistema ao acender. |
tx_init_feito | Entrada | 1 | Inicialización de TX para restablecer o bloque de xestión de reconfiguración de TX e a interface de reconfiguración do transceptor. |
Transceptor TX e sinais IOPLL | |||||||||||||
txpll_frl_bloqueado | Saída | 1 | Indica que o reloxo de velocidade da ligazón e o reloxo FRL IOPLL están bloqueados. | ||||||||||
txfpll_bloqueado | Saída | 1 | Indica que o TX PLL está bloqueado. | ||||||||||
txphy_serial_data | Saída | 4 | Datos en serie HDMI do TX Native PHY. | ||||||||||
txphy_listo | Saída | 1 | Indica que o TX Native PHY está listo. | ||||||||||
txphy_cal_ocupado | Saída | 1 | Sinal ocupado de calibración PHY nativa de TX. | ||||||||||
txphy_cal_busy_raw | Saída | 4 | Sinal de ocupado de calibración para o árbitro do transceptor. | ||||||||||
txphy_cal_busy_gated | Entrada | 4 | Sinal de ocupado de calibración do árbitro do transceptor ao PHY nativo de TX. | ||||||||||
txphy_rcfg_busy | Saída | 1 | Indica que a reconfiguración de TX PHY está en curso. | ||||||||||
txphy_rcfg_slave_write | Entrada | 4 | Reconfiguración do transceptor Interface mapeada na memoria de Avalon desde o TX Native PHY ata o árbitro do transceptor. | ||||||||||
txphy_rcfg_slave_read | Entrada | 4 | |||||||||||
txphy_rcfg_slave_address | Entrada | 40 | |||||||||||
|
Xestión de reconfiguración de TX | |||
tx_tmds_freq | Entrada | 24 | Valor de frecuencia de reloxo HDMI TX TMDS (en 10 ms). |
tx_os | Saída | 2 | Oversampfactor ling: • 0: 1x sobresampling •1: 2× sobresampling •2: 8x sobresampling |
txphy_rcfg_master_write | Saída | 1 | Xestión de reconfiguración de TX Interface mapeada de memoria de Avalon ao árbitro do transceptor. |
txphy_rcfg_master_read | Saída | 1 | |
txphy_rcfg_master_address | Saída | 12 | |
txphy_rcfg_master_writedata | Saída | 32 | |
txphy_rcfg_master_readdata | Entrada | 32 | |
txphy_rcfg_master_waitrequest | Entrada | 1 | |
tx_reconfig_feito | Saída | 1 | Indica que se completou o proceso de reconfiguración de TX. |
Sinais de núcleo HDMI TX | |||
tx_vid_clk_bloqueado | Entrada | 1 | Indica que vid_clk é estable. |
txcore_ctrl | Entrada | N*6 | Interfaces de control de núcleo HDMI TX. Nota: N = píxeles por reloxo Consulte o Interfaces de orixe sección no Guía de usuario de HDMI Intel FPGA IP para máis información. |
txcore_mode | Entrada | 1 | |
txcore_audio_de | Entrada | 1 | Interfaces de audio núcleo HDMI TX. Consulte o Interfaces de orixe sección no Guía de usuario de HDMI Intel FPGA IP para máis información. |
txcore_audio_mute | Entrada | 1 | |
txcore_audio_data | Entrada | 256 | |
txcore_audio_info_ai | Entrada | 49 | |
txcore_audio_N | Entrada | 20 | |
txcore_audio_CTS | Entrada | 20 | |
txcore_audio_metadata | Entrada | 166 | |
txcore_audio_format | Entrada | 5 | |
txcore_aux_ready | Saída | 1 | Interfaces auxiliares de núcleo HDMI TX. Consulte o Interfaces de orixe sección no Guía de usuario de HDMI Intel FPGA IP para máis información. |
txcore_aux_data | Entrada | 72 | |
txcore_aux_sop | Entrada | 1 | |
txcore_aux_eop | Entrada | 1 | |
txcore_aux_valid | Entrada | 1 | |
txcore_gcp | Entrada | 6 | Sinais de banda lateral do núcleo HDMI TX. Consulte o Interfaces de orixe sección no Guía de usuario de HDMI Intel FPGA IP para máis información. |
txcore_info_avi | Entrada | 123 | |
txcore_info_vsi | Entrada | 62 | |
txcore_i2c_master_write | Entrada | 1 | TX I2C master Interface mapeada de memoria de Avalon para I2C master dentro do núcleo TX. Nota: Estes sinais só están dispoñibles cando acendes o Inclúe I2C parámetro. |
txcore_i2c_master_read | Entrada | 1 | |
txcore_i2c_master_address | Entrada | 4 | |
txcore_i2c_master_writedata | Entrada | 32 | |
txcore_i2c_master_readdata | Saída | 32 | |
txcore_vid_data | Entrada | N*48 | Portos de vídeo do núcleo HDMI TX. Nota: N = píxeles por reloxoRef er ao Interfaces de orixe sección no Guía de usuario de HDMI Intel FPGA IP para máis información. |
txcore_vid_vsync | Entrada | N | |
txcore_vid_hsync | Entrada | N | |
txcore_vid_de | Entrada | N | |
txcore_vid_ready | Saída | 1 | |
txcore_vid_overflow | Saída | 1 | |
txcore_vid_valid | Entrada | 1 | |
txcore_frl_rate | Entrada | 4 | Interfaces de rexistro SCDC. |
txcore_frl_pattern | Entrada | 16 | |
txcore_frl_start | Entrada | 1 | |
txcore_scrambler_enable | Entrada | 1 | |
txcore_tbcr | Entrada | 1 |
I2C Sinais | |||
nios_tx_i2c_sda_in | Saída | 1 | Interface mestra TX I2C para SCDC e DDC desde o procesador Nios II ata o búfer de saída. Nota: Se acendes o Inclúe I2C parámetro, estes sinais colocaranse dentro do núcleo TX e non serán visibles neste nivel. |
nios_tx_i2c_scl_in | Saída | 1 | |
nios_tx_i2c_sda_oe | Entrada | 1 | |
nios_tx_i2c_scl_oe | Entrada | 1 | |
nios_ti_i2c_sda_in | Saída | 1 | Interface TX I2C Master desde o procesador Nios II ata o búfer de saída para controlar o redriver TI na tarxeta filla Bitec HDMI 2.1 FMC. |
nios_ti_i2c_scl_in | Saída | 1 | |
nios_ti_i2c_sda_oe | Entrada | 1 | |
nios_ti_i2c_scl_oe | Entrada | 1 | |
hdmi_tx_i2c_sda | Entrada | 1 | Interfaces TX I2C para interfaces SCDC e DDC desde o búfer de saída ata o conector HDMI TX. |
hdmi_tx_i2c_scl | Entrada | 1 | |
hdmi_tx_ti_i2c_sda | Entrada | 1 | Interfaces TX I2C desde o búfer de saída ata o redriver TI na tarxeta filla Bitec HDMI 2.1 FMC. |
hdmi_tx_ti_i2c_scl | Entrada | 1 |
tx_hpd_req | Saída | 1 | Interfaces de detección de conexión en caliente HDMI TX. |
hdmi_tx_hpd_n | Entrada | 1 |
Táboa 19. Sinais do árbitro do transceptor
Sinal | Dirección | Anchura |
Descrición |
clk | Entrada | 1 | Reconfiguración do reloxo. Este reloxo debe compartir o mesmo reloxo cos bloques de xestión de reconfiguración. |
restablecer | Entrada | 1 | Restablecer o sinal. Este reinicio debe compartir o mesmo reinicio cos bloques de xestión de reconfiguración. |
rx_rcfg_en | Entrada | 1 | Sinal de habilitación da reconfiguración de RX. |
tx_rcfg_en | Entrada | 1 | Sinal de habilitación de reconfiguración de TX. |
rx_rcfg_ch | Entrada | 2 | Indica que canle se debe reconfigurar no núcleo RX. Este sinal debe permanecer sempre afirmado. |
tx_rcfg_ch | Entrada | 2 | Indica que canle se debe reconfigurar no núcleo TX. Este sinal debe permanecer sempre afirmado. |
rx_reconfig_mgmt_write | Entrada | 1 | Reconfiguración Interfaces mapeadas en memoria de Avalon desde a xestión de reconfiguración de RX. |
rx_reconfig_mgmt_read | Entrada | 1 | |
enderezo_rx_reconfig_mgmt | Entrada | 10 | |
rx_reconfig_mgmt_writedata | Entrada | 32 | |
rx_reconfig_mgmt_readdata | Saída | 32 | |
rx_reconfig_mgmt_waitrequest | Saída | 1 | |
tx_reconfig_mgmt_write | Entrada | 1 | Reconfiguración Interfaces mapeadas en memoria de Avalon desde a xestión de reconfiguración de TX. |
tx_reconfig_mgmt_read | Entrada | 1 | |
enderezo_tx_reconfig_mgmt | Entrada | 10 | |
tx_reconfig_mgmt_writedata | Entrada | 32 | |
tx_reconfig_mgmt_readdata | Saída | 32 | |
tx_reconfig_mgmt_waitrequest | Saída | 1 | |
reconfig_write | Saída | 1 | Reconfiguración das interfaces mapeadas de memoria de Avalon ao transceptor. |
reconfig_read | Saída | 1 | |
enderezo_reconfig | Saída | 10 | |
reconfig_writedata | Saída | 32 | |
rx_reconfig_readdata | Entrada | 32 | |
rx_reconfig_waitrequest | Entrada | 1 | |
tx_reconfig_readdata | Entrada | 1 | |
tx_reconfig_waitrequest | Entrada | 1 |
rx_cal_ocupado | Entrada | 1 | Sinal de estado de calibración do transceptor RX. |
tx_cal_ocupado | Entrada | 1 | Sinal de estado de calibración do transceptor TX. |
rx_reconfig_cal_busy | Saída | 1 | Sinal de estado de calibración para o control de reinicio PHY do transceptor RX. |
tx_reconfig_cal_busy | Saída | 1 | Sinal de estado de calibración do control de reinicio PHY do transceptor TX. |
Táboa 20. Sinais de enlace RX-TX
Sinal | Dirección | Anchura |
Descrición |
vid_clk | Entrada | 1 | Reloxo de vídeo HDMI. |
rx_vid_lock | Entrada | 3 | Indica o estado do bloqueo do vídeo HDMI RX. |
rx_vid_válido | Entrada | 1 | Interfaces de vídeo HDMI RX. |
rx_vid_de | Entrada | N | |
rx_vid_hsync | Entrada | N | |
rx_vid_vsync | Entrada | N | |
rx_vid_data | Entrada | N*48 | |
rx_aux_eop | Entrada | 1 | Interfaces auxiliares HDMI RX. |
rx_aux_sop | Entrada | 1 | |
rx_aux_valid | Entrada | 1 | |
rx_aux_data | Entrada | 72 | |
tx_vid_de | Saída | N | Interfaces de vídeo HDMI TX. Nota: N = píxeles por reloxo |
tx_vid_hsync | Saída | N | |
tx_vid_vsync | Saída | N | |
tx_vid_data | Saída | N*48 | |
tx_vid_válido | Saída | 1 | |
tx_vid_listo | Entrada | 1 | |
tx_aux_eop | Saída | 1 | Interfaces auxiliares HDMI TX. |
tx_aux_sop | Saída | 1 | |
tx_aux_valid | Saída | 1 | |
tx_aux_data | Saída | 72 | |
tx_aux_listo | Entrada | 1 |
Táboa 21. Sinais do sistema do deseñador de plataformas
Sinal | Dirección | Anchura |
Descrición |
cpu_clk_in_clk_clk | Entrada | 1 | reloxo da CPU. |
cpu_rst_in_reset_reset | Entrada | 1 | reinicio da CPU. |
edid_ram_slave_translator_avalon_anti_slave_0_address | Saída | 8 | Interfaces de acceso EDID RAM. |
edid_ram_slave_translator_avalon_anti_slave_0_write | Saída | 1 | |
edid_ram_slave_translator_avalon_anti_slave_0_read | Saída | 1 | |
edid_ram_slave_translator_avalon_anti_slave_0_readdata | Entrada | 8 | |
edid_ram_slave_translator_avalon_anti_slave_0_writedata | Saída | 8 | |
edid_ram_slave_translator_avalon_anti_slave_0_waitrequest | Entrada | 1 | |
hdmi_i2c_master_i2c_serial_sda_in | Entrada | 1 | Interfaces I2C Master desde o procesador Nios II ata o búfer de saída para o control DDC e SCDC. |
hdmi_i2c_master_i2c_serial_scl_in | Entrada | 1 | |
hdmi_i2c_master_i2c_serial_sda_oe | Saída | 1 | |
hdmi_i2c_master_i2c_serial_scl_oe | Saída | 1 | |
redriver_i2c_master_i2c_serial_sda_in | Entrada | 1 | Interfaces I2C Master desde o procesador Nios II ata o búfer de saída para a configuración do redriver TI. |
redriver_i2c_master_i2c_serial_scl_in | Entrada | 1 | |
redriver_i2c_master_i2c_serial_sda_oe | Saída | 1 | |
redriver_i2c_master_i2c_serial_scl_oe | Saída | 1 | |
pio_in0_external_connection_export | Entrada | 32 | Interfaces de entrada e saída paralelas. • Bit 0: conectado ao sinal user_dipsw para controlar o modo de paso EDID. •Bit 1: solicitude TX HPD •Bit 2: Transceptor TX preparado •Bits 3: reconfiguración de TX feita •Bits 4–7: reservados • Bits 8–11: taxa RX FRL • Bit 12: relación de reloxo de bits RX TMDS • Bits 13–16: RX FRL bloqueado • Bits 17–20: niveis RX FFE • Bit 21: aliñación RX bloqueada |
Sinal | Dirección | Anchura | Descrición |
•Bit 22: bloqueo de vídeo RX • Bit 23: pulsador 2 do usuario para ler os rexistros SCDC desde un sumidoiro externo •Bits 24–31: reservados |
|||
pio_out0_external_connection_export | Saída | 32 | Interfaces de entrada e saída paralelas. •Bit 0: Recoñecemento TX HPD •Bit 1: a inicialización TX está feita • Bits 2–7: reservados • Bits 8–11: taxa de TX FRL •Bits 12–27: patrón de adestramento de enlace TX FRL • Bit 28: inicio TX FRL • Bits 29–31: reservados |
pio_out1_external_connection_export | Saída | 32 | Interfaces de entrada e saída paralelas. • Bit 0: acceso á RAM RX EDID • Bit 1: RX FLT listo • Bits 2–7: reservados • Bits 8–15: configuración da proba da fonte RX FRL •Bits 16–31: reservados |
2.1. 1. Deseño de parámetros RTL
Use os parámetros HDMI TX e RX Top RTL para personalizar o deseño, por exemploample.
A maioría dos parámetros de deseño están dispoñibles no Deseño Example do editor de parámetros IP HDMI Intel FPGA. Aínda podes cambiar o deseño, por exemploampaxustes de ficheiro que fixo no editor de parámetros mediante os parámetros RTL.
Táboa 22. Parámetros principais de HDMI RX
Parámetro |
Valor |
Descrición |
SUPPORT_DEEP_COLOR | • 0: Sen cor profunda • : Cor profunda |
Determina se o núcleo pode codificar formatos de cores profundas. |
SUPPORT_AUXILIARY | • 0: Sen AUX •1: AUX |
Determina se se inclúe a codificación da canle auxiliar. |
SYMBOLS_PER_CLOCK | 8 | Admite 8 símbolos por reloxo para dispositivos Intel Arria 10. |
SUPPORT_AUDIO | • 0: sen audio • 1: Audio |
Determina se o núcleo pode codificar audio. |
EDID_RAM_ADDR_WIDTH | 8 (valor predeterminado) | Base de rexistro 2 do tamaño da RAM EDID. |
BITEC_DAUGHTER_CARD_REV | •0: non se dirixe a ningunha tarxeta filla HDMI de Bitec •4: admite a revisión 4 da tarxeta filla HDMI Bitec •6: Orientación á revisión 6 da tarxeta filla HDMI de Bitec • 11: Targeting Bitec HDMI tarxeta filla revisión 11 (predeterminado) |
Especifica a revisión da tarxeta filla Bitec HDMI utilizada. Cando cambia a revisión, o deseño pode intercambiar as canles do transceptor e inverter a polaridade segundo os requisitos da tarxeta filla HDMI de Bitec. Se estableces o parámetro BITEC_DAUGHTER_CARD_REV en 0, o deseño non fai ningún cambio nas canles do transceptor e na polaridade. |
POLARITY_INVERSION | • 0: Inverter polaridade • 1: Non inverta a polaridade |
Establece este parámetro en 1 para inverter o valor de cada bit dos datos de entrada. Establecer este parámetro en 1 asígnase 4'b1111 ao porto rx_polinv do transceptor RX. |
Táboa 23. Parámetros principais de HDMI TX
Parámetro |
Valor |
Descrición |
USE_FPLL | 1 | Admite fPLL como TX PLL só para dispositivos Intel Arria 10. Establece sempre este parámetro en 1. |
SUPPORT_DEEP_COLOR | •0: Sen cor profunda
• 1: Cor profunda |
Determina se o núcleo pode codificar formatos de cores profundas. |
SUPPORT_AUXILIARY | • 0: Sen AUX • 1: AUX |
Determina se se inclúe a codificación da canle auxiliar. |
SYMBOLS_PER_CLOCK | 8 | Admite 8 símbolos por reloxo para dispositivos Intel Arria 10. |
SUPPORT_AUDIO | • 0: sen audio • 1: Audio |
Determina se o núcleo pode codificar audio. |
BITEC_DAUGHTER_CARD_REV | • 0: non se dirixe a ningunha tarxeta filla HDMI de Bitec • 4: admite a revisión 4 da tarxeta filla HDMI Bitec • 6: Orientación á revisión 6 da tarxeta filla HDMI de Bitec • 11: Targeting Bitec HDMI tarxeta filla revisión 11 (predeterminado) |
Especifica a revisión da tarxeta filla Bitec HDMI utilizada. Cando cambia a revisión, o deseño pode intercambiar as canles do transceptor e inverter a polaridade segundo os requisitos da tarxeta filla HDMI de Bitec. Se estableces o parámetro BITEC_DAUGHTER_CARD_REV en 0, o deseño non fai ningún cambio nas canles do transceptor e na polaridade. |
POLARITY_INVERSION | • 0: Inverter polaridade • 1: Non inverta a polaridade |
Establece este parámetro en 1 para inverter o valor de cada bit dos datos de entrada. Establecer este parámetro en 1 asígnase 4'b1111 ao porto tx_polinv do transceptor TX. |
2.12. Configuración do hardware
O deseño compatible con HDMI FRL p.example é compatible con HDMI 2.1 e realiza unha demostración de bucle para un fluxo de vídeo HDMI estándar.
Para executar a proba de hardware, conecte un dispositivo compatible con HDMI, como unha tarxeta gráfica con interface HDMI, á entrada do receptor HDMI. O deseño admite tanto a fonte como a fonte HDMI 2.1 ou HDMI 2.0/1.4b.
- O receptor HDMI decodifica o porto nun fluxo de vídeo estándar e envíao ao núcleo de recuperación do reloxo.
- O núcleo HDMI RX decodifica os datos de vídeo, auxiliares e de audio para ser recollidos en bucle en paralelo ao núcleo HDMI TX a través do DCFIFO.
- O porto de orixe HDMI da tarxeta filla FMC transmite a imaxe a un monitor.
Nota:
Se queres usar outra placa de desenvolvemento Intel FPGA, debes cambiar as asignacións do dispositivo e as asignacións de pin. A configuración analóxica do transceptor está probada para o kit de desenvolvemento Intel Arria 10 FPGA e a tarxeta filla Bitec HDMI 2.1. Podes modificar a configuración do teu propio taboleiro.
Táboa 24. Funcións do pulsador incorporado e do LED do usuario
Pulsador/LED |
Función |
cpu_resetn | Prema unha vez para restablecer o sistema. |
usuario_dipsw | Interruptor DIP definido polo usuario para cambiar o modo de paso. •OFF (posición predeterminada) = Paso O HDMI RX da FPGA obtén o EDID da receptora externa e preséntao á fonte externa á que está conectado. • ON = Pode controlar a taxa máxima FRL de RX desde o terminal Nios II. O comando modifica o RX EDID manipulando o valor máximo da taxa FRL. Consulte Execución do deseño en diferentes taxas FRL na páxina 33 para obter máis información sobre a configuración das diferentes taxas FRL. |
usuario_pb[0] | Prema unha vez para cambiar o sinal HPD á fonte HDMI estándar. |
usuario_pb[1] | Reservado. |
usuario_pb[2] | Preme unha vez para ler os rexistros SCDC da pía conectada ao TX da tarxeta filla Bitec HDMI 2.1 FMC. Nota: Para habilitar a lectura, debes establecer DEBUG_MODE en 1 no software. |
USER_LED[0] | Estado de bloqueo PLL do reloxo RX TMDS. •0 = Desbloqueado • 1 = Pechado |
USER_LED[1] | Estado listo do transceptor RX. •0 = Non está listo • 1 = Preparado |
USER_LED[2] | PLL do reloxo de velocidade da ligazón RX e o estado de bloqueo do reloxo PLL do vídeo RX e do reloxo FRL. • 0 = Calquera dos PLL do reloxo RX está desbloqueado • 1 = Ambos os PLL do reloxo RX están bloqueados |
USER_LED[3] | Aliñación do núcleo RX HDMI e estado de bloqueo de inclinación. • 0 = Polo menos 1 canle está desbloqueada • 1 = Todas as canles están bloqueadas |
USER_LED[4] | Estado de bloqueo de vídeo RX HDMI. • 0 = Desbloqueado • 1 = Pechado |
USER_LED[5] | PLL do reloxo de velocidade do enlace TX e o estado de bloqueo do reloxo PLL do vídeo TX e do reloxo FRL. •0 = Calquera dos PLL do reloxo TX está desbloqueado • 1 = Ambos os PLL do reloxo TX están bloqueados |
USER_LED[6] USER_LED[7] | Estado listo do transceptor TX. • 0 = Non está preparado • 1 = Preparado Estado do adestramento do enlace TX. • 0 = Fallou • 1 = Aprobado |
2.13. Banco de probas de simulación
O banco de probas de simulación simula o loopback serie HDMI TX ao núcleo RX.
Nota:
Este banco de probas de simulación non é compatible con deseños co parámetro Incluír I2C activado.
Figura 19. Diagrama de bloques de banco de probas de simulación IP HDMI Intel FPGATáboa 25. Compoñentes do banco de probas
Compoñente |
Descrición |
Vídeo TPG | O xerador de patróns de proba de vídeo (TPG) proporciona o estímulo de vídeo. |
Audio Sampo Gen | O audio sampo xerador proporciona audio sampo estímulo. O xerador xera un patrón de datos de proba de incremento que se transmitirá a través da canle de audio. |
Aux Sampo Gen | O aux sample generator proporciona o s auxiliarampo estímulo. O xerador xera datos fixos para ser transmitidos dende o transmisor. |
Comprobación CRC | Este verificador verifica se a frecuencia de reloxo recuperada do transceptor TX coincide coa taxa de datos desexada. |
Comprobación de datos de audio | A comprobación de datos de audio compara se o patrón de datos de proba de incremento se recibe e se decodifica correctamente. |
Verificación de datos auxiliares | A comprobación de datos auxiliares compara se os datos auxiliares esperados se reciben e se decodifican correctamente no lado do receptor. |
O banco de probas de simulación HDMI realiza as seguintes probas de verificación:
Función HDMI |
Verificación |
Datos de vídeo | • O banco de probas implementa a comprobación CRC no vídeo de entrada e saída. • Comproba o valor CRC dos datos transmitidos contra o CRC calculado nos datos de vídeo recibidos. • O banco de probas realiza a comprobación despois de detectar 4 sinais V-SYNC estables do receptor. |
Datos auxiliares | • O aux sampo xerador xera datos fixos para ser transmitidos dende o transmisor. • No lado do receptor, o xerador compara se os datos auxiliares esperados se reciben e se descodifican correctamente. |
Datos de audio | •O audio sampo xerador xera un patrón de datos de proba de incremento que se transmitirá a través da canle de audio. • No lado do receptor, o comprobador de datos de audio comproba e compara se o patrón de datos de proba de incremento se recibe e decodifica correctamente. |
Unha simulación exitosa remata coa seguinte mensaxe:
# SYMBOLS_PER_CLOCK = 2
# VIC = 4
# FRL_RATE = 0
# BPP = 0
# FRECUENCIA_AUDIO (kHz) = 48
# AUDIO_CHANNEL = 8
# Pase de simulación
Táboa 26. HDMI Intel FPGA IP Deseño Example Simuladores compatibles
Simulador |
Verilog HDL |
VHDL |
ModelSim – Intel FPGA Edition/ ModelSim – Intel FPGA Starter Edition | Si | Si |
VCS/VCS MX | Si | Si |
Riviera-PRO | Si | Si |
Xcelium Paralelo | Si | Non |
2.14. Limitacións de deseño
Debes ter en conta algunhas limitacións ao crear unha instancia do deseño HDMI 2.1, por exemploample.
- TX non pode funcionar no modo TMDS cando está en modo sen paso. Para probar no modo TMDS, alterna o interruptor user_dipsw de novo ao modo de paso.
- O procesador Nios II debe servir o adestramento do enlace TX ata completarlo sen interrupción doutros procesos.
2.15. Características de depuración
Este deseño example ofrece certas funcións de depuración para axudarche.
2.15.1. Mensaxe de depuración de software
Podes activar a mensaxe de depuración no software para proporcionarche asistencia durante a execución.
Para activar a mensaxe de depuración no software, siga estes pasos:
- Cambia o DEBUG_MODE a 1 no script global.h.
- Execute script/build_sw.sh no shell de comandos de Nios II.
- Reprograma o software xerado/tx_control/tx_control.elf file executando o comando no Nios II Command Shell:
nios2-download -r -g software/tx_control/tx_control.elf - Execute o comando do terminal Nios II no Nios II Command Shell:
nios2-terminal
Cando activas a mensaxe de depuración, imprime a seguinte información:
- Os axustes do controlador TI en TX e RX lense e móstranse unha vez despois de programar ELF file.
- Mensaxe de estado para a configuración do RX EDID e o proceso de conexión en caliente
- Resolución con ou sen información de soporte FRL extraída do EDID no lavabo conectado ao TX. Esta información móstrase para cada conexión activa de TX.
- Mensaxe de estado do proceso de adestramento do enlace TX durante o adestramento do enlace TX.
2.15.2. Información SCDC do sumidoiro conectado a TX
Podes usar esta función para obter información SCDC.
- Execute o comando do terminal Nios II no shell de comandos de Nios II: nios2-terminal
- Prema user_pb[2] no kit de desenvolvemento Intel Arria 10 FPGA.
O software le e mostra a información SCDC na pía conectada a TX no terminal Nios II.
2.15.3. Medición da frecuencia do reloxo
Use esta función para comprobar a frecuencia dos diferentes reloxos.
- No hdmi_rx_top e hdmi_tx_top files, quite o comentario "//`define DEBUG_EN 1".
- Engade o sinal refclock_measure de cada instancia de mr_rate_detect ao Analizador lóxico Signal Tap para obter a frecuencia de reloxo de cada reloxo (en 10 ms de duración).
- Compila o deseño con Signal Tap Logic Analyzer.
- Programa o SOF file e execute o Analizador lóxico Signal Tap.
Táboa 27. Reloxos
Módulo | mr_rate_detect Instancia |
Reloxo a medir |
hdmi_rx_top | rx_pll_tmds | Reloxo de referencia RX CDR 0 |
rx_clk0_freq | Saída do reloxo do transceptor RX do canal 0 | |
rx_vid_clk_freq | Reloxo de vídeo RX | |
rx_frl_clk_freq | Reloxo RX FRL | |
rx_hsync_freq | Frecuencia Hsync do cadro de vídeo recibido | |
hdmi_tx_top | tx_clk0_freq | Saída do reloxo do transceptor TX do canal 0 |
vid_clk_freq | Reloxo de vídeo TX | |
frl_clk_freq | Reloxo TX FRL | |
tx_hsync_freq | Frecuencia Hsync do cadro de vídeo que se vai transmitir |
2.16. Actualizando o teu deseño
Táboa 28. Deseño HDMI Example Compatibilidade coa versión de software anterior Intel Quartus Prime Pro Edition
Deseño Example Variante | Capacidade de actualizar a Intel Quartus Prime Pro Edition 20.3 |
Deseño HDMI 2.1 Example (soporte FRL = 1) | Non |
Para calquera deseño non compatible examples, cómpre facer o seguinte:
- Xerar un novo deseño por exemploample na versión actual do software Intel Quartus Prime Pro Edition usando as mesmas configuracións do seu deseño existente.
- Compare todo o deseño example directorio co deseño examplieiro xerado mediante a versión anterior do software Intel Quartus Prime Pro Edition. Port sobre os cambios atopados.
Deseño HDMI 2.0 Example (soporte FRL = 0)
O deseño IP HDMI Intel FPGA example mostra un bucle paralelo de instancia HDMI que comprende tres canles RX e catro canles TX.
Táboa 29. HDMI Intel FPGA IP Deseño Example para dispositivos Intel Arria 10
Deseño Example | Taxa de datos | Modo de canle | Tipo de loopback |
Retransmisión Arria 10 HDMI RX-TX | < 6,000 Mbps | Simplex | Paralelo co buffer FIFO |
Características
- O deseño crea unha instancia de buffers FIFO para realizar un paso directo de fluxo de vídeo HDMI entre o receptor HDMI e a fonte.
- O deseño usa o estado LED para a depuración inicialtage.
- O deseño inclúe só opcións RX e TX.
- O deseño demostra a inserción e filtrado de InfoFrame de Rango Dinámico e Mastering (HDR) no módulo de enlace RX-TX.
- O deseño demostra a xestión do paso EDID desde un receptor HDMI externo a unha fonte HDMI externa cando se activa por un evento de conexión en quente de TX.
- O deseño permite o control do tempo de execución a través do interruptor DIP e un pulsador para xestionar os sinais do núcleo HDMI TX:
— sinal de modo para seleccionar marco de vídeo codificado DVI ou HDMI
— sinais info_avi[47], info_vsi[61] e audio_info_ai[48] para seleccionar a transmisión de paquetes auxiliares a través de bandas laterais ou portos de datos auxiliares
A instancia de RX recibe unha fonte de vídeo do xerador de vídeo externo e, a continuación, os datos pasan por un loopback FIFO antes de ser transmitidos á instancia TX.
Necesitas conectar un analizador de vídeo externo, un monitor ou un televisor con conexión HDMI ao núcleo TX para verificar a funcionalidade.
3.1. Diagrama de bloques de deseño de retransmisión HDMI 2.0 RX-TX
O deseño de retransmisión HDMI 2.0 RX-TX por exemploample demostra un loopback paralelo no modo de canle simplex para HDMI Intel FPGA IP.
Figura 20. Diagrama de bloques de retransmisión HDMI RX-TX (Intel Quartus Prime Pro Edition)Figura 21. Diagrama de bloques de retransmisión HDMI RX-TX (Intel Quartus Prime Standard Edition)
Información relacionada
Fluctuación da ruta do reloxo en cascada ou non dedicado de PLL para o reloxo de referencia PLL Arria 10 Consulte esta solución para solucionalo se os reloxos de deseño experimentan adicionais
nerviosismo.
3.2. Requisitos de hardware e software
Intel usa o seguinte hardware e software para probar o deseño, por exemploample.
Hardware
- Kit de desenvolvemento de FPGA Intel Arria 10 GX
- Fonte HDMI (unidade de procesador gráfico (GPU))
- Sink HDMI (monitor)
- Tarxeta filla Bitec HDMI FMC 2.0 (Revisión 11)
- cables HDMI
Nota:
Podes seleccionar a revisión da túa tarxeta filla Bitec HDMI. Establece o parámetro local BITEC_DAUGHTER_CARD_REV en 4, 6 ou 11 no nivel superior file (a10_hdmi2_demo.v). Cando cambia a revisión, o deseño pode intercambiar as canles do transceptor e inverter a polaridade segundo os requisitos da tarxeta filla HDMI de Bitec. Se estableces o parámetro BITEC_DAUGHTER_CARD_REV en 0, o deseño non fai ningún cambio nas canles do transceptor e na polaridade. Para deseño HDMI 2.1 examples, baixo o Deseño Example, configure a Revisión da tarxeta filla HDMI en Revisión 9, Revisión 4 ou ningunha tarxeta filla. O valor predeterminado é a revisión 9.
Software
- Intel Quartus Prime versión 18.1 e posterior (para probas de hardware)
- ModelSim – Intel FPGA Edition, ModelSim – Intel FPGA Starter Edition, , RivieraPRO, VCS (só Verilog HDL)/VCS MX ou simulador Xcelium Parallel
3.3. Estrutura do directorio
Os directorios conteñen o xerado files para o deseño IP HDMI Intel FPGA example.
Figura 22. Estrutura do directorio para o deseño ExampleTáboa 30. RTL xerado Files
Cartafoles | Files |
gxb | • /gxb_rx.qsys (Intel Quartus Prime Standard Edition) • /gxb_rx.ip (Intel Quartus Prime Pro Edition) |
• /gxb_rx_reset.qsys (Intel Quartus Prime Standard Edition) • /gxb_rx_reset.ip (Intel Quartus Prime Pro Edition) |
|
• /gxb_tx.qsys (Intel Quartus Prime Standard Edition) • /gxb_tx.ip (Intel Quartus Prime Pro Edition) |
|
• /gxb_tx_fpll.qsys (Intel Quartus Prime Standard Edition) • /gxb_tx_fpll.ip (Intel Quartus Prime Pro Edition) |
|
• /gxb_tx_reset.qsys (Intel Quartus Prime Standard Edition) • /gxb_tx_reset.ip (Intel Quartus Prime Pro Edition) |
|
hdmi_rx | •/hdmi_rx.qsys (Intel Quartus Prime Standard Edition) •/hdmi_rx.ip (Intel Quartus Prime Pro Edition) |
/hdmi_rx_top.v | |
/mr_clock_sync.v (Intel Quartus Prime Standard Edition) | |
/mr_hdmi_rx_core_top.v (Intel Quartus Prime Standard Edition) | |
/mr_rx_oversample.v (Intel Quartus Prime Standard Edition) | |
/symbol_aligner.v | |
Panasonic.hex (Intel Quartus Prime Pro Edition) | |
hdmi_tx | • /hdmi_tx.qsys (Intel Quartus Prime Standard Edition) •/hdmi_tx.ip (Intel Quartus Prime Pro Edition) |
/hdmi_tx_top.v | |
/mr_ce.v (Intel Quartus Prime Standard Edition) | |
/mr_hdmi_tx_core_top.v (Intel Quartus Prime Standard Edition) | |
/mr_tx_oversample.v (Intel Quartus Prime Standard Edition) | |
i2c_master
(Intel Quartus Prime Standard Edition) |
/i2c_master_bit_ctrl.v |
/i2c_master_byte_ctrl.v | |
/i2c_master_defines.v | |
/i2c_master_top.v | |
/oc_i2c_master.v | |
/oc_i2c_master_hw.tcl | |
/escala temporal.v | |
i2c_slave | /edid_ram.qsys (Intel Quartus Prime Standard Edition) |
/Panasonic.hex (Intel Quartus Prime Standard Edition) | |
/i2c_avl_mst_intf_gen.v | |
/i2c_clk_cnt.v | |
/i2c_condt_det.v | |
/i2c_databuffer.v | |
/i2c_rxshifter.v | |
/i2c_slvfsm.v | |
/i2c_spksupp.v | |
/i2c_txout.v | |
/i2c_txshifter.v | |
/i2cslave_to_avlmm_bridge.v | |
pll | • /pll_hdmi.qsys (Intel Quartus Prime Standard Edition) • /pll_hdmi.ip (Intel Quartus Prime Pro Edition) |
• /pll_hdmi_reconfig.qsys (Intel Quartus Prime Standard Edition) • /pll_hdmi_reconfig.ip (Intel Quartus Prime Pro Edition) |
|
quartus.ini | |
común | • /clock_control.qsys (Intel Quartus Prime Standard Edition) • /clock_control.ip (Intel Quartus Prime Pro Edition) |
• /fifo.qsys (Intel Quartus Prime Standard Edition) • /fifo.ip (Intel Quartus Prime Pro Edition) |
|
• /output_buf_i2c.qsys (Intel Quartus Prime Standard Edition) •/output_buf_i2c.ip (Intel Quartus Prime Pro Edition) |
|
/reset_controller.qsys (Intel Quartus Prime Standard Edition) | |
/clock_crosser.v |
dcfifo_inst.v | |
debouncer.sv (Intel Quartus Prime Pro Edition) | |
hdr | /altera_hdmi_aux_hdr.v |
/altera_hdmi_aux_snk.v | |
/altera_hdmi_aux_src.v | |
/altera_hdmi_hdr_infoframe.v | |
/avalon_st_mutiplexer.qsys | |
reconfig_mgmt | /mr_compare_pll.v |
/mr_compare_rx.v | |
/mr_rate_detect.v | |
/mr_reconfig_master_pll.v | |
/mr_reconfig_master_rx.v | |
/mr_reconfig_mgmt.v | |
/mr_rom_pll_dprioaddr.v | |
/mr_rom_pll_valuemask_8bpc.v | |
/mr_rom_pll_valuemask_10bpc.v | |
/mr_rom_pll_valuemask_12bpc.v | |
/mr_rom_pll_valuemask_16bpc.v | |
/mr_rom_rx_dprioaddr_bitmask.v | |
/mr_rom_rx_valuemask.v | |
/mr_state_machine.v | |
sdc | /a10_hdmi2.sdc |
/mr_reconfig_mgmt.sdc | |
/jtag.sdc | |
/rxtx_link.sdc | |
/mr_clock_sync.sdc (Intel Quartus Prime Standard Edition) |
Táboa 31. Simulación xerada Files
Consulte a sección Simulation Testbench para obter máis información.
Cartafoles | Files |
aldec | /aldec.do |
/rivierapro_setup.tcl | |
cadencia | /cds.lib |
/hdl.var | |
<cartafol cds_libs> |
mentor | /mentor.do |
/msim_setup.tcl | |
sinopsis | /vcs/filelista.f |
/vcs/vcs_setup.sh | |
/vcs/vcs_sim.sh | |
/vcsmx/vcsmx_setup.sh | |
/vcsmx/vcsmx_sim.sh | |
/vcsmx/synopsys_sim_setup | |
xcelio
(Intel Quartus Prime Pro Edition) |
/cds.lib |
/hdl.var | |
/xcelium_setup.sh | |
/xcelium_sim.sh | |
común
(Intel Quartus Prime Pro Edition) |
/modelsim_files.tcl |
/riviera_files.tcl | |
/vcs_files.tcl | |
/vcsmx_files.tcl | |
/xcelium_files.tcl | |
hdmi_rx | • /hdmi_rx.qsys (Intel Quartus Prime Standard Edition) • /hdmi_rx.ip (Intel Quartus Prime Pro Edition) |
/hdmi_rx.sopcinfo (Intel Quartus Prime Standard Edition) | |
/Panasonic.hex (Intel Quartus Prime Pro Edition) | |
/symbol_aligner.v (Intel Quartus Prime Pro Edition) | |
hdmi_tx | • /hdmi_tx.qsys (Intel Quartus Prime Standard Edition) • /hdmi_tx.ip (Intel Quartus Prime Pro Edition) |
/hdmi_tx.sopcinfo (Intel Quartus Prime Standard Edition) |
Táboa 32.Software xerado Files
Cartafoles | Files |
tx_control_src Nota: O cartafol tx_control tamén contén duplicados destes files. |
/intel_fpga_i2c.c (Intel Quartus Prime Pro Edition) |
/intel_fpga_i2c.h (Intel Quartus Prime Pro Edition) | |
/i2c.c (Intel Quartus Prime Standard Edition) | |
/i2c.h (Intel Quartus Prime Standard Edition) | |
/principal.c | |
/xcvr_gpll_rcfg.c /xcvr_gpll_rcfg.h /ti_i2c.c (Intel Quartus Prime Standard Edition) /ti_i2c.h (Intel Quartus Prime Standard Edition) |
3.4. Compoñentes de deseño
O deseño IP HDMI Intel FPGA example require estes compoñentes.
Táboa 33. Compoñentes principais de HDMI RX
Módulo |
Descrición |
Núcleo HDMI RX | O IP recibe os datos en serie do Transceiver Native PHY e realiza o aliñamento de datos, a descodificación de canles, a decodificación TMDS, a decodificación de datos auxiliares, a decodificación de datos de vídeo, a descodificación de datos de audio e a descodificación. |
I2 | I2C é a interface utilizada para Sink Display Data Channel (DDC) e Status and Data Channel (SCDC). A fonte HDMI usa o DDC para determinar as capacidades e características da pía lendo a estrutura de datos de datos de identificación de pantalla ampliada mellorada (E-EDID). • Os enderezos escravos I8C de 2 bits para E-EDID son 0xA0 e 0xA1. O LSB indica o tipo de acceso: 1 para lectura e 0 para escritura. Cando se produce un evento HPD, o escravo I2C responde aos datos E-EDID lendo a memoria RAM do chip. • O controlador I2C só escravo tamén admite SCDC para operacións HDMI 2.0. O enderezo escravo I8C de 2 bits para o SCDC son 0xA8 e 0xA9. Cando se produce un evento HPD, o escravo I2C realiza transaccións de escritura ou lectura desde ou desde a interface SCDC do núcleo HDMI RX. Nota: Este controlador I2C só escravo para SCDC non é necesario se non se destina HDMI 2.0b. Se acendes o Inclúe I2C parámetro, este bloque incluirase dentro do núcleo e non será visible neste nivel. |
EDID RAM | O deseño almacena a información EDID usando o núcleo IP de 1 porto RAM. Un protocolo estándar de bus serie de dous fíos (reloxo e datos) (controlador I2C só escravo) transfire a estrutura de datos E-EDID conforme a CEA-861-D. Esta RAM EDID almacena a información E-EDID. Nota: Se acendes o Inclúe EDID RAM parámetro, este bloque incluirase dentro do núcleo e non será visible neste nivel. |
IOPLL | O IOPLL xera o reloxo de referencia RX CDR, o reloxo de velocidade da ligazón e o reloxo de vídeo para o reloxo TMDS entrante. • Reloxo de saída 0 (reloxo de referencia CDR) • Reloxo de saída 1 (reloxo de velocidade da ligazón) • Reloxo de saída 2 (reloxo de vídeo) Nota: A configuración IOPLL predeterminada non é válida para ningunha resolución HDMI. O IOPLL reconfigúrase coa configuración adecuada ao acender. |
Controlador de reinicio de transceptor PHY | O controlador de reinicio Transceiver PHY garante unha inicialización fiable dos transceptores RX. A entrada de reinicio deste controlador desenvólvese pola reconfiguración de RX e xera o sinal de reinicio analóxico e dixital correspondente ao bloque PHY nativo do transceptor segundo a secuencia de reinicio dentro do bloque. |
RX Nativo PHY | Bloque de transceptor duro que recibe os datos en serie dunha fonte de vídeo externa. Deserializa os datos en serie a datos paralelos antes de pasar os datos ao núcleo HDMI RX. |
Xestión de reconfiguración de RX | Xestión de reconfiguración de RX que implementa circuítos de detección de velocidade co HDMI PLL para impulsar o transceptor RX para que funcione a calquera velocidade de enlace arbitraria que vai de 250 Mbps a 6,000 Mbps. Consulte a Figura 23 na páxina 63 a continuación. |
Reconfiguración de IOPLL | O bloque de reconfiguración IOPLL facilita a reconfiguración dinámica en tempo real de PLL en Intel FPGA. Este bloque actualiza a frecuencia do reloxo de saída e o ancho de banda PLL en tempo real, sen que se reconfigure toda a FPGA. Este bloque funciona a 100 MHz en dispositivos Intel Arria 10. Debido á limitación da reconfiguración de IOPLL, aplique o Quartus INI permit_nf_pll_reconfig_out_of_lock=on durante a xeración de IP de reconfiguración de IOPLL. Para aplicar o Quartus INI, inclúa "permit_nf_pll_reconfig_out_of_lock=on" no quartus.ini file e colocar no file o directorio de proxectos Intel Quartus Prime. Debería ver unha mensaxe de aviso cando edite o bloque de reconfiguración IOPLL (pll_hdmi_reconfig) no software Quartus Prime co INI. Nota: Sen este Quartus INI, a reconfiguración de IOPLL non se pode completar se o IOPLL perde o bloqueo durante a reconfiguración. |
PIO | O bloque de entrada/saída paralela (PIO) funciona como interfaces de control, estado e restablecemento para ou desde o subsistema da CPU. |
Figura 23. Fluxo da secuencia de reconfiguración multivelocidade
A figura ilustra o fluxo de secuencia de reconfiguración multitaxa do controlador cando recibe o fluxo de datos de entrada e a frecuencia do reloxo de referencia, ou cando o transceptor está desbloqueado.Táboa 34. Compoñentes principais de HDMI TX
Módulo |
Descrición |
Núcleo HDMI TX | O núcleo IP recibe datos de vídeo do nivel superior e realiza a codificación TMDS, a codificación de datos auxiliares, a codificación de datos de audio, a codificación de datos de vídeo e a codificación. |
Mestre I2C | I2C é a interface utilizada para Sink Display Data Channel (DDC) e Status and Data Channel (SCDC). A fonte HDMI usa o DDC para determinar as capacidades e características da pía lendo a estrutura de datos de datos de identificación de pantalla ampliada mellorada (E-EDID). • Como DDC, I2C Master le o EDID desde o sumidoiro externo para configurar a información EDID EDID RAM no HDMI RX Top ou para o procesamento de vídeo. • Como SCDC, o mestre I2C transfire a estrutura de datos SCDC desde a fonte FPGA á receptora externa para a operación HDMI 2.0b. Por example, se o fluxo de datos de saída é superior a 3,400 Mbps, o procesador Nios II ordena ao mestre I2C que actualice os bits TMDS_BIT_CLOCK_RATIO e SCRAMBLER_ENABLE do rexistro de configuración SCDC do sumidoiro a 1. |
IOPLL | O IOPLL fornece o reloxo de velocidade da ligazón e o reloxo de vídeo desde o reloxo TMDS entrante. • Reloxo de saída 1 (reloxo de velocidade da ligazón) • Reloxo de saída 2 (reloxo de vídeo) Nota: A configuración IOPLL predeterminada non é válida para ningunha resolución HDMI. O IOPLL reconfigúrase coa configuración adecuada ao acender. |
Controlador de reinicio de transceptor PHY | O controlador de reinicio Transceiver PHY garante unha inicialización fiable dos transceptores TX. A entrada de reinicio deste controlador desenvólvese desde o nivel superior e xera o sinal de reinicio analóxico e dixital correspondente ao bloque Transceiver Native PHY segundo a secuencia de reinicio dentro do bloque. O sinal de saída tx_ready deste bloque tamén funciona como un sinal de reinicio para o HDMI Intel FPGA IP para indicar que o transceptor está funcionando e listo para recibir datos do núcleo. |
Transceptor nativo PHY | Bloque de transceptor duro que recibe os datos paralelos do núcleo HDMI TX e serializa os datos a partir da súa transmisión. A interface de reconfiguración está habilitada no bloque TX Native PHY para demostrar a conexión entre TX Native PHY e o árbitro do transceptor. Non se realiza ningunha reconfiguración para TX Native PHY. Nota: Para cumprir o requisito de sesgo entre canles HDMI TX, configure a opción de modo de vinculación de canles TX no editor de parámetros PHY nativo do transceptor Intel Arria 10 en Unión PMA e PCS. Tamén cómpre engadir o requisito de restrición de sesgo máximo (set_max_skew) ao sinal de reinicio dixital do controlador de reinicio do transceptor (tx_digitalreset) tal e como se recomenda no Guía de usuario de Intel Arria 10 Transceiver PHY. |
TX PLL | O bloque PLL do transmisor proporciona o reloxo rápido en serie ao bloque Transceiver Native PHY. Para este deseño IP HDMI Intel FPGA example, fPLL úsase como TX PLL. |
Reconfiguración de IOPLL | O bloque de reconfiguración IOPLL facilita a reconfiguración dinámica en tempo real de PLL en Intel FPGA. Este bloque actualiza a frecuencia do reloxo de saída e o ancho de banda PLL en tempo real, sen que se reconfigure toda a FPGA. Este bloque funciona a 100 MHz en dispositivos Intel Arria 10. Debido á limitación da reconfiguración de IOPLL, aplique o Quartus INI permit_nf_pll_reconfig_out_of_lock=on durante a xeración de IP de reconfiguración de IOPLL. Para aplicar o Quartus INI, inclúa "permit_nf_pll_reconfig_out_of_lock=on" no quartus.ini file e colocar no file o directorio de proxectos Intel Quartus Prime. Debería ver unha mensaxe de aviso cando edite o bloque de reconfiguración IOPLL (pll_hdmi_reconfig) no software Intel Quartus Prime co INI. Nota: Sen este Quartus INI, a reconfiguración de IOPLL non se pode completar se o IOPLL perde o bloqueo durante a reconfiguración. |
PIO | O bloque de entrada/saída paralela (PIO) funciona como interfaces de control, estado e restablecemento para ou desde o subsistema da CPU. |
Táboa 35. Taxa de datos e sobres do transceptorampFactor ling para cada intervalo de frecuencia de reloxo TMDS
Frecuencia de reloxo TMDS (MHz) | Relación de reloxo de bits TMDS | OversampFactor ling | Velocidade de datos do transceptor (Mbps) |
85–150 | 1 | Non aplicable | 3400–6000 |
100–340 | 0 | Non aplicable | 1000–3400 |
50–100 | 0 | 5 | 2500–5000 |
35–50 | 0 | 3 | 1050–1500 |
30–35 | 0 | 4 | 1200–1400 |
25–30 | 0 | 5 | 1250–1500 |
Táboa 36. Bloques comúns de nivel superior
Módulo |
Descrición |
Arbitro de Transceptor | Este bloque funcional xenérico impide que os transceptores se recalibran simultaneamente cando os transceptores RX ou TX dentro da mesma canle física requiren reconfiguración. A recalibración simultánea afecta ás aplicacións nas que os transceptores RX e TX dentro da mesma canle están asignados a implementacións IP independentes. Este árbitro de transceptor é unha extensión da resolución recomendada para combinar TX simplex e RX simplex na mesma canle física. Este árbitro de transceptor tamén axuda a fusionar e arbitrar as solicitudes de reconfiguración Avalon-MM RX e TX dirixidas aos transceptores RX e TX simples dentro dunha canle xa que só se pode acceder ao porto de interface de reconfiguración dos transceptores de forma secuencial. A conexión de interface entre o árbitro do transceptor e os bloques do controlador de restablecemento nativo de TX/RX PHY/PHY neste deseño éample mostra un modo xenérico que se aplica a calquera combinación de IP usando o árbitro de transceptor. O árbitro do transceptor non é necesario cando só se usa o transceptor RX ou TX nunha canle. O árbitro do transceptor identifica o solicitante dunha reconfiguración a través das súas interfaces de reconfiguración Avalon-MM e asegura que o tx_reconfig_cal_busy ou rx_reconfig_cal_busy correspondente estea protexido en consecuencia. Para a aplicación HDMI, só RX inicia a reconfiguración. Ao canalizar a solicitude de reconfiguración de Avalon-MM a través do árbitro, o árbitro identifica que a solicitude de reconfiguración se orixina no RX, que logo impide que tx_reconfig_cal_busy se afirme e permite que rx_reconfig_cal_busy afirme. A porta impide que o transceptor TX se mova ao modo de calibración sen querer. |
Nota: Dado que HDMI só require a reconfiguración de RX, os sinais tx_reconfig_mgmt_* están atados. Ademais, a interface Avalon-MM non é necesaria entre o árbitro e o bloque TX Native PHY. Os bloques están asignados á interface no deseño example para demostrar a conexión de árbitro de transceptor xenérico ao controlador de restablecemento nativo de TX/RX PHY/PHY. | |
Enlace RX-TX | • A saída de datos de vídeo e os sinais de sincronización do núcleo HDMI RX pasan a través dun DCFIFO nos dominios do reloxo de vídeo RX e TX. • O paquete de control xeral (GCP), os InfoFrames (AVI, VSI e AI), os datos auxiliares e o bucle de datos de audio a través de DCFIFO nos dominios de reloxo de velocidade de enlace RX e TX. • O porto de datos auxiliares do núcleo HDMI TX controla os datos auxiliares que flúen polo DCFIFO a través da contrapresión. A contrapresión garante que non haxa ningún paquete auxiliar incompleto no porto de datos auxiliares. • Este bloque tamén realiza filtrado externo: — Filtra os datos de audio e o paquete de rexeneración do reloxo de audio do fluxo de datos auxiliares antes de transmitilo ao porto de datos auxiliares do núcleo HDMI TX. Nota: Para desactivar este filtrado, prema user_pb[2]. Activa este filtrado para garantir que non hai duplicación de datos de audio e paquetes de rexeneración do reloxo de audio no fluxo de datos auxiliares retransmitidos. — Filtra o High Dynamic Range (HDR) InfoFrame dos datos auxiliares HDMI RX e insire un example HDR InfoFrame aos datos auxiliares do HDMI TX a través do multiplexor Avalon ST. |
Subsistema CPU | O subsistema da CPU funciona como controladores SCDC e DDC e controlador de reconfiguración da fonte. • O controlador SCDC fonte contén o controlador mestre I2C. O controlador mestre I2C transfire a estrutura de datos SCDC desde a fonte FPGA ao sumidoiro externo para a operación HDMI 2.0b. Por example, se o fluxo de datos de saída é de 6,000 Mbps, o procesador Nios II ordena ao controlador mestre I2C que actualice os bits TMDS_BIT_CLOCK_RATIO e SCRAMBLER_ENABLE do rexistro de configuración TMDS do sumidoiro a 1. • O mesmo mestre I2C tamén transfire a estrutura de datos DDC (E-EDID) entre a fonte HDMI e o sumidoiro externo. • A CPU Nios II actúa como controlador de reconfiguración da fonte HDMI. A CPU confía na detección de taxa periódica do módulo de xestión de reconfiguración de RX para determinar se o TX require reconfiguración. O tradutor escravo Avalon-MM proporciona a interface entre a interface mestra Avalon-MM do procesador Nios II e as interfaces escravas Avalon-MM do IOPLL e TX Native PHY da fonte HDMI instanciada externamente. • O fluxo da secuencia de reconfiguración para TX é o mesmo que RX, excepto que a reconfiguración do PLL e do transceptor e a secuencia de reinicio realízase secuencialmente. Consulte a Figura 24 na páxina 67. |
Figura 24. Fluxo da secuencia de reconfiguración
A figura ilustra o fluxo de software Nios II que inclúe os controis para o mestre I2C e a fonte HDMI.3.5. Rango dinámico e masterización (HDR) Inserción e filtrado de InfoFrame
O deseño IP HDMI Intel FPGA example inclúe unha demostración da inserción de HDR InfoFrame nun sistema de loopback RX-TX.
A versión 2.0b da especificación HDMI permite que Dynamic Range e Mastering InfoFrame se transmitan a través do fluxo auxiliar HDMI. Na demostración, o bloque de inserción de datos auxiliares admite a inserción HDR. Só precisa formatear o paquete HDR InfoFrame previsto como se especifica na táboa de lista de sinais do módulo e utilizar o módulo de control de inserción AUX proporcionado para programar a inserción do HDR InfoFrame unha vez por fotograma de vídeo.
Neste exampconfiguración do ficheiro, nos casos nos que o fluxo auxiliar entrante xa inclúe HDR InfoFrame, o contido HDR transmitido fíltrase. O filtrado evita que se transmitan os InfoFrames HDR en conflito e garante que só os valores especificados no HDR SampÚsase o módulo de datos.
Figura 25. Enlace RX-TX con rango dinámico e inserción de InfoFrame mastering
A figura mostra o diagrama de bloques da ligazón RX-TX, incluíndo a inserción de Dynamic Range e Mastering InfoFrame no fluxo auxiliar do núcleo HDMI TX.
Táboa 37. Sinais do bloque de inserción de datos auxiliares (altera_hdmi_aux_hdr)
Sinal | Dirección | Anchura |
Descrición |
Reloxo e reset | |||
clk | Entrada | 1 | Entrada de reloxo. Este reloxo debe estar conectado ao reloxo de velocidade da ligazón. |
restablecer | Entrada | 1 | Restablecer entrada. |
Xerador de paquetes auxiliar e sinais multiplexadores | |||
multiplexer_out_data | Saída | 72 | Saída de transmisión de Avalon desde o multiplexor. |
multiplexer_out_valid | Saída | 1 | |
multiplexer_out_ready | Saída | 1 | |
multiplexer_out_startofpacket | Saída | 1 | |
multiplexer_out_endofpacket | Saída | 1 | |
multiplexer_out_channel | Saída | 11 | |
multiplexer_en_datos | Entrada | 72 | Entrada de transmisión de Avalon ao porto In1 do multiplexor. Vsync de vídeo HDMI TX. Este sinal debería estar sincronizado co dominio do reloxo da velocidade da ligazón. O núcleo insire o HDR InfoFrame no fluxo auxiliar no bordo ascendente deste sinal. |
multiplexer_in_valid | Entrada | 1 | |
multiplexer_in_ready | Entrada | 1 | |
multiplexer_in_startofpacket | Entrada | 1 | |
multiplexer_in_endofpacket hdmi_tx_vsync |
Entrada Entrada |
1 1 |
Táboa 38. Sinais do módulo de datos HDR (altera_hdmi_hdr_infoframe)
Sinal | Dirección | Anchura |
Descrición |
hb0 | Saída | 8 | Byte de cabeceira 0 do Intervalo Dinámico e do InfoFrame de Mastering: Código de tipo InfoFrame. |
hb1 | Saída | 8 | Byte de cabeceira 1 do intervalo dinámico e do InfoFrame de dominio: número de versión do InfoFrame. |
hb2 | Saída | 8 | Byte de cabeceira 2 do intervalo dinámico e do cadro de información de dominio: lonxitude do cadro de información. |
pb | Entrada | 224 | Byte de datos do Rango Dinámico e do InfoFrame de Mastering. |
Táboa 39. Rango dinámico e dominio de campos de bits do paquete de bytes de datos InfoFrame
Campo de bits |
Definición |
Metadatos estáticos tipo 1 |
7:0 | Byte de datos 1: {5'h0, EOTF[2:0]} | |
15:8 | Byte de datos 2: {5'h0, Static_Metadata_Descriptor_ID[2:0]} | |
23:16 | Byte de datos 3: Descriptor_de_metadatos_estáticos | display_primaries_x[0], LSB |
31:24 | Byte de datos 4: Descriptor_de_metadatos_estáticos | display_primaries_x[0], MSB |
39:32 | Byte de datos 5: Descriptor_de_metadatos_estáticos | display_primaries_y[0], LSB |
47:40 | Byte de datos 6: Descriptor_de_metadatos_estáticos | display_primaries_y[0], MSB |
55:48 | Byte de datos 7: Descriptor_de_metadatos_estáticos | display_primaries_x[1], LSB |
63:56 | Byte de datos 8: Descriptor_de_metadatos_estáticos | display_primaries_x[1], MSB |
71:64 | Byte de datos 9: Descriptor_de_metadatos_estáticos | display_primaries_y[1], LSB |
79:72 | Byte de datos 10: Descriptor_de_metadatos_estáticos | display_primaries_y[1], MSB |
87:80 | Byte de datos 11: Descriptor_de_metadatos_estáticos | display_primaries_x[2], LSB |
95:88 | Byte de datos 12: Descriptor_de_metadatos_estáticos | display_primaries_x[2], MSB |
103:96 | Byte de datos 13: Descriptor_de_metadatos_estáticos | display_primaries_y[2], LSB |
111:104 | Byte de datos 14: Descriptor_de_metadatos_estáticos | display_primaries_y[2], MSB |
119:112 | Byte de datos 15: Descriptor_de_metadatos_estáticos | punto_branco_x, LSB |
127:120 | Byte de datos 16: Descriptor_de_metadatos_estáticos | white_point_x, MSB |
135:128 | Byte de datos 17: Descriptor_de_metadatos_estáticos | punto_branco_y, LSB |
143:136 | Byte de datos 18: Descriptor_de_metadatos_estáticos | white_point_y, MSB |
151:144 | Byte de datos 19: Descriptor_de_metadatos_estáticos | max_display_mastering_luminance, LSB |
159:152 | Byte de datos 20: Descriptor_de_metadatos_estáticos | max_display_mastering_luminance, MSB |
167:160 | Byte de datos 21: Descriptor_de_metadatos_estáticos | min_display_mastering_luminance, LSB |
175:168 | Byte de datos 22: Descriptor_de_metadatos_estáticos | min_display_mastering_luminance, MSB |
183:176 | Byte de datos 23: Descriptor_de_metadatos_estáticos | Nivel de luz de contido máximo, LSB |
191:184 | Byte de datos 24: Descriptor_de_metadatos_estáticos | Nivel de luz de contido máximo, MSB |
199:192 | Byte de datos 25: Descriptor_de_metadatos_estáticos | Nivel de luz medio máximo de cadros, LSB |
207:200 | Byte de datos 26: Descriptor_de_metadatos_estáticos | Nivel de luz medio máximo de cadros, MSB |
215:208 | Reservado | |
223:216 | Reservado |
Desactivando a inserción e filtrado HDR
A desactivación da inserción e do filtro HDR permítelle verificar a retransmisión do contido HDR xa dispoñible no fluxo auxiliar de orixe sen ningunha modificación no deseño de retransmisión RX-TX ex.ample.
Para desactivar a inserción e o filtrado de HDR InfoFrame:
- Establece block_ext_hdr_infoframe en 1'b0 en rxtx_link.v file para evitar o filtrado do HDR InfoFrame do fluxo auxiliar.
- Establecer multiplexer_in0_valid da instancia avalon_st_multiplexer no altera_hdmi_aux_hdr.v file a 1'b0 para evitar que o Xerador de Paquetes Auxiliar se forme e insira un InfoFrame HDR adicional no fluxo Auxiliar de TX.
3.6. Esquema de temporización
O esquema de reloxo ilustra os dominios de reloxo no deseño IP HDMI Intel FPGA, por exemploample.
Figura 26. HDMI Intel FPGA IP Design Example Clock Scheme (Intel Quartus Prime Pro Edition)Figura 27. HDMI Intel FPGA IP Design Example Clock Scheme (Intel Quartus Prime Standard Edition)
Táboa 40. Sinais do esquema de reloxo
Reloxo | Nome do sinal no deseño |
Descrición |
Reloxo de referencia TX IOPLL/ TX PLL 1 | hdmi_clk_in | Reloxo de referencia para TX IOPLL e TX PLL. A frecuencia de reloxo é a mesma que a frecuencia de reloxo TMDS esperada da canle de reloxo TMDS HDMI TX. Para este deseño IP HDMI Intel FPGA example, este reloxo está conectado ao reloxo RX TMDS con fins de demostración. Na súa aplicación, cómpre proporcionar un reloxo dedicado con frecuencia de reloxo TMDS a partir dun oscilador programable para un mellor rendemento de jitter. Nota: Non use un pin RX do transceptor como reloxo de referencia TX PLL. O teu deseño non encaixará se colocas o refclk HDMI TX nun pin RX. |
Saída do reloxo do transceptor TX | tx_clk | Recuperouse a saída do reloxo do transceptor e a frecuencia varía dependendo da taxa de datos e dos símbolos por reloxo. Frecuencia de saída do transceptor TX = Taxa de datos do transceptor/ (Símbolo por reloxo*10) |
Reloxo de serie TX PLL | tx_bonding_clocks | Reloxo rápido en serie xerado por TX PLL. A frecuencia do reloxo establécese en función da taxa de datos. |
Reloxo de velocidade de enlace TX/RX | ls_clk | Reloxo de velocidade da ligazón. A frecuencia do reloxo da velocidade da ligazón depende da frecuencia de reloxo TMDS esperada, sobresampfactor ling, símbolos por reloxo e relación de reloxo de bits TMDS. |
Relación de reloxo de bits TMDS | Frecuencia de reloxo de velocidade da ligazón | ||
0 | Frecuencia de reloxo TMDS/ Símbolo por reloxo | ||
1 | Frecuencia de reloxo TMDS *4 / Símbolo por reloxo | ||
Reloxo de vídeo TX/RX | vid_clk | Reloxo de datos de vídeo. A frecuencia do reloxo de datos de vídeo derívase do reloxo de velocidade da ligazón TX en función da profundidade de cor. | |
Relación de reloxo de bits TMDS | Frecuencia de reloxo de datos de vídeo | ||
0 | Reloxo TMDS/ Símbolo por reloxo/ Factor de profundidade de cor | ||
1 | Reloxo TMDS *4 / Símbolo por reloxo / Factor de profundidade de cor | ||
Bits por cor | Factor de profundidade de cor | ||
8 | 1 | ||
10 | 1.25 | ||
12 | 1.5 | ||
16 | 2.0 | ||
Reloxo RX TMDS | tmds_clk_in | Canle de reloxo TMDS do HDMI RX e conéctase ao reloxo de referencia ao IOPLL. | |
Reloxo de referencia RX CDR 0 / Reloxo de referencia TX PLL 0 | fr_clk | Reloxo de referencia gratuíto para RX CDR e TX PLL. Este reloxo é necesario para a calibración do encendido. | |
Reloxo de referencia RX CDR 1 | iopll_outclk0 | Reloxo de referencia ao RX CDR do transceptor RX. | |
Taxa de datos | Frecuencia do reloxo de referencia RX | ||
Velocidade de datos <1 Gbps | Frecuencia de reloxo 5× TMDS | ||
1 Gbps< Velocidade de datos
<3.4 Gbps |
Frecuencia de reloxo TMDS | ||
Velocidade de datos > 3.4 Gbps | Frecuencia de reloxo 4× TMDS | ||
• Taxa de datos <1 Gbps: para excesosampling para cumprir o requisito mínimo de velocidade de datos do transceptor. • Taxa de datos >3.4 Gbps: para compensar a relación de velocidade de bits/reloxo de TMDS de 1/40 para manter a relación de velocidade de datos do transceptor/reloxo en 1/10. Nota: Non use un pin RX do transceptor como reloxo de referencia CDR. O teu deseño non encaixará se colocas o refclk HDMI RX nun pin RX. |
|||
Saída do reloxo do transceptor RX | rx_clk | Recuperouse a saída do reloxo do transceptor e a frecuencia varía dependendo da taxa de datos e dos símbolos por reloxo.
Frecuencia de saída do transceptor RX = Taxa de datos do transceptor/ (Símbolo por reloxo*10) |
|
Reloxo de xestión | mgmt_clk | Un reloxo gratuíto de 100 MHz para estes compoñentes: |
• Interfaces Avalon-MM para reconfiguración — O requisito do intervalo de frecuencia está entre 100 e 125 MHz. •, controlador de reinicio PHY para a secuencia de reinicio do transceptor — O requisito do intervalo de frecuencias está entre 1 e 500 MHz. • Reconfiguración IOPLL — A frecuencia de reloxo máxima é de 100 MHz. • Reconfiguración de RX para a xestión • CPU • Mestre I2C |
||
Reloxo I2C | i2c_clk | Unha entrada de reloxo de 100 MHz que rexistra un escravo I2C, rexistros SCDC no núcleo HDMI RX e RAM EDID. |
Información relacionada
- Usando o pin RX do transceptor como reloxo de referencia CDR
- Usando o pin RX do transceptor como reloxo de referencia TX PLL
3.7. Sinais de interface
As táboas enumeran os sinais para o deseño IP HDMI Intel FPGA por exemploample.
Táboa 41. Sinais de nivel superior
Sinal | Dirección | Anchura |
Descrición |
Sinal do oscilador a bordo | |||
clk_fpga_b3_p | Entrada | 1 | Reloxo de funcionamento libre de 100 MHz para o reloxo de referencia principal |
REFCLK_FMCB_P (Intel Quartus Prime Pro Edition) | Entrada | 1 | Reloxo de funcionamento libre de 625 MHz para o reloxo de referencia do transceptor; este reloxo pode ser de calquera frecuencia |
Botóns e LEDs de usuario | |||
usuario_pb | Entrada | 1 | Preme o botón para controlar a funcionalidade de deseño IP HDMI Intel FPGA |
cpu_resetn | Entrada | 1 | Restablecemento global |
user_led_g | Saída | 4 | Pantalla LED verde Consulte Configuración do hardware na páxina 89 para obter máis información sobre as funcións do LED. |
user_led_r | Saída | 4 | Pantalla LED vermella Consulte Configuración do hardware na páxina 89 para obter máis información sobre as funcións do LED. |
Pins da tarxeta filla HDMI FMC no porto FMC B | |||
fmcb_gbtclk_m2c_p_0 | Entrada | 1 | Reloxo HDMI RX TMDS |
fmcb_dp_m2c_p | Entrada | 3 | Canales de datos HDMI RX vermello, verde e azuis • Revisión 11 da tarxeta filla Bitec — [0]: RX TMDS Canal 1 (verde) — [1]: RX TMDS Canle 2 (vermello) — [2]: RX TMDS Canle 0 (azul) • Tarxeta filla Bitec revisión 4 ou 6 — [0]: RX TMDS Canal 1 (verde): polaridade invertida — [1]: RX TMDS Canle 0 (azul)— polaridade invertida — [2]: RX TMDS Channel 2 (Vermello)— polaridade invertida |
fmcb_dp_c2m_p | Saída | 4 | Reloxo HDMI TX, canles de datos vermellas, verdes e azuis • Revisión 11 da tarxeta filla Bitec — [0]: TX TMDS Canle 2 (vermello) — [1]: TX TMDS Canal 1 (verde) — [2]: TX TMDS Canle 0 (azul) — [3]: Canle de reloxo TX TMDS • Tarxeta filla Bitec revisión 4 ou 6 — [0]: Canle de reloxo TX TMDS — [1]: TX TMDS Canle 0 (azul) — [2]: TX TMDS Canal 1 (verde) — [3]: TX TMDS Canle 2 (vermello) |
fmcb_la_rx_p_9 | Entrada | 1 | Detección de potencia HDMI RX +5V |
fmcb_la_rx_p_8 | Inout | 1 | Detección de conexión en caliente HDMI RX |
fmcb_la_rx_n_8 | Inout | 1 | HDMI RX I2C SDA para DDC e SCDC |
fmcb_la_tx_p_10 | Entrada | 1 | HDMI RX I2C SCL para DDC e SCDC |
fmcb_la_tx_p_12 | Entrada | 1 | Detección de conexión en caliente HDMI TX |
fmcb_la_tx_n_12 | Inout | 1 | HDMI I2C SDA para DDC e SCDC |
fmcb_la_rx_p_10 | Inout | 1 | HDMI I2C SCL para DDC e SCDC |
fmcb_la_tx_p_11 | Inout | 1 | HDMI I2C SDA para control de redriver |
fmcb_la_rx_n_9 | Inout | 1 | HDMI I2C SCL para control de redriver |
Táboa 42. Sinais de nivel superior HDMI RX
Sinal | Dirección | Anchura |
Descrición |
Reloxo e reinicio de sinais | |||
mgmt_clk | Entrada | 1 | Entrada de reloxo do sistema (100 MHz) |
fr_clk (Intel Quartus Prime Pro Edition) | Entrada | 1 | Reloxo de funcionamento libre (625 MHz) para o reloxo de referencia do transceptor primario. Este reloxo é necesario para a calibración do transceptor durante o estado de encendido. Este reloxo pode ser de calquera frecuencia. |
restablecer | Entrada | 1 | Entrada de reinicio do sistema |
Sinal |
Dirección | Anchura |
Descrición |
Reloxo e reinicio de sinais | |||
reset_xcvr_powerup (Intel Quartus Prime Pro Edition) | Entrada | 1 | Entrada de reinicio do transceptor. Este sinal realízase durante o proceso de conmutación de reloxos de referencia (de reloxo de funcionamento libre ao reloxo TMDS) no estado de encendido. |
tmds_clk_in | Entrada | 1 | Reloxo HDMI RX TMDS |
i2c_clk | Entrada | 1 | Entrada de reloxo para interfaces DDC e SCDC |
vid_clk_out | Saída | 1 | Saída do reloxo de vídeo |
ls_clk_out | Saída | 1 | Saída de reloxo de velocidade da ligazón |
sys_init | Saída | 1 | Inicialización do sistema para restablecer o sistema ao acender |
Transceptor RX e sinais IOPLL | |||
rx_datos_serial | Entrada | 3 | Datos de serie HDMI ao RX Native PHY |
gxb_rx_listo | Saída | 1 | Indica que RX Native PHY está listo |
gxb_rx_cal_busy_out | Saída | 3 | Calibración PHY nativa de RX ocupada para o árbitro do transceptor |
gxb_rx_cal_busy_in | Entrada | 3 | Sinal de ocupado de calibración do árbitro do transceptor ao RX Native PHY |
iopll_bloqueado | Saída | 1 | Indica que IOPLL está bloqueado |
gxb_reconfig_write | Entrada | 3 | Reconfiguración do transceptor Interface Avalon-MM do RX Native PHY ao árbitro do transceptor |
gxb_reconfig_read | Entrada | 3 | |
enderezo_gxb_reconfig | Entrada | 30 | |
gxb_reconfig_writedata | Entrada | 96 | |
gxb_reconfig_readdata | Saída | 96 | |
gxb_reconfig_waitrequest | Saída | 3 |
Xestión de reconfiguración de RX | |||
rx_reconfig_en | Saída | 1 | A reconfiguración de RX activa o sinal |
medida | Saída | 24 | Medición de frecuencia de reloxo HDMI RX TMDS (en 10 ms) |
medida_válida | Saída | 1 | Indica que o sinal de medida é válido |
os | Saída | 1 | Oversampfactor ling: • 0: sen excesosampling • 1: 5 veces máisampling |
reconfig_mgmt_write | Saída | 1 | Xestión de reconfiguración de RX Interface mapeada de memoria de Avalon ao árbitro do transceptor |
reconfig_mgmt_read | Saída | 1 | |
enderezo_mgmt_reconfig | Saída | 12 |
reconfig_mgmt_writedata | Saída | 32 | |
reconfig_mgmt_readdata | Entrada | 32 | |
reconfig_mgmt_waitrequest | Entrada | 1 |
Sinais de núcleo HDMI RX | |||
TMDS_Bit_clock_Ratio | Saída | 1 | Interfaces de rexistro SCDC |
audio_de | Saída | 1 | Interfaces de audio do núcleo HDMI RX Consulte a sección Interfaces de sumidoiro na Guía de usuario de HDMI Intel FPGA IP para obter máis información. |
datos_audio | Saída | 256 | |
información_audio_ai | Saída | 48 | |
audio_N | Saída | 20 | |
audio_CTS | Saída | 20 | |
metadatos_audio | Saída | 165 | |
formato_audio | Saída | 5 | |
aux_pkt_data | Saída | 72 | Interfaces auxiliares do núcleo HDMI RX Consulte a sección Interfaces de sumidoiro na Guía de usuario de HDMI Intel FPGA IP para obter máis información. |
aux_pkt_addr | Saída | 6 | |
aux_pkt_wr | Saída | 1 | |
datos_aux | Saída | 72 | |
aux_sop | Saída | 1 | |
aux_eop | Saída | 1 | |
aux_válido | Saída | 1 | |
erro_aux | Saída | 1 | |
gcp | Saída | 6 | Sinais de banda lateral do núcleo HDMI RX Consulte a sección Interfaces de sumidoiro na Guía de usuario de HDMI Intel FPGA IP para obter máis información. |
info_avi | Saída | 112 | |
info_vsi | Saída | 61 | |
colordepth_mgmt_sync | Saída | 2 | |
datos_vid | Saída | N*48 | Portos de vídeo do núcleo HDMI RX Nota: N = símbolos por reloxo Consulte o Interfaces de lavabo sección no Guía de usuario de HDMI Intel FPGA IP para máis información. |
vid_vsync | Saída | N | |
vid_hsync | Saída | N | |
vid_de | Saída | N | |
modo | Saída | 1 | Control do núcleo HDMI RX e portos de estado Nota: N = símbolos por reloxo Consulte o Interfaces de lavabo sección no Guía de usuario de HDMI Intel FPGA IP para máis información. |
ctrl | Saída | N*6 | |
pechado | Saída | 3 | |
vid_lock | Saída | 1 | |
en_5v_potencia | Entrada | 1 | Detección de HDMI RX 5V e detección de conexión en quente Consulte o Interfaces de lavabo sección no Guía de usuario de HDMI Intel FPGA IP para máis información. |
hdmi_rx_hpd_n | Inout | 1 |
hdmi_rx_i2c_sda | Inout | 1 | Interface HDMI RX DDC e SCDC |
hdmi_rx_i2c_scl | Inout | 1 |
Sinais RX EDID RAM | |||
edid_ram_access | Entrada | 1 | Interfaz de acceso HDMI RX EDID RAM. Afirma edid_ram_access cando queiras escribir ou ler desde a RAM EDID, se non, este sinal debería manterse baixo. |
enderezo_edid_ram | Entrada | 8 | |
edid_ram_write | Entrada | 1 | |
edid_ram_read | Entrada | 1 | |
edid_ram_readdata | Saída | 8 | |
edid_ram_writedata | Entrada | 8 | |
edid_ram_waitrequest | Saída | 1 |
Táboa 43. Sinais de nivel superior HDMI TX
Sinal | Dirección | Anchura | Descrición |
Reloxo e reinicio de sinais | |||
mgmt_clk | Entrada | 1 | Entrada de reloxo do sistema (100 MHz) |
fr_clk (Intel Quartus Prime Pro Edition) | Entrada | 1 | Reloxo de funcionamento libre (625 MHz) para o reloxo de referencia do transceptor primario. Este reloxo é necesario para a calibración do transceptor durante o estado de encendido. Este reloxo pode ser de calquera frecuencia. |
restablecer | Entrada | 1 | Entrada de reinicio do sistema |
hdmi_clk_in | Entrada | 1 | Reloxo de referencia para TX IOPLL e TX PLL. A frecuencia de reloxo é a mesma que a frecuencia de reloxo TMDS. |
vid_clk_out | Saída | 1 | Saída do reloxo de vídeo |
ls_clk_out | Saída | 1 | Saída de reloxo de velocidade da ligazón |
sys_init | Saída | 1 | Inicialización do sistema para restablecer o sistema ao acender |
restablecer_xcvr | Entrada | 1 | Restablecer ao transceptor TX |
restablecer_pll | Entrada | 1 | Restablecer a IOPLL e TX PLL |
reset_pll_reconfig | Saída | 1 | Restablecer a reconfiguración de PLL |
Transceptor TX e sinais IOPLL | |||
tx_datos_serial | Saída | 4 | Datos en serie HDMI do TX Native PHY |
gxb_tx_listo | Saída | 1 | Indica que TX Native PHY está listo |
gxb_tx_cal_busy_out | Saída | 4 | Sinal de ocupado de calibración nativa de TX PHY ao árbitro do transceptor |
gxb_tx_cal_busy_in | Entrada | 4 | Sinal de ocupado de calibración do árbitro do transceptor ao PHY nativo de TX |
Transceptor TX e sinais IOPLL | |||
iopll_bloqueado | Saída | 1 | Indica que IOPLL está bloqueado |
txpll_bloqueado | Saída | 1 | Indica que TX PLL está bloqueado |
gxb_reconfig_write | Entrada | 4 | Reconfiguración do transceptor Interface de mapeo de memoria de Avalon desde o TX Native PHY ata o árbitro do transceptor |
gxb_reconfig_read | Entrada | 4 | |
enderezo_gxb_reconfig | Entrada | 40 | |
gxb_reconfig_writedata | Entrada | 128 | |
gxb_reconfig_readdata | Saída | 128 | |
gxb_reconfig_waitrequest | Saída | 4 |
Sinais de reconfiguración TX IOPLL e TX PLL | |||
pll_reconfig_write/tx_pll_reconfig_write | Entrada | 1 | TX IOPLL/TX PLL reconfiguración Interfaces mapeadas en memoria de Avalon |
pll_reconfig_read/ tx_pll_reconfig_read | Entrada | 1 | |
pll_reconfig_address/ tx_pll_reconfig_address | Entrada | 10 | |
pll_reconfig_writedata/tx_pll_reconfig_writedata | Entrada | 32 | |
pll_reconfig_readdata/ tx_pll_reconfig_readdata | Saída | 32 | |
pll_reconfig_waitrequest/ tx_pll_reconfig_waitrequest | Saída | 1 | |
os | Entrada | 2 | Oversampfactor ling: • 0: sen excesosampling • 1: 3 veces máisampling • 2: 4 veces máisampling • 3: 5 veces máisampling |
medida | Entrada | 24 | Indica a frecuencia de reloxo TMDS da resolución de vídeo de transmisión. |
Sinais de núcleo HDMI TX | |||
ctrl | Entrada | 6*N | Interfaces de control de núcleo HDMI TX Nota: N = Símbolos por reloxo Consulte a sección Interfaces de orixe no HDMI Intel FPGA IP User Guide para obter máis información. |
modo | Entrada | 1 | |
TMDS_Bit_clock_Ratio | Entrada | 1 | SCInterfaces de rexistro DC
Consulte a sección Interfaces de orixe na Guía de usuario de HDMI Intel FPGA IP para obter máis información. |
Scrambler_Activar | Entrada | 1 | |
audio_de | Entrada | 1 | Interfaces de audio núcleo HDMI TX
Consulte o Interfaces de orixe sección no Guía de usuario de HDMI Intel FPGA IP para máis información. |
audio_mute | Entrada | 1 | |
datos_audio | Entrada | 256 | |
continuou… |
Sinais de núcleo HDMI TX | |||
información_audio_ai | Entrada | 49 | |
audio_N | Entrada | 22 | |
audio_CTS | Entrada | 22 | |
metadatos_audio | Entrada | 166 | |
formato_audio | Entrada | 5 | |
i2c_master_write | Entrada | 1 | TX I2C master Interface mapeada de memoria de Avalon para I2C master dentro do núcleo TX. Nota: Estes sinais só están dispoñibles cando acendes o Inclúe I2C parámetro. |
i2c_master_read | Entrada | 1 | |
enderezo_mestre_i2c | Entrada | 4 | |
i2c_master_writedata | Entrada | 32 | |
i2c_master_readdata | Saída | 32 | |
aux_preparado | Saída | 1 | Interfaces auxiliares de núcleo HDMI TX
Consulte a sección Interfaces de orixe na Guía de usuario de HDMI Intel FPGA IP para obter máis información. |
datos_aux | Entrada | 72 | |
aux_sop | Entrada | 1 | |
aux_eop | Entrada | 1 | |
aux_válido | Entrada | 1 | |
gcp | Entrada | 6 | Sinais de banda lateral do núcleo HDMI TX Consulte a sección Interfaces de orixe na Guía de usuario de HDMI Intel FPGA IP para obter máis información. |
info_avi | Entrada | 113 | |
info_vsi | Entrada | 62 | |
datos_vid | Entrada | N*48 | Portos de vídeo do núcleo HDMI TX Nota: N = símbolos por reloxo Consulte a sección Interfaces de orixe na Guía de usuario de HDMI Intel FPGA IP para obter máis información. |
vid_vsync | Entrada | N | |
vid_hsync | Entrada | N | |
vid_de | Entrada | N |
I2C e sinais de detección de conexión en quente | |||
nios_tx_i2c_sda_in (Intel Quartus Prime Pro Edition) Nota: Cando acende o Inclúe I2C parámetro, este sinal colócase no núcleo TX e non será visible neste nivel. |
Saída | 1 | Interfaces mapeadas de memoria I2C Master Avalon |
nios_tx_i2c_scl_in (Intel Quartus Prime Pro Edition) Nota: Cando acende o Inclúe I2C parámetro, este sinal colócase no núcleo TX e non será visible neste nivel. |
Saída | 1 | |
nios_tx_i2c_sda_oe (Intel Quartus Prime Pro Edition) Nota: Cando acende o Inclúe I2C parámetro, este sinal colócase no núcleo TX e non será visible neste nivel. |
Entrada | 1 | |
continuou… |
I2C e sinais de detección de conexión en quente | |||
nios_tx_i2c_scl_oe (Intel Quartus Prime Pro Edition) Nota: Cando acende o Inclúe I2C parámetro, este sinal colócase no núcleo TX e non será visible neste nivel. |
Entrada | 1 | |
nios_ti_i2c_sda_in (Intel Quartus Prime Pro Edition) | Saída | 1 | |
nios_ti_i2c_scl_in (Intel Quartus Prime Pro Edition) | Saída | 1 | |
nios_ti_i2c_sda_oe (Intel Quartus Prime Pro Edition) | Entrada | 1 | |
nios_ti_i2c_scl_oe (Intel Quartus Prime Pro Edition) | Entrada | 1 | |
hdmi_tx_i2c_sda | Inout | 1 | Interfaces HDMI TX DDC e SCDC |
hdmi_tx_i2c_scl | Inout | 1 | |
hdmi_ti_i2c_sda (Intel Quartus Prime Pro Edition) | Inout | 1 | Interface I2C para o control Bitec Daughter Card Revisión 11 TI181 |
hdmi_tx_ti_i2c_sda (Intel Quartus Prime Standard Edition) | Inout | 1 | |
hdmi_ti_i2c_scl (Intel Quartus Prime Pro Edition) | Inout | 1 | |
hdmi_tx_ti_i2c_scl (Intel Quartus Prime Standard Edition) | Inout | 1 | |
tx_i2c_avalon_waitrequest | Saída | 1 | Interfaces mapeadas en memoria de Avalon do mestre I2C |
tx_i2c_avalon_address (Intel Quartus Prime Standard Edition) | Entrada | 3 | |
tx_i2c_avalon_writedata (Intel Quartus Prime Standard Edition) | Entrada | 8 | |
tx_i2c_avalon_readdata (Intel Quartus Prime Standard Edition) | Saída | 8 | |
tx_i2c_avalon_chipselect (Intel Quartus Prime Standard Edition) | Entrada | 1 | |
tx_i2c_avalon_write (Intel Quartus Prime Standard Edition) | Entrada | 1 | |
tx_i2c_irq (Intel Quartus Prime Standard Edition) | Saída | 1 | |
tx_ti_i2c_avalon_waitrequest
(Intel Quartus Prime Standard Edition) |
Saída | 1 | |
tx_ti_i2c_avalon_address (Intel Quartus Prime Standard Edition) | Entrada | 3 | |
tx_ti_i2c_avalon_writedata (Intel Quartus Prime Standard Edition) | Entrada | 8 | |
tx_ti_i2c_avalon_readdata (Intel Quartus Prime Standard Edition) | Saída | 8 | |
continuou… |
I2C e sinais de detección de conexión en quente | |||
tx_ti_i2c_avalon_chipselect (Intel Quartus Prime Standard Edition) | Entrada | 1 | |
tx_ti_i2c_avalon_write (Intel Quartus Prime Standard Edition) | Entrada | 1 | |
tx_ti_i2c_irq (Intel Quartus Prime Standard Edition) | Saída | 1 | |
hdmi_tx_hpd_n | Entrada | 1 | Interfaces de detección de conexión en caliente HDMI TX |
tx_hpd_ack | Entrada | 1 | |
tx_hpd_req | Saída | 1 |
Táboa 44. Sinais do árbitro do transceptor
Sinal | Dirección | Anchura | Descrición |
clk | Entrada | 1 | Reconfiguración do reloxo. Este reloxo debe compartir o mesmo reloxo cos bloques de xestión de reconfiguración. |
restablecer | Entrada | 1 | Restablecer o sinal. Este reinicio debe compartir o mesmo reinicio cos bloques de xestión de reconfiguración. |
rx_rcfg_en | Entrada | 1 | Sinal de habilitación da reconfiguración de RX |
tx_rcfg_en | Entrada | 1 | Sinal de habilitación da reconfiguración de TX |
rx_rcfg_ch | Entrada | 2 | Indica que canle se debe reconfigurar no núcleo RX. Este sinal debe permanecer sempre afirmado. |
tx_rcfg_ch | Entrada | 2 | Indica que canle se debe reconfigurar no núcleo TX. Este sinal debe permanecer sempre afirmado. |
rx_reconfig_mgmt_write | Entrada | 1 | Reconfiguración das interfaces Avalon-MM desde a xestión de reconfiguración RX |
rx_reconfig_mgmt_read | Entrada | 1 | |
enderezo_rx_reconfig_mgmt | Entrada | 10 | |
rx_reconfig_mgmt_writedata | Entrada | 32 | |
rx_reconfig_mgmt_readdata | Saída | 32 | |
rx_reconfig_mgmt_waitrequest | Saída | 1 | |
tx_reconfig_mgmt_write | Entrada | 1 | Reconfiguración das interfaces Avalon-MM desde a xestión de reconfiguración de TX |
tx_reconfig_mgmt_read | Entrada | 1 | |
enderezo_tx_reconfig_mgmt | Entrada | 10 | |
tx_reconfig_mgmt_writedata | Entrada | 32 | |
tx_reconfig_mgmt_readdata | Saída | 32 | |
tx_reconfig_mgmt_waitrequest | Saída | 1 | |
reconfig_write | Saída | 1 | Reconfiguración das interfaces Avalon-MM para o transceptor |
reconfig_read | Saída | 1 | |
continuou… |
Sinal | Dirección | Anchura | Descrición |
enderezo_reconfig | Saída | 10 | |
reconfig_writedata | Saída | 32 | |
rx_reconfig_readdata | Entrada | 32 | |
rx_reconfig_waitrequest | Entrada | 1 | |
tx_reconfig_readdata | Entrada | 1 | |
tx_reconfig_waitrequest | Entrada | 1 | |
rx_cal_ocupado | Entrada | 1 | Sinal de estado de calibración do transceptor RX |
tx_cal_ocupado | Entrada | 1 | Sinal de estado de calibración do transceptor TX |
rx_reconfig_cal_busy | Saída | 1 | Sinal de estado de calibración para o control de reinicio PHY do transceptor RX |
tx_reconfig_cal_busy | Saída | 1 | Sinal de estado de calibración do control de reinicio PHY do transceptor TX |
Táboa 45. Sinais de enlace RX-TX
Sinal | Dirección | Anchura | Descrición |
restablecer | Entrada | 1 | Restablece o búfer FIFO de vídeo/audio/auxiliar/bandas laterais. |
hdmi_tx_ls_clk | Entrada | 1 | Reloxo de velocidade do enlace HDMI TX |
hdmi_rx_ls_clk | Entrada | 1 | Reloxo de velocidade do enlace HDMI RX |
hdmi_tx_vid_clk | Entrada | 1 | Reloxo de vídeo HDMI TX |
hdmi_rx_vid_clk | Entrada | 1 | Reloxo de vídeo HDMI RX |
hdmi_rx_bloqueado | Entrada | 3 | Indica o estado de bloqueo de HDMI RX |
hdmi_rx_de | Entrada | N | Interfaces de vídeo HDMI RX Nota: N = símbolos por reloxo |
hdmi_rx_hsync | Entrada | N | |
hdmi_rx_vsync | Entrada | N | |
datos_hdmi_rx | Entrada | N*48 | |
formato_rx_audio | Entrada | 5 | Interfaces de audio HDMI RX |
metadatos_rx_audio | Entrada | 165 | |
rx_audio_info_ai | Entrada | 48 | |
rx_audio_CTS | Entrada | 20 | |
rx_audio_N | Entrada | 20 | |
rx_audio_de | Entrada | 1 | |
datos_rx_audio | Entrada | 256 | |
rx_gcp | Entrada | 6 | Interfaces de banda lateral HDMI RX |
rx_info_avi | Entrada | 112 | |
rx_info_vsi | Entrada | 61 | |
continuou… |
Sinal | Dirección | Anchura | Descrición |
rx_aux_eop | Entrada | 1 | Interfaces auxiliares HDMI RX |
rx_aux_sop | Entrada | 1 | |
rx_aux_valid | Entrada | 1 | |
rx_aux_data | Entrada | 72 | |
hdmi_tx_de | Saída | N | Interfaces de vídeo HDMI TX
Nota: N = símbolos por reloxo |
hdmi_tx_hsync | Saída | N | |
hdmi_tx_vsync | Saída | N | |
hdmi_tx_data | Saída | N*48 | |
tx_audio_format | Saída | 5 | Interfaces de audio HDMI TX |
metadatos_tx_audio | Saída | 165 | |
tx_audio_info_ai | Saída | 48 | |
tx_audio_CTS | Saída | 20 | |
tx_audio_N | Saída | 20 | |
tx_audio_de | Saída | 1 | |
tx_audio_data | Saída | 256 | |
tx_gcp | Saída | 6 | Interfaces de banda lateral HDMI TX |
tx_info_avi | Saída | 112 | |
tx_info_vsi | Saída | 61 | |
tx_aux_eop | Saída | 1 | Interfaces auxiliares HDMI TX |
tx_aux_sop | Saída | 1 | |
tx_aux_valid | Saída | 1 | |
tx_aux_data | Saída | 72 | |
tx_aux_listo | Saída | 1 |
Táboa 46. Sinais do sistema do deseñador de plataformas
Sinal | Dirección | Anchura | Descrición |
cpu_clk (Intel Quartus Prime Standard Edition) | Entrada | 1 | reloxo da CPU |
clock_bridge_0_in_clk_clk (Intel Quartus Prime Pro Edition) | |||
cpu_clk_reset_n (Intel Quartus Prime Standard Edition) | Entrada | 1 | Restablecemento da CPU |
reset_bridge_0_reset_reset_n (Intel Quartus Prime Pro Edition) | |||
tmds_bit_clock_ratio_pio_external_connectio n_export | Entrada | 1 | Relación de reloxo de bits TMDS |
measure_pio_external_connection_export | Entrada | 24 | Frecuencia de reloxo TMDS esperada |
continuou… |
Sinal | Dirección | Anchura | Descrición |
measure_valid_pio_external_connection_export | Entrada | 1 | Indica que a medida PIO é válida |
i2c_master_i2c_serial_sda_in (Intel Quartus Prime Pro Edition) | Entrada | 1 | Interfaces I2C Master |
i2c_master_i2c_serial_scl_in (Intel Quartus Prime Pro Edition) | Entrada | 1 | |
i2c_master_i2c_serial_sda_oe (Intel Quartus Prime Pro Edition) | Saída | 1 | |
i2c_master_i2c_serial_scl_oe (Intel Quartus Prime Pro Edition) | Saída | 1 | |
i2c_master_ti_i2c_serial_sda_in (Intel Quartus Prime Pro Edition) | Entrada | 1 | |
i2c_master_ti_i2c_serial_scl_in (Intel Quartus Prime Pro Edition) | Entrada | 1 | |
i2c_master_ti_i2c_serial_sda_oe (Intel Quartus Prime Pro Edition) | Saída | 1 | |
i2c_master_ti_i2c_serial_scl_oe (Intel Quartus Prime Pro Edition) | Saída | 1 | |
oc_i2c_master_av_slave_translator_avalon_an ti_slave_0_address (Intel Quartus Prime Pro Edition) | Saída | 3 | Interfaces mapeadas de memoria I2C Master Avalon para DDC e SCDC |
oc_i2c_master_av_slave_translator_avalon_an ti_slave_0_write (Intel Quartus Prime Pro Edition) | Saída | 1 | |
oc_i2c_master_av_slave_translator_avalon_an ti_slave_0_readdata (Intel Quartus Prime Pro Edition) | Entrada | 32 | |
oc_i2c_master_av_slave_translator_avalon_an ti_slave_0_writedata (Intel Quartus Prime Pro Edition) | Saída | 32 | |
oc_i2c_master_av_slave_translator_avalon_an ti_slave_0_waitrequest (Intel Quartus Prime Pro Edition) | Entrada | 1 | |
oc_i2c_master_av_slave_translator_avalon_an ti_slave_0_chipselect (Intel Quartus Prime Pro Edition) | Saída | 1 | |
oc_i2c_master_ti_avalon_anti_slave_address (Intel Quartus Prime Standard Edition) | Saída | 3 | Interfaces mapeadas de memoria I2C Master Avalon para a tarxeta filla Bitec revisión 11, control T1181 |
oc_i2c_master_ti_avalon_anti_slave_write (Intel Quartus Prime Standard Edition) | Saída | 1 | |
oc_i2c_master_ti_avalon_anti_slave_readdata (Intel Quartus Prime Standard Edition) | Entrada | 32 | |
oc_i2c_master_ti_avalon_anti_slave_writedat a (Intel Quartus Prime Standard Edition) | Saída | 32 | |
oc_i2c_master_ti_avalon_anti_slave_waitrequ est (Intel Quartus Prime Standard Edition) | Entrada | 1 | |
oc_i2c_master_ti_avalon_anti_slave_chipsele ct (Intel Quartus Prime Standard Edition) | Saída | 1 | |
continuou… |
Sinal | Dirección | Anchura | Descrición |
edid_ram_access_pio_external_connection_exp ort | Saída | 1 | Interfaces de acceso EDID RAM. Afirma edid_ram_access_pio_ external_connection_ export cando queiras escribir ou ler desde a RAM EDID na parte superior do RX. Conecte o escravo Avalon-MM de acceso EDID RAM en Platform Designer á interface EDID RAM dos módulos RX de nivel superior. |
enderezo_tradutor_edid_ram_slave_translator | Saída | 8 | |
edid_ram_slave_translator_write | Saída | 1 | |
edid_ram_slave_translator_read | Saída | 1 | |
edid_ram_slave_translator_readdata | Entrada | 8 | |
edid_ram_slave_translator_writedata | Saída | 8 | |
edid_ram_slave_translator_waitrequest | Entrada | 1 | |
powerup_cal_done_export (Intel Quartus Prime Pro Edition) | Entrada | 1 | RX PMA Reconfiguración Interfaces mapeadas en memoria de Avalon |
rx_pma_cal_busy_export (Intel Quartus Prime Pro Edition) | Entrada | 1 | |
rx_pma_ch_export (Intel Quartus Prime Pro Edition) | Saída | 2 | |
rx_pma_rcfg_mgmt_address (Intel Quartus Prime Pro Edition) | Saída | 12 | |
rx_pma_rcfg_mgmt_write (Intel Quartus Prime Pro Edition) | Saída | 1 | |
rx_pma_rcfg_mgmt_read (Intel Quartus Prime Pro Edition) | Saída | 1 | |
rx_pma_rcfg_mgmt_readdata (Intel Quartus Prime Pro Edition) | Entrada | 32 | |
rx_pma_rcfg_mgmt_writedata (Intel Quartus Prime Pro Edition) | Saída | 32 | |
rx_pma_rcfg_mgmt_waitrequest (Intel Quartus Prime Pro Edition) | Entrada | 1 | |
rx_pma_waitrequest_export (Intel Quartus Prime Pro Edition) | Entrada | 1 | |
rx_rcfg_en_export (Intel Quartus Prime Pro Edition) | Saída | 1 | |
rx_rst_xcvr_export (Intel Quartus Prime Pro Edition) | Saída | 1 | |
tx_pll_rcfg_mgmt_translator_avalon_anti_sla ve_waitrequest | Entrada | 1 | TX PLL Reconfiguración Interfaces mapeadas en memoria de Avalon |
tx_pll_rcfg_mgmt_translator_avalon_anti_sla ve_writedata | Saída | 32 | |
tx_pll_rcfg_mgmt_translator_avalon_anti_sla ve_address | Saída | 10 | |
tx_pll_rcfg_mgmt_translator_avalon_anti_sla ve_write | Saída | 1 | |
tx_pll_rcfg_mgmt_translator_avalon_anti_sla ve_read | Saída | 1 | |
tx_pll_rcfg_mgmt_translator_avalon_anti_sla ve_readdata | Entrada | 32 | |
continuou… |
Sinal | Dirección | Anchura | Descrición |
tx_pll_waitrequest_pio_external_connection_ export | Entrada | 1 | Solicitude de espera de TX PLL |
tx_pma_rcfg_mgmt_translator_avalon_anti_sla ve_address | Saída | 12 | TX PMA Reconfiguración Interfaces mapeadas de memoria Avalon |
tx_pma_rcfg_mgmt_translator_avalon_anti_sla ve_write | Saída | 1 | |
tx_pma_rcfg_mgmt_translator_avalon_anti_sla ve_read | Saída | 1 | |
tx_pma_rcfg_mgmt_translator_avalon_anti_sla ve_readdata | Entrada | 32 | |
tx_pma_rcfg_mgmt_translator_avalon_anti_sla ve_writedata | Saída | 32 | |
tx_pma_rcfg_mgmt_translator_avalon_anti_sla ve_waitrequest | Entrada | 1 | |
tx_pma_waitrequest_pio_external_connection_ export | Entrada | 1 | Solicitude de espera de TX PMA |
tx_pma_cal_busy_pio_external_connection_exp ort | Entrada | 1 | Recalibración TX PMA ocupada |
tx_pma_ch_export | Saída | 2 | Canles TX PMA |
tx_rcfg_en_pio_external_connection_export | Saída | 1 | Habilitar a reconfiguración de TX PMA |
tx_iopll_rcfg_mgmt_translator_avalon_anti_s lave_writedata | Saída | 32 | TX IOPLL Reconfiguración Interfaces mapeadas en memoria de Avalon |
tx_iopll_rcfg_mgmt_translator_avalon_anti_s lave_readdata | Entrada | 32 | |
tx_iopll_rcfg_mgmt_translator_avalon_anti_s lave_waitrequest | Entrada | 1 | |
tx_iopll_rcfg_mgmt_translator_avalon_anti_s lave_address | Saída | 9 | |
tx_iopll_rcfg_mgmt_translator_avalon_anti_s lave_write | Saída | 1 | |
tx_iopll_rcfg_mgmt_translator_avalon_anti_s lave_read | Saída | 1 | |
tx_os_pio_external_connection_export | Saída | 2 | Oversampfactor ling: • 0: sen excesosampling • 1: 3 veces máisampling • 2: 4 veces máisampling • 3: 5 veces máisampling |
tx_rst_pll_pio_external_connection_export | Saída | 1 | Restablecer a IOPLL e TX PLL |
tx_rst_xcvr_pio_external_connection_export | Saída | 1 | Restablecer a PHY nativa de TX |
wd_timer_resetrequest_reset | Saída | 1 | Restablecemento do temporizador do can de vixilancia |
color_depth_pio_external_connection_export | Entrada | 2 | Profundidade de cor |
tx_hpd_ack_pio_external_connection_export | Saída | 1 | Para TX hotplug detecte o apretón de mans |
tx_hpd_req_pio_external_connection_export | Entrada | 1 |
3.8. Deseño de parámetros RTL
Use os parámetros HDMI TX e RX Top RTL para personalizar o deseño, por exemploample.
A maioría dos parámetros de deseño están dispoñibles no Design Example do editor de parámetros IP HDMI Intel FPGA. Aínda podes cambiar o deseño, por exemploample configuras
realizado no editor de parámetros mediante os parámetros RTL.
Táboa 47. Parámetros principais de HDMI RX
Parámetro | Valor | Descrición |
SUPPORT_DEEP_COLOR | • 0: Sen cor profunda • 1: Cor profunda |
Determina se o núcleo pode codificar formatos de cores profundas. |
SUPPORT_AUXILIARY | • 0: Sen AUX • 1: AUX |
Determina se se inclúe a codificación da canle auxiliar. |
SYMBOLS_PER_CLOCK | 8 | Admite 8 símbolos por reloxo para dispositivos Intel Arria 10. |
SUPPORT_AUDIO | • 0: sen audio • 1: Audio |
Determina se o núcleo pode codificar audio. |
EDID_RAM_ADDR_WIDTH (Intel Quartus Prime Standard Edition) | 8 (valor predeterminado) | Base de rexistro 2 do tamaño da RAM EDID. |
BITEC_DAUGHTER_CARD_REV | • 0: non se dirixe a ningunha tarxeta filla HDMI de Bitec • 4: admite a revisión 4 da tarxeta filla HDMI Bitec • 6: Orientación á revisión 6 da tarxeta filla HDMI de Bitec •11: Targeting Bitec HDMI tarxeta filla revisión 11 (predeterminado) |
Especifica a revisión da tarxeta filla Bitec HDMI utilizada. Cando cambia a revisión, o deseño pode intercambiar as canles do transceptor e inverter a polaridade segundo os requisitos da tarxeta filla HDMI de Bitec. Se estableces o parámetro BITEC_DAUGHTER_CARD_REV en 0, o deseño non fai ningún cambio nas canles do transceptor e na polaridade. |
POLARITY_INVERSION | • 0: Inverter polaridade • 1: Non inverta a polaridade |
Establece este parámetro en 1 para inverter o valor de cada bit dos datos de entrada. Establecer este parámetro en 1 asígnase 4'b1111 ao porto rx_polinv do transceptor RX. |
Táboa 48. Parámetros principais de HDMI TX
Parámetro | Valor | Descrición |
USE_FPLL | 1 | Admite fPLL como TX PLL só para dispositivos Intel Cyclone® 10 GX. Establece sempre este parámetro en 1. |
SUPPORT_DEEP_COLOR | • 0: Sen cor profunda • 1: Cor profunda |
Determina se o núcleo pode codificar formatos de cores profundas. |
SUPPORT_AUXILIARY | • 0: Sen AUX • 1: AUX |
Determina se se inclúe a codificación da canle auxiliar. |
SYMBOLS_PER_CLOCK | 8 | Admite 8 símbolos por reloxo para dispositivos Intel Arria 10. |
continuou… |
Parámetro | Valor | Descrición |
SUPPORT_AUDIO | • 0: sen audio • 1: Audio |
Determina se o núcleo pode codificar audio. |
BITEC_DAUGHTER_CARD_REV | • 0: non se dirixe a ningunha tarxeta filla HDMI de Bitec • 4: admite a revisión 4 da tarxeta filla HDMI Bitec • 6: Orientación á revisión 6 da tarxeta filla HDMI de Bitec • 11: Targeting Bitec HDMI tarxeta filla revisión 11 (predeterminado) |
Especifica a revisión da tarxeta filla Bitec HDMI utilizada. Cando cambia a revisión, o deseño pode intercambiar as canles do transceptor e inverter a polaridade segundo os requisitos da tarxeta filla HDMI de Bitec. Se estableces o parámetro BITEC_DAUGHTER_CARD_REV en 0, o deseño non fai ningún cambio nas canles do transceptor e na polaridade. |
POLARITY_INVERSION | • 0: Inverter polaridade • 1: Non inverta a polaridade |
Establece este parámetro en 1 para inverter o valor de cada bit dos datos de entrada. Establecer este parámetro en 1 asígnase 4'b1111 ao porto tx_polinv do transceptor TX. |
3.9. Configuración do hardware
O deseño IP HDMI Intel FPGA example é compatible con HDMI 2.0b e realiza unha demostración de bucle para un fluxo de vídeo HDMI estándar.
Para executar a proba de hardware, conecte un dispositivo compatible con HDMI, como unha tarxeta gráfica con interface HDMI, ao bloque Transceiver Native PHY RX e ao receptor HDMI.
entrada.
- O receptor HDMI decodifica o porto nun fluxo de vídeo estándar e envíao ao núcleo de recuperación do reloxo.
- O núcleo HDMI RX decodifica os datos de vídeo, auxiliares e de audio para ser recollidos en bucle en paralelo ao núcleo HDMI TX a través do DCFIFO.
- O porto de orixe HDMI da tarxeta filla FMC transmite a imaxe a un monitor.
Nota:
Se queres usar outra placa de desenvolvemento Intel FPGA, debes cambiar as asignacións do dispositivo e as asignacións de pin. A configuración analóxica do transceptor está probada para o kit de desenvolvemento Intel Arria 10 FPGA e a tarxeta filla Bitec HDMI 2.0. Podes modificar a configuración do teu propio taboleiro.
Táboa 49. Funcións do pulsador incorporado e do LED do usuario
Pulsador/LED | Función |
cpu_resetn | Prema unha vez para restablecer o sistema. |
usuario_pb[0] | Prema unha vez para cambiar o sinal HPD á fonte HDMI estándar. |
usuario_pb[1] | • Manteña premido para indicarlle ao núcleo TX que envíe o sinal codificado DVI. • Solte para enviar o sinal codificado HDMI. |
usuario_pb[2] | • Manteña premido para indicarlle ao núcleo TX que deixe de enviar os InfoFrames desde os sinais de banda lateral. • Solte para continuar o envío dos InfoFrames desde os sinais de banda lateral. |
USER_LED[0] | RX HDMI Estado de bloqueo PLL. • 0 = Desbloqueado • 1 = Pechado |
USER_LED[1] | Estado listo do transceptor RX. |
continuou… |
Pulsador/LED | Función |
• 0 = Non está preparado • 1 = Preparado |
|
USER_LED[2] | Estado do bloqueo do núcleo RX HDMI. • 0 = Polo menos 1 canle desbloqueada • 1 = As 3 canles bloqueadas |
USER_LED[3] | RX oversampestado ling. • 0 = Non sobrasampled (taxa de datos > 1,000 Mbps no dispositivo Intel Arria 10) • 1 = Sobresampled (taxa de datos < 100 Mbps no dispositivo Intel Arria 10) |
USER_LED[4] | Estado de bloqueo PLL TX HDMI. • 0 = Desbloqueado • 1 = Pechado |
USER_LED[5] | Estado listo do transceptor TX. • 0 = Non está preparado • 1 = Preparado |
USER_LED[6] | Estado de bloqueo PLL do transceptor TX. • 0 = Desbloqueado • 1 = Pechado |
USER_LED[7] | TX oversampestado ling. • 0 = Non sobrasampled (taxa de datos > 1,000 Mbps no dispositivo Intel Arria 10) • 1 = Sobresampled (taxa de datos < 1,000 Mbps no dispositivo Intel Arria 10) |
3.10. Banco de probas de simulación
O banco de probas de simulación simula o loopback serie HDMI TX ao núcleo RX.
Nota:
Este banco de probas de simulación non é compatible con deseños co parámetro Incluír I2C activado.
3. Deseño HDMI 2.0 Example (soporte FRL = 0)
683156 | 2022.12.27
Figura 28. Diagrama de bloques do banco de probas de simulación IP HDMI Intel FPGA
Táboa 50. Compoñentes do banco de probas
Compoñente | Descrición |
Vídeo TPG | O xerador de patróns de proba de vídeo (TPG) proporciona o estímulo de vídeo. |
Audio Sampo Gen | O audio sampo xerador proporciona audio sampo estímulo. O xerador xera un patrón de datos de proba de incremento que se transmitirá a través da canle de audio. |
Aux Sampo Gen | O aux sample generator proporciona o s auxiliarampo estímulo. O xerador xera datos fixos para ser transmitidos dende o transmisor. |
Comprobación CRC | Este verificador verifica se a frecuencia de reloxo recuperada do transceptor TX coincide coa taxa de datos desexada. |
Comprobación de datos de audio | A comprobación de datos de audio compara se o patrón de datos de proba de incremento se recibe e se decodifica correctamente. |
Verificación de datos auxiliares | A comprobación de datos auxiliares compara se os datos auxiliares esperados se reciben e se decodifican correctamente no lado do receptor. |
O banco de probas de simulación HDMI realiza as seguintes probas de verificación:
Función HDMI | Verificación |
Datos de vídeo | • O banco de probas implementa a comprobación CRC no vídeo de entrada e saída. • Comproba o valor CRC dos datos transmitidos contra o CRC calculado nos datos de vídeo recibidos. • O banco de probas realiza a comprobación despois de detectar 4 sinais V-SYNC estables do receptor. |
Datos auxiliares | • O aux sampo xerador xera datos fixos para ser transmitidos dende o transmisor. • No lado do receptor, o xerador compara se os datos auxiliares esperados se reciben e se descodifican correctamente. |
Datos de audio | • O audio sampo xerador xera un patrón de datos de proba de incremento que se transmitirá a través da canle de audio. • No lado do receptor, o comprobador de datos de audio comproba e compara se o patrón de datos de proba de incremento se recibe e decodifica correctamente. |
Unha simulación exitosa remata coa seguinte mensaxe:
# SYMBOLS_PER_CLOCK = 2
# VIC = 4
# FRL_RATE = 0
# BPP = 0
# FRECUENCIA_AUDIO (kHz) = 48
# AUDIO_CHANNEL = 8
# Pase de simulación
Táboa 51. HDMI Intel FPGA IP Deseño Example Simuladores compatibles
Simulador | Verilog HDL | VHDL |
ModelSim – Intel FPGA Edition/ ModelSim – Intel FPGA Starter Edition | Si | Si |
VCS/VCS MX | Si | Si |
Riviera-PRO | Si | Si |
Xcelium Paralelo | Si | Non |
3.11. Actualizando o teu deseño
Táboa 52. Deseño HDMI Example Compatibilidade coa versión de software anterior Intel Quartus Prime Pro Edition
Deseño Example Variante | Capacidade de actualizar a Intel Quartus Prime Pro Edition 20.3 |
Deseño HDMI 2.0 Example (soporte FRL = 0) | Non |
Para calquera deseño non compatible examples, cómpre facer o seguinte:
- Xerar un novo deseño por exemploample na versión actual do software Intel Quartus Prime Pro Edition usando as mesmas configuracións do seu deseño existente.
- Compare todo o deseño example directorio co deseño examplieiro xerado mediante a versión anterior do software Intel Quartus Prime Pro Edition. Port sobre os cambios atopados.
Deseño HDCP sobre HDMI 2.0/2.1 Example
O deseño de hardware HDCP sobre HDMI example axúdache a avaliar a funcionalidade da función HDCP e permítelle utilizar a función nos teus deseños de Intel Arria 10.
Nota:
A función HDCP non está incluída no software Intel Quartus Prime Pro Edition. Para acceder á función HDCP, póñase en contacto con Intel en https://www.intel.com/content/www/us/en/broadcast/products/programmable/applications/connectivity-solutions.html.
4.1. Protección de contido dixital de alto ancho de banda (HDCP)
A protección de contido dixital de alto ancho de banda (HDCP) é unha forma de protección de dereitos dixitais para crear unha conexión segura entre a fonte e a pantalla.
Intel creou a tecnoloxía orixinal, que ten a licenza do grupo Digital Content Protection LLC. HDCP é un método de protección contra copia no que o fluxo de audio/vídeo está cifrado entre o transmisor e o receptor, protexéndoo contra a copia ilegal.
As funcións HDCP adhírense á especificación HDCP versión 1.4 e á especificación HDCP versión 2.3.
As IP HDCP 1.4 e HDCP 2.3 realizan todos os cálculos dentro da lóxica do núcleo do hardware sen que se poidan acceder a valores confidenciais (como a clave privada e a clave de sesión) desde fóra da IP cifrada.
Táboa 53. Funcións IP HDCP
IP HDCP | Funcións |
HDCP 1.4 IP | • Intercambio de autenticación — Cálculo da chave mestra (Km) — Xeración de An aleatorio — Cálculo da clave de sesión (Ks), M0 e R0. • Autenticación con repetidor — Cálculo e verificación de V e V' • Verificación da integridade do enlace — Cálculo da clave de fotograma (Ki), Mi e Ri. |
continuou… |
Intel Corporation. Todos os dereitos reservados. Intel, o logotipo de Intel e outras marcas de Intel son marcas comerciais de Intel Corporation ou das súas subsidiarias. Intel garante o rendemento dos seus produtos FPGA e semicondutores segundo as especificacións actuais de acordo coa garantía estándar de Intel, pero resérvase o dereito de facer cambios en calquera produto e servizo en calquera momento e sen previo aviso. Intel non asume ningunha responsabilidade ou responsabilidade derivada da aplicación ou uso de calquera información, produto ou servizo descrito aquí, salvo que Intel o acorde expresamente por escrito. Recoméndase aos clientes de Intel que obteñan a versión máis recente das especificacións do dispositivo antes de confiar en calquera información publicada e antes de facer pedidos de produtos ou servizos.
*Outros nomes e marcas poden ser reclamados como propiedade doutros.
ISO
9001:2015
Rexistrado
IP HDCP | Funcións |
• Todos os modos de cifrado, incluídos hdcpBlockCipher, hdcpStreamCipher, hdcpRekeyCipher e hdcpRngCipher • Sinalización de estado de cifrado orixinal (DVI) e sinalización de estado de cifrado mellorada (HDMI) • Xerador de números aleatorios verdadeiros (TRNG) — Implementación dixital completa baseada en hardware e xerador de números aleatorios non deterministas |
|
HDCP 2.3 IP | • Xeración de chave mestra (km), clave de sesión (ks) e nonce (rn, riv). — Conforme á xeración de números aleatorios NIST.SP800-90A • Autenticación e intercambio de claves — Xeración de números aleatorios para rtx e rrx conforme a NIST.SP800-90A xeración de números aleatorios — Verificación da sinatura do certificado do receptor (certrx) mediante a clave pública DCP (kpubdcp) — 3072 bits RSASSA-PKCS#1 v1.5 — Cifrado e descifrado RSAES-OAEP (PKCS#1 v2.1) da chave mestra (km) — Derivación de kd (dkey0, dkey1) usando o modo AES-CTR — Cálculo e verificación de H e H' — Cálculo de Ekh (km) e km (emparejamento) • Autenticación con repetidor — Cálculo e verificación de V e V' — Cálculo e verificación de M e M' • Renovabilidade do sistema (SRM) — Verificación de sinatura SRM mediante kpubdcp — 3072 bits RSASSA-PKCS#1 v1.5 • Intercambio de claves de sesión • Xeración e cálculo de Edkey(ks) e riv. • Derivación de dkey2 mediante o modo AES-CTR • Verificación da localidade — Cálculo e verificación de L e L' - Xeración de nonce (rn) • Xestión do fluxo de datos — Xeración de fluxo de claves baseada no modo AES-CTR • Algoritmos criptográficos asimétricos — RSA cunha lonxitude de módulo de 1024 (kpubrx) e 3072 (kpubdcp) bits — RSA-CRT (Teorema do resto chinés) cunha lonxitude de módulo de 512 bits (kprivrx) e lonxitude de expoñente de 512 bits (kprivrx) • Función criptográfica de baixo nivel — Algoritmos criptográficos simétricos • Modo AES-CTR cunha lonxitude de chave de 128 bits — Algoritmos hash, MGF e HMAC • SHA256 • HMAC-SHA256 • MGF1-SHA256 - Xerador de números aleatorios verdadeiros (TRNG) • Conforme a NIST.SP800-90A • Baseado en hardware, implementación dixital completa e xerador de números aleatorios non deterministas |
4.1.1. Deseño HDCP sobre HDMI Example Arquitectura
A función HDCP protexe os datos xa que os datos se transmiten entre dispositivos conectados a través dun HDMI ou outras interfaces dixitais protexidas por HDCP.
Os sistemas protexidos con HDCP inclúen tres tipos de dispositivos:
4. Deseño HDCP sobre HDMI 2.0/2.1 Example
683156 | 2022.12.27
• Fontes (TX)
• Lavadoiros (RX)
• Repetidores
Este deseño example mostra o sistema HDCP nun dispositivo repetidor onde acepta datos, descifra, despois volve cifrar os datos e, finalmente, retransmite datos. Os repetidores teñen entradas e saídas HDMI. Instancia os búfers FIFO para realizar un paso directo de fluxo de vídeo HDMI entre o sumidoiro e a fonte HDMI. Pode realizar algún procesamento de sinal, como converter vídeos nun formato de maior resolución substituíndo os búfers FIFO polos núcleos IP do Suite de procesamento de imaxes e vídeo (VIP).
Figura 29. Deseño HDCP sobre HDMI Example Diagrama de bloques
As seguintes descricións sobre a arquitectura do deseño example corresponden ao deseño HDCP sobre HDMI, por exemploampdiagrama de bloques le. Cando SUPPORT FRL = 1 ou
SOPORTE XESTIÓN DE CLAVES HDCP = 1, o deseño por exemploampA xerarquía de ficheiros é lixeiramente diferente da Figura 29 na páxina 95, pero as funcións HDCP subxacentes seguen sendo as
mesmo.
- Os HDCP1x e HDCP2x son IP que están dispoñibles a través do editor de parámetros IP HDMI Intel FPGA. Cando configura a IP HDMI no editor de parámetros, pode activar e incluír HDCP1x ou HDCP2x ou ambas as IP como parte do subsistema. Con ambas as IP HDCP habilitadas, a IP HDMI configúrase na topoloxía en cascada onde as IP HDCP2x e HDCP1x están conectadas de costas.
• A interface de saída HDCP do HDMI TX envía datos de audio e vídeo sen cifrar.
• Os datos sen cifrar son cifrados polo bloque HDCP activo e son enviados de novo ao HDMI TX a través da interface HDCP Ingress para a súa transmisión a través da ligazón.
• O subsistema da CPU como controlador mestre de autenticación garante que só un dos IPs HDCP TX estea activo en cada momento e o outro sexa pasivo.
• Do mesmo xeito, o HDCP RX tamén descifra os datos recibidos a través da ligazón desde un HDCP TX externo. - Debes programar as IP HDCP coas claves de produción emitidas pola Protección de contido dixital (DCP). Cargue as seguintes claves:
Táboa 54. Claves de produción emitidas por DCP
HDCP TX / RX Chaves HDCP2x TX 16 bytes: constante global (lc128) RX • 16 bytes (igual que TX): constante global (lc128)
• 320 bytes: clave privada RSA (kprivrx)
• 522 bytes: certificado de clave pública RSA (certrx)HDCP1x TX • 5 bytes: Vector de selección de teclas TX (Aksv)
• 280 bytes: chaves de dispositivos privados de TX (Akeys)RX • 5 bytes: Vector de selección de clave RX (Bksv)
• 280 bytes: chaves do dispositivo privado RX (teclas B)O deseño exampLe implementa as memorias clave como RAM síncrona simple de dobre porto e dobre reloxo. Para un tamaño de chave pequeno como HDCP2x TX, a IP implementa a memoria de chave usando rexistros na lóxica normal.
Nota: Intel non proporciona as claves de produción HDCP co deseño, por exemploample ou IP FPGA de Intel baixo calquera circunstancia. Para usar as IP HDCP ou o deseño, por exemploample, debe converterse en adoptador de HDCP e adquirir as claves de produción directamente da Digital Content Protection LLC (DCP).
Para executar o deseño example, pode editar a memoria clave files en tempo de compilación para incluír as claves de produción ou implementar bloques lóxicos para ler de forma segura as claves de produción desde un dispositivo de almacenamento externo e escribilas nas memorias de chaves no tempo de execución. - Pode rexistrar as funcións criptográficas implementadas no IP HDCP2x con calquera frecuencia de ata 200 MHz. A frecuencia deste reloxo determina a rapidez
A autenticación HDCP2x funciona. Podes optar por compartir o reloxo de 100 MHz usado para o procesador Nios II, pero a latencia de autenticación duplicaríase en comparación co uso dun reloxo de 200 MHz. - Os valores que deben intercambiarse entre o HDCP TX e o HDCP RX son comunicados a través da interface HDMI DDC (interfaz serie I2 C) do HDCP-
interface protexida. O HDCP RX debe presentar un dispositivo lóxico no bus I2C para cada ligazón que admita. O escravo I2C duplícase para o porto HDCP co enderezo do dispositivo 0x74. Dirixe o porto de rexistro HDCP (Avalon-MM) das IP RX HDCP2x e HDCP1x. - O HDMI TX usa o mestre IC para ler o EDID de RX e transferir os datos SCDC necesarios para o funcionamento de HDMI 2.0 a RX. O mesmo mestre I2C que é dirixido polo procesador Nios II tamén se usa para transferir as mensaxes HDCP entre TX e RX. O mestre I2C está integrado no subsistema da CPU.
- O procesador Nios II actúa como mestre no protocolo de autenticación e dirixe os rexistros de control e estado (Avalon-MM) tanto do HDCP2x como do HDCP1x TX
IPs. Os controladores de software implementan a máquina de estado do protocolo de autenticación, incluíndo a verificación de sinatura de certificados, o intercambio de claves mestras, a comprobación de localidades, o intercambio de claves de sesión, o emparejamento, a comprobación de integridade da ligazón (HDCP1x) e a autenticación con repetidores, como a propagación de información de topoloxía e a propagación de información de xestión de fluxos. Os controladores de software non implementan ningunha das funcións criptográficas requiridas polo protocolo de autenticación. Pola contra, o hardware HDCP IP implementa todas as funcións criptográficas para garantir que non se poida acceder a valores confidenciais.
7. Nunha verdadeira demostración de repetidores onde se require a propagación da información de topoloxía ascendente, o procesador Nios II manexa o porto de mensaxes do repetidor (Avalon-MM) das IP RX HDCP2x e HDCP1x. O procesador Nios II borra o bit RX REPEATER a 0 cando detecta que a descarga conectada non é compatible con HDCP ou cando non hai ningunha conexión ascendente. Sen conexión descendente, o sistema RX é agora un receptor de punto final, en lugar de un repetidor. Pola contra, o procesador Nios II establece o bit RX REPEATER en 1 ao detectar que a baixada é compatible con HDCP.
4.2. Fluxo de software do procesador Nios II
O diagrama de fluxo do software Nios II inclúe os controis de autenticación HDCP a través da aplicación HDMI.
Figura 30. Diagrama de fluxo do software do procesador Nios II
- O software Nios II inicializa e restablece o HDMI TX PLL, o transceptor TX PHY, o mestre I2C e o retemporizador TI externo.
- O software Nios II consulta o sinal válido de detección de taxa periódica do circuíto de detección de taxa de RX para determinar se cambiou a resolución de vídeo e se é necesaria a reconfiguración de TX. O software tamén sondea o sinal de detección de conexión en quente de TX para determinar se se produciu un evento de conexión en quente de TX.
- Cando se recibe un sinal válido do circuíto de detección da taxa de RX, o software Nios II le os valores SCDC e a profundidade do reloxo do HDMI RX e recupera a banda de frecuencia do reloxo en función da taxa detectada para determinar se é necesario a reconfiguración de HDMI TX PLL e PHY do transceptor. Se é necesaria a reconfiguración de TX, o software Nios II ordena ao mestre I2C que envíe o valor SCDC a unha RX externa. A continuación, ordena reconfigurar o transceptor HDMI TX PLL e TX
PHY, seguido da recalibración do dispositivo e a secuencia de reinicio. Se a taxa non cambia, non se precisa nin a reconfiguración de TX nin a reautenticación HDCP. - Cando se produce un evento de conexión en quente de TX, o software Nios II ordena ao mestre I2C que envíe o valor SCDC a un RX externo e, a continuación, lea EDID desde RX.
e actualizar a RAM EDID interna. A continuación, o software propaga a información EDID cara arriba. - O software Nios II inicia a actividade HDCP ordenando ao mestre I2C que lea o desplazamento 0x50 desde RX externo para detectar se o downstream é compatible con HDCP, ou
se non:
• Se o valor de HDCP2Version devolto é 1, o descendente é compatible con HDCP2x.
• Se o valor devolto de todas as lecturas de 0x50 son 0, o descendente é compatible con HDCP1x.
• Se o valor devolto de todas as lecturas de 0x50 é 1, o downstream non é compatible con HDCP ou está inactivo.
• Se anteriormente non está habilitado para HDCP ou está inactivo, pero actualmente é compatible con HDCP, o software configura o bit REPEATER do repetidor ascendente (RX) en 1 para indicar que o RX é agora un repetidor.
• Se o fluxo descendente é previamente compatible con HDCP pero actualmente non é capaz de HDCP ou está inactivo, o software configura o bit REPEATER en 0 para indicar que o RX é agora un receptor de punto final. - O software inicia o protocolo de autenticación HDCP2x que inclúe a verificación de sinatura do certificado RX, o intercambio de claves mestras, a verificación de localidades, o intercambio de claves de sesión, o emparejamento e a autenticación con repetidores como a propagación de información de topoloxía.
- Cando está en estado autenticado, o software Nios II ordena ao mestre I2C que sondee o rexistro RxStatus desde RX externo e, se o software detecta que o bit REAUTH_REQ está configurado, inicia a re-autenticación e desactiva o cifrado TX.
- Cando o downstream é un repetidor e o bit READY do rexistro RxStatus está configurado en 1, isto normalmente indica que a topoloxía downstream cambiou. Entón, o software Nios II ordena ao mestre I2C que lea ReceiverID_List desde abaixo e verifique a lista. Se a lista é válida e non se detecta ningún erro de topoloxía, o software pasa ao módulo Xestión de fluxos de contido. En caso contrario, inicia a re-autenticación e desactiva o cifrado TX.
- O software Nios II prepara os valores ReceiverID_List e RxInfo e, a continuación, escribe no porto de mensaxes do repetidor Avalon-MM do repetidor ascendente (RX). A continuación, o RX propaga a lista a unha TX externa (ascendente).
- A autenticación está completa neste momento. O software permite o cifrado TX.
- O software inicia o protocolo de autenticación HDCP1x que inclúe o intercambio de claves e a autenticación con repetidores.
- O software Nios II realiza a comprobación da integridade da ligazón lendo e comparando Ri' e Ri de RX externo (abaixo) e HDCP1x TX respectivamente. Se os valores
non coinciden, isto indica a perda de sincronización e o software inicia a reautenticación e desactiva o cifrado TX. - Se o downstream é un repetidor e o bit READY do rexistro Bcaps está configurado en 1, isto normalmente indica que a topoloxía downstream cambiou. Entón, o software Nios II ordena ao mestre I2C que lea o valor da lista KSV desde abaixo e verifique a lista. Se a lista é válida e non se detecta ningún erro de topoloxía, o software prepara a lista KSV e o valor Bstatus e escribe no porto de mensaxes do repetidor Avalon-MM do repetidor (RX). A continuación, o RX propaga a lista a unha TX externa (ascendente). En caso contrario, inicia a reautenticación e desactiva o cifrado TX.
4.3. Proxecto de deseño
Configurar e executar o deseño HDCP a través de HDMI, por exemploample consta de cinco stages.
- Configura o hardware.
- Xerar o deseño.
- Edite a memoria da chave HDCP files para incluír as súas claves de produción HDCP.
a. Almacene claves de produción HDCP simples na FPGA (soporta a xestión de claves HDCP = 0)
b. Almacene as claves de produción HDCP cifradas na memoria flash externa ou na EEPROM (soporta a xestión de claves HDCP = 1) - Compila o deseño.
- View os resultados.
4.3.1. Configura o hardware
O primeiro stagE da demostración é configurar o hardware.
Cando SUPPORT FRL = 0, siga estes pasos para configurar o hardware para a demostración:
- Conecte a tarxeta filla Bitec HDMI 2.0 FMC (revisión 11) ao kit de desenvolvemento Arria 10 GX no porto B FMC.
- Conecte o kit de desenvolvemento Arria 10 GX ao seu PC mediante un cable USB.
- Conecte un cable HDMI desde o conector HDMI RX da tarxeta filla Bitec HDMI 2.0 FMC a un dispositivo HDMI compatible con HDCP, como unha tarxeta gráfica con saída HDMI.
- Conecte outro cable HDMI desde o conector HDMI TX da tarxeta filla Bitec HDMI 2.0 FMC a un dispositivo HDMI compatible con HDCP, como un televisor con entrada HDMI.
Cando SUPPORT FRL = 1, siga estes pasos para configurar o hardware para demostración:
- Conecte a tarxeta filla Bitec HDMI 2.1 FMC (Revisión 9) ao kit de desenvolvemento Arria 10 GX no porto B FMC.
- Conecte o kit de desenvolvemento Arria 10 GX ao seu PC mediante un cable USB.
- Conecte un cable HDMI 2.1 Categoría 3 desde o conector HDMI RX da tarxeta filla Bitec HDMI 2.1 FMC a unha fonte HDMI 2.1 compatible con HDCP, como o Quantum Data 980 48G Generator.
- Conecte outros cables HDMI 2.1 Categoría 3 desde o conector HDMI TX da tarxeta filla Bitec HDMI 2.1 FMC a unha receptora HDMI 2.1 compatible con HDCP, como
Analizador Quantum Data 980 48G.
4.3.2. Xerar o deseño
Despois de configurar o hardware, cómpre xerar o deseño.
Antes de comezar, asegúrate de instalar a función HDCP no software Intel Quartus Prime Pro Edition.
- Fai clic en Ferramentas ➤ Catálogo IP e selecciona Intel Arria 10 como familia de dispositivos de destino.
Nota: O deseño HDCP example só admite dispositivos Intel Arria 10 e Intel Stratix® 10. - No Catálogo IP, localice e faga dobre clic en HDMI Intel FPGA IP. Aparece a xanela Nova variación IP.
- Especifique un nome de nivel superior para a súa variación de IP personalizada. O editor de parámetros garda a configuración da variación de IP nun file designado .qsys ou .ip.
- Fai clic en Aceptar. Aparece o editor de parámetros.
- Na pestana IP, configure os parámetros desexados tanto para TX como para RX.
- Active o parámetro Soporte HDCP 1.4 ou Soporte HDCP 2.3 para xerar o deseño HDCP, por exemploample.
- Active o parámetro Admite xestión de claves HDCP se quere almacenar a clave de produción HDCP nun formato cifrado na memoria flash externa ou na EEPROM. En caso contrario, desactive o parámetro Admitir xestión de claves HDCP para almacenar a clave de produción HDCP en formato simple na FPGA.
- Sobre o deseño Example, seleccione Arria 10 HDMI RX-TX Retransmit.
- Seleccione Síntese para xerar o deseño de hardware example.
- Para Xerar File Formatear, seleccione Verilog ou VHDL.
- Para Target Development Kit, seleccione Arria 10 GX FPGA Development Kit. Se selecciona o kit de desenvolvemento, o dispositivo de destino (seleccionado no paso 4) cambiará para coincidir co dispositivo do kit de desenvolvemento. Para o kit de desenvolvemento FPGA Arria 10 GX, o dispositivo predeterminado é 10AX115S2F45I1SG.
- Fai clic en Xerar Example Deseño para xerar o proxecto files e o software de programación en formato ELF (Executable and Linking Format). file.
4.3.3. Incluír chaves de produción HDCP
4.3.3.1. Almacene as claves de produción HDCP simples na FPGA (Soporte HDCP Key Xestión = 0)
Despois de xerar o deseño, edite a memoria da chave HDCP files para incluír as súas claves de produción.
Para incluír as claves de produción, siga estes pasos.
- Localice a seguinte memoria clave files no directorio /rtl/hdcp/:
• hdcp2x_tx_kmem.v
• hdcp2x_rx_kmem.v
• hdcp1x_tx_kmem.v
• hdcp1x_rx_kmem.v - Abre o ficheiro hdcp2x_rx_kmem.v file e localice a clave de facsímile predefinida R1 para o certificado público do receptor e a chave privada RX e a constante global como se mostra no ex.ampos abaixo.
Figura 31. Matriz de cables da clave de fax R1 para o certificado público do receptor
Figura 32. Matriz de cables da clave de facsímile R1 para a chave privada RX e a constante global
- Localiza o marcador de posición das claves de produción e substitúeo polas túas propias claves de produción nas súas respectivas matrices de cables en formato big endian.
Figura 33. Matriz de cables de chaves de produción HDCP (marcador de posición)
- Repita o paso 3 para todas as outras memorias clave files. Cando remates de incluír as túas claves de produción en toda a memoria de chaves files, asegúrese de que o parámetro USE_FACSIMILE estea configurado en 0 no deseño, por exemploampo nivel superior file (a10_hdmi2_demo.v)
4.3.3.1.1. Mapeo de chave HDCP desde chave DCP Files
As seguintes seccións describen a asignación das claves de produción HDCP almacenadas na clave DCP files na matriz de cables do kmem HDCP files.
4.3.3.1.2. hdcp1x_tx_kmem.v e hdcp1x_rx_kmem.v files
Para hdcp1x_tx_kmem.v e hdcp1x_rx_kmem.v files
- Estes dous files están compartindo o mesmo formato.
- Para identificar a clave HDCP1 TX DCP correcta file para hdcp1x_tx_kmem.v, asegúrese de que os primeiros 4 bytes do file son "0x01, 0x00, 0x00, 0x00".
- Para identificar a clave HDCP1 RX DCP correcta file para hdcp1x_rx_kmem.v, asegúrese de que os primeiros 4 bytes do file son "0x02, 0x00, 0x00, 0x00".
- As claves da clave DCP files están en formato little-endian. Para usar en kmem files, debes convertelos en big-endian.
Figura 34. Asignación de bytes a partir da clave HDCP1 TX DCP file en hdcp1x_tx_kmem.v
Nota:
O número de byte móstrase no seguinte formato:
- Tamaño da clave en bytes * número de clave + número de byte na fila actual + compensación constante + tamaño da fila en bytes * número de fila.
- 308*n indica que cada conxunto de claves ten 308 bytes.
- 7*y indica que cada fila ten 7 bytes.
Figura 35. Chave HDCP1 TX DCP file enchendo con valores lixo
Figura 36. Arrays de cables de hdcp1x_tx_kmem.v
Example de hdcp1x_tx_kmem.v e como as súas matrices de fíos se asignan ao examparquivo da clave HDCP1 TX DCP file na Figura 35 na páxina 105.
4.3.3.1.3. hdcp2x_rx_kmem.v file
Para hdcp2x_rx_kmem.v file
- Para identificar a clave HDCP2 RX DCP correcta file para hdcp2x_rx_kmem.v, asegúrese de que os primeiros 4 bytes do file son "0x00, 0x00, 0x00, 0x02".
- As claves da clave DCP files están en formato little-endian.
Figura 37. Asignación de bytes a partir da clave HDCP2 RX DCP file en hdcp2x_rx_kmem.v
A seguinte figura mostra a asignación de bytes exacta da clave HDCP2 RX DCP file en hdcp2x_rx_kmem.v.
Nota:
O número de byte móstrase no seguinte formato:
- Tamaño da clave en bytes * número de clave + número de byte na fila actual + compensación constante + tamaño da fila en bytes * número de fila.
- 862*n indica que cada conxunto de claves ten 862 bytes.
- 16*y indica que cada fila ten 16 bytes. Hai unha excepción en cert_rx_prod onde a FILA 32 só ten 10 bytes.
Figura 38. Chave HDCP2 RX DCP file enchendo con valores lixo
Figura 39. Arrays de cables de hdcp2x_rx_kmem.v
Esta figura mostra o mapa de matrices de cables para hdcp2x_rx_kmem.v (cert_rx_prod, kprivrx_qinv_prod e lc128_prod) para o examparquivo da clave HDCP2 RX DCP file in
Figura 38 na páxina 108.
4.3.3.1.4. hdcp2x_tx_kmem.v file
Para hdcp2x_tx_kmem.v file:
- Para identificar a clave HDCP2 TX DCP correcta file para hdcp2x_tx_kmem.v, asegúrese de que os primeiros 4 bytes do file son "0x00, 0x00, 0x00, 0x01".
- As claves da clave DCP files están en formato little-endian.
- Alternativamente, pode aplicar o lc128_prod de hdcp2x_rx_kmem.v directamente en hdcp2x_tx_kmem.v. As claves comparten os mesmos valores.
Figura 40. Matriz de cables de hdcp2x_tx_kmem.v
Esta figura mostra a asignación de bytes exacta da clave HDCP2 TX DCP file en hdcp2x_tx_kmem.v.
4.3.3.2. Almacene as claves de produción HDCP cifradas na memoria flash externa ou EEPROM (soporta xestión de claves HDCP = 1)
Figura 41. Over Level Overview de Xestión de chaves HDCP
Cando o parámetro Admitir a xestión de claves HDCP está activado, controla o cifrado da clave de produción HDCP mediante a utilidade de software de cifrado de claves (KEYENC) e o deseño do programador de claves que ofrece Intel. Debe proporcionar as claves de produción HDCP e unha clave de protección HDCP de 128 bits. A chave de protección HDCP
cifra a clave de produción HDCP e almacena a chave na memoria flash externa (por exemploample, EEPROM) na tarxeta filla HDMI.
Active o parámetro Admitir a xestión de claves HDCP e a función de descifrado de claves (KEYDEC) estará dispoñible nos núcleos IP HDCP. A mesma protección HDCP
debe usarse no KEYDEC para recuperar as claves de produción HDCP no tempo de execución para os motores de procesamento. KEYENC e KEYDEC admiten Atmel AT24CS32 32-Kbit EEPROM serie, Atmel AT24C16A 16-Kbit EEPROM serie e dispositivos compatibles I2C EEPROM cun tamaño de rom de polo menos 16 Kbit.
Nota:
- Para a tarxeta filla HDMI 2.0 FMC Revisión 11, asegúrese de que a EEPROM da tarxeta filla sexa Atmel AT24CS32. Hai dous tamaños diferentes de EEPROM utilizados na tarxeta filla Bitec HDMI 2.0 FMC Revisión 11.
- Se xa utilizaches KEYENC para cifrar as claves de produción HDCP e activaches Compatibilidade coa xestión de claves HDCP na versión 21.2 ou anterior, cómpre volver cifrar as claves de produción HDCP mediante a utilidade de software KEYENC e rexenerar as IP HDCP desde a versión 21.3.
en diante.
4.3.3.2.1. Intel KEYENC
KEYENC é unha utilidade de software de liña de comandos que Intel usa para cifrar as claves de produción HDCP cunha clave de protección HDCP de 128 bits que proporcionas. KEYENC emite claves de produción HDCP cifradas en hexadecimal ou bin ou encabezado file formato. KEYENC tamén xera mif file que contén a clave de protección HDCP de 128 bits proporcionada. KEYDEC
require o mif file.
Requisitos do sistema:
- Máquina x86 de 64 bits con sistema operativo Windows 10
- Paquete redistribuible de Visual C++ para Visual Studio 2019 (x64)
Nota:
Debe instalar Microsoft Visual C++ para VS 2019. Pode comprobar se Visual C++ redistribuible está instalado desde Windows ➤ Panel de control ➤ Programas e características. Se Microsoft Visual C++ está instalado, podes ver Visual C++ xxxx
Redistribuíble (x64). En caso contrario, pode descargar e instalar Visual C++
Redistribuíble desde Microsoft websitio. Consulte a información relacionada para a ligazón de descarga.
Táboa 55. Opcións da liña de comandos KEYENC
Opcións da liña de comandos | Argumento/Descrición |
-k | <HDCP protection key file> Texto file contén só a clave de protección HDCP de 128 bits en hexadecimal. Example: f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff |
-hdcp1tx | <HDCP 1.4 TX production keys file> Chaves de produción do transmisor HDCP 1.4 file desde DCP (.bin file) |
-hdcp1rx | <HDCP 1.4 RX production keys file> Chaves de produción do receptor HDCP 1.4 file desde DCP (.bin file) |
-hdcp2tx | <HDCP 2.3 TX production keys file> Chaves de produción do transmisor HDCP 2.3 file desde DCP (.bin file) |
-hdcp2rx | <HDCP 2.3 RX production keys file> Chaves de produción do receptor HDCP 2.3 file desde DCP (.bin file) |
-hdcp1txkeys | Especifique o intervalo de teclas para a entrada seleccionada (.bin) files -hdcp1txkeys|hdcp1rxkeys|hdcp2rxkeys nm onde n = inicio da tecla (1 ou >1) m = final da tecla (n ou >n) ExampLe: Seleccione de 1 a 1000 teclas de cada HDCP 1.4 TX, HDCP 1.4 RX e HCDP 2.3 Chaves de produción RX file. "-hdcp1txkeys 1-1000 -hdcp1rxkeys 1-1000 -hdcp2rxkeys 1-1000" |
-hdcp1rxkeys | |
-hdcp2rxkeys | |
continuou… |
Opcións da liña de comandos | Argumento/Descrición |
Nota: 1. Se non está a usar ningunha chave de produción HDCP file, non necesitará o intervalo de chaves HDCP. Se non está a usar o argumento na liña de comandos, o intervalo de teclas predeterminado é 0. 2. Tamén pode seleccionar un índice diferente das claves para as claves de produción HDCP file. Non obstante, o número de teclas debe coincidir coas opcións seleccionadas. Example: Seleccione 100 teclas diferentes Seleccione as primeiras 100 claves das claves de produción HDCP 1.4 TX file "-hdcp1txkeys 1-100" Seleccione as claves de 300 a 400 para as claves de produción HDCP 1.4 RX file "-hdcp1rxkeys 300-400" Seleccione as claves de 600 a 700 para as claves de produción HDCP 2.3 RX file "-hdcp2rxkeys 600-700" |
|
-o | Saída file formato . O predeterminado é hexadecimal file. Xera claves de produción HDCP cifradas en binario file formato: -o bin Xera claves de produción HDCP cifradas en hexadecimal file formato: -o hex Xera claves de produción HDCP cifradas na cabeceira file formato: -oh |
- chaves de verificación | Imprime o número de teclas dispoñibles na entrada files. ExampLe: |
keyenc.exe -hdcp1tx file> -hdcp1rx <HDCP 1.4 RX production keys file> -hdcp2tx file> -hdcp2rx file> –teclas de verificación |
|
Nota: use o parámetro –check-keys ao final da liña de comandos como se mencionou anteriormente, example. | |
-versión | Imprimir o número de versión de KEYENC |
Pode escoller de forma selectiva as claves de produción HDCP 1.4 e/ou HDCP 2.3 para cifrar. Por example, para usar só as claves de produción HDCP 2.3 RX para cifrar, use só -hdcp2rx
<HDCP 2.3 RX production keys file> -hdcp2rxkeys en parámetros da liña de comandos.
Táboa 56. Pauta de mensaxes de erro comúns de KEYENC
Mensaxe de erro | Pauta |
ERRO: chave de protección HDCP file desaparecido | Falta o parámetro da liña de comandos -k file> |
ERRO: a clave debe conter 32 díxitos hexadecimales (por exemplo, f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff) | Clave de protección HDCP file debe conter só a clave de protección HDCP en 32 díxitos hexadecimais. |
ERRO: especifique o intervalo de claves | Non se especifica o intervalo de claves para as claves de produción HDCP de entrada dadas file. |
ERRO: intervalo de chaves non válido | O intervalo de chaves especificado para -hdcp1txkeys ou -hdcp1rxkeys ou -hdcp2rxkeys non é correcto. |
ERRO: non se pode crearFilenome> | Comprobe que se está a executar o permiso do cartafol keyenc.exe. |
ERRO: a entrada -hdcp1txkeys non é válida | O formato de intervalo de clave de entrada para as claves de produción HDCP 1.4 TX non é válido. O formato correcto é "-hdcp1txkeys nm" onde n >= 1, m >= n |
ERRO: a entrada -hdcp1rxkeys non é válida | O formato de intervalo de clave de entrada para as claves de produción HDCP 1.4 RX non é válido. O formato correcto é "-hdcp1rxkeys nm" onde n >= 1, m >= n |
ERRO: a entrada -hdcp2rxkeys non é válida | O formato de intervalo de clave de entrada para as claves de produción HDCP 2.3 RX non é válido. O formato correcto é "-hdcp2rxkeys nm" onde n >= 1, m >= n |
continuou… |
Mensaxe de erro | Pauta |
ERRO: non válido file <filenome> | Chaves de produción HDCP non válidas file. |
ERRO: file Falta o tipo para a opción -o | Falta o parámetro da liña de comandos para –o . |
ERRO: non válido filenome -filenome> | <filenome> non é válido, use o válido filenome sen caracteres especiais. |
Cifrar unha chave única para unha única EEPROM
Execute a seguinte liña de comandos desde o símbolo do sistema de Windows para cifrar unha única clave de HDCP 1.4 TX, HDCP 1.4 RX, HDCP 2.3 TX e HDCP 2.3 RX con saída file formato de cabeceira file para EEPROM única:
keyenc.exe -k file> -hdcp1tx file> -hdcp1rx file> -hdcp2tx file> -hdcp2rx file> -hdcp1txkeys 1-1 -hdcp1rxkeys 1-1 -hdcp2rxkeys 1-1 -oh
Cifrar N chaves para N EEPROM
Execute a seguinte liña de comandos desde o símbolo do sistema de Windows para cifrar N chaves (a partir da clave 1) de HDCP 1.4 TX, HDCP 1.4 RX, HDCP 2.3 TX e HDCP 2.3 RX con saída file formato hexadecimal file para N EEPROM:
keyenc.exe -k file> -hdcp1tx file> -hdcp1rx file> -hdcp2tx file> -hdcp2rx file> -hdcp1txkeys 1 -hdcp1rxkeys 1- -hdcp2rxkeys 1- -o hex onde N é >= 1 e debería coincidir para todas as opcións.
Información relacionada
Microsoft Visual C++ para Visual Studio 2019
Ofrece o paquete redistribuíble de Microsoft Visual C++ x86 (vc_redist.x86.exe) para descargar. Se a ligazón cambia, Intel recomenda que busque "Visual C++ redistribuible" no buscador de Microsoft.
4.3.3.2.2. Programador clave
Para programar as claves de produción HDCP cifradas na EEPROM, siga estes pasos:
- Copia o deseño do programador clave files dende o seguinte camiño ata o seu directorio de traballo: /hdcp2x/hw_demo/key_programmer/
- Copia a cabeceira do software file (clave_hdcp .h) xerado desde a utilidade de software KEYENC (sección Cifrar clave única para EEPROM única na páxina 113) ao directorio software/key_programmer_src/ e renomealo como hdcp_key.h.
- Executar ./runall.tcl. Este script executa os seguintes comandos:
• Xerar catálogo de IP files
• Xerar o sistema Platform Designer
• Crear un proxecto Intel Quartus Prime
• Crear un espazo de traballo de software e crear o software
• Realizar unha compilación completa - Descarga o obxecto de software File (.sof) á FPGA para programar as claves de produción HDCP cifradas na EEPROM.
Xera o deseño de retransmisión Stratix 10 HDMI RX-TX por exemploample con soporte HDCP 2.3 e soporte HDCP 1.4 parámetros activados e, a continuación, siga o seguinte paso para incluír a clave de protección HDCP.
- Copia o mif file (hdcp_kmem.mif) xerado desde a utilidade de software KEYENC (sección Cifrar clave única para EEPROM única na páxina 113) ao directorio /quartus/hdcp/.
4.3.4. Compilar o deseño
Despois de incluír as súas propias claves de produción HDCP simples na FPGA ou programar as claves de produción HDCP cifradas na EEPROM, agora pode compilar o deseño.
- Inicia o software Intel Quartus Prime Pro Edition e ábreo /quartus/a10_hdmi2_demo.qpf.
- Fai clic en Procesamento ➤ Iniciar compilación.
4.3.5. View os Resultados
Ao remate da demostración, poderás view os resultados no sumidoiro externo HDMI compatible con HDCP.
Para view os resultados da demostración, siga estes pasos:
- Encienda a placa Intel FPGA.
- Cambia o directorio a /quartus/.
- Escriba o seguinte comando no shell de comandos de Nios II para descargar o obxecto de software File (.sof) á FPGA. nios2-configure-sof output_files/ .sof
- Enciende a fonte externa HDMI compatible con HDCP e sumidoiro (se aínda non o fixeches). O receptor externo HDMI mostra a saída da túa fonte externa HDMI.
4.3.5.1. Pulsadores e funcións LED
Usa os botóns e funcións LED do taboleiro para controlar a túa demostración.
Táboa 57. Pulsador e indicadores LED (SUPPORT FRL = 0)
Pulsador/LED | Funcións |
cpu_resetn | Prema unha vez para restablecer o sistema. |
usuario_pb[0] | Prema unha vez para cambiar o sinal HPD á fonte HDMI estándar. |
usuario_pb[1] | • Manteña premido para indicarlle ao núcleo TX que envíe o sinal codificado DVI. • Solte para enviar o sinal codificado HDMI. • Asegúrate de que o vídeo entrante estea nun espazo de cor RGB de 8 bpc. |
usuario_pb[2] | • Manteña premido para indicarlle ao núcleo TX que deixe de enviar os InfoFrames desde os sinais de banda lateral. • Solte para continuar o envío dos InfoFrames desde os sinais de banda lateral. |
dirixido por usuario[0] | RX HDMI Estado de bloqueo PLL. • 0: desbloqueado • 1: bloqueado |
dirixido por usuario[1] | Estado do bloqueo do núcleo RX HDMI • 0: polo menos 1 canle desbloqueada • 1: as 3 canles bloqueadas |
dirixido por usuario[2] | Estado de descifrado IP RX HDCP1x. • 0: inactivo • 1: Activo |
dirixido por usuario[3] | Estado de descifrado IP RX HDCP2x. • 0: inactivo • 1: Activo |
dirixido por usuario[4] | Estado de bloqueo PLL TX HDMI. • 0: desbloqueado • 1: bloqueado |
dirixido por usuario[5] | Estado de bloqueo PLL do transceptor TX. • 0: desbloqueado • 1: bloqueado |
dirixido por usuario[6] | Estado de cifrado IP TX HDCP1x. • 0: inactivo • 1: Activo |
dirixido por usuario[7] | Estado de cifrado IP TX HDCP2x. • 0: inactivo • 1: Activo |
Táboa 58. Pulsador e indicadores LED (SUPPORT FRL = 1)
Pulsador/LED | Funcións |
cpu_resetn | Prema unha vez para restablecer o sistema. |
usuario_dipsw | Interruptor DIP definido polo usuario para cambiar o modo de paso. • OFF (posición predeterminada) = Passthrough O HDMI RX da FPGA obtén o EDID da receptora externa e preséntao á fonte externa á que está conectado. • ON = Pode controlar a taxa máxima FRL de RX desde o terminal Nios II. O comando modifica o RX EDID manipulando o valor máximo da taxa FRL. Consulte Execución do deseño en diferentes tarifas FRL na páxina 33 para obter máis información sobre a configuración das diferentes taxas de FRL. |
continuou… |
Pulsador/LED | Funcións |
usuario_pb[0] | Prema unha vez para cambiar o sinal HPD á fonte HDMI estándar. |
usuario_pb[1] | Reservado. |
usuario_pb[2] | Preme unha vez para ler os rexistros SCDC da pía conectada ao TX da tarxeta filla Bitec HDMI 2.1 FMC. Nota: Para habilitar a lectura, debes establecer DEBUG_MODE en 1 no software. |
user_led_g[0] | Estado de bloqueo PLL do reloxo RX FRL. • 0: desbloqueado • 1: bloqueado |
user_led_g[1] | Estado de bloqueo de vídeo RX HDMI. • 0: desbloqueado • 1: bloqueado |
user_led_g[2] | Estado de descifrado IP RX HDCP1x. • 0: inactivo • 1: Activo |
user_led_g[3] | Estado de descifrado IP RX HDCP2x. • 0: inactivo • 1: Activo |
user_led_g[4] | Estado de bloqueo PLL do reloxo TX FRL. • 0: desbloqueado • 1: bloqueado |
user_led_g[5] | Estado de bloqueo de vídeo TX HDMI. • 0 = Desbloqueado • 1 = Pechado |
user_led_g[6] | Estado de cifrado IP TX HDCP1x. • 0: inactivo • 1: Activo |
user_led_g[7] | Estado de cifrado IP TX HDCP2x. • 0: inactivo • 1: Activo |
4.4. Protección da chave de cifrado integrada no deseño FPGA
Moitos deseños de FPGA implementan o cifrado, e moitas veces hai a necesidade de incorporar claves secretas no fluxo de bits da FPGA. Nas familias de dispositivos máis recentes, como Intel Stratix 10 e Intel Agilex, hai un bloque Secure Device Manager que pode proporcionar e xestionar estas chaves secretas de forma segura. Cando estas funcións non existan, pode protexer o contido do fluxo de bits FPGA, incluídas as claves secretas de usuario incorporadas, con cifrado.
As claves de usuario deben manterse seguras no seu contorno de deseño e, idealmente, engadir ao deseño mediante un proceso seguro automatizado. Os seguintes pasos mostran como pode implementar tal proceso coas ferramentas Intel Quartus Prime.
- Desenvolve e optimiza o HDL en Intel Quartus Prime nun ambiente non seguro.
- Transfire o deseño a un ambiente seguro e implemente un proceso automatizado para actualizar a clave secreta. A memoria no chip incorpora o valor da chave. Cando se actualiza a chave, a memoria inicialización file (.mif) pode cambiar e o fluxo ensamblador "quartus_cdb –update_mif" pode cambiar a clave de protección HDCP sen recompilar de novo. Este paso é moi rápido de executar e conserva o tempo orixinal.
- A continuación, o fluxo de bits Intel Quartus Prime cífrase coa clave FPGA antes de transferir o fluxo de bits cifrado de novo ao ambiente non seguro para a proba final e a súa implantación.
Recoméndase desactivar todos os accesos de depuración que poidan recuperar a chave secreta do FPGA. Pode desactivar completamente as capacidades de depuración desactivando o JTAG porto, ou desactivar e volver selectivamenteview que ningunha función de depuración como o editor de memoria do sistema ou Signal Tap pode recuperar a chave. Consulte AN 556: Uso das funcións de seguranza de deseño en FPGA Intel para obter máis información sobre o uso das funcións de seguranza FPGA, incluíndo pasos específicos sobre como cifrar o fluxo de bits FPGA e configurar opcións de seguranza como desactivar JTAG acceso.
Nota:
Podes considerar o paso adicional de ofuscación ou cifrado con outra clave da clave secreta no almacenamento MIF.
Información relacionada
AN 556: Uso das funcións de seguridade de deseño en Intel FPGA
4.5. Consideracións de seguridade
Ao utilizar a función HDCP, teña en conta as seguintes consideracións de seguranza.
- Ao deseñar un sistema repetidor, debe bloquear o vídeo recibido para que non entre na IP TX nas seguintes condicións:
— Se o vídeo recibido está cifrado con HDCP (é dicir, o estado de cifrado hdcp1_enabled ou hdcp2_enabled desde a IP RX) e o vídeo transmitido non está cifrado con HDCP (é dicir, non se afirma o estado de cifrado hdcp1_enabled ou hdcp2_enabled desde a IP TX).
— Se o vídeo recibido é HDCP TIPO 1 (é dicir, streamid_type da IP RX) e o vídeo transmitido está cifrado HDCP 1.4 (é dicir, o estado de cifrado hdcp1_enabled desde a IP TX) - Debes manter a confidencialidade e a integridade das túas claves de produción HDCP e as claves de cifrado do usuario.
- Intel recomenda encarecidamente que desenvolva calquera proxecto e fonte de deseño de Intel Quartus Prime files que conteñan claves de cifrado nun ambiente informático seguro para protexer as claves.
- Intel recomenda encarecidamente que use as funcións de seguranza do deseño das FPGA para protexer o deseño, incluídas as claves de cifrado incorporadas, de copias non autorizadas, enxeñaría inversa eampering.
Información relacionada
AN 556: Uso das funcións de seguridade de deseño en Intel FPGA
4.6. Directrices de depuración
Esta sección describe o sinal de estado HDCP útil e os parámetros de software que se poden usar para a depuración. Tamén contén preguntas frecuentes (FAQ) sobre a execución do deseño, por exemploample.
4.6.1. Sinais de estado HDCP
Hai varios sinais que son útiles para identificar o estado de traballo dos núcleos IP HDCP. Estes sinais están dispoñibles no deseño exampnivel superior e están ligados aos LED integrados:
Nome do sinal | Función |
hdcp1_enabled_rx | RX HDCP1x Estado de descifrado IP 0: inactivo 1: activo |
hdcp2_enabled_rx | RX HDCP2x Estado de descifrado IP 0: inactivo 1: activo |
hdcp1_enabled_tx | Estado de cifrado IP TX HDCP1x 0: inactivo 1: activo |
hdcp2_enabled_tx | Estado de cifrado IP TX HDCP2x 0: inactivo 1: activo |
Consulte a Táboa 57 na páxina 115 e a Táboa 58 na páxina 115 para ver as súas respectivas colocacións de LED.
O estado activo destes sinais indica que a IP HDCP está autenticada e que recibe/envía fluxo de vídeo cifrado. Para cada dirección, só HDCP1x ou HDCP2x
os sinais de estado de cifrado/descifrado están activos. Por example, se hdcp1_enabled_rx ou hdcp2_enabled_rx está activo, o HDCP no lado RX está habilitado e descifrando o fluxo de vídeo cifrado da fonte de vídeo externa.
4.6.2. Modificación dos parámetros do software HDCP
Para facilitar o proceso de depuración HDCP, pode modificar os parámetros en hdcp.c.
A seguinte táboa resume a lista de parámetros configurables e as súas funcións.
Parámetro | Función |
SUPPORT_HDCP1X | Activa HDCP 1.4 no lado TX |
SUPPORT_HDCP2X | Activa HDCP 2.3 no lado TX |
DEBUG_MODE_HDCP | Activa as mensaxes de depuración para TX HDCP |
REPEATER_MODE | Activar o modo repetidor para o deseño HDCP, por exemploample |
Para modificar os parámetros, cambie os valores polos valores desexados en hdcp.c. Antes de comezar a compilación, faga o seguinte cambio no build_sw_hdcp.sh:
- Localiza a seguinte liña e coméntaa para evitar o software modificado file sendo substituído polo orixinal files da ruta de instalación de Intel Quartus Prime Software.
- Execute "./build_sw_hdcp.sh" para compilar o software actualizado.
- O .elf xerado file pódese incluír no deseño a través de dous métodos:
a. Executar "nios2-download -g file nome>”. Restablece o sistema despois de completar o proceso de descarga para garantir a correcta funcionalidade.
b. Execute “quartus_cdb –-update_mif” para actualizar a inicialización da memoria files. Executar ensamblador para xerar novos .sof file que inclúe o software actualizado.
4.6.3. Preguntas frecuentes (FAQ)
Táboa 59. Síntomas e pautas de fallo
Número | Síntoma de falla | Pauta |
1. | O RX está a recibir vídeo cifrado, pero o TX está a enviar un vídeo estático en cor azul ou negra. | Isto débese a que a autenticación TX non foi exitosa con receptor externo. Un repetidor compatible con HDCP non debe transmitir o vídeo en formato sen cifrar se o vídeo entrante do upstream está cifrado. Para conseguilo, un vídeo estático en cor azul ou negra substitúe o vídeo saínte cando o sinal de estado de cifrado TX HDCP está inactivo mentres o sinal de estado de descifrado RX HDCP está activo. Para as directrices exactas, consulte Consideracións de seguridade na páxina 117. Non obstante, este comportamento pode impedir o proceso de depuración ao activar o deseño HDCP. A continuación móstrase o método para desactivar o bloqueo de vídeo no deseño, por exemploampLe: 1. Localice a seguinte conexión de porto no nivel superior do deseño, por exemploample. Este porto pertence ao módulo hdmi_tx_top. 2. Modifique a conexión do porto na seguinte liña: |
2. | O sinal de estado de cifrado TX HDCP está activo pero a imaxe de neve móstrase no lavabo augas abaixo. | Isto débese a que o sumidoiro posterior non descifra correctamente o vídeo cifrado saínte. Asegúrate de proporcionar a constante global (LC128) á IP TX HDCP. O valor debe ser o valor de produción e correcto. |
3. | O sinal de estado de cifrado TX HDCP é inestable ou sempre inactivo. | Isto débese a que a autenticación TX non foi exitosa coa sumidoiro posterior. Para facilitar o proceso de depuración, pode activar o DEBUG_MODE_HDCP parámetro en hdcp.c. Consulte Modificación dos parámetros do software HDCP na páxina 118 sobre as directrices. Os seguintes 3a-3c poderían ser as posibles causas da autenticación TX sen éxito. |
3a. | O rexistro de depuración do software segue imprimindo esta mensaxe "HDCP 1.4 non é compatible coa versión posterior (Rx)". | A mensaxe indica que a sumidoiro posterior non admite tanto HDCP 2.3 como HDCP 1.4. Asegúrate de que o lavabo posterior admita HDCP 2.3 ou HDCP 1.4. |
3b. | A autenticación TX falla á metade. | Isto débese a que calquera parte da autenticación de TX, como a verificación de sinaturas, a verificación da localidade, etc., pode fallar. Asegúrate de que a rede de abaixo está a usar a clave de produción pero non a clave de facsímil. |
3c. | O rexistro de depuración do software segue imprimindo "Re-autenticación | Esta mensaxe indica que a receptora posterior solicitou a autenticación de novo porque o vídeo recibido non foi descifrado correctamente. Asegúrate de proporcionar a constante global (LC128) á IP TX HDCP. O valor debe ser o valor de produción e o valor é correcto. |
continuou… |
Número | Síntoma de falla | Pauta |
é necesario” despois de completar a autenticación HDCP. | ||
4. | O sinal de estado de descifrado RX HDCP está inactivo aínda que a fonte ascendente habilitou HDCP. | Isto indica que a IP RX HDCP non alcanzou o estado autenticado. Por defecto, o REPEATER_MODE o parámetro está habilitado no deseño example. Se o REPEATER_MODE está activado, asegúrese de que a IP TX HDCP estea autenticada.
Cando o REPEATER_MODE está activado, o RX HDCP IP tenta autenticarse como repetidor se o TX está conectado a un receptor compatible con HDCP. A autenticación detense á metade mentres se espera a que a IP TX HDCP complete a autenticación coa sumidoiro posterior e pase o RECEIVERID_LIST á IP RX HDCP. O tempo de espera segundo se define na especificación HDCP é de 2 segundos. Se a IP HDCP TX non pode completar a autenticación neste período, a fonte ascendente considera a autenticación como un fallo e inicia a reautenticación tal e como se especifica na especificación HDCP. |
Nota: • Refírense a Modificación dos parámetros do software HDCP na páxina 118 para ver o método para desactivar REPEATER_MODE parámetro para propósitos de depuración. Despois de desactivar o REPEATER_MODE parámetro, a IP RX HDCP sempre intenta autenticarse como receptor de punto final. A IP TX HDCP non bloquea o proceso de autenticación. | ||
• Se o REPEATER_MODE o parámetro non está activado, asegúrese de que a clave HDCP proporcionada á IP HDCP sexa o valor de produción e que o valor sexa correcto. | ||
5. | O sinal de estado de descifrado RX HDCP é inestable. | Isto significa que a IP RX HDCP solicitou a reautenticación xusto despois de acadar o estado autenticado. Probablemente isto débese a que o vídeo cifrado entrante non está descifrado correctamente pola IP RX HDCP. Asegúrese de que a constante global (LC128) proporcionada ao núcleo IP RX HDCP é o valor de produción e o valor é correcto. |
HDMI Intel Arria 10 FPGA IP Design Example Arquivos de guía de usuario
Para consultar as versións máis recentes e anteriores desta guía de usuario, consulte HDMI Intel® Arria 10 FPGA IP Design Example Guía de usuario. Se non aparece unha IP ou unha versión de software, aplícase a guía de usuario para a IP ou versión de software anterior.
As versións IP son as mesmas que as versións do software Intel Quartus Prime Design Suite ata a v19.1. Desde a versión 19.2 ou posterior do software Intel Quartus Prime Design Suite, IP
os núcleos teñen un novo esquema de versión IP.
Historial de revisións para HDMI Intel Arria 10 FPGA IP Design Example Guía de usuario
Versión do documento | Versión Intel Quartus Prime | Versión IP | Cambios |
2022.12.27 | 22.4 | 19.7.1 | Engadiuse un novo parámetro para seleccionar a revisión da tarxeta filla HDMI á sección Requisitos de hardware e software do deseño example para HDMI 2.0 (modo non FRL). |
2022.07.29 | 22.2 | 19.7.0 | • Notificación da eliminación do compoñente Cygwin da versión de Windows* de Nios II EDS e do requisito de instalar WSL para usuarios de Windows*. • Versión actualizada da tarxeta filla da Revisión 4 á 9, se é o caso, en todo o documento. |
2021.11.12 | 21.3 | 19.6.1 | • Actualizouse a subsección Almacenar claves de produción HDCP cifradas na memoria flash externa ou na EEPROM (soporte a xestión de claves HDCP = 1) para describir a nova utilidade do software de cifrado de claves (KEYENC). • Elimináronse as seguintes figuras: — Matriz de datos da clave de facsímile R1 para a clave privada de RX — Matrices de datos de claves de produción HDCP (marcador de posición) — Matriz de datos da chave de protección HDCP (clave predefinida) — Chave de protección HDCP inicializada en hdcp2x_tx_kmem.mif — Chave de protección HDCP inicializada en hdcp1x_rx_kmem.mif — Chave de protección HDCP inicializada en hdcp1x_tx_kmem.mif • Moveuse a subsección Asignación de claves HDCP desde a chave DCP Files das Directrices de depuración para almacenar claves de produción HDCP simples na FPGA (soporta a xestión de claves HDCP = 0). |
2021.09.15 | 21.1 | 19.6.0 | Eliminouse a referencia a ncsim |
2021.05.12 | 21.1 | 19.6.0 | • Engadido cando SUPPORT FRL = 1 ou SUPPORT HDCP KEY MANAGEMENT = 1 á descrición da Figura 29 HDCP Over HDMI Design Example Diagrama de bloques. • Engadíronse os pasos na memoria da chave HDCP files en Proxecto de deseño. • Engadido Cando SUPPORT FRL = 0 á sección Configurar o ardware. • Engadiuse o paso para activar o parámetro Xestión de claves HDCP compatible en Xerar o deseño. • Engadiuse unha nova subsección Almacenar claves de produción HDCP cifradas na memoria flash externa ou na EEPROM (Compatible coa xestión de claves HDCP = 1). |
continuou… |
Versión do documento | Versión Intel Quartus Prime | Versión IP | Cambios |
• Cambiou o nome do botón pulsador e os indicadores LED da táboa a pulsador e indicadores LED (SUPPORT FRL = 0). • Engadido botón pulsador de táboa e indicadores LED (SUPPORT FRL = 1). • Engadiuse un novo capítulo Protección da chave de cifrado integrada no deseño FPGA. • Engadiuse un novo capítulo Directrices de depuración e subseccións Sinais de estado HDCP, Modificación do parámetro do software HDCP e Preguntas máis frecuentes. |
|||
2021.04.01 | 21.1 | 19.6.0 | • Requírense compoñentes actualizados da figura para o deseño só RX ou só TX. • Actualización da táboa xerada RTL Files. • Actualizouse a Figura HDMI RX Compoñentes principais. • Eliminouse a sección Proceso de adestramento HDMI RX Top Link. • Actualizados os pasos en Execución do deseño en diferentes tarifas FRL. • Figura actualizada HDMI 2.1 Design Exampo Esquema de temporización. • Actualización dos sinais do esquema de reloxo da táboa. • Actualizouse o diagrama de bloques de Figura HDMI RX-TX para engadir unha conexión do Transceiver Arbiter á parte superior TX. |
2020.09.28 | 20.3 | 19.5.0 | • Eliminouse a nota de que o deseño HDMI 2.1 example no modo FRL só admite dispositivos de grao de velocidade -1 en HDMI Intel FPGA IP Design Example Guía de inicio rápido para dispositivos Intel Arria 10 e HDMI 2.1 Design Example (soporte FRL = 1) seccións. O deseño admite todos os graos de velocidade. • Eliminouse a información ls_clk de todos os deseños de HDMI 2.1, por exemploampseccións relacionadas. O dominio ls_clk xa non se usa no deseño, por exemploample. • Actualizáronse os diagramas de bloques para o deseño HDMI 2.1 example en modo FRL no deseño HDMI 2.1 Example (Compatible con FRL = 1), Creación de compoñentes de deseño de deseños só RX ou só TX e seccións do esquema de cronometraxe. • Actualizados e xerados os directorios files nas seccións Estrutura do directorio. • Elimináronse sinais irrelevantes e engadiu ou editouse a descrición do seguinte deseño HDMI 2.1, por exemploample sinais na sección Sinais de interface: - sys_init — txpll_frl_bloqueado — tx_os — sinais txphy_rcfg* — tx_reconfig_feito — txcore_tbcr — pio_in0_external_connection_export • Engadíronse os seguintes parámetros na sección Parámetros RTL de deseño: — EDID_RAM_ADDR_WIDTH — BITEC_DAUGHTER_CARD_REV - USE FPLL — POLARITY_INVERSION |
continuou… |
Versión do documento | Versión Intel Quartus Prime | Versión IP | Cambios |
• Actualizáronse os diagramas de bloques para o deseño HDMI 2.0 example para o software Intel Quartus Prime Pro Edition en HDMI 2.0 Design Example (Compatible con FRL = 0), Creación de compoñentes de deseño de deseños só RX ou só TX e seccións do esquema de reloj. • Actualizouse o reloxo e restableceu os nomes dos sinal na sección Inserción e filtrado de InfoFrame de rango dinámico e masterización (HDR). • Elimináronse sinais irrelevantes e engadiu ou editouse a descrición do seguinte deseño HDMI 2.0, por exemploample sinais na sección Sinais de interface: — clk_fpga_b3_p — REFCLK_FMCB_P — fmcb_la_tx_p_11 — fmcb_la_rx_n_9e — fr_clck — reset_xcvr_powerup — sinais nios_tx_i2c* - sinais hdmi_ti_i2c* — sinais tx_i2c_avalon* — clock_bridge_0_in_clk_clk — reset_bridge_0_reset_reset_n — sinais i2c_master* — sinais nios_tx_i2c* — measure_valid_pio_external_connectio n_export — sinais oc_i2c_av_slave_translator_avalon_an ti_slave_0* — powerup_cal_done_export — rx_pma_cal_busy_export — rx_pma_ch_export — sinais rx_pma_rcfg_mgmt* • Engadiuse unha nota de que o banco de probas de simulación non é compatible con deseños co Inclúe I2C activou o parámetro e actualizou a mensaxe de simulación na sección Simulation Testbench. • Actualizouse a sección Actualizando o teu deseño. |
|||
2020.04.13 | 20.1 | 19.4.0 | • Engadiuse unha nota de que o deseño HDMI 2.1 example no modo FRL só admite dispositivos de grao de velocidade -1 en HDMI Intel FPGA IP Design Example Guía de inicio rápido para dispositivos Intel Arria 10 e descrición detallada para HDMI 2.1 Design Example (soporte FRL = 1) seccións. • Moveuse o deseño HDCP sobre HDMI Example para dispositivos Intel Arria 10 da sección HDMI Intel FPGA IP User Guide. • Editouse a sección Simulando o deseño para incluír os audiosample xerador, xerador de datos de banda lateral e xerador de datos auxiliar e actualizou a mensaxe de simulación exitosa. • Eliminouse a nota para a que a simulación indicada só está dispoñible Apoio FRL nota de deseños desactivados. A simulación xa está dispoñible para Apoio FRL deseños habilitados tamén. • Actualizouse a descrición da función na Descrición detallada para HDMI 2.1 Design Example (Soporte FRL activado). |
continuou… |
Versión do documento | Versión Intel Quartus Prime | Versión IP | Cambios |
• Editouse o diagrama de bloques nas seccións Diagrama de bloques de deseño de HDMI 2.1 RX-TX, Compoñentes de deseño e Creación de deseños só para RX ou TX para o deseño de HDMI 2.1 ex.ample. Engadíronse novos compoñentes e elimináronse os compoñentes que xa non son aplicables. • Editouse a instrución do script main.c na sección Creación de deseños só RX ou só TX. • Actualizouse as seccións de Estrutura de directorios para engadir novos cartafoles e files para HDMI 2.0 e HDMI 2.1 deseño examples. • Actualizouse a sección de requisitos de hardware e software para o deseño HDMI 2.1, por exemploample. • Actualizouse o diagrama de bloques e as descricións de sinal na sección Inserción e filtrado de InfoFrame de rango dinámico e masterización (HDR) para o deseño HDMI 2.1 ex.ample. • Engadiuse unha nova sección, Execución do deseño en diferentes taxas FRL, para o deseño HDMI 2.1 examples. • Actualizouse o diagrama de bloques e as descricións de sinal na sección Esquema de reloj para o deseño HDMI 2.1, por exemploample. • Engadiuse unha descrición sobre o interruptor DIP do usuario na sección Configuración de hardware para o deseño HDMI 2.1, por exemploample. • Actualizouse a sección de limitacións de deseño para o deseño HDMI 2.1, por exemploample. • Actualizouse a sección Actualizando o teu deseño. • Actualizáronse as seccións Simulation Testbench para o deseño de HDMI 2.0 e HDMI 2.1, por exemploamples. |
|||
2020.01.16 | 19.4 | 19.3.0 | • Actualizouse a HDMI Intel FPGA IP Design Example Guía de inicio rápido para dispositivos Intel Arria 10 sección con información sobre o deseño HDMI 2.1 recén engadidoample con modo FRL. • Engadiuse un novo capítulo, Descrición detallada para HDMI 2.1 Design Example (soporte FRL activado) que contén toda a información relevante sobre o deseño recentemente engadido, por exemploample. • Cambiou o nome de HDMI Intel FPGA IP Design Example Descrición detallada ata Descrición detallada para HDMI 2.0 Design Example para unha mellor claridade. |
2019.10.31 | 18.1 | 18.1 | • Engadido xerado files no cartafol tx_control_src: ti_i2c.c e ti_i2c.h. • Engadido soporte para a revisión 11 da tarxeta filla FMC nas seccións de Requisitos de hardware e software e Compilación e proba do deseño. • Eliminouse a sección Limitación de deseño. A limitación relativa á infracción de tempo nas restricións de sesgo máximo resolveuse na versión 18.1 de HDMI Intel FPGA IP. • Engadiuse un novo parámetro RTL, BITEC_DAUGHTER_CARD_REV, para permitirche seleccionar a revisión da tarxeta filla HDMI de Bitec. |
continuou… |
Versión do documento | Versión Intel Quartus Prime | Versión IP | Cambios |
• Actualizouse a descrición dos sinais fmcb_dp_m2c_p e fmcb_dp_c2m_p para incluír información sobre as revisións 11, 6 e 4 da tarxeta filla FMC. • Engadíronse os seguintes novos sinais para a revisión 11 da tarxeta filla de Bitec: — hdmi_tx_ti_i2c_sda — hdmi_tx_ti_i2c_scl — enderezo oc_i2c_master_ti_avalon_anti_slave_a — oc_i2c_master_ti_avalon_anti_slave_w rite — oc_i2c_master_ti_avalon_anti_slave_r eaddata — oc_i2c_master_ti_avalon_anti_slave_w ritedata — oc_i2c_master_ti_avalon_anti_slave_w aitrequest • Engadiuse unha sección sobre a actualización do teu deseño. |
|||
2017.11.06 | 17.1 | 17.1 | • Cambiou o nome do núcleo HDMI IP a HDMI Intel FPGA IP segundo o cambio de marca de Intel. • Cambiouse o termo Qsys a Platform Designer. • Engadiuse información sobre a función de inserción e filtrado de Dynamic Range e Mastering InfoFrame (HDR). • Actualizouse a estrutura do directorio: — Engadíronse cartafoles de script e software e files. — Actualizado común e hdr files. - Eliminado atx files. - Diferenciado files para Intel Quartus Prime Standard Edition e Intel Quartus Prime Pro Edition. • Actualizouse a sección Xerando o deseño para engadir o dispositivo usado como 10AX115S2F4I1SG. • Editouse a taxa de datos do transceptor para a frecuencia de reloxo TMDS 50-100 MHz a 2550-5000 Mbps. • Actualizouse a información da ligazón RX-TX que pode soltar o botón user_pb[2] para desactivar o filtrado externo. • Actualizouse o diagrama de fluxo do software Nios II que inclúe os controis para o mestre I2C e a fonte HDMI. • Engadiuse información sobre o Deseño Example Parámetros da GUI. • Engadiron os parámetros de deseño HDMI RX e TX Top. • Engadíronse estes sinais de nivel superior HDMI RX e TX: — mgmt_clk - reiniciar — i2c_clk — hdmi_clk_in — Elimináronse estes sinais de nivel superior HDMI RX e TX: • versión • i2c_clk |
continuou… |
Versión do documento | Versión Intel Quartus Prime | Versión IP | Cambios |
• Engadiu unha nota de que a configuración analóxica do transceptor está probada para o kit de desenvolvemento FPGA Intel Arria 10 e a tarxeta filla Bitec HDMI 2.0. Podes modificar a configuración analóxica do teu taboleiro. • Engadiuse unha ligazón para a solución alternativa para evitar a fluctuación das rutas de reloxo en cascada PLL ou non dedicadas para o reloxo de referencia Intel Arria 10 PLL. • Engadiuse unha nota de que non pode usar un pin RX do transceptor como refclk CDR para HDMI RX ou como refclk TX PLL para HDMI TX. • Engadiuse unha nota sobre como engadir a restrición set_max_skew para deseños que usan enlaces TX PMA e PCS. |
|||
2017.05.08 | 17.0 | 17.0 | • Rebautizado como Intel. • Cambiouse o número de peza. • Actualizouse a estrutura do directorio: - Engadido hdr files. — Cambiouse qsys_vip_passthrough.qsys a nios.qsys. — Engadido fileestá designado para Intel Quartus Prime Pro Edition. • Información actualizada de que o bloque RX-TX Link tamén realiza un filtrado externo no marco de información de alto rango dinámico (HDR) a partir dos datos auxiliares de HDMI RX e insire un example HDR Infoframe aos datos auxiliares do HDMI TX a través do multiplexor Avalon ST. • Engadiuse unha nota para a descrición de Transceiver Native PHY de que, para cumprir o requisito de sesgo entre canles de HDMI TX, cómpre configurar a opción de modo de vinculación de canles TX no editor de parámetros de Transceiver Native PHY de Arria 10 en Unión PMA e PCS. • Descrición actualizada para os sinais de medida. • Modificados os oversampfactor ling para diferentes velocidades de datos do transceptor en cada intervalo de frecuencia de reloxo TMDS para admitir o esquema de reloxo directo TX FPLL. • Cambiouse o esquema de reloxo en cascada de TX IOPLL ao esquema directo TX FPLL. • Engadidos sinais de reconfiguración TX PMA. • Editáronse os USER_LED[7] oversampestado ling. 1 indica excesosampled (taxa de datos < 1,000 Mbps no dispositivo Arria 10). • Deseño HDMI actualizado Example Táboa de simuladores admitidos. VHDL non é compatible con NCSim. • Engadiuse unha ligazón á versión arquivada do Arria 10 HDMI IP Core Design Example Guía de usuario. |
2016.10.31 | 16.1 | 16.1 | Lanzamento inicial. |
Intel Corporation. Todos os dereitos reservados. Intel, o logotipo de Intel e outras marcas de Intel son marcas comerciais de Intel Corporation ou das súas subsidiarias. Intel garante o rendemento dos seus produtos FPGA e semicondutores segundo as especificacións actuais de acordo coa garantía estándar de Intel, pero resérvase o dereito de facer cambios en calquera produto e servizo en calquera momento e sen previo aviso. Intel non asume ningunha responsabilidade ou responsabilidade derivada da aplicación ou uso de calquera información, produto ou servizo descrito aquí, salvo que Intel o acorde expresamente por escrito. Recoméndase aos clientes de Intel que obteñan a versión máis recente das especificacións do dispositivo antes de confiar en calquera información publicada e antes de facer pedidos de produtos ou servizos. *Outros nomes e marcas poden ser reclamados como propiedade doutros.
Versión en liña
Enviar comentarios
Código: 683156
Versión: 2022.12.27
Documentos/Recursos
![]() |
Intel HDMI Arria 10 FPGA IP Design Example [pdfGuía do usuario HDMI Arria 10 FPGA IP Design Example, HDMI Arria, 10 FPGA IP Design Example, Deseño Example |