Protocol Selection Guide

Choose the appropriate protocol based on your application requirements. Modbus RTU/TCP is simple and widely used for basic industrial communication. CAN is ideal for automotive and distributed control systems. EtherCAT provides high-performance real-time Ethernet for motion control applications.

Modbus Implementation

Modbus RTU can be implemented using the UART peripheral with software protocol handling. For Modbus TCP, use the embedded Ethernet MAC with a lightweight TCP/IP stack. UNISOC provides reference designs for both variants. The FPGA logic handles the timing-critical UART framing while software manages the protocol state machine.

CAN Controller Design

Implement a CAN controller in FPGA logic following the ISO 11898 standard. The design includes bit timing logic, message filtering, and transmit/receive buffers. Connect to an external CAN transceiver for physical layer interface. Multiple CAN interfaces can be implemented in a single FPGA.

EtherCAT Slave Implementation

EtherCAT requires precise timing and hardware acceleration for best performance. Implement the EtherCAT Processing Unit (ESC) in FPGA logic with dedicated DMA for process data exchange. Use the USC9002's PCIe interface for high-speed host communication. Reference designs include support for CoE (CANopen over EtherCAT) protocol.