一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种双PCIE接口的多路接口转接卡实现系统的制作方法

2021-11-05 21:46:00 来源:中国专利 TAG:

一种双pcie接口的多路接口转接卡实现系统
技术领域
1.本发明涉及计算机通信技术领域,特别是一种双pcie接口的多路接口转接卡实现系统。


背景技术:

2.主流计算机一般使用pcie接口扩展外部设备,在工业控制领域,外部设备一般使用can总线、串口等接口通信(下文称为外设接口),此时就需要使用接口转换卡进行计算机和外部设备间的通信,如pcie转串口卡,pcie转can总线卡。常见的接口转换卡存在以下问题:
3.1)一种接口转换卡往往只有can总线或者串口一种功能,并且同一种功能的接口数量受限于使用的专用接口芯片类型而无法扩展;
4.2)接口转换卡只有一路pcie总线,无法同时接2台计算机,也就是无法实现2台计算机复用一块转换卡。


技术实现要素:

5.本发明解决的技术问题是:克服现有技术的不足,提供了一种双pcie接口的多路接口转接卡实现系统。
6.为了解决上述技术问题,本发明实施例提供了一种双pcie接口的多路接口转接卡实现系统,所述系统包括:pcie交换芯片、pcie转换芯片和fpga芯片,所述fpga芯片包括仲裁模块,所述pcie交换芯片的一端与两台计算机连接,所述pcie交换芯片的另一端与所述pcie转换芯片的一端连接,所述pcie转换芯片的另一端与所述仲裁模块的一端连接,所述仲裁模块的另一端与外部设备连接,其中,
7.所述pcie交换芯片,被配置为将外部的pcie x4接口转换为若干的pcie x1接口;
8.所述pcie转换芯片,被配置为将所述pcie x1接口转换为外设接口;
9.所述仲裁模块,被配置为根据接收的网口信号和io信号,控制两台计算机对应的两路通路的通路状态,并根据通路状态完成所述两台计算机中处于通路状态的计算机与所述外部设备之间的通信。
10.可选地,所述系统还包括网络模块,所述两台计算机包括第一计算机和第二计算机,
11.所述第一计算机通过第一pcie x4接口连接所述系统,所述第二计算机通过第二pcie x4接口连接所述系统;
12.所述第一计算机和所述第二计算机通过网络交换机与所述网络模块的第一端连接,所述网络模块的第二端与所述仲裁模块连接。
13.可选地,所述外部设备串口和can接口的外设接口与所述系统连接。
14.可选地,所述pcie转换芯片包括:pcie转串口芯片和pcie转can芯片,其中,
15.所述pcie转串口芯片,被配置为将所述第一pcie x4接口对应的pciex1接口转换
为预设数量的串口,并将所述第二pcie x4接口对应的pcie x1接口转换为预设数量的串口;
16.所述pcie转can芯片,被配置为将所述第一pcie x4接口对应的pciex1接口和所述第二pcie x4接口对应的pcie x1接口分别转换为对应的can接口。
17.可选地,所述仲裁模块包括:单片机处理单元和fpga处理单元,其中,
18.所述单片机处理单元,被配置为根据两路通路接收所述两台计算机的心跳信号和设置信号,并通过io管检测所述pcie交换芯片的运行状态;
19.所述fpga处理单元,被配置为通过所述网络模块接收所述两台计算机对应的网口信号,并接收所述单片机处理单元发送的io信号,根据所述网口信号和所述io信号控制所述第一计算机和所述第二计算机分别对应的网络通路的通路状态。
20.可选地,所述系统还包括:电源模块,其中,
21.所述电源模块,被配置为所述系统提供电能。
22.可选地,所述单片机处理单元,还被配置为控制所述电源模块的上电和断电。
23.可选地,所述fpga芯片,被配置为对所述两台计算机的一台计算机的通路中串口和can接口的接口信号的缓存,并对另一台计算机的通路中的pcie接口和外设接口的转换,以及对所述仲裁模块的控制。
24.可选地,所述单片机的工作模式包括:自动切换模式和非自动切换模式。
25.可选地,所述网络模块和所述仲裁模块为采用verilog代码编写的fpga程序模块。
26.本发明与现有技术相比的优点在于:
27.本发明实施例可以实现一块转接卡支持双路pice接口,可以同时连接两台主机,并且使用该方法可以任意扩展接口种类和数量;通过本发明提出的仲裁模块可以实现转接卡两个通路的自动切换和手动切换,自动切换可应用在互为冗余备份的两台主机通过一块转接卡与外部设备通信的场景中,一台主机故障时接口卡可自动选择另一台主机通信;手动切换可应用在两台主机复用一个外部设备的场景中,每台主机要与外部设备通信时可通过手动设置获取转接卡与外部设备的通信通路。
附图说明
28.图1为本发明实施例提供的一种双pcie接口的多路接口转接卡实现系统的结构框图;
29.图2为本发明实施例提供的一种双pcie接口的多路接口转接卡硬件实现的电路框图。
具体实施方式
30.实施例一
31.参照图1,示出了本发明实施例提供的一种双pcie接口的多路接口转接卡实现系统的结构框图,如图1所示,该系统100可以包括:pcie交换芯片110、pcie转换芯片120和fpga芯片130,所述fpga芯片130可以包括仲裁模块131,所述pcie交换芯片110的一端与两台计算机连接,所述pcie交换芯片110的另一端与所述pcie转换芯片120的一端连接,所述pcie转换芯片120的另一端与所述仲裁模块131的一端连接,所述仲裁模块131的另一端与
外部设备连接,其中,
32.pcie交换芯片110可以被配置为将外部的pcie x4接口转换为连接两台计算机的pcie x1接口;
33.pcie转换芯片120可以被配置为将所述pcie x1接口转换为外设接口;
34.仲裁模块131可以被配置为根据接收的网口信号和io信号,控制两台计算机对应的两路通路的通路状态,并根据通路状态完成所述两台计算机中处于通路状态的计算机与所述外部设备之间的通信。
35.本发明实施例可以实现一块转接卡支持双路pice接口,可以同时连接两台主机,并且使用该方法可以任意扩展接口种类和数量。
36.在本发明实施例的一种具体实现方式中,所述系统还包括网络模块,所述两台计算机包括第一计算机和第二计算机,
37.所述第一计算机通过第一pcie x4接口连接所述系统,所述第二计算机通过第二pcie x4接口连接所述系统;
38.所述第一计算机和所述第二计算机通过网络交换机与所述网络模块的第一端连接,所述网络模块的第二端与所述仲裁模块连接。
39.在本发明实施例的另一种具体实现方式中,所述外部设备串口和can接口的外设接口与所述系统连接。
40.在本发明实施例的另一种具体实现方式中,所述pcie转换芯片包括:pcie转串口芯片和pcie转can芯片,其中,
41.所述pcie转串口芯片,被配置为将所述第一pcie x4接口对应的pciex1接口转换为预设数量的串口,并将所述第二pcie x4接口对应的pcie x1接口转换为预设数量的串口;
42.所述pcie转can芯片,被配置为将所述第一pcie x4接口对应的pciex1接口和所述第二pcie x4接口对应的pcie x1接口分别转换为对应的can接口。
43.在本发明实施例的另一种具体实现方式中,所述仲裁模块包括:单片机处理单元和fpga处理单元,其中,
44.所述单片机处理单元,被配置为根据两路通路接收所述两台计算机的心跳信号和设置信号,并通过io管检测所述pcie交换芯片的运行状态;
45.所述fpga处理单元,被配置为通过所述网络模块接收所述两台计算机对应的网口信号,并接收所述单片机处理单元发送的io信号,根据所述网口信号和所述io信号控制所述第一计算机和所述第二计算机分别对应的网络通路的通路状态。
46.在本发明实施例的另一种具体实现方式中,所述系统还包括:电源模块,其中,
47.所述电源模块,被配置为所述系统提供电能。
48.在本发明实施例的另一种具体实现方式中,所述单片机处理单元,还被配置为控制所述电源模块的上电和断电。
49.在本发明实施例的另一种具体实现方式中,所述fpga芯片,被配置为对所述两台计算机的一台计算机的通路中串口和can接口的接口信号的缓存,并对另一台计算机的通路中的pcie接口和外设接口的转换,以及对所述仲裁模块的控制。
50.在本发明实施例的另一种具体实现方式中,所述单片机的工作模式包括:自动切
换模式和非自动切换模式。
51.在本发明实施例的另一种具体实现方式中,所述网络模块和所述仲裁模块为采用verilog代码编写的fpga程序模块。
52.接下来,结合图2对本实施例的技术方案进行如下详细描述。
53.参照图2,示出了本发明实施例提供的一种种双pcie接口的多路接口转接卡硬件实现的电路框图,如图2所示,主机1,主机2为两台计算机,分别通过pcie1 x4和pcie2 x4连接双pcie接口的多路接口转接卡(简称转接卡),网络交换机用于连接主机1、主机2和转接卡的网口,外部设备是指需要与主机通信的设备,通过串口、can接口的外设接口与转接卡相连。
54.图2所示虚线框内为转接卡硬件芯片层面的原理框图,pcie1 x4和pcie2x4为两路连接主机的pcie接口,对于串口、can接口等低速外设接口,pcie接口通道宽度可采用图中的x4,也可采用x1。根据pcie接口与外设接口的转换方法的不同,将主机1通过pcie1 x4连接的通路称为专用芯片转换通路(简称通路a),将主机2通过pcie2 x4连接的通路称为fpga转换通路(简称通路b)。由于接口卡同一时刻只有一个通路运行,因此需要对通路a和通路b进行选择,将参与选择的接口和电路称作仲裁通路。
55.如图2所示,通路a通过芯片完成两级转换:第一级转换,pcie交换芯片将外部pcie1 x4接口转为若干pcie x1接口,该转换芯片可根据实际需要的外设接口数量选择;第二级转换,pcie转串口芯片1和pcie转串口芯片2实现pcie x1接口与串口1、串口2的转换,该芯片可根据实际需要的串口数量增减,pcie转can芯片实现pcie x1接口与can1接口的转换,该芯片可根据实际需要的can接口数量增减。通过pcie交换芯片、pcie转串口信号、pcie转can芯片三种芯片的两级转换,即可将pcie x4接口转换为串口1、串口2、can1几种信号进入fpga缓存。通路b主要运行在fpga芯片中。
56.如图2所示,fpga芯片完成通路a中串口1、串口2、can1等外设接口信号的缓存、通路b中的pcie接口和外设接口的转换以及仲裁模块。
57.图2上虚线框所示,通路a芯片两级转换产生的串口1、串口2、can1信号经过缓存后作为仲裁模块的备选通路1。
58.图2fpga芯片中下虚线框所示,pcie转外设接口模块是verilog代码编写的fpga程序模块,通路b中主机2的pcie x4接口通过pcie转外设接口模块转换为串口3、串口4、can2等外设接口作为仲裁模块的备选通路2。
59.仲裁通路包括单片机处理部分和fpga处理部分。
60.如图2所示,单片机通过串口7接收主机1的心跳信号,通过串口8接收主机2的心跳信号,通过io管脚检测pcie交换芯片的运行状态;单片机有非自动切换模式和自动切换模式两种工作模式,可通过单片机io口读取跳线状态判断当前系统工作在哪种模式;单片机内有一个串口设置寄存器,可由主机1通过串口7或者主机2通过串口8进行设置,可设置为通路a或者通路b;当系统设置为非自动切换模式时,有3种可能,如下表所示:
61.序号pcie交换芯片状态串口设置寄存器状态判断结果1正常通路a选择通路a2正常通路b选择通路b3不正常通路a或通路b选择通路b
62.当系统设置为自动切换时,可通过判断主机1和主机2的心跳信号自动完成切换,如下表所示:
[0063][0064][0065]
如果判断结果为“选择通路a”,则图2中的8为io信号输出0xaa;如果判断结果为“选择通路b”,则图1中的8为io信号输出0xbb。
[0066]
此外,单片机还进行电源的上电和断电控制。
[0067]
图2所示,网络模块和仲裁模块是verilog代码编写的fpga程序模块,网络模块接收网口信号,并提取有效字段,如果选择通道a,则设置网络设置寄存器为0xaa,如果选择通道b,则设置网络设置寄存器为0xbb,否则网络设置寄存器为0x00,设置;仲裁模块接收单片机发来的8位io信号,根据该信号和网络设置寄存器的值进行仲裁决策,其中网口优先级高于8位io信号,仲裁决策逻辑见下表:
[0068]
序号网络设置寄存器8为io信号仲裁结果10xaa0xaa或0xbb选择通路a 0xbb0xaa或0xbb选择通路b10x000xaa选择通路a 0x000xbb选择通路b
[0069]
如果图2中仲裁模块仲裁结果为选择通路a,则设置通路a与串口5、串口6、can3通信;如果仲裁结果为选择通路b,则设置通路a与串口5、串口6、can3通信。
[0070]
在本发明实施例中,仲裁通路包括单片机处理部分和fpga处理部分。单片机通过两路串口接收通路a和通路b对应主机的心跳信号和设置信号,通过io管脚检测pcie交换芯片的运行状态;单片机可通过io口读取跳线状态判断当前系统工作在非自动切换模式还是自动切换模式;当系统设置为非自动切换模式时,单片机只根据串口收到的设置信号和pcie交换芯片状态两种信号状态来设置8位io信号的状态以通知fpga选择通路a还是通路
b;当系统设置为自动切换模式时,单片机需要通过主机心跳信号、pcie交换芯片状态和设置信号三种信号的状态设置8位io信号。fpga中,仲裁模块通过网络模块接收网口信号,同时接收单片机发来的8位io信号,根据两种信号内容进行仲裁决策,得出结果后控制通路a或者通路b与外部串口和can接口通信,其中网口优先级高于8位io口,同一时刻通路a和通路b只有一路可以被选通。此外,单片机还进行电源的上电和断电控制。
[0071]
本技术所述具体实施方式可以使本领域的技术人员更全面地理解本技术,但不以任何方式限制本技术。因此,本领域技术人员应当理解,仍然对本技术进行修改或者等同替换;而一切不脱离本技术的精神和技术实质的技术方案及其改进,均应涵盖在本技术专利的保护范围中。
[0072]
本发明说明书中未作详细描述的内容属本领域技术人员的公知技术。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献