I have the following setup to control 256 bi-polar stepper motors from a data stream via SPI.
I'm deciding between an MCU (teensy 3.6) or an FPGA.
Each motor (four wire) is driven by a driver that requires 2 GPIO's (A4988).
I use 32 16-bit shift registers to talk to the 256 drivers from around 36 GPIOs on the MCU/FPGA.
I want each motor to respond in unison when i issue commands, essentially they should be controlled in Parallel. An FPGA should do this well, but coding on one is not so trivial.
Using a Teensy 3.6 for the MCU approach, i would like to know how 'parallel' the control would be.
I.E. I have 32 Data lines going from 32 GPIOs to 32 16-bit Shift registers; I want to turn all steppers fully on in the same direction: how long is the latency between the command being output from GPIO 1 to GPIO 32?
Here is a block diagram to aid the setup.
I would probably go with the MCU approach if the latency is negligible, but i would like to know your thoughts. I would imagine any latency only being an issue since i bridge all other shift register control pins (latch, clock etc).