CN105490844A - 一种PCIe端口重构方法 - Google Patents

一种PCIe端口重构方法 Download PDF

Info

Publication number
CN105490844A
CN105490844A CN201510887578.8A CN201510887578A CN105490844A CN 105490844 A CN105490844 A CN 105490844A CN 201510887578 A CN201510887578 A CN 201510887578A CN 105490844 A CN105490844 A CN 105490844A
Authority
CN
China
Prior art keywords
pcie port
configuration
information
fpga
pcie
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.)
Pending
Application number
CN201510887578.8A
Other languages
English (en)
Inventor
张洛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Luoyang Institute of Electro Optical Equipment AVIC
Original Assignee
Luoyang Institute of Electro Optical Equipment AVIC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Luoyang Institute of Electro Optical Equipment AVIC filed Critical Luoyang Institute of Electro Optical Equipment AVIC
Priority to CN201510887578.8A priority Critical patent/CN105490844A/zh
Publication of CN105490844A publication Critical patent/CN105490844A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Information Transfer Systems (AREA)

Abstract

本发明涉及一种PCIe端口重构方法,包括如下步骤:步骤1):根控制器RC获取待扩展PCIe端口信息,并将这些信息传输给FPGA模块;步骤2):FPGA模块按照默认配置对交换器Switch进行配置,然后将从根控制器RC接收到的待扩展PCIe端口信息与当前配置相比较,并且查看比较结果;步骤3):在比较结果中,如果配置信息相一致,则完成对FPGA的配置;如果配置信息不一致,则按照步骤1)中CPU发送给FPGA模块的信息进行配置,并向Switch和CPU发送初始化信号。本发明的方法能够使主控板通用性更强,可以应用到更多的***中。

Description

一种PCIe端口重构方法
技术领域
本发明涉及机载嵌入式计算机技术领域,尤其涉及一种机载计算机单板PCIe端口可重构的方法。
背景技术
在机载嵌入式计算机***架构中,PCIe总线得到越来越多的应用。通用的基于PCIe总线的处理器***架构主要有根控制器RC(RootComplex)、终结点EP(Endpoint)和交换器Switch组成。PCIe总线采用端到端的连接方式,每一个PCIe断开智能连接一个EP,PCIe断开可以连接switch进行链路扩展。通过switch扩展出的PCIe链路可以继续挂接EP或者其他switch。
目前主控板的PCIe端口一般通过一个PCIeswitch进行链路扩展,但通常是由上下拉电阻固定的扩展方式,使得主控板对外PCIe端口为固定数量与数据宽度(如4*1PCIe,即对外具有4路PCIe端口,每路数据宽度为*1),当此主控板被应用到另外一个***中(如需要2*2PCIe,即对外2路PCIe端口,每路数据宽度为*2)时,就不能适用此***的要求,需要重新进行硬件设计。目前的这种主控板在应用时需要根据不同的***需要更换主控板,不利于***项目进度的快速推进。
发明内容
本发明的目的是提供一种PCIe端口重构的方法,用以解决现有主控板由于端口数量和数据宽度固定而适应性不强的问题。
为实现上述目的,本发明的方案包括:
一种PCIe端口重构方法,包括如下步骤:
步骤1):根控制器RC获取待扩展PCIe端口信息,并将这些信息传输给FPGA模块;
步骤2):FPGA模块按照默认配置对交换器Switch进行配置,然后将从根控制器RC接收到的待扩展PCIe端口信息与与当前配置相比较,并且查看比较结果;
步骤3):在比较结果中,如果配置信息相一致,则完成对FPGA的配置;如果配置信息不一致,则按照步骤1)中CPU发送给FPGA模块的信息进行配置,并向Switch和CPU发送初始化信号。
优选的,所述FPGA与CPU通讯是通过LocalBus总线进行通信。
进一步的,所述根控制器RC与交换器Switch直接连接。
本发明使用CPU+FPGA的架构对PCIeswitch的配置进行控制,从而能够在不改变机载嵌入式计算机硬件的情况下,在一定程度上改变PCIe端口的数量和数据宽度,从而使得这样设计的主控板通用性更强,可以应用到更多的***中。基于此方法而设计的主控板具有更强的通用性,更有利于***项目开发进度进展和管理的标准化。
附图说明
图1是主控板内部PCIe端口相关电路组成框图;
图2是本发明的工作流程图。
具体实施方式
下面结合附图对本发明做进一步详细的说明。
本发明为解决技术问题所提供的技术方案是:构建CPU+FPGA的控制架构,根据PCIe总线所要连接的***以及主控制器需要的PCIe的端口方式,CPU+FPGA架构发送相应的控制命令对PCIe总线交换器switch的配置进行控制,并把PCIe端口方式的信息通过LocalBus写入给FPGA中的寄存器,FPGA得到端口配置信息后,对PCIe的交换器Switch相应端口配置管脚输出相应的高低电平,而后对FPGA对PCIe的交换器switch和CPU发出复位信号,重新进行初始化。待初始化完毕后,仍会通过LocalBus把主控板所需PCIe端口配置信息写入给FPGA中的寄存器,FPGA将此值与内部已设置值进行比较,如果比较结果是二者一致,则表示此时主控板对外的PCIe端口已经配置成为与相应***所需端口一致,此时FPGA不再需要对PCIeswitch和CPU发出复位信号。
如图1所示,是本发明主控板内部PCIe端口相关电路组成的框图,从图中可以看出,主控板内部PCIe端口相关电路包括集成有根控制器RC的CPU模块、FPGA模块、以及带有PCIe端口的Switch模块。从图中可以看出,CPU通过LocalBus与FPGA中的内置寄存器Register进行信息交互Switch的上游端口与CPU相连接,下游端口则作为主控板的对外PCIe端口,同时FPGA还控制Switch的端口配置管脚,FPGA发送复位信号给CPU模块和Switch模块。
上述实施例中根控制器RC与交换器Switch直接连接,作为其他实施方式,还可以有多层的交换器Switch模块进行扩展互联,第二级以上的交换器Switch间接的与根控制器RC相连。
为了能够更加详细的说明本发明的技术方案,现以一个例子予以具体说明。如图2所示,主控板内部PCIe端口的默认配置是1*4的PCIe端口模式,而该***总主控板所需的PCIe端口配置为2*2的PCIe端口模式。
在主控板上电复位以后,CPU模块开始对***进行检查,查看其所需的端口配置信息,经过CPU模块的检查知道该***中主控板所需PCIe端口的配置信息是2*2PCIe端口,然后CPU通过LocalBus将这些信息发送给FPGA,写入到FPGA的寄存器中,同时初始化PCIe总线的处理器***架构的根节点RC。
而FPGA模块在上电加载完成后,则对Switch按照默认配置(即1*4的PCIe端口信息)进行端口配置。配置完成以后,FPGA模块对当前配置进行检查,以查看配置完成的PCIe端口信息与该***所需的端口配置信息(即2*2的PCIe端口信息)是否相一致。如果检查结果是二者相一致,即默认配置的也是2*2PCIe端口,此时PCIe端口配置完成,则不进行后续动作;如果检查结果是二者配置不一致,则此时FPGA按照CPU发送的端口配置信息对Switch端口进行配置,在这里是将Switch配置成2*2的PCIe端口模式。在对Switch的重新配置也完成以后,则FPGA向Switch和CPU发送出复位信号,使得Switch和CPU会重新开始初始化。CPU和Switch初始化完毕以后,则CPU再次将主控板所需的PCIe端口配置信息(即2*2的PCIe端口信息)通过LocalBus总线写入到FPGA中的寄存器当中,并且FPGA将此PCIe端口配置信息与Switch中已经设置好的配置信息进行对比,查看对比结果是否一致。如果对比结果发现二者不一致,则说明此事主控板对外的PCIe接口已经配置成对应***所需要的PCIe接口模块,可以正常工作;如果对比结果发现二者不一致,则重新将对应***所需配置信息写入到FPGA模块中,重新对其进行配置,并且复位检查。
以上给出了本发明具体的实施方式,但本发明不局限于所描述的实施方式。在本发明给出的思路下,采用对本领域技术人员而言容易想到的方式对上述实施例中的技术手段进行变换、替换、修改,并且起到的作用与本发明中的相应技术手段基本相同、实现的发明目的也基本相同,这样形成的技术方案是对上述实施例进行微调形成的,这种技术方案仍落入本发明的保护范围内。

Claims (3)

1.一种PCIe端口重构方法,其特征在于,包括如下步骤:
步骤1):根控制器RC获取待扩展PCIe端口信息,并将这些信息传输给FPGA模块;
步骤2):FPGA模块按照默认配置对交换器Switch进行配置,然后将从根控制器RC接收到的待扩展PCIe端口信息与与当前配置相比较,并且查看比较结果;
步骤3):在比较结果中,如果配置信息相一致,则完成对FPGA的配置;如果配置信息不一致,则按照步骤1)中CPU发送给FPGA模块的信息进行配置,并向Switch和CPU发送初始化信号。
2.根据权利要求1所述的一种PCIe端口重构方法,其特征在于,所述FPGA与CPU通讯是通过LocalBus总线进行通信。
3.根据权利要求1所述的一种PCIe端口重构方法,其特征在于,所述根控制器RC与交换器Switch直接连接。
CN201510887578.8A 2015-12-05 2015-12-05 一种PCIe端口重构方法 Pending CN105490844A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510887578.8A CN105490844A (zh) 2015-12-05 2015-12-05 一种PCIe端口重构方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510887578.8A CN105490844A (zh) 2015-12-05 2015-12-05 一种PCIe端口重构方法

Publications (1)

Publication Number Publication Date
CN105490844A true CN105490844A (zh) 2016-04-13

Family

ID=55677588

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510887578.8A Pending CN105490844A (zh) 2015-12-05 2015-12-05 一种PCIe端口重构方法

Country Status (1)

Country Link
CN (1) CN105490844A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106502814A (zh) * 2016-10-19 2017-03-15 杭州迪普科技股份有限公司 一种记录pcie设备错误信息的方法及装置
CN108804232A (zh) * 2018-06-26 2018-11-13 郑州云海信息技术有限公司 一种支持云端fpga部署的方法、主机服务器及***
CN111400211A (zh) * 2020-04-07 2020-07-10 上海航天计算机技术研究所 基于PCIe总线的通信方法及***
CN113704166A (zh) * 2021-10-28 2021-11-26 苏州浪潮智能科技有限公司 一种fpga运算设备和运算算力提升***

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101277195A (zh) * 2007-03-30 2008-10-01 杭州华三通信技术有限公司 一种交换网通信***、实现方法及交换装置
CN202404583U (zh) * 2011-12-22 2012-08-29 成都傅立叶电子科技有限公司 基于vpx总线的信号处理平台
CN102694719A (zh) * 2011-03-25 2012-09-26 研祥智能科技股份有限公司 微型电信计算架构***、载板集线器模块及pci-e交换器的端口配置方法
CN102707263A (zh) * 2012-05-31 2012-10-03 武汉大学 一种多频多基地高频地波雷达***及其操作方法
CN202535384U (zh) * 2012-03-12 2012-11-14 杭州海莱电子科技有限公司 基于PCIe总线的网络设备扩展连接和虚拟机互连优化***
CN204795120U (zh) * 2015-05-28 2015-11-18 国家电网公司 一种分体式可扩展的网络报文存储装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101277195A (zh) * 2007-03-30 2008-10-01 杭州华三通信技术有限公司 一种交换网通信***、实现方法及交换装置
CN102694719A (zh) * 2011-03-25 2012-09-26 研祥智能科技股份有限公司 微型电信计算架构***、载板集线器模块及pci-e交换器的端口配置方法
CN202404583U (zh) * 2011-12-22 2012-08-29 成都傅立叶电子科技有限公司 基于vpx总线的信号处理平台
CN202535384U (zh) * 2012-03-12 2012-11-14 杭州海莱电子科技有限公司 基于PCIe总线的网络设备扩展连接和虚拟机互连优化***
CN102707263A (zh) * 2012-05-31 2012-10-03 武汉大学 一种多频多基地高频地波雷达***及其操作方法
CN204795120U (zh) * 2015-05-28 2015-11-18 国家电网公司 一种分体式可扩展的网络报文存储装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106502814A (zh) * 2016-10-19 2017-03-15 杭州迪普科技股份有限公司 一种记录pcie设备错误信息的方法及装置
CN106502814B (zh) * 2016-10-19 2020-04-03 杭州迪普科技股份有限公司 一种记录pcie设备错误信息的方法及装置
CN108804232A (zh) * 2018-06-26 2018-11-13 郑州云海信息技术有限公司 一种支持云端fpga部署的方法、主机服务器及***
CN111400211A (zh) * 2020-04-07 2020-07-10 上海航天计算机技术研究所 基于PCIe总线的通信方法及***
CN111400211B (zh) * 2020-04-07 2022-08-12 上海航天计算机技术研究所 基于PCIe总线的通信方法及***
CN113704166A (zh) * 2021-10-28 2021-11-26 苏州浪潮智能科技有限公司 一种fpga运算设备和运算算力提升***

Similar Documents

Publication Publication Date Title
US8521929B2 (en) Virtual serial port management system and method
US20160147540A1 (en) Server system
CN104579772B (zh) 计算机设备与计算机设备的配置管理方法
US8386764B2 (en) BIOS architecture
US8711153B2 (en) Methods and apparatuses for configuring and operating graphics processing units
CN103616937B (zh) 一种主板、pcie网卡和服务器***
KR102147629B1 (ko) 플렉시블 서버 시스템
CN105490844A (zh) 一种PCIe端口重构方法
CN1909559B (zh) 基于快速***组件互连的接口板及其切换主控板的方法
CN105700969A (zh) 服务器***
US9524262B2 (en) Connecting expansion slots
CN103605542A (zh) Fpga配置文件的在线升级装置
CN102541787A (zh) 串口切换使用***及方法
CN105553886A (zh) 一种可灵活扩展端口数量的pcie交换机
CN103268302A (zh) 一种接口扩展电路、接口扩展连接方法和嵌入式***
US10169281B2 (en) Switch system and operation method thereof
CN113608970A (zh) 核心板,服务器,故障修复方法、装置以及存储介质
CN103472746B (zh) 双主控设备及双主控设备的冗余控制方法
CN203588122U (zh) 基于OpenVPX标准的主控器
CN116820827A (zh) 一种节点服务器的基板管理控制器的控制方法及其***
CN109379110B (zh) 具有多个参数配置模式的中继装置及其参数配置方法
CN107317737A (zh) 一种基于SMBus/I2C总线的通信***
CN204790996U (zh) 复用总线的cpu和fpga组合电路
CN114020669B (zh) 一种基于cpld的i2c链路***及服务器
CN106844113B (zh) 一种采用冗余pch的服务器故障恢复***及方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20160413