Los microprocesadores consisten en muchos circuitos lógicos que están hechos de "puertas" estándar como inversores, AND, O NAND, etc. Estas puertas consisten de transistores (CMOS) y el comportamiento de estos transistores depende de muchos parámetros como la temperatura y Variaciones en el proceso de fabricación. Esto influye en la velocidad a la que estas puertas pueden operar de manera confiable. La velocidad también se ve afectada, por ejemplo, por cuántas entradas están conectadas a una salida determinada. Quiero decir que la arquitectura del circuito también juega un papel importante.
Sería casi imposible hacer un chip confiable confiando solo en estos retrasos variables. Tendría que reducir la velocidad de todo para garantizar un funcionamiento correcto, por ejemplo, para que un circuito más rápido espere la entrada de un circuito más lento. Eso no es tan eficiente y no da como resultado un circuito rápido.
Es por eso que casi todos los circuitos digitales complejos, como los microprocesadores, están sincronizados , lo que significa que hay un reloj que da un "latido de ciervo" y que todos los circuitos funcionan (solo cambia el estado) cuando llegue este "ritmo" (en el borde del reloj).
El uso de un reloj permite un flujo de diseño mucho más sencillo y más automatizado. Aún así, al final del diseño, cuando las demoras reales pueden ser determinadas por herramientas especializadas, las simulaciones pueden probar si todavía hay problemas de tiempo o no y también sugerir qué cambiar para resolverlos.