Xilinx 7 Series万兆ネットワークIP使用


方法
万兆ネットIP、axi-dma、axi-pcie-bridge、FPGAに基づく万兆ネットカードを構築し、petalinux-2015.2を移植する.1の駆動はUbuntu 16へ.04.6では、テスト結果は以下の通りです.
qe@qe-pc:~/project$ ./iperf3 -s
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
Accepted connection from 192.168.10.6, port 6668
[  5] local 192.168.10.8 port 5201 connected to 192.168.10.6 port 6669
[ ID] Interval           Transfer     Bandwidth
[  5]   0.00-1.00   sec   231 MBytes  1.93 Gbits/sec                  
[  5]   1.00-2.00   sec   235 MBytes  1.97 Gbits/sec                  
[  5]   2.00-3.00   sec   233 MBytes  1.96 Gbits/sec                  
[  5]   3.00-4.00   sec   236 MBytes  1.98 Gbits/sec                  
[  5]   4.00-5.00   sec   232 MBytes  1.94 Gbits/sec                  
[  5]   5.00-6.00   sec   232 MBytes  1.95 Gbits/sec                  
[  5]   6.00-7.00   sec   232 MBytes  1.95 Gbits/sec                  
[  5]   7.00-8.00   sec   232 MBytes  1.95 Gbits/sec                  
[  5]   8.00-9.00   sec   240 MBytes  2.01 Gbits/sec                  
[  5]   9.00-10.00  sec   239 MBytes  2.00 Gbits/sec                  
[  5]  10.00-10.04  sec  8.53 MBytes  2.01 Gbits/sec                  
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bandwidth
[  5]   0.00-10.04  sec  0.00 Bytes  0.00 bits/sec                  sender
[  5]   0.00-10.04  sec  2.30 GBytes  1.96 Gbits/sec                  receiver
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
iperf3: interrupt - the server has terminated
qe@qe-pc:~/project$ ./iperf3 -c 192.168.10.6 -w 4M
Connecting to host 192.168.10.6, port 5201
[  4] local 192.168.10.8 port 37564 connected to 192.168.10.6 port 5201
[ ID] Interval           Transfer     Bandwidth       Retr  Cwnd
[  4]   0.00-1.00   sec  37.3 MBytes   313 Mbits/sec    0   28.5 KBytes       
[  4]   1.00-2.00   sec  36.9 MBytes   310 Mbits/sec    0   28.5 KBytes       
[  4]   2.00-3.00   sec  36.9 MBytes   310 Mbits/sec    0   28.5 KBytes       
[  4]   3.00-4.00   sec  36.9 MBytes   309 Mbits/sec    0   28.5 KBytes       
[  4]   4.00-5.00   sec  36.9 MBytes   310 Mbits/sec    0   28.5 KBytes       
[  4]   5.00-6.00   sec  36.9 MBytes   310 Mbits/sec    0   28.5 KBytes       
[  4]   6.00-7.00   sec  36.9 MBytes   310 Mbits/sec    0   28.5 KBytes       
[  4]   7.00-8.00   sec  36.9 MBytes   310 Mbits/sec    0   28.5 KBytes       
[  4]   8.00-9.00   sec  36.9 MBytes   309 Mbits/sec    0   28.5 KBytes       
[  4]   9.00-10.00  sec  36.9 MBytes   310 Mbits/sec    0   28.5 KBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bandwidth       Retr
[  4]   0.00-10.00  sec   370 MBytes   310 Mbits/sec    0             sender
[  4]   0.00-10.00  sec   369 MBytes   310 Mbits/sec                  receiver

iperf Done.

私のブログを参考にして、送信速度は1つのzynq(80 MB/s程度)に及ばない.駆動が最適化されていないため、1つのパケットを送信するたびに応答を中断する必要があり、中断はpcie msiを通じて伝送する必要があるため、効率が低く、受信はnapiを採用しているため、性能はzynqより向上しているが、まだ理想的ではなく、FPGAハードウェアをさらに加速する必要がある.