¿Por qué los pestillos y los esquemas de reloj de 2 fases están mal vistos en el diseño moderno de ASIC de alta velocidad? Entiendo que los diseños basados en flip-flop de un solo borde son más fáciles en las herramientas STA, pero ¿existen otras buenas razones para este sesgo en la industria?
No es tanto un 'sesgo' en la industria como una cuestión de estrategia de diseño. Dos relojes de alta velocidad desfasados 180 grados (reloj A y reloj B) suenan como una buena solución para relojes de registro de entrada/registro de salida (o contar y almacenar) o para evitar condiciones de carrera.
A velocidades bajas de menos de 500 MHz, un reloj de 2 fases no es un problema tan grande, pero a frecuencias de reloj de GHZ es casi imposible evitar la desviación del reloj A en comparación con el reloj B, especialmente después de atravesar varias vueltas y cambiar de capa. Esto rápidamente hace que el esquema de 2 fases sea inútil, ya que el sesgo tendría que corregirse constantemente.
Es mejor tener un solo reloj maestro y usar retrasos de 'punto de uso' cuando sea necesario para la configuración de datos y el tiempo de espera, registrar el tiempo de lectura, etc. Los flip-flops de un solo borde solo bloquean los datos en el borde ascendente o descendente del reloj. Para retrasos más largos, un pestillo nand puede 'atrapar' el pulso del reloj hasta que se use, lo que reinicia el pestillo. A menudo, este retraso en el "punto de uso" es solo un patrón en zig-zag en la traza justo en el IC que necesita el retraso.
Con atención a los detalles, el flanco ascendente se puede usar para bloquear una dirección en un dram/ram/registro y el flanco descendente se puede usar para leer o escribir datos. Siempre que la dirección/los datos sean estables antes de que llegue el borde del reloj (incluso por unos pocos cientos de picosegundos), esto ayuda a que el esquema de reloj monofásico funcione de la mejor manera.
Las CPU y las MPU todavía usan un reloj de 4 fases, pero solo en el núcleo de la máquina de estado, para realizar los procedimientos de 'obtención/descodificación/ejecución/almacenamiento' de manera ordenada. Tenga en cuenta que algunas CPU modernas pueden usar un reloj de 6 fases para que la búsqueda previa y la reescritura se agreguen a la secuencia.
Super gato