Reference_nic

Reference_nic是NetFPGA-SUME中提供的一个参考Demo,本文主要介绍如何构建并在SUME上运行reference_nic。

GIT源

git clone https://github.com/NetFPGA/NetFPGA-SUME-live.git

私有库,需要权限。

Settings.sh

修改 /NetFPGA-SUME-live/tools/settings.sh

gedit /NetFPGA-SUME-live/tools/settings.sh

修改如下:

export SUME_FOLDER=/home/sume/NetFPGA-SUME-livs    #库的路径
export XILINX_PATH=/opt/Xilinx/Vivado/2016.4 #vivado的安装路径
export NF_PROJECT_NAME=reference_nic #本次测试的demo,其他demo可以在/NetFPGA-SUME-livs/projects下找到

修改完成后:

source /NetFPGA-SUME-live/tools/settings.sh

Vivado

vivado运行环境变量:

source /opt//Xilinx/Vivado/2016.4/settings.sh      #/opt//Xilinx/Vivado/2016.4/为vivado安装目录

NetFPGA-SUME-live

root@sume:/# cd $SUME_FOLDER                       #应该进入settings.sh设定的目录
root@sume:/home/sume/NetFPGA-SUME-livs# make

只要第一次执行就行,大概需要半个小时到一个小时。

编译Reference_nic

这部分需要很多时间,我出错也都在这部分。

root@sume:reference_nic# make                      #编译reference_nic

渣电脑编译一次花了大半个下午。。 不过也是只要编译一次即可。

编译后 bitfilse 目录下会出现一个二进制文件: reference_nic.bit

root@sume:reference_nic# cd bitfiles
root@sume:reference_nic/bitfiles# xmd #启动Xilinx tool

这里如果遇到提示找不到命令,可以在本目录再次下执行:

source /opt//Xilinx/Vivado/2016.4/settings.sh

启动Xilinx tool后会看到 xmd% 提示符:

xmd% fpga -f reference_nic.bit

看到成功提示后重启电脑。

重启后输入命令:

lcpsi -vxx | grep Xilinx

确认是否有Xilinx设备:



没有多重启几次电脑(Github原文:If you don't see the Xilinx device, you need to reprogram the FPGA and reboot as mentioned earlier.)。我是重启了好几次放弃,第二天回来就出现了。。

sume_riffa模块

加载sume_riffa模块,这部分比较简单,一般不会出错。

root@sume:/# cd $DRIVER_FOLDER                                  #应该进入sume_riffa_v1_0_0目录
root@sume:sume_riffa_v1_0_0# make all #很快
root@sume:sume_riffa_v1_0_0# make install #很快
root@sume:sume_riffa_v1_0_0# modprobe sume_riffa #载入sume_riffa模块
root@sume:sume_riffa_v1_0_0# lsmod #确认sume_riffa已载入

载入成功后执行ifconfig -a,应该出现4个'nfX'的网卡:

测试

提供的测试脚本地址为:NetFPGA-SUME-live/tools/scripts

需要的物理连接:

nf0<>nf0

nf1<>nf1

nf2<>nf2

nf3<>nf3


由于没有需要的特定光缆,所以改用另一种比较原始的方式,仅测试了nic的功能,没测试速率,接线如图:

NetFPGA-SUME下reference_nic测试的更多相关文章

  1. 论文阅读:NETFPGA SUME: TOWARD 100 GBPS AS RESEARCH COMMODITY

    摘要: 数据中心网络的需求增长意味着许多组成技术不在研究社区的预算之内. NETFPGA SUME是基于FPGA的PCI Express板,具有I / O功能,可作为网络接口卡,多端口开关,防火墙或测 ...

  2. 无废话Android之android下junit测试框架配置、保存文件到手机内存、android下文件访问的权限、保存文件到SD卡、获取SD卡大小、使用SharedPreferences进行数据存储、使用Pull解析器操作XML文件、android下操作sqlite数据库和事务(2)

    1.android下junit测试框架配置 单元测试需要在手机中进行安装测试 (1).在清单文件中manifest节点下配置如下节点 <instrumentation android:name= ...

  3. 安卓下junit测试

    安卓下junit测试 第一种方法: 1,在AndroidManifest.xml下,加入如下红色代码 <manifest xmlns:android="http://schemas.a ...

  4. Spring框架下Junit测试

    Spring框架下Junit测试 一.设置 1.1 目录 设置源码目录和测试目录,这样在设置产生测试方法时,会统一放到一个目录,如果没有设置测试目录,则不会产生测试代码. 1.2 增加配置文件 Res ...

  5. Android平台下渗透测试工具大集合

    Android平台下渗透测试工具大集合 分享一个google的项目,各种Android下的渗透测试工具. Ad Network Detector (1.2): http://market.androi ...

  6. APUE中fcntl.h的使用及O_SYNC在Mac与Ubuntu下的测试

    此部分测试涉及到APUE V3中,第三章的图3-12到图3-14. 通过fcntl.h提供的功能,修改fd的文件属性,本处增加O_SYNC功能,并测试其效果. 本文涉及代码: tree ch3 ch3 ...

  7. Ubuntu-14.04.3下SDL2测试

    最近突然蛋痛想入门Linux,想写个跨平台的游戏,各种坑,备忘,稍微记点笔记. 主要参考这个文章 buntu14.04下C++开发SDL2应用 下载与安装 到http://www.libsdl.org ...

  8. Screenfly – 各种设备的屏幕和分辨率下快速测试网站

    Screenfly 让你能够在各种设备的屏幕和分辨率下查看你的网站.输入网址,并点击GO开始浏览网页.Screenfly 可以使用代理服务器来模拟设备,当您查看您的网站,代理服务器模仿您所选择的设备的 ...

  9. Obj格式解析以及在Unity3D下导入测试

    目前基本实现了导入,注意只能打开含有单个模型的obj文件 四边面模型: 全三角面模型(测试单一材质,自动分了下UV): 这里介绍下obj格式: obj格式是waveFront推出的一种3D模型格式,可 ...

随机推荐

  1. 笔记:iOS随机数与随机数据集

    //0 到 N - 1 之间的随机整数 NSUInteger r = arc4random_uniform(N); //1 到 N 之间的随机整数 NSUInteger r = arc4random_ ...

  2. JS实现图片的淡入和淡出的两种方法,如有不足,还请前辈多多指导^-^~

    今天下午练习了下这个图片的淡入淡出小demo,如有不足,还请前辈多多指导^-^~ 总结如下: 第一种方法: 个人觉得第一种方法比较好,同时兼容IE8以下浏览器,但是如下代码中,不知可不可以将timer ...

  3. 用margin实现两列布局中的自适应列

    <div id="wrapper"> <div id="col1"> "fixed" </div> &l ...

  4. sqlserver 抓取所有执行语句 SQL语句分析 死锁 抓取

    原文:sqlserver 抓取所有执行语句 SQL语句分析 死锁 抓取 在多人开发中最头疼的是人少事多没有时间进行codereview,本来功能都没时间写,哪有时间来开会细细来分析代码.软件能跑就行, ...

  5. 仙人掌&圆方树

    仙人掌&圆方树 Tags:图论 [x] [luogu4320]道路相遇 https://www.luogu.org/problemnew/show/P4320 [ ] [SDOI2018]战略 ...

  6. 26-[Boostrap]-介绍与起步

    1.Bootstrap的介绍 凡是使用过Bootstrap的开发者,都不在乎做这么两件事情:复制and粘贴.哈哈~,是的使用Bootstrap非常简单,但是在复制粘贴之前,需要先对Bootstrap的 ...

  7. 在ns2.35下完成柯老师lab18实验

    说明:柯志亨老师<ns2仿真实验-----多媒体和无线网络通信>这本书lab18实验为“无线网络封包传输遗失模型”的实验.该无线传输遗失模型是柯老师自己开发的,原始的ns-allinone ...

  8. P1402 酒店之王

    P1402 酒店之王 每个人要匹配一个A和一个B,所以这样连边: S向每个房间连边. 每个房间向喜欢这个房间的人连边. 每个人向喜欢的菜连边. 每道菜向T连边. 边权均为1. 注意人要限流. // I ...

  9. eclipse - 新建jsp页面默认模板设置

    有时候我们自己如果没有现成的JSP模板时,系统一般会自动生成如下页面: 这个页面显然并不是我们所需要的,所以我们需要修改默认模板 进入 修改 <%@ page language="ja ...

  10. stl源码分析之hash table

    本文主要分析g++ stl中哈希表的实现方法.stl中,除了以红黑树为底层存储结构的map和set,还有用哈希表实现的hash_map和hash_set.map和set的查询时间是对数级的,而hash ...