CN115509985A - 一种处理器的i/o控制器 - Google Patents
一种处理器的i/o控制器 Download PDFInfo
- Publication number
- CN115509985A CN115509985A CN202211212452.7A CN202211212452A CN115509985A CN 115509985 A CN115509985 A CN 115509985A CN 202211212452 A CN202211212452 A CN 202211212452A CN 115509985 A CN115509985 A CN 115509985A
- Authority
- CN
- China
- Prior art keywords
- processor
- controller
- fpga
- pcie
- hardware
- 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
Links
- 238000011144 upstream manufacturing Methods 0.000 claims abstract description 6
- 238000004891 communication Methods 0.000 claims abstract description 5
- 230000008878 coupling Effects 0.000 claims 1
- 238000010168 coupling process Methods 0.000 claims 1
- 238000005859 coupling reaction Methods 0.000 claims 1
- 238000013461 design Methods 0.000 abstract description 16
- 230000006870 function Effects 0.000 description 18
- 238000000034 method Methods 0.000 description 8
- 230000010354 integration Effects 0.000 description 7
- 230000015654 memory Effects 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4221—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Bus Control (AREA)
Abstract
本申请公开了一种处理器的I/O控制器,应用于服务器技术领域。PCIe Switch IP的上行端口通过FPGA的管脚连接到处理器,以便于与处理器进行通信;PCIe Switch IP还与FPGA的内部互联总线相连;内部互联总线还连接其余的硬件设备,以便于各硬件设备与处理器之间进行通信。本申请提出一种兼容性和集成度较高的基于FPGA和FPGA可用IP核的集成化I/O控制器及***,通过PCIe Switch IP实现与处理器之间的通信,用IP核代替了原有的I/O控制器芯片,简化了用于扩展处理器的I/O接口的I/O控制器,线路简单,占用主板面积小,主板设计简单。
Description
技术领域
本申请涉及服务器技术领域,特别是涉及一种处理器的I/O控制器。
背景技术
处理器可提供的输入/输出(Input/Output,I/O)接口类型和数量都较为有限,一般处理器能够提供有限通道数量的高速串行计算机扩展总线标准(Peripheral ComponentInterconnect Express,PCIe)接口。而服务器常常需要支持串口硬盘(Serial AdvancedTechnology Attachment hard Disk,SATA硬盘)、非易失性内存主机控制器接口规范(NVMExpress,NVMe)固态盘、通用串行总线(Universal Serial Bus,USB)存储介质、千兆网络接口、万兆以太网卡、显卡、磁盘阵列(Redundant Arrays of Independent Disks,RAID)卡等设备,但这些设备无法全部直接连接到处理器上。每种设备均需要通过独立的I/O控制器进行扩展,如:支持SATA盘则需要SATA控制器、支持USB盘则需要USB控制器、支持千兆以太网则需要千兆以太网控制器等。这些I/O控制器都需要通过PCIe总线和处理器进行连接。
由于处理器的PCIe通道非常有限,处理器还会连接图形处理器(GraphicsProcessing Unit,GPU)、100G网卡等高速设备,可见,目前的方案主板上I/O控制器芯片数量较多,I/O控制器***线路较复杂,占用主板面积较大,印制电路板(Printed CircuitBoard,PCB)的设计相对也复杂。
由此可见,如何简化用于扩展处理器的I/O接口的I/O控制器,是本领域技术人员亟待解决的问题。
发明内容
本申请的目的是提供一种处理器的I/O控制器,以简化I/O控制器自身的结构。
为解决上述技术问题,本申请提供一种处理器的I/O控制器,包括:安装有IP核的FPGA;所述IP核至少包括:PCIe Switch IP;
所述PCIe Switch IP的上行端口通过所述FPGA的管脚连接到所述处理器的PCIe下行端口,以便于所述PCIe Switch IP与所述处理器之间进行通信;
所述PCIe Switch IP还与所述FPGA的内部互联总线相连,所述内部互联总线连接除所述PCIe Switch IP外的其余的硬件设备,以便于其余的所述硬件设备与所述处理器之间进行通信;其中,所述硬件设备包括所述IP核。
优选地,所述硬件设备中的所述IP核还包括:SATA控制器IP;所述SATA控制器IP与所述内部互联总线相连,所述SATA控制器IP用于连接SATA设备。
优选地,所述硬件设备中的所述IP核还包括:千兆以太网IP;所述千兆以太网IP与所述内部互联总线相连,所述千兆以太网IP用于连接千兆以太网PHY芯片。
优选地,所述硬件设备中的所述IP核还包括:USB IP;所述USB IP与所述内部互联总线相连,所述USB IP用于连接USB PHY芯片。
优选地,所述硬件设备还包括:逻辑控制模块;所述逻辑控制模块与所述内部互联总线相连。
优选地,所述硬件设备还包括:SPI接口;所述SPI接口与所述内部互联总线相连。
优选地,所述PCIe Switch IP的下行端口连接到所述FPGA的GTx管脚,用于连接下行PCIe设备。
优选地,所述FPGA的型号为根据所述FPGA上硬件类型和/或硬件数量选择。
优选地,所述FPGA的型号为根据所述FPGA上硬件类型对应的硬件参数和硬件数量选择,所述硬件参数包括:LUT、BRAM、GTx的数量。
优选地,所述PCIe Switch IP的上行端口通过所述FPGA的GTx管脚连接到所述处理器的PCIe下行端口。
本申请所提供的一种处理器的I/O控制器,I/O控制器具体为一个安装有IP核的FPGA;IP核至少包括:PCIe Switch IP;PCIe Switch IP的上行端口通过FPGA的管脚连接到处理器的PCIe下行端口,以便于PCIe Switch IP与处理器之间进行通信;PCIe Switch IP还与FPGA的内部互联总线相连;其中,内部互联总线连接除PCIe Switch IP外的其余的硬件设备,以便于其余的硬件设备与处理器之间进行通信。针对当前方案中扩展处理器的I/O时主板硬件设计复杂、需要使用多个控制器或I/O扩展桥片功能局限、不同平台不兼容的问题,本申请提出一种兼容性和集成度较高的基于FPGA和FPGA可用IP核的集成化I/O控制器及***,通过PCIe Switch IP实现与处理器之间的通信,用IP核代替了原有的I/O控制器芯片,简化了用于扩展处理器的I/O接口的I/O控制器,线路简单,占用主板面积小,主板设计简单。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种I/O控制器的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本申请保护范围。
本申请的核心是提供一种处理器的I/O控制器,以简化I/O控制器自身的结构。
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。
服务器主板上除了要有高计算性能的处理器和高存储带宽的内存以外,还需要有丰富的I/O资源,需要支持不同类型的I/O接口,才能够满足不同用户的使用需求。但处理器对外接口资源有限,无法支持所有的接口类型,此时常常需要借助各种各样的专用I/O控制器芯片去扩展I/O接口。因此,一个主板上常常需要设计很多个I/O控制器芯片才能够满足用户需求,导致硬件设计复杂且占用非常多的板卡空间,每个I/O控制器芯片都需要***flash芯片等非易失性存储器去存储配置信息,因此涉及固件较多,板卡固件升级维护步骤也较为复杂。也有一些处理器平台有专用的I/O桥片,但只能专用于一个处理器平台,灵活性较差,也有一些设计上的不足。为解决上述问题,本申请提供一种处理器的I/O控制器,提高了扩展服务器常用I/O接口的集成度,同时又提高了集成I/O控制器的灵活性和适用场景。
知识产权核(Intellectual Property Core,IP核)也称知识产权模块,IP核将一些在数字电路中常用,但比较复杂的功能块设计成可修改参数的模块。利用IP核设计电子***,引用方便,容易修改基本元件的功能。现场可编程逻辑门阵列(Field ProgrammableGate Array,FPGA)是在可编程阵列逻辑、通用阵列逻辑等可编程器件的基础上进一步发展的产物,它是作为专用集成电路领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。查找表单元(Look Up Table,LUT)、块随机存储单元(Block Random Access Memory,BRAM)、千兆比特收发器(GigabitTransceiver,GTx)的数量影响本申请的FPGA的型号选取。SATA、USB、千兆以太网等较为低速的I/O控制器芯片或IP无法直接连接到处理器,而是连接到PCIe Switch IP,PCIeSwitch IP再连接到处理器的PCIe接口。PCIe Switch可以扩展PCIe通道的数量,除了可连接USB、SATA、千兆以太网等控制器以外,还可以支持标准的PCIe设备,如:NVMe SSD、RAID卡、万兆网卡、显卡等。
本申请实施例提供一种处理器的I/O控制器,包括安装有IP核的FPGA;IP核至少包括:PCIe Switch IP;PCIe Switch IP的上行端口通过FPGA的管脚连接到处理器的PCIe下行端口,以便于PCIe Switch IP与处理器之间进行通信;PCIe Switch IP还与FPGA的内部互联总线相连,内部互联总线连接除PCIe Switch IP外的其余的硬件设备,以便于其余的硬件设备与处理器之间进行通信;其中,硬件设备包括IP核。
本申请实施例利用FPGA内丰富的IP资源和逻辑资源,结合现有的IP核和重新设计的架构,实现了基于FPGA的多接口I/O控制器及***。本实施例利用PCIe Switch IP实现PCIe总线的扩展,将PCIe Switch IP的上行端口通过FPGA的GTx管脚连接到处理器的PCIe下行端口,FPGA和处理器之间实现PCIe Gen4 x16的互联带宽。将PCIe Switch IP的下行端口连接到FPGA的GTx管脚,可根据实际应用需求,通过主板连接到NVMe固态硬盘(SolidState Disk,SSD)、RAID卡、10G网卡、基板管理控制器(Baseboard ManagementController,BMC卡)、显卡等下行PCIe设备。下行PCIe通道可支持1个PCIe Gen4 x16,也可以根据需求拆分为2个x8或4个x4或8个x2或16个x1等。另外,PCIe Switch IP还连接到FPGA的内部互联总线,用于加载PCIe Switch IP自身的配置和给其他硬件设备提供上行通道,满足SATA、USB、网络等设备对应的IP核通过PCIe Switch IP和上行PCIe通道与处理器进行通信的需求。本申请实施例的硬件设备中的IP核可以包括USB IP,USB IP与内部互联总线相连,USB IP用于连接USB PHY芯片,以向处理器提供USB接口。硬件设备还可包括串行外设接口(Serial Peripheral Interface,SPI)和逻辑控制模块。需要注意的本申请实施例提供的方案只是本申请的其中一种,并不对本申请的其他方案造成限定。
图1为本申请实施例提供的一种I/O控制器的结构图;如图1所示,包括处理器1和FPGA2,利用PCIe Switch IP实现PCIe总线的扩展,将PCIe Switch IP的上行端口通过FPGA2的GTx管脚连接到处理器1的PCIe下行端口,FPGA2和处理器1之间实现PCIe Gen4 x16的互联带宽。FPGA2上集成了PCIe Switch IP、SATA控制器IP、千兆以太网IP、USB IP、逻辑控制模块、SPI接口;PCIe Switch IP的下行端口连接到FPGA2的GTx管脚,可根据实际应用需求,通过主板连接到NVMe SSD、RAID卡、10G网卡、BMC卡、显卡等下行PCIe设备。SATA控制器IP具体可提供下行SATA3.0接口,通过FPGA2的GTx管脚连接到主板,再通过主板连接到SATA设备,如SATA HDD或SATA SSD。SATA控制器IP还连接到FPGA2的内部互联总线,可通过内部互联总线、PCIe Switch IP、上行PCIe总线与处理器1通信。千兆以太网IP实现OSI模型中数据链路层的功能,提供下行RGMII接口,通过FPGA2专用的网络信号管脚连接到主板,再通过主板连接千兆以太网PHY芯片,实现物理层建立。千兆以太网IP还连接到FPGA2的内部互联总线,通过PCIe Switch IP和上行PCIe总线连接到处理器1。USB IP用于连接USB PHY芯片,以向供USB设备接入。逻辑控制模块用于实现上/下电控制、温度/电压监控、按键侦测/LED控制等用户交互功能、热插拔控制,逻辑控制模块外接上/下电控制电路、温度/电压监控电路、用户交互电路、热插拔控制电路,将独立的逻辑控制模块移动到FPGA2的I/O控制器内部,并挂接到FPGA2内部互联总线上,独立FPGA芯片的逻辑控制模块需要单独的时钟输入,集成于I/O控制器的逻辑控制模块可以使用FPGA2内部互联总线上的统一时钟控制,这种高速同步时钟的设计更有利于外部硬件电路的同步控制。配置FPGA2的闪存(FLASH)芯片通过SPI总线连接到FPGA2的SPI接口,SPI接口也连接到FPGA内部互联总线。FLASH芯片存储着FPGA全部IP核配置信息、管脚配置信息等,从而I/O控制器IP、逻辑控制模块等可以从同一个Flash芯片加载配置,不需要每个控制器单独设计配置芯片。
针对当前技术中扩展处理器I/O时主板硬件设计复杂、需要使用多个控制器或I/O扩展桥片功能局限、不同平台不兼容的问题,本申请实施例提出一种兼容性和集成度较高的基于FPGA和FPGA可用IP的集成化I/O控制器及***。本申请实施例提出的适用于服务器主板的集成化I/O扩展架构,能够支持常见的PCIe、USB、SATA、千兆以太网等下行接口,也能够支持上行PCIe接口,PCIe接口是所有市面上处理器都能够通用的高速串行接口。由于主板上一般用一块单独的CPLD/FPGA设计硬件逻辑控制功能,本申请实施例可将其功能集成于I/O控制器内部,提高了I/O控制器的集成度,进一步降低了主板上芯片数量。可将逻辑控制模块和PCIe Switch IP通过FPGA内部互联总线连接,提高了信息同步效率。本申请实施例还可通过三个关键参数:LUT、BRAM、GTx的数量,针对本方案设计一种简易的FPGA芯片选取指南。本申请实施例可以只选取一块Flash芯片进行配置烧录,降低了主板的固件开发难度和固件升级维护难度。需要注意的是,上述各方案均为本申请的具体示例,本申请并不限于某一具体方案,各设备的型号选取均以实际情况为准。
本申请实施例所提供的一种处理器的I/O控制器,I/O控制器具体为一个安装有IP核的FPGA;IP核至少包括:PCIe Switch IP;PCIe Switch IP的上行端口通过FPGA的管脚连接到处理器的PCIe下行端口,以便于PCIe Switch IP与处理器之间进行通信;PCIe SwitchIP还与FPGA的内部互联总线相连;其中,内部互联总线连接除PCIe Switch IP外的其余的硬件设备,以便于其余的硬件设备与处理器之间进行通信。针对当前方案中扩展处理器的I/O时主板硬件设计复杂、需要使用多个控制器或I/O扩展桥片功能局限、不同平台不兼容的问题,本申请实施例提出一种兼容性和集成度较高的基于FPGA和FPGA可用IP核的集成化I/O控制器及***,通过PCIe Switch IP实现与处理器之间的通信,用IP核代替了原有的I/O控制器芯片,简化了用于扩展处理器的I/O接口的I/O控制器,线路简单,占用主板面积小,主板设计简单。
本申请实施例提供的方案中,硬件设备中的IP核还包括SATA控制器IP;SATA控制器IP与内部互联总线相连,SATA控制器IP用于连接SATA设备。SATA控制器IP具体可提供下行SATA3.0接口,通过FPGA的GTx管脚连接到主板,再通过主板连接到SATA设备,如SATA HDD或SATA SSD。SATA控制器IP还连接到FPGA内部互联总线,可通过内部互联总线、PCIeSwitch IP、上行PCIe总线与处理器通信。硬盘驱动器(Hard Disk Drive,HDD)是最基本的电脑存储器
本申请实施例的硬件设备中的IP核还包括:千兆以太网IP;千兆以太网IP与内部互联总线相连,千兆以太网IP用于连接千兆以太网PHY芯片。千兆以太网IP实现OSI模型中数据链路层的功能,提供下行RGMII接口,通过FPGA专用的网络信号管脚连接到主板,再通过主板连接千兆以太网PHY芯片,实现物理层建立。千兆以太网IP还连接到FPGA的内部互联总线,通过PCIe Switch IP和上行PCIe总线连接到处理器。服务器用户安装操作***后由操作***和上层软件实现传输层、网络层、应用层的建立。
目前的方案中,需要一个专门的数字集成电路(Complex Programmable LogicDevice,CPLD)或FPGA芯片实现逻辑控制模块,用于上/下电控制、温度/电压监控、按键侦测/LED控制、热插拔控制等。因为主板上的上/下电控制、热插拔控制、按键/LED指示灯等用户交互接口、电压/温度监控等硬件线路一般需要逻辑控制芯片实现具体的控制功能,由于板卡上I/O控制器都是专用的芯片,无法实现主板开发人员自定义的逻辑控制功能,所以需要一个单独的CPLD/FPGA去实现该控制功能。由于本申请用FPGA实现了I/O控制器的功能,且FPGA还有很多的逻辑资源和低速I/O资源可利用,因此将独立的逻辑控制模块移动到基于FPGA的I/O控制器内部,并挂接到FPGA内部互联总线上。独立FPGA芯片的逻辑控制模块需要单独的时钟输入,集成于I/O控制器的逻辑控制模块可以使用FPGA内部互联总线上的统一时钟控制,这种高速同步时钟的设计更有利于外部硬件电路的同步控制。如:PCIe硬盘热插拔时,热插拔侦测、供电控制、指示发光二极管(Light-Emitting Diode,LED)灯控制等需要由逻辑控制模块实现,PCIe总线状态协商、数据保存需要PCIe Switch IP实现,当逻辑控制模块侦测到PCIe热插拔预报时能够更快速通知到PCIe Switch IP,PCIe Switch IP也能够将PCIe总线状态实时传送到逻辑控制模块,逻辑控制模块能够在更精确的时间点完成供电控制。同时集成于同一FPGA的设计也减少了一个单独FPGA逻辑控制模块的设计。
配置FPGA的FLASH芯片通过SPI总线连接到FPGA的SPI接口,SPI接口也连接到FPGA内部互联总线。FLASH芯片存储着FPGA全部IP核配置信息、管脚配置信息等,从而I/O控制器IP、逻辑控制模块等可以从同一个Flash芯片加载配置,不需要每个控制器单独设计配置芯片。
使用上述实施例的技术设计基于FPGA的高度集成化I/O控制器时选用合适的FPGA芯片也很重要,太低端的FPGA可能会资源不足、高速I/O不足,然而过于高端的FPGA则可能会价格高、占用面积较大。本申请实施例提供一种具体的方案,FPGA的型号为根据FPGA上硬件类型和/或硬件数量选择。具体的,是根据FPGA上硬件类型对应的硬件参数和硬件数量选择,硬件参数包括:LUT、BRAM、GTx的数量。使用Xilinx FPGA及其支持的IP核资源为例,若选用XpressSWITCH硬核PCIe Switch(占用LUT资源较少)、Design Gateway SATA3.0 IP(可支持SATA控制器组RAID功能)、Corigin USB3.1 IP和软核GbE IP。表1列出了上述具体方案所需的资源列表。
表1资源列表
FPGA需要满足LUT资源数大于557000,BRAM数大于1026,即每个BRAM为36Kb,则BRAM容量需要大于1026*36/1024=36Mb,GTx I/O数大于36对,能够满足上述条件的FPGA可选择Xilinx VU9P型号,但不仅限于该型号。
针对当前技术中扩展处理器I/O时主板硬件设计复杂、需要使用多个控制器或I/O扩展桥片功能局限、不同平台不兼容的问题,本申请提出一种兼容性和集成度较高的基于FPGA和FPGA可用IP的集成化I/O控制器及***。本申请提出一种适用于服务器主板的集成化I/O扩展架构,能够支持常见的PCIe、USB、SATA、千兆以太网等下行接口,也能够支持上行PCIe接口,PCIe接口是所有市面上处理器都能够通用的高速串行接口。由于主板上一般用一块单独的CPLD/FPGA设计硬件逻辑控制功能,本申请提出将其功能集成于I/O控制器内部,提高了I/O控制器的集成度,进一步降低了主板上芯片数量。本申请中逻辑控制模块和PCIe Switch IP通过FPGA内部互联总线连接,提高了信息同步效率,进一步提高了PCIe设备热插拔的稳定性,降低了数据丢失概率和硬件出错概率。本申请通过三个关键参数:LUT、BRAM、GTx的数量,提出了针对本方案的一种简易的FPGA芯片选取指南。本申请提出的I/O控制器实现多种接口的控制功能,但只需一块Flash芯片进行配置烧录,降低了主板的固件开发难度和固件升级维护难度。本申请提出的I/O控制器基于重复灵活配置的FPGA芯片设计,因此其配置可灵活变更,如PCIe 4.0Switch可以升级为PCIe 5.0Switch,此时我们只需要重新烧录配置文件则可以重新配置I/O控制器去支持PCIe 5.0。需要注意的是,上述各方案均为本申请的具体示例,本申请并不限于某一具体方案,各设备的型号选取均以实际情况为准。
以上对本申请所提供的一种处理器的I/O控制器进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括上述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种处理器的I/O控制器,其特征在于,包括:安装有IP核的FPGA;所述IP核至少包括:PCIe SwitchIP;
所述PCIe SwitchIP的上行端口通过所述FPGA的管脚连接到所述处理器的PCIe下行端口,以便于所述PCIe SwitchIP与所述处理器之间进行通信;
所述PCIe SwitchIP还与所述FPGA的内部互联总线相连,所述内部互联总线连接除所述PCIe SwitchIP外的其余的硬件设备,以便于其余的所述硬件设备与所述处理器之间进行通信;其中,所述硬件设备包括所述IP核。
2.根据权利要求1所述的处理器的I/O控制器,其特征在于,所述硬件设备中的所述IP核还包括:SATA控制器IP;所述SATA控制器IP与所述内部互联总线相连,所述SATA控制器IP用于连接SATA设备。
3.根据权利要求2所述的处理器的I/O控制器,其特征在于,所述硬件设备中的所述IP核还包括:千兆以太网IP;所述千兆以太网IP与所述内部互联总线相连,所述千兆以太网IP用于连接千兆以太网PHY芯片。
4.根据权利要求3所述的处理器的I/O控制器,其特征在于,所述硬件设备中的所述IP核还包括:USBIP;所述USBIP与所述内部互联总线相连,所述USBIP用于连接USB PHY芯片。
5.根据权利要求4所述的处理器的I/O控制器,其特征在于,所述硬件设备还包括:逻辑控制模块;所述逻辑控制模块与所述内部互联总线相连。
6.根据权利要求5所述的处理器的I/O控制器,其特征在于,所述硬件设备还包括:SPI接口;所述SPI接口与所述内部互联总线相连。
7.根据权利要求1所述的处理器的I/O控制器,其特征在于,所述PCIe Switch IP的下行端口连接到所述FPGA的GTx管脚,用于连接下行PCIe设备。
8.根据权利要求1所述的处理器的I/O控制器,其特征在于,所述FPGA的型号为根据所述FPGA上硬件类型和/或硬件数量选择。
9.根据权利要求8所述的处理器的I/O控制器,其特征在于,所述FPGA的型号为根据所述FPGA上硬件类型对应的硬件参数和硬件数量选择,所述硬件参数包括:LUT、BRAM、GTx的数量。
10.根据权利要求1所述的处理器的I/O控制器,其特征在于,所述PCIe Switch IP的上行端口通过所述FPGA的GTx管脚连接到所述处理器的PCIe下行端口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211212452.7A CN115509985A (zh) | 2022-09-29 | 2022-09-29 | 一种处理器的i/o控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211212452.7A CN115509985A (zh) | 2022-09-29 | 2022-09-29 | 一种处理器的i/o控制器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115509985A true CN115509985A (zh) | 2022-12-23 |
Family
ID=84508129
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211212452.7A Pending CN115509985A (zh) | 2022-09-29 | 2022-09-29 | 一种处理器的i/o控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115509985A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116701275A (zh) * | 2023-08-01 | 2023-09-05 | 浪潮电子信息产业股份有限公司 | 终端设备扩展设备、方法、装置及总线标准设备 |
-
2022
- 2022-09-29 CN CN202211212452.7A patent/CN115509985A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116701275A (zh) * | 2023-08-01 | 2023-09-05 | 浪潮电子信息产业股份有限公司 | 终端设备扩展设备、方法、装置及总线标准设备 |
CN116701275B (zh) * | 2023-08-01 | 2023-11-07 | 浪潮电子信息产业股份有限公司 | 终端设备扩展设备、方法、装置及总线标准设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11588261B2 (en) | Multi-mode and/or multi-speed non-volatile memory (NVM) express (NVMe) over fabrics (NVMe-oF) device | |
TW201937381A (zh) | 支援多模式及/或多速度之跨架構高速非揮發性記憶體裝置的系統與方法及儲存裝置 | |
US9524262B2 (en) | Connecting expansion slots | |
WO2021098485A1 (zh) | PCIe设备的上下电控制方法以及*** | |
CN211427190U (zh) | 一种基于飞腾处理器2000+的服务器电路和主板 | |
CN104657317A (zh) | 服务器 | |
EP1728168A1 (en) | Simulation circuit of pci express endpoint and downstream port for a pci express switch | |
US8037223B2 (en) | Reconfigurable I/O card pins | |
WO2016122505A1 (en) | Memory card expansion | |
CN104820474A (zh) | 一种云服务器主板、云服务器及其实现方法 | |
CN101639821B (zh) | 一种具有内容冗余链路的服务器smbus接口芯片 | |
CN115509985A (zh) | 一种处理器的i/o控制器 | |
CN114490023B (zh) | 一种基于arm和fpga的高能物理可计算存储设备 | |
CN109116934B (zh) | 可扩展组合的服务器存储背板 | |
CN114003528A (zh) | Ocp转接卡、转接***及转接方法 | |
CN103942013A (zh) | 一种arm平台下高速读写与大容量存储***及其工作方法 | |
CN112000545A (zh) | 一种图形处理器板卡和图形处理器管理方法 | |
CN101599050A (zh) | 可适配的pci-e控制器核及其方法 | |
CN116502594A (zh) | 一种服务器安全管理模块及服务器 | |
WO2023016379A1 (zh) | 计算机***、基于PCIe设备的控制方法及相关设备 | |
CN116501678A (zh) | 一种拓扑板卡和板载*** | |
CN106934081B (zh) | 磁盘驱动器模拟方法和装置 | |
CN213276462U (zh) | 双路服务器主板及双路服务器 | |
CN211375594U (zh) | 一种基于sw421处理器的接口扩展机构 | |
CN204189089U (zh) | 一种服务器 |
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 |