路由与交换实验——2进3出端口配置

一、 实验目的

  • 熟悉NetMagic08的硬件编程方式;
  • 基于 NetMagic08 搭建实验环境,包括 NetMagic08 的安装、Quartus 与 NetMagic08的对接
  • 使用 Quartus设计硬件逻辑
  • 了解FPGA编程基础

二、 实验内容

1. 基础要求:

在UM_my/UM.v中使用Verilog语言编写一个模块让NetMagic08实现2口进3口出的基本功能。

2. 扩展要求:

在实现了实验内容1后,改写程序实现从NetMagic08 的2端口进入的包转发至所有端口;所有端口进入的包都转发到2号端口

3. 项目1验收要求:

将两台电脑分别连接2口和3口,设置好同网段的IP地址后互相进行ping操作,能ping通说明硬件编写成功。PS:该实验使用的是千兆端口,需要两台电脑支持千兆网口

4. 项目2验收要求:

任意端口可以互联,互相能够ping通。

三、 实验环境

在这里插入图片描述

  1. 1台管理节点主机;1台主机A;(分别连接到2口和3口);
  2. 2根网线;
  3. NetMagic08开发平台;
  4. 软件Quartus 16。主机及网络详细配置参照附带的实验环境拓扑及软件配置文档。

四、 实验步骤

我们首先完成基础要求,实现2进3出的功能配置。

项目1:

Step1. 使用Quartus 打开 in2out3目录下的硬件工程项目etFPGAmini-2-3.qpf
Step2. 在工程项目中,打开文件列表对UM.v文件进行编写(用户模块文件)
Step3.在UM.v文件中增加一个新的处理逻辑,在一个always@(posedge clk or negedgereset)逻辑中完成端口2进端口3出的硬件设计:
在这里插入图片描述

主要是通过if判断语句实现对数据包的处理,在得知了数据报的端口号之后,进入子if判断语句进行判断,将从2号端口进入的数据包发送到3号端口,将从3号端口进入的数据包发送到2号端口,从而实现了2号和3号端口的双向互通;最后,对于其他情况,我们不转发。

Step4. 点击编译命令,对代码进行编译,软件会完成硬件电路的设计和优化,生成和工程名同名的sof文件;点击图中的蓝色箭头即可进行编译。编译时间可能会较长。
在这里插入图片描述

Step5.将sof文件下载到NetMagic08中进行硬件调试
在这里插入图片描述
在这里插入图片描述

下载完毕后,我们使用网线将两台PC与NetMagic设备相连接,在设置了各自的静态IP地址后,使用命令行名ping命令,查看是否连通。
我们将两台计算机的一台IP设置为:169.254.78.34;另一台设:169.254.30.65
从169.254.78.34 顺利ping通169.254.30.65(此时 169.254.78.34 连接2口,169.254.30.65连接3口)
在这里插入图片描述

再从169.254.30.65 ping 169.254.78.34,发现顺利ping通。
在这里插入图片描述

至此项目实现2进3出的代码顺利调试成功。

五、 实验思考

项目2完成后3号口和4号口能否联通?
答案是可以。当完成项目2:n进n出的端口配置之后,3号口与4号口是能进行转发的,n可以取1、2、3、4其中一个值,因此是能联通的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值