SPRADH0 August   2024 AM625 , AM6442 , AM69 , TDA4VM

 

  1.   1
  2.   Abstract
  3.   Trademarks
  4. 1Introduction
    1. 1.1 What is EtherCAT?
    2. 1.2 What is a PLC?
    3. 1.3 What is CODESYS?
  5. 2Evaluation Platform and Methods
    1. 2.1 Hardware
    2. 2.2 Software
    3. 2.3 Test Topology
  6. 3Performance Metrics
    1. 3.1 Cyclictest Performance Metrics
    2. 3.2 EtherCAT Performance Metrics
  7. 4Optimizations
    1. 4.1 Implemented Optimizations
    2. 4.2 Future Considerations
      1. 4.2.1 Set Maximum CPU Frequency
      2. 4.2.2 Isolate Cores
      3. 4.2.3 Set CPU Affinity
      4. 4.2.4 Isolate Cores and Set CPU Affinity
      5. 4.2.5 Ksoftirqs to FIFO
      6. 4.2.6 Increase the Real-Time Scheduling Time
      7. 4.2.7 Disable irqbalance
      8. 4.2.8 Use Separate Network Interface Card (NIC)
      9. 4.2.9 Disable Unnecessary Drivers
  8. 5Summary
  9. 6References
  10. 7Appendix A: How to Setup TI Embedded Processors as EtherCAT Controller Using the CODESYS Stack
    1. 7.1 Hardware Requirements
    2. 7.2 Software Requirements
    3. 7.3 Hardware Setup
    4. 7.4 Software Setup
      1. 7.4.1 Windows PC Setup
      2. 7.4.2 EtherCAT Controller Setup
      3. 7.4.3 CODESYS Development System Project
      4. 7.4.4 Execution
    5. 7.5 How to View Performance Measurements
      1. 7.5.1 Appendix A Resources
  11. 8Appendix B: How to Enable Unlimited Runtime on CODESYS Stack
    1. 8.1 CODESYS Licensing Background
    2. 8.2 Obtaining a CODESYS License
    3. 8.3 Activating CODESYS License
      1. 8.3.1 Background
      2. 8.3.2 Recommended Steps
    4. 8.4 Verifying CODESYS License Applied
      1. 8.4.1 Known Issues With Verifying CODESYS License Applied

Hardware

Performance metrics are captured with SK-AM62B running as EtherCAT controller using the CODESYS EtherCAT stack. A network of ten Beckhoff digital output devices (EL2889) are connected to the EtherCAT controller using a Beckhoff EtherCAT coupler (EK1100). These metrics are further captured on TMDS64EVM, SK-AM69, and SK-TDA4VM with the same network.

All platforms in Table 2-1, are benchmarked as an EtherCAT controller except the AM62A platform. As shown in the table, AM62A offers some potential advantages in terms of higher DDR speed and larger DDR bus-width.

Table 2-1 Texas Instruments ARM®-Based Processors
Part NumberARM CPUARM (max) MHzOperating SystemCacheExternal Memory on EVM

AM62x

4 Cortex-A53 SoC

1400 (64-bit)

Linux

32KB L1 DCache

32KB L1 ICache

512KB L2 Cache

DDR4

1600 MT/s

16-bit width

AM64x

2 Cortex-A53 SoC with Cortex-R5F Co-CPU

800, 1000 (64-bit)

Linux, RTOS

32KB L1 DCache

32KB L1 ICache

256KB L2 Cache

DDR4

1600 MT/s

16-bit width

AM69

8 Cortex-A72 SoC with Cortex-R5F Co-CPU

2000 (64-bit)

Linux, RTOS

32KB L1 DCache

48KB L1 ICache

2MB L2 Shared Cache

LPDDR4

2133 MT/s

32-bit width

TDA4VM

2 Cortex-A72 SoC with Cortex-R5F Co-CPU

2000 (64-bit)

Linux, RTOS

32KB L1 DCache

48KB L1 ICache

1MB Shared L2 Cache

LPDDR4

2133 MT/s

32-bit width

AM62A

4 Cortex-A53 SoC

1400 (64-bit)

Linux

32KB L1 DCache

32KB L1 ICache

512KB Shared L2 Cache

LPDDR4

3733 MT/s

32-bit width

To best replicate a real factory automation environment, where EtherCAT is typically used for an indefinite period of time, a CODESYS license is acquired and applied to a dedicated CODESYS USB dongle. Without a CODESYS license, each run has a timeout at 30 minutes, at which point the run needs to be manually restarted. To run longer than 30 minutes, each target EtherCAT controller requires a USB port to read the license applied on the CODESYS USB dongle.