Switching vs Clocking: no es lo mismo…

Como sabréis si leéis este blog frecuentemente, eventualmente atiendo algunas consultas que me dejan en la sección de contacto. Recientemente me han hecho una pregunta interesante sobre un evento que ocurrido. Y es que un grupo sueco ha conseguido superar un récord de frecuencia de reloj en una CPU de Intel. Concretamente han llevado a un Intel Core i9-10900K hasta los 7.7 Ghz con RAM trabajando a 6.6 Ghz mediante overclocking.

A consecuencia de eso, un chico me preguntaba sobre por qué le han dado el récord si él había visto unidades trabajando a una velocidad superior. Y lo cierto es que, en parte, tiene razón. De hecho, yo mismo recuerdo hace unos años cuando IBM consiguió llegar hasta los 350 Ghz a temperatura ambiente y hasta los 500 Ghz enfiándolo mediante criogenización.

Primero vamos a analizar ambos eventos y simplifico la respuesta a esta duda…

Intel Core i9-10900K a 7.7 Ghz

Dicho de un modo rápido, lo que han hecho es aumentar el voltaje del microprocesador para poderlo acelerar (overclock). Eso produce un mayor calentamiento, y por eso emplean una refrigeración especial para disipar todo ese calor, evitando que el sistema falle o se generen problemas en las interconexiones del chip.

Como he dicho, el objeto del experimento fue un Intel Core i9-10900K que logra de serie los 5.1Ghz. Con esa sobretensión (1.194 V) y una refrigeración LN2/LHe que usa helio líquido, han conseguido superar las limitaciones impuestas por el fabricante para llegar a esos 7.7 Ghz (concretamente 7702.62 Mhz).

Además de eso, al haber alterado la frecuencia de bus base, otros buses de la placa base que dependen de éste, también se han visto alterados. Es el caso de la memoria RAM, que ha subido a los 6665,4 Mhz (6.6 Ghz).

IBM POWER a 500 Ghz

IBM 500 Ghz
Fuente: IBM

Por otro lado tenemos el experimento que hizo IBM junto con Georgia Tech, llevando a su CPU hasta los 500 Ghz con la refrigeración mediante un sistema de criogenización. No obstante, a temperatura ambiente ya alcanzaba los 350 Ghz. Sí, hasta el medio ¡Terahercio! Impresionante, ¿verdad?

Eso era gracias, en parte, a una nueva (ya no es tan nueva, pero sí lo era en aquella época) tecnología BiCMOS SiGe para sus transistores. Sí, algo bastante raro para un microprocesador, lo sé. Pero IBM no era la primera vez que sorprendía con una familia lógica «exótica» para sus chips (véase por ejemplo el caso de los Power-AS).

¿Dónde está la trampa?

No hay ninguna trampa, ambos valores se refieren a cosas diferentes. Nada más… Es decir, debes diferenciar entre clocking y switching:

  • Clocking: es a lo que se refiere el experimento de Intel, es decir, a la frecuencia de reloj a la que trabaja el chip. Es decir, a la velocidad a la que están conmutando sus transistores en conjunto. En éste caso a 7.7 Ghz o, lo que es lo mismo, 7.000.000.000 veces cada segundo.
  • Switching: es la velocidad a la que un transistor puede conmutar y pasar de un estado a otro. Es el caso del IBM, ya que esos transistores podían conmutar a 350 Ghz a temperatura ambiente o 500 Ghz con la refrigeración especial. Dicho de otro modo, pueden cambiar de estado hasta 500.000.000.000 veces en 1 segundo.

Teóricamente en el Intel también podrían conmutar los transistores de forma más rápida, pero no se trata de un único transistor. En un microprocesador moderno hay muchos trabajando a la vez y conectados mediante interconexiones metálicas (cobre). Todo eso en su conjunto genera retrasos (ya hablaré un día del critical path), y por ello, se debe limitar la frecuencia de reloj si no se quiere producir errores o inestabilidad…

De hecho, hay que ser bastante cuidadosos en cómo se reparte la señal de reloj a través de las unidades funcionales de un chip para que llegue de la forma más homogénea posible. En esto DEC fue un auténtico referente, con aquellos «árboles» en sus Alpha. Además, los ingenieros diseñaban a mano el layout de ese camino crítico para optimizarlo y poder subir la frecuencia de reloj de sus chips con problemas.

critical path

Ten en cuenta que por muy rápido que pueda conmutar un transistor, se pueden generar retrasos en el envío de señales. Por tanto, en la práctica se deben ralentizar a cierta frecuencia para que le de tiempo a las señales a llegar y que no «bailen» bits que puedan generar errores.

Por ejemplo, en la imagen anterior se puede apreciar en rojo el camino crítico, el más largo desde la recepción de las entradas hasta la salida. Sea cual sea la velocidad de conmutación de los transistores empleados, se debería limitar la frecuencia de reloj para el sumador para que el bit que viaja por dicho camino crítico tenga tiempo de llegar a tiempo o se obtendría un resultado erróneo a la salida. En este caso el acarreo (carry) no se actualizaría a tiempo… Por tanto, si fuese un circuito con clock, se debería ralentizar hasta la frecuencia a la que el camino crítico no fuese un problema.

Isaac

Apasionado de la computación y la tecnología en general. Siempre intentando desaprender para apreHender.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

A %d blogueros les gusta esto:

Si continuas utilizando este sitio aceptas el uso de cookies. más información

Los ajustes de cookies de esta web están configurados para "permitir cookies" y así ofrecerte la mejor experiencia de navegación posible. Si sigues utilizando esta web sin cambiar tus ajustes de cookies o haces clic en "Aceptar" estarás dando tu consentimiento a esto.

Cerrar