- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于流水线的SpaceWire路由器研究
图6所示的为并行交换体系结构,设计用FPGA实现K个M×M的无缓存的交叉开关作为交换模块。这个体系结构是由M个输入共享存储器模块、K个交叉开关和M个输出共享存储模块组成。每个输入/输出共享存储器模块有V个外部线路接口,同时与所有交叉开关相连接。
输入共享存储器模块包含(M*V)个VOQ(虚拟输出队列),保存输出到不同目的端口的信元。输出共享存储器模块包含V个输出队列,保存等待输出的信元。在每个仲裁周期,输入端口从(M*V)个VOQ队列中随机选择M个队列,向交换开关提交调度请求。交换开关以轮询方式为各队列提供服务,根据调度结果将授权信息反馈给输入端口。授权信息指定的VOQ队列头信元通过交换开关直接到达输出队列,完成报文重组等处理后,发送到外部链路。为了避免输出端发生缓冲区溢出,可采用反压机制及时阻止输入端发送过量信元。
在多个输入端向一个输出端发送数据时,在交换开关中利用流水线技术让多个输入端分时向输出端发送数据。也可以在每个输入端都复制一个路由查找表,这样在就不需要仲裁机制了。当数据流进入输入端后,根据包头地址查找路由表,确定要发送的输出端,然后进行发送,当多个输入端进行传送时,就会给每个输入端分配一个时间令牌,当自己的时间令牌有效时,就进行传输,当时间令牌失效时,停止传输,直到将所有数据传输完毕。而时间令牌的分配,由路由算法来控制。基本思想是利用流水线将时间令牌轮流分给每个输入节点,还可根据具体的一些情况对路由算法进行优化。此项工作目前正在进行中。基于这种流水线技术设计的SpaceWire路由器,速度将会达到200 Mb/s。从而使SpaceWire网络的数据传输更加快速,也会实现各输入端到输出端的同时访问。
3 结 语
介绍了SpaceWire路由器的基本原理,重点阐述了一种基于流水线技术的SpaceWire路由器的研究,关键技术是用FPGA设计一种基于流水线技术的交换开关。SpaceWire路由器符合未来航天航空领域的发展需求,所以spaceWire路由器速度是非常关键的指标。本文就是介绍了一种改善Spacewire路由器的速度的方法,具有很高的研究价值。目前此项研究正在实现过程中。
来源:维库开发网