【技术实现步骤摘要】
基于离散事件的交换单元仿真系统及方法
本专利技术属于仿真
,特别涉及一种对交换单元的仿真技术,可用于网络设备。
技术介绍
信息技术的快速发展,对网络中的设备如路由器、交换机等提出了更严格的要求和更多的需求。而交换单元一直是网络设备中至关重要的一个节点,起到了连接链路、传输数据等关键作用。随着网络中数据流量的不断增加和业务越来越多种多样,交换单元的结构也变得越来越复杂。这同时也给交换单元的设计实现带来了更高的要求。因此如何在交换单元实现之前对设计方案进行仿真验证显得尤为重要。研究一款交换单元的步骤主要有分析需求、设计方案、软硬件仿真、方案修改、硬件实现、测试等组成。而软硬件的功能仿真在方案修改和硬件实现之前,起到了铺垫的作用。通过分析仿真结果,能够得到所设计的交换单元的各个性能参数,及时发现设计中的不足,对方案修改起到关键的指导作用。而硬件仿真和实现的周期一般都很长,所以对于软件仿真的要求主要包括程序运行时间短、易于扩展等。如果能够实现高效的软件仿真,将会大大缩短交换单元的设计实现周期,而且板级验证的结果还可以用于和软件仿真结果互相对比验证,从而改进软件仿真。硬件仿真一般借助ModelSim仿真实现,仿真过程采用Verilog语言编程,开发周期长,受时钟的限制比较大。硬件验证语言还有SystemC和SystemVerilog,它们的仿真验证更加接近于硬件实现,甚至是细化到时钟级别,而软件仿真不需要细化到时钟级别。近几年主要流行的软件仿真平台有Opnet、NS2等。其中NS2是一种面向对象的网络仿真器,本质上是一个离散事件模拟器。OPNET是一个网络仿真 ...
【技术保护点】
一种基于离散事件的交换单元仿真系统,包括:二维事件链表(1),用于存放交换单元数据流通过程中产生的事件;事件调度模块(2),用于从二维事件链表中取出事件,按照事件内容调用相应模块执行相应操作,并将在事件内容被执行过程中产生的新事件添加到二维事件链表(1)中;数据源模块(3),用于产生进入交换单元传输的数据帧,并将该数据帧提供给输入轮询模块(4);输入轮询模块(4),用于轮流查询每个输入端口的数据帧,并将数据帧传送给分组处理模块(5);分组处理模块(5),用于提取数据帧的帧信息,传输给入队调度控制模块(7);队列管理(6),用于提取数据帧的帧信息,构造相应的虚拟输出队列VOQ;入队调度控制模块(7),用于分配缓存地址,实现数据帧的逻辑入队,同时生成接收调度信息,控制接收总线控制模块(8)的搬移操作;接收总线控制模块(8),用于提取入队调度控制模块(7)生成的接收调度信息,并将数据帧从分组处理模块中的乒乓RAM搬移到共享缓存;发送轮询模块(9),用于生成出队调度信息,传输给出队调度控制模块(10);出队调度控制模块(10),用于提取发送轮询模块生成的出队调度信息,生成发送调度信息,传输给发 ...
【技术特征摘要】
1.一种基于离散事件的交换单元仿真系统,包括:二维事件链表(1),用于存放交换单元数据流通过程中产生的事件;事件调度模块(2),用于从二维事件链表中取出事件,按照事件内容调用相应模块执行相应操作,并将在事件内容被执行过程中产生的新事件添加到二维事件链表(1)中;数据源模块(3),用于产生进入交换单元传输的数据帧,并将该数据帧提供给输入轮询模块(4);输入轮询模块(4),用于轮流查询每个输入端口的数据帧,并将数据帧传送给分组处理模块(5);分组处理模块(5),用于提取数据帧的帧信息,传输给入队调度控制模块(7);队列管理(6),用于提取数据帧的帧信息,构造相应的虚拟输出队列VOQ;入队调度控制模块(7),用于分配缓存地址,实现数据帧的逻辑入队,同时生成接收调度信息,控制接收总线控制模块(8)的搬移操作;接收总线控制模块(8),用于提取入队调度控制模块(7)生成的接收调度信息,并将数据帧从分组处理模块中的乒乓RAM搬移到共享缓存;发送轮询模块(9),用于生成出队调度信息,传输给出队调度控制模块(10);出队调度控制模块(10),用于提取发送轮询模块生成的出队调度信息,生成发送调度信息,传输给发送总线控制模块(11);发送总线控制模块(11),用于提取发送调度信息,并将数据帧从共享缓存搬移到交叉节点缓存中;输出控制模块(12),用于查询交叉节点缓存,将数据帧从交叉节点缓存中搬移到输出端口;性能统计模块(13),用于统计各个数据帧进出各个模块的时间,并统计交换单元的吞吐率和时延性能。2.一种基于离散事件的交换单元仿真系统进行仿真的方法,包括:1)设计事件流程:1a)根据模块逻辑操作中所涉及的数据和数据操作特点,确定存放这些数据的数据结构类型;1b)根据模块行为的发生规律,确定该模块行为的事件流程类型;1c)根据事件划分标准,将模块的逻辑操作划分成多个事件;1d)根据每个事件之间的逻辑关系,将每个事件用箭头串联,形成事件流程;1e)获得有关联关系的事件之间的时间间隔ti,把时间间隔加到事件之间的关系箭头上,形成完整的事件流程;2)根据事件流程,用软件语言定义事件,体现事件流程中事件之间的关系;3)调用事件调度模块把初始事件添加到二维事件链表中,设置仿真结束时刻;4)调用事件调度模块对二维事件链表中的事件进行调度,其过程如下:4a)获取交换单元系统仿真的结束时刻Te;4b)事件调度模块从二维事件列表中取出一个事件E,将仿真当前时刻Tn设置为事件E的属性发生时间t;4c)判断仿真结束时刻Te和当前时刻Tn的大小关系,如果Te大于等于...
【专利技术属性】
技术研发人员:邱智亮,陈珊珊,潘伟涛,朱振轩,陈郝明,鲍民权,
申请(专利权)人:西安电子科技大学,
类型:发明
国别省市:陕西,61
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。