- Hardware structure: simple but flexible.
- PCI IP core: open-source. Downloaded from opencores.org
- Data transfer speed of the PCI digital IO board without using DMA: 66.8 Mbits/sec on 33MHz 32-bit PCI bus.
USB Comminication speed between a host computer/board and the motion-control FPGA.
1. Experiment setup.
2. Experiment results.
Internal structure of the motion-control FPGA:
Design of 6-axis serial and USB motion cards:
1. Motion card with serial interace.
2. Motion card with USB interface.
PC-based motion controller with USB interface:
Examples of FPGA board with USB interface:
FTDI FT2232H for USB interace:
1. Interface A port of the FT2232H: asynchronous FIFO mode.
2. Interface B port of the FT2232H: UART mode.
Connecting FT2232H to FPGA module:
1. XFC-XC3S50AN FPGA module and FTDI FT2232H mini module:
VCCAUX of the FPGA = 3.3V
2. Open3S3500E board and the FTDI FT2232H mini module:
VCCAUX of the FPGA = 2.5V
Assuming all the compulations are done by a PC or an external processor, I designed a motion-control FPGA as follows:
If a soft processor such as MIcroBlaze or Nios II is placed on the FPGA, construction of a standalone motion controller (without a PC or an external processor) is possible.
Because both MicroBlaze and NIOS II are Linux/Xenomai-ready, porting Linux/Xenomai software to MicroBlazer or NIOS II is trivial.
1. Typical structure of motion control boards
2. Structure of “advanced” motion control boards
3. Structure of a “simple” FPGA-based motion control board