Guía del usuario de GPIO Intel® FPGA IP
Dispositivos Intel® Arria® 10 e Intel® Cyclone® 10 GX
Actualizado para Intel® Quartus® Prime Design Suite: 21.2
Versión IP: 20.0.0
Versión en línea IDENTIFICACIÓN: 683136
Enviar comentarios ug-altera_gpio Versión: 2021.07.15
El núcleo IP GPIO Intel® FPGA es compatible con las funciones y los componentes de E/S de propósito general (GPIO). Puede usar GPIO en aplicaciones generales que no son específicas de transceptores, interfaces de memoria o LVDS.
El núcleo IP GPIO está disponible solo para dispositivos Intel Arria® 10 e Intel Cyclone® 10 GX. Si está migrando diseños de dispositivos Stratix® V, Arria V o Cyclone V, debe migrar los núcleos IP ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR o ALTIOBUF.
Información relacionada
- Flujo de migración IP para dispositivos Arria V, Cyclone V y Stratix V en la página 22
- Guías de implementación de E/S de Intel Stratix 10
Proporciona la guía del usuario del núcleo GPIOIP para dispositivos Intel Stratix 10. - Introducción a los núcleos IP Intel FPGA
Proporciona información general sobre todos los núcleos IP de Intel FPGA, incluida la parametrización, generación, actualización y simulación de núcleos IP. - Creación de secuencias de comandos de simulación Qsys e IP independientes de la versión
Cree scripts de simulación que no requieran actualizaciones manuales para actualizaciones de versión de software o IP. - Mejores prácticas de gestión de proyectos
Pautas para una gestión eficiente y portabilidad de su proyecto y propiedad intelectual files. - Archivos de la guía del usuario de GPIO Intel FPGA IP en la página 24
Proporciona una lista de guías de usuario para versiones anteriores de GPIO IP core. - E/S de velocidad de datos doble (ALTDDIO_IN, ALTDDIO_OUT y ALTDDIO_BIDIR) Guía del usuario de IP Cores
- Búfer de E/S (ALTIOBUF) Guía del usuario de IP Core
Información de lanzamiento para GPIO Intel FPGA IP
Las versiones de Intel FPGA IP coinciden con las versiones del software Intel Quartus® Prime Design Suite hasta v19.1. A partir de la versión 19.2 del software Intel Quartus Prime Design Suite, Intel FPGA IP tiene un nuevo esquema de control de versiones.
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.
El número de versión de Intel FPGA IP (XYZ) puede cambiar con cada versión de software Intel Quartus Prime. Un cambio en:
- X indica una revisión importante de la propiedad intelectual. Si actualiza el software Intel Quartus Prime, debe regenerar la IP.
- Y indica que la IP incluye nuevas funciones. Regenera tu IP para incluir estas nuevas funciones.
- Z indica que la IP incluye cambios menores. Regenera tu IP para incluir estos cambios.
Tabla 1. Información de versión actual de GPIO Intel FPGA IP Core
Artículo |
Descripción |
Versión IP | 20.0.0 |
Versión Intel Quartus Prime | 21.2 |
Fecha de lanzamiento | 2021.06.23 |
Funciones IP GPIO Intel FPGA
El núcleo IP de GPIO incluye funciones para admitir los bloques de E/S del dispositivo. Puede utilizar el editor de parámetros de Intel Quartus Prime para configurar el núcleo IP de GPIO.
El núcleo IP de GPIO proporciona estos componentes:
- Entrada/salida de velocidad de datos doble (DDIO): un componente digital que duplica o reduce a la mitad la velocidad de datos de un canal de comunicación.
- Cadenas de retardo: configure las cadenas de retardo para realizar un retardo específico y asistir en el cierre de temporización de E/S.
- Búferes de E/S: conecte los pads a la FPGA.
Rutas de datos IP GPIO Intel FPGA
Figura 1. Alto nivel View de GPIO de terminación única
Tabla 2. Modos de ruta de datos de GPIO IP Core
Ruta de datos |
Modo de registro | |||
Derivación | Registro sencillo |
E/S DDR |
||
Tarifa completa |
Media tarifa |
|||
Aporte | Los datos van desde el elemento de retardo hasta el núcleo, sin pasar por todas las E/S de doble velocidad de datos (DDIO). | El DDIO de tasa completa funciona como un registro simple, sin pasar por los DDIO de tasa media. El instalador elige si empaqueta el registro en la E/S o implementa el registro en el núcleo, según el área y las compensaciones de tiempo. | El DDIO de tasa completa funciona como un DDIO regular, sin pasar por los DDIO de tasa media. | El DDIO de tasa completa funciona como un DDIO normal. Los DDIO de tasa media convierten datos de tasa completa en datos de tasa media. |
Producción | Los datos van desde el núcleo directamente al elemento de retardo, sin pasar por todos los DDIO. | El DDIO de tasa completa funciona como un registro simple, sin pasar por los DDIO de tasa media. El instalador elige si empaqueta el registro en la E/S o implementa el registro en el núcleo, según el área y las compensaciones de tiempo. | El DDIO de tasa completa funciona como un DDIO regular, sin pasar por los DDIO de tasa media. | El DDIO de tasa completa funciona como un DDIO normal. Los DDIO de tasa media convierten datos de tasa completa en datos de tasa media. |
Bidireccional | El búfer de salida impulsa tanto un pin de salida como un búfer de entrada. | El DDIO de tasa completa funciona como un registro simple. El búfer de salida impulsa tanto un pin de salida como un búfer de entrada. | El DDIO de tasa completa funciona como un DDIO normal. El búfer de salida impulsa tanto un pin de salida como un búfer de entrada. El búfer de entrada impulsa un conjunto de tres flip-flops. | El DDIO de tasa completa funciona como un DDIO normal. Los DDIO de tasa media convierten datos de tasa completa a tasa mitad. El búfer de salida impulsa tanto un pin de salida como un búfer de entrada. El búfer de entrada impulsa un conjunto de tres flip-flops. |
Si usa señales asíncronas claras y preestablecidas, todos los DDIO comparten estas mismas señales.
Los DDIO de tasa media y tasa completa se conectan a relojes separados. Cuando utiliza DDIO de velocidad media y velocidad completa, el reloj de velocidad completa debe funcionar al doble de la frecuencia de velocidad media. Puede utilizar diferentes relaciones de fase para cumplir con los requisitos de tiempo.
Información relacionada
Bits altos y bajos del bus de entrada y salida en la página 12
Ruta de entrada
El pad envía datos al búfer de entrada y el búfer de entrada alimenta el elemento de retardo. Después de que los datos van a la salida del elemento de retardo, los multiplexores de derivación programables seleccionan las características y las rutas a usar. Cada ruta de entrada contiene dos stages de DDIO, que son de tasa completa y tasa media.
Figura 2. Simplificado View de ruta de entrada GPIO de un solo extremo
- El pad recibe datos.
- DDIO IN (1) captura datos en los flancos ascendente y descendente de ck_fr y envía los datos, las señales (A) y (B) en la siguiente figura de forma de onda, a una velocidad de datos única.
- DDIO IN (2) y DDIO IN (3) reducen a la mitad la tasa de datos.
- dout[3:0] presenta los datos como un bus de tasa media.
Figura 3. Forma de onda de ruta de entrada en modo DDIO con conversión de tasa media
En esta figura, los datos van desde un reloj de velocidad completa con una velocidad de datos doble hasta un reloj de media velocidad con una velocidad de datos única. La velocidad de datos se divide por cuatro y el tamaño del bus aumenta en la misma proporción. El rendimiento general a través del núcleo IP GPIO permanece sin cambios.
La relación de temporización real entre diferentes señales puede variar según el diseño específico, los retrasos y las fases que elija para los relojes de frecuencia completa y frecuencia media.
Nota: El núcleo IP GPIO no admite la calibración dinámica de pines bidireccionales. Para aplicaciones que requieren calibración dinámica de pines bidireccionales, consulte la información relacionada.
Información relacionada
- PHY Lite para interfaces paralelas Guía del usuario de Intel FPGA IP Core: dispositivos Intel Stratix 10, Intel Arria 10 e Intel Cyclone 10 GX
Proporciona más información para aplicaciones que requieren OCT dinámico para pines bidireccionales. - Rutas de salida y habilitación de salida en la página 7
Rutas de salida y habilitación de salida
El elemento de retardo de salida envía datos al pad a través del búfer de salida.
Cada ruta de salida contiene dos stages de DDIO, que son de tasa media y tasa completa.
Figura 4. Simplificado View de ruta de salida GPIO de un solo extremo
Figura 5. Forma de onda de ruta de salida en modo DDIO con conversión de tasa media
Figura 6. Simplificado View de ruta de habilitación de salida
La diferencia entre la ruta de salida y la ruta de habilitación de salida (OE) es que la ruta OE no contiene DDIO de tasa completa. Para admitir implementaciones de registros empaquetados en la ruta OE, un registro simple funciona como DDIO de tasa completa. Por la misma razón, solo está presente un DDIO de tasa media.
La ruta OE opera en los siguientes tres modos fundamentales:
- Bypass: el núcleo envía datos directamente al elemento de retardo, sin pasar por todos los DDIO.
- Registro empaquetado: omite DDIO de tasa media.
- Salida SDR a mitad de tasa: los DDIO de mitad de tasa convierten datos de tasa completa a mitad de tasa.
Nota: El núcleo IP GPIO no admite la calibración dinámica de pines bidireccionales. Para aplicaciones que requieren calibración dinámica de pines bidireccionales, consulte la información relacionada.
Información relacionada
- PHY Lite para interfaces paralelas Guía del usuario de Intel FPGA IP Core: dispositivos Intel Stratix 10, Intel Arria 10 e Intel Cyclone 10 GX
Proporciona más información para aplicaciones que requieren OCT dinámico para pines bidireccionales. - Ruta de entrada en la página 5
Señales de interfaz IP GPIO Intel FPGA
Dependiendo de la configuración de parámetros que especifique, diferentes señales de interfaz están disponibles para el núcleo IP GPIO.
Figura 7. Interfaces GPIO IP Core
Figura 8. Señales de interfaz GPIO
Tabla 3. Señales de interfaz de pad
La interfaz del pad es la conexión física desde el núcleo IP GPIO al pad. Esta interfaz puede ser una interfaz de entrada, salida o bidireccional, según la configuración del núcleo IP. En esta tabla, SIZE es el ancho de datos especificado en el editor de parámetros IP core.
Nombre de la señal |
Dirección |
Descripción |
pad_in[TAMAÑO-1:0] |
Aporte |
Señal de entrada desde el pad. |
pad_in_b[TAMAÑO-1:0] |
Aporte |
Nodo negativo de la señal de entrada diferencial del pad. Este puerto está disponible si enciende el Usar búfer diferencial opción. |
pad_out[TAMAÑO-1:0] |
Producción |
Señal de salida al pad. |
pad_out_b[TAMAÑO-1:0] |
Producción |
Nodo negativo de la señal de salida diferencial al pad. Este puerto está disponible si enciende el Usar búfer diferencial opción. |
pad_io[TAMAÑO-1:0] |
Bidireccional |
Conexión de señal bidireccional con el pad. |
pad_io_b[TAMAÑO-1:0] |
Bidireccional |
Nodo negativo de la conexión de la señal bidireccional diferencial con el pad. Este puerto está disponible si enciende el Usar búfer diferencial opción. |
Tabla 4. Señales de interfaz de datos
La interfaz de datos es una interfaz de entrada o salida desde el núcleo IP GPIO al núcleo FPGA. En esta tabla, SIZE es el ancho de datos especificado en el editor de parámetros IP core.
Nombre de la señal |
Dirección |
Descripción |
DIN[DATA_SIZE-1:0] |
Aporte |
Entrada de datos desde el núcleo FPGA en modo salida o bidireccional. DATA_SIZE depende del modo de registro:
|
salida[DATA_SIZE-1:0] |
Producción |
Salida de datos al núcleo FPGA en modo de entrada o bidireccional, DATA_SIZE depende del modo de registro:
|
oe[TAMAÑO_OE_1:0] |
Aporte |
Entrada OE desde el núcleo FPGA en modo de salida con Habilitar puerto de habilitación de salida encendido, o modo bidireccional. OE es alto activo. Al transmitir datos, configure esta señal en 1. Al recibir datos, configure esta señal en 0. OE_SIZE depende del modo de registro:
|
Tabla 5. Señales de interfaz de reloj
La interfaz de reloj es una interfaz de reloj de entrada. Consta de diferentes señales, dependiendo de la configuración. El núcleo IP GPIO puede tener cero, una, dos o cuatro entradas de reloj. Los puertos de reloj aparecen de manera diferente en diferentes configuraciones para reflejar la función real realizada por la señal de reloj.
Nombre de la señal |
Dirección |
Descripción |
ck |
Aporte |
En las rutas de entrada y salida, este reloj alimenta un registro empaquetado o DDIO si apaga el Lógica de media tasa parámetro. En modo bidireccional, este reloj es el único reloj para las rutas de entrada y salida si apaga el Relojes de entrada/salida separados parámetro. |
ck_fr |
Aporte |
En las rutas de entrada y salida, estos relojes alimentan los DDIO de tasa completa y tasa media si enciende el Lógica de media tasa parámetro. En el modo bidireccional, las rutas de entrada y salida usan estos relojes si apaga el Relojes de entrada/salida separados parámetro. |
ck_hr |
||
ck_in |
Aporte |
En modo bidireccional, estos relojes alimentan un registro empaquetado o DDIO en las rutas de entrada y salida si especifica estas dos configuraciones:
|
ck_out | ||
ck_fr_in |
Aporte |
En modo bidireccional, estos relojes alimentan un DDIOS de tasa completa y mitad de tasa en las rutas de entrada y salida si especifica ambas configuraciones.
Por ejemploample, ck_fr_out alimenta el DDIO de tasa completa en la ruta de salida. |
ck_fr_out | ||
ck_hr_in | ||
ck_hr_out | ||
cke |
Aporte |
Habilitar reloj. |
Tabla 6. Señales de interfaz de terminación
La interfaz de terminación conecta el núcleo IP GPIO a los búferes de E/S.
Nombre de la señal |
Dirección |
Descripción |
control de terminación en serie |
Aporte |
Entrada del bloque de control de terminación (OCT) a los búferes. Establece el valor de la impedancia en serie del búfer. |
control de terminación en paralelo |
Aporte |
Entrada del bloque de control de terminación (OCT) a los búferes. Establece el valor de la impedancia paralela del buffer. |
Tabla 7. Restablecer señales de interfaz
La interfaz de reinicio conecta el núcleo IP GPIO a los DDIO.
Nombre de la señal |
Dirección |
Descripción |
desclr |
Aporte |
Entrada clara síncrona. No disponible si habilita sset. |
aclr |
Aporte |
Entrada clara asíncrona. Alto activo. No disponible si habilita aset. |
un activo |
Aporte |
Entrada de conjunto asíncrono. Alto activo. No disponible si habilita aclr. |
conjunto |
Aporte |
Entrada de conjunto síncrono. No disponible si habilita sclr. |
Información relacionada
Bits altos y bajos del bus de entrada y salida en la página 12
- Las rutas de entrada, salida y OE comparten las mismas señales claras y preestablecidas.
- La ruta de salida y OE comparte las mismas señales de reloj.
Orden de bits de datos para la interfaz de datos
Figura 9. Convención de orden de bits de datos
Esta figura muestra la convención de orden de bits para las señales de datos din, dout y oe.
- Si el valor del tamaño del bus de datos es SIZE, el LSB está en la posición más a la derecha.
- Si el valor del tamaño del bus de datos es 2 × SIZE, el bus se compone de dos palabras de SIZE.
- Si el tamaño del bus de datos tiene un valor de 4 × TAMAÑO, el bus consta de cuatro palabras de TAMAÑO.
- El LSB está en la posición más a la derecha de cada palabra.
- La palabra más a la derecha especifica la primera palabra que sale para los buses de salida y la primera palabra que entra para los buses de entrada.
Información relacionada
Ruta de entrada en la página 5
Bits altos y bajos del bus de entrada y salida
Los bits altos y bajos en las señales de entrada o salida se incluyen en los buses de entrada y salida din y dout.
Bus de entrada
Para el bus DIN, si datain_h y datain_l son los bits alto y bajo, siendo cada ancho datain_width:
- datain_h = din[(2 × datain_width – 1):datain_width]
- datain_l = din[(ancho_datos – 1):0]
Por ejemploample, para din[7:0] = 8'b11001010:
- datos en_h = 4'b1100
- datos en_l = 4'b1010
Bus de salida
Para el bus dout, si dataout_h y dataout_l son los bits alto y bajo, siendo cada ancho dataout_width:
- salida_datos = duda[(2 × ancho_salidadatos – 1):ancho_salidadatos]
- salida_datos = duda[(ancho_salidadatos – 1):0]
Por ejemploample, para dout[7:0] = 8'b11001010:
- salida_datos_h = 4'b1100
- salida_datos_l = 4'b1010
Señales de interfaz de datos y relojes correspondientes
Tabla 8. Señales de interfaz de datos y relojes correspondientes
Nombre de la señal |
Configuración de parámetros | Reloj | ||
Modo de registro | Media tarifa |
Relojes separados |
||
estruendo |
|
Apagado |
Apagado |
ck |
DDIO |
On |
Apagado |
ck_hr | |
|
Apagado |
On |
ck_in | |
DDIO |
On |
On |
ck_hr_in | |
|
|
Apagado |
Apagado |
ck |
DDIO |
On |
Apagado |
ck_hr | |
|
Apagado |
On |
ck_out | |
DDIO |
On |
On |
ck_hr_out | |
|
|
Apagado |
Apagado |
ck |
DDIO |
On |
Apagado |
ck_fr | |
|
Apagado |
On |
|
|
DDIO |
On |
On |
|
Verificación de la utilización de recursos y el rendimiento del diseño
Puede consultar los informes de compilación de Intel Quartus Prime para obtener detalles sobre el uso de recursos y el rendimiento de su diseño.
- En el menú, haga clic en Procesando ➤ Iniciar compilación para ejecutar una compilación completa.
- Después de compilar el diseño, haga clic en Procesamiento ➤ Informe de compilación.
- Usando el Tabla de contenido, navegar a Instalador ➤ Sección de recursos.
un. Para view la información de uso de recursos, seleccione Resumen de uso de recursos.
B. Para view la información de utilización de recursos, seleccione Utilización de recursos por entidad.
Configuración de parámetros IP de GPIO Intel FPGA
Puede establecer la configuración de parámetros para el núcleo IP GPIO en el software Intel Quartus Prime. Hay tres grupos de opciones: General, Buffer, y Registros.
Tabla 9. Parámetros de GPIO IP Core – General
Parámetro |
Condición | Valores permitidos |
Descripción |
Dirección de datos |
— |
|
Especifica la dirección de datos para el GPIO. |
Ancho de datos |
— |
1 a 128 | Especifica el ancho de datos. |
Usar nombres de puerto de nivel superior heredados |
— |
|
Utilice los mismos nombres de puerto que en los dispositivos Stratix V, Arria V y Cyclone V. Por ejemploample, dout se convierte en dataout_h y dataout_l, y din se convierte en datain_h y datain_l. Nota: El comportamiento de estos puertos es diferente al de los dispositivos Stratix V, Arria V y Cyclone V. Para conocer las pautas de migración, consulte la información relacionada. |
Tabla 10. Parámetros de GPIO IP Core: búfer
Parámetro |
Condición | Valores permitidos |
Descripción |
Usar búfer diferencial |
— |
|
Si está activado, habilita los búferes de E/S diferenciales. |
Usar búfer pseudo diferencial |
|
|
Si se activa en el modo de salida, habilita los búferes de salida pseudodiferenciales. Esta opción se activa automáticamente para el modo bidireccional si activa Usar búfer diferencial. |
Usar circuitos de retención de bus |
|
|
Si está activado, el circuito de retención del bus puede retener débilmente la señal en un pin de E/S en su último estado activado, donde el estado del búfer de salida será 1 o 0, pero no de alta impedancia. |
Usar salida de drenaje abierto |
|
|
Si está activada, la salida de drenaje abierto permite que el dispositivo proporcione señales de control a nivel del sistema, como señales de interrupción y habilitación de escritura, que pueden ser validadas por múltiples dispositivos en su sistema. |
Habilitar puerto de habilitación de salida | Dirección de datos = Salida |
|
Si está activado, permite la entrada del usuario al puerto OE. Esta opción se activa automáticamente para el modo bidireccional. |
Habilitar puertos de terminación en serie/terminación en paralelo |
— |
|
Si está activado, activa los puertos de control de terminación en serie y de control de terminación en paralelo del búfer de salida. |
Tabla 11. Parámetros de GPIO IP Core – Registros
Parámetro | Condición | Valores permitidos | Descripción |
Modo de registro |
— |
|
Especifica el modo de registro para el núcleo IP GPIO:
|
Habilitar puerto claro/preestablecido síncrono |
|
|
Especifica cómo implementar el puerto de reinicio síncrono.
|
Habilitar puerto asíncrono claro/preestablecido |
|
|
Especifica cómo implementar el puerto de reinicio asíncrono.
Las señales ACLR y ASET están activas en alto. |
Habilitar puertos de habilitación de reloj | Modo de registro = DDIO |
|
|
Lógica de media tasa | Modo de registro = DDIO |
|
Si está activado, habilita DDIO de tasa media. |
Relojes de entrada / salida separados |
|
|
Si está activado, habilita relojes separados (CK_IN y CK_OUT) para las rutas de entrada y salida en modo bidireccional. |
Información relacionada
- Bits altos y bajos del bus de entrada y salida en la página 12
- Pauta: intercambiar puertos datain_h y datain_l en la IP migrada en la página 23
Registrar Embalaje
El núcleo GPIO IP le permite empaquetar el registro en la periferia para ahorrar espacio y utilización de recursos.
Puede configurar el DDIO de velocidad completa en la ruta de entrada y salida como un flip flop. Para hacerlo, agregue las asignaciones .qsf enumeradas en esta tabla.
Tabla 12. Asignaciones de QSF de empaquetado de registros
Camino |
Asignación QSF |
Empaquetado del registro de entrada | Asignación QSF set_instance_assignment -name FAST_INPUT_REGISTER ON -to |
Empaquetado del registro de salida | set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to |
Paquete de registro de activación de salida | set_instance_assignment -name FAST_OUTPUT_ENABLE_REGISTER ON -to |
Nota: Estas asignaciones no garantizan el empaquetado de registros. Sin embargo, estas asignaciones permiten al instalador encontrar una ubicación legal. De lo contrario, el instalador mantiene la chancleta en el núcleo.
Temporización IP GPIO Intel FPGA
El rendimiento del núcleo IP GPIO depende de las restricciones de E/S y las fases del reloj. Para validar la temporización de su configuración GPIO, Intel recomienda que utilice el analizador de temporización.
Información relacionada
El analizador de tiempo Intel Quartus Prime
Componentes de tiempo
Los componentes de temporización del núcleo IP de GPIO constan de tres rutas.
- Rutas de interfaz de E/S: desde la FPGA hasta los dispositivos de recepción externos y desde los dispositivos de transmisión externos hasta la FPGA.
- Rutas de interfaz central de datos y reloj: desde la E/S hasta el núcleo y desde el núcleo hasta la E/S.
- Rutas de transferencia: de DDIO de tasa media a tasa completa, y de DDIO de tasa completa a tasa media.
Nota: Timing Analyzer trata la ruta dentro de los bloques DDIO_IN y DDIO_OUT como cajas negras.
Figura 10. Componentes de temporización de ruta de entrada
Figura 11. Componentes de temporización de la ruta de salida
Figura 12. Componentes de temporización de ruta de habilitación de salida
Elementos de retardo
El software Intel Quartus Prime no establece automáticamente elementos de retardo para maximizar la holgura en el análisis de temporización de E/S. Para cerrar el tiempo o maximizar la holgura, configure los elementos de retraso manualmente en la configuración de Intel Quartus Prime file (.qsf).
Tabla 13. Asignaciones de elementos de retardo .qsf
Especifique estas asignaciones en el .qsf para acceder a los elementos de retardo.
Elemento de retardo | Asignación .qsf |
Elemento de retardo de entrada | establecer_instancia_asignación a -nombre INPUT_DELAY_CHAIN <0..63> |
Elemento de retardo de salida | establecer_instancia_asignación a -nombre SALIDA_DELAY_CHAIN <0..15> |
Elemento de retardo de activación de salida | establecer_instancia_asignación a -nombre OE_DELAY_CHAIN <0..15> |
Análisis de tiempo
El software Intel Quartus Prime no genera automáticamente las restricciones de tiempo SDC para el núcleo IP GPIO. Debe introducir manualmente las restricciones de tiempo.
Siga las pautas de tiempo y examppara asegurarse de que Timing Analyzer analice correctamente la temporización de E/S.
- Para realizar un análisis de tiempo adecuado para las rutas de la interfaz de E/S, especifique las restricciones de nivel del sistema de los pines de datos contra el pin del reloj del sistema en el .sdc file.
- Para realizar un análisis de tiempo adecuado para las rutas de la interfaz central, defina esta configuración de reloj en el archivo .sdc file:
— Reloj a los registros centrales
— Reloj para los registros de E/S para los modos de registro simple y DDIO
Información relacionada
AN 433: Restricción y análisis de interfaces sincrónicas de fuente
Describe técnicas para restringir y analizar interfaces síncronas de origen.
Registro de entrada de tasa de datos única
Figura 13. Registro de entrada de tasa de datos única
Tabla 14. Registro de entrada de velocidad de datos único Comando .sdc ExampLos
Dominio | Comando Example | Descripción |
crear_reloj | crear_reloj -nombre sdr_in_clk -período “100 MHz” sdr_in_clk |
Crea una configuración de reloj para el reloj de entrada. |
establecer_retraso_de_entrada | set_input_delay -reloj sdr_in_clk 0.15 sdr_en_datos |
Indica al analizador de temporización que analice la temporización de la E/S de entrada con un retardo de entrada de 0.15 ns. |
Registro de entrada DDIO de tasa completa o mitad de tasa
El lado de entrada de los registros de entrada DDIO de tasa completa y tasa media son los mismos. Puede restringir adecuadamente el sistema mediante el uso de un reloj virtual para modelar el transmisor fuera del chip al FPGA.
Figura 14. Registro de entrada DDIO de tasa completa o mitad de tasa
Tabla 15. Registro de entrada DDIO de tasa completa o mitad de tasa .sdc Comando ExampLos
Dominio | Comando Example | Descripción |
crear_reloj | crear_reloj -nombre reloj_virtual -período “200 MHz” crear_reloj -nombre ddio_in_clk -periodo “200 MHz” ddio_in_clk |
Cree una configuración de reloj para el reloj virtual y el reloj DDIO. |
establecer_retraso_de_entrada | set_input_delay -reloj reloj_virtual 0.25 ddio_in_data set_input_delay -add_delay -clock_fall -reloj virtual_clock 0.25 ddio_in_data |
Indique al analizador de tiempo que analice el borde de reloj positivo y el borde de reloj negativo de la transferencia. Tenga en cuenta el -add_delay en el segundo comando set_input_delay. |
establecer_ruta_falsa | establecer_ruta_falsa -fall_from reloj_virtual -rise_to ddio_in_clk establecer_ruta_falsa -rise_from reloj_virtual -fall_to ddio_in_clk |
Indique al analizador de tiempo que ignore el flanco de reloj positivo al registro activado por flanco negativo y el flanco de reloj negativo al registro activado por flanco positivo.
Nota: La frecuencia ck_hr debe ser la mitad de la frecuencia ck_fr. Si el PLL de E/S controla los relojes, puede considerar usar el comando derive_pll_clocks .sdc. |
Registro de salida de velocidad de datos única
Figura 15. Registro de salida de tasa de datos única
Tabla 16. Registro de salida de tasa de datos única Comando .sdc ExampLos
Dominio | Comando Example | Descripción |
crear_reloj y crear_reloj_generado | crear_reloj -nombre sdr_out_clk -período “100 MHz” sdr_out_clk crear_reloj_generado -fuente sdr_out_clk -nombre sdr_out_outclk sdr_out_outclk |
Genere el reloj de origen y el reloj de salida para transmitir. |
establecer_retraso_de_salida | set_output_delay -reloj sdr_out_clk 0.45 sdr_out_data |
Indica al analizador de tiempo que analice los datos de salida para transmitir contra el reloj de salida para transmitir. |
Registro de salida DDIO de tasa completa o mitad de tasa
El lado de salida de los registros de salida DDIO de tasa completa y tasa media son los mismos.
Tabla 17. Registro de salida DDIO .sdc Comando ExampLos
Dominio | Comando Example | Descripción |
crear_reloj y crear_reloj_generado | crear_reloj -nombre ddio_out_fr_clk -punto “200 MHz” ddio_out_fr_clk crear_reloj_generado -fuente ddio_out_fr_clk -nombre ddio_out_fr_outclk ddio_out_fr_outclk |
Genere los relojes para el DDIO y el reloj para transmitir. |
establecer_retraso_de_salida | set_output_delay -reloj ddio_out_fr_outclk 0.55 ddio_out_fr_data set_output_delay -add_delay -clock_fall -reloj ddio_out_fr_outclk 0.55 ddio_out_fr_data |
Indique al analizador de tiempo que analice los datos positivos y negativos contra el reloj de salida. |
establecer_ruta_falsa | establecer_ruta_falsa -rise_from ddio_out_fr_clk -fall_to ddio_out_fr_outclk establecer_ruta_falsa -fall_from ddio_out_fr_clk -rise_to ddio_out_fr_outclk |
Indicar al analizador de tiempo que ignore el flanco ascendente del reloj de origen contra el flanco descendente del reloj de salida y el flanco descendente del reloj de origen contra el flanco ascendente del reloj de salida |
Pautas de cierre de tiempo
Para los registros de entrada GPIO, es probable que la transferencia de E/S de entrada falle en el tiempo de retención si no configura la cadena de retardo de entrada. Esta falla se debe a que el retraso del reloj es mayor que el retraso de los datos.
Para cumplir con el tiempo de espera, agregue demora a la ruta de datos de entrada utilizando la cadena de demora de entrada. En general, la cadena de retardo de entrada es de alrededor de 60 ps por paso en el grado de velocidad 1. Para obtener una configuración de cadena de retardo de entrada aproximada para pasar el tiempo, divida la holgura de retención negativa por 60 ps.
Sin embargo, si el PLL de E/S controla los relojes de los registros de entrada GPIO (registro simple o modo DDIO), puede establecer el modo de compensación en el modo síncrono de fuente. El instalador intentará configurar el PLL de E/S para una mejor configuración y esperará para el análisis de temporización de E/S de entrada.
Para la salida GPIO y los registros de habilitación de salida, puede agregar un retraso a los datos de salida y al reloj usando las cadenas de retraso de salida y habilitación de salida.
- Si observa una violación del tiempo de configuración, puede aumentar la configuración de la cadena de retardo del reloj de salida.
- Si observa una violación del tiempo de espera, puede aumentar la configuración de la cadena de retardo de datos de salida.
GPIO Intel FPGA Diseño IP ExampLos
El núcleo GPIO IP puede generar diseño examparchivos que coincidan con su configuración de IP en el editor de parámetros. Puedes usar estos diseños examparchivos como referencias para instanciar el núcleo IP y el comportamiento esperado en las simulaciones.
Puede generar el diseño examparchivos del editor de parámetros del núcleo IP de GPIO. Después de configurar los parámetros que desea, haga clic en Generar ejemploampel diseño. El núcleo IP genera el diseño exampla fuente files en el directorio que especifique.
Figura 16. Fuente Files en el diseño generado Exampdirectorio de archivos
Nota: El .qsys files son para uso interno durante el diseño example generación solamente. No puede editar estos .qsys files.
GPIO IP Core sintetizable Intel Quartus Prime Design Example
El diseño sintetizable example es un sistema Platform Designer listo para la compilación que puede incluir en un proyecto Intel Quartus Prime.
Generación y uso de Design Example
Para generar el diseño Intel Quartus Prime sintetizable examparchivo de la fuente files, ejecute el siguiente comando en el diseño exampdirectorio de archivos:
quartus_sh -t make_qii_design.tcl
Para especificar un dispositivo exacto para usar, ejecute el siguiente comando:
quartus_sh -t make_qii_design.tcl [nombre_dispositivo]
El script TCL crea un directorio qii que contiene el proyecto ed_synth.qpf file. Puede abrir y compilar este proyecto en el software Intel Quartus Prime.
Diseño de simulación de núcleo IP GPIO Example
El diseño de simulación example utiliza la configuración de parámetros principales de IP de GPIO para crear la instancia de IP conectada a un controlador de simulación. El controlador genera tráfico aleatorio y verifica internamente la legalidad de los datos salientes.
Usando el diseño example, puede ejecutar una simulación usando un solo comando, dependiendo del simulador que use. La simulación demuestra cómo puede usar el núcleo IP GPIO.
Generación y uso de Design Example
Para generar el diseño de simulación examparchivo de la fuente files para un simulador de Verilog, ejecute el siguiente comando en el diseño exampdirectorio de archivos:
quartus_sh -t make_sim_design.tcl
Para generar el diseño de simulación examparchivo de la fuente files para un simulador VHDL, ejecute el siguiente comando en el diseño exampdirectorio de archivos:
quartus_sh -t make_sim_design.tcl VHDL
El script TCL crea un directorio sim que contiene subdirectorios, uno para cada herramienta de simulación admitida. Puede encontrar los scripts para cada herramienta de simulación en los directorios correspondientes.
Flujo de migración IP para dispositivos Arria V, Cyclone V y Stratix V
El flujo de migración de IP le permite migrar los núcleos IP ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR y ALTIOBUF de los dispositivos Arria V, Cyclone V y Stratix V al núcleo IP GPIO de los dispositivos Intel Arria 10 e Intel Cyclone 10 GX.
Este flujo de migración de IP configura el núcleo IP de GPIO para que coincida con la configuración de los núcleos IP ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR y ALTIOBUF, lo que le permite regenerar el núcleo IP.
Nota: Algunos núcleos de IP admiten el flujo de migración de IP solo en modos específicos. Si su núcleo de IP está en un modo que no es compatible, es posible que deba ejecutar el Editor de parámetros de IP para el núcleo de IP de GPIO y configurar el núcleo de IP manualmente.
Migración de sus núcleos IP ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR y ALTIOBUF
Para migrar sus núcleos IP ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR y ALTIOBUF al núcleo IP GPIO Intel FPGA IP, siga estos pasos:
- Abra su núcleo IP ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR o ALTIOBUF en el Editor de parámetros IP.
- En el Familia de dispositivos seleccionada actualmente, seleccionar Intel Arria 10 or Intel Cyclone 10 GX.
- Hacer clic Finalizar para abrir el Editor de parámetros IP de GPIO.
El Editor de parámetros de IP configura los ajustes básicos de IP de GPIO de forma similar a los ajustes básicos de ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR o ALTIOBUF. - Si hay alguna configuración incompatible entre los dos, seleccione nueva configuración admitida.
- Hacer clic Finalizar para regenerar el núcleo IP.
- Reemplace la instanciación del núcleo IP ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR o ALTIOBUF en RTL con el núcleo IP GPIO.
Nota: Es posible que los nombres de los puertos del núcleo IP de GPIO no coincidan con los nombres de los puertos del núcleo IP ALTDDIO_IN, ALTDDIO_OUT, ALTDDIO_BIDIR o ALTIOBUF. Por lo tanto, simplemente cambiar el nombre del núcleo IP en la creación de instancias puede no ser suficiente.
Información relacionada
Bits altos y bajos del bus de entrada y salida en la página 12
Pauta: Intercambiar puertos datain_h y datain_l en IP migrada
Cuando migra su IP de GPIO desde dispositivos anteriores al núcleo de IP de GPIO, puede activar Usar nombres de puerto de nivel superior heredados opción en el editor de parámetros del núcleo IP de GPIO. Sin embargo, el comportamiento de estos puertos en el núcleo IP GPIO es diferente al de los núcleos IP utilizados para los dispositivos Stratix V, Arria V y Cyclone V.
El núcleo IP de GPIO conduce estos puertos a los registros de salida en estos bordes de reloj:
- datain_h: en el borde ascendente de outclock
- datain_l—en el borde descendente de outclock
Si migró su IP de GPIO desde dispositivos Stratix V, Arria V y Cyclone V, intercambie los puertos datain_h y datain_l cuando cree una instancia de la IP generada por el núcleo de IP de GPIO.
Información relacionada
Bits altos y bajos del bus de entrada y salida en la página 12
Archivos de la guía del usuario de GPIO Intel FPGA IP
Las versiones de IP son las mismas que las versiones del software Intel Quartus Prime Design Suite hasta v19.1. A partir de la versión 19.2 o posterior del software Intel Quartus Prime Design Suite, los núcleos de IP tienen un nuevo esquema de control de versiones de IP.
Si no se incluye una versión principal de IP, se aplica la guía del usuario para la versión principal de IP anterior.
Versión principal de IP |
Guía del usuario |
20.0.0 | Guía del usuario de GPIO Intel FPGA IP: Dispositivos Intel Arria 10 e Intel Cyclone 10 GX |
19.3.0 | Guía del usuario de GPIO Intel FPGA IP: Dispositivos Intel Arria 10 e Intel Cyclone 10 GX |
19.3.0 | Guía del usuario de GPIO Intel FPGA IP: Dispositivos Intel Arria 10 e Intel Cyclone 10 GX |
18.1 | Guía del usuario de GPIO Intel FPGA IP: Dispositivos Intel Arria 10 e Intel Cyclone 10 GX |
18.0 | Guía del usuario de GPIO Intel FPGA IP: Dispositivos Intel Arria 10 e Intel Cyclone 10 GX |
17.1 | Guía del usuario de Intel FPGA GPIO IP Core |
17.0 | Guía del usuario de Altera GPIO IP Core |
16.1 | Guía del usuario de Altera GPIO IP Core |
16.0 | Guía del usuario de Altera GPIO IP Core |
14.1 | Guía del usuario de la megafunción GPIO de Altera |
13.1 | Guía del usuario de la megafunción GPIO de Altera |
Historial de revisión de documentos para GPIO Intel FPGA IP User Guide: Dispositivos Intel Arria 10 e Intel Cyclone 10 GX
Versión del documento |
Versión Intel Quartus Prime | Versión IP |
Cambios |
2021.07.15 |
21.2 |
20.0.0 |
Se actualizó el diagrama que muestra el simplificado view de la ruta de entrada GPIO de terminación única para actualizar dout[0] a dout[3] y dout[3] a dout[0]. |
2021.03.29 |
21.1 |
20.0.0 |
Se actualizó el número de versión de IP de GPIO a 20.0.0. |
2021.03.12 |
20.4 |
19.3.0 |
Se actualizó la guía de migración de IP para especificar que la IP de GPIO maneja datain_h en el borde ascendente y datain_l en el borde descendente. |
2019.10.01 |
19.3 |
19.3.0 |
Corregido error tipográfico en los códigos de asignación .qsf en el tema de elementos de retardo. |
2019.03.04 |
18.1 |
18.1 |
En los temas sobre la ruta de entrada y las rutas de salida y habilitación de salida:
|
2018.08.28 |
18.0 |
18.0 |
|
Fecha | Versión | Cambios |
Noviembre de 2017 | 2017.11.06 |
|
Mayo de 2017 | 2017.05.08 |
|
2016 de octubre | 2016.10.31 |
|
Agosto de 2016 | 2016.08.05 |
|
Agosto de 2014 | 2014.08.18 |
|
Noviembre de 2013 | 2013.11.29 | Lanzamiento inicial. |
Guía del usuario de GPIO Intel FPGA IP: Dispositivos Intel Arria 10 e Intel Cyclone 10 GX
Documentos / Recursos
![]() |
Intel GPIOIntel FPGA IP [pdf] Guía del usuario GPIO Intel FPGA IP, GPIO, Intel FPGA IP, FPGA IP |