开发板主控:Intel Cyclone V SoC FPGA芯片
Linux内核版本:
Linux socfpga 3.10.37-ltsi-rt37+ #55 SMP PREEMPT RT Sat Apr 3 11:42:18 CST 2021 armv7l GNU/Linux
cyclictest测试工具下载链接:
官方链接:rt-tests/rt-tests.git - Suite of real-time tests - cyclictest, hwlatdetect, pip_stress, pi_stress, pmqtest, ptsematest, rt-migrate-test, sendme, signaltest, sigwaittest, svsematest
百度网盘链接:
链接: https://pan.baidu.com/s/1Nl2TivJsi_HGuFSPPhMZUw 密码: 29rl
第一步,将下载好的rt-tests-1.0.tar.gz解压,我这里直接放到/home/tianbot/EtherCATMaster,然后cd ~/EtherCATMaster/rt-tests-1.0到rt-tests-1.0文件目录。
第二步,修改Makefile,vim或者gedit修改都可,将Makefile文件里的
CC?=$(CROSS_COMPILE)gcc
AR?=$(CROSS_COMPILE)ar
修改为
CC=arm-linux-gnueabihf-gcc
AR=arm-linux-gnueabihf-ar
然后输入make ,交叉编译文件,最后将rt-tests-1.0目录下的cyclictest文件复制到开发板/bin目录下。
也可以按照下图修改。
#交叉编译
tianbot@ros2go:~/EtherCATMaster/rt-tests-1.0$ make -j8
实验参考:cyclictest 测试以及原理浅谈_i龙家小少的博客-CSDN博客_cyclictest
嵌入式开发板测试结果:
root@socfpga:~# cyclictest -p 90 - m -c 0 -i 200 -n -h 100 -q -l 1000000
# /dev/cpu_dma_latency set to 0us
# Histogram
000000 000000
000001 000000
000002 000000
000003 000000
000004 000000
000005 000000
000006 000000
000007 000000
000008 000000
000009 280418
000010 688317
000011 022317
000012 005482
000013 001279
000014 000220
000015 000288
000016 001150
000017 000052
000018 000097
000019 000064
000020 000102
000021 000093
000022 000052
000023 000020
000024 000014
000025 000015
000026 000012
000027 000002
000028 000002
000029 000002
000030 000001
000031 000001
000032 000000
000033 000000
000034 000000
000035 000000
000036 000000
000037 000000
000038 000000
000039 000000
000040 000000
000041 000000
000042 000000
000043 000000
000044 000000
000045 000000
000046 000000
000047 000000
000048 000000
000049 000000
000050 000000
000051 000000
000052 000000
000053 000000
000054 000000
000055 000000
000056 000000
000057 000000
000058 000000
000059 000000
000060 000000
000061 000000
000062 000000
000063 000000
000064 000000
000065 000000
000066 000000
000067 000000
000068 000000
000069 000000
000070 000000
000071 000000
000072 000000
000073 000000
000074 000000
000075 000000
000076 000000
000077 000000
000078 000000
000079 000000
000080 000000
000081 000000
000082 000000
000083 000000
000084 000000
000085 000000
000086 000000
000087 000000
000088 000000
000089 000000
000090 000000
000091 000000
000092 000000
000093 000000
000094 000000
000095 000000
000096 000000
000097 000000
000098 000000
000099 000000
# Total: 001000000 --总共进行1000000个循环测试
# Min Latencies: 00009 --最小延时9us
# Avg Latencies: 00009 --平均延时9us
# Max Latencies: 00031 --最大延时31us
# Histogram Overflows: 00000
# Histogram Overflow at cycle number:
# Thread 0:
工控机测试结果
Linux Robo 4.19.72-rt26-rt26 #1 SMP PREEMPT RT Fri Jan 3 10:46:12 CST 2020 x86_64 x86_64 x86_64 GNU/Linux
vito@Robo:~$ sudo cyclictest -p 90 - m -c 0 -i 200 -n -h 100 -q -l 1000000
[sudo] password for vito:
# /dev/cpu_dma_latency set to 0us
# Histogram
000000 000000
000001 890004
000002 087524
000003 011165
000004 009141
000005 001912
000006 000214
000007 000029
000008 000004
000009 000004
000010 000002
000011 000001
000012 000000
000013 000000
000014 000000
000015 000000
000016 000000
000017 000000
000018 000000
000019 000000
000020 000000
000021 000000
000022 000000
000023 000000
000024 000000
000025 000000
000026 000000
000027 000000
000028 000000
000029 000000
000030 000000
000031 000000
000032 000000
000033 000000
000034 000000
000035 000000
000036 000000
000037 000000
000038 000000
000039 000000
000040 000000
000041 000000
000042 000000
000043 000000
000044 000000
000045 000000
000046 000000
000047 000000
000048 000000
000049 000000
000050 000000
000051 000000
000052 000000
000053 000000
000054 000000
000055 000000
000056 000000
000057 000000
000058 000000
000059 000000
000060 000000
000061 000000
000062 000000
000063 000000
000064 000000
000065 000000
000066 000000
000067 000000
000068 000000
000069 000000
000070 000000
000071 000000
000072 000000
000073 000000
000074 000000
000075 000000
000076 000000
000077 000000
000078 000000
000079 000000
000080 000000
000081 000000
000082 000000
000083 000000
000084 000000
000085 000000
000086 000000
000087 000000
000088 000000
000089 000000
000090 000000
000091 000000
000092 000000
000093 000000
000094 000000
000095 000000
000096 000000
000097 000000
000098 000000
000099 000000
# Total: 001000000
# Min Latencies: 00001
# Avg Latencies: 00001
# Max Latencies: 00011
# Histogram Overflows: 00000
# Histogram Overflow at cycle number:
# Thread 0:
PC测试结果
Linux star-A 5.4.28-rt19 #1 SMP PREEMPT_RT Sun Apr 25 08:24:05 CST 2021 x86_64 x86_64 x86_64 GNU/Linux
star@star-A:~$ sudo cyclictest -p 90 - m -c 0 -i 200 -s -h 100 -q -l 1000000
# /dev/cpu_dma_latency set to 0us
# Histogram
000000 000000
000001 912548
000002 083775
000003 002528
000004 000590
000005 000202
000006 000092
000007 000070
000008 000068
000009 000052
000010 000023
000011 000013
000012 000008
000013 000006
000014 000001
000015 000003
000016 000005
000017 000001
000018 000002
000019 000000
000020 000003
000021 000001
000022 000001
000023 000001
000024 000001
000025 000001
000026 000000
000027 000000
000028 000000
000029 000002
000030 000000
000031 000001
000032 000000
000033 000001
000034 000000
000035 000000
000036 000001
000037 000000
000038 000000
000039 000000
000040 000000
000041 000000
000042 000000
000043 000000
000044 000000
000045 000000
000046 000000
000047 000000
000048 000000
000049 000000
000050 000000
000051 000000
000052 000000
000053 000000
000054 000000
000055 000000
000056 000000
000057 000000
000058 000000
000059 000000
000060 000000
000061 000000
000062 000000
000063 000000
000064 000000
000065 000000
000066 000000
000067 000000
000068 000000
000069 000000
000070 000000
000071 000000
000072 000000
000073 000000
000074 000000
000075 000000
000076 000000
000077 000000
000078 000000
000079 000000
000080 000000
000081 000000
000082 000000
000083 000000
000084 000000
000085 000000
000086 000000
000087 000000
000088 000000
000089 000000
000090 000000
000091 000000
000092 000000
000093 000000
000094 000000
000095 000000
000096 000000
000097 000000
000098 000000
000099 000000
# Total: 001000000
# Min Latencies: 00001
# Avg Latencies: 00001
# Max Latencies: 00036
# Histogram Overflows: 00000
# Histogram Overflow at cycle number:
# Thread 0: