一种基于FPGA的多时钟片上网络研究与设计

时间:2010-09-14来源:网络

  2.3 交叉点矩阵

  设计一个多路交叉点矩阵, 目的是为了减少面积的使用。而另一种设计是支持复分解虚拟通道的交叉点连接。后一种方法,产生高网络吞吐量,但要增加一个重要的复杂性开关。交叉点支持并行连接,以及被用于通过中央仲裁器支持多个信号同时请求。并非所有的交叉点连接都是使用XY 路由算法。经过逻辑优化,如图2 所示设计中实施简单的4 和2 输入多路复用器开关(分别是L、N、S、E 以及W 端口)。上述优化方案减少了交叉点面积,使其使用的切片只有32 片。因此,达到路由器面积显著减小的目的。

  图2 交叉点矩阵

  输入端口的分配方式将采用简单的Round-robin仲裁机制。对上一次接收过的或没有用到的端口将给予最低优先级,并排在队列的最末端。将通过以下的方式提高路由器的性能:

  (1)降低中央仲裁器的逻辑复杂度;

  (2)尽量集中仲裁器,以减少req/grant 信号的数量。

  在设计中减少逻辑复杂度以及布线, 从而减少数据堵塞,达到提高性能以及减低功耗的效果。

  3 性能分析

  利用Virtex-4 系列中XC4VLX100-11[4]设备进行设计, 利用Xilinx ISE 8.2i 进行综合布局布线。使用ModelSim 6.1c[5]验证所设计的功能。设置了单一时钟和多时钟进行了模拟,分析多时钟片上网络的性能。由于路由器是直接连接到内核, 所以没必要考虑片与片之间的延时而去估计最高的频率。所设计是由一个路由功能模块(RFM)执行[6],用以准确地估计工作频率,基本路由器的单机版工作频率可到达357MHz。因此8bits 通道的路由器的吞吐量最高可达2.85Gbits/s。在所设计的路由器中, 头数据片前进到下一个节点,而剩下的数据片以流水线方式流通。在计划中,网络延时仅仅与路径长度H(跳跃点数量)有关。在信道争用的情况下,网络延时L 可以用以下方式计算:

  L = 7×H + B/w (1)

  公式(1)中,B 是数据包的字节数,w 是每个时钟周期转换的字节数。参数7 是在多时钟片上网络路由器中安装在每个路由器跳延迟支付。这个延时是因为基于数据包中的头数据片的解码和仲裁执行所导致的。

1 2 3 4

关键词: FPGA 片上网络 多时钟 通信 Virtex

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版