¿Qué es la velocidad del reloj?

La velocidad del reloj es un término muy genérico para la velocidad del ciclo del procesador. También es algo así como una medida desactualizada.

Las CPU funcionan con un “reloj” que es un cristal o algún otro mecanismo que genera una frecuencia determinada. No indica la hora, sino que simplemente “marca” a una velocidad constante y determinada. Sin embargo, puedes usarlo para decir la hora.

Suponga que tiene un reloj que, cuando lo mira, tiene una luz intermitente que se enciende cada 1/10 de segundo y 1/10 de segundo después, se apaga. Entonces un segundo sería un ciclo de cinco años de esos

1/10 seg = activado
2/20 seg = apagado
3/10 seg = activado
4/10 seg = apagado
5/10 seg = encendido
6/10 seg = 0ff
7/10 seg = encendido
8/10 seg = apagado
9/10 seg = encendido
10/10 seg = apagado

Ahora bien, para decir el tiempo transcurrido, solo tiene que contar la cantidad de veces que realiza un ciclo, dividir por 10 y ahora cuántos segundos transcurrieron. Ahora suponga que también tiene un contador que, cada vez que la luz cambia de estado (apagado a encendido y encendido a apagado) incrementa el contador. E impreso en la parte delantera del reloj estaba la fecha y la hora hasta el 1/10 de segundo que el reloj comenzó a parpadear. Ahora tiene cuántos ciclos han pasado y un tiempo de referencia en el pasado. Simplemente tome el número de ciclos / 10 para obtener segundos, dividido por 600 para obtener minutos, por 36,000 para obtener horas, 864,000 para obtener días y así sucesivamente. Es por eso que indirectamente se llama reloj.

Ahora en cuanto a cómo se usa en las CPU. Te daré el ejemplo más simple que conozco, la MOS Technology 6502, uno de los chips más ubicuos de todos los tiempos. Funcionó con Apple IIe, Atari 2600, Commodore 64, NES, las primeras PC domésticas de Atari y muchas más. Podría aceptar un reloj de aproximadamente 1 a 2 megahercios, lo que significa que el reloj se cicla cada 1 a 2 millonésimas de segundo. En el Commodore 64 tenía un reloj de 1.023 Mhz conectado, en el Atari 400/800 tenía un reloj de 1.79 Mhz conectado, por lo que el mismo barco tenía diferentes velocidades de reloj para diferentes propósitos. En el NMOS 6502 (original), el reloj conectado a un solo pin en el chip, a saber, el pin 37. Un oscilador de cristal con un circuito simple creó una onda cuadrada, lo que significa que el pin subió a un voltaje, permaneció por un período de tiempo, e inmediatamente bajó Esta es una onda cuadrada:

Ahora en el 6502, cuando la onda cambió de estado (de menor a mayor o de mayor a menor) provocó que una puerta volcara la CPU. Cuando esta puerta se volteó, había algo así como un efecto dominó. Una vez que esta puerta se volteó, muchos otros conectados a ella también lo hicieron, y otras puertas se conectaron a ellas, y dependiendo de qué puertas se voltearon, otras se volvieron también, y al final del proceso, todo dejó de voltearse y un ciclo en la CPU acaba de ocurrir. Si va a Visual 6502 en JavaScript, que es el 6502 que funciona visualmente, verá un cuadrado en la esquina superior derecha (segundo desde la esquina superior derecha) que es la entrada del reloj. Todo lo que hace es alternar entre “encendido” y “apagado”. Verás otro tercio desde la esquina superior izquierda que es exactamente opuesto al de la esquina superior izquierda, este no es el reloj pero se voltea debido al reloj. En este caso, no está volteando las puertas individuales, está viendo los resultados de todo eso cada vez que presiona el botón de un solo paso. El reloj impulsa la CPU.

Debido a que todas estas puertas tienen que voltearse en esta gran acción en cascada (es rápida pero no instantánea) hubo una velocidad máxima en la que se puede ejecutar el chip. Si el reloj gira antes del último ciclo, las puertas estarían en el estado incorrecto y el chip se volvería loco. El tamaño del chip tenía mucho que ver con él porque los electrones deben moverse físicamente de una puerta a otra, por lo que cuanto más pequeño es el chip, más rápido corre porque los caminos entre las puertas son más cortos.

Así que cuanto más rápido sea el reloj, más rápido puede correr el chip. El Atari 400 a 1,790,000 ciclos por segundo fue más rápido que el C64 a 1,236,000 ciclos por segundo. Ahora tu pregunta es ¿qué es un ciclo?

Bueno, eso depende en gran medida del chip. Hay cuatro cosas que deben ocurrir para ejecutar una instrucción: recuperarla, decodificarla, ejecutarla y almacenar los resultados.

1) Recuperar: simplemente carga la instrucción de la RAM del sistema en los componentes internos del chip (vago lo sé para aquellos que lo entienden, pero seamos simples)

2) Decodificar: el segundo cambia el estado del chip para realizar esa acción (en el C64, el decodificador PLA establece ciertas puertas en otras en el proceso de cascada del dominó)

3) Ejecutar: voltee más puertas para hacer lo que se supone que debe hacer la instrucción, como “agregar 10 para registrar A”

4) Mueva el resultado de la ALU (unidad aritmética a / lógica) al registro

Cada uno de estos son pasos múltiples, pero eso es lo básico, nuevamente, esta es una simplificación.

Ahora en cada chip cada uno de estos toma 1 ciclo, esto es una generalización pero muestra que una instrucción en el chip puede tomar varios ciclos. El 6502 tenía una gran característica en el momento que le permitía realizar algunas de esas operaciones simultáneamente para diferentes instrucciones, por lo que podría obtener la instrucción 3 mientras decodificaba la instrucción 2 y ejecutaba la instrucción 1. Entonces, aunque es una gran competencia en ese momento ( Motorola 6800) podría funcionar a una velocidad de reloj más rápida, el 6502 también podría funcionar debido a este sistema de instrucción simultánea que tenía. Algunas instrucciones finalizaron en 2 ciclos, la mayoría alrededor de 4, algunas tomaron un ciclo adicional si cruzaban un “límite de página”. Escribir código rápido a menudo era ser consciente de lo rápido que tomaba cada instrucción y crear un algoritmo que le permitiera codificarlo en las instrucciones más rápidas en lugar de la forma más directa. Al igual que en nuestro ejemplo de reloj, si supiera cuántos ciclos tomó cada instrucción, los agregó a todos en una rutina, sabría exactamente cuánto tiempo en milisegundos tomaría ejecutar su código, y a veces para fines de temporización, eso era real. reto. El diseño de un chip tuvo mucho que ver con su capacidad de procesamiento.

A pesar de esto, en la década de 1990, Intel gastó mucho dinero en mercadotecnia que la velocidad del reloj determinaba la potencia, y en ese momento todos sabían la velocidad del reloj de todos los chips en el mercado porque se suponía que debíamos comparar directamente la velocidad del reloj con la potencia del procesador. Un chip de 66Mhz era dos veces más rápido que un chip de 33Mhz, y un 2GHz era dos veces más potente que un chip de 1Ghz. Esto simplemente no es cierto, ya que mi DEC Alpha 21264 de 600Mhz podría azotar mi Intel Pentium III de 1Ghz haciendo cálculos pesados ​​como simulaciones químicas moleculares. Esto se debe a cosas como el revestimiento de la tubería de instrucciones, la predicción de ramificación, en cachés de chips, datos múltiples de una sola instrucción, etc.

La velocidad del reloj también determina qué tan rápido funcionan otros componentes del sistema. A medida que los datos pasan de la RAM a los controladores de la CPU o del disco duro, todas estas operaciones deben sincronizarse mediante un reloj a través de un dispositivo llamado “bus” (abreviatura de ómnibus: el conector universal). Hoy en día, las CPU generalmente funcionan más rápido que el bus de datos, por lo que pueden mover datos localmente al chip y procesarlos mucho más rápido. Algunas de las velocidades de bus más rápidas son de 400Mhz, mientras que los chips funcionan a velocidades de reloj de 3-4Ghz son comunes.

Gracias por el A2A.

La velocidad de reloj (también llamada velocidad de reloj) es la velocidad a la que un microprocesador (también conocido como CPU) ejecuta instrucciones y se mide en hercios.

La velocidad del reloj es la cantidad de ciclos que un reloj puede ejecutar en un segundo (también llamados ciclos de reloj o tics de reloj).
Según el ciclo del reloj, la velocidad de ejecución del procesador varía.

Para ser más específicos, es el número de pulsos generados por el oscilador lo que establece el tempo del procesador en un segundo.

La velocidad del reloj es el tempo de los pulsos generados por el oscilador interno o externo.
Esta puede o NO PUEDE ser la capacidad operativa máxima posible del procesador a bordo.
Pero, sin embargo, dicta la velocidad a la que la CPU realiza las operaciones del sistema.

Es simplemente, la velocidad a la que un microprocesador ejecuta las instrucciones.