首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 单片机栏
一种基于流水线的SpaceWire路由器研究
来源:本站整理  作者:佚名  2009-05-06 10:44:27



低延迟、虫洞路由和无阻塞交换开关使数据包能够到达任意一个SpaceWire端口和外部端口,或者也可以由配置端口直接访问任意一个SpaceWire端口和外部端口。所设计SpaceWire端口完全支持SpaceWire标准,提供高速的、双向的通讯。每个外部端口包括一个发送FIFO和一个接收FIFO,可以发送接收字符和包结束标志。
    Time—code端口会和计数器一起被提供用来方便Time—code的传播。当一个有效的Time—code到达一个路由端口时,它也会被发送到其他Spacewire端口,一个TICK_OUT信号会在Time—code端口被产生。路由器可以用Time—code端口提供的TICK_IN信号做为Time—code的操作管理。
    配置端口可以配置任何SpaceWire端口和外部端口。它包括可以控制SpaceWire端口、外部端口和交换开关的寄存器。配置端口为各种端口和交换开关都设置了状态寄存器。用配置端口的读命令可以读这些寄存器,从而来读出路由器的状态和错误信息,而且一些状态引脚上的状态和错误信息可以被选择输出。
    路由表可以通过配置端口来访问。逻辑地址端口映射和优先位都可以在路由表中进行设置,路由表常常用来控制组适应路由和交互开关中的优先仲裁。
1.3 虫洞路由
    SpaceWire路由器是基于虫洞路由上进行设计的。虫洞路由是包路由的一种形式。每一个包的包头包含着目的地的地址信息。每当有一个包到达路由器时,它就立即检测这个包的目的地址,然后按照该地址转发这个包到相应的输出端口。如果要求的输出端口是“空闲”(free)状态,则这个包会被立即转发到这个输出端口。这时,该端口就会被打上“忙”(blasy)状态标记,直到这个包的最后一个字符即“包尾”(EOP)通过路由器转发出去。
    虫洞路由如图3所示,图中一个包从一个节点发出,通过路由器到达另外一个节点。包头标记为黑色,其余部分为灰色。路由器负责在输入端口和空闲的输出端口之间建立连接,当检测到EOP或EEP时,断开连接,释放输出端口为空闲状态,准备接收其他端口来的包。输出端口忙时,输入端口阻塞输入包,直到其空闲。通过输入端口相远节点发送FCT来实现,直到输出端口空闲时,路由器才取消阻塞。以上是虫洞路由和流量控制之间的关系。

2 基于流水线的SpaceWire路由器
    SpaceWire路由器将数据从输入端传递到输出端的过程一般需要进过三个阶段:首先,从输入端读数据,将数据包中包头所包含的目标地址发送给路由查找表;再次,由路由查找表对目标地址进行查找,确定该数据包所要发送的输出端;最后,将数据包发送到目标地址所指的输出端。具体结构如图4所示。

上一页  [1] [2] [3] 

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:75,875.00000 毫秒