您的位置 首页 应用

FPGA研制之道(22)-交流矩阵

如果在FPGA设计中,需要多端口,大数据量的交换,那么交换矩阵则是一个不错的实现方案。交换矩阵使用的目的主要有几个,一,灵活的端口转发。通过交换矩阵灵活实现数据流的灵活交换,减少外部负责控制。 二

  假如在FPGA规划中,需求多端口,大数据量的交流,那么交流矩阵则是一个不错的完结计划。交流矩阵运用的意图主要有几个,一,灵敏的端口转发。经过交流矩阵灵敏完结数据流的灵敏交流,削减外部担任操控。 二,高效的转发功率,交流矩阵能够完结一般单一总线不能到达的转发功率,满意高吞吐量的体系的需求。三,体系规划以交流矩阵为中心,便于IP集成和模块复用。

  交流矩阵的完结计划较为杂乱,最早的交流沿用了同享总线式的架构,因而关于某个端口需求传输,则其他端口只能堵塞,等候总线闲暇后再进行传输。而交流矩阵则是一个全互联的结构。如下图所示,如有4个输入,4个输出的交流矩阵,可认为是一个4端口的交流单元,每个端口包括一个发送接口和一个接纳模块,如端口0就包括发送模块m0和接纳模块s0。

  

 

  假定每路传输的速率为N,则整个交流矩阵的传输速率为4N。怎么完结一个简略的交流矩阵。首要能够将整速率个规划切割。将整个规划切割为承受和发送两个模块。整个交流单元能够划分为四个部分,分别是,发送模块,裁定模块,交流模块,接纳模块。

  (1) 发送模块,首要依据某端口接纳数据后,依据该数据帧要转发的端口,主张恳求信号。

  (2) 裁定模块:依据恳求信号,接纳模块的忙闲状况,及各发送模块的优先级,确认当时的呼应信号,假如当时的接纳模块忙(前次传输未完结),则需求堵塞,等候前次传输完结(杂乱的规划,能够确保高优先级能够打断当时传输,直接传输高优先级数据流,高优先级完结后,再康复原有传输,但这种方法规划较为杂乱,仿真验证的难度也较大,不主张运用)。

  (3) 交流模块:依据裁定信号确认发送模块转发的端口,交流模块本质上是多选一的MUX,而MUX的挑选信号,则是由裁定模块来进行挑选。

  (4) 接纳模块:接纳交流模块交流后的数据流,向裁定模块回来当时模块的忙闲状况(正在接纳传输信号,为忙状况,而当时无传输状况,则为闲状况)。

  裁定模块的裁定机制,一般能够运用简略的round-robin的规划,即轮番最高优先级。也能够经过规划带加权的优先级,确保更高优先级的端口优先进行传输。

  裁定模块的裁定规划能够分为多种,一种是整个交流矩阵运用同一个裁定单元,每个发送模块只运用一个恳求信号及恳求端口号衔接到裁定模块。这种规划对整个裁定模块规划难度较大。另一种规划,如下图所示,即每个接纳单元,装备一个裁定模块,和一个交流模块。而每个发送模块依据要发送的端口,运用多个发送的恳求信号。此种规划便于体系扩展,也可简化规划。

  

 

  不仅是用于高速多端口转发的数据流传输选用交流矩阵。现在,大多高速总线机制(如N主设备,M从设备之间进行数据的交流)也选用相似交流矩阵式的结构,每个从设备的衔接都是多个主设备经过MUX来进行衔接,这样确保多个主设备拜访不同从设备时,能够完结并行的数据交流(如主设备M0拜访从设备S1,主设备M1拜访从设备S2,能够一起进行总线操作)。这是单一竞赛式总线所不能到达的优势,可是,规划占用的逻辑量也会添加。功能的添加带来的负面影响一般便是逻辑的添加。

  交流矩阵一般在依据数据包转发的FPGA规划使用中,交流矩阵的交流灵敏性添加,也会添加规划杂乱度,假如关于传输功率不需太多的需求,能够选用体系复用的方法(前文介绍),经过一个复用模块轮番接纳各个发送端口的数据流,,再依据端口转发到各个从设备中,此种方法规划简略,可是此复用模块则会成为体系的瓶颈。依据体系的规划需求,挑选合适的规划,到达功能和逻辑方面的平衡,是表现FPGA规划艺术之一。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/117617.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部