CN105354167B - 一种pci桥次级总线复位的缓冲排空方法 - Google Patents
一种pci桥次级总线复位的缓冲排空方法 Download PDFInfo
- Publication number
- CN105354167B CN105354167B CN201510790131.9A CN201510790131A CN105354167B CN 105354167 B CN105354167 B CN 105354167B CN 201510790131 A CN201510790131 A CN 201510790131A CN 105354167 B CN105354167 B CN 105354167B
- Authority
- CN
- China
- Prior art keywords
- pci bridge
- pci
- secondary bus
- reset
- bus
- 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.)
- Active
Links
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
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0024—Peripheral component interconnect [PCI]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Abstract
本发明提供了一种PCI桥次级总线复位的缓冲排空方法,包括:在PCI桥收到上层系统的PCI桥次级总线复位命令后,使得PCI桥次级总线端的所有逻辑复位,使得PCI桥的PCI配置寄存器中的三级总线寄存器不复位,而且使得该三级总线寄存器只接收系统上电复位控制,同时使得PCI桥的CPL请求接收缓冲只接收上电复位控制,并且使得PCI桥次级总线端的接收向量仲裁器在复位期间不仲裁任何请求。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及计算机外围系统的软复位功能的硬件实现,更具体地说,本发明涉及一种PCI桥次级总线复位的缓冲排空方法。
背景技术
目前计算机外围系统中PCI总线广泛应用,PCI总线规范已成计算机系统外围互连总线事实上的标准,几乎所有的商业级或者工业级的计算机生产厂商都在其计算机系统中提供标准的PCI总线。
计算机IO系统的软复位功能大多基于某个IO设备实现,没有出现基于PCI桥次级总线复位实现的软复位功能,这是因为PCI桥次级总线复位的使用要求PCI桥的次级总线端所有逻辑和请求缓冲必须清空。
其中,PCI规范定义的请求包括P请求(Posted Requests)、NP请求(Non-PostedRequests)、CPL请求(Completions);这三类请求在软复位执行后必须完全清空,并且不会因为复位之前有NP请求发出,复位后这个NP请求的对应的CPL请求返回时无法路由而导致整个计算机外围系统挂死,这对于桥的复位逻辑设计是一个挑战。
发明内容
本发明所要解决的技术问题是针对现有技术中存在上述缺陷,为了保证PCI桥次级总线复位时PCI桥的次级总线端所有逻辑和缓冲必须清空,而提供了一种对PCI次级总线端三类请求逻辑及其缓冲独立管理的方法,解决了次级总线端逻辑复位和缓冲清空问题。
为了实现上述技术目的,根据本发明,提供了一种PCI桥次级总线复位的缓冲排空方法,其特征在于包括:在PCI桥收到上层系统的PCI桥次级总线复位命令后,使得PCI桥次级总线端的所有逻辑复位。
优选地,在PCI桥收到上层系统的PCI桥次级总线复位命令后,使得PCI桥的PCI配置寄存器中的三级总线寄存器不复位,而且使得该三级总线寄存器只接收系统上电复位控制,同时使得PCI桥的CPL请求接收缓冲只接收上电复位控制,并且使得PCI桥次级总线端的接收向量仲裁器在复位期间不仲裁任何请求。
优选地,PCI桥的PCI配置寄存器中的三级总线寄存器不复位,从而保留三级总线寄存器中的桥三级总线号。
优选地,所述所有逻辑包括PCI总线接口、次级总线以下的所有设备、所有缓冲、次级总线端的所有控制状态机、以及次级总线端及以下的PCI配置寄存器和设备空限制寄存器。
本发明的主要有益效果在于,计算机系统可以基于标准的PCI规范规定的PCI桥的次级总线复位功能实现安全有效的外围系统软复位。
附图说明
结合附图,并通过参考下面的详细描述,将会更容易地对本发明有更完整的理解并且更容易地理解其伴随的优点和特征,其中:
图1示意性地示出了根据本发明优选实施例的PCI桥次级总线复位的缓冲排空方法的流程图。
需要说明的是,附图用于说明本发明,而非限制本发明。注意,表示结构的附图可能并非按比例绘制。并且,附图中,相同或者类似的元件标有相同或者类似的标号。
具体实施方式
为了使本发明的内容更加清楚和易懂,下面结合具体实施例和附图对本发明的内容进行详细描述。
本发明提供了一种基于PCI桥次级总线复位的系统软复位硬件实现方法,通过PCI三类请求缓冲独立管理,确保硬件上PCI桥次级总线以下的所有设备和缓冲,特别是次级总线以下设备的请求的CPL通路,在次级总线复位后可以重新开始正常运行。
如图1所示,在本发明优选实施例的PCI桥次级总线复位的缓冲排空方法中,在PCI桥收到上层系统的PCI桥次级总线复位命令后,使得PCI桥次级总线端的所有逻辑(例如,包括PCI总线接口、次级总线以下的所有设备、所有缓冲、次级总线端的所有控制状态机,以及次级总线端及以下的PCI配置寄存器和设备空限制寄存器)复位,但是PCI桥的PCI配置寄存器中的三级总线寄存器(一般用type1_reg6表示)不复位(由此保留三级总线寄存器中的桥三级总线号),该三级总线寄存器只接收系统上电复位控制,同时PCI桥的CPL请求接收缓冲只接收上电复位控制,并且PCI桥次级总线端的接收向量仲裁器在复位期间不仲裁任何请求。
在采用了上述设计方案后,PCI的三类请求(P请求、NP请求、CPL请求)的逻辑及其缓冲在PCI桥次级总线复位时都能够实现完整切割,从而实现系统软复位的如下功能:
1.接收P请求,因为接收P请求由系统发出,系统不会在置软复位时发出;
2.接收NP请求和发送CPL请求,因为接收NP请求由系统发出,系统会保证所有NP请求都完成,或者不再需要完成时置软复位;
3.发送P请求,即当设备DMA写请求在进行中时,系统置软复位,DMA写中断,所有相关逻辑复位,不会对外围系统的正常运行产生副作用;
4.发送NP请求和接收CPL请求,即当设备DMA读请求在进行中时,系统置软复位,DMA读中断,所有相关逻辑复位,但是已经发出去的读请求的响应会返回到桥,由于桥的配置空间已经被复位,桥需要的用于CPL路由的桥三级总线号如果被清0,则导致复位之后到达桥的所有DMA读响应都被桥以故障终结,从而导致复位之后的CPL包不能在接收方落地,无法释放信用,CPL通路挂死并最终导致整个计算机外围系统挂死。而在本发明中,在系统置软复位时桥三级总线号不复位,那么在上述场景下所有CPL请求在系统置软复位后依然可以被路由到桥的CPL请求缓冲,并且被最终丢弃,保证了这种场景下CPL通路的正常。
本发明通过PCI三类请求缓冲独立管理,确保硬件上PCI桥次级总线以下的所有设备和缓冲在次级总线复位后可以重新开始正常运行。其中,在次级总线以下的设备发出读请求后,如果系统置复位,之前设备读请求对应的CPL请求返回到次级总线时,次级总线不会因为逻辑被复位而不接收CPL请求,而是接收请求并丢弃,从而保证CPL通路能够重新开始正常运转。
需要说明的是,除非特别说明或者指出,否则说明书中的术语“第一”、“第二”、“第三”等描述仅仅用于区分说明书中的各个组件、元素、步骤等,而不是用于表示各个组件、元素、步骤之间的逻辑关系或者顺序关系等。
可以理解的是,虽然本发明已以较佳实施例披露如上,然而上述实施例并非用以限定本发明。对于任何熟悉本领域的技术人员而言,在不脱离本发明技术方案范围情况下,都可利用上述揭示的技术内容对本发明技术方案作出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。
Claims (2)
1.一种PCI桥次级总线复位的缓冲排空方法,其特征在于包括:在PCI桥收到上层系统的PCI桥次级总线复位命令后,使得PCI桥次级总线端的所有逻辑复位;其中,在PCI桥收到上层系统的PCI桥次级总线复位命令后,使得PCI桥的PCI配置寄存器中的三级总线寄存器不复位,从而保留三级总线寄存器中的桥三级总线号,而且使得该三级总线寄存器只接收系统上电复位控制,同时使得PCI桥的CPL请求接收缓冲只接收上电复位控制,并且使得PCI桥次级总线端的接收向量仲裁器在复位期间不仲裁任何请求。
2.根据权利要求1所述的PCI桥次级总线复位的缓冲排空方法,其特征在于,所述所有逻辑包括PCI总线接口、次级总线以下的所有设备、所有缓冲、次级总线端的所有控制状态机、以及次级总线端及以下的PCI配置寄存器和设备空限制寄存器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510790131.9A CN105354167B (zh) | 2015-11-17 | 2015-11-17 | 一种pci桥次级总线复位的缓冲排空方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510790131.9A CN105354167B (zh) | 2015-11-17 | 2015-11-17 | 一种pci桥次级总线复位的缓冲排空方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105354167A CN105354167A (zh) | 2016-02-24 |
CN105354167B true CN105354167B (zh) | 2018-01-19 |
Family
ID=55330141
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510790131.9A Active CN105354167B (zh) | 2015-11-17 | 2015-11-17 | 一种pci桥次级总线复位的缓冲排空方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105354167B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1193393A (zh) * | 1995-06-15 | 1998-09-16 | 英特尔公司 | 集成pci至pci桥的i/o处理器的体系结构 |
US5859987A (en) * | 1995-09-29 | 1999-01-12 | Intel Corporation | Method and apparatus for providing multiple configuration reset modes for an intelligent bridge |
US5996037A (en) * | 1997-06-03 | 1999-11-30 | Lsi Logic Corporation | System and method for arbitrating multi-function access to a system bus |
CN102082715A (zh) * | 2009-11-30 | 2011-06-01 | 英业达股份有限公司 | 网卡重置的测试方法 |
CN103778018A (zh) * | 2014-01-16 | 2014-05-07 | 江苏华丽网络工程有限公司 | 一种用于pcie虚拟化管理的方法 |
-
2015
- 2015-11-17 CN CN201510790131.9A patent/CN105354167B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1193393A (zh) * | 1995-06-15 | 1998-09-16 | 英特尔公司 | 集成pci至pci桥的i/o处理器的体系结构 |
US5859987A (en) * | 1995-09-29 | 1999-01-12 | Intel Corporation | Method and apparatus for providing multiple configuration reset modes for an intelligent bridge |
US5996037A (en) * | 1997-06-03 | 1999-11-30 | Lsi Logic Corporation | System and method for arbitrating multi-function access to a system bus |
CN102082715A (zh) * | 2009-11-30 | 2011-06-01 | 英业达股份有限公司 | 网卡重置的测试方法 |
CN103778018A (zh) * | 2014-01-16 | 2014-05-07 | 江苏华丽网络工程有限公司 | 一种用于pcie虚拟化管理的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105354167A (zh) | 2016-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7631050B2 (en) | Method for confirming identity of a master node selected to control I/O fabric configuration in a multi-host environment | |
US10210120B2 (en) | Method, apparatus and system to implement secondary bus functionality via a reconfigurable virtual switch | |
US8141093B2 (en) | Management of an IOV adapter through a virtual intermediary in an IOV management partition | |
US7877521B2 (en) | Processing apparatus and method of modifying system configuration | |
CN102067083B (zh) | 对虚拟化环境中的中断结束消息的懒惰处理 | |
CN101097532B (zh) | 检测和清除i/o架构锁定情况以恢复错误的方法和装置 | |
US8141094B2 (en) | Distribution of resources for I/O virtualized (IOV) adapters and management of the adapters through an IOV management partition via user selection of compatible virtual functions | |
CN1985247B (zh) | 存储器读请求越过存储器写 | |
CN101410813B (zh) | 在存储器迁移期间停止dma操作的计算机实现的方法、设备和计算机程序产品 | |
KR101695328B1 (ko) | 모듈러 온-다이 코히어런트 인터커넥트 방법, 장치 및 시스템 | |
KR101775569B1 (ko) | 가상 재시도 큐 | |
US20070019637A1 (en) | Mechanism to virtualize all address spaces in shared I/O fabrics | |
CN102819447A (zh) | 一种用于多根共享系统的直接i/o 虚拟化方法和装置 | |
US9069485B2 (en) | Doorbell backpressure avoidance mechanism on a host channel adapter | |
CN106970864A (zh) | 片上系统、移动终端和用于操作片上系统的方法 | |
CN112534418A (zh) | 通过固定pcie物理传输网络的逻辑传输 | |
EP3827356A1 (en) | Unified address space for multiple hardware accelerators using dedicated low latency links | |
CN103946822B (zh) | 用于促进定制在计算设备处的多用途互连代理的机制 | |
CN111490946B (zh) | 基于OpenCL框架的FPGA连接实现方法及装置 | |
KR20110097447A (ko) | 인터럽트 프록시 기능을 구비한 시스템 온 칩 및 그에 따른 인터럽트 프록시 처리방법 | |
CN109743105A (zh) | 智能网卡光模块管理方法、装置、系统及智能网卡和介质 | |
US20040141518A1 (en) | Flexible multimode chip design for storage and networking | |
CN104049692B (zh) | 一种刀片服务器 | |
CN103365798B (zh) | 一种串口分时复用的方法及系统 | |
US20050273540A1 (en) | Interrupt handling system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |