CN109815191A - 一种交叉开关及其创建方法、ip核 - Google Patents
一种交叉开关及其创建方法、ip核 Download PDFInfo
- Publication number
- CN109815191A CN109815191A CN201910098911.5A CN201910098911A CN109815191A CN 109815191 A CN109815191 A CN 109815191A CN 201910098911 A CN201910098911 A CN 201910098911A CN 109815191 A CN109815191 A CN 109815191A
- Authority
- CN
- China
- Prior art keywords
- crossbar switch
- output
- moderator
- sub
- channel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 22
- 239000011159 matrix material Substances 0.000 claims abstract description 12
- 238000007689 inspection Methods 0.000 claims description 14
- 230000005540 biological transmission Effects 0.000 claims description 3
- 238000000354 decomposition reaction Methods 0.000 claims description 2
- 238000005538 encapsulation Methods 0.000 claims 1
- 239000011800 void material Substances 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 238000013480 data collection Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Landscapes
- Multi Processors (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种交叉开关及其创建方法、IP核,所述交叉开关包括:基于瓦片式设计原理对高阶非对称交叉开关进行分解后得到的多个子交叉开关;每一子交叉开关包括输入队列、输出队列、交换矩阵和输出仲裁器;其中,所述输入队列中设有信道仲裁器;并且,所述信道仲裁器和所述输出仲裁器均为基于结果的轮询仲裁器;所述信道仲裁器,用于对虚拟信道进行仲裁;所述输出仲裁器,用于根据自身的仲裁结果,并通过输出端口对所述输入队列的输入报文进行选择性输出。本申请在交叉开关的每个子交叉开关中的输出仲裁和虚拟信道仲裁部位上均引入了基于结果的轮询仲裁机制,通过上述方案,能够有效提高核间互联交叉开关的报文转发效率,降低网络延迟。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种交叉开关及其创建方法、IP核。
背景技术
当前,随着信息技术的飞速发展,计算需求呈指数增长。为此,多核、多处理器级的并行计算得到了广泛应用。然而,随之带来的问题是核间报文量随系统规模增大呈指数增加。处理器核间片上互连需要大量的报文交互。因此,核间互联交叉开关的报文转发效率成为影响系统性能提升的关键。
综上所述可以看出,如何提高核间互联交叉开关的报文转发效率是目前有待解决的技术问题。
发明内容
有鉴于此,本发明的目的在于提供一种交叉开关及其创建方法、IP核,能够有效提高核间互联交叉开关的报文转发效率,降低网络延迟。其具体方案如下:
第一方面,本申请公开了一种交叉开关,包括基于瓦片式设计原理对高阶非对称交叉开关进行分解后得到的多个子交叉开关;每一子交叉开关包括输入队列、输出队列、交换矩阵和输出仲裁器;其中,所述输入队列中设有信道仲裁器;并且,所述信道仲裁器和所述输出仲裁器均为基于结果的轮询仲裁器;所述信道仲裁器,用于对虚拟信道进行仲裁;所述输出仲裁器,用于根据自身的仲裁结果,并通过输出端口对所述输入队列的输入报文进行选择性输出。
可选的,所述输入队列还用于对输入报文进行路由解析、报文头尾解析以及缓存。
可选的,每一子交叉开关还包括检查配置模块,用于检查输入报文的虚拟信道号和报文完整性,并将得到的检查结果保存至错误寄存器。
可选的,所述输出队列还用于对输出报文是否出现错误进行检查,并将得到的检查结果传输至所述检查配置模块。
可选的,所述交换矩阵用于实现所述输入队列和所述输出队列之间的shuffle网络互联。
第二方面,本申请公开了一种交叉开关创建方法,包括:
基于瓦片式设计原理对高阶非对称交叉开关进行分解,得到包含多个子交叉开关的目标交叉开关;其中,每一子交叉开关包括输入队列、输出队列、交换矩阵和输出仲裁器,并且所述输入队列中设有信道仲裁器;
通过分析核间Cache一致性协议报文的传输特点,并结合轮询的路由交换原理,将基于结果的轮询仲裁机制引入至每一子交叉开关的所述信道仲裁器和所述输出仲裁器,以使每一子交叉开关的所述信道仲裁器和所述输出仲裁器均为基于结果的轮询仲裁器。
可选的,所述交叉开关创建方法,还包括:
在每一子交叉开关中设置检查配置模块,以通过所述检查配置模块检查输入报文的虚拟信道号和报文完整性,并将得到的检查结果保存至错误寄存器。
可选的,所述交叉开关创建方法,还包括:
对所述目标交叉开关进行封装,以得到相应的IP核。
第三方面,本申请公开了一种IP核,所述IP核为对前述公开的交叉开关进行封装后得到。
可见,本申请中的交叉开关包括基于瓦片式设计原理对高阶非对称交叉开关进行分解后得到的多个子交叉开关,每一子交叉开关包括输入队列、输出队列、交换矩阵和输出仲裁器;其中,所述输入队列中设有信道仲裁器;并且,所述信道仲裁器和所述输出仲裁器均为基于结果的轮询仲裁器。由此可见,本申请的交叉开关中设有分布式的轮询仲裁器,并且交叉开关的每个子交叉开关中的输出仲裁和虚拟信道仲裁部位上均引入了基于结果的轮询仲裁机制,通过上述方案,能够有效提高核间互联交叉开关的报文转发效率,降低网络延迟。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例公开的一种交叉开关结构示意图;
图2为本申请实施例公开的一种交叉开关应用示意图;
图3为本申请实施例公开的一种具体的交叉开关结构示意图;
图4为本申请实施例公开的输入侧轮询仲裁器的设计原理图;
图5为本申请实施例公开的一种交叉开关创建方法流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
当前,多核、多处理器级的并行计算得到了广泛应用。随之带来的问题是核间报文量随系统规模增大呈指数增加。处理器核间片上互连需要大量的报文交互。核间互联交叉开关的报文转发效率成为影响系统性能提升的关键。为此,本申请提供了一种交叉开关设计方案,能够有效提高核间互联交叉开关的报文转发效率,降低网络延迟。
本发明实施例公开了一种交叉开关,包括基于瓦片式设计原理对高阶非对称交叉开关进行分解后得到的多个子交叉开关;参见图1所示,每一子交叉开关包括输入队列11、输出队列12、交换矩阵13和输出仲裁器14;其中,所述输入队列11中设有信道仲裁器;并且,所述信道仲裁器和所述输出仲裁器14均为基于结果的轮询仲裁器;所述信道仲裁器,用于对虚拟信道进行仲裁;所述输出仲裁器14,用于根据自身的仲裁结果,并通过输出端口对所述输入队列11的输入报文进行选择性输出。
本实施例中,输出仲裁器14是基于结果的轮询仲裁器,也即基于输出端口的结果相关的轮询仲裁器。并且,除了上述输出仲裁器14是基于结果的轮询仲裁器之外,本实施例中的信道仲裁器也是基于结果的轮询仲裁器。
可见,本申请实施例中的交叉开关包括基于瓦片式设计原理对高阶非对称交叉开关进行分解后得到的多个子交叉开关,每一子交叉开关包括输入队列、输出队列、交换矩阵和输出仲裁器;其中,所述输入队列中设有信道仲裁器;并且,所述信道仲裁器和所述输出仲裁器均为基于结果的轮询仲裁器。由此可见,本申请实施例的交叉开关中设有分布式的轮询仲裁器,并且交叉开关的每个子交叉开关中的输出仲裁和虚拟信道仲裁部位上均引入了基于结果的轮询仲裁机制,通过上述方案,能够有效提高核间互联交叉开关的报文转发效率,降低网络延迟。
需要指出的是,本实施例中的交叉开关是基于IQ(Input Queue)的交叉开关,每个输入端口最多只会发出一个请求,这样便不存在最大匹配问题。本申请实施例将仲裁器分布到各个输入端口的虚拟信道和输出端口中,以此实现分布式仲裁,每个输出仲裁器只负责与本输出端口对应的输入队列的报文的选择性输出。
参见图2所示,通过所述输入队列,对输入报文进行路由解析、报文头尾解析以及缓存,并对输出端口发起输出请求;通过交换矩阵,实现所述输入队列和所述输出队列之间的shuffle网络互联;输出端口则利用基于结果的轮询仲裁器Arbitor的仲裁结果,实现对输入端口报文的转发和输出缓存。
参见图3所示,本实施例中的每一子交叉开关还包括检查配置模块15,用于检查输入报文的虚拟信道号和报文完整性,并将得到的检查结果保存至错误寄存器。
进一步的,所述输出队列还可以用于对输出报文是否出现错误进行检查,并将得到的检查结果传输至所述检查配置模块15。
另外,本实施例中轮询仲裁器的设计具体可以参见图4所示,图4为输入侧轮询仲裁器的设计原理图,每个输入端口配置一个优先级向量,实现输入端口优先级的表示。如设计有6个输入端口,则优先级向量可以设计为5位的寄存器,以6×6交叉开关为例,优先级向量表示为P5 P4 P3 P2 P1 P0。优先级向量对应位表示该端口与对应端口优先级大小的比较值,如果高于对应端口,则为1,低于对应端口则为0。初始时,端口0优先级最高,0的优先级向量为000001,当优先级通过轮询进行轮转,当到端口3时,3的优先级向量为001000,各端口间的优先级关系为P3>P4>P5>P0>P1>P2。
参见图5所示,本申请实施例还公开了一种交叉开关创建方法,包括:
步骤S11:基于瓦片式设计原理对高阶非对称交叉开关进行分解,得到包含多个子交叉开关的目标交叉开关;其中,每一子交叉开关包括输入队列、输出队列、交换矩阵和输出仲裁器,并且所述输入队列中设有信道仲裁器;
步骤S12:通过分析核间Cache一致性协议报文的传输特点,并结合轮询的路由交换原理,将基于结果的轮询仲裁机制引入至每一子交叉开关的所述信道仲裁器和所述输出仲裁器,以使每一子交叉开关的所述信道仲裁器和所述输出仲裁器均为基于结果的轮询仲裁器。
通过上述方案,可以使得交叉开关的每个子交叉开关中的输出仲裁和虚拟信道仲裁部位上均引入了基于结果的轮询仲裁机制,由此能够有效提高核间互联交叉开关的报文转发效率,降低网络延迟。
进一步的,本实施例还可以在每一子交叉开关中设置检查配置模块,以通过所述检查配置模块检查输入报文的虚拟信道号和报文完整性,并将得到的检查结果保存至错误寄存器。
另外,本实施例还可以对所述目标交叉开关进行封装,以得到相应的IP核,这样可以实现不同架构的处理器核间的灵活移植,从而提高了灵活性和可用性。
进一步的,本实施例还可以对上述设计的交叉开关进行周期级的仿真和数据收集与分析,计算出仿真环境中的带宽,并根据仿真速度与实际系统运行频率进行折算,推算出实际系统的带宽,对设计进行优化提升,从而提高设计在实际应用系统中的带宽。
进一步的,本申请还公开了一种IP核,所述IP核为对前述实施例公开的交叉开关进行封装后得到。其中,关于该交叉开关的具体构造可以参考前述实施例中公开的相应内容,在此不再进行赘述。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种交叉开关及其创建方法、IP核进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (9)
1.一种交叉开关,其特征在于,包括基于瓦片式设计原理对高阶非对称交叉开关进行分解后得到的多个子交叉开关;每一子交叉开关包括输入队列、输出队列、交换矩阵和输出仲裁器;其中,所述输入队列中设有信道仲裁器;并且,所述信道仲裁器和所述输出仲裁器均为基于结果的轮询仲裁器;所述信道仲裁器,用于对虚拟信道进行仲裁;所述输出仲裁器,用于根据自身的仲裁结果,并通过输出端口对所述输入队列的输入报文进行选择性输出。
2.根据权利要求1所述的交叉开关,其特征在于,所述输入队列还用于对输入报文进行路由解析、报文头尾解析以及缓存。
3.根据权利要求2所述的交叉开关,其特征在于,每一子交叉开关还包括检查配置模块,用于检查输入报文的虚拟信道号和报文完整性,并将得到的检查结果保存至错误寄存器。
4.根据权利要求3所述的交叉开关,其特征在于,所述输出队列还用于对输出报文是否出现错误进行检查,并将得到的检查结果传输至所述检查配置模块。
5.根据权利要求4所述的交叉开关,其特征在于,所述交换矩阵用于实现所述输入队列和所述输出队列之间的shuffle网络互联。
6.一种交叉开关创建方法,其特征在于,包括:
基于瓦片式设计原理对高阶非对称交叉开关进行分解,得到包含多个子交叉开关的目标交叉开关;其中,每一子交叉开关包括输入队列、输出队列、交换矩阵和输出仲裁器,并且所述输入队列中设有信道仲裁器;
通过分析核间Cache一致性协议报文的传输特点,并结合轮询的路由交换原理,将基于结果的轮询仲裁机制引入至每一子交叉开关的所述信道仲裁器和所述输出仲裁器,以使每一子交叉开关的所述信道仲裁器和所述输出仲裁器均为基于结果的轮询仲裁器。
7.根据权利要求6所述的交叉开关创建方法,其特征在于,还包括:
在每一子交叉开关中设置检查配置模块,以通过所述检查配置模块检查输入报文的虚拟信道号和报文完整性,并将得到的检查结果保存至错误寄存器。
8.根据权利要求7所述的交叉开关创建方法,其特征在于,还包括:
对所述目标交叉开关进行封装,以得到相应的IP核。
9.一种IP核,其特征在于,所述IP核为对如权利要求1至5任一项所述的交叉开关进行封装后得到。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910098911.5A CN109815191A (zh) | 2019-01-31 | 2019-01-31 | 一种交叉开关及其创建方法、ip核 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910098911.5A CN109815191A (zh) | 2019-01-31 | 2019-01-31 | 一种交叉开关及其创建方法、ip核 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109815191A true CN109815191A (zh) | 2019-05-28 |
Family
ID=66606192
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910098911.5A Withdrawn CN109815191A (zh) | 2019-01-31 | 2019-01-31 | 一种交叉开关及其创建方法、ip核 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109815191A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112306922A (zh) * | 2020-11-12 | 2021-02-02 | 山东云海国创云计算装备产业创新中心有限公司 | 一种多数据对多端口的仲裁方法及相关装置 |
CN114968866A (zh) * | 2022-08-01 | 2022-08-30 | 中科声龙科技发展(北京)有限公司 | 优先级分组轮询仲裁器及其仲裁方法、交叉开关和芯片 |
CN115080468A (zh) * | 2022-05-12 | 2022-09-20 | 珠海全志科技股份有限公司 | 一种非阻塞的信息传输方法和装置 |
-
2019
- 2019-01-31 CN CN201910098911.5A patent/CN109815191A/zh not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112306922A (zh) * | 2020-11-12 | 2021-02-02 | 山东云海国创云计算装备产业创新中心有限公司 | 一种多数据对多端口的仲裁方法及相关装置 |
CN112306922B (zh) * | 2020-11-12 | 2023-09-22 | 山东云海国创云计算装备产业创新中心有限公司 | 一种多数据对多端口的仲裁方法及相关装置 |
CN115080468A (zh) * | 2022-05-12 | 2022-09-20 | 珠海全志科技股份有限公司 | 一种非阻塞的信息传输方法和装置 |
CN114968866A (zh) * | 2022-08-01 | 2022-08-30 | 中科声龙科技发展(北京)有限公司 | 优先级分组轮询仲裁器及其仲裁方法、交叉开关和芯片 |
CN114968866B (zh) * | 2022-08-01 | 2022-11-01 | 中科声龙科技发展(北京)有限公司 | 优先级分组轮询仲裁器及其仲裁方法、交叉开关和芯片 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109815191A (zh) | 一种交叉开关及其创建方法、ip核 | |
CN106612141A (zh) | 一种光纤通道协议通用仿真测试卡及其数据交互方法 | |
CN102685017A (zh) | 一种基于fpga的片上网络路由器 | |
Bandura et al. | ICE-based custom full-mesh network for the CHIME high bandwidth radio astronomy correlator | |
CN112637080B (zh) | 一种基于fpga的负载均衡处理系统 | |
US8654654B2 (en) | Traffic distribution control | |
Jiang et al. | An asynchronous NoC router in a 14nm FinFET library: comparison to an industrial synchronous counterpart | |
US20110007754A1 (en) | Flexible Hardware Checksum Generator | |
Chaudhari et al. | A scalable FPGA architecture for flexible, large-scale, real-time RF channel emulation | |
CN108768778B (zh) | 一种网络时延计算方法、装置、设备及存储介质 | |
CN102045256B (zh) | 一种基于cots的带宽预分配保证网络功能演示系统 | |
CN106230738B (zh) | 块发送通信网络数据的传输方法 | |
Attia et al. | A modular router architecture desgin for Network on Chip | |
Nunes et al. | A profiler for a heterogeneous multi-core multi-FPGA system | |
Xue et al. | Parallel FFT implementation based on multi-core DSPs | |
Syrivelis et al. | On emulating hardware/software co-designed control algorithms for packet switches | |
US11431815B1 (en) | Mining proxy acceleration | |
Jost et al. | A versatile Network Processor based electronics module for the LHCb Data Acquisition System | |
Werner | Performance Evaluation of Interconnection Networks on Processors | |
US11755522B1 (en) | Method, electronic device, and computer program product for implementing blockchain system on switch | |
Prasad et al. | Efasbran: error free adaptive shared buffer router architecture for network on chip | |
Du et al. | Scalability study on mesh based network on chip | |
Machidon et al. | Enhancing FPGA I/O Communication Using Web Services | |
Hou et al. | Design and performance evaluation of virtual-channel based NoC | |
Hesse | Implementation and Verification of the Argo Network-on-Chip in Chisel |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20190528 |
|
WW01 | Invention patent application withdrawn after publication |