La frecuencia máxima depende más que nada de la estabilidad a la hora de enviar pasos, por lo general esto está relacionado al procesador y a qué tan "libre" está el pc (por lo mismo es una mala idea tener antivirus, salvapantallas o similares en un pc controlador de CNC, al igual que es mala idea usar el pc para otra cosa mientras se está cortando algo).
Las versiones actuales de Mach3 soportan desde 25khz hasa 100khz por el puerto paralelo (tú puedes decidir cuanto es el máximo que vas a permitir, tiene varios valores predeterminados).
Sobre los límites de cada interfaz, supongo que depende de cada una. Hay interfaces que incluyen buffers y/o optoacopladores entre otros componentes que podrían limitar de una u otra forma el máximo de pulsos.
He aquí un ejemplo acerca de cómo se relaciona la frecuencia de pulsos a la velocidad de la máquina:
Actualmente en una de mis máquinas tengo el Mach3 configurado con un kernel de 60khz.
Los motores son de 200 pasos por vuelta, y el driver es de 1/10 micropasos, o sea que al final son 2000 pasos (pulsos del puerto paralelo) por vuelta. Si el tornillo de cada eje tiene un avance de 4mm por vuelta, significa que por cada 2000 pulsos avanzo 4mm, o sea avanzo 500 pulsos por mm.
Como tengo un máximo de 60000 pulsos por segundo:
60000/500 = 120mm por segundo vendría a ser mi avance máximo (si es que la combinación de motores/drivers/fuente permite esa velocidad, claro).
12cm por segundo es una velocidad muy buena, de hecho rara vez voy a cortar a esa velocidad, por lo cual el puerto paralelo brinda velocidad de pulsos de sobra
Si no me equivoco, a mayor velocidad de kernel hay más posibilidades de perder pasos, por lo cual siempre conviene mantenerse lo más bajo que permita estabilidad y velocidad aceptables. Digamos que en cierta forma el procesador está haciendo "malabarismo" con los pulsos de una forma súper coordinada: mientras más pulsos por segundo tenga que manejar, más concentración necesita y es más fácil que lo desconcentren y pierda el control por un momento si es que cualquier proceso pide recursos al procesador.
Yo personalmente he probado Mach3 hasta con un P4 antiguo sin problemas, así que cualquier computador actual debiese tener suficientes recursos a nivel de procesador.