Tecnología

AMD solicita la patente de diseño de CPU con elementos FPGA integrados en el núcleo

AMD solicita la patente de diseño de CPU con elementos FPGA integrados en el núcleo
AMD ha solicitado una patente de los Estados Unidos que describe un diseño de CPU con elementos FPGA (Field-Programmable Gate Array) integrados en su diseño central. Titulada «Método y aparato para instrucciones programables eficientes en sistemas informáticos», la solicitud de patente describe una CPU con elementos FPGA inscritos en su diseño central, donde los elementos FPGA realmente comparten recursos de CPU como registros para unidades de ejecución de punto flotante y enteros. Sin duda, esta patente se produce a raíz de los planes de adquisición de Xilinx anunciados por AMD, y lleva los matrimonios de FPGA y CPU a un nivel completamente diferente. FPGA, como su nombre lo indica, son construcciones de hardware que se pueden reconfigurar según tablas predeterminadas (que también se pueden actualizar) para ejecutar funciones deseadas y específicas.

Los propios Intel ya han enviado un combo CPU + FPGA en el mismo paquete; el Xeon 6138P de la compañía, por ejemplo, incluye un FPGA Arria 10 GX 1150 en el paquete, que ofrece 1,150,000 elementos lógicos. Sin embargo, esto es simplemente un combo CPU + FPGA en el mismo sustrato; no es un diseño FPGA nativo, integrado en el núcleo. El producto de Intel tiene graves penalizaciones de rendimiento y latencia debido al hecho de que las operaciones complejas realizadas en la FPGA deben sacarse de la CPU, procesarse en la FPGA y luego sus resultados deben devolverse a la CPU. El diseño de AMD elimina efectivamente esa rotonda en particular y, por lo tanto, debería permitir un rendimiento mucho mayor.

Algunas de las reivindicaciones más interesantes de la solicitud de patente se enumeran a continuación:

  • El procesador incluye una o más unidades de ejecución reprogramables que se pueden programar para ejecutar diferentes tipos de instrucciones personalizadas
  • Cuando un procesador carga un programa, también carga un archivo de bits asociado con el programa que programa la PEU para ejecutar la instrucción personalizada
  • La unidad de decodificación y envío de la CPU envía automáticamente las instrucciones especializadas a las PEU adecuadas
  • La UEP comparte registros con los FP e Int UE.
  • La PEU también puede acelerar las cargas de trabajo Int o FP si se desea acelerar
  • PEU se puede virtualizar sin dejar de utilizar las funciones de seguridad del sistema
  • Cada PEU se puede programar de forma diferente a otras PEU del sistema
  • Las PEU pueden operar en formatos de datos que no son típicos FP32 / FP64 (por ejemplo, Bfloat16, FP16, Sparse FP16, cualquier otra cosa que se les ocurra) para acelerar el aprendizaje automático, sin necesidad de esperar a que se cree un nuevo silicio para procesar esos datos. tipos.
  • Las PEU se pueden reprogramar sobre la marcha (durante el tiempo de ejecución)
  • Las PEU se pueden ajustar para maximizar el rendimiento en función de la carga de trabajo
  • Las PEU pueden aumentar enormemente la IPC al realizar un trabajo más complejo en un solo ciclo

Tal como está, este tipo de diseño permitiría, en teoría, una CPU actualizable que nunca necesitaría actualizarse cuando se trata de soporte de nuevas instrucciones: dado que FPGA es una lógica de hardware programable, una simple actualización de firmware podría permitir que la CPU reconfigure su matriz FPGA para poder procesar instrucciones nuevas y exóticas a medida que se publiquen. Otro argumento para esta integración es que, de esta manera, algo de silicio de función fija que se encuentra hoy en las CPU y que sirve para admitir instrucciones x86 heredadas podría quedar fuera de la matriz, para ser atendido por el propio paquete FPGA, lo que permite un acelerador de hardware aún a bordo para cuando (y si) se requieren estas instrucciones.

Esto también permitiría a AMD recortar la CPU del «silicio oscuro» que está presente actualmente, esencialmente, bloques de aceleración de hardware altamente especializados que permanecen inactivos, como una pérdida de espacio, cuando no están en uso. La conclusión es la siguiente: CPU con menor espacio de troquel reservado para operaciones altamente especializadas, por lo tanto, con más área de troquel disponible para otros recursos (como más núcleos), y con elementos FPGA integrados por núcleo que se reconfigurarían sobre la marcha. ellos mismos de acuerdo con las necesidades de procesamiento. Y si no se requieren operaciones exóticas (como inferencia y aceleración de IA, AVX (por ejemplo), aceleración de hardware de video u otras cargas de trabajo, entonces los elementos FPGA se pueden reconfigurar para «turbo» las unidades enteras y de coma flotante propias de la CPU , aumentando los recursos disponibles. Una solicitud de patente interesante, seguro.

Leave a Comment

You may also like

Más