-
Notifications
You must be signed in to change notification settings - Fork 270
Getting Started Guide
Welcome to the Getting Started Guide!
This guide covers
- System Requirements
- Downloading the code repository
- Installation
- Testing the example project
- Xilinx Vivado HLS 2015.1 (Due to a bug in the HLS DATAFLOW pragma newer version are not working)
- Xilinx Vivado 2016.2 (most recent version should work)
- License for Xilinx 10G MAC IP
- Linux OS
- Xilinx VC709 or ADM-PCIE-7V3 FPGA card from Alpha Data
On your machine, change to the desired directory and execute the following command:
git clone git@github.com:NetFPGA/NetFPGA-SUME-live.git
Make sure that Xilinx Vivado HLS 2015.1 is in your PATH.
Navigate to tcp_ip/scripts:
cd tcp_ip/scripts
Execute the make script:
./make_tcp_ip.sh
Make sure that Vivado (2016.2) is set in your PATH.
Create the example project for your board.
For the Xilinx VC709:
vivado -mode batch -source create_vc709_proj.tcl
For the Alpha DATA ADM-PCIE-7V3:
vivado -mode batch -source reate_adm7v3_proj.tcl
After the previous command executed, a Vivado project will be created and the Vivado GUI is started.
Set the address, DefaultGateway and MAC address if required at the top of the tcp_ip_top.v file
Click "Generate Bitstream" to generate a bitstream for the FPGA.
Deploy the generated .bit file on the Xilinx VC709 or Alpha Data 7V3 board. This .bit file loops back both UDP and TCP packetssent to the FPGA.
Connect the 10G ETH port on another PC to the 10G ETH port on the FPGA board and set the IP address of this PC 10G to be in the same subnet as the FPGA.
From the PC console enter following command to check if you can ping the FPGA successfully by running following command: ping
Navigate to tcp_ip/scripts and enter following command to send packets which will be looped back.
python ./client_length_mt_fixed_char.py --ip=<FPGA-ip-address>
This python script basically will create two sessions and send packets to the TOE and the close the session.
If you run following command, UDP packets will be looped back.
python ./client_fixed_length.py --ip=<FPGA-ip-address>