HDMI Arria 10 FPGA Diseño IP Example
Guía del usuarioHDMI Intel® Arria 10 FPGA IP
Ex diseñoampGuía del usuario
Actualizado para Intel®Quartus®
Paquete de diseño principal: 22.4
Versión IP: 19.7.1
HDMI Intel® FPGA IP Diseño Example Guía de inicio rápido para dispositivos Intel® Arria® 10
Los dispositivos HDMI Intel® 10 cuentan con un banco de pruebas de simulación y un diseño de hardware que admite compilación y pruebas de hardware.
Diseño FPGA IP examparchivo para Intel Arria®
El HDMI Intel FPGA IP ofrece el siguiente diseño exampellos:
- Diseño de retransmisión HDMI 2.1 RX-TX con modo de enlace de velocidad fija (FRL) habilitado
- Diseño de retransmisión HDMI 2.0 RX-TX con modo FRL desactivado
- Diseño HDCP sobre HDMI 2.0
Nota: La función HDCP no está incluida en el software Intel® Quartus Prime Pro Edition.
Para acceder a la función HDCP, comuníquese con Intel en https://www.intel.com/content/www/us/en/broadcast/products/programmable/applications/connectivity-solutions.html.
Cuando generas un diseño example, el editor de parmetros crea automticamente el fileEs necesario simular, compilar y probar el diseño en hardware.
Figura 1. Pasos de desarrolloInformación relacionada
Guía del usuario de HDMI Intel FPGA IP
1.1. Generación del diseño
Utilice el editor de parámetros HDMI Intel FPGA IP en el software Intel Quartus Prime para generar el diseño ex.amples. Corporación Intel. Reservados todos los derechos. Intel, el logotipo de Intel y otras marcas de Intel son marcas comerciales de Intel Corporation o sus subsidiarias. Intel garantiza el rendimiento de sus productos FPGA y semiconductores según las especificaciones actuales de acuerdo con la garantía estándar de Intel, pero se reserva el derecho de realizar cambios en cualquier producto y servicio en cualquier momento sin previo aviso. Intel no asume ninguna responsabilidad que surja de la aplicación o el uso de cualquier información, producto o servicio descrito en este documento, excepto que Intel lo acuerde expresamente por escrito. Se recomienda a los clientes de Intel que obtengan la última versión de las especificaciones del dispositivo antes de confiar en cualquier información publicada y antes de realizar pedidos de productos o servicios. *Otros nombres y marcas pueden ser reclamados como propiedad de otros.
Empezando por los Niños® II EDS en la versión 19.2 del software Intel Quartus Prime Pro Edition y la versión 19.1 del software Intel Quartus Prime Standard Edition, Intel eliminó el componente Cygwin en la versión de Windows* de Nios II EDS, reemplazándolo con el subsistema de Windows* para Linux (WSL). Si es usuario de Windows*, necesita instalar WSL antes de generar su diseño ex.ampel.
Figura 2. Generación del flujo de diseño
- Cree un proyecto dirigido a la familia de dispositivos Intel Arria 10 y seleccione el dispositivo deseado.
- En el catálogo de IP, busque y haga doble clic en Protocolos de interfaz ➤ Audio y vídeo ➤ HDMI Intel FPGA IP. Aparece la ventana Nueva variante de IP o Nueva variación de IP.
- Especifique un nombre de nivel superior para su variación de IP personalizada. El editor de parámetros guarda la configuración de la variación de IP en un file llamado .ip o .qsys.
- Haga clic en Aceptar. Aparece el editor de parámetros.
- En la pestaña IP, configure los parámetros deseados tanto para TX como para RX.
- Active el parámetro Support FRL para generar el diseño HDMI 2.1 examparchivo en modo FRL. Apáguelo para generar el diseño HDMI 2.0 example sin FRL.
- En el Diseño ExampEn la pestaña Archivo, seleccione Retransmisión Arria 10 HDMI RX-TX.
- Seleccione Simulación para generar el banco de pruebas y seleccione Síntesis para generar el diseño de hardware example.Debes seleccionar al menos una de estas opciones para generar el diseño example files. Si selecciona ambos, el tiempo de generación es mayor.
- Para generar File Formatee, seleccione Verilog o VHDL.
- Para el kit de desarrollo de Target, seleccione el kit de desarrollo FPGA Intel Arria 10 GX. Si selecciona un kit de desarrollo, el dispositivo de destino (seleccionado en el paso 4) cambia para coincidir con el dispositivo en la placa de destino. Para el kit de desarrollo Intel Arria 10 GX FPGA, el dispositivo predeterminado es 10AX115S2F4I1SG.
- Haga clic en Generar Exampel Diseño.
Información relacionada
¿Cómo instalar el subsistema Windows* para Linux* (WSL) en el sistema operativo Windows*?
1.2. Simulando el diseño
El banco de pruebas HDMI simula un diseño de loopback en serie desde una instancia TX a una instancia RX. Generador de patrones de vídeo interno, audio sampLos módulos generador de archivos, generador de datos de banda lateral y generador de datos auxiliares controlan la instancia HDMI TX y la salida en serie de la instancia TX se conecta a la instancia RX en el banco de pruebas.
Figura 3. Flujo de simulación de diseño
- Vaya a la carpeta de simulación deseada.
- Ejecute el script de simulación para el simulador compatible de su elección. El script compila y ejecuta el banco de pruebas en el simulador.
- Analizar los resultados.
Tabla 1. Pasos para ejecutar la simulación
Simulador | Directorio de trabajo | Instrucciones |
Riviera-PRO* | /simulación/aldec | En la línea de comando, escriba |
vsim -c -do aldec.do | ||
ModeloSim* | /simulación/mentor | En la línea de comando, escriba |
vsim -c -do mentor.do | ||
VCS* | /simulación/synopsys/vcs | En la línea de comando, escriba |
fuente vcs_sim.sh | ||
VCSMX | /simulación/synopsys/ vcsmx | En la línea de comando, escriba |
fuente vcsmx_sim.sh | ||
Xcelio* Paralelo | /simulación/xcelium | En la línea de comando, escriba |
fuente xcelium_sim.sh |
Una simulación exitosa finaliza con el siguiente mensaje:
# SYMBOLS_PER_CLOCK = 2
# VIC = 4
#FRL_RATE = 0
# BPP = 0
# FRECUENCIA_AUDIO (kHz) = 48
#CANAL_AUDIO = 8
# Pase de simulación
1.3. Compilación y prueba del diseño
Para compilar y ejecutar una prueba de demostración en el hardware example diseño, siga estos pasos:
- Asegúrese de hardware exampLa generación del diseño está completa.
- Inicie el software Intel Quartus Prime y abra el .qpf file.
• Diseño HDMI 2.1 examparchivo con soporte FRL habilitado: directorio del proyecto/quartus/a10_hdmi21_frl_demo.qpf
• Diseño HDMI 2.0 exampArchivo con soporte FRL deshabilitado: projectd irectory/quartus/a10_hdmi2_demo.qpf - Haga clic en Procesamiento ➤ Iniciar compilación.
- Después de una compilación exitosa, un .sof file se generará en quartus/output_filedirectorio s.
- Conéctese al puerto FMC integrado B (J2):
• Diseño HDMI 2.1 exampArchivo con soporte FRL habilitado: Bitec HDMI 2.1 FMC Daughter Card Rev 9
Nota: Puede seleccionar la revisión de su tarjeta hija Bitec HDMI. Bajo el diseño ExampEn la pestaña Archivo, configure Revisión de tarjeta secundaria HDMI en Revisión 9, Revisión o sin tarjeta secundaria. El valor predeterminado es Revisión 9.
• Diseño HDMI 2.0 exampArchivo con soporte FRL deshabilitado: Bitec HDMI 2.0 FMC Daughter Card Rev 11 - Conecte TX (P1) de la tarjeta hija Bitec FMC a una fuente de video externa.
- Conecte RX (P2) de la tarjeta secundaria Bitec FMC a un receptor de video externo o analizador de video.
- Asegúrese de que todos los interruptores de la placa de desarrollo estén en la posición predeterminada.
- Configure el dispositivo Intel Arria 10 seleccionado en la placa de desarrollo utilizando el .sof generado file (Herramientas ➤ Programador).
- El analizador debe mostrar el vídeo generado a partir de la fuente.
Información relacionada
Guía del usuario del kit de desarrollo Intel Arria 10 FPGA
1.4. HDMI Intel FPGA IP Diseño ExampParámetros de archivos
Tabla 2.
HDMI Intel FPGA IP Diseño Example Parámetros para dispositivos Intel Arria 10 Estas opciones están disponibles solo para dispositivos Intel Arria 10.
Parámetro | Valor |
Descripción |
Diseño disponible Example | ||
Seleccionar diseño | Retransmisión Arria 10 HDMI RX-TX | Seleccione el diseño examparchivo a generar. |
Ex diseñoample Files |
||
Simulación | Encendido, apagado | Active esta opción para generar los necesarios files para el banco de pruebas de simulación. |
Síntesis | Encendido, apagado | Active esta opción para generar los necesarios files para compilación Intel Quartus Prime y demostración de hardware. |
Formato HDL generado |
||
Generar File Formato | Verilog, VHDL | Seleccione su formato HDL preferido para el diseño generado example filecolocar. Nota: Esta opción solo determina el formato para la IP de nivel superior generada files. Todos los demás files (por ejemplo, example testbenches y nivel superior files para demostración de hardware) están en formato Verilog HDL |
Kit de desarrollo de objetivos |
||
Seleccionar tablero | sin kit de desarrollo, | Seleccione el tablero para el diseño objetivo exampel. |
Kit de desarrollo FPGA Arria 10 GX,
Kit de desarrollo personalizado |
• Sin kit de desarrollo: esta opción excluye todos los aspectos de hardware para el diseño example. El núcleo de IP establece todas las asignaciones de pines a pines virtuales. • Kit de desarrollo Arria 10 GX FPGA: esta opción selecciona automáticamente el dispositivo de destino del proyecto para que coincida con el dispositivo de este kit de desarrollo. Puede cambiar el dispositivo de destino utilizando el Cambiar dispositivo de destino parámetro si la revisión de su placa tiene una variante de dispositivo diferente. El núcleo IP establece todas las asignaciones de pines según el kit de desarrollo. |
|
•Kit de desarrollo personalizado: esta opción permite el diseño exampEl archivo se probará en un kit de desarrollo de terceros con una FPGA Intel. Es posible que tengas que configurar las asignaciones de pines por tu cuenta. |
Dispositivo de destino |
||
Cambiar dispositivo de destino | Encendido, apagado | Active esta opción y seleccione la variante de dispositivo preferida para el kit de desarrollo. |
Diseño HDMI 2.1 Examparchivo (Soporte FRL = 1)
El diseño HDMI 2.1 exampEl archivo en modo FRL muestra un loopback paralelo de instancia HDMI que comprende cuatro canales RX y cuatro canales TX.
Tabla 3. Diseño Ex HDMI 2.1amparchivo para dispositivos Intel Arria 10
Ex diseñoample | Velocidad de datos | Modo de canal |
Tipo de bucle invertido |
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 con el búfer FIFO |
Características
- El diseño crea instancias de buffers FIFO para realizar un paso directo de flujo de video HDMI entre el disipador y la fuente HDMI 2.1.
- El diseño es capaz de cambiar entre el modo FRL y el modo TMDS durante el tiempo de ejecución.
- El diseño utiliza LED de estado para la depuración temprana.tage.
- El diseño viene con instancias HDMI RX y TX.
- El diseño demuestra la inserción y el filtrado de InfoFrame de rango dinámico y masterización (HDR) en el módulo de enlace RX-TX.
- El diseño negocia la tasa de FRL entre el sumidero conectado a TX y la fuente conectada a RX. El diseño pasa a través del EDID desde el disipador externo al RX integrado en la configuración predeterminada. El procesador Nios II negocia el enlace basándose en la capacidad del disipador conectado a TX. También puede alternar el interruptor integrado user_dipsw para controlar manualmente las capacidades TX y RX FRL.
- El diseño incluye varias funciones de depuración.
La instancia RX recibe una fuente de video del generador de video externo y los datos luego pasan por un FIFO de bucle invertido antes de transmitirse a la instancia TX. Es necesario conectar un analizador de vídeo externo, un monitor o un televisor con conexión HDMI al núcleo TX para verificar la funcionalidad.
2.1. Diagrama de bloques del diseño de retransmisión HDMI 2.1 RX-TX
El diseño de retransmisión HDMI RX-TX exampEl archivo muestra un bucle invertido paralelo en el modo de canal simplex para HDMI 2.1 con soporte FRL habilitado.
Figura 4. Diagrama de bloques de retransmisión HDMI 2.1 RX-TX2.2. Creación de diseños solo RX o solo TXns
Para usuarios avanzados, puede utilizar el diseño HDMI 2.1 para crear un diseño solo TX o RX.
Figura 5. Componentes necesarios para el diseño solo RX o solo TXPara utilizar componentes RX o TX únicamente, elimine los bloques irrelevantes del diseño.
Tabla 4. Requisitos de diseño solo RX y solo TX
Requisitos del usuario | Preservar | Eliminar |
Agregar |
Sólo recepción HDMI | RX arriba | • TX arriba • Enlace RX-TX • Subsistema de CPU • Árbitro del transceptor |
– |
HDMI TX solo | •TX arriba •Subsistema de CPU |
• RX superior • Enlace RX-TX •Árbitro del transceptor |
Generador de patrones de video (módulo personalizado o generado desde Video and Image Processing (VIP) Suite) |
Además de los cambios de RTL, también es necesario editar el script main.c.
• Para diseños HDMI TX únicamente, desacople la espera del estado de bloqueo HDMI RX eliminando las siguientes líneas y reemplácelas con
tx_xcvr_reconfig(tx_frl_rate);
rx_hdmi_lock = READ_PIO(PIO_IN0_BASE, PIO_RX_LOCKED_OFFSET,
PIO_RX_LOCKED_WIDTH);
mientras (rx_hdmi_lock == 0) {
if (check_hpd_isr()) { descanso; }
// 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);
// Reconfigurar Tx después de bloquear rx
si (rx_hdmi_lock == 1) {
si (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);
} demás {
tx_xcvr_reconfig(tx_frl_rate);
}}}
• Para diseños HDMI RX únicamente, mantenga solo las siguientes líneas en el script main.c:
REDRIVER_INIT();
hdmi_rx_init();
2.3. Requisitos de hardware y software
Intel utiliza el siguiente hardware y software para probar el diseño exampel.
Hardware
- Kit de desarrollo de FPGA Intel Arria 10 GX
- Fuente HDMI 2.1 (generador Quantum Data 980 48G)
- Disipador HDMI 2.1 (Analizador Quantum Data 980 48G)
- Tarjeta hija 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
- Software Intel Quartus Prime Pro Edition versión 20.1
2.4. Estructura del directorio
Los directorios contienen los generados. files para el diseño HDMI Intel FPGA IP exampel.
Figura 6. Estructura de directorios para Design ExampleTabla 5. RTL generado Files
Carpetas | Files/Subcarpetas |
común | reloj_control.ip |
reloj_crosser.v | |
dcfifo_inst.v | |
edge_detector.sv | |
fifo.ip | |
salida_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_esclavo | 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 | |
por favor | pll_hdmi_reconfig.ip |
pll_frl.ip | |
pll_reconfig_ctrl.v | |
pll_tmds.ip | |
pll_vidclk.ip | |
quartus.ini | |
enlace_rxtx | 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 | |
reconfigurar | mr_rx_iopll_tmds/ |
señor_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 | |
cosed | a10_hdmi2.sdc |
jtag.sdc |
Tabla 6. Simulación generada Files
Consulte la Banco de pruebas de simulación sección para más información
Carpetas | 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 | |
/xcelio_files.tcl | |
hdmi_rx | /hdmi_rx.ip |
/Panasonic.hex | |
hdmi_tx | /hdmi_tx.ip |
Tabla 7. Software generado Files
Carpetas | Files |
tx_control_src Nota: La carpeta tx_control también contiene duplicados de estos 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 | |
C Principal | |
pio_read_write.c | |
pio_read_write.h |
2.5. Componentes de diseño
El diseño HDMI Intel FPGA IP exampEl archivo consta de componentes comunes de nivel superior y componentes superiores HDMI TX y RX.
2.5.1. Componentes de transmisión HDMI
Los componentes superiores de HDMI TX incluyen los componentes de nivel superior del núcleo TX y el IOPLL, el controlador de restablecimiento de PHY del transceptor, el PHY nativo del transceptor, el PLL de TX, la gestión de reconfiguración de TX y los bloques del búfer de salida.
Figura 7. Componentes superiores de HDMI TXTabla 8. Componentes superiores de HDMI TX
Módulo |
Descripción |
Núcleo HDMI TX | El IP recibe datos de vídeo del nivel superior y realiza codificación de datos auxiliares, codificación de datos de audio, codificación de datos de vídeo, codificación, codificación TMDS o paquetización. |
IOPLL | IOPLL (iopll_frl) genera el reloj FRL para el núcleo TX. Este reloj de referencia recibe el reloj de salida TX FPLL. Frecuencia de reloj FRL = Velocidad de datos por carril x 4 / (caracteres FRL por reloj x 18) |
Controlador de reinicio PHY del transceptor | El controlador de reinicio Transceiver PHY garantiza una inicialización confiable de los transceptores TX. La entrada de reinicio de este controlador se activa desde el nivel superior y genera la señal de reinicio analógica y digital correspondiente al bloque PHY nativo del transceptor de acuerdo con la secuencia de reinicio dentro del bloque. La señal de salida tx_ready de este bloque también funciona como una señal de reinicio para el HDMI Intel FPGA IP para indicar que el transceptor está en funcionamiento y listo para recibir datos del núcleo. |
Transceptor PHY nativo | Bloque transceptor duro que recibe los datos paralelos del núcleo HDMI TX y serializa los datos al transmitirlos. Nota: Para cumplir con el requisito de inclinación entre canales HDMI TX, configure la opción de modo de enlace de canal TX en el editor de parámetros PHY nativo del transceptor Intel Arria 10 en Unión PMA y PCS. También debe agregar el requisito de restricción de inclinación máxima (set_max_skew) a la señal de reinicio digital del controlador de reinicio del transceptor (tx_digitalreset) como se recomienda en la Guía del usuario de PHY del transceptor Intel Arria 10. |
PLL TX | El bloque PLL del transmisor proporciona el reloj rápido en serie al bloque PHY nativo del transceptor. Para este diseño HDMI Intel FPGA IP examparchivo, fPLL se utiliza como TX PLL. TX PLL tiene dos relojes de referencia. • El reloj de referencia 0 está conectado al oscilador programable (con frecuencia de reloj TMDS) para el modo TMDS. En este diseño examparchivo, el reloj RX TMDS se utiliza para conectarse al reloj de referencia 0 para el modo TMDS. Intel recomienda utilizar un oscilador programable con frecuencia de reloj TMDS para el reloj de referencia 0. • El reloj de referencia 1 está conectado a un reloj fijo de 100 MHz para el modo FRL. |
Gestión de reconfiguración de TX | •En el modo TMDS, el bloque de gestión de reconfiguración de TX reconfigura el PLL de TX para diferentes frecuencias de reloj de salida según la frecuencia de reloj TMDS del vídeo específico. •En modo FRL, el bloque de gestión de reconfiguración de TX reconfigura el PLL de TX para suministrar el reloj rápido en serie para 3 Gbps, 6 Gbps, 8 Gbps, 10 Gbps y 12 Gbps según el campo FRL_Rate en el registro SCDC 0x31. •El bloque de gestión de reconfiguración de TX cambia el reloj de referencia TX PLL entre el reloj de referencia 0 para el modo TMDS y el reloj de referencia 1 para el modo FRL. |
Búfer de salida | Este búfer actúa como una interfaz para interactuar con la interfaz I2C del DDC HDMI y los componentes del redriver. |
Tabla 9. Velocidad de datos del transceptor y excesosampFactor de ling Cada rango de frecuencia de reloj
Modo | Velocidad de datos | Oversampler 1 (2x oversample) | Oversampler 2 (4x oversample) | Oversample Factor | OversampVelocidad de datos LED (Mbps) |
TDM | 250–1000 | On | On | 8 | 2000–8000 |
TDM | 1000–6000 | On | Apagado | 2 | 2000–12000 |
LFR | 3000 | Apagado | Apagado | 1 | 3000 |
LFR | 6000 | Apagado | Apagado | 1 | 6000 |
LFR | 8000 | Apagado | Apagado | 1 | 8000 |
LFR | 10000 | Apagado | Apagado | 1 | 10000 |
LFR | 12000 | Apagado | Apagado | 1 | 12000 |
Figura 8. Flujo de secuencia de reconfiguración de TX2.5.2. Componentes de recepción HDMI
Los componentes superiores de HDMI RX incluyen los componentes de nivel superior del núcleo RX, esclavo I²C opcional y RAM EDID, IOPLL, controlador de restablecimiento de PHY del transceptor, PHY nativo de RX y bloques de gestión de reconfiguración de RX.
Figura 9. Componentes superiores de HDMI RXTabla 10. Componentes superiores de HDMI RX
Módulo |
Descripción |
Núcleo HDMI RX | El IP recibe los datos en serie del transceptor Native PHY y realiza la alineación de datos, la alineación de canales, la decodificación TMDS, la decodificación de datos auxiliares, la decodificación de datos de video, la decodificación de datos de audio y la decodificación. |
Esclavo I2C | I2C es la interfaz utilizada para el canal de datos de visualización del receptor (DDC) y el canal de datos y estado (SCDC). La fuente HDMI utiliza el DDC para determinar las capacidades y características del disipador mediante la lectura de la estructura de datos de datos de identificación de pantalla extendida mejorada (E-EDID). Las direcciones esclavas I8C de 2 bits para E-EDID son 0xA0 y 0xA1. El LSB indica el tipo de acceso: 1 para lectura y 0 para escritura. Cuando ocurre un evento HPD, el esclavo I2C responde a los datos E-EDID leyendo desde el chip El controlador solo esclavo I2C también admite SCDC para HDMI 2.0 y 2.1. Las direcciones esclavas I9C de 2 bits para SCDC son 0xA8 y 0xA9. Cuando ocurre un evento HPD, el esclavo I2C realiza una transacción de escritura o lectura hacia o desde la interfaz SCDC del núcleo HDMI RX. El proceso de entrenamiento del enlace para el enlace de velocidad fija (FRL) también ocurre a través de I2C. Durante un evento HPD o cuando la fuente escribe una velocidad FRL diferente en el registro de velocidad FRL (SCDC registra 0x31 bit[3:0]), comienza el proceso de entrenamiento del enlace. Nota: Este controlador I2C esclavo solo para SCDC no es necesario si no se utiliza HDMI 2.0 o HDMI 2.1. |
RAM EDID | El diseño almacena la información EDID utilizando la IP de 1 puerto de RAM. Un protocolo de bus serie estándar de dos cables (reloj y datos) (controlador solo esclavo I2C) transfiere la estructura de datos E-EDID compatible con CEA-861-D. Esta RAM EDID almacena la información E-EDID. •Cuando está en modo TMDS, el diseño admite el paso EDID de TX a RX. Durante el paso EDID, cuando el TX está conectado al disipador externo, el procesador Nios II lee el EDID del disipador externo y escribe en la RAM EDID. • Cuando está en modo FRL, el procesador Nios II escribe el EDID preconfigurado para cada velocidad de enlace según el parámetro HDMI_RX_MAX_FRL_RATE en el script global.h. Utilice las siguientes entradas HDMI_RX_MAX_FRL_RATE para la velocidad FRL admitida: • 1: 3G 3 carriles • 2: 6G 3 carriles •3: 6G 4 carriles • 4: 8G 4 carriles •5: 10G 4 carriles (predeterminado) •6: 12G 4 carriles |
IOPLL | El HDMI RX utiliza dos IOPLL. • El primer IOPLL (pll_tmds) genera el reloj de referencia RX CDR. Este IOPLL sólo se utiliza en modo TMDS. El reloj de referencia de este IOPLL recibe el reloj TMDS. El modo TMDS utiliza este IOPLL porque el CDR no puede recibir relojes de referencia por debajo de 50 MHz y la frecuencia del reloj TMDS oscila entre 25 MHz y 340 MHz. Este IOPLL proporciona una frecuencia de reloj que es 5 veces mayor que el reloj de referencia de entrada para el rango de frecuencia entre 25 MHz y 50 MHz y proporciona la misma frecuencia de reloj que el reloj de referencia de entrada para el rango de frecuencia entre 50 MHz y 340 MHz. •El segundo IOPLL (iopll_frl) genera el reloj FRL para el núcleo RX. Este reloj de referencia recibe el reloj recuperado del CDR. Frecuencia de reloj FRL = Velocidad de datos por carril x 4 / (caracteres FRL por reloj x 18) |
Controlador de reinicio PHY del transceptor | El controlador de reinicio Transceiver PHY garantiza una inicialización confiable de los transceptores RX. La entrada de reinicio de este controlador se activa mediante la reconfiguración de RX y genera la señal de reinicio analógica y digital correspondiente al bloque PHY nativo del transceptor de acuerdo con la secuencia de reinicio dentro del bloque. |
PHY nativa de RX | Bloque transceptor duro que recibe los datos en serie de una fuente de video externa. Deserializa los datos en serie a datos paralelos antes de pasarlos al núcleo HDMI RX. Este bloque se ejecuta en PCS mejorado para el modo FRL. RX CDR tiene dos relojes de referencia. • El reloj de referencia 0 está conectado al reloj de salida de IOPLL TMDS (pll_tmds), que se deriva del reloj TMDS. • El reloj de referencia 1 está conectado a un reloj fijo de 100 MHz. En el modo TMDS, RX CDR se reconfigura para seleccionar el reloj de referencia 0, y en modo FRL, RX CDR se reconfigura para seleccionar el reloj de referencia 1. |
Gestión de reconfiguración RX | En el modo TMDS, el bloque de gestión de reconfiguración RX implementa un circuito de detección de velocidad con el PLL HDMI para hacer que el transceptor RX funcione a cualquier velocidad de enlace arbitraria que oscila entre 250 Mbps y 6,000 Mbps. En el modo FRL, el bloque de gestión de reconfiguración de RX reconfigura el transceptor RX para que funcione a 3 Gbps, 6 Gbps, 8 Gbps, 10 Gbps o 12 Gbps dependiendo de la velocidad FRL en el campo de registro SCDC_FRL_RATE (0x31[3:0]). El bloque de gestión de reconfiguración RX conmuta entre PCS/RX estándar para el modo TMDS y PCS mejorado para el modo FRL. Consulte Figura 10 en la página 22. |
Figura 10. Flujo de secuencia de reconfiguración de RX
La figura ilustra el flujo de secuencia de reconfiguración de múltiples velocidades del controlador cuando recibe el flujo de datos de entrada y la frecuencia del reloj de referencia, o cuando el transceptor está desbloqueado.2.5.3. Bloques comunes de nivel superior
Los bloques comunes de nivel superior incluyen el árbitro del transceptor, los componentes del enlace RX-TX y el subsistema de CPU.
Tabla 11. Bloques comunes de nivel superior
Módulo |
Descripción |
Árbitro transceptor | Este bloque funcional genérico evita que los transceptores se recalibren simultáneamente cuando los transceptores RX o TX dentro del mismo canal físico requieren reconfiguración. La recalibración simultánea afecta las aplicaciones donde los transceptores RX y TX dentro del mismo canal están asignados a implementaciones IP independientes. Este árbitro transceptor es una extensión de la resolución recomendada para fusionar TX simple y RX simple en el mismo canal físico. Este árbitro de transceptor también ayuda a fusionar y arbitrar las solicitudes de reconfiguración de RX y TX asignadas en memoria de Avalon® dirigidas a transceptores RX y TX simplex dentro de un canal, ya que solo se puede acceder al puerto de interfaz de reconfiguración de los transceptores de forma secuencial. La conexión de interfaz entre el árbitro del transceptor y los bloques del controlador de reinicio PHY/PHY nativo TX/RX en este diseño es exampEl archivo demuestra un modo genérico que se aplica a cualquier combinación de IP utilizando el árbitro del transceptor. El árbitro del transceptor no es necesario cuando solo se utiliza el transceptor RX o TX en un canal. El árbitro del transceptor identifica al solicitante de una reconfiguración a través de sus interfaces de reconfiguración asignadas en memoria de Avalon y garantiza que el tx_reconfig_cal_busy o rx_reconfig_cal_busy correspondiente esté activado en consecuencia. Para aplicaciones HDMI, solo RX inicia la reconfiguración. Al canalizar la solicitud de reconfiguración asignada en memoria de Avalon a través del árbitro, el árbitro identifica que la solicitud de reconfiguración se origina en el RX, que luego impide que tx_reconfig_cal_busy afirme y permite que rx_reconfig_cal_busy afirme. La activación evita que el transceptor TX se mueva involuntariamente al modo de calibración. Nota: Debido a que HDMI solo requiere la reconfiguración de RX, las señales tx_reconfig_mgmt_* están vinculadas. Además, la interfaz asignada en memoria de Avalon no es necesaria entre el árbitro y el bloque PHY nativo de TX. Los bloques se asignan a la interfaz en el diseño examparchivo para demostrar la conexión del árbitro transceptor genérico al controlador de reinicio PHY/PHY nativo TX/RX |
Enlace RX-TX | • La salida de datos de vídeo y las señales de sincronización del núcleo HDMI RX pasan por un DCFIFO a través de los dominios de reloj de vídeo RX y TX. • El puerto de datos auxiliar del núcleo HDMI TX controla los datos auxiliares que fluyen a través del DCFIFO a través de contrapresión. La contrapresión garantiza que no haya ningún paquete auxiliar incompleto en el puerto de datos auxiliar. • Este bloque también realiza filtrado externo: — Filtra los datos de audio y el paquete de regeneración del reloj de audio del flujo de datos auxiliar antes de transmitir al puerto de datos auxiliar del núcleo HDMI TX. — Filtra el InfoFrame de alto rango dinámico (HDR) de los datos auxiliares HDMI RX e inserta un example HDR InfoFrame a los datos auxiliares del HDMI TX a través del multiplexor de streaming Avalon. |
Subsistema de la CPU | El subsistema de CPU funciona como controladores SCDC y DDC, y como controlador de reconfiguración de origen. • El controlador SCDC de origen contiene el controlador maestro I2C. El controlador maestro I2C transfiere la estructura de datos SCDC desde la fuente FPGA al disipador externo para el funcionamiento HDMI 2.0. por ejemploamparchivo, si el flujo de datos saliente es de 6,000 Mbps, el procesador Nios II ordena al controlador maestro I2C que actualice los bits TMDS_BIT_CLOCK_RATIO y SCRAMBLER_ENABLE del registro de configuración TMDS del sumidero a 1. • El mismo maestro I2C también transfiere la estructura de datos DDC (E-EDID) entre la fuente HDMI y el receptor externo. • La CPU Nios II actúa como controlador de reconfiguración para la fuente HDMI. La CPU depende de la detección de velocidad periódica del módulo de gestión de reconfiguración de RX para determinar si el TX requiere reconfiguración. El traductor esclavo mapeado en memoria de Avalon proporciona la interfaz entre la interfaz maestra mapeada en memoria de Avalon del procesador Nios II y las interfaces esclavas mapeadas en memoria de Avalon del IOPLL y TX Native PHY de la fuente HDMI instanciada externamente. • Realizar entrenamiento de enlace a través de la interfaz maestra I2C con receptor externo |
2.6. Inserción y filtrado de InfoFrames de rango dinámico y masterización (HDR)
El diseño HDMI Intel FPGA IP exampEl archivo incluye una demostración de la inserción de HDR InfoFrame en un sistema loopback RX-TX.
La versión 2.0b de la especificación HDMI permite transmitir Dynamic Range y Mastering InfoFrame a través de una transmisión auxiliar HDMI. En la demostración, el bloque Generador de paquetes auxiliares admite la inserción HDR. Solo necesita formatear el paquete HDR InfoFrame deseado como se especifica en la tabla de lista de señales del módulo y la inserción del HDR InfoFrame ocurre una vez en cada cuadro de video.
En este exampEn la configuración, en los casos en los que la transmisión auxiliar entrante ya incluye HDR InfoFrame, el contenido HDR transmitido se filtra. El filtrado evita que se transmitan InfoFrames HDR conflictivos y garantiza que solo los valores especificados en HDR Sampse utiliza el módulo de datos.
Figura 11. Enlace RX-TX con rango dinámico y dominio de la inserción de InfoFrame
La figura muestra el diagrama de bloques del enlace RX-TX, incluido el rango dinámico y la inserción de Mastering InfoFrame en el flujo auxiliar del núcleo HDMI TX.Tabla 12. Señales del bloque de inserción de datos auxiliares (aux_retransmit)
Señal | Dirección | Ancho |
Descripción |
Reloj y reinicio | |||
Clic | Aporte | 1 | Entrada de reloj. Este reloj debe estar conectado al reloj de vídeo. |
reiniciar | Aporte | 1 | Restablecer entrada. |
Señales de paquetes auxiliares |
|||
tx_aux_data | Producción | 72 | TX Salida de paquetes auxiliar desde el multiplexor. |
tx_aux_valid | Producción | 1 | |
tx_aux_listo | Producción | 1 | |
tx_aux_sop | Producción | 1 | |
tx_aux_eop | Producción | 1 | |
rx_aux_data | Aporte | 72 | RX Datos auxiliares pasados al módulo de filtro de paquetes antes de ingresar al multiplexor. |
rx_aux_valid | Aporte | 1 | |
rx_aux_sop | Aporte | 1 | |
rx_aux_eop | Aporte | 1 |
Señal de control | |||
hdmi_tx_vsync | Aporte | 1 | HDMI TX Vídeo Vsync. Esta señal debe sincronizarse con el dominio del reloj de velocidad del enlace. El núcleo inserta el InfoFrame HDR en el flujo auxiliar en el flanco ascendente de esta señal. |
Tabla 13. Señales del módulo de datos HDR (altera_hdmi_hdr_infoframe)
Señal |
Dirección | Ancho |
Descripción |
hb0 | Producción | 8 | Byte de encabezado 0 del InfoFrame de rango dinámico y masterización: código de tipo InfoFrame. |
hb1 | Producción | 8 | Byte 1 del encabezado del InfoFrame de rango dinámico y masterización: número de versión del InfoFrame. |
hb2 | Producción | 8 | Byte de encabezado 2 del InfoFrame de rango dinámico y masterización: Longitud del InfoFrame. |
pb | Aporte | 224 | Byte de datos del InfoFrame de rango dinámico y masterización. |
Tabla 14. Campos de bits del paquete de bytes de datos de InfoFrame de dominio y rango dinámico
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: Static_Metadata_Descriptor | display_primaries_x[0], LSB |
31:24 | Byte de datos 4: Static_Metadata_Descriptor | display_primaries_x[0], MSB |
39:32 | Byte de datos 5: Static_Metadata_Descriptor | display_primaries_y[0], LSB |
47:40 | Byte de datos 6: Static_Metadata_Descriptor | display_primaries_y[0], MSB |
55:48 | Byte de datos 7: Static_Metadata_Descriptor | display_primaries_x[1], LSB |
63:56 | Byte de datos 8: Static_Metadata_Descriptor | display_primaries_x[1], MSB |
71:64 | Byte de datos 9: Static_Metadata_Descriptor | display_primaries_y[1], LSB |
79:72 | Byte de datos 10: Static_Metadata_Descriptor | display_primaries_y[1], MSB |
87:80 | Byte de datos 11: Static_Metadata_Descriptor | display_primaries_x[2], LSB |
95:88 | Byte de datos 12: Static_Metadata_Descriptor | display_primaries_x[2], MSB |
103:96 | Byte de datos 13: Static_Metadata_Descriptor | display_primaries_y[2], LSB |
111:104 | Byte de datos 14: Static_Metadata_Descriptor | display_primaries_y[2], MSB |
119:112 | Byte de datos 15: Static_Metadata_Descriptor | punto_blanco_x, LSB |
127:120 | Byte de datos 16: Static_Metadata_Descriptor | punto_blanco_x, MSB |
135:128 | Byte de datos 17: Static_Metadata_Descriptor | punto_blanco_y, LSB |
143:136 | Byte de datos 18: Static_Metadata_Descriptor | punto_blanco_y, MSB |
151:144 | Byte de datos 19: Static_Metadata_Descriptor | max_display_mastering_luminance, LSB |
159:152 | Byte de datos 20: Static_Metadata_Descriptor | max_display_mastering_luminance, MSB |
167:160 | Byte de datos 21: Static_Metadata_Descriptor | min_display_mastering_luminance, LSB |
175:168 | Byte de datos 22: Static_Metadata_Descriptor | min_display_mastering_luminance, MSB |
183:176 | Byte de datos 23: Static_Metadata_Descriptor | Nivel de luz de contenido máximo, LSB |
191:184 | Byte de datos 24: Static_Metadata_Descriptor | Nivel de luz de contenido máximo, MSB |
199:192 | Byte de datos 25: Static_Metadata_Descriptor | Nivel de luz máximo promedio del cuadro, LSB |
207:200 | Byte de datos 26: Static_Metadata_Descriptor | Nivel de luz máximo promedio de fotograma, MSB |
215:208 | Reservado | |
223:216 | Reservado |
Deshabilitar la inserción y el filtrado HDR
Desactivar la inserción y el filtro HDR le permite verificar la retransmisión del contenido HDR ya disponible en el flujo auxiliar de origen sin ninguna modificación en el diseño de retransmisión RX-TX ex.ampel.
Para deshabilitar la inserción y el filtrado de HDR InfoFrame:
- Establezca block_ext_hdr_infoframe en 1'b0 en rxtx_link.v file para evitar el filtrado del InfoFrame HDR de la secuencia auxiliar.
- Establezca multiplexer_in0_valid de la instancia avalon_st_multiplexer en altera_hdmi_aux_hdr.v file a 1'b0 para evitar que el Generador de paquetes auxiliares forme e inserte InfoFrame HDR adicional en la secuencia auxiliar de TX.
2.7. Flujo de software de diseño
En el flujo de software principal de diseño, el procesador Nios II configura la configuración del recontrolador TI e inicializa las rutas TX y RX al encenderse.
Figura 12. Flujo de software en el script main.c
El software ejecuta un bucle while para monitorear los cambios de fuente y sumidero, y para reaccionar a los cambios. El software puede activar la reconfiguración de TX, el entrenamiento del enlace de TX y comenzar a transmitir video.
Figura 13. Diagrama de flujo de inicialización de la ruta TX Inicializar ruta TXFigura 14. Diagrama de flujo de inicialización de la ruta RX
Figura 15. Diagrama de flujo de capacitación de enlaces y reconfiguración de TX
Figura 16. Diagrama de flujo del proceso LTS:3 de capacitación de vínculos a una tasa de FRL específica
Figura 17. Diagrama de flujo de transmisión de vídeo HDMI TX
2.8. Ejecución del diseño en diferentes tarifas FRL
Puede ejecutar su diseño en diferentes tasas FRL, distintas a la tasa FRL predeterminada del receptor externo.
Para ejecutar el diseño en diferentes tasas de FRL:
- Cambie el interruptor user_dipsw0 integrado a la posición ON.
- Abra el shell de comandos de Nios II, luego escriba nios2-terminal
- Introduzca los siguientes comandos y presione Entrar para ejecutar.
Dominio |
Descripción |
h | Mostrar el menú de ayuda. |
r0 | Actualice la capacidad FRL máxima de RX a la tasa FRL 0 (solo TMDS). |
r1 | Actualice la capacidad FRL máxima de RX a la velocidad FRL 1 (3 Gbps). |
r2 | Actualice la capacidad FRL máxima de RX a la velocidad FRL 2 (6 Gbps, 3 carriles). |
r3 | Actualice la capacidad FRL máxima de RX a la velocidad FRL 3 (6 Gbps, 4 carriles). |
r4 | Actualice la capacidad FRL máxima de RX a la velocidad FRL 4 (8 Gbps). |
r5 | Actualice la capacidad FRL máxima de RX a la velocidad FRL 5 (10 Gbps). |
r6 | Actualice la capacidad FRL máxima de RX a la velocidad FRL 6 (12 Gbps). |
t1 | TX configura la velocidad del enlace a la velocidad FRL 1 (3 Gbps). |
t2 | TX configura la velocidad del enlace a la velocidad FRL 2 (6 Gbps, 3 carriles). |
t3 | TX configura la velocidad del enlace a la velocidad FRL 3 (6 Gbps, 4 carriles). |
t4 | TX configura la velocidad del enlace a la velocidad FRL 4 (8 Gbps). |
t5 | TX configura la velocidad del enlace a la velocidad FRL 5 (10 Gbps). |
t6 | TX configura la velocidad del enlace a la velocidad FRL 6 (12 Gbps). |
2.9. Esquema de reloj
El esquema de sincronización ilustra los dominios de reloj en el diseño HDMI Intel FPGA IP ex.ampel.
Figura 18. Diseño Ex HDMI 2.1ampel esquema de fichajeTabla 15. Señales del esquema de reloj
Reloj |
Nombre de la señal en diseño |
Descripción |
Reloj de gestión | mgmt_clk | Un reloj de 100 MHz de funcionamiento gratuito para estos componentes: • Interfaces Avalon-MM para reconfiguración — El requisito de rango de frecuencia está entre 100 y 125 MHz. • Controlador de reinicio PHY para secuencia de reinicio del transceptor — El requisito de rango de frecuencia está entre 1 y 500 MHz. • Reconfiguración de IOPLL — La frecuencia máxima de reloj es 100 MHz. • Gestión de reconfiguración RX • Gestión de reconfiguración de TX • UPC • Maestro I2C |
Reloj I2C | i2c_clk | Una entrada de reloj de 100 MHz que sincroniza el esclavo I2C, los buffers de salida, los registros SCDC y el proceso de entrenamiento de enlaces en el núcleo HDMI RX y la RAM EDID. |
Reloj de referencia TX PLL 0 | tx_tmds_clk | Reloj de referencia 0 al TX PLL. La frecuencia del reloj es la misma que la frecuencia del reloj TMDS esperada del canal de reloj HDMI TX TMDS. Este reloj de referencia se utiliza en modo TMDS. Para este diseño HDMI examparchivo, este reloj está conectado al reloj RX TMDS con fines de demostración. En su aplicación, necesita proporcionar un reloj dedicado con frecuencia de reloj TMDS desde un oscilador programable para un mejor rendimiento de fluctuación. |
Nota: No utilice un pin RX del transceptor como reloj de referencia TX PLL. Su diseño no encajará si coloca el conector HDMI TX en un pin RX. | ||
Reloj de referencia TX PLL 1 | txfpll_refclk1/ rxphy_cdr_refclk1 | Reloj de referencia al TX PLL y RX CDR, así como a IOPLL para vid_clk. La frecuencia del reloj es de 100 MHz. |
Reloj serie TX PLL | tx_bonding_clocks | Reloj rápido en serie generado por TX PLL. La frecuencia del reloj se establece en función de la velocidad de datos. |
Salida del transceptor TX | tx_clk | El reloj se recupera del transceptor y la frecuencia varía según la velocidad de datos y los símbolos por reloj. Frecuencia de salida del transceptor TX = Velocidad de datos del transceptor/Ancho del transceptor Para este diseño HDMI exampEn el ejemplo, el reloj del transceptor TX desde el canal 0 sincroniza la entrada central del transceptor TX (tx_coreclkin), el reloj de referencia IOPLL (pll_hdmi) de velocidad de enlace y el reloj de referencia IOPLL de vídeo y FRL (pll_vid_frl). |
Reloj de vídeo | tx_vid_clk/rx_vid_clk | Reloj de vídeo al núcleo TX y RX. El reloj funciona a una frecuencia fija de 225 MHz. |
TX/RX FRL Reloj | tx_frl_clk/rx_frl_clk | Reloj FRL para núcleos TX y RX. |
RX TMDS Reloj | rx_tmds_clk | canal de reloj TMDS desde el conector HDMI RX y se conecta a un IOPLL para generar el reloj de referencia para el reloj de referencia 0 del CDR. El núcleo usa este reloj cuando está en modo TMDS. |
Reloj de referencia RX CDR 0 | rxphy_cdr_refclk0 | Reloj de referencia 0 a RX CDR. Este reloj se deriva del reloj RX TMDS. La frecuencia de reloj de RX TMDS oscila entre 25 MHz y 340 MHz, mientras que la frecuencia de reloj de referencia mínima de RX CDR es de 50 MHz. Se utiliza un IOPLL para generar una frecuencia de reloj de 5 para el reloj TMDS entre 25 MHz y 50 MHz y generar la misma frecuencia de reloj para el reloj TMDS entre 50 MHz y 340 MHz. |
Salida del reloj del transceptor RX | rx_clk | El reloj se recupera del transceptor y la frecuencia varía según la velocidad de datos y el ancho del transceptor. Frecuencia de salida del transceptor RX = Velocidad de datos del transceptor/Ancho del transceptor Para este diseño HDMI exampPor ejemplo, el reloj del transceptor RX desde el canal 1 sincroniza la entrada central del transceptor RX (rx_coreclkin) y el reloj de referencia FRL IOPLL (pll_frl). |
2.10. Señales de interfaz
Las tablas enumeran las señales para el diseño HDMI ex.amparchivo con FRL habilitado.
Tabla 16. Señales de nivel superior
Señal |
Dirección | Ancho |
Descripción |
Señal del oscilador integrado | |||
clk_fpga_b3_p | Aporte | 1 | Reloj de funcionamiento libre de 100 MHz para el reloj de referencia central. |
refclk4_p | Aporte | 1 | Reloj de funcionamiento libre de 100 MHz para el reloj de referencia del transceptor. |
Botones pulsadores y LED de usuario | |||
usuario_pb | Aporte | 3 | Pulsador para controlar la funcionalidad de diseño HDMI Intel FPGA IP. |
cpu_resetn | Aporte | 1 | Reinicio global. |
usuario_led_g | Producción | 8 | Pantalla LED verde. Referirse a Configuración del hardware en la página 48 para obtener más información sobre las funciones de los LED. |
usuario_dipsw | Aporte | 1 | Interruptor DIP definido por el usuario. Referirse a Configuración del hardware en la página 48 para obtener más información sobre las funciones del interruptor DIP. |
Pines de la tarjeta secundaria HDMI FMC en el puerto B de FMC | |||
fmcb_gbtclk_m2c_p_0 | Aporte | 1 | Reloj HDMI RX TMDS. |
fmcb_dp_m2c_p | Aporte | 4 | Reloj HDMI RX, canales de datos rojo, verde y azul. |
fmcb_dp_c2m_p | Producción | 4 | Reloj HDMI TX, canales de datos rojo, verde y azul. |
fmcb_la_rx_p_9 | Aporte | 1 | Detección de potencia HDMI RX +5V. |
fmcb_la_rx_p_8 | Producción | 1 | Detección de conexión en caliente HDMI RX. |
fmcb_la_rx_n_8 | Aporte | 1 | HDMI RX I2C SDA para DDC y SCDC. |
fmcb_la_tx_p_10 | Aporte | 1 | HDMI RX I2C SCL para DDC y SCDC. |
fmcb_la_tx_p_12 | Aporte | 1 | Detección de conexión en caliente HDMI TX. |
fmcb_la_tx_n_12 | Aporte | 1 | HDMI I2C SDA para DDC y SCDC. |
fmcb_la_rx_p_10 | Aporte | 1 | HDMI I2C SCL para DDC y SCDC. |
fmcb_la_tx_n_9 | Aporte | 1 | HDMI I2C SDA para control de redriver. |
fmcb_la_rx_p_11 | Aporte | 1 | HDMI I2C SCL para control de redriver. |
fmcb_la_tx_n_13 | Producción | 1 | Transmisión HDMI +5V Nota: Solo disponible cuando Bitec Tarjeta Hija HDMI Revisión 9 está seleccionado |
Tabla 17. Señales de nivel superior HDMI RX
Señal | Dirección | Ancho | Descripción |
Señales de reloj y reinicio | |||
mgmt_clk | Aporte | 1 | Entrada de reloj del sistema (100 MHz). |
reiniciar | Aporte | 1 | Entrada de reinicio del sistema. |
rx_tmds_clk | Aporte | 1 | Reloj HDMI RX TMDS. |
i2c_clk | Aporte | 1 | Entrada de reloj para interfaz DDC y SCDC. |
Señales de reloj y reinicio | |||
rxphy_cdr_refclk1 | Aporte | 1 | Entrada de reloj para el reloj de referencia RX CDR 1. La frecuencia del reloj es de 100 MHz. |
rx_vid_clk | Producción | 1 | Salida de reloj de vídeo. |
inicio_del_sistema | Producción | 1 | Inicialización del sistema para restablecer el sistema al encenderlo. |
Transceptor RX y señales IOPLL | |||
rxpll_tmds_locked | Producción | 1 | Indica que el IOPLL del reloj TMDS está bloqueado. |
rxpll_frl_locked | Producción | 1 | Indica que el IOPLL del reloj FRL está bloqueado. |
rxphy_serial_data | Aporte | 4 | Datos serie HDMI al RX Native PHY. |
rxphy_listo | Producción | 1 | Indica que RX Native PHY está listo. |
rxphy_cal_busy_raw | Producción | 4 | Calibración RX Native PHY ocupada para el árbitro del transceptor. |
rxphy_cal_busy_gateado | Aporte | 4 | Señal de calibración ocupada desde el árbitro del transceptor al RX Native PHY. |
rxphy_rcfg_slave_write | Aporte | 4 | Reconfiguración del transceptor Interfaz asignada en memoria de Avalon desde RX Native PHY al árbitro del transceptor. |
rxphy_rcfg_slave_read | Aporte | 4 | |
rxphy_rcfg_slave_address | Aporte | 40 | |
rxphy_rcfg_slave_writedata | Aporte | 128 | |
rxphy_rcfg_slave_readdata | Producción | 128 | |
rxphy_rcfg_slave_waitrequest | Producción | 4 |
Gestión de reconfiguración RX | |||
rxphy_rcfg_busy | Producción | 1 | Señal de ocupado de reconfiguración RX. |
rx_tmds_freq | Producción | 24 | Medición de frecuencia de reloj HDMI RX TMDS (en 10 ms). |
rx_tmds_freq_valid | Producción | 1 | Indica que la medición de la frecuencia del reloj RX TMDS es válida. |
rxphy_os | Producción | 1 | Oversampfactor de ling: •0: 1x oversampabadejo • 1: 5× oversampabadejo |
rxphy_rcfg_master_write | Producción | 1 | Gestión de reconfiguración RX Interfaz asignada en memoria de Avalon al árbitro transceptor. |
rxphy_rcfg_master_read | Producción | 1 | |
rxphy_rcfg_master_address | Producción | 12 | |
rxphy_rcfg_master_writedata | Producción | 32 | |
rxphy_rcfg_master_readdata | Aporte | 32 | |
rxphy_rcfg_master_waitrequest | Aporte | 1 |
Señales de núcleo HDMI RX | |||
rx_vid_clk_locked | Aporte | 1 | Indica que vid_clk es estable. |
rxcore_frl_rate | Producción | 4 | Indica la tasa de FRL que está ejecutando el núcleo RX. • 0: Modo heredado (TMDS) • 1: 3 Gbps 3 carriles • 2: 6 Gbps 4 carriles • 3: 6 Gbps 4 carriles • 4: 8 Gbps 4 carriles • 5: 10 Gbps 4 carriles • 6: 12 Gbps 4 carriles • 7-15: Reservado |
rxcore_frl_locked | Producción | 4 | Cada bit indica el carril específico que ha logrado el bloqueo FRL. FRL se bloquea cuando el núcleo RX realiza correctamente la alineación, la alineación y logra el bloqueo del carril. • Para el modo de 3 carriles, el bloqueo de carril se logra cuando el núcleo RX recibe Scrambler Reset (SR) o Start-Super-Block (SSB) por cada período de 680 caracteres FRL durante al menos 3 veces. • Para el modo de 4 carriles, el bloqueo de carril se logra cuando el núcleo RX recibe Scrambler Reset (SR) o Start-Super-Block (SSB) por cada período de 510 caracteres FRL durante al menos 3 veces. |
rxcore_frl_ffe_levels | Producción | 4 | Corresponde al bit FFE_level en el bit de registro SCDC 0x31 [7:4] en el núcleo RX. |
rxcore_frl_flt_ready | Aporte | 1 | Afirma para indicar que el RX está listo para que comience el proceso de capacitación del enlace. Cuando se afirma, también se afirma el bit FLT_ready en el bit 0 del registro SCDC 40x6. |
rxcore_frl_src_test_config | Aporte | 8 | Especifica las configuraciones de prueba de origen. El valor se escribe en el registro de configuración de prueba SCDC en el registro SCDC 0x35. |
rxcore_tbcr | Producción | 1 | Indica la relación bit-reloj de TMDS; corresponde al registro TMDS_Bit_Clock_Ratio en el registro SCDC 0x20 bit 1. • Cuando se ejecuta en modo HDMI 2.0, este bit se afirma. Indica la relación bit-reloj de TMDS de 40:1. • Cuando se ejecuta en HDMI 1.4b, este bit no se confirma. Indica la relación bit-reloj de TMDS de 10:1. • Este bit no se utiliza para el modo FRL. |
rxcore_scrambler_enable | Producción | 1 | Indica si los datos recibidos están codificados; corresponde al campo Scrambling_Enable en el registro SCDC 0x20 bit 0. |
rxcore_audio_de | Producción | 1 | Interfaces de audio con núcleo HDMI RX Consulte la Interfaces de fregadero sección en el Guía del usuario de HDMI Intel FPGA IP Para más información. |
rxcore_audio_data | Producción | 256 | |
rxcore_audio_info_ai | Producción | 48 | |
rxcore_audio_N | Producción | 20 | |
rxcore_audio_CTS | Producción | 20 | |
rxcore_audio_metadatos | Producción | 165 | |
formato_rxcore_audio | Producción | 5 | |
rxcore_aux_pkt_data | Producción | 72 | Interfaces auxiliares del núcleo HDMI RX Consulte la Interfaces de fregadero sección en el Guía del usuario de HDMI Intel FPGA IP Para más información. |
rxcore_aux_pkt_addr | Producción | 6 | |
rxcore_aux_pkt_wr | Producción | 1 | |
rxcore_aux_data | Producción | 72 | |
rxcore_aux_sop | Producción | 1 | |
rxcore_aux_eop | Producción | 1 | |
rxcore_aux_valid | Producción | 1 | |
rxcore_aux_error | Producción | 1 | |
rxcore_gcp | Producción | 6 | Señales de banda lateral del núcleo HDMI RX Consulte la Interfaces de fregadero sección en el Guía del usuario de HDMI Intel FPGA IP Para más información. |
rxcore_info_avi | Producción | 123 | |
rxcore_info_vsi | Producción | 61 | |
rxcore_locked | Producción | 1 | Puertos de vídeo del núcleo HDMI RX No diez = píxeles por reloj Consulte la Interfaces de fregadero sección en el Guía del usuario de HDMI Intel FPGA IP Para más información. |
rxcore_vid_data | Producción | N*48 | |
rxcore_vid_vsync | Producción | N | |
rxcore_vid_hsync | Producción | N | |
rxcore_vid_de | Producción | N | |
rxcore_vid_valid | Producción | 1 | |
rxcore_vid_lock | Producción | 1 | |
modo_rxcore | Producción | 1 | Puertos de estado y control del núcleo HDMI RX. No diez = símbolos por reloj Consulte la Interfaces de fregadero sección en el Guía del usuario de HDMI Intel FPGA IP Para más información. |
rxcore_ctrl | Producción | N*6 | |
rxcore_color_profundidad_sync | Producción | 2 | |
hdmi_5v_detect | Aporte | 1 | Detección HDMI RX 5V y detección de conexión en caliente. Referirse a Interfaces de fregadero sección en el Guía del usuario de HDMI Intel FPGA IP Para más información. |
hdmi_rx_hpd | Producción | 1 | |
rx_hpd_trigger | Aporte | 1 |
I2Señales C | |||
hdmi_rx_i2c_sda | Aporte | 1 | Interfaz HDMI RX DDC y SCDC. |
hdmi_rx_i2c_scl | Aporte | 1 |
Señales de RAM RX EDID | |||
edit_ram_acceso | Aporte | 1 | Interfaz de acceso a RAM HDMI RX EDID. |
dirección_edid_ram | Aporte | 8 | Afirme edid_ram_access cuando desee escribir o leer desde la RAM EDID; de lo contrario, esta señal debe mantenerse baja. Cuando afirma edid_ram_access, la señal hotplug se desactiva para permitir la escritura o lectura en la RAM EDID. Cuando se completa el acceso a EDID RAM, debe desactivar edid_ram_assess y la señal hotplug se afirma. La fuente leerá el nuevo EDID debido a la conmutación de la señal de conexión en caliente. |
edit_ram_write | Aporte | 1 | |
edit_ram_read | Aporte | 1 | |
edit_ram_readdata | Producción | 8 | |
edit_ram_writedata | Aporte | 8 | |
edit_ram_waitrequest | Producción | 1 |
Tabla 18.Señales de nivel superior HDMI TX
Señal | Dirección | Ancho | Descripción |
Señales de reloj y reinicio | |||
mgmt_clk | Aporte | 1 | Entrada de reloj del sistema (100 MHz). |
reiniciar | Aporte | 1 | Entrada de reinicio del sistema. |
tx_tmds_clk | Aporte | 1 | Reloj HDMI RX TMDS. |
txfpll_refclk1 | Aporte | 1 | Entrada de reloj para el reloj de referencia 1 de TX PLL. La frecuencia del reloj es de 100 MHz. |
tx_vid_clk | Producción | 1 | Salida de reloj de vídeo. |
tx_frl_clk | Producción | 1 | Salida de reloj FRL. |
inicio_del_sistema | Aporte | 1 | Inicialización del sistema para restablecer el sistema al encenderlo. |
tx_init_done | Aporte | 1 | Inicialización de TX para restablecer el bloque de gestión de reconfiguración de TX y la interfaz de reconfiguración del transceptor. |
Transceptor TX y señales IOPLL | |||||||||||||
txpll_frl_locked | Producción | 1 | Indica que el reloj de velocidad del enlace y el reloj FRL IOPLL están bloqueados. | ||||||||||
txfpll_locked | Producción | 1 | Indica que el TX PLL está bloqueado. | ||||||||||
txphy_serial_data | Producción | 4 | Datos serie HDMI del TX Native PHY. | ||||||||||
txphy_listo | Producción | 1 | Indica que la PHY nativa de TX está lista. | ||||||||||
txphy_cal_busy | Producción | 1 | TX Señal ocupada de calibración PHY nativa. | ||||||||||
txphy_cal_busy_raw | Producción | 4 | Señal de calibración ocupada al árbitro del transceptor. | ||||||||||
txphy_cal_busy_gated | Aporte | 4 | Señal de calibración ocupada desde el árbitro del transceptor al TX Native PHY. | ||||||||||
txphy_rcfg_busy | Producción | 1 | Indica que la reconfiguración de TX PHY está en progreso. | ||||||||||
txphy_rcfg_slave_write | Aporte | 4 | Reconfiguración del transceptor Interfaz asignada en memoria de Avalon desde el PHY nativo de TX al árbitro del transceptor. | ||||||||||
txphy_rcfg_slave_read | Aporte | 4 | |||||||||||
txphy_rcfg_slave_address | Aporte | 40 | |||||||||||
|
Gestión de reconfiguración de TX | |||
tx_tmds_freq | Aporte | 24 | Valor de frecuencia de reloj HDMI TX TMDS (en 10 ms). |
tx_os | Producción | 2 | Oversampfactor de ling: • 0: 1x oversampabadejo •1: 2× oversampabadejo •2: 8x oversampabadejo |
txphy_rcfg_master_write | Producción | 1 | Gestión de reconfiguración de TX Interfaz asignada en memoria de Avalon al árbitro del transceptor. |
txphy_rcfg_master_read | Producción | 1 | |
txphy_rcfg_master_address | Producción | 12 | |
txphy_rcfg_master_writedata | Producción | 32 | |
txphy_rcfg_master_readdata | Aporte | 32 | |
txphy_rcfg_master_waitrequest | Aporte | 1 | |
tx_reconfig_done | Producción | 1 | Indica que se completó el proceso de reconfiguración de TX. |
Señales principales HDMI TX | |||
tx_vid_clk_locked | Aporte | 1 | Indica que vid_clk es estable. |
txcore_ctrl | Aporte | N*6 | Interfaces de control del núcleo HDMI TX. No diez = píxeles por reloj Consulte la Interfaces de origen sección en el Guía del usuario de HDMI Intel FPGA IP Para más información. |
modo_txcore | Aporte | 1 | |
txcore_audio_de | Aporte | 1 | Interfaces de audio con núcleo HDMI TX. Consulte la Interfaces de origen sección en el Guía del usuario de HDMI Intel FPGA IP Para más información. |
txcore_audio_mute | Aporte | 1 | |
txcore_audio_data | Aporte | 256 | |
txcore_audio_info_ai | Aporte | 49 | |
txcore_audio_N | Aporte | 20 | |
txcore_audio_CTS | Aporte | 20 | |
txcore_audio_metadatos | Aporte | 166 | |
formato_txcore_audio | Aporte | 5 | |
txcore_aux_ready | Producción | 1 | Interfaces auxiliares de núcleo HDMI TX. Consulte la Interfaces de origen sección en el Guía del usuario de HDMI Intel FPGA IP Para más información. |
txcore_aux_data | Aporte | 72 | |
txcore_aux_sop | Aporte | 1 | |
txcore_aux_eop | Aporte | 1 | |
txcore_aux_valid | Aporte | 1 | |
txcore_gcp | Aporte | 6 | Señales de banda lateral del núcleo HDMI TX. Consulte la Interfaces de origen sección en el Guía del usuario de HDMI Intel FPGA IP Para más información. |
txcore_info_avi | Aporte | 123 | |
txcore_info_vsi | Aporte | 62 | |
txcore_i2c_master_write | Aporte | 1 | TX I2C master Interfaz asignada en memoria de Avalon al maestro I2C dentro del núcleo TX. Nota: Estas señales están disponibles sólo cuando enciende el Incluir I2C parámetro. |
txcore_i2c_master_read | Aporte | 1 | |
txcore_i2c_master_address | Aporte | 4 | |
txcore_i2c_master_writedata | Aporte | 32 | |
txcore_i2c_master_readdata | Producción | 32 | |
txcore_vid_data | Aporte | N*48 | Puertos de vídeo con núcleo HDMI TX. No diez = píxeles por relojRef eh a la Interfaces de origen sección en el Guía del usuario de HDMI Intel FPGA IP Para más información. |
txcore_vid_vsync | Aporte | N | |
txcore_vid_hsync | Aporte | N | |
txcore_vid_de | Aporte | N | |
txcore_vid_ready | Producción | 1 | |
txcore_vid_overflow | Producción | 1 | |
txcore_vid_valid | Aporte | 1 | |
txcore_frl_rate | Aporte | 4 | Interfaces de registro SCDC. |
txcore_frl_pattern | Aporte | 16 | |
txcore_frl_start | Aporte | 1 | |
txcore_scrambler_enable | Aporte | 1 | |
txcore_tbcr | Aporte | 1 |
I2Señales C | |||
nios_tx_i2c_sda_in | Producción | 1 | Interfaz TX I2C Master para SCDC y DDC desde el procesador Nios II al buffer de salida. Nota: Si enciendes el Incluir I2C parámetro, estas señales se colocarán dentro del núcleo TX y no serán visibles en este nivel. |
nios_tx_i2c_scl_in | Producción | 1 | |
nios_tx_i2c_sda_oe | Aporte | 1 | |
nios_tx_i2c_scl_oe | Aporte | 1 | |
nios_ti_i2c_sda_in | Producción | 1 | Interfaz maestra TX I2C desde el procesador Nios II al búfer de salida para controlar el redriver TI en la tarjeta secundaria Bitec HDMI 2.1 FMC. |
nios_ti_i2c_scl_in | Producción | 1 | |
nios_ti_i2c_sda_oe | Aporte | 1 | |
nios_ti_i2c_scl_oe | Aporte | 1 | |
hdmi_tx_i2c_sda | Aporte | 1 | Interfaces TX I2C para interfaces SCDC y DDC desde el búfer de salida al conector HDMI TX. |
hdmi_tx_i2c_scl | Aporte | 1 | |
hdmi_tx_ti_i2c_sda | Aporte | 1 | TX I2C interactúa desde el búfer de salida al recontrolador TI en la tarjeta secundaria Bitec HDMI 2.1 FMC. |
hdmi_tx_ti_i2c_scl | Aporte | 1 |
tx_hpd_req | Producción | 1 | Interfaces de detección de conexión en caliente HDMI TX. |
hdmi_tx_hpd_n | Aporte | 1 |
Tabla 19. Señales del árbitro del transceptor
Señal | Dirección | Ancho |
Descripción |
Clic | Aporte | 1 | Reloj de reconfiguración. Este reloj debe compartir el mismo reloj con los bloques de gestión de reconfiguración. |
reiniciar | Aporte | 1 | Restablecer señal. Este reset debe compartir el mismo reset con los bloques de gestión de reconfiguración. |
rx_rcfg_en | Aporte | 1 | Señal de habilitación de reconfiguración RX. |
tx_rcfg_en | Aporte | 1 | Señal de habilitación de reconfiguración de TX. |
rx_rcfg_ch | Aporte | 2 | Indica qué canal se reconfigurará en el núcleo RX. Esta señal siempre debe permanecer afirmada. |
tx_rcfg_ch | Aporte | 2 | Indica qué canal se reconfigurará en el núcleo TX. Esta señal siempre debe permanecer afirmada. |
rx_reconfig_mgmt_write | Aporte | 1 | Reconfiguración de interfaces asignadas en memoria de Avalon desde la gestión de reconfiguración de RX. |
rx_reconfig_mgmt_read | Aporte | 1 | |
rx_reconfig_mgmt_address | Aporte | 10 | |
rx_reconfig_mgmt_writedata | Aporte | 32 | |
rx_reconfig_mgmt_readdata | Producción | 32 | |
rx_reconfig_mgmt_waitrequest | Producción | 1 | |
tx_reconfig_mgmt_write | Aporte | 1 | Reconfiguración de interfaces asignadas en memoria de Avalon desde la gestión de reconfiguración de TX. |
tx_reconfig_mgmt_read | Aporte | 1 | |
tx_reconfig_mgmt_address | Aporte | 10 | |
tx_reconfig_mgmt_writedata | Aporte | 32 | |
tx_reconfig_mgmt_readdata | Producción | 32 | |
tx_reconfig_mgmt_waitrequest | Producción | 1 | |
reconfigurar_escritura | Producción | 1 | Reconfiguración de las interfaces asignadas en memoria de Avalon al transceptor. |
reconfigurar_leer | Producción | 1 | |
dirección_reconfig | Producción | 10 | |
reconfigurar_writedata | Producción | 32 | |
rx_reconfig_readdata | Aporte | 32 | |
rx_reconfig_waitrequest | Aporte | 1 | |
tx_reconfig_readdata | Aporte | 1 | |
tx_reconfig_waitrequest | Aporte | 1 |
rx_cal_busy | Aporte | 1 | Señal de estado de calibración del transceptor RX. |
tx_cal_busy | Aporte | 1 | Señal de estado de calibración del transceptor TX. |
rx_reconfig_cal_busy | Producción | 1 | Señal de estado de calibración al control de reinicio PHY del transceptor RX. |
tx_reconfig_cal_busy | Producción | 1 | Señal de estado de calibración del control de reinicio PHY del transceptor TX. |
Tabla 20. Señales de enlace RX-TX
Señal | Dirección | Ancho |
Descripción |
vid_clk | Aporte | 1 | Reloj de vídeo HDMI. |
rx_vid_lock | Aporte | 3 | Indica el estado de bloqueo del vídeo HDMI RX. |
rx_vid_valid | Aporte | 1 | Interfaces de vídeo HDMI RX. |
rx_vid_de | Aporte | N | |
rx_vid_hsync | Aporte | N | |
rx_vid_vsync | Aporte | N | |
rx_vid_data | Aporte | N*48 | |
rx_aux_eop | Aporte | 1 | Interfaces auxiliares HDMI RX. |
rx_aux_sop | Aporte | 1 | |
rx_aux_valid | Aporte | 1 | |
rx_aux_data | Aporte | 72 | |
tx_vid_de | Producción | N | Interfaces de vídeo HDMI TX. No diez = píxeles por reloj |
tx_vid_hsync | Producción | N | |
tx_vid_vsync | Producción | N | |
tx_vid_data | Producción | N * 48 | |
tx_vid_valid | Producción | 1 | |
tx_vid_ready | Aporte | 1 | |
tx_aux_eop | Producción | 1 | Interfaces auxiliares HDMI TX. |
tx_aux_sop | Producción | 1 | |
tx_aux_valid | Producción | 1 | |
tx_aux_data | Producción | 72 | |
tx_aux_listo | Aporte | 1 |
Tabla 21. Señales del sistema Platform Designer
Señal | Dirección | Ancho |
Descripción |
cpu_clk_in_clk_clk | Aporte | 1 | Reloj de la CPU. |
cpu_rst_in_reset_reset | Aporte | 1 | Reinicio de la CPU. |
edid_ram_slave_translator_avalon_anti_slave_0_address | Producción | 8 | Interfaces de acceso a RAM EDID. |
edid_ram_slave_translator_avalon_anti_slave_0_write | Producción | 1 | |
edid_ram_slave_translator_avalon_anti_slave_0_read | Producción | 1 | |
edid_ram_slave_translator_avalon_anti_slave_0_readdata | Aporte | 8 | |
edid_ram_slave_translator_avalon_anti_slave_0_writedata | Producción | 8 | |
edid_ram_slave_translator_avalon_anti_slave_0_waitrequest | Aporte | 1 | |
hdmi_i2c_master_i2c_serial_sda_in | Aporte | 1 | I2C Master interactúa desde el procesador Nios II al búfer de salida para control DDC y SCDC. |
hdmi_i2c_master_i2c_serial_scl_in | Aporte | 1 | |
hdmi_i2c_master_i2c_serial_sda_oe | Producción | 1 | |
hdmi_i2c_master_i2c_serial_scl_oe | Producción | 1 | |
redriver_i2c_master_i2c_serial_sda_in | Aporte | 1 | I2C Master interactúa desde el procesador Nios II al búfer de salida para la configuración de configuración del redriver TI. |
redriver_i2c_master_i2c_serial_scl_in | Aporte | 1 | |
redriver_i2c_master_i2c_serial_sda_oe | Producción | 1 | |
redriver_i2c_master_i2c_serial_scl_oe | Producción | 1 | |
pio_in0_external_connection_export | Aporte | 32 | Interfaces de entrada y salida en paralelo. • Bit 0: conectado a la señal user_dipsw para controlar el modo de paso a través de EDID. •Bit 1: Solicitud TX HPD •Bit 2: transceptor TX listo •Bits 3: reconfiguración de TX realizada •Bits 4–7: reservados • Bits 8–11: tasa RX FRL • Bit 12: relación de reloj de bits RX TMDS • Bits 13–16: RX FRL bloqueado • Bits 17–20: niveles RX FFE • Bit 21: Alineación RX bloqueada |
Señal | Dirección | Ancho | Descripción |
•Bit 22: bloqueo de vídeo RX • Bit 23: Pulsador de usuario 2 para leer registros SCDC desde un receptor externo •Bits 24–31: reservados |
|||
pio_out0_external_connection_export | Producción | 32 | Interfaces de entrada y salida en paralelo. •Bit 0: Confirmación de TX HPD •Bit 1: La inicialización de TX está realizada • Bits 2 a 7: reservados • Bits 8–11: tasa TX FRL •Bits 12–27: patrón de entrenamiento de enlace TX FRL • Bit 28: Inicio TX FRL • Bits 29 a 31: reservados |
pio_out1_external_connection_export | Producción | 32 | Interfaces de entrada y salida en paralelo. • Bit 0: Acceso a RAM RX EDID • Bit 1: RX FLT listo • Bits 2 a 7: reservados • Bits 8–15: Configuración de prueba de fuente RX FRL •Bits 16–31: reservados |
2.1. 1. Diseñar parámetros RTL
Utilice los parámetros HDMI TX y RX Top RTL para personalizar el diseño exampel.
La mayoría de los parámetros de diseño están disponibles en el Ex diseñoample pestaña del editor de parámetros IP HDMI Intel FPGA. Aún puedes cambiar el diseño ex.amparchivos que realizó en el editor de parámetros a través de los parámetros RTL.
Tabla 22. Parámetros principales de HDMI RX
Parámetro |
Valor |
Descripción |
SOPORTE_DEEP_COLOR | • 0: Sin color profundo • : Color profundo |
Determina si el núcleo puede codificar formatos de colores profundos. |
SOPORTE_AUXILIAR | • 0: Sin auxiliar •1: AUX. |
Determina si se incluye la codificación del canal auxiliar. |
SYMBOLS_PER_CLOCK | 8 | Admite 8 símbolos por reloj para dispositivos Intel Arria 10. |
SOPORTE_AUDIO | • 0: Sin audio • 1: Audio |
Determina si el núcleo puede codificar audio. |
EDID_RAM_ADDR_WIDTH | 8 (valor predeterminado) | Registre la base 2 del tamaño de RAM EDID. |
BITEC_DAUGHTER_CARD_REV | •0: No apunta a ninguna tarjeta secundaria HDMI de Bitec •4: Admite la revisión 4 de la tarjeta secundaria Bitec HDMI •6: Apuntando a la tarjeta secundaria Bitec HDMI revisión 6 • 11: Orientación a la tarjeta secundaria HDMI de Bitec, revisión 11 (predeterminada) |
Especifica la revisión de la tarjeta secundaria Bitec HDMI utilizada. Cuando cambia la revisión, el diseño puede intercambiar los canales del transceptor e invertir la polaridad de acuerdo con los requisitos de la tarjeta secundaria Bitec HDMI. Si configura el parámetro BITEC_DAUGHTER_CARD_REV en 0, el diseño no realiza ningún cambio en los canales del transceptor ni en la polaridad. |
INVERSIÓN_POLARIDAD | • 0: polaridad invertida • 1: No invertir la polaridad |
Establezca este parámetro en 1 para invertir el valor de cada bit de los datos de entrada. Establecer este parámetro en 1 asigna 4'b1111 al puerto rx_polinv del transceptor RX. |
Tabla 23. Parámetros superiores de HDMI TX
Parámetro |
Valor |
Descripción |
USE_FPLL | 1 | Admite fPLL como TX PLL solo para dispositivos Intel Arria 10. Establezca siempre este parámetro en 1. |
SOPORTE_DEEP_COLOR | •0: Sin color profundo
• 1: color intenso |
Determina si el núcleo puede codificar formatos de colores profundos. |
SOPORTE_AUXILIAR | • 0: Sin auxiliar • 1: AUX. |
Determina si se incluye la codificación del canal auxiliar. |
SYMBOLS_PER_CLOCK | 8 | Admite 8 símbolos por reloj para dispositivos Intel Arria 10. |
SOPORTE_AUDIO | • 0: Sin audio • 1: Audio |
Determina si el núcleo puede codificar audio. |
BITEC_DAUGHTER_CARD_REV | • 0: No apunta a ninguna tarjeta secundaria HDMI de Bitec • 4: Admite la revisión 4 de la tarjeta secundaria Bitec HDMI • 6: Apuntando a la tarjeta secundaria Bitec HDMI revisión 6 • 11: Orientación a la tarjeta secundaria HDMI de Bitec, revisión 11 (predeterminada) |
Especifica la revisión de la tarjeta secundaria Bitec HDMI utilizada. Cuando cambia la revisión, el diseño puede intercambiar los canales del transceptor e invertir la polaridad de acuerdo con los requisitos de la tarjeta secundaria Bitec HDMI. Si configura el parámetro BITEC_DAUGHTER_CARD_REV en 0, el diseño no realiza ningún cambio en los canales del transceptor ni en la polaridad. |
INVERSIÓN_POLARIDAD | • 0: polaridad invertida • 1: No invertir la polaridad |
Establezca este parámetro en 1 para invertir el valor de cada bit de los datos de entrada. Establecer este parámetro en 1 asigna 4'b1111 al puerto tx_polinv del transceptor TX. |
2.12. Configuración de hardware
El diseño habilitado para HDMI FRL exampEl archivo es compatible con HDMI 2.1 y realiza una demostración en bucle para una transmisión de video HDMI estándar.
Para ejecutar la prueba de hardware, conecte un dispositivo habilitado para HDMI, como una tarjeta gráfica con interfaz HDMI, a la entrada del disipador HDMI. El diseño admite fuente y receptor HDMI 2.1 o HDMI 2.0/1.4b.
- El disipador HDMI decodifica el puerto en una transmisión de video estándar y la envía al núcleo de recuperación del reloj.
- El núcleo HDMI RX decodifica los datos de video, auxiliares y de audio que se conectarán en paralelo al núcleo HDMI TX a través del DCFIFO.
- El puerto de fuente HDMI de la tarjeta secundaria FMC transmite la imagen a un monitor.
Nota:
Si desea utilizar otra placa de desarrollo Intel FPGA, debe cambiar las asignaciones de dispositivos y de pines. La configuración analógica del transceptor se prueba para el kit de desarrollo Intel Arria 10 FPGA y la tarjeta secundaria Bitec HDMI 2.1. Puede modificar la configuración de su propio tablero.
Tabla 24. Funciones del LED de usuario y del botón pulsador integrado
Pulsador/LED |
Función |
cpu_resetn | Presione una vez para realizar el reinicio del sistema. |
usuario_dipsw | Interruptor DIP definido por el usuario para alternar el modo de paso. •OFF (posición predeterminada) = Paso HDMI RX en la FPGA obtiene el EDID del disipador externo y lo presenta a la fuente externa a la que está conectado. • ON = Puede controlar la tasa FRL máxima de RX desde el terminal Nios II. El comando modifica el EDID RX manipulando el valor máximo de tasa FRL. Consulte Ejecutar el diseño en diferentes tasas de FRL en la página 33 para obtener más información sobre cómo configurar las diferentes tasas de FRL. |
usuario_pb[0] | Presione una vez para alternar la señal HPD a la fuente HDMI estándar. |
usuario_pb[1] | Reservado. |
usuario_pb[2] | Presione una vez para leer los registros SCDC del disipador conectado al TX de la tarjeta hija Bitec HDMI 2.1 FMC. Nota: Para habilitar la lectura, debe configurar DEBUG_MODE en 1 en el software. |
USUARIO_LED[0] | Estado de bloqueo PLL del reloj RX TMDS. •0 = Desbloqueado • 1 = Bloqueado |
USUARIO_LED[1] | Estado del transceptor RX listo. •0 = No listo • 1 = Listo |
USUARIO_LED[2] | PLL del reloj de velocidad del enlace RX y estado de bloqueo del PLL del reloj FRL y video RX. • 0 = Cualquiera de los PLL del reloj RX está desbloqueado • 1 = Ambos PLL del reloj RX están bloqueados |
USUARIO_LED[3] | Alineación del núcleo RX HDMI y estado de bloqueo de alineación. • 0 = Al menos 1 canal está desbloqueado • 1 = Todos los canales están bloqueados |
USUARIO_LED[4] | Estado de bloqueo de vídeo RX HDMI. • 0 = Desbloqueado • 1 = Bloqueado |
USUARIO_LED[5] | PLL del reloj de velocidad del enlace TX y estado de bloqueo del PLL del reloj FRL y vídeo TX. •0 = Cualquiera de los PLL del reloj TX está desbloqueado • 1 = Ambos PLL del reloj TX están bloqueados |
USUARIO_LED[6] USUARIO_LED[7] | Estado listo del transceptor TX. • 0 = No listo • 1 = Listo Estado de entrenamiento del enlace TX. • 0 = Fallido • 1 = Aprobado |
2.13. Banco de pruebas de simulación
El banco de pruebas de simulación simula el loopback serie HDMI TX al núcleo RX.
Nota:
Este banco de pruebas de simulación no es compatible con diseños con el parámetro Incluir I2C habilitado.
Figura 19. Diagrama de bloques del banco de pruebas de simulación IP HDMI Intel FPGATabla 25. Componentes del banco de pruebas
Componente |
Descripción |
Vídeo TPG | El generador de patrones de prueba de vídeo (TPG) proporciona el estímulo de vídeo. |
S de audioampel gen | El audio sampEl generador proporciona audio.ampel estímulo. El generador genera un patrón de datos de prueba incremental que se transmitirá a través del canal de audio. |
S auxiliarampel gen | Los auxiliaresampEl generador proporciona los auxiliares.ampel estímulo. El generador genera datos fijos que se transmitirán desde el transmisor. |
Comprobación de CRC | Este verificador verifica si la frecuencia de reloj recuperada del transceptor TX coincide con la velocidad de datos deseada. |
Verificación de datos de audio | La verificación de datos de audio compara si el patrón de datos de prueba incremental se recibe y decodifica correctamente. |
Verificación de datos auxiliares | La verificación de datos auxiliares compara si los datos auxiliares esperados se reciben y decodifican correctamente en el lado del receptor. |
El banco de pruebas de simulación HDMI realiza las siguientes pruebas de verificación:
Función HDMI |
Verificación |
Datos de video | • El banco de pruebas implementa la comprobación CRC en el vídeo de entrada y salida. • Comprueba el valor CRC de los datos transmitidos con el CRC calculado en los datos de vídeo recibidos. • Luego, el banco de pruebas realiza la verificación después de detectar 4 señales V-SYNC estables del receptor. |
Datos auxiliares | • Los auxiliaresampEl generador genera datos fijos que se transmitirán desde el transmisor. • En el lado del receptor, el generador compara si los datos auxiliares esperados se reciben y decodifican correctamente. |
Datos de audio | •El audioampEl generador de archivos genera un patrón de datos de prueba incremental que se transmitirá a través del canal de audio. • En el lado del receptor, el verificador de datos de audio verifica y compara si el patrón de datos de prueba incremental se recibe y decodifica correctamente. |
Una simulación exitosa finaliza con el siguiente mensaje:
# SYMBOLS_PER_CLOCK = 2
# VIC = 4
#FRL_RATE = 0
# BPP = 0
# FRECUENCIA_AUDIO (kHz) = 48
#CANAL_AUDIO = 8
# Pase de simulación
Tabla 26. HDMI Intel FPGA IP Diseño ExampLos simuladores compatibles
Simulador |
Verilog HDL |
VHDL |
ModelSim – Edición Intel FPGA/ ModelSim – Edición Intel FPGA Starter | Sí | Sí |
VCS/VCSMX | Sí | Sí |
Riviera-PRO | Sí | Sí |
Xcelio paralelo | Sí | No |
2.14. Limitaciones de diseño
Debe tener en cuenta algunas limitaciones al crear una instancia del diseño HDMI 2.1 exampel.
- TX no puede funcionar en modo TMDS cuando está en modo sin paso a través. Para probar en modo TMDS, cambie el interruptor user_dipsw al modo de paso a través.
- El procesador Nios II debe completar el entrenamiento del enlace TX sin ninguna interrupción de otros procesos.
2.15. Funciones de depuración
Este diseño example proporciona ciertas funciones de depuración para ayudarle.
2.15.1. Mensaje de depuración de software
Puede activar el mensaje de depuración en el software para brindarle asistencia en tiempo de ejecución.
Para activar el mensaje de depuración en el software, siga estos pasos:
- Cambie DEBUG_MODE a 1 en el script global.h.
- Ejecute script/build_sw.sh en el Shell de comandos de Nios II.
- Reprogramar el software generado/tx_control/tx_control.elf file ejecutando el comando en Nios II Command Shell:
nios2-descargar -r -g software/tx_control/tx_control.elf - Ejecute el comando del terminal Nios II en el Shell de comandos de Nios II:
terminal nios2
Cuando activa el mensaje de depuración, se imprime la siguiente información:
- La configuración del redriver TI tanto en TX como en RX se lee y muestra una vez después de programar ELF file.
- Mensaje de estado para la configuración RX EDID y el proceso de conexión en caliente
- Resolución con o sin información de soporte FRL extraída de EDID en el disipador conectado al TX. Esta información se muestra para cada hotplug TX.
- Mensaje de estado para el proceso de entrenamiento del enlace TX durante el entrenamiento del enlace TX.
2.15.2. Información SCDC del disipador conectado a TX
Puede utilizar esta función para obtener información SCDC.
- Ejecute el comando del terminal Nios II en el Shell de comandos de Nios II: nios2-terminal
- Presione user_pb[2] en el kit de desarrollo Intel Arria 10 FPGA.
El software lee y muestra la información SCDC en el disipador conectado a TX en el terminal Nios II.
2.15.3. Medición de frecuencia de reloj
Utilice esta función para comprobar la frecuencia de los diferentes relojes.
- En hdmi_rx_top y hdmi_tx_top files, descomente "//`define DEBUG_EN 1".
- Agregue la señal refclock_measure de cada instancia de mr_rate_detect al analizador lógico de derivación de señal para obtener la frecuencia de reloj de cada reloj (en 10 ms de duración).
- Compile el diseño con Signal Tap Logic Analyzer.
- Programar el SOF file y ejecute el analizador lógico de toma de señal.
Tabla 27. Relojes
Módulo | mr_rate_detect Instancia |
Reloj a medir |
hdmi_rx_top | rx_pll_tmds | Reloj de referencia RX CDR 0 |
rx_clk0_freq | Reloj del transceptor RX fuera del canal 0 | |
rx_vid_clk_freq | Reloj de vídeo RX | |
rx_frl_clk_freq | Reloj RX FRL | |
rx_hsync_freq | Frecuencia Hsync del fotograma de vídeo recibido | |
hdmi_tx_top | tx_clk0_freq | Reloj del transceptor TX desde el canal 0 |
vid_clk_freq | Reloj de vídeo TX | |
frl_clk_freq | Reloj TX FRL | |
tx_hsync_freq | Frecuencia hsync del fotograma de vídeo a transmitir |
2.16. Actualizando su diseño
Tabla 28. Diseño HDMI ExampCompatibilidad con la versión anterior del software Intel Quartus Prime Pro Edition
Ex diseñoampla variante | Posibilidad de actualizar a Intel Quartus Prime Pro Edition 20.3 |
Diseño HDMI 2.1 Examparchivo (Soporte FRL = 1) | No |
Para cualquier diseño no compatible examparchivos, debe hacer lo siguiente:
- Generar un nuevo diseño examparchivo en la versión actual del software Intel Quartus Prime Pro Edition usando las mismas configuraciones de su diseño existente.
- Compara todo el diseño ex.ample directorio con el diseño exampArchivo generado con la versión anterior del software Intel Quartus Prime Pro Edition. Port sobre los cambios encontrados.
Diseño HDMI 2.0 Examparchivo (Soporte FRL = 0)
El diseño HDMI Intel FPGA IP exampEste ejemplo muestra un loopback paralelo de instancia HDMI que comprende tres canales RX y cuatro canales TX.
Tabla 29. HDMI Intel FPGA IP Diseño Examparchivo para dispositivos Intel Arria 10
Ex diseñoample | Velocidad de datos | Modo de canal | Tipo de bucle invertido |
Retransmisión Arria 10 HDMI RX-TX | < 6,000Mbps | Simplex | Paralelo con el búfer FIFO |
Características
- El diseño crea instancias de buffers FIFO para realizar un paso directo de flujo de video HDMI entre el receptor HDMI y la fuente.
- El diseño utiliza LED de estado para la depuración temprana.tage.
- El diseño viene solo con opciones RX y TX.
- El diseño demuestra la inserción y el filtrado de InfoFrame de rango dinámico y masterización (HDR) en el módulo de enlace RX-TX.
- El diseño demuestra la gestión del paso EDID desde un disipador HDMI externo a una fuente HDMI externa cuando se activa mediante un evento de conexión en caliente de TX.
- El diseño permite el control del tiempo de ejecución a través de un interruptor DIP y un pulsador para administrar las señales del núcleo HDMI TX:
— señal de modo para seleccionar cuadro de vídeo codificado DVI o HDMI
— señales info_avi[47], info_vsi[61] y audio_info_ai[48] para seleccionar la transmisión de paquetes auxiliares a través de bandas laterales o puertos de datos auxiliares
La instancia RX recibe una fuente de video del generador de video externo y los datos luego pasan por un FIFO de bucle invertido antes de transmitirse a la instancia TX.
Es necesario conectar un analizador de vídeo externo, un monitor o un televisor con conexión HDMI al núcleo TX para verificar la funcionalidad.
3.1. Diagrama de bloques del diseño de retransmisión HDMI 2.0 RX-TX
El diseño de retransmisión HDMI 2.0 RX-TX exampEste archivo demuestra un bucle invertido paralelo en el modo de canal 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
Jitter de PLL en cascada o ruta de reloj no dedicada para el reloj de referencia PLL de Arria 10 Consulte esta solución para encontrar una solución alternativa si sus relojes de diseño experimentan problemas adicionales.
estar nervioso.
3.2. Requisitos de hardware y software
Intel utiliza el siguiente hardware y software para probar el diseño exampel.
Hardware
- Kit de desarrollo de FPGA Intel Arria 10 GX
- Fuente HDMI (Unidad de procesador de gráficos (GPU))
- Disipador HDMI (Monitor)
- Tarjeta hija Bitec HDMI FMC 2.0 (Revisión 11)
- Cables HDMI
Nota:
Puede seleccionar la revisión de su tarjeta hija Bitec HDMI. Establezca el parámetro local BITEC_DAUGHTER_CARD_REV en 4, 6 u 11 en el nivel superior file (a10_hdmi2_demo.v). Cuando cambia la revisión, el diseño puede intercambiar los canales del transceptor e invertir la polaridad de acuerdo con los requisitos de la tarjeta secundaria Bitec HDMI. Si configura el parámetro BITEC_DAUGHTER_CARD_REV en 0, el diseño no realiza ningún cambio en los canales del transceptor ni en la polaridad. Para diseño HDMI 2.1 examples, bajo el diseño ExampEn la pestaña Archivo, configure Revisión de tarjeta secundaria HDMI en Revisión 9, Revisión 4 o sin tarjeta secundaria. El valor predeterminado es Revisión 9.
Software
- Intel Quartus Prime versión 18.1 y posteriores (para pruebas de hardware)
- ModelSim: Intel FPGA Edition, ModelSim: Intel FPGA Starter Edition, RivieraPRO, VCS (solo Verilog HDL)/VCS MX o simulador Xcelium Parallel
3.3. Estructura del directorio
Los directorios contienen los generados. files para el diseño HDMI Intel FPGA IP exampel.
Figura 22. Estructura de directorios para Design ExampleTabla 30. RTL generado Files
Carpetas | Files |
gxb | • /gxb_rx.qsys (Intel Quartus Prime Edición estándar) • /gxb_rx.ip (Intel Quartus Prime Edición Pro) |
• /gxb_rx_reset.qsys (Intel Quartus Prime Edición estándar) • /gxb_rx_reset.ip (Intel Quartus Prime Edición Pro) |
|
• /gxb_tx.qsys (Intel Quartus Prime Edición estándar) • /gxb_tx.ip (Intel Quartus Prime Edición Pro) |
|
• /gxb_tx_fpll.qsys (Intel Quartus Prime Edición estándar) • /gxb_tx_fpll.ip (Intel Quartus Prime Edición Pro) |
|
• /gxb_tx_reset.qsys (Intel Quartus Prime Edición Estándar) • /gxb_tx_reset.ip (Intel Quartus Prime Edición Pro) |
|
hdmi_rx | •/hdmi_rx.qsys (Intel Quartus Prime Edición estándar) •/hdmi_rx.ip (Intel Quartus Prime Edición Pro) |
/hdmi_rx_top.v | |
/mr_clock_sync.v (Intel Quartus Prime Edición estándar) | |
/mr_hdmi_rx_core_top.v (Intel Quartus Prime Edición estándar) | |
/mr_rx_oversample.v (Intel Quartus Prime Edición estándar) | |
/symbol_aligner.v | |
Panasonic.hex (Intel Quartus Prime Pro Edición) | |
hdmi_tx | • /hdmi_tx.qsys (Intel Quartus Prime Edición estándar) •/hdmi_tx.ip (Intel Quartus Prime Edición Pro) |
/hdmi_tx_top.v | |
/mr_ce.v (Intel Quartus Prime Edición estándar) | |
/mr_hdmi_tx_core_top.v (Intel Quartus Prime Edición estándar) | |
/mr_tx_oversample.v (Intel Quartus Prime Edición estándar) | |
i2c_maestro
(Intel Quartus Prime edición estándar) |
/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 de tiempo.v | |
i2c_esclavo | /edid_ram.qsys (Intel Quartus Prime Edición estándar) |
/Panasonic.hex (Intel Quartus Prime Edición estándar) | |
/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 | |
por favor | • /pll_hdmi.qsys (Intel Quartus Prime Edición estándar) • /pll_hdmi.ip (Intel Quartus Prime Edición Pro) |
• /pll_hdmi_reconfig.qsys (Intel Quartus Prime Edición estándar) • /pll_hdmi_reconfig.ip (Intel Quartus Prime Edición Pro) |
|
quartus.ini | |
común | • /clock_control.qsys (Intel Quartus Prime Edición estándar) • /clock_control.ip (Intel Quartus Prime Pro Edición) |
• /fifo.qsys (Intel Quartus Prime Edición estándar) • /fifo.ip (Intel Quartus Prime Pro Edición) |
|
• /output_buf_i2c.qsys (Intel Quartus Prime Edición estándar) •/output_buf_i2c.ip (Intel Quartus Prime Pro Edición) |
|
/reset_controller.qsys (Intel Quartus Prime Edición estándar) | |
/reloj_crosser.v |
dcfifo_inst.v | |
debouncer.sv (Intel Quartus Prime Pro Edición) | |
HDR-10 | /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 | |
cosed | /a10_hdmi2.sdc |
/mr_reconfig_mgmt.sdc | |
/jtag.sdc | |
/rxtx_link.sdc | |
/mr_clock_sync.sdc (Intel Quartus Prime Edición estándar) |
Tabla 31. Simulación generada Files
Consulte la sección Banco de pruebas de simulación para obtener más información.
Carpetas | Files |
aldec | /aldec.do |
/rivierapro_setup.tcl | |
cadencia | /cds.lib |
/hdl.var | |
<carpeta 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 Edición Pro) |
/cds.lib |
/hdl.var | |
/xcelium_setup.sh | |
/xcelium_sim.sh | |
común
(Intel Quartus Prime Edición Pro) |
/modelsim_files.tcl |
/riviera_files.tcl | |
/vcs_files.tcl | |
/vcsmx_files.tcl | |
/xcelio_files.tcl | |
hdmi_rx | • /hdmi_rx.qsys (Intel Quartus Prime edición estándar) • /hdmi_rx.ip (Intel Quartus Prime Edición Pro) |
/hdmi_rx.sopcinfo (Intel Quartus Prime Edición estándar) | |
/Panasonic.hex (Intel Quartus Prime Pro Edición) | |
/symbol_aligner.v (Intel Quartus Prime Pro Edición) | |
hdmi_tx | • /hdmi_tx.qsys (Intel Quartus Prime Edición estándar) • /hdmi_tx.ip (Intel Quartus Prime Edición Pro) |
/hdmi_tx.sopcinfo (Intel Quartus Prime Edición estándar) |
Tabla 32. Software generado Files
Carpetas | Files |
tx_control_src Nota: La carpeta tx_control también contiene duplicados de estos files. |
/intel_fpga_i2c.c (Intel Quartus Prime Edición Pro) |
/intel_fpga_i2c.h (Intel Quartus Prime Edición Pro) | |
/i2c.c (Intel Quartus Prime Edición Estándar) | |
/i2c.h (Intel Quartus Prime Edición estándar) | |
/C Principal | |
/xcvr_gpll_rcfg.c /xcvr_gpll_rcfg.h /ti_i2c.c (Intel Quartus Prime Edición estándar) /ti_i2c.h (Intel Quartus Prime Edición estándar) |
3.4. Componentes de diseño
El diseño HDMI Intel FPGA IP example requiere estos componentes.
Tabla 33. Componentes superiores de HDMI RX
Módulo |
Descripción |
Núcleo HDMI RX | El IP recibe los datos en serie del transceptor Native PHY y realiza la alineación de datos, la alineación de canales, la decodificación TMDS, la decodificación de datos auxiliares, la decodificación de datos de video, la decodificación de datos de audio y la decodificación. |
I2 | I2C es la interfaz utilizada para el canal de datos de visualización del receptor (DDC) y el canal de datos y estado (SCDC). La fuente HDMI utiliza el DDC para determinar las capacidades y características del disipador mediante la lectura de la estructura de datos de datos de identificación de pantalla extendida mejorada (E-EDID). • Las direcciones esclavas I8C de 2 bits para E-EDID son 0xA0 y 0xA1. El LSB indica el tipo de acceso: 1 para lectura y 0 para escritura. Cuando ocurre un evento HPD, el esclavo I2C responde a los datos E-EDID leyendo de la RAM en el chip. • El controlador esclavo I2C también admite SCDC para operaciones HDMI 2.0. Las direcciones esclavas I8C de 2 bits para SCDC son 0xA8 y 0xA9. Cuando ocurre un evento HPD, el esclavo I2C realiza una transacción de escritura o lectura hacia o desde la interfaz SCDC del núcleo HDMI RX. Nota: Este controlador I2C esclavo solo para SCDC no es necesario si no se desea HDMI 2.0b. Si enciendes el Incluir I2C parámetro, este bloque se incluirá dentro del núcleo y no será visible en este nivel. |
RAM EDID | El diseño almacena la información EDID utilizando el núcleo IP de 1 puerto RAM. Un protocolo de bus serie estándar de dos cables (reloj y datos) (controlador solo esclavo I2C) transfiere la estructura de datos E-EDID compatible con CEA-861-D. Esta RAM EDID almacena la información E-EDID. Nota: Si enciendes el Incluye RAM EDID parámetro, este bloque se incluirá dentro del núcleo y no será visible en este nivel. |
IOPLL | El IOPLL genera el reloj de referencia RX CDR, el reloj de velocidad del enlace y el reloj de vídeo para el reloj TMDS entrante. • Reloj de salida 0 (reloj de referencia CDR) • Reloj de salida 1 (reloj de velocidad de enlace) • Reloj de salida 2 (reloj de vídeo) Nota: La configuración IOPLL predeterminada no es válida para ninguna resolución HDMI. El IOPLL se reconfigura con los ajustes apropiados al encenderse. |
Controlador de reinicio PHY del transceptor | El controlador de reinicio Transceiver PHY garantiza una inicialización confiable de los transceptores RX. La entrada de reinicio de este controlador se activa mediante la reconfiguración de RX y genera la señal de reinicio analógica y digital correspondiente al bloque PHY nativo del transceptor de acuerdo con la secuencia de reinicio dentro del bloque. |
PHY nativa de RX | Bloque transceptor duro que recibe los datos en serie de una fuente de video externa. Deserializa los datos en serie a datos paralelos antes de pasarlos al núcleo HDMI RX. |
Gestión de reconfiguración RX | Gestión de reconfiguración de RX que implementa circuitos de detección de velocidad con el PLL HDMI para hacer que el transceptor RX funcione a cualquier velocidad de enlace arbitraria que oscila entre 250 Mbps y 6,000 Mbps. Consulte la Figura 23 en la página 63 a continuación. |
Reconfiguración de IOPLL | El bloque de reconfiguración IOPLL facilita la reconfiguración dinámica en tiempo real de PLL en FPGA Intel. Este bloque actualiza la frecuencia del reloj de salida y el ancho de banda del PLL en tiempo real, sin reconfigurar toda la FPGA. Este bloque corre a 100 MHz en dispositivos Intel Arria 10. Debido a la limitación de reconfiguración de IOPLL, aplique Quartus INI permit_nf_pll_reconfig_out_of_lock=on durante la generación de IP de reconfiguración de IOPLL. Para aplicar Quartus INI, incluya "permit_nf_pll_reconfig_out_of_lock=on" en quartus.ini file y colocar en el file el directorio del proyecto Intel Quartus Prime. Debería ver un mensaje de advertencia cuando edite el bloque de reconfiguración IOPLL (pll_hdmi_reconfig) en el software Quartus Prime con el INI. Nota: Sin este Quartus INI, la reconfiguración de IOPLL no se puede completar si IOPLL pierde el bloqueo durante la reconfiguración. |
PIO | El bloque de entrada/salida paralela (PIO) funciona como interfaces de control, estado y reinicio hacia o desde el subsistema de la CPU. |
Figura 23. Flujo de secuencia de reconfiguración de múltiples velocidades
La figura ilustra el flujo de secuencia de reconfiguración de múltiples velocidades del controlador cuando recibe el flujo de datos de entrada y la frecuencia del reloj de referencia, o cuando el transceptor está desbloqueado.Tabla 34. Componentes superiores de HDMI TX
Módulo |
Descripción |
Núcleo HDMI TX | El núcleo IP recibe datos de video del nivel superior y realiza codificación TMDS, codificación de datos auxiliares, codificación de datos de audio, codificación de datos de video y codificación. |
Maestro I2C | I2C es la interfaz utilizada para el canal de datos de visualización del receptor (DDC) y el canal de datos y estado (SCDC). La fuente HDMI utiliza el DDC para determinar las capacidades y características del disipador mediante la lectura de la estructura de datos de datos de identificación de pantalla extendida mejorada (E-EDID). • Como DDC, I2C Master lee el EDID del disipador externo para configurar la información EDID EDID RAM en el HDMI RX Top o para el procesamiento de video. • Como SCDC, el maestro I2C transfiere la estructura de datos SCDC desde la fuente FPGA al disipador externo para operación HDMI 2.0b. por ejemploamparchivo, si el flujo de datos saliente está por encima de 3,400 Mbps, el procesador Nios II ordena al maestro I2C que actualice los bits TMDS_BIT_CLOCK_RATIO y SCRAMBLER_ENABLE del registro de configuración SCDC del sumidero a 1. |
IOPLL | El IOPLL proporciona el reloj de velocidad del enlace y el reloj de vídeo del reloj TMDS entrante. • Reloj de salida 1 (reloj de velocidad de enlace) • Reloj de salida 2 (reloj de vídeo) Nota: La configuración IOPLL predeterminada no es válida para ninguna resolución HDMI. El IOPLL se reconfigura con los ajustes apropiados al encenderse. |
Controlador de reinicio PHY del transceptor | El controlador de reinicio Transceiver PHY garantiza una inicialización confiable de los transceptores TX. La entrada de reinicio de este controlador se activa desde el nivel superior y genera la señal de reinicio analógica y digital correspondiente al bloque PHY nativo del transceptor de acuerdo con la secuencia de reinicio dentro del bloque. La señal de salida tx_ready de este bloque también funciona como una señal de reinicio para el HDMI Intel FPGA IP para indicar que el transceptor está en funcionamiento y listo para recibir datos del núcleo. |
Transceptor PHY nativo | Bloque transceptor duro que recibe los datos paralelos del núcleo HDMI TX y serializa los datos al transmitirlos. La interfaz de reconfiguración está habilitada en el bloque TX Native PHY para demostrar la conexión entre TX Native PHY y el árbitro del transceptor. No se realiza ninguna reconfiguración para TX Native PHY. Nota: Para cumplir con el requisito de inclinación entre canales HDMI TX, configure la opción de modo de enlace de canal TX en el editor de parámetros PHY nativo del transceptor Intel Arria 10 en Unión PMA y PCS. También debe agregar el requisito de restricción de inclinación máxima (set_max_skew) a la señal de reinicio digital del controlador de reinicio del transceptor (tx_digitalreset) como se recomienda en la Guía del usuario de PHY del transceptor Intel Arria 10. |
PLL TX | El bloque PLL del transmisor proporciona el reloj rápido en serie al bloque PHY nativo del transceptor. Para este diseño HDMI Intel FPGA IP examparchivo, fPLL se utiliza como TX PLL. |
Reconfiguración de IOPLL | El bloque de reconfiguración IOPLL facilita la reconfiguración dinámica en tiempo real de PLL en FPGA Intel. Este bloque actualiza la frecuencia del reloj de salida y el ancho de banda del PLL en tiempo real, sin reconfigurar toda la FPGA. Este bloque corre a 100 MHz en dispositivos Intel Arria 10. Debido a la limitación de reconfiguración de IOPLL, aplique Quartus INI permit_nf_pll_reconfig_out_of_lock=on durante la generación de IP de reconfiguración de IOPLL. Para aplicar Quartus INI, incluya "permit_nf_pll_reconfig_out_of_lock=on" en quartus.ini file y colocar en el file el directorio del proyecto Intel Quartus Prime. Debería ver un mensaje de advertencia cuando edite el bloque de reconfiguración IOPLL (pll_hdmi_reconfig) en el software Intel Quartus Prime con INI. Nota: Sin este Quartus INI, la reconfiguración de IOPLL no se puede completar si IOPLL pierde el bloqueo durante la reconfiguración. |
PIO | El bloque de entrada/salida paralela (PIO) funciona como interfaces de control, estado y reinicio hacia o desde el subsistema de la CPU. |
Tabla 35. Velocidad de datos del transceptor y excesosampFactor de ling para cada rango de frecuencia de reloj TMDS
Frecuencia de reloj TMDS (MHz) | Relación de reloj de bits TMDS | Oversampfactor de crecimiento | Velocidad de datos del transceptor (Mbps) |
85–150 | 1 | No aplicable | 3400–6000 |
100–340 | 0 | No 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 |
Tabla 36. Bloques comunes de nivel superior
Módulo |
Descripción |
Árbitro transceptor | Este bloque funcional genérico evita que los transceptores se recalibren simultáneamente cuando los transceptores RX o TX dentro del mismo canal físico requieren reconfiguración. La recalibración simultánea afecta las aplicaciones donde los transceptores RX y TX dentro del mismo canal están asignados a implementaciones IP independientes. Este árbitro transceptor es una extensión de la resolución recomendada para fusionar TX simple y RX simple en el mismo canal físico. Este árbitro de transceptor también ayuda a fusionar y arbitrar las solicitudes de reconfiguración de RX y TX de Avalon-MM dirigidas a transceptores RX y TX simplex dentro de un canal, ya que solo se puede acceder al puerto de interfaz de reconfiguración de los transceptores de forma secuencial. La conexión de interfaz entre el árbitro del transceptor y los bloques del controlador de reinicio PHY/PHY nativo TX/RX en este diseño es exampEl archivo demuestra un modo genérico que se aplica a cualquier combinación de IP utilizando el árbitro del transceptor. El árbitro del transceptor no es necesario cuando solo se utiliza el transceptor RX o TX en un canal. El árbitro del transceptor identifica al solicitante de una reconfiguración a través de sus interfaces de reconfiguración Avalon-MM y garantiza que el tx_reconfig_cal_busy o rx_reconfig_cal_busy correspondiente esté activado en consecuencia. Para la aplicación HDMI, solo RX inicia la reconfiguración. Al canalizar la solicitud de reconfiguración de Avalon-MM a través del árbitro, el árbitro identifica que la solicitud de reconfiguración se origina en el RX, que luego impide que tx_reconfig_cal_busy haga valer y permite que rx_reconfig_cal_busy haga valer. La activación evita que el transceptor TX se mueva involuntariamente al modo de calibración. |
Nota: Debido a que HDMI solo requiere la reconfiguración de RX, las señales tx_reconfig_mgmt_* están vinculadas. Además, no se requiere la interfaz Avalon-MM entre el árbitro y el bloque PHY nativo de TX. Los bloques se asignan a la interfaz en el diseño examparchivo para demostrar la conexión del árbitro transceptor genérico al controlador de reinicio PHY/PHY nativo TX/RX. | |
Enlace RX-TX | • La salida de datos de vídeo y las señales de sincronización del núcleo HDMI RX pasan por un DCFIFO a través de los dominios de reloj de vídeo RX y TX. • El paquete de control general (GCP), InfoFrames (AVI, VSI y AI), datos auxiliares y datos de audio circulan a través de DCFIFO a través de los dominios de velocidad de reloj de enlace RX y TX. • El puerto de datos auxiliar del núcleo HDMI TX controla los datos auxiliares que fluyen a través del DCFIFO a través de contrapresión. La contrapresión garantiza que no haya ningún paquete auxiliar incompleto en el puerto de datos auxiliar. • Este bloque también realiza filtrado externo: — Filtra los datos de audio y el paquete de regeneración del reloj de audio del flujo de datos auxiliar antes de transmitir al puerto de datos auxiliar del núcleo HDMI TX. Nota: Para desactivar este filtrado, presione user_pb[2]. Habilite este filtrado para garantizar que no haya duplicación de datos de audio y paquetes de regeneración de reloj de audio en el flujo de datos auxiliar retransmitido. — Filtra el InfoFrame de alto rango dinámico (HDR) de los datos auxiliares HDMI RX e inserta un example HDR InfoFrame a los datos auxiliares del HDMI TX a través del multiplexor Avalon ST. |
Subsistema de CPU | El subsistema de CPU funciona como controladores SCDC y DDC, y como controlador de reconfiguración de origen. • El controlador SCDC de origen contiene el controlador maestro I2C. El controlador maestro I2C transfiere la estructura de datos SCDC desde la fuente FPGA al disipador externo para el funcionamiento HDMI 2.0b. por ejemploamparchivo, si el flujo de datos saliente es de 6,000 Mbps, el procesador Nios II ordena al controlador maestro I2C que actualice los bits TMDS_BIT_CLOCK_RATIO y SCRAMBLER_ENABLE del registro de configuración TMDS del sumidero a 1. • El mismo maestro I2C también transfiere la estructura de datos DDC (E-EDID) entre la fuente HDMI y el receptor externo. • La CPU Nios II actúa como controlador de reconfiguración para la fuente HDMI. La CPU depende de la detección de velocidad periódica del módulo de gestión de reconfiguración de RX para determinar si el TX requiere reconfiguración. El traductor esclavo Avalon-MM proporciona la interfaz entre la interfaz maestra Avalon-MM del procesador Nios II y las interfaces esclavas Avalon-MM del IOPLL y TX Native PHY de la fuente HDMI instanciada externamente. • El flujo de secuencia de reconfiguración para TX es el mismo que para RX, excepto que la reconfiguración del PLL y del transceptor y la secuencia de reinicio se realizan de forma secuencial. Consulte la Figura 24 en la página 67. |
Figura 24. Flujo de secuencia de reconfiguración
La figura ilustra el flujo del software Nios II que involucra los controles para el maestro I2C y la fuente HDMI.3.5. Inserción y filtrado de InfoFrames de rango dinámico y masterización (HDR)
El diseño HDMI Intel FPGA IP exampEl archivo incluye una demostración de la inserción de HDR InfoFrame en un sistema loopback RX-TX.
La versión 2.0b de la especificación HDMI permite transmitir Dynamic Range y Mastering InfoFrame a través de una transmisión auxiliar HDMI. En la demostración, el bloque de inserción de datos auxiliares admite la inserción HDR. Solo necesita formatear el paquete HDR InfoFrame deseado como se especifica en la tabla de lista de señales del módulo y usar el módulo de control de inserción AUX proporcionado para programar la inserción del HDR InfoFrame una vez en cada cuadro de video.
En este exampEn la configuración, en los casos en los que la transmisión auxiliar entrante ya incluye HDR InfoFrame, el contenido HDR transmitido se filtra. El filtrado evita que se transmitan InfoFrames HDR conflictivos y garantiza que solo los valores especificados en HDR Sampse utiliza el módulo de datos.
Figura 25. Enlace RX-TX con rango dinámico y dominio de la inserción de InfoFrame
La figura muestra el diagrama de bloques del enlace RX-TX, incluido el rango dinámico y la inserción de Mastering InfoFrame en el flujo auxiliar del núcleo HDMI TX.
Tabla 37. Señales del bloque de inserción de datos auxiliares (altera_hdmi_aux_hdr)
Señal | Dirección | Ancho |
Descripción |
Reloj y reinicio | |||
Clic | Aporte | 1 | Entrada de reloj. Este reloj debe estar conectado al reloj de velocidad del enlace. |
reiniciar | Aporte | 1 | Restablecer entrada. |
Generador de paquetes auxiliar y señales multiplexoras | |||
multiplexor_out_data | Producción | 72 | Salida de streaming de Avalon desde el multiplexor. |
multiplexor_out_valid | Producción | 1 | |
multiplexor_out_ready | Producción | 1 | |
multiplexor_out_startofpacket | Producción | 1 | |
multiplexor_out_endofpacket | Producción | 1 | |
canal_salida_multiplexor | Producción | 11 | |
multiplexor_en_datos | Aporte | 72 | Entrada de streaming de Avalon al puerto In1 del multiplexor. HDMI TX Vídeo Vsync. Esta señal debe sincronizarse con el dominio del reloj de velocidad del enlace. El núcleo inserta el InfoFrame HDR en el flujo auxiliar en el flanco ascendente de esta señal. |
multiplexor_en_valido | Aporte | 1 | |
multiplexor_en_listo | Aporte | 1 | |
multiplexor_en_iniciodelpaquete | Aporte | 1 | |
multiplexor_en_endofpacket hdmi_tx_vsync |
Aporte Aporte |
1 1 |
Tabla 38. Señales del módulo de datos HDR (altera_hdmi_hdr_infoframe)
Señal | Dirección | Ancho |
Descripción |
hb0 | Producción | 8 | Byte de encabezado 0 del InfoFrame de rango dinámico y masterización: código de tipo InfoFrame. |
hb1 | Producción | 8 | Byte 1 del encabezado del InfoFrame de rango dinámico y masterización: número de versión del InfoFrame. |
hb2 | Producción | 8 | Byte de encabezado 2 del InfoFrame de rango dinámico y masterización: Longitud del InfoFrame. |
pb | Aporte | 224 | Byte de datos del InfoFrame de rango dinámico y masterización. |
Tabla 39. Campos de bits del paquete de bytes de datos de InfoFrame de dominio y rango dinámico
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: Static_Metadata_Descriptor | display_primaries_x[0], LSB |
31:24 | Byte de datos 4: Static_Metadata_Descriptor | display_primaries_x[0], MSB |
39:32 | Byte de datos 5: Static_Metadata_Descriptor | display_primaries_y[0], LSB |
47:40 | Byte de datos 6: Static_Metadata_Descriptor | display_primaries_y[0], MSB |
55:48 | Byte de datos 7: Static_Metadata_Descriptor | display_primaries_x[1], LSB |
63:56 | Byte de datos 8: Static_Metadata_Descriptor | display_primaries_x[1], MSB |
71:64 | Byte de datos 9: Static_Metadata_Descriptor | display_primaries_y[1], LSB |
79:72 | Byte de datos 10: Static_Metadata_Descriptor | display_primaries_y[1], MSB |
87:80 | Byte de datos 11: Static_Metadata_Descriptor | display_primaries_x[2], LSB |
95:88 | Byte de datos 12: Static_Metadata_Descriptor | display_primaries_x[2], MSB |
103:96 | Byte de datos 13: Static_Metadata_Descriptor | display_primaries_y[2], LSB |
111:104 | Byte de datos 14: Static_Metadata_Descriptor | display_primaries_y[2], MSB |
119:112 | Byte de datos 15: Static_Metadata_Descriptor | punto_blanco_x, LSB |
127:120 | Byte de datos 16: Static_Metadata_Descriptor | punto_blanco_x, MSB |
135:128 | Byte de datos 17: Static_Metadata_Descriptor | punto_blanco_y, LSB |
143:136 | Byte de datos 18: Static_Metadata_Descriptor | punto_blanco_y, MSB |
151:144 | Byte de datos 19: Static_Metadata_Descriptor | max_display_mastering_luminance, LSB |
159:152 | Byte de datos 20: Static_Metadata_Descriptor | max_display_mastering_luminance, MSB |
167:160 | Byte de datos 21: Static_Metadata_Descriptor | min_display_mastering_luminance, LSB |
175:168 | Byte de datos 22: Static_Metadata_Descriptor | min_display_mastering_luminance, MSB |
183:176 | Byte de datos 23: Static_Metadata_Descriptor | Nivel de luz de contenido máximo, LSB |
191:184 | Byte de datos 24: Static_Metadata_Descriptor | Nivel de luz de contenido máximo, MSB |
199:192 | Byte de datos 25: Static_Metadata_Descriptor | Nivel de luz máximo promedio del cuadro, LSB |
207:200 | Byte de datos 26: Static_Metadata_Descriptor | Nivel de luz máximo promedio de fotograma, MSB |
215:208 | Reservado | |
223:216 | Reservado |
Deshabilitar la inserción y el filtrado HDR
Desactivar la inserción y el filtro HDR le permite verificar la retransmisión del contenido HDR ya disponible en el flujo auxiliar de origen sin ninguna modificación en el diseño de retransmisión RX-TX ex.ampel.
Para deshabilitar la inserción y el filtrado de HDR InfoFrame:
- Establezca block_ext_hdr_infoframe en 1'b0 en rxtx_link.v file para evitar el filtrado del InfoFrame HDR de la secuencia auxiliar.
- Establezca multiplexer_in0_valid de la instancia avalon_st_multiplexer en altera_hdmi_aux_hdr.v file a 1'b0 para evitar que el Generador de paquetes auxiliares forme e inserte InfoFrame HDR adicional en la secuencia auxiliar de TX.
3.6. Esquema de reloj
El esquema de sincronización ilustra los dominios de reloj en el diseño HDMI Intel FPGA IP ex.ampel.
Figura 26. Diseño Ex HDMI Intel FPGA IPampel esquema de sincronización (Intel Quartus Prime Pro Edition)Figura 27. Diseño Ex HDMI Intel FPGA IPampel esquema de sincronización (Intel Quartus Prime Standard Edition)
Tabla 40. Señales del esquema de reloj
Reloj | Nombre de la señal en diseño |
Descripción |
TX IOPLL/ TX PLL Reloj de referencia 1 | hdmi_clk_in | Reloj de referencia al TX IOPLL y TX PLL. La frecuencia del reloj es la misma que la frecuencia del reloj TMDS esperada del canal de reloj HDMI TX TMDS. Para este diseño HDMI Intel FPGA IP examparchivo, este reloj está conectado al reloj RX TMDS con fines de demostración. En su aplicación, necesita proporcionar un reloj dedicado con frecuencia de reloj TMDS desde un oscilador programable para un mejor rendimiento de fluctuación. Nota: No utilice un pin RX del transceptor como reloj de referencia TX PLL. Su diseño no encajará si coloca el conector HDMI TX en un pin RX. |
Salida del transceptor TX | tx_clk | El reloj se recupera del transceptor y la frecuencia varía según la velocidad de datos y los símbolos por reloj. Frecuencia de salida del transceptor TX = Velocidad de datos del transceptor/ (Símbolo por reloj*10) |
Reloj serie TX PLL | tx_bonding_clocks | Reloj rápido en serie generado por TX PLL. La frecuencia del reloj se establece en función de la velocidad de datos. |
Reloj de velocidad del enlace TX/RX | ls_clk | Reloj de velocidad de enlace. La frecuencia del reloj de velocidad del enlace depende de la frecuencia del reloj TMDS esperada, en exceso.ampfactor de ling, símbolos por reloj y relación de reloj de bits TMDS. |
Relación de reloj de bits TMDS | Velocidad del enlace Frecuencia del reloj | ||
0 | Frecuencia de reloj TMDS/Símbolo por reloj | ||
1 | Frecuencia de reloj TMDS *4 / Símbolo por reloj | ||
Reloj de vídeo TX/RX | vid_clk | Reloj de datos de vídeo. La frecuencia del reloj de datos de vídeo se deriva del reloj de velocidad del enlace TX en función de la profundidad del color. | |
Relación de reloj de bits TMDS | Frecuencia del reloj de datos de vídeo | ||
0 | Reloj TMDS/Símbolo por reloj/Factor de profundidad de color | ||
1 | Reloj TMDS *4 / Símbolo por reloj/ Factor de profundidad de color | ||
Bits por color | Factor de profundidad de color | ||
8 | 1 | ||
10 | 1.25 | ||
12 | 1.5 | ||
16 | 2.0 | ||
RX TMDS Reloj | tmds_clk_in | Canal de reloj TMDS desde HDMI RX y se conecta al reloj de referencia al IOPLL. | |
Reloj de referencia RX CDR 0 / Reloj de referencia TX PLL 0 | fr_clk | Reloj de referencia de funcionamiento libre para RX CDR y TX PLL. Este reloj es necesario para la calibración del encendido. | |
Reloj de referencia RX CDR 1 | iopll_outclk0 | Reloj de referencia al RX CDR del transceptor RX. | |
Velocidad de datos | Frecuencia de reloj de referencia RX | ||
Velocidad de datos <1 Gbps | 5× frecuencia de reloj TMDS | ||
1 Gbps < velocidad de datos
<3.4 Gb/s |
Frecuencia de reloj TMDS | ||
Velocidad de datos >3.4 Gbps | 4× frecuencia de reloj TMDS | ||
• Velocidad de datos <1 Gbps: para oversampling para cumplir con el requisito mínimo de velocidad de datos del transceptor. • Velocidad de datos >3.4 Gbps: Para compensar la velocidad de bits de TMDS a la relación de reloj de 1/40 para mantener la velocidad de datos del transceptor a la relación de reloj en 1/10. Nota: No utilice un pin RX del transceptor como reloj de referencia de CDR. Su diseño no encajará si coloca el conector HDMI RX en un pin RX. |
|||
Salida del reloj del transceptor RX | rx_clk | El reloj se recupera del transceptor y la frecuencia varía según la velocidad de datos y los símbolos por reloj.
Frecuencia de salida del reloj del transceptor RX = Velocidad de datos del transceptor/ (Símbolo por reloj*10) |
|
Reloj de gestión | mgmt_clk | Un reloj de 100 MHz de funcionamiento gratuito para estos componentes: |
• Interfaces Avalon-MM para reconfiguración — El requisito de rango de frecuencia está entre 100 y 125 MHz. •, controlador de reinicio PHY para secuencia de reinicio del transceptor — El requisito de rango de frecuencia está entre 1 y 500 MHz. • Reconfiguración de IOPLL — La frecuencia máxima de reloj es 100 MHz. • Reconfiguración RX para gestión • UPC • Maestro I2C |
||
Reloj I2C | i2c_clk | Una entrada de reloj de 100 MHz que sincroniza el esclavo I2C, los registros SCDC en el núcleo HDMI RX y la RAM EDID. |
Información relacionada
- Uso del pin RX del transceptor como reloj de referencia de CDR
- Uso del pin RX del transceptor como reloj de referencia TX PLL
3.7. Señales de interfaz
Las tablas enumeran las señales para el diseño HDMI Intel FPGA IP exampel.
Tabla 41. Señales de nivel superior
Señal | Dirección | Ancho |
Descripción |
Señal del oscilador integrado | |||
clk_fpga_b3_p | Aporte | 1 | Reloj de funcionamiento libre de 100 MHz para el reloj de referencia central |
REFCLK_FMCB_P (Intel Quartus Prime Edición Pro) | Aporte | 1 | Reloj de funcionamiento libre de 625 MHz para el reloj de referencia del transceptor; este reloj puede ser de cualquier frecuencia |
Botones pulsadores y LED de usuario | |||
usuario_pb | Aporte | 1 | Pulsador para controlar la funcionalidad de diseño HDMI Intel FPGA IP |
cpu_resetn | Aporte | 1 | Restablecimiento global |
usuario_led_g | Producción | 4 | Pantalla LED verde Consulte Configuración del hardware en la página 89 para obtener más información sobre las funciones de los LED. |
usuario_led_r | Producción | 4 | Pantalla LED roja Consulte Configuración del hardware en la página 89 para obtener más información sobre las funciones de los LED. |
Pines de la tarjeta secundaria HDMI FMC en el puerto B de FMC | |||
fmcb_gbtclk_m2c_p_0 | Aporte | 1 | Reloj HDMI RX TMDS |
fmcb_dp_m2c_p | Aporte | 3 | Canales de datos HDMI RX rojo, verde y azul • Tarjeta hija Bitec revisión 11 — [0]: RX TMDS Canal 1 (verde) — [1]: RX TMDS Canal 2 (rojo) — [2]: RX TMDS Canal 0 (Azul) • Tarjeta hija Bitec revisión 4 o 6 — [0]: RX TMDS Canal 1 (verde): polaridad invertida — [1]: RX TMDS Canal 0 (Azul): polaridad invertida — [2]: RX TMDS Canal 2 (rojo): polaridad invertida |
fmcb_dp_c2m_p | Producción | 4 | Reloj HDMI TX, canales de datos rojo, verde y azul • Tarjeta hija Bitec revisión 11 — [0]: TX TMDS Canal 2 (rojo) — [1]: TX TMDS Canal 1 (verde) — [2]: TX TMDS Canal 0 (Azul) — [3]: Canal de reloj TX TMDS • Tarjeta hija Bitec revisión 4 o 6 — [0]: Canal de reloj TX TMDS — [1]: TX TMDS Canal 0 (Azul) — [2]: TX TMDS Canal 1 (verde) — [3]: TX TMDS Canal 2 (rojo) |
fmcb_la_rx_p_9 | Aporte | 1 | Detección de potencia HDMI RX +5V |
fmcb_la_rx_p_8 | Dentro y fuera | 1 | Detección de conexión en caliente HDMI RX |
fmcb_la_rx_n_8 | Dentro y fuera | 1 | HDMI RX I2C SDA para DDC y SCDC |
fmcb_la_tx_p_10 | Aporte | 1 | HDMI RX I2C SCL para DDC y SCDC |
fmcb_la_tx_p_12 | Aporte | 1 | Detección de conexión en caliente HDMI TX |
fmcb_la_tx_n_12 | Dentro y fuera | 1 | HDMI I2C SDA para DDC y SCDC |
fmcb_la_rx_p_10 | Dentro y fuera | 1 | HDMI I2C SCL para DDC y SCDC |
fmcb_la_tx_p_11 | Dentro y fuera | 1 | HDMI I2C SDA para control de redriver |
fmcb_la_rx_n_9 | Dentro y fuera | 1 | HDMI I2C SCL para control de redriver |
Tabla 42. Señales de nivel superior HDMI RX
Señal | Dirección | Ancho |
Descripción |
Señales de reloj y reinicio | |||
mgmt_clk | Aporte | 1 | Entrada de reloj del sistema (100 MHz) |
fr_clk (Intel Quartus Prime Edición Pro) | Aporte | 1 | Reloj de funcionamiento libre (625 MHz) para el reloj de referencia del transceptor primario. Este reloj es necesario para la calibración del transceptor durante el estado de encendido. Este reloj puede ser de cualquier frecuencia. |
reiniciar | Aporte | 1 | Entrada de reinicio del sistema |
Señal |
Dirección | Ancho |
Descripción |
Señales de reloj y reinicio | |||
reset_xcvr_powerup (Intel Quartus Prime Pro Edición) | Aporte | 1 | Entrada de reinicio del transceptor. Esta señal se afirma durante el proceso de conmutación de los relojes de referencia (del reloj de funcionamiento libre al reloj TMDS) en el estado de encendido. |
tmds_clk_in | Aporte | 1 | Reloj HDMI RX TMDS |
i2c_clk | Aporte | 1 | Entrada de reloj para interfaz DDC y SCDC |
vid_clk_out | Producción | 1 | Salida de reloj de vídeo |
ls_clk_out | Producción | 1 | Salida de reloj de velocidad de enlace |
inicio_del_sistema | Producción | 1 | Inicialización del sistema para restablecer el sistema al encenderlo |
Transceptor RX y señales IOPLL | |||
rx_serial_data | Aporte | 3 | Datos serie HDMI al RX Native PHY |
gxb_rx_ready | Producción | 1 | Indica que RX Native PHY está listo |
gxb_rx_cal_busy_out | Producción | 3 | Calibración RX Native PHY ocupada para el árbitro del transceptor |
gxb_rx_cal_busy_in | Aporte | 3 | Señal de calibración ocupada desde el árbitro del transceptor al RX Native PHY |
iopll_bloqueado | Producción | 1 | Indica que IOPLL está bloqueado |
gxb_reconfig_write | Aporte | 3 | Reconfiguración del transceptor Interfaz Avalon-MM desde RX Native PHY al árbitro del transceptor |
gxb_reconfig_read | Aporte | 3 | |
gxb_reconfig_address | Aporte | 30 | |
gxb_reconfig_writedata | Aporte | 96 | |
gxb_reconfig_readdata | Producción | 96 | |
gxb_reconfig_waitrequest | Producción | 3 |
Gestión de reconfiguración RX | |||
rx_reconfig_en | Producción | 1 | La reconfiguración RX habilita la señal |
medida | Producción | 24 | Medición de frecuencia de reloj HDMI RX TMDS (en 10 ms) |
medida_valida | Producción | 1 | Indica que la señal de medida es válida. |
os | Producción | 1 | Oversampfactor de ling: • 0: Sin excesosampabadejo • 1: 5× oversampabadejo |
reconfig_mgmt_write | Producción | 1 | Gestión de reconfiguración de RX Interfaz asignada en memoria de Avalon al árbitro del transceptor |
reconfig_mgmt_read | Producción | 1 | |
dirección_reconfig_mgmt_address | Producción | 12 |
reconfig_mgmt_writedata | Producción | 32 | |
reconfig_mgmt_readdata | Aporte | 32 | |
reconfig_mgmt_waitrequest | Aporte | 1 |
Señales de núcleo HDMI RX | |||
TMDS_Bit_clock_Ratio | Producción | 1 | Interfaces de registro SCDC |
audio_de | Producción | 1 | Interfaces de audio con núcleo HDMI RX Consulte la sección Interfaces de disipador en la Guía del usuario de HDMI Intel FPGA IP para obtener más información. |
datos_de_audio | Producción | 256 | |
audio_info_ai | Producción | 48 | |
audio_N | Producción | 20 | |
audio_CTS | Producción | 20 | |
metadatos_audio | Producción | 165 | |
formato de audio | Producción | 5 | |
aux_pkt_data | Producción | 72 | Interfaces auxiliares del núcleo HDMI RX Consulte la sección Interfaces de disipador en la Guía del usuario de HDMI Intel FPGA IP para obtener más información. |
aux_pkt_addr | Producción | 6 | |
aux_pkt_wr | Producción | 1 | |
datos_auxiliares | Producción | 72 | |
auxiliar_sop | Producción | 1 | |
aux_eop | Producción | 1 | |
aux_válido | Producción | 1 | |
error_auxiliar | Producción | 1 | |
PCG | Producción | 6 | Señales de banda lateral del núcleo HDMI RX Consulte la sección Interfaces de disipador en la Guía del usuario de HDMI Intel FPGA IP para obtener más información. |
info_avi | Producción | 112 | |
info_vsi | Producción | 61 | |
profundidad de color_mgmt_sync | Producción | 2 | |
datos_vid | Producción | N*48 | Puertos de vídeo del núcleo HDMI RX No diez = símbolos por reloj Consulte la Interfaces de fregadero sección en el Guía del usuario de HDMI Intel FPGA IP Para más información. |
vid_vsync | Producción | N | |
vid_hsync | Producción | N | |
vid_de | Producción | N | |
modo | Producción | 1 | Puertos de estado y control del núcleo HDMI RX No diez = símbolos por reloj Consulte la Interfaces de fregadero sección en el Guía del usuario de HDMI Intel FPGA IP Para más información. |
control | Producción | N*6 | |
bloqueado | Producción | 3 | |
bloqueo_vidrio | Producción | 1 | |
potencia_5v | Aporte | 1 | Detección HDMI RX 5V y detección de conexión en caliente Consulte la Interfaces de fregadero sección en el Guía del usuario de HDMI Intel FPGA IP Para más información. |
hdmi_rx_hpd_n | Dentro y fuera | 1 |
hdmi_rx_i2c_sda | Dentro y fuera | 1 | Interfaz HDMI RX DDC y SCDC |
hdmi_rx_i2c_scl | Dentro y fuera | 1 |
Señales de RAM RX EDID | |||
edit_ram_acceso | Aporte | 1 | Interfaz de acceso a RAM HDMI RX EDID. Afirme edid_ram_access cuando desee escribir o leer desde la RAM EDID; de lo contrario, esta señal debe mantenerse baja. |
dirección_edid_ram | Aporte | 8 | |
edit_ram_write | Aporte | 1 | |
edit_ram_read | Aporte | 1 | |
edit_ram_readdata | Producción | 8 | |
edit_ram_writedata | Aporte | 8 | |
edit_ram_waitrequest | Producción | 1 |
Tabla 43. Señales de nivel superior HDMI TX
Señal | Dirección | Ancho | Descripción |
Señales de reloj y reinicio | |||
mgmt_clk | Aporte | 1 | Entrada de reloj del sistema (100 MHz) |
fr_clk (Intel Quartus Prime Edición Pro) | Aporte | 1 | Reloj de funcionamiento libre (625 MHz) para el reloj de referencia del transceptor primario. Este reloj es necesario para la calibración del transceptor durante el estado de encendido. Este reloj puede ser de cualquier frecuencia. |
reiniciar | Aporte | 1 | Entrada de reinicio del sistema |
hdmi_clk_in | Aporte | 1 | Reloj de referencia para TX IOPLL y TX PLL. La frecuencia del reloj es la misma que la frecuencia del reloj TMDS. |
vid_clk_out | Producción | 1 | Salida de reloj de vídeo |
ls_clk_out | Producción | 1 | Salida de reloj de velocidad de enlace |
inicio_del_sistema | Producción | 1 | Inicialización del sistema para restablecer el sistema al encenderlo |
restablecer_xcvr | Aporte | 1 | Restablecer al transceptor TX |
restablecer_pll | Aporte | 1 | Restablecer a IOPLL y TX PLL |
reset_pll_reconfig | Producción | 1 | Restablecer la reconfiguración de PLL |
Transceptor TX y señales IOPLL | |||
tx_serial_data | Producción | 4 | Datos serie HDMI del TX Native PHY |
gxb_tx_ready | Producción | 1 | Indica que TX Native PHY está listo |
gxb_tx_cal_busy_out | Producción | 4 | TX Señal de ocupado de calibración PHY nativa al árbitro del transceptor |
gxb_tx_cal_busy_in | Aporte | 4 | Señal de calibración ocupada desde el árbitro del transceptor al TX Native PHY |
Transceptor TX y señales IOPLL | |||
iopll_bloqueado | Producción | 1 | Indica que IOPLL está bloqueado |
txpll_locked | Producción | 1 | Indica que TX PLL está bloqueado |
gxb_reconfig_write | Aporte | 4 | Reconfiguración del transceptor Interfaz asignada en memoria de Avalon desde el PHY nativo de TX al árbitro del transceptor |
gxb_reconfig_read | Aporte | 4 | |
gxb_reconfig_address | Aporte | 40 | |
gxb_reconfig_writedata | Aporte | 128 | |
gxb_reconfig_readdata | Producción | 128 | |
gxb_reconfig_waitrequest | Producción | 4 |
Señales de reconfiguración TX IOPLL y TX PLL | |||
pll_reconfig_write/ tx_pll_reconfig_write | Aporte | 1 | Reconfiguración de TX IOPLL/TX PLL Interfaces asignadas en memoria de Avalon |
pll_reconfig_read/ tx_pll_reconfig_read | Aporte | 1 | |
pll_reconfig_address/ tx_pll_reconfig_address | Aporte | 10 | |
pll_reconfig_writedata/ tx_pll_reconfig_writedata | Aporte | 32 | |
pll_reconfig_readdata/ tx_pll_reconfig_readdata | Producción | 32 | |
pll_reconfig_waitrequest/ tx_pll_reconfig_waitrequest | Producción | 1 | |
os | Aporte | 2 | Oversampfactor de ling: • 0: Sin excesosampabadejo • 1: 3× oversampabadejo • 2: 4× oversampabadejo • 3: 5× oversampabadejo |
medida | Aporte | 24 | Indica la frecuencia de reloj TMDS de la resolución de vídeo de transmisión. |
Señales principales HDMI TX | |||
control | Aporte | 6*N | Interfaces de control del núcleo HDMI TX No diez = Símbolos por reloj Consulte la sección Interfaces de origen en la HDMI Guía del usuario de Intel FPGA IP para obtener más información. |
modo | Aporte | 1 | |
TMDS_Bit_clock_Ratio | Aporte | 1 | SCInterfaces de registro DC
Consulte la sección Interfaces de origen en la Guía del usuario de HDMI Intel FPGA IP para obtener más información. |
Scrambler_Enable | Aporte | 1 | |
audio_de | Aporte | 1 | Interfaces de audio con núcleo HDMI TX
Consulte la Interfaces de origen sección en el Guía del usuario de HDMI Intel FPGA IP Para más información. |
audio_mute | Aporte | 1 | |
datos_de_audio | Aporte | 256 | |
continuado… |
Señales principales HDMI TX | |||
audio_info_ai | Aporte | 49 | |
audio_N | Aporte | 22 | |
audio_CTS | Aporte | 22 | |
metadatos_audio | Aporte | 166 | |
formato de audio | Aporte | 5 | |
i2c_master_write | Aporte | 1 | TX I2C master Interfaz asignada en memoria de Avalon al maestro I2C dentro del núcleo TX. Nota: Estas señales están disponibles sólo cuando enciende el Incluir I2C parámetro. |
i2c_master_read | Aporte | 1 | |
i2c_master_address | Aporte | 4 | |
i2c_master_writedata | Aporte | 32 | |
i2c_master_readdata | Producción | 32 | |
auxiliar_listo | Producción | 1 | Interfaces auxiliares del núcleo HDMI TX
Consulte la sección Interfaces de origen en la Guía del usuario de HDMI Intel FPGA IP para obtener más información. |
datos_auxiliares | Aporte | 72 | |
auxiliar_sop | Aporte | 1 | |
aux_eop | Aporte | 1 | |
aux_válido | Aporte | 1 | |
PCG | Aporte | 6 | Señales de banda lateral del núcleo HDMI TX Consulte la sección Interfaces de origen en la Guía del usuario de HDMI Intel FPGA IP para obtener más información. |
info_avi | Aporte | 113 | |
info_vsi | Aporte | 62 | |
datos_vid | Aporte | N*48 | Puertos de vídeo principales HDMI TX Nota: N = símbolos por reloj Consulte la sección Interfaces de origen en la Guía del usuario de HDMI Intel FPGA IP para obtener más información. |
vid_vsync | Aporte | N | |
vid_hsync | Aporte | N | |
vid_de | Aporte | N |
I2Señales de detección de conexión en caliente y C | |||
nios_tx_i2c_sda_in (Intel Quartus Prime Edición Pro) Nota: Cuando enciendes el Incluir I2C parámetro, esta señal se coloca en el núcleo TX y no será visible en este nivel. |
Producción | 1 | Interfaces asignadas en memoria I2C Master Avalon |
nios_tx_i2c_scl_in (Intel Quartus Prime Edición Pro) Nota: Cuando enciendes el Incluir I2C parámetro, esta señal se coloca en el núcleo TX y no será visible en este nivel. |
Producción | 1 | |
nios_tx_i2c_sda_oe (Intel Quartus Prime Edición Pro) Nota: Cuando enciendes el Incluir I2C parámetro, esta señal se coloca en el núcleo TX y no será visible en este nivel. |
Aporte | 1 | |
continuado… |
I2Señales de detección de conexión en caliente y C | |||
nios_tx_i2c_scl_oe (Intel Quartus Prime Edición Pro) Nota: Cuando enciendes el Incluir I2C parámetro, esta señal se coloca en el núcleo TX y no será visible en este nivel. |
Aporte | 1 | |
nios_ti_i2c_sda_in (Intel Quartus Prime Edición Pro) | Producción | 1 | |
nios_ti_i2c_scl_in (Intel Quartus Prime Edición Pro) | Producción | 1 | |
nios_ti_i2c_sda_oe (Intel Quartus Prime Edición Pro) | Aporte | 1 | |
nios_ti_i2c_scl_oe (Intel Quartus Prime Edición Pro) | Aporte | 1 | |
hdmi_tx_i2c_sda | Dentro y fuera | 1 | Interfaces HDMI TX DDC y SCDC |
hdmi_tx_i2c_scl | Dentro y fuera | 1 | |
hdmi_ti_i2c_sda (Intel Quartus Prime Edición Pro) | Dentro y fuera | 1 | Interfaz I2C para tarjeta secundaria Bitec Revisión 11 Control TI181 |
hdmi_tx_ti_i2c_sda (Intel Quartus Prime edición estándar) | Dentro y fuera | 1 | |
hdmi_ti_i2c_scl (Intel Quartus Prime Edición Pro) | Dentro y fuera | 1 | |
hdmi_tx_ti_i2c_scl (Intel Quartus Prime edición estándar) | Dentro y fuera | 1 | |
tx_i2c_avalon_waitrequest | Producción | 1 | Interfaces Avalon asignadas en memoria del maestro I2C |
tx_i2c_avalon_address (Intel Quartus Prime Edición estándar) | Aporte | 3 | |
tx_i2c_avalon_writedata (Intel Quartus Prime Edición estándar) | Aporte | 8 | |
tx_i2c_avalon_readdata (Intel Quartus Prime Edición estándar) | Producción | 8 | |
tx_i2c_avalon_chipselect (Intel Quartus Prime Edición estándar) | Aporte | 1 | |
tx_i2c_avalon_write (Intel Quartus Prime Edición estándar) | Aporte | 1 | |
tx_i2c_irq (Intel Quartus Prime Edición estándar) | Producción | 1 | |
tx_ti_i2c_avalon_waitrequest
(Intel Quartus Prime edición estándar) |
Producción | 1 | |
tx_ti_i2c_avalon_address (Intel Quartus Prime Edición estándar) | Aporte | 3 | |
tx_ti_i2c_avalon_writedata (Intel Quartus Prime Edición estándar) | Aporte | 8 | |
tx_ti_i2c_avalon_readdata (Intel Quartus Prime Edición estándar) | Producción | 8 | |
continuado… |
I2Señales de detección de conexión en caliente y C | |||
tx_ti_i2c_avalon_chipselect (Intel Quartus Prime Edición estándar) | Aporte | 1 | |
tx_ti_i2c_avalon_write (Intel Quartus Prime Edición estándar) | Aporte | 1 | |
tx_ti_i2c_irq (Intel Quartus Prime Edición estándar) | Producción | 1 | |
hdmi_tx_hpd_n | Aporte | 1 | Interfaces de detección de conexión en caliente HDMI TX |
tx_hpd_ack | Aporte | 1 | |
tx_hpd_req | Producción | 1 |
Tabla 44. Señales del árbitro del transceptor
Señal | Dirección | Ancho | Descripción |
Clic | Aporte | 1 | Reloj de reconfiguración. Este reloj debe compartir el mismo reloj con los bloques de gestión de reconfiguración. |
reiniciar | Aporte | 1 | Restablecer señal. Este reset debe compartir el mismo reset con los bloques de gestión de reconfiguración. |
rx_rcfg_en | Aporte | 1 | Señal de habilitación de reconfiguración RX |
tx_rcfg_en | Aporte | 1 | Señal de habilitación de reconfiguración de TX |
rx_rcfg_ch | Aporte | 2 | Indica qué canal se reconfigurará en el núcleo RX. Esta señal siempre debe permanecer afirmada. |
tx_rcfg_ch | Aporte | 2 | Indica qué canal se reconfigurará en el núcleo TX. Esta señal siempre debe permanecer afirmada. |
rx_reconfig_mgmt_write | Aporte | 1 | Reconfiguración de interfaces Avalon-MM desde la gestión de reconfiguración RX |
rx_reconfig_mgmt_read | Aporte | 1 | |
rx_reconfig_mgmt_address | Aporte | 10 | |
rx_reconfig_mgmt_writedata | Aporte | 32 | |
rx_reconfig_mgmt_readdata | Producción | 32 | |
rx_reconfig_mgmt_waitrequest | Producción | 1 | |
tx_reconfig_mgmt_write | Aporte | 1 | Reconfiguración de interfaces Avalon-MM desde la gestión de reconfiguración de TX |
tx_reconfig_mgmt_read | Aporte | 1 | |
tx_reconfig_mgmt_address | Aporte | 10 | |
tx_reconfig_mgmt_writedata | Aporte | 32 | |
tx_reconfig_mgmt_readdata | Producción | 32 | |
tx_reconfig_mgmt_waitrequest | Producción | 1 | |
reconfigurar_escritura | Producción | 1 | Reconfiguración de las interfaces Avalon-MM con el transceptor |
reconfigurar_leer | Producción | 1 | |
continuado… |
Señal | Dirección | Ancho | Descripción |
dirección_reconfig | Producción | 10 | |
reconfigurar_writedata | Producción | 32 | |
rx_reconfig_readdata | Aporte | 32 | |
rx_reconfig_waitrequest | Aporte | 1 | |
tx_reconfig_readdata | Aporte | 1 | |
tx_reconfig_waitrequest | Aporte | 1 | |
rx_cal_busy | Aporte | 1 | Señal de estado de calibración del transceptor RX |
tx_cal_busy | Aporte | 1 | Señal de estado de calibración del transceptor TX |
rx_reconfig_cal_busy | Producción | 1 | Señal de estado de calibración al control de reinicio PHY del transceptor RX |
tx_reconfig_cal_busy | Producción | 1 | Señal de estado de calibración del control de reinicio PHY del transceptor TX |
Tabla 45. Señales de enlace RX-TX
Señal | Dirección | Ancho | Descripción |
reiniciar | Aporte | 1 | Restablezca el búfer FIFO de video/audio/auxiliar/bandas laterales. |
hdmi_tx_ls_clk | Aporte | 1 | Reloj de velocidad del enlace HDMI TX |
hdmi_rx_ls_clk | Aporte | 1 | Reloj de velocidad del enlace HDMI RX |
hdmi_tx_vid_clk | Aporte | 1 | Reloj de vídeo HDMI TX |
hdmi_rx_vid_clk | Aporte | 1 | Reloj de vídeo HDMI RX |
hdmi_rx_bloqueado | Aporte | 3 | Indica el estado bloqueado de HDMI RX |
hdmi_rx_de | Aporte | N | Interfaces de vídeo HDMI RX No diez = símbolos por reloj |
hdmi_rx_hsync | Aporte | N | |
hdmi_rx_vsync | Aporte | N | |
hdmi_rx_data | Aporte | N * 48 | |
formato_rx_audio | Aporte | 5 | Interfaces de audio HDMI RX |
rx_audio_metadatos | Aporte | 165 | |
rx_audio_info_ai | Aporte | 48 | |
rx_audio_CTS | Aporte | 20 | |
rx_audio_N | Aporte | 20 | |
rx_audio_de | Aporte | 1 | |
rx_audio_data | Aporte | 256 | |
rx_gcp | Aporte | 6 | Interfaces de banda lateral HDMI RX |
rx_info_avi | Aporte | 112 | |
rx_info_vsi | Aporte | 61 | |
continuado… |
Señal | Dirección | Ancho | Descripción |
rx_aux_eop | Aporte | 1 | Interfaces auxiliares HDMI RX |
rx_aux_sop | Aporte | 1 | |
rx_aux_valid | Aporte | 1 | |
rx_aux_data | Aporte | 72 | |
hdmi_tx_de | Producción | N | Interfaces de vídeo HDMI TX
No diez = símbolos por reloj |
hdmi_tx_hsync | Producción | N | |
hdmi_tx_vsync | Producción | N | |
hdmi_tx_data | Producción | N * 48 | |
formato_tx_audio | Producción | 5 | Interfaces de audio HDMI TX |
tx_audio_metadatos | Producción | 165 | |
tx_audio_info_ai | Producción | 48 | |
tx_audio_CTS | Producción | 20 | |
tx_audio_N | Producción | 20 | |
tx_audio_de | Producción | 1 | |
datos_audio_tx | Producción | 256 | |
tx_gcp | Producción | 6 | Interfaces de banda lateral HDMI TX |
tx_info_avi | Producción | 112 | |
tx_info_vsi | Producción | 61 | |
tx_aux_eop | Producción | 1 | Interfaces auxiliares HDMI TX |
tx_aux_sop | Producción | 1 | |
tx_aux_valid | Producción | 1 | |
tx_aux_data | Producción | 72 | |
tx_aux_listo | Producción | 1 |
Tabla 46. Señales del sistema Platform Designer
Señal | Dirección | Ancho | Descripción |
cpu_clk (Intel Quartus Prime Edición estándar) | Aporte | 1 | Reloj de la CPU |
clock_bridge_0_in_clk_clk (Intel Quartus Prime Pro Edición) | |||
cpu_clk_reset_n (Intel Quartus Prime edición estándar) | Aporte | 1 | Reinicio de la CPU |
reset_bridge_0_reset_reset_n (Intel Quartus Prime Edición Pro) | |||
tmds_bit_clock_ratio_pio_external_connection_export | Aporte | 1 | Relación de reloj de bits TMDS |
medida_pio_conexión_externa_exportación | Aporte | 24 | Frecuencia de reloj TMDS esperada |
continuado… |
Señal | Dirección | Ancho | Descripción |
medida_valid_pio_external_connection_export | Aporte | 1 | Indica que la medida PIO es válida |
i2c_master_i2c_serial_sda_in (Intel Quartus Prime Edición Pro) | Aporte | 1 | Interfaces maestras I2C |
i2c_master_i2c_serial_scl_in (Intel Quartus Prime Edición Pro) | Aporte | 1 | |
i2c_master_i2c_serial_sda_oe (Intel Quartus Prime Edición Pro) | Producción | 1 | |
i2c_master_i2c_serial_scl_oe (Intel Quartus Prime Edición Pro) | Producción | 1 | |
i2c_master_ti_i2c_serial_sda_in (Intel Quartus Prime Edición Pro) | Aporte | 1 | |
i2c_master_ti_i2c_serial_scl_in (Intel Quartus Prime Pro Edición) | Aporte | 1 | |
i2c_master_ti_i2c_serial_sda_oe (Intel Quartus Prime Edición Pro) | Producción | 1 | |
i2c_master_ti_i2c_serial_scl_oe (Intel Quartus Prime Edición Pro) | Producción | 1 | |
oc_i2c_master_av_slave_translator_avalon_an ti_slave_0_address (Intel Quartus Prime Pro Edition) | Producción | 3 | Interfaces asignadas en memoria I2C Master Avalon para DDC y SCDC |
oc_i2c_master_av_slave_translator_avalon_an ti_slave_0_write (Intel Quartus Prime Pro Edition) | Producción | 1 | |
oc_i2c_master_av_slave_translator_avalon_an ti_slave_0_readdata (Intel Quartus Prime Pro Edition) | Aporte | 32 | |
oc_i2c_master_av_slave_translator_avalon_an ti_slave_0_writedata (Intel Quartus Prime Pro Edition) | Producción | 32 | |
oc_i2c_master_av_slave_translator_avalon_an ti_slave_0_waitrequest (Intel Quartus Prime Pro Edition) | Aporte | 1 | |
oc_i2c_master_av_slave_translator_avalon_an ti_slave_0_chipselect (Intel Quartus Prime Pro Edition) | Producción | 1 | |
oc_i2c_master_ti_avalon_anti_slave_address (Intel Quartus Prime Edición estándar) | Producción | 3 | Interfaces asignadas en memoria I2C Master Avalon para la revisión 11 de la tarjeta secundaria Bitec, control T1181 |
oc_i2c_master_ti_avalon_anti_slave_write (Intel Quartus Prime Edición estándar) | Producción | 1 | |
oc_i2c_master_ti_avalon_anti_slave_readdata (Intel Quartus Prime Edición estándar) | Aporte | 32 | |
oc_i2c_master_ti_avalon_anti_slave_writedat a (Intel Quartus Prime Edición estándar) | Producción | 32 | |
oc_i2c_master_ti_avalon_anti_slave_waitrequest (Intel Quartus Prime Standard Edition) | Aporte | 1 | |
oc_i2c_master_ti_avalon_anti_slave_chipselect (Intel Quartus Prime Standard Edition) | Producción | 1 | |
continuado… |
Señal | Dirección | Ancho | Descripción |
editid_ram_access_pio_external_connection_exp ort | Producción | 1 | Interfaces de acceso a RAM EDID. Afirme edid_ram_access_pio_external_connection_export cuando desee escribir o leer desde la RAM EDID en la parte superior del RX. Conecte el acceso EDID RAM al esclavo Avalon-MM en Platform Designer a la interfaz EDID RAM en los módulos RX de nivel superior. |
dirección_edid_ram_slave_translator_address | Producción | 8 | |
edit_ram_slave_translator_write | Producción | 1 | |
edit_ram_slave_translator_read | Producción | 1 | |
edit_ram_slave_translator_readdata | Aporte | 8 | |
edit_ram_slave_translator_writedata | Producción | 8 | |
edit_ram_slave_translator_waitrequest | Aporte | 1 | |
powerup_cal_done_export (Intel Quartus Prime Pro Edición) | Aporte | 1 | Reconfiguración RX PMA Interfaces asignadas en memoria de Avalon |
rx_pma_cal_busy_export (Intel Quartus Prime Edición Pro) | Aporte | 1 | |
rx_pma_ch_export (Intel Quartus Prime Edición Pro) | Producción | 2 | |
rx_pma_rcfg_mgmt_address (Intel Quartus Prime Edición Pro) | Producción | 12 | |
rx_pma_rcfg_mgmt_write (Intel Quartus Prime Edición Pro) | Producción | 1 | |
rx_pma_rcfg_mgmt_read (Intel Quartus Prime Edición Pro) | Producción | 1 | |
rx_pma_rcfg_mgmt_readdata (Intel Quartus Prime Edición Pro) | Aporte | 32 | |
rx_pma_rcfg_mgmt_writedata (Intel Quartus Prime Edición Pro) | Producción | 32 | |
rx_pma_rcfg_mgmt_waitrequest (Intel Quartus Prime Edición Pro) | Aporte | 1 | |
rx_pma_waitrequest_export (Intel Quartus Prime Edición Pro) | Aporte | 1 | |
rx_rcfg_en_export (Intel Quartus Prime Edición Pro) | Producción | 1 | |
rx_rst_xcvr_export (Intel Quartus Prime Edición Pro) | Producción | 1 | |
tx_pll_rcfg_mgmt_translator_avalon_anti_sla ve_waitrequest | Aporte | 1 | Reconfiguración TX PLL Interfaces asignadas en memoria de Avalon |
tx_pll_rcfg_mgmt_translator_avalon_anti_slave_writedata | Producción | 32 | |
tx_pll_rcfg_mgmt_translator_avalon_anti_sla ve_address | Producción | 10 | |
tx_pll_rcfg_mgmt_translator_avalon_anti_slave_write | Producción | 1 | |
tx_pll_rcfg_mgmt_translator_avalon_anti_sla ve_read | Producción | 1 | |
tx_pll_rcfg_mgmt_translator_avalon_anti_sla ve_readdata | Aporte | 32 | |
continuado… |
Señal | Dirección | Ancho | Descripción |
tx_pll_waitrequest_pio_external_connection_exportación | Aporte | 1 | Solicitud de espera TX PLL |
tx_pma_rcfg_mgmt_translator_avalon_anti_sla ve_address | Producción | 12 | TX PMA Reconfiguración Interfaces asignadas en memoria de Avalon |
tx_pma_rcfg_mgmt_translator_avalon_anti_slave_write | Producción | 1 | |
tx_pma_rcfg_mgmt_translator_avalon_anti_sla ve_read | Producción | 1 | |
tx_pma_rcfg_mgmt_translator_avalon_anti_sla ve_readdata | Aporte | 32 | |
tx_pma_rcfg_mgmt_translator_avalon_anti_slave_writedata | Producción | 32 | |
tx_pma_rcfg_mgmt_translator_avalon_anti_sla ve_waitrequest | Aporte | 1 | |
tx_pma_waitrequest_pio_external_connection_exportación | Aporte | 1 | Solicitud de espera de TX PMA |
tx_pma_cal_busy_pio_external_connection_exp ort | Aporte | 1 | Recalibración TX PMA ocupada |
tx_pma_ch_exportación | Producción | 2 | Canales PMA de TX |
tx_rcfg_en_pio_external_connection_export | Producción | 1 | Habilitación de reconfiguración de TX PMA |
tx_iopll_rcfg_mgmt_translator_avalon_anti_s lave_writedata | Producción | 32 | TX IOPLL Reconfiguración de interfaces asignadas en memoria de Avalon |
tx_iopll_rcfg_mgmt_translator_avalon_anti_s lave_readdata | Aporte | 32 | |
tx_iopll_rcfg_mgmt_translator_avalon_anti_s lave_waitrequest | Aporte | 1 | |
tx_iopll_rcfg_mgmt_translator_avalon_anti_s lave_address | Producción | 9 | |
tx_iopll_rcfg_mgmt_translator_avalon_anti_s lave_write | Producción | 1 | |
tx_iopll_rcfg_mgmt_translator_avalon_anti_s lave_read | Producción | 1 | |
tx_os_pio_external_connection_export | Producción | 2 | Oversampfactor de ling: • 0: Sin excesosampabadejo • 1: 3× oversampabadejo • 2: 4× oversampabadejo • 3: 5× oversampabadejo |
tx_rst_pll_pio_external_connection_export | Producción | 1 | Restablecer a IOPLL y TX PLL |
tx_rst_xcvr_pio_external_connection_export | Producción | 1 | Restablecer la PHY nativa de TX |
wd_timer_resetrequest_reset | Producción | 1 | Reinicio del temporizador de vigilancia |
color_profundidad_pio_conexión_externa_exportación | Aporte | 2 | Profundidad de color |
tx_hpd_ack_pio_external_connection_export | Producción | 1 | Para TX hotplug detectar protocolo de enlace |
tx_hpd_req_pio_external_connection_export | Aporte | 1 |
3.8. Diseño de parámetros RTL
Utilice los parámetros HDMI TX y RX Top RTL para personalizar el diseño exampel.
La mayoría de los parámetros de diseño están disponibles en Design Examppestaña archivo del editor de parámetros IP HDMI Intel FPGA. Aún puedes cambiar el diseño ex.ampla configuración que usted
realizado en el editor de parámetros a través de los parámetros RTL.
Tabla 47. Parámetros principales de HDMI RX
Parámetro | Valor | Descripción |
SOPORTE_DEEP_COLOR | • 0: Sin color profundo • 1: color intenso |
Determina si el núcleo puede codificar formatos de colores profundos. |
SOPORTE_AUXILIAR | • 0: Sin auxiliar • 1: AUX. |
Determina si se incluye la codificación del canal auxiliar. |
SYMBOLS_PER_CLOCK | 8 | Admite 8 símbolos por reloj para dispositivos Intel Arria 10. |
SOPORTE_AUDIO | • 0: Sin audio • 1: Audio |
Determina si el núcleo puede codificar audio. |
EDID_RAM_ADDR_WIDTH (Intel Quartus Prime Edición estándar) | 8 (valor predeterminado) | Registre la base 2 del tamaño de RAM EDID. |
BITEC_DAUGHTER_CARD_REV | • 0: No apunta a ninguna tarjeta secundaria HDMI de Bitec • 4: Admite la revisión 4 de la tarjeta secundaria Bitec HDMI • 6: Apuntando a la tarjeta secundaria Bitec HDMI revisión 6 •11: Orientación a la tarjeta secundaria Bitec HDMI revisión 11 (predeterminada) |
Especifica la revisión de la tarjeta secundaria Bitec HDMI utilizada. Cuando cambia la revisión, el diseño puede intercambiar los canales del transceptor e invertir la polaridad de acuerdo con los requisitos de la tarjeta secundaria Bitec HDMI. Si configura el parámetro BITEC_DAUGHTER_CARD_REV en 0, el diseño no realiza ningún cambio en los canales del transceptor ni en la polaridad. |
INVERSIÓN_POLARIDAD | • 0: polaridad invertida • 1: No invertir la polaridad |
Establezca este parámetro en 1 para invertir el valor de cada bit de los datos de entrada. Establecer este parámetro en 1 asigna 4'b1111 al puerto rx_polinv del transceptor RX. |
Tabla 48. Parámetros superiores de HDMI TX
Parámetro | Valor | Descripción |
USE_FPLL | 1 | Admite fPLL como TX PLL solo para dispositivos Intel Cyclone® 10 GX. Establezca siempre este parámetro en 1. |
SOPORTE_DEEP_COLOR | • 0: Sin color profundo • 1: color intenso |
Determina si el núcleo puede codificar formatos de colores profundos. |
SOPORTE_AUXILIAR | • 0: Sin auxiliar • 1: AUX. |
Determina si se incluye la codificación del canal auxiliar. |
SYMBOLS_PER_CLOCK | 8 | Admite 8 símbolos por reloj para dispositivos Intel Arria 10. |
continuado… |
Parámetro | Valor | Descripción |
SOPORTE_AUDIO | • 0: Sin audio • 1: Audio |
Determina si el núcleo puede codificar audio. |
BITEC_DAUGHTER_CARD_REV | • 0: No apunta a ninguna tarjeta secundaria HDMI de Bitec • 4: Admite la revisión 4 de la tarjeta secundaria Bitec HDMI • 6: Apuntando a la tarjeta secundaria Bitec HDMI revisión 6 • 11: Orientación a la tarjeta secundaria HDMI de Bitec, revisión 11 (predeterminada) |
Especifica la revisión de la tarjeta secundaria Bitec HDMI utilizada. Cuando cambia la revisión, el diseño puede intercambiar los canales del transceptor e invertir la polaridad de acuerdo con los requisitos de la tarjeta secundaria Bitec HDMI. Si configura el parámetro BITEC_DAUGHTER_CARD_REV en 0, el diseño no realiza ningún cambio en los canales del transceptor ni en la polaridad. |
INVERSIÓN_POLARIDAD | • 0: polaridad invertida • 1: No invertir la polaridad |
Establezca este parámetro en 1 para invertir el valor de cada bit de los datos de entrada. Establecer este parámetro en 1 asigna 4'b1111 al puerto tx_polinv del transceptor TX. |
3.9. Configuración de hardware
El diseño HDMI Intel FPGA IP exampEl archivo es compatible con HDMI 2.0b y realiza una demostración en bucle para una transmisión de video HDMI estándar.
Para ejecutar la prueba de hardware, conecte un dispositivo habilitado para HDMI, como una tarjeta gráfica con interfaz HDMI, al bloque Transceiver Native PHY RX y al disipador HDMI.
aporte.
- El disipador HDMI decodifica el puerto en una transmisión de video estándar y la envía al núcleo de recuperación del reloj.
- El núcleo HDMI RX decodifica los datos de video, auxiliares y de audio que se conectarán en paralelo al núcleo HDMI TX a través del DCFIFO.
- El puerto de fuente HDMI de la tarjeta secundaria FMC transmite la imagen a un monitor.
Nota:
Si desea utilizar otra placa de desarrollo Intel FPGA, debe cambiar las asignaciones de dispositivos y de pines. La configuración analógica del transceptor se prueba para el kit de desarrollo Intel Arria 10 FPGA y la tarjeta secundaria Bitec HDMI 2.0. Puede modificar la configuración de su propio tablero.
Tabla 49. Funciones del LED de usuario y del botón pulsador integrado
Pulsador/LED | Función |
cpu_resetn | Presione una vez para realizar el reinicio del sistema. |
usuario_pb[0] | Presione una vez para alternar la señal HPD a la fuente HDMI estándar. |
usuario_pb[1] | • Mantenga presionado para indicarle al núcleo TX que envíe la señal codificada DVI. • Suelte para enviar la señal codificada HDMI. |
usuario_pb[2] | • Mantenga presionado para indicarle al núcleo TX que deje de enviar InfoFrames desde las señales de banda lateral. • Suelte para reanudar el envío de InfoFrames desde las señales de banda lateral. |
USUARIO_LED[0] | Estado de bloqueo RX HDMI PLL. • 0 = Desbloqueado • 1 = Bloqueado |
USUARIO_LED[1] | Estado del transceptor RX listo. |
continuado… |
Pulsador/LED | Función |
• 0 = No listo • 1 = Listo |
|
USUARIO_LED[2] | Estado de bloqueo del núcleo RX HDMI. • 0 = Al menos 1 canal desbloqueado • 1 = Los 3 canales bloqueados |
USUARIO_LED[3] | RX oversampestado de maruca. • 0 = No excedentesampLED (velocidad de datos > 1,000 Mbps en dispositivo Intel Arria 10) • 1 = SobresampLED (velocidad de datos <100 Mbps en dispositivo Intel Arria 10) |
USUARIO_LED[4] | Estado de bloqueo TX HDMI PLL. • 0 = Desbloqueado • 1 = Bloqueado |
USUARIO_LED[5] | Estado listo del transceptor TX. • 0 = No listo • 1 = Listo |
USUARIO_LED[6] | Estado de bloqueo PLL del transceptor TX. • 0 = Desbloqueado • 1 = Bloqueado |
USUARIO_LED[7] | TX sobreampestado de maruca. • 0 = No excedentesampLED (velocidad de datos > 1,000 Mbps en dispositivo Intel Arria 10) • 1 = SobresampLED (velocidad de datos <1,000 Mbps en dispositivo Intel Arria 10) |
3.10. Banco de pruebas de simulación
El banco de pruebas de simulación simula el loopback serie HDMI TX al núcleo RX.
Nota:
Este banco de pruebas de simulación no es compatible con diseños con el parámetro Incluir I2C habilitado.
3. Diseño HDMI 2.0 Examparchivo (Soporte FRL = 0)
683156 | 2022.12.27
Figura 28. Diagrama de bloques del banco de pruebas de simulación IP HDMI Intel FPGA
Tabla 50. Componentes del banco de pruebas
Componente | Descripción |
Vídeo TPG | El generador de patrones de prueba de vídeo (TPG) proporciona el estímulo de vídeo. |
S de audioampel gen | El audio sampEl generador proporciona audio.ampel estímulo. El generador genera un patrón de datos de prueba incremental que se transmitirá a través del canal de audio. |
S auxiliarampel gen | Los auxiliaresampEl generador proporciona los auxiliares.ampel estímulo. El generador genera datos fijos que se transmitirán desde el transmisor. |
Comprobación de CRC | Este verificador verifica si la frecuencia de reloj recuperada del transceptor TX coincide con la velocidad de datos deseada. |
Verificación de datos de audio | La verificación de datos de audio compara si el patrón de datos de prueba incremental se recibe y decodifica correctamente. |
Verificación de datos auxiliares | La verificación de datos auxiliares compara si los datos auxiliares esperados se reciben y decodifican correctamente en el lado del receptor. |
El banco de pruebas de simulación HDMI realiza las siguientes pruebas de verificación:
Función HDMI | Verificación |
Datos de video | • El banco de pruebas implementa la comprobación CRC en el vídeo de entrada y salida. • Comprueba el valor CRC de los datos transmitidos con el CRC calculado en los datos de vídeo recibidos. • Luego, el banco de pruebas realiza la verificación después de detectar 4 señales V-SYNC estables del receptor. |
Datos auxiliares | • Los auxiliaresampEl generador genera datos fijos que se transmitirán desde el transmisor. • En el lado del receptor, el generador compara si los datos auxiliares esperados se reciben y decodifican correctamente. |
Datos de audio | • Los audiosampEl generador de archivos genera un patrón de datos de prueba incremental que se transmitirá a través del canal de audio. • En el lado del receptor, el verificador de datos de audio verifica y compara si el patrón de datos de prueba incremental se recibe y decodifica correctamente. |
Una simulación exitosa finaliza con el siguiente mensaje:
# SYMBOLS_PER_CLOCK = 2
# VIC = 4
#FRL_RATE = 0
# BPP = 0
# FRECUENCIA_AUDIO (kHz) = 48
#CANAL_AUDIO = 8
# Pase de simulación
Tabla 51. HDMI Intel FPGA IP Diseño ExampLos simuladores compatibles
Simulador | Verilog HDL | VHDL |
ModelSim – Edición Intel FPGA/ ModelSim – Edición Intel FPGA Starter | Sí | Sí |
VCS/VCSMX | Sí | Sí |
Riviera-PRO | Sí | Sí |
Xcelio paralelo | Sí | No |
3.11. Actualizando su diseño
Tabla 52. Diseño HDMI ExampCompatibilidad con la versión anterior del software Intel Quartus Prime Pro Edition
Ex diseñoampla variante | Posibilidad de actualizar a Intel Quartus Prime Pro Edition 20.3 |
Diseño HDMI 2.0 Examparchivo (Soporte FRL = 0) | No |
Para cualquier diseño no compatible examparchivos, debe hacer lo siguiente:
- Generar un nuevo diseño examparchivo en la versión actual del software Intel Quartus Prime Pro Edition usando las mismas configuraciones de su diseño existente.
- Compara todo el diseño ex.ample directorio con el diseño exampArchivo generado con la versión anterior del software Intel Quartus Prime Pro Edition. Port sobre los cambios encontrados.
HDCP sobre HDMI 2.0/2.1 Diseño Example
El diseño de hardware HDCP sobre HDMI exampEl archivo le ayuda a evaluar la funcionalidad de la función HDCP y le permite utilizarla en sus diseños Intel Arria 10.
Nota:
La función HDCP no está incluida en el software Intel Quartus Prime Pro Edition. Para acceder a la función HDCP, comuníquese con Intel en https://www.intel.com/content/www/us/en/broadcast/products/programmable/applications/connectivity-solutions.html.
4.1. Protección de contenido digital de alto ancho de banda (HDCP)
La protección de contenido digital de alto ancho de banda (HDCP) es una forma de protección de derechos digitales para crear una conexión segura entre la fuente y la pantalla.
Intel creó la tecnología original, que tiene licencia del grupo Digital Content Protection LLC. HDCP es un método de protección de copia en el que la transmisión de audio/vídeo se cifra entre el transmisor y el receptor, protegiéndolo contra copias ilegales.
Las funciones HDCP cumplen con la especificación HDCP versión 1.4 y la especificación HDCP versión 2.3.
Las IP HDCP 1.4 y HDCP 2.3 realizan todos los cálculos dentro de la lógica central del hardware sin que se pueda acceder a valores confidenciales (como la clave privada y la clave de sesión) desde fuera de la IP cifrada.
Tabla 53. Funciones IP HDCP
IP HDCP | Funciones |
HDCP 1.4IP | • Intercambio de autenticación — Cálculo de llave maestra (Km) — Generación de An aleatorio — Cálculo de clave de sesión (Ks), M0 y R0. • Autenticación con repetidor — Cálculo y verificación de V y V' • Verificación de la integridad del enlace — Cálculo de la clave de cuadro (Ki), Mi y Ri. |
continuado… |
Corporación Intel. Reservados todos los derechos. Intel, el logotipo de Intel y otras marcas de Intel son marcas comerciales de Intel Corporation o sus subsidiarias. Intel garantiza el rendimiento de sus productos semiconductores y FPGA según las especificaciones actuales de acuerdo con la garantía estándar de Intel, pero se reserva el derecho de realizar cambios en cualquier producto y servicio en cualquier momento sin previo aviso. Intel no asume ninguna responsabilidad u obligación que surja de la aplicación o el uso de cualquier información, producto o servicio descrito en este documento, excepto que Intel lo acuerde expresamente por escrito. Se recomienda a los clientes de Intel que obtengan la versión más reciente de las especificaciones del dispositivo antes de confiar en cualquier información publicada y antes de realizar pedidos de productos o servicios.
*Otros nombres y marcas pueden ser reclamados como propiedad de terceros.
YO ASI
9001:2015
Registrado
IP HDCP | Funciones |
• Todos los modos de cifrado, incluidos hdcpBlockCipher, hdcpStreamCipher, hdcpRekeyCipher y hdcpRngCipher • Señalización de estado de cifrado original (DVI) y señalización de estado de cifrado mejorada (HDMI) • Generador de números aleatorios verdaderos (TRNG) — Implementación completamente digital basada en hardware y generador de números aleatorios no deterministas |
|
HDCP 2.3IP | • Generación de clave maestra (km), clave de sesión (ks) y nonce (rn, riv) — Cumple con NIST.SP800-90A generación de números aleatorios • Autenticación e intercambio de claves — Generación de números aleatorios para rtx y rrx que cumplen con NIST.SP800-90A generación de números aleatorios — Verificación de firma del certificado del receptor (certrx) utilizando la clave pública DCP (kpubdcp) — 3072 bits RSASSA-PKCS#1 v1.5 — Cifrado y descifrado de clave maestra (km) RSAES-OAEP (PKCS#1 v2.1) — Derivación de kd (dkey0, dkey1) usando el modo AES-CTR — Cálculo y verificación de H y H' — Cálculo de Ekh(km) y km (emparejamiento) • Autenticación con repetidor — Cálculo y verificación de V y V' — Cálculo y verificación de M y M' • Renovabilidad del sistema (SRM) — Verificación de firma SRM usando kpubdcp — 3072 bits RSASSA-PKCS#1 v1.5 • Intercambio de claves de sesión • Generación y cálculo de Edkey(ks) y riv. • Derivación de dkey2 usando el modo AES-CTR • Verificación de localidad — Cálculo y verificación de L y L' — Generación de nonce (rn) • Gestión del flujo de datos — Generación de flujo de claves basada en modo AES-CTR • Algoritmos criptográficos asimétricos — RSA con una longitud de módulo de 1024 (kpubrx) y 3072 (kpubdcp) bits — RSA-CRT (teorema del resto chino) con una longitud de módulo de 512 (kprivrx) bits y una longitud de exponente de 512 (kprivrx) bits • Función criptográfica de bajo nivel — Algoritmos criptográficos simétricos • Modo AES-CTR con una longitud de clave de 128 bits — Algoritmos Hash, MGF y HMAC • SHA256 • HMAC-SHA256 • MGF1-SHA256 — Verdadero generador de números aleatorios (TRNG) • Cumple con NIST.SP800-90A • Implementación digital completa basada en hardware y generador de números aleatorios no deterministas |
4.1.1. Diseño HDCP sobre HDMI Exampla arquitectura
La función HDCP protege los datos cuando se transmiten entre dispositivos conectados a través de HDMI u otras interfaces digitales protegidas por HDCP.
Los sistemas protegidos por HDCP incluyen tres tipos de dispositivos:
4. HDCP sobre HDMI 2.0/2.1 Diseño Example
683156 | 2022.12.27
• Fuentes (TX)
• Fregaderos (RX)
• Repetidores
Este diseño exampLe muestra el sistema HDCP en un dispositivo repetidor donde acepta datos, los descifra, luego los vuelve a cifrar y finalmente los retransmite. Los repetidores tienen entradas y salidas HDMI. Crea una instancia de los buffers FIFO para realizar un paso directo de flujo de video HDMI entre el receptor HDMI y la fuente. Puede realizar algún procesamiento de señal, como convertir videos a un formato de mayor resolución reemplazando los buffers FIFO con los núcleos IP de la suite de procesamiento de imágenes y video (VIP).
Figura 29. Diseño Ex HDCP sobre HDMIampdiagrama de bloques
Las siguientes descripciones sobre la arquitectura del diseño ex.ample corresponden al diseño HDCP sobre HDMI exampel diagrama de bloques. Cuando SOPORTE FRL = 1 o
SOPORTE ADMINISTRACIÓN DE CLAVE HDCP = 1, el diseño exampLa jerarquía del archivo es ligeramente diferente de la Figura 29 en la página 95, pero las funciones HDCP subyacentes siguen siendo las mismas.
mismo.
- HDCP1x y HDCP2x son IP que están disponibles a través del editor de parámetros IP HDMI Intel FPGA. Cuando configura la IP HDMI en el editor de parámetros, puede habilitar e incluir HDCP1x o HDCP2x o ambas IP como parte del subsistema. Con ambas IP HDCP habilitadas, la IP HDMI se configura en la topología en cascada donde las IP HDCP2x y HDCP1x están conectadas espalda con espalda.
• La interfaz de salida HDCP del HDMI TX envía datos de audio y vídeo sin cifrar.
• Los datos no cifrados son cifrados por el bloque HDCP activo y enviados nuevamente al HDMI TX a través de la interfaz HDCP Ingress para su transmisión a través del enlace.
• El subsistema de CPU como controlador maestro de autenticación garantiza que sólo una de las IP de HDCP TX esté activa en un momento dado y la otra sea pasiva.
• De manera similar, el HDCP RX también descifra los datos recibidos a través del enlace desde un HDCP TX externo. - Debe programar las IP HDCP con claves de producción emitidas por Protección de contenido digital (DCP). Cargue las siguientes claves:
Tabla 54. Claves de producción emitidas por DCP
HDCP TX / RX Llaves 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 clave TX (Aksv)
• 280 bytes: Claves de dispositivo privado TX (Akeys)RX • 5 bytes: Vector de selección de clave RX (Bksv)
• 280 bytes: Claves de dispositivo privado RX (Bkeys)El diseño exampImplementa las memorias clave como una simple RAM síncrona de doble puerto y doble reloj. Para tamaños de clave pequeños como HDCP2x TX, el IP implementa la memoria de claves utilizando registros en lógica regular.
Nota: Intel no proporciona las claves de producción HDCP con el diseño examparchivos o IP Intel FPGA bajo ninguna circunstancia. Para utilizar las IP HDCP o el diseño examparchivo, debe adoptar HDCP y adquirir las claves de producción directamente de Digital Content Protection LLC (DCP).
Para ejecutar el diseño examparchivo, puedes editar la memoria clave files en tiempo de compilación para incluir las claves de producción o implementar bloques lógicos para leer de forma segura las claves de producción desde un dispositivo de almacenamiento externo y escribirlas en las memorias de claves en tiempo de ejecución. - Puede sincronizar las funciones criptográficas implementadas en el HDCP2x IP con cualquier frecuencia hasta 200 MHz. La frecuencia de este reloj determina qué tan rápido
La autenticación HDCP2x funciona. Puede optar por compartir el reloj de 100 MHz utilizado para el procesador Nios II, pero la latencia de autenticación se duplicaría en comparación con el uso de un reloj de 200 MHz. - Los valores que deben intercambiarse entre el HDCP TX y el HDCP RX se comunican a través de la interfaz HDMI DDC (interfaz serie I2 C) del HDCP-
interfaz protegida. El HDCP RX debe presentar un dispositivo lógico en el bus I2C para cada enlace que admita. El esclavo I2C está duplicado para el puerto HDCP con la dirección del dispositivo 0x74. Controla el puerto de registro HDCP (Avalon-MM) de las IP RX HDCP2x y HDCP1x. - El HDMI TX utiliza el IC maestro para leer el EDID de RX y transferir los datos SCDC necesarios para el funcionamiento de HDMI 2.0 a RX. El mismo maestro I2C controlado por el procesador Nios II también se utiliza para transferir los mensajes HDCP entre TX y RX. El maestro I2C está integrado en el subsistema de la CPU.
- El procesador Nios II actúa como maestro en el protocolo de autenticación y controla los registros de control y estado (Avalon-MM) tanto del HDCP2x como del HDCP1x TX.
IP. Los controladores de software implementan la máquina de estado del protocolo de autenticación, incluida la verificación de la firma del certificado, el intercambio de clave maestra, la verificación de localidad, el intercambio de claves de sesión, el emparejamiento, la verificación de integridad del enlace (HDCP1x) y la autenticación con repetidores, como la propagación de información de topología y la propagación de información de administración de flujo. Los controladores de software no implementan ninguna de las funciones criptográficas requeridas por el protocolo de autenticación. En cambio, el hardware HDCP IP implementa todas las funciones criptográficas garantizando que no se pueda acceder a valores confidenciales.
7. En una verdadera demostración de repetidor en la que se requiere propagar información de topología en sentido ascendente, el procesador Nios II controla el puerto de mensajes del repetidor (Avalon-MM) de las IP RX HDCP2x y HDCP1x. El procesador Nios II borra el bit RX REPEATER a 0 cuando detecta que el flujo descendente conectado no es compatible con HDCP o cuando no hay ningún flujo descendente conectado. Sin conexión descendente, el sistema RX es ahora un receptor de punto final, en lugar de un repetidor. Por el contrario, el procesador Nios II establece el bit RX REPEATER en 1 al detectar que el flujo descendente es compatible con HDCP.
4.2. Flujo de software del procesador Nios II
El diagrama de flujo del software Nios II incluye los controles de autenticación HDCP a través de la aplicación HDMI.
Figura 30. Diagrama de flujo del software del procesador Nios II
- El software Nios II inicializa y restablece el HDMI TX PLL, el transceptor TX PHY, el maestro I2C y el temporizador TI externo.
- El software Nios II sondea periódicamente la señal válida de detección de velocidad del circuito de detección de velocidad RX para determinar si la resolución de video ha cambiado y si se requiere una reconfiguración de TX. El software también sondea la señal de detección de conexión en caliente de TX para determinar si se ha producido un evento de conexión en caliente de TX.
- Cuando se recibe una señal válida del circuito de detección de velocidad de RX, el software Nios II lee los valores SCDC y de profundidad de reloj del HDMI RX y recupera la banda de frecuencia del reloj según la velocidad detectada para determinar si se requiere HDMI TX PLL y la reconfiguración PHY del transceptor. Si se requiere la reconfiguración de TX, el software Nios II ordena al maestro I2C que envíe el valor SCDC a RX externo. Luego ordena reconfigurar el transceptor HDMI TX PLL y TX.
PHY, seguida de la recalibración del dispositivo y la secuencia de reinicio. Si la velocidad no cambia, no se requiere reconfiguración de TX ni reautenticación de HDCP. - Cuando se produce un evento de conexión en caliente de TX, el software Nios II ordena al maestro I2C que envíe el valor SCDC al RX externo y luego lea EDID del RX.
y actualice la RAM EDID interna. Luego, el software propaga la información EDID al flujo ascendente. - El software Nios II inicia la actividad HDCP ordenando al maestro I2C que lea el desplazamiento 0x50 del RX externo para detectar si el flujo descendente es compatible con HDCP, o
de lo contrario:
• Si el valor HDCP2Version devuelto es 1, el flujo descendente es compatible con HDCP2x.
• Si el valor devuelto de todas las lecturas 0x50 es 0, el flujo descendente es compatible con HDCP1x.
• Si el valor devuelto de todas las lecturas 0x50 es 1, el flujo descendente no es compatible con HDCP o está inactivo.
• Si el canal descendente anteriormente no era compatible con HDCP o estaba inactivo pero actualmente sí lo es, el software establece el bit REPETIDOR del repetidor ascendente (RX) en 1 para indicar que el RX ahora es un repetidor.
• Si el canal descendente anteriormente era compatible con HDCP pero actualmente no es compatible con HDCP o está inactivo, el software establece el bit REPEATER en 0 para indicar que el RX ahora es un receptor de punto final. - El software inicia el protocolo de autenticación HDCP2x que incluye verificación de firma de certificado RX, intercambio de clave maestra, verificación de localidad, intercambio de clave de sesión, emparejamiento y autenticación con repetidores, como la propagación de información de topología.
- Cuando está en estado autenticado, el software Nios II ordena al maestro I2C que sondee el registro RxStatus desde RX externo, y si el software detecta que el bit REAUTH_REQ está configurado, inicia la reautenticación y deshabilita el cifrado TX.
- Cuando el flujo descendente es un repetidor y el bit READY del registro RxStatus está establecido en 1, esto generalmente indica que la topología descendente ha cambiado. Entonces, el software Nios II ordena al maestro I2C que lea ReceiverID_List desde abajo y verifique la lista. Si la lista es válida y no se detecta ningún error de topología, el software pasa al módulo Content Stream Management. De lo contrario, inicia la reautenticación y desactiva el cifrado TX.
- El software Nios II prepara los valores ReceiverID_List y RxInfo y luego escribe en el puerto de mensajes del repetidor Avalon-MM del repetidor ascendente (RX). Luego, el RX propaga la lista al TX externo (ascendente).
- La autenticación está completa en este punto. El software permite el cifrado TX.
- El software inicia el protocolo de autenticación HDCP1x que incluye intercambio de claves y autenticación con repetidores.
- El software Nios II realiza una verificación de la integridad del enlace leyendo y comparando Ri' y Ri de RX externo (descendente) y HDCP1x TX respectivamente. Si los valores
no coinciden, esto indica una pérdida de sincronización y el software inicia la reautenticación y desactiva el cifrado TX. - Si el downstream es un repetidor y el bit READY del registro Bcaps está establecido en 1, esto generalmente indica que la topología downstream ha cambiado. Entonces, el software Nios II ordena al maestro I2C que lea el valor de la lista KSV desde abajo y verifique la lista. Si la lista es válida y no se detecta ningún error de topología, el software prepara la lista KSV y el valor Bstatus y escribe en el puerto de mensajes del repetidor Avalon-MM del repetidor ascendente (RX). Luego, el RX propaga la lista al TX externo (ascendente). De lo contrario, inicia la reautenticación y desactiva el cifrado TX.
4.3. Tutorial de diseño
Configuración y ejecución del diseño HDCP sobre HDMI example consta de cinco stages.
- Configure el hardware.
- Generar el diseño.
- Editar la memoria de la clave HDCP files para incluir sus claves de producción HDCP.
a. Almacene claves de producción HDCP simples en la FPGA (admite administración de claves HDCP = 0)
b. Almacene claves de producción HDCP cifradas en la memoria flash externa o EEPROM (admite administración de claves HDCP = 1) - Compila el diseño.
- View los resultados.
4.3.1. Configurar el hardware
El primero stagEl objetivo de la demostración es configurar el hardware.
Cuando SUPPORT FRL = 0, siga estos pasos para configurar el hardware para la demostración:
- Conecte la tarjeta secundaria Bitec HDMI 2.0 FMC (revisión 11) al kit de desarrollo Arria 10 GX en el puerto FMC B.
- Conecte el kit de desarrollo Arria 10 GX a su PC mediante un cable USB.
- Conecte un cable HDMI desde el conector HDMI RX de la tarjeta secundaria Bitec HDMI 2.0 FMC a un dispositivo HDMI habilitado para HDCP, como una tarjeta gráfica con salida HDMI.
- Conecte otro cable HDMI desde el conector HDMI TX de la tarjeta secundaria Bitec HDMI 2.0 FMC a un dispositivo HDMI habilitado para HDCP, como un televisor con entrada HDMI.
Cuando SUPPORT FRL = 1, siga estos pasos para configurar el hardware para el demostración:
- Conecte la tarjeta secundaria Bitec HDMI 2.1 FMC (Revisión 9) al kit de desarrollo Arria 10 GX en el puerto FMC B.
- Conecte el kit de desarrollo Arria 10 GX a su PC mediante un cable USB.
- Conecte un cable HDMI 2.1 Categoría 3 desde el conector HDMI RX en la tarjeta secundaria Bitec HDMI 2.1 FMC a una fuente HDMI 2.1 habilitada para HDCP, como Quantum Data 980 48G Generator.
- Conecte otros cables HDMI 2.1 Categoría 3 desde el conector HDMI TX de la tarjeta secundaria Bitec HDMI 2.1 FMC a un disipador HDMI 2.1 habilitado para HDCP, como
Analizador Quantum Data 980 48G.
4.3.2. Generar el diseño
Después de configurar el hardware, debe generar el diseño.
Antes de comenzar, asegúrese de instalar la función HDCP en el software Intel Quartus Prime Pro Edition.
- Haga clic en Herramientas ➤ Catálogo de IP y seleccione Intel Arria 10 como familia de dispositivos de destino.
Nota: El diseño HDCP exampEl archivo solo admite dispositivos Intel Arria 10 e Intel Stratix® 10. - En el catálogo de IP, ubique y haga doble clic en HDMI Intel FPGA IP. Aparece la ventana Nueva variación de IP.
- Especifique un nombre de nivel superior para su variación de IP personalizada. El editor de parámetros guarda la configuración de la variación de IP en un file llamado .qsys o .ip.
- Haga clic en Aceptar. Aparece el editor de parámetros.
- En la pestaña IP, configure los parámetros deseados tanto para TX como para RX.
- Active el parámetro Support HDCP 1.4 o Support HDCP 2.3 para generar el diseño HDCP ex.ampel.
- Active el parámetro Admite administración de claves HDCP si desea almacenar la clave de producción HDCP en un formato cifrado en la memoria flash externa o EEPROM. De lo contrario, desactive el parámetro Support HDCP Key Management para almacenar la clave de producción HDCP en formato plano en la FPGA.
- En el Diseño ExampEn la pestaña Archivo, seleccione Retransmisión Arria 10 HDMI RX-TX.
- Seleccione Síntesis para generar el diseño de hardware ex.ampel.
- Para generar File Formatee, seleccione Verilog o VHDL.
- Para el kit de desarrollo de Target, seleccione el kit de desarrollo FPGA Arria 10 GX. Si selecciona el kit de desarrollo, el dispositivo de destino (seleccionado en el paso 4) cambia para coincidir con el dispositivo del kit de desarrollo. Para el kit de desarrollo FPGA Arria 10 GX, el dispositivo predeterminado es 10AX115S2F45I1SG.
- Haga clic en Generar Example Diseño para generar el proyecto files y el software de programación de formato ejecutable y de enlace (ELF) file.
4.3.3. Incluir claves de producción HDCP
4.3.3.1. Almacene claves de producción HDCP simples en FPGA (compatible con clave HDCP). Gestión = 0)
Después de generar el diseño, edite la memoria de la clave HDCP. files para incluir sus claves de producción.
Para incluir las claves de producción, siga estos pasos.
- Localice la siguiente memoria clave files en el /rtl/hdcp/ directorio:
• hdcp2x_tx_kmem.v
• hdcp2x_rx_kmem.v
• hdcp1x_tx_kmem.v
• hdcp1x_rx_kmem.v - Abra hdcp2x_rx_kmem.v file y localice la clave de facsímil predefinida R1 para el certificado público del receptor y la clave privada RX y la constante global como se muestra en el ejemplo.amples abajo.
Figura 31. Conjunto de cables de la clave de fax R1 para el certificado público del receptor
Figura 32. Conjunto de cables de la clave de fax R1 para la clave privada RX y la constante global
- Ubique el marcador de posición para las claves de producción y reemplácelo con sus propias claves de producción en su respectivo conjunto de cables en formato big endian.
Figura 33. Conjunto de cables de claves de producción HDCP (marcador de posición)
- Repita el paso 3 para todas las demás memorias clave. files. Cuando haya terminado de incluir sus claves de producción en toda la memoria de claves files, asegúrese de que el parámetro USE_FACSIMILE esté establecido en 0 en el diseño exampel nivel superior file (a10_hdmi2_demo.v)
4.3.3.1.1. Asignación de claves HDCP desde la clave DCP Files
Las siguientes secciones describen la asignación de las claves de producción HDCP almacenadas en la clave DCP. files en la matriz de cables del kmem HDCP files.
4.3.3.1.2. hdcp1x_tx_kmem.v y hdcp1x_rx_kmem.v files
Para hdcp1x_tx_kmem.v y hdcp1x_rx_kmem.v files
- Estos dos files comparten el mismo formato.
- Para identificar la clave HDCP1 TX DCP correcta file para hdcp1x_tx_kmem.v, asegúrese de que los primeros 4 bytes del file son “0x01, 0x00, 0x00, 0x00”.
- Para identificar la clave HDCP1 RX DCP correcta file para hdcp1x_rx_kmem.v, asegúrese de que los primeros 4 bytes del file son “0x02, 0x00, 0x00, 0x00”.
- Las claves en la clave DCP. files están en formato little-endian. Para usar en kmem files, debes convertirlos a big-endian.
Figura 34. Asignación de bytes de la clave HDCP1 TX DCP file en hdcp1x_tx_kmem.v
Nota:
El número de byte se muestra en el siguiente formato:
- Tamaño de clave en bytes * número de clave + número de bytes en la fila actual + desplazamiento constante + tamaño de fila en bytes * número de fila.
- 308*n indica que cada conjunto de claves tiene 308 bytes.
- 7*y indica que cada fila tiene 7 bytes.
Figura 35. Clave HDCP1 TX DCP file llenar con valores basura
Figura 36. Conjuntos de cables de hdcp1x_tx_kmem.v
Examparchivo de hdcp1x_tx_kmem.v y cómo sus conjuntos de cables se asignan al exampArchivo de clave HDCP1 TX DCP file en la Figura 35 en la página 105.
4.3.3.1.3. hdcp2x_rx_kmem.v file
Para hdcp2x_rx_kmem.v file
- Para identificar la clave HDCP2 RX DCP correcta file para hdcp2x_rx_kmem.v, asegúrese de que los primeros 4 bytes del file son “0x00, 0x00, 0x00, 0x02”.
- Las claves en la clave DCP. files están en formato little-endian.
Figura 37. Asignación de bytes de la clave HDCP2 RX DCP file en hdcp2x_rx_kmem.v
La siguiente figura muestra la asignación de bytes exacta de la clave HDCP2 RX DCP file en hdcp2x_rx_kmem.v.
Nota:
El número de byte se muestra en el siguiente formato:
- Tamaño de clave en bytes * número de clave + número de bytes en la fila actual + desplazamiento constante + tamaño de fila en bytes * número de fila.
- 862*n indica que cada conjunto de claves tiene 862 bytes.
- 16*y indica que cada fila tiene 16 bytes. Hay una excepción en cert_rx_prod donde la FILA 32 tiene solo 10 bytes.
Figura 38. Clave HDCP2 RX DCP file llenar con valores basura
Figura 39. Conjuntos de cables de hdcp2x_rx_kmem.v
Esta figura muestra las matrices de cables para hdcp2x_rx_kmem.v (cert_rx_prod, kprivrx_qinv_prod y lc128_prod) asignadas al exampArchivo de clave HDCP2 RX DCP file in
Figura 38 en la página 108.
4.3.3.1.4. hdcp2x_tx_kmem.v file
Para hdcp2x_tx_kmem.v file:
- Para identificar la clave HDCP2 TX DCP correcta file para hdcp2x_tx_kmem.v, asegúrese de que los primeros 4 bytes del file son “0x00, 0x00, 0x00, 0x01”.
- Las claves en la clave DCP. files están en formato little-endian.
- Alternativamente, puede aplicar lc128_prod desde hdcp2x_rx_kmem.v directamente en hdcp2x_tx_kmem.v. Las claves comparten los mismos valores.
Figura 40. Conjunto de cables de hdcp2x_tx_kmem.v
Esta figura muestra la asignación de bytes exacta de la clave HDCP2 TX DCP file en hdcp2x_tx_kmem.v.
4.3.3.2. Almacene claves de producción HDCP cifradas en la memoria flash externa o EEPROM (Admite administración de claves HDCP = 1)
Figura 41. Nivel alto sobreview de gestión de claves HDCP
Cuando el parámetro Compatibilidad con administración de claves HDCP está activado, usted mantiene el control del cifrado de claves de producción HDCP mediante la utilidad de software de cifrado de claves (KEYENC) y el diseño del programador de claves que proporciona Intel. Debe proporcionar las claves de producción HDCP y una clave de protección HDCP de 128 bits. La clave de protección HDCP
cifra la clave de producción HDCP y almacena la clave en la memoria flash externa (por ejemploamparchivo, EEPROM) en la tarjeta secundaria HDMI.
Active el parámetro Admite administración de claves HDCP y la función de descifrado de claves (KEYDEC) estará disponible en los núcleos IP HDCP. La misma protección HDCP
La clave debe usarse en KEYDEC para recuperar las claves de producción HDCP en tiempo de ejecución para los motores de procesamiento. KEYENC y KEYDEC admiten EEPROM serial Atmel AT24CS32 de 32 Kbit, EEPROM serial Atmel AT24C16A de 16 Kbit y dispositivos EEPROM I2C compatibles con al menos un tamaño de rom de 16 Kbit.
Nota:
- Para la tarjeta secundaria HDMI 2.0 FMC Revisión 11, asegúrese de que la EEPROM de la tarjeta secundaria sea Atmel AT24CS32. Hay dos tamaños diferentes de EEPROM utilizados en la tarjeta secundaria Bitec HDMI 2.0 FMC Revisión 11.
- Si anteriormente usó KEYENC para cifrar las claves de producción HDCP y activó la administración de claves HDCP en la versión 21.2 o anterior, debe volver a cifrar las claves de producción HDCP usando la utilidad de software KEYENC y regenerar las IP HDCP desde la versión 21.3.
adelante.
4.3.3.2.1. Intel KEYENC
KEYENC es una utilidad de software de línea de comandos que Intel utiliza para cifrar las claves de producción HDCP con una clave de protección HDCP de 128 bits que usted proporciona. KEYENC genera claves de producción HDCP cifradas en hexadecimal, contenedor o encabezado file formato. KEYENC también genera mif file que contiene la clave de protección HDCP de 128 bits proporcionada. KEYDEC
requiere el mif file.
Requisitos del 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. Puede verificar si Visual C++ redistribuible está instalado desde Windows ➤ Panel de control ➤ Programas y características. Si Microsoft Visual C++ está instalado, podrá ver Visual C++ xxxx
Redistribuible (x64). De lo contrario, puede descargar e instalar Visual C++.
Redistribuible de Microsoft websitio. Consulte la información relacionada para obtener el enlace de descarga.
Tabla 55. Opciones de línea de comando KEYENC
Opciones de línea de comandos | Argumento/Descripción |
-k | <HDCP protection key file> Texto file que contiene sólo la clave de protección HDCP de 128 bits en hexadecimal. Example: f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff |
-hdcp1tx | <HDCP 1.4 TX production keys file> Claves de producción del transmisor HDCP 1.4 file desde DCP (.bin file) |
-hdcp1rx | <HDCP 1.4 RX production keys file> Claves de producción del receptor HDCP 1.4 file desde DCP (.bin file) |
-hdcp2tx | <HDCP 2.3 TX production keys file> Claves de producción del transmisor HDCP 2.3 file desde DCP (.bin file) |
-hdcp2rx | <HDCP 2.3 RX production keys file> Claves de producción del receptor HDCP 2.3 file desde DCP (.bin file) |
-hdcp1txkeys | Especifique el rango de claves para la entrada seleccionada (.bin) files -hdcp1txkeys|hdcp1rxkeys|hdcp2rxkeys nm donde n = inicio de clave (1 o >1) m = final de clave (n o >n) Ej.ampen: Seleccione de 1 a 1000 claves de cada HDCP 1.4 TX, HDCP 1.4 RX y HCDP 2.3 Claves de producción RX file. “-hdcp1txkeys 1-1000 -hdcp1rxkeys 1-1000 -hdcp2rxkeys 1-1000” |
-hdcp1rxkeys | |
-hdcp2rxkeys | |
continuado… |
Opciones de línea de comandos | Argumento/Descripción |
Nota: 1. Si no está utilizando ninguna clave de producción HDCP file, no necesitará el rango de claves HDCP. Si no utiliza el argumento en la línea de comando, el rango de clave predeterminado es 0. 2. También puede seleccionar diferentes índices de claves para claves de producción HDCP. file. Sin embargo, la cantidad de claves debe coincidir con las opciones seleccionadas. Examparchivo: Seleccione diferentes 100 claves Seleccione las primeras 100 claves de las claves de producción HDCP 1.4 TX file “-hdcp1txclaves 1-100” Seleccione las claves 300 a 400 para las claves de producción HDCP 1.4 RX file “-hdcp1rxclaves 300-400” Seleccione las claves 600 a 700 para las claves de producción HDCP 2.3 RX file “-hdcp2rxclaves 600-700” |
|
-o | Producción file formato . El valor predeterminado es hexadecimal file. Genere claves de producción HDCP cifradas en binario file formato: -o bin Genera claves de producción HDCP cifradas en hexadecimal file formato: -o hex Genera claves de producción HDCP cifradas en el encabezado file formato: -oh |
–verificar claves | Imprimir el número de claves disponibles en la entrada. files. Exampen: |
keyenc.exe-hdcp1tx file> -hdcp1rx <HDCP 1.4 RX production keys file> -hdcp2tx file> -hdcp2rx file> –verificar-teclas |
|
Nota: use el parámetro –check-keys al final de la línea de comando como se menciona en el ejemplo anteriorampel. | |
-versión | Imprimir el número de versión de KEYENC |
Puede elegir selectivamente claves de producción HDCP 1.4 y/o HDCP 2.3 para cifrar. por ejemploamparchivo, para usar solo claves de producción HDCP 2.3 RX para cifrar, use solo -hdcp2rx
<HDCP 2.3 RX production keys file> -hdcp2rxkeys en los parámetros de la línea de comando.
Tabla 56. Guía de mensajes de error comunes de KEYENC
Mensaje de error | Pauta |
ERROR: clave de protección HDCP file desaparecido | Falta el parámetro de línea de comando -k file> |
ERROR: la clave debe tener 32 dígitos hexadecimales (por ejemplo, f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff) | Clave de protección HDCP file debe contener solo la clave de protección HDCP en 32 dígitos hexadecimales. |
ERROR: especifique el rango de claves | El rango de claves no se especifica para las claves de producción HDCP de entrada dadas file. |
ERROR: rango de claves no válido | El rango de claves especificado para -hdcp1txkeys o -hdcp1rxkeys o -hdcp2rxkeys no es correcto. |
ERROR: no se puede crearFilenombre> | Verifique el permiso de la carpeta desde que se está ejecutando keyenc.exe. |
ERROR: la entrada -hdcp1txkeys no es válida | El formato del rango de claves de entrada para las claves de producción HDCP 1.4 TX no es válido. El formato correcto es “-hdcp1txkeys nm” donde n >= 1, m >= n |
ERROR: la entrada -hdcp1rxkeys no es válida | El formato del rango de claves de entrada para las claves de producción HDCP 1.4 RX no es válido. El formato correcto es “-hdcp1rxkeys nm” donde n >= 1, m >= n |
ERROR: la entrada -hdcp2rxkeys no es válida | El formato del rango de claves de entrada para las claves de producción HDCP 2.3 RX no es válido. El formato correcto es “-hdcp2rxkeys nm” donde n >= 1, m >= n |
continuado… |
Mensaje de error | Pauta |
ERROR: no válido file <filenombre> | Claves de producción HDCP no válidas file. |
ERROR: file falta tipo para la opción -o | Falta el parámetro de línea de comando para –o . |
ERROR: no válido filenombre -filenombre> | <fileEl nombre> no es válido, utilice el válido filenombre sin caracteres especiales. |
Cifrar una clave única para una EEPROM única
Ejecute la siguiente línea de comando desde el símbolo del sistema de Windows para cifrar una clave única de HDCP 1.4 TX, HDCP 1.4 RX, HDCP 2.3 TX y HDCP 2.3 RX con salida file formato de encabezado file Para EEPROM individual:
keyenc.exe -k file> -hdcp1tx file> -hdcp1rx file> -hdcp2tx file> -hdcp2rx file> -hdcp1txkeys 1-1 -hdcp1rxkeys 1-1 -hdcp2rxkeys 1-1 -oh
Cifrar N claves para N EEPROM
Ejecute la siguiente línea de comando desde el símbolo del sistema de Windows para cifrar N claves (comenzando desde la clave 1) de HDCP 1.4 TX, HDCP 1.4 RX, HDCP 2.3 TX y HDCP 2.3 RX con salida file formato de hexadecimal file Para N EEPROM:
keyenc.exe -k file> -hdcp1tx file> -hdcp1rx file> -hdcp2tx file> -hdcp2rx file> -hdcp1txkeys 1 -hdcp1rxkeys1- -hdcp2rxkeys 1- -o hex donde N es >= 1 y debe coincidir para todas las opciones.
Información relacionada
Microsoft Visual C++ para Visual Studio 2019
Proporciona el paquete redistribuible de Microsoft Visual C++ x86 (vc_redist.x86.exe) para descargar. Si el vínculo cambia, Intel recomienda que busque “Visual C++ redistributable” en el motor de búsqueda de Microsoft.
4.3.3.2.2. Programador de claves
Para programar las claves de producción HDCP cifradas en la EEPROM, siga estos pasos:
- Copiar el diseño del programador clave files desde la siguiente ruta a su directorio de trabajo: /hdcp2x/hw_demo/programador_de_claves/
- Copiar el encabezado del software file (clave hdcp .h) generado desde la utilidad de software KEYENC (sección Cifrar una clave única para una sola EEPROM en la página 113) al directorio software/key_programmer_src/ y cámbiele el nombre a hdcp_key.h.
- Ejecute ./runall.tcl. Este script ejecuta los siguientes comandos:
• Generar catálogo de IP files
• Generar el sistema Platform Designer
• Crear un proyecto Intel Quartus Prime
• Crear un espacio de trabajo de software y desarrollar el software.
• Realizar una compilación completa - Descargar el objeto de software File (.sof) al FPGA para programar las claves de producción HDCP encriptadas en la EEPROM.
Genere el diseño de retransmisión Stratix 10 HDMI RX-TXampCon los parámetros Soporte HDCP 2.3 y Soporte HDCP 1.4 activados, siga el siguiente paso para incluir la clave de protección HDCP.
- Copiar el mif file (hdcp_kmem.mif) generado desde la utilidad de software KEYENC (sección Cifrar una clave única para una EEPROM única en la página 113) Directorio /quartus/hdcp/.
4.3.4. Compilar el diseño
Después de incluir sus propias claves de producción HDCP simples en el FPGA o programar las claves de producción HDCP cifradas en la EEPROM, ahora puede compilar el diseño.
- Inicie el software Intel Quartus Prime Pro Edition y abra /quartus/a10_hdmi2_demo.qpf.
- Haga clic en Procesamiento ➤ Iniciar compilación.
4.3.5. View los resultados
Al finalizar la demostración, usted podrá: view Los resultados en el receptor externo HDMI habilitado para HDCP.
A view Para obtener los resultados de la demostración, siga estos pasos:
- Encienda la placa Intel FPGA.
- Cambiar el directorio a /cuarto/.
- Escriba el siguiente comando en el Shell de comandos de Nios II para descargar el objeto de software File (.sof) al FPGA. salida nios2-configure-sof_files/ .sof
- Encienda la fuente y el receptor HDMI externos compatibles con HDCP (si aún no lo ha hecho). El receptor HDMI externo muestra la salida de su fuente HDMI externa.
4.3.5.1. Botones pulsadores y funciones LED
Utilice los botones pulsadores y las funciones LED del tablero para controlar su demostración.
Tabla 57. Pulsadores e indicadores LED (SUPPORT FRL = 0)
Pulsador/LED | Funciones |
cpu_resetn | Presione una vez para realizar el reinicio del sistema. |
usuario_pb[0] | Presione una vez para alternar la señal HPD a la fuente HDMI estándar. |
usuario_pb[1] | • Mantenga presionado para indicarle al núcleo TX que envíe la señal codificada DVI. • Suelte para enviar la señal codificada HDMI. • Asegúrese de que el vídeo entrante esté en un espacio de color RGB de 8 bpc. |
usuario_pb[2] | • Mantenga presionado para indicarle al núcleo TX que deje de enviar los InfoFrames desde las señales de banda lateral. • Suelte para reanudar el envío de InfoFrames desde las señales de banda lateral. |
usuario_led[0] | Estado de bloqueo RX HDMI PLL. • 0: Desbloqueado • 1: Bloqueado |
usuario_led[1] | Estado de bloqueo del núcleo HDMI RX • 0: Al menos 1 canal desbloqueado • 1: Los 3 canales bloqueados |
usuario_led[2] | Estado de descifrado de IP RX HDCP1x. • 0: Inactivo • 1: Activo |
usuario_led[3] | Estado de descifrado de IP RX HDCP2x. • 0: Inactivo • 1: Activo |
usuario_led[4] | Estado de bloqueo TX HDMI PLL. • 0: Desbloqueado • 1: Bloqueado |
usuario_led[5] | Estado de bloqueo PLL del transceptor TX. • 0: Desbloqueado • 1: Bloqueado |
usuario_led[6] | Estado de cifrado IP TX HDCP1x. • 0: Inactivo • 1: Activo |
usuario_led[7] | Estado de cifrado IP TX HDCP2x. • 0: Inactivo • 1: Activo |
Tabla 58. Pulsadores e indicadores LED (SUPPORT FRL = 1)
Pulsador/LED | Funciones |
cpu_resetn | Presione una vez para realizar el reinicio del sistema. |
usuario_dipsw | Interruptor DIP definido por el usuario para alternar el modo de paso. • APAGADO (posición predeterminada) = Paso a través HDMI RX en la FPGA obtiene el EDID del disipador externo y lo presenta a la fuente externa a la que está conectado. • ON = Puede controlar la tasa FRL máxima de RX desde el terminal Nios II. El comando modifica el EDID RX manipulando el valor máximo de tasa FRL. Referirse a Ejecución del diseño en diferentes tasas de FRL en la página 33 para obtener más información sobre cómo configurar las diferentes tasas de FRL. |
continuado… |
Pulsador/LED | Funciones |
usuario_pb[0] | Presione una vez para alternar la señal HPD a la fuente HDMI estándar. |
usuario_pb[1] | Reservado. |
usuario_pb[2] | Presione una vez para leer los registros SCDC del disipador conectado al TX de la tarjeta hija Bitec HDMI 2.1 FMC. Nota: Para habilitar la lectura, debe configurar DEBUG_MODE en 1 en el software. |
usuario_led_g[0] | Estado de bloqueo del PLL del reloj RX FRL. • 0: Desbloqueado • 1: Bloqueado |
usuario_led_g[1] | Estado de bloqueo de vídeo RX HDMI. • 0: Desbloqueado • 1: Bloqueado |
usuario_led_g[2] | Estado de descifrado de IP RX HDCP1x. • 0: Inactivo • 1: Activo |
usuario_led_g[3] | Estado de descifrado de IP RX HDCP2x. • 0: Inactivo • 1: Activo |
usuario_led_g[4] | Estado de bloqueo del PLL del reloj FRL TX. • 0: Desbloqueado • 1: Bloqueado |
usuario_led_g[5] | Estado de bloqueo de video TX HDMI. • 0 = Desbloqueado • 1 = Bloqueado |
usuario_led_g[6] | Estado de cifrado IP TX HDCP1x. • 0: Inactivo • 1: Activo |
usuario_led_g[7] | Estado de cifrado IP TX HDCP2x. • 0: Inactivo • 1: Activo |
4.4. Protección de la clave de cifrado incorporada en el diseño de FPGA
Muchos diseños de FPGA implementan cifrado y, a menudo, existe la necesidad de incorporar claves secretas en el flujo de bits del FPGA. En las familias de dispositivos más nuevas, como Intel Stratix 10 e Intel Agilex, existe un bloque de Administrador de dispositivos seguros que puede aprovisionar y administrar de forma segura estas claves secretas. Cuando no existen estas funciones, puede proteger el contenido del flujo de bits del FPGA, incluidas las claves de usuario secretas incorporadas, con cifrado.
Las claves de usuario deben mantenerse seguras dentro de su entorno de diseño y, lo ideal, es agregarlas al diseño mediante un proceso seguro automatizado. Los siguientes pasos muestran cómo puede implementar dicho proceso con las herramientas Intel Quartus Prime.
- Desarrollar y optimizar el HDL en Intel Quartus Prime en un entorno no seguro.
- Transfiera el diseño a un entorno seguro e implemente un proceso automatizado para actualizar la clave secreta. La memoria en el chip incorpora el valor de la clave. Cuando se actualiza la clave, se inicializa la memoria. file (.mif) puede cambiar y el flujo de ensamblador “quartus_cdb –update_mif” puede cambiar la clave de protección HDCP sin tener que volver a compilar. Este paso es muy rápido de ejecutar y conserva la sincronización original.
- Luego, el flujo de bits de Intel Quartus Prime se cifra con la clave FPGA antes de transferir el flujo de bits cifrado nuevamente al entorno no seguro para la prueba final y la implementación.
Se recomienda deshabilitar todo acceso de depuración que pueda recuperar la clave secreta del FPGA. Puede deshabilitar las capacidades de depuración por completo deshabilitando JTAG puerto, o deshabilitar y rehabilitar selectivamenteview que ninguna función de depuración, como el editor de memoria del sistema o Signal Tap, puede recuperar la clave. Consulte AN 556: Uso de las funciones de seguridad de diseño en FPGAs Intel para obtener más información sobre el uso de las funciones de seguridad de FPGA, incluidos los pasos específicos sobre cómo cifrar el flujo de bits de FPGA y configurar opciones de seguridad, como deshabilitar JTAG acceso.
Nota:
Puede considerar el paso adicional de ofuscación o cifrado con otra clave de la clave secreta en el almacenamiento MIF.
Información relacionada
AN 556: Uso de las funciones de seguridad de diseño en Intel FPGA
4.5. Consideraciones de seguridad
Al utilizar la función HDCP, tenga en cuenta las siguientes consideraciones de seguridad.
- Al diseñar un sistema repetidor, debe bloquear el ingreso del video recibido a la IP de TX en las siguientes condiciones:
— Si el video recibido está encriptado con HDCP (es decir, se confirma el estado de encriptación hdcp1_enabled o hdcp2_enabled desde la IP RX) y el video transmitido no está encriptado con HDCP (es decir, no se confirma el estado de encriptación hdcp1_enabled o hdcp2_enabled desde la IP TX).
— Si el video recibido es HDCP TYPE 1 (es decir, se confirma streamid_type de la IP RX) y el video transmitido está encriptado HDCP 1.4 (es decir, se confirma el estado de encriptación hdcp1_enabled de la IP TX) - Debe mantener la confidencialidad e integridad de sus claves de producción HDCP y de cualquier clave de cifrado de usuario.
- Intel recomienda encarecidamente que desarrolle cualquier proyecto Intel Quartus Prime y diseñe fuentes. files que contienen claves de cifrado en un entorno informático seguro para proteger las claves.
- Intel recomienda encarecidamente que utilice las funciones de seguridad de diseño en los FPGA para proteger el diseño, incluidas las claves de cifrado integradas, contra copias no autorizadas, ingeniería inversa y otras amenazas.ampriendo
Información relacionada
AN 556: Uso de las funciones de seguridad de diseño en Intel FPGA
4.6. Pautas de depuración
Esta sección describe la señal de estado HDCP útil y los parámetros de software que se pueden utilizar para la depuración. También contiene preguntas frecuentes (FAQ) sobre la ejecución del programa de diseño.ampel.
4.6.1. Señales de estado HDCP
Existen varias señales que son útiles para identificar el estado de funcionamiento de los núcleos IP HDCP. Estas señales están disponibles en el diseño exampLos de nivel superior están vinculados a los LED integrados:
Nombre de la señal | Función |
hdcp1_habilitado_rx | Estado de descifrado de IP RX HDCP1x 0: Inactivo 1: activo |
hdcp2_habilitado_rx | Estado de descifrado de IP RX HDCP2x 0: Inactivo 1: activo |
transmisión habilitada hdcp1 | Estado de cifrado de IP TX HDCP1x 0: Inactivo 1: activo |
transmisión habilitada hdcp2 | Estado de cifrado de IP TX HDCP2x 0: Inactivo 1: activo |
Consulte la Tabla 57 en la página 115 y la Tabla 58 en la página 115 para conocer las respectivas ubicaciones de los LED.
El estado activo de estas señales indica que la IP HDCP está autenticada y recibe/envía una transmisión de video cifrada. Para cada dirección, solo HDCP1x o HDCP2x
Las señales de estado de cifrado/descifrado están activas. Por ejemploampes decir, si hdcp1_enabled_rx o hdcp2_enabled_rx está activo, el HDCP en el lado RX se habilita y descifra la transmisión de video cifrada de la fuente de video externa.
4.6.2. Modificación de los parámetros del software HDCP
Para facilitar el proceso de depuración de HDCP, puede modificar los parámetros en hdcp.c.
La siguiente tabla resume la lista de parámetros configurables y sus funciones.
Parámetro | Función |
SOPORTE_HDCP1X | Habilitar HDCP 1.4 en el lado TX |
SOPORTE_HDCP2X | Habilitar HDCP 2.3 en el lado TX |
MODO DE DEPURACIÓN HDCP | Habilitar mensajes de depuración para TX HDCP |
MODO_REPETIDOR | Habilitar el modo repetidor para el diseño HDCP, por ejemploample |
Para modificar los parámetros, cambie los valores a los valores deseados en hdcp.c. Antes de iniciar la compilación, realice el siguiente cambio en build_sw_hdcp.sh:
- Localice la siguiente línea y coméntela para evitar que se modifique el software. file siendo reemplazado por el original files de la ruta de instalación del software Intel Quartus Prime.
- Ejecute “./build_sw_hdcp.sh” para compilar el software actualizado.
- El .elf generado file Se puede incluir en el diseño a través de dos métodos:
a. Ejecute “nios2-download -g file nombre>”. Reinicie el sistema una vez completado el proceso de descarga para garantizar un funcionamiento adecuado.
b. Ejecute “quartus_cdb –-update_mif” para actualizar la inicialización de la memoria. files. Ejecute el ensamblador para generar un nuevo .sof file que incluye el software actualizado.
4.6.3. Preguntas frecuentes (FAQ)
Tabla 59. Síntomas de falla y pautas
Número | Síntoma de falla | Pauta |
1. | El RX está recibiendo video cifrado, pero el TX está enviando un video estático en color azul o negro. | Esto se debe a que la autenticación TX con el receptor externo no se ha realizado correctamente. Un repetidor compatible con HDCP no debe transmitir el vídeo en formato no cifrado si el vídeo entrante del canal ascendente está cifrado. Para lograrlo, un vídeo estático en color azul o negro reemplaza al vídeo saliente cuando la señal de estado de cifrado TX HDCP está inactiva mientras que la señal de estado de descifrado RX HDCP está activa. Para conocer las pautas exactas, consulte Consideraciones de seguridad en la página 117. Sin embargo, este comportamiento puede dificultar el proceso de depuración al habilitar el diseño HDCP. A continuación se muestra el método para deshabilitar el bloqueo de video en el diseño exampen: 1. Ubique la siguiente conexión de puerto en el nivel superior del diseño example. Este puerto pertenece al módulo hdmi_tx_top. 2. Modifique la conexión del puerto en la siguiente línea: |
2. | La señal de estado de cifrado TX HDCP está activa, pero se muestra una imagen de nieve en el receptor descendente. | Esto se debe a que el receptor descendente no descifra correctamente el video cifrado saliente. Asegúrese de proporcionar la constante global (LC128) a la dirección IP HDCP de TX. El valor debe ser el valor de producción y correcto. |
3. | La señal de estado de cifrado TX HDCP es inestable o está siempre inactiva. | Esto se debe a que la autenticación TX con el receptor descendente no se realizó correctamente. Para facilitar el proceso de depuración, puede habilitar la MODO DE DEPURACIÓN HDCP parámetro en hdcp.c. Consulte Modificación de los parámetros del software HDCP en la página 118 de las pautas. Los siguientes puntos 3a-3c podrían ser las posibles causas de una autenticación TX fallida. |
3a. | El registro de depuración del software sigue imprimiendo este mensaje “HDCP 1.4 no es compatible con el flujo descendente (Rx)”. | El mensaje indica que el receptor descendente no admite HDCP 2.3 y HDCP 1.4. Asegúrese de que el receptor descendente admita HDCP 2.3 o HDCP 1.4. |
3b. | La autenticación TX falla a mitad de camino. | Esto se debe a que cualquier parte de la autenticación TX, como la verificación de firma, la verificación de localidad, etc., puede fallar. Asegúrese de que el receptor descendente esté usando la clave de producción, pero no la clave de fax. |
3c. | El registro de depuración del software sigue imprimiendo "Re-autenticación | Este mensaje indica que el receptor descendente ha solicitado una nueva autenticación porque el video recibido no se descifró correctamente. Asegúrese de proporcionar la constante global (LC128) a la dirección IP HDCP de transmisión. El valor debe ser el valor de producción y el valor debe ser correcto. |
continuado… |
Número | Síntoma de falla | Pauta |
“es obligatorio” después de completar la autenticación HDCP. | ||
4. | La señal de estado de descifrado RX HDCP está inactiva aunque la fuente ascendente haya habilitado HDCP. | Esto indica que la IP RX HDCP no ha alcanzado el estado autenticado. De forma predeterminada, la MODO_REPETIDOR El parámetro está habilitado en el diseño example. Si el MODO_REPETIDOR está habilitado, asegúrese de que la IP HDCP de TX esté autenticada.
Cuando el MODO_REPETIDOR Si el parámetro está habilitado, la IP HDCP de RX intenta la autenticación como repetidor si el TX está conectado a un receptor compatible con HDCP. La autenticación se detiene a mitad de camino mientras se espera que la IP HDCP de TX complete la autenticación con el receptor descendente y pase RECEIVERID_LIST a la IP HDCP de RX. El tiempo de espera, tal como se define en la Especificación HDCP, es de 2 segundos. Si la IP HDCP de TX no puede completar la autenticación en este período, la fuente ascendente trata la autenticación como fallida e inicia una nueva autenticación, tal como se especifica en la Especificación HDCP. |
Nota: • Referirse a Modificación de los parámetros del software HDCP en la página 118 para conocer el método para deshabilitar el MODO_REPETIDOR parámetro para fines de depuración. Después de deshabilitar el MODO_REPETIDOR parámetro, la IP HDCP RX siempre intenta la autenticación como receptor de punto final. La IP HDCP TX no bloquea el proceso de autenticación. | ||
• Si el MODO_REPETIDOR Si el parámetro no está habilitado, asegúrese de que la clave HDCP proporcionada a la IP HDCP sea el valor de producción y que el valor sea correcto. | ||
5. | La señal de estado de descifrado RX HDCP es inestable. | Esto significa que la IP HDCP de RX solicitó una nueva autenticación justo después de alcanzar el estado autenticado. Probablemente esto se deba a que la IP HDCP de RX no descifra correctamente el video cifrado entrante. Asegúrese de que la constante global (LC128) proporcionada al núcleo de la IP HDCP de RX sea un valor de producción y que el valor sea correcto. |
HDMI Intel Arria 10 FPGA IP Diseño ExampArchivos de la guía del usuario
Para obtener las versiones anteriores y más recientes de esta guía del usuario, consulte HDMI Intel® Arria 10 FPGA IP Design ExampGuía del usuario. Si no se incluye una IP o una versión de software, se aplicará la guía del usuario de la IP o versión de software anterior.
Las versiones de IP son las mismas que las versiones del software Intel Quartus Prime Design Suite hasta la v19.1. A partir de la versión 19.2 o posterior del software Intel Quartus Prime Design Suite, IP
Los núcleos tienen un nuevo esquema de versiones de IP.
Historial de revisiones para HDMI Intel Arria 10 FPGA IP Design ExampGuía del usuario
Versión del documento | Versión Intel Quartus Prime | Versión IP | Cambios |
2022.12.27 | 22.4 | 19.7.1 | Se agregó un nuevo parámetro para seleccionar la revisión de la tarjeta secundaria HDMI a la sección Requisitos de hardware y software del ejemplo de diseño.ample para HDMI 2.0 (modo no FRL). |
2022.07.29 | 22.2 | 19.7.0 | • Notificación de eliminación del componente Cygwin de la versión Windows* de Nios II EDS y el requisito de instalar WSL para los usuarios de Windows*. • Se actualizó la versión de la tarjeta hija de la Revisión 4 a la 9 cuando corresponde en todo el documento. |
2021.11.12 | 21.3 | 19.6.1 | • Se actualizó la subsección Almacenar claves de producción HDCP cifradas en la memoria flash externa o EEPROM (Compatibilidad con administración de claves HDCP = 1) para describir la nueva utilidad de software de cifrado de claves (KEYENC). • Se eliminaron las siguientes figuras: — Matriz de datos de la clave de fax R1 para la clave privada RX — Matrices de datos de claves de producción HDCP (marcador de posición) — Matriz de datos de la clave de protección HDCP (clave predefinida) — Clave de protección HDCP inicializada en hdcp2x_tx_kmem.mif — Clave de protección HDCP inicializada en hdcp1x_rx_kmem.mif — Clave de protección HDCP inicializada en hdcp1x_tx_kmem.mif • Se movió la subsección Asignación de clave HDCP de Clave DCP Files de las Pautas de depuración para almacenar claves de producción HDCP simples en el FPGA (Compatibilidad con administración de claves HDCP = 0). |
2021.09.15 | 21.1 | 19.6.0 | Se eliminó la referencia a ncsim |
2021.05.12 | 21.1 | 19.6.0 | • Se agregó Cuando SOPORTE FRL = 1 o SOPORTE ADMINISTRACIÓN DE CLAVE HDCP = 1 a la descripción de la Figura 29 Ejemplo de diseño de HDCP sobre HDMIampEl diagrama de bloques. • Se agregaron los pasos en la memoria de clave HDCP files en Tutorial de diseño. • Se agregó Cuando SUPPORT FRL = 0 a la sección Configurar el hardware. • Se agregó el paso para activar el parámetro Soporte de administración de claves HDCP en Generar el diseño. • Se agregó una nueva subsección Almacenar claves de producción HDCP cifradas en la memoria flash externa o EEPROM (Compatibilidad con administración de claves HDCP = 1). |
continuado… |
Versión del documento | Versión Intel Quartus Prime | Versión IP | Cambios |
• Se cambió el nombre de la tabla de botones pulsadores e indicadores LED a Botón pulsador e indicadores LED (SOPORTE FRL = 0). • Se agregaron botones pulsadores de mesa e indicadores LED (SOPORTE FRL = 1). • Se agregó un nuevo capítulo Protección de clave de cifrado incorporada en el diseño de FPGA. • Se agregó un nuevo capítulo Pautas de depuración y subsecciones Señales de estado HDCP, Modificación de parámetros de software HDCP y Preguntas frecuentes. |
|||
2021.04.01 | 21.1 | 19.6.0 | • Componentes de figura actualizados necesarios para el diseño solo RX o solo TX. • Tabla actualizada generada RTL Files. • Figura actualizada de componentes superiores HDMI RX. • Se eliminó la sección del proceso de capacitación del enlace superior HDMI RX. • Se actualizaron los pasos en Ejecutar el diseño en diferentes tasas de FRL. • Figura actualizada Diseño HDMI 2.1 ExampEl esquema de cronometraje. • Señales del esquema de sincronización de tablas actualizadas. • Se actualizó la figura del diagrama de bloques HDMI RX-TX para agregar una conexión desde el Transceiver Arbiter a la parte superior del TX. |
2020.09.28 | 20.3 | 19.5.0 | • Se eliminó la nota que indicaba que el diseño HDMI 2.1 example en modo FRL solo admite dispositivos de grado de velocidad -1 en el HDMI Intel FPGA IP Design ExampGuía de inicio rápido para dispositivos Intel Arria 10 y diseño HDMI 2.1 ExampSecciones le (Compatible con FRL = 1). El diseño admite todos los niveles de velocidad. • Se eliminó la información ls_clk de todos los diseños HDMI 2.1.ampSecciones relacionadas. El dominio ls_clk ya no se utiliza en el diseño exampel. • Se actualizaron los diagramas de bloques para el ejemplo de diseño HDMI 2.1.ample en modo FRL en el diseño HDMI 2.1 Example (Compatible con FRL = 1), Creación de diseños de solo RX o solo TX, Componentes de diseño y secciones de Esquema de sincronización. • Se actualizaron los directorios y se generaron files lista en las secciones de Estructura de directorio. • Se eliminaron señales irrelevantes y se agregó o editó la descripción del siguiente ejemplo de diseño HDMI 2.1amplas señales en la sección Señales de interfaz: — sys_init —txpll_frl_bloqueado — tx_os — señales txphy_rcfg* —tx_reconfig_done —txcore_tbcr — pio_in0_external_connection_export • Se agregaron los siguientes parámetros en la sección Parámetros de diseño RTL: — ANCHO DE DIRECCIÓN DE RAM EDID — BITEC_TARJETA_HIJA_REV — UTILICE FPLL — INVERSIÓN DE POLARIDAD |
continuado… |
Versión del documento | Versión Intel Quartus Prime | Versión IP | Cambios |
• Se actualizaron los diagramas de bloques para el ejemplo de diseño HDMI 2.0.ample para el software Intel Quartus Prime Pro Edition en el HDMI 2.0 Design Example (Compatible con FRL = 0), Creación de diseños de solo RX o solo TX, Componentes de diseño y secciones de Esquema de sincronización. • Se actualizaron los nombres de las señales de reloj y reinicio en la sección Inserción y filtrado de InfoFrame de rango dinámico y masterización (HDR). • Se eliminaron señales irrelevantes y se agregó o editó la descripción del siguiente ejemplo de diseño HDMI 2.0amplas señales en la sección Señales de interfaz: —clk_fpga_b3_p — REFCLK_FMCB_P — fmcb_la_tx_p_11 — fmcb_la_rx_n_9e — de_clck — restablecer_xcvr_powerup — señales nios_tx_i2c* — señales hdmi_ti_i2c* — señales tx_i2c_avalon* — puente_del_reloj_0_en_clk_clk — restablecer_puente_0_restablecer_restablecer_n — señales i2c_master* — señales nios_tx_i2c* — medir_exportación_de_conexiones_externas_de_pio_válidas — señales oc_i2c_av_slave_translator_avalon_an ti_slave_0* — powerup_cal_done_export — rx_pma_cal_busy_export — exportación rx_pma_ch — señales rx_pma_rcfg_mgmt* • Se agregó una nota que indica que el banco de pruebas de simulación no es compatible con diseños con el Incluir I2C parámetro habilitado y actualizado el mensaje de simulación en la sección Banco de pruebas de simulación. • Se actualizó la sección Actualizar su diseño. |
|||
2020.04.13 | 20.1 | 19.4.0 | • Se agregó una nota que indica que el diseño HDMI 2.1 example en modo FRL solo admite dispositivos de grado de velocidad -1 en el HDMI Intel FPGA IP Design ExampGuía de inicio rápido para dispositivos Intel Arria 10 y descripción detallada del diseño HDMI 2.1 ExampSecciones le (Soporte FRL = 1). • Se trasladó el diseño HDCP sobre HDMI ExampSección para dispositivos Intel Arria 10 de la Guía del usuario de Intel FPGA IP HDMI. • Se editó la sección Simulación del diseño para incluir el audio.ampgenerador de le, generador de datos de banda lateral y generador de datos auxiliares y actualizó el mensaje de simulación exitosa. • Se eliminó la nota que indicaba que la simulación solo está disponible para Apoya a FRL Nota sobre diseños deshabilitados. La simulación ahora está disponible para Apoya a FRL También se habilitaron diseños. • Se actualizó la descripción de la función en la Descripción detallada del diseño HDMI 2.1 ExampSección le (Compatibilidad con FRL habilitada). |
continuado… |
Versión del documento | Versión Intel Quartus Prime | Versión IP | Cambios |
• Se editó el diagrama de bloques en las secciones Diagrama de bloques de diseño RX-TX HDMI 2.1, Componentes de diseño y Creación de diseños solo RX o solo TX para el ejemplo de diseño HDMI 2.1.ampSe agregaron nuevos componentes y se eliminaron componentes que ya no son aplicables. • Se editó la instrucción del script main.c en la sección Creación de diseños solo RX o solo TX. • Se actualizaron las secciones de Estructura de directorio para agregar nuevas carpetas y files tanto para HDMI 2.0 como para HDMI 2.1 ejemplo de diseñoampLes. • Se actualizó la sección Requisitos de hardware y software para el diseño HDMI 2.1ampel. • Se actualizaron el diagrama de bloques y las descripciones de señales en la sección Inserción y filtrado de InfoFrame de rango dinámico y masterización (HDR) para el ejemplo de diseño HDMI 2.1.ampel. • Se agregó una nueva sección, Ejecutar el diseño en diferentes velocidades FRL, para el ejemplo de diseño HDMI 2.1.ampLes. • Se actualizó el diagrama de bloques y las descripciones de señales en la sección Esquema de reloj para el ejemplo de diseño HDMI 2.1.ampel. • Se agregó una descripción sobre el interruptor DIP del usuario en la sección Configuración de hardware para el ejemplo de diseño HDMI 2.1.ampel. • Se actualizó la sección Limitaciones de diseño para el diseño HDMI 2.1.ampel. • Se actualizó la sección Actualizar su diseño. • Se actualizaron las secciones del banco de pruebas de simulación para el diseño de HDMI 2.0 y HDMI 2.1.ampLes. |
|||
2020.01.16 | 19.4 | 19.3.0 | • Se actualizó el diseño IP de Intel FPGA HDMI ExampLa sección Guía de inicio rápido para dispositivos Intel Arria 10 con información sobre el nuevo diseño HDMI 2.1 agregadoample con modo FRL. • Se agregó un nuevo capítulo, Descripción detallada del diseño de HDMI 2.1 Example (Compatibilidad con FRL habilitada) que contiene toda la información relevante sobre el diseño recientemente agregadoampel. • Se renombró el diseño de IP FPGA Intel HDMI Example Descripción detallada a Descripción detallada para Diseño HDMI 2.0 Example para mayor claridad. |
2019.10.31 | 18.1 | 18.1 | • Se agregó generado files en la carpeta tx_control_src: ti_i2c.c y ti_i2c.h. • Se agregó soporte para la revisión 11 de la tarjeta hija FMC en las secciones Requisitos de hardware y software y Compilación y prueba del diseño. • Se eliminó la sección Limitación de diseño. La limitación relacionada con la violación de tiempo en las restricciones de sesgo máximo se resolvió en la versión 18.1 de la IP Intel FPGA HDMI. • Se agregó un nuevo parámetro RTL, BITEC_DAUGHTER_CARD_REV, para permitirle seleccionar la revisión de la tarjeta secundaria HDMI Bitec. |
continuado… |
Versión del documento | Versión Intel Quartus Prime | Versión IP | Cambios |
• Se actualizó la descripción de las señales fmcb_dp_m2c_p y fmcb_dp_c2m_p para incluir información sobre las revisiones de la tarjeta hija FMC 11, 6 y 4. • Se agregaron las siguientes señales nuevas para la revisión 11 de la tarjeta hija Bitec: — hdmi_tx_ti_i2c_sda — hdmi_tx_ti_i2c_scl — dirección oc_i2c_master_ti_avalon_anti_slave — oc_i2c_master_ti_avalon_anti_slave_write — oc_i2c_master_ti_avalon_anti_slave_readdata — oc_i2c_master_ti_avalon_anti_slave_writedata — oc_i2c_master_ti_avalon_anti_slave_w aitrequest • Se agregó una sección sobre cómo actualizar su diseño. |
|||
2017.11.06 | 17.1 | 17.1 | • Se cambió el nombre del núcleo IP HDMI a IP FPGA HDMI Intel según el cambio de marca de Intel. • Se cambió el término Qsys a Diseñador de plataforma. • Se agregó información sobre la función de inserción y filtrado de Dynamic Range y Mastering InfoFrame (HDR). • Se actualizó la estructura del directorio: — Se agregaron carpetas de scripts y software y files. — Actualización común y hdr files. — Se eliminó el atx files. — Diferenciado files para Intel Quartus Prime Standard Edition e Intel Quartus Prime Pro Edition. • Se actualizó la sección Generación de diseño para agregar el dispositivo utilizado como 10AX115S2F4I1SG. • Se editó la velocidad de datos del transceptor para la frecuencia de reloj TMDS de 50-100 MHz a 2550-5000 Mbps. • Se actualizó la información del enlace RX-TX para que pueda liberar el botón user_pb[2] para deshabilitar el filtrado externo. • Se actualizó el diagrama de flujo del software Nios II que involucra los controles para el maestro I2C y la fuente HDMI. • Se agregó información sobre el Ex diseñoample Parámetros de la GUI. • Se agregaron parámetros de diseño superiores HDMI RX y TX. • Se agregaron estas señales HDMI RX y TX de nivel superior: — gestión_clk - reiniciar — i2c_clk —entrada hdmi_clk_in — Se eliminaron estas señales HDMI RX y TX de nivel superior: • versión • i2c_clk |
continuado… |
Versión del documento | Versión Intel Quartus Prime | Versión IP | Cambios |
• Se agregó una nota que indica que la configuración analógica del transceptor se prueba para el kit de desarrollo FPGA Intel Arria 10 y la tarjeta secundaria HDMI 2.0 de Bitec. Puede modificar la configuración analógica para su placa. • Se agregó un enlace para una solución alternativa para evitar la vibración de la cascada PLL o las rutas de reloj no dedicadas para el reloj de referencia PLL Intel Arria 10. • Se agregó una nota que indica que no se puede usar un pin RX del transceptor como un refclk CDR para HDMI RX o como un refclk TX PLL para HDMI TX. • Se agregó una nota sobre cómo agregar la restricción set_max_skew para diseños que usan enlaces TX PMA y PCS. |
|||
2017.05.08 | 17.0 | 17.0 | • Renombrado como Intel. • Se modificó el número de pieza. • Se actualizó la estructura del directorio: — Se agregó HDR files. — Se cambió qsys_vip_passthrough.qsys a nios.qsys. - Agregado files designado para Intel Quartus Prime Pro Edition. • Información actualizada de que el bloque de enlace RX-TX también realiza un filtrado externo en el Infoframe de alto rango dinámico (HDR) a partir de los datos auxiliares HDMI RX e inserta un exampel HDR Infoframe a los datos auxiliares del HDMI TX a través del multiplexor Avalon ST. • Se agregó una nota para la descripción de PHY nativo del transceptor que indica que para cumplir con el requisito de desviación entre canales TX HDMI, debe configurar la opción de modo de enlace de canal TX en el editor de parámetros PHY nativo del transceptor Arria 10 en Unión PMA y PCS. • Descripción actualizada de señales de sistema operativo y de medida. • Se modificaron los oversampfactor de modulación para diferentes velocidades de datos del transceptor en cada rango de frecuencia de reloj TMDS para soportar el esquema de reloj directo TX FPLL. • Se modificó el esquema de sincronización en cascada TX IOPLL a TX FPLL al esquema directo TX FPLL. • Se agregaron señales de reconfiguración TX PMA. • Se editaron los superposiciones USER_LED[7]ampEstado de ling. 1 indica excesosampled (velocidad de datos < 1,000 Mbps en el dispositivo Arria 10). • Diseño HDMI actualizado ExampTabla de simuladores compatibles. VHDL no compatible con NCSim. • Se agregó un enlace a la versión archivada del Arria 10 HDMI IP Core Design ExampGuía del usuario. |
2016.10.31 | 16.1 | 16.1 | Lanzamiento inicial. |
Corporación Intel. Reservados todos los derechos. Intel, el logotipo de Intel y otras marcas de Intel son marcas comerciales de Intel Corporation o sus subsidiarias. Intel garantiza el rendimiento de sus productos semiconductores y FPGA según las especificaciones actuales de acuerdo con la garantía estándar de Intel, pero se reserva el derecho de realizar cambios en cualquier producto y servicio en cualquier momento sin previo aviso. Intel no asume ninguna responsabilidad que surja de la aplicación o el uso de cualquier información, producto o servicio descrito en este documento, excepto que Intel lo acuerde expresamente por escrito. Se recomienda a los clientes de Intel que obtengan la última versión de las especificaciones del dispositivo antes de confiar en cualquier información publicada y antes de realizar pedidos de productos o servicios. *Otros nombres y marcas pueden reclamarse como propiedad de otros.
Versión en línea
Enviar comentarios
Identificación: 683156
Versión: 2022.12.27
Documentos / Recursos
![]() |
intel HDMI Arria 10 FPGA IP Diseño Example [pdf] Guía del usuario HDMI Arria 10 FPGA Diseño IP Example, HDMI Arria, 10 FPGA IP Diseño Example, Diseño Example |