0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

PCIe热插拔机制介绍

硬件攻城狮 来源:硬件攻城狮 2024-11-20 09:07 次阅读

前言本文主要讲述PCIe热插拔机制,通过图形方式方便读者快速掌握。

一、概述

如果在PCIe设备不支持热插拔的条件下,在不断电的情况下插拔一块PCIe SSD时,很可能会对主板或PCIe插槽造成损毁。

为了防止意外的发生,PCIe Spec设计了一种“No Surprise”热插拔机制,即,当用户要插拔PCIe设备时,必须先通知系统软件做好准备,然后通过指示灯告知用户热插拔的状态。

二、原理详解

2.1 热插拔原理总结

PCIe总线的热插拔主要指的是PCIe卡设备的热插拔以及相关的实现机制等。

如图所示,上方部分PCIe卡有两个用于热插拔机制的引脚——PRSNT1#和PRSNT2#。PCIe卡设备上的这两个信号之间是短路的,下方部分PCIe插槽的PRSNT1#被固定地连接到地,PRSNT2#则被上拉。且PCIe卡上的这两个信号的金手指长度要比其他的信号的金手指长度要短一点。当PCIe卡设备未被完全插入插槽时,插槽的PRSNT2#信号由于上拉的作用,将一直处于高电平状态。当PCIe卡设备被完全插入插槽后,PRSNT1#与插槽上接地的PRSNT1#连接,同时插槽上的PRSNT2#信号则会被PCIe卡设备的短路线连接到地,从而使得其变为低电平。换句话说,从插槽的角度看,当PRSNT2#位高电平时,则认为PCIe卡设备未能正确插入或者无PCIe卡设备;当PRSNT2#位低电平时,表明PCIe卡设备被正确地插入插槽中。

2.2 热插拔软硬件要求

热插拔不仅仅是硬件的事,其需要软硬件协同实现。要想实现热插拔功能,操作系统、主板热插拔驱动器、PCIe卡设备驱动以及PCIe卡硬件功能都必须支持热插拔,缺一不可。从PCIe卡设备硬件功能的角度来看,其需要支持Quiesce命令、Pause命令(可选)、Start命令和Resume命令。

PCIe环境下的热插拔需要软件与硬件的通力合作。红色框内属于软件方面的需求,绿色框内是硬件方面的需求。

软件方面主要包括:

1、User Interface: 这部分由系统OS提供。主要允许用户可以请求插拔PCIe设备。

2、Hot-Plug Service: 这部分也是由系统OS提供。主要负责处理用户插拔PCIe设备的请求。

3、Standardized Hot Plug System Driver: 这部分驱动可以由系统OS或者主板提供。

4、Device Driver: 这部分主要有适配卡提供。

硬件方面主要包括:

1、Hot-Plug Controller: 主要负责接收和处理来自Hot Plug System Driver的指令。

2、Card Slot Power Switching Logic: 主要被Hot Plug Controller控制,用于turn-on/off电源

3、Card Reset Logic: 按照Hot-plug System Driver的指示,Hot Plug Controller向需要插拔PCIe设备的插槽(Slot)传送PERST#信号。

4、Power Indicator: 主要负责指示设备连接器上面的电源状态。

5、Attention Indicator: 这个是警示灯,提醒用户热插拔失败状态,所以一般情况下处于关闭状态。

6、Card Present Detect Pins: PCIe设计了两个用于检测PCIe设备是否存在的信号PRSNT1#和PRSNT2#。PRSNT#1接地,当PCIe设备存在时,PRSNT#2拉高。

桥设备(Switch等)中还需要支持热插拔控制器(Hot Plug Controller)。

注:PCIe总线除了有一个Base Spec之外,还有一个关于PCIe卡设备的Spec——PCIe Card ElectroMechanical Spec(CEM)。

与PCI总线不同,PCIe总线采用的是点到点的连接(Point-to-Point Connections),因此其并不像PCI总线那样需要用于卡设备的隔离逻辑(Isolation Logic),但是每个端口(桥设备中的,如Root和Switch)都必须包含一个独立的热插拔控制器(Hot Plug Controller),如下图所示:

配置空间中,与热插拔相关的寄存器如下图所示:

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 热插拔
    +关注

    关注

    2

    文章

    224

    浏览量

    37329
  • 硬件
    +关注

    关注

    11

    文章

    3323

    浏览量

    66210
  • PCIe
    +关注

    关注

    15

    文章

    1237

    浏览量

    82619

原文标题:PCIe热插拔机制(详细)总结

文章出处:【微信号:mcu168,微信公众号:硬件攻城狮】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    基于PCIe-Native机制热插拔

    热插拔即带电插拔,在虚拟化场景下,热插拔就是在虚拟机运行过程中对磁盘网卡等设备进行动态调整。
    的头像 发表于 09-06 10:32 4247次阅读

    高精度热插拔和电源监控

    本内容提供了高精度热插拔和电源监控,介绍什么是热插拔和利用热插拔进行的设计方案及电源监控知识。
    发表于 11-04 10:00 1674次阅读
    高精度<b class='flag-5'>热插拔</b>和电源监控

    热插拔是什么?热插拔有哪些特点?

    什么是热插拔热插拔(hot-plugging或Hot Swap)即带电插拔热插拔功能就是允许用户在不关闭系统,不切断电源的情况下取出和更换损坏的硬盘、电源或板卡等部件,从而提高了系
    发表于 12-13 10:53

    即插即用和热插拔的区别

    本帖最后由 eehome 于 2013-1-5 10:01 编辑 “即插即用”是指安装了设备之后系统可以自动配置和管理设备,不需要人工处理即可使用。“热插拔”是指可以在开机状态下将设备与主机
    发表于 10-23 10:26

    如何对BMS单元连接进行热插拔

    过渡到热插拔测试,一些故障实际上是针对热插拔失效机制的。观察表明,2、3、4故障与热插拔故障检测有关。当然,由于不同的热插拔连接模式的出现,
    发表于 09-07 18:20

    空间受限应用中的PMBus热插拔威廉希尔官方网站 基础介绍

      摘要:本文详细介绍热插拔威廉希尔官方网站 基础,以及要求使用系统保护与管理(SPM)和印刷威廉希尔官方网站 板(PCB)基板面极其珍贵的情况下系统设计人员所面临的诸多挑战。以模块化实现利用集成数字热插拔控制器时,我们为您
    发表于 09-26 17:32

    热插拔的基本原理是什么?热插拔有哪些功能?

    热插拔的基本原理是什么?热插拔有哪些功能?
    发表于 05-24 06:01

    使热插拔与电子熔丝的优势

    使用热插拔控制器的优势电子熔丝与热插拔控制器之间的主要区别是热插拔是一种能够驱动外部FET的控制器(如图1所示)。FET通过热插拔控制器中的控制逻辑进行开启和关闭,以调节负载处的电源供
    发表于 11-17 07:12

    热插拔装置软件

    热插拔装置软件USB Safely Remove是一款支持热插拔装置和迅速切断一个公用的热插拔装置的软件。
    发表于 04-23 09:32 151次下载

    热插拔

    热插拔              热插拔(hot-plugging或Hot Swap)功能就是允许用户在不关闭系统,不切断电源的情况下取出和更换
    发表于 12-17 11:41 631次阅读

    PCIe总线的热插拔机制

    当然,热插拔不仅仅是硬件的事,其需要软硬件协同实现。要想实现热插拔功能,操作系统、主板热插拔驱动器、PCIe卡设备驱动以及PCIe卡硬件功能
    的头像 发表于 09-06 09:20 2w次阅读

    PCIe引脚PRSNT与热插拔

    热插拔的基本目的是要让PCIe设备按照规定的顺序、原则,从系统中移除或插入到系统中来,并能正常的工作,且不影响系统的正常运行。事实上,PCIe热插拔”的关键目的就是为前面面所提到的系
    的头像 发表于 12-14 10:59 4964次阅读

    基于IC的热插拔威廉希尔官方网站 保护的优势

    有许多方法可以保护系统免受静电放电 (ESD)、浪涌电流、过流、欠压、过压和其他电源中断的影响。UL、USB、IEEE、CSA 或 IEC 等行业、公司或监管标准通常需要威廉希尔官方网站 保护。本应用笔记讨论热插拔IC。介绍了典型的热插拔威廉希尔官方网站
    的头像 发表于 03-13 11:35 5380次阅读
    基于IC的<b class='flag-5'>热插拔</b>威廉希尔官方网站
保护的优势

    热插拔和非热插拔的区别

    热插拔和非热插拔的区别  热插拔和非热插拔是指电子设备或组件在工作状态下是否可以进行插拔操作的一种分类。
    的头像 发表于 12-28 10:01 2962次阅读

    键盘热插拔和非热插拔的区别

    键盘热插拔和非热插拔的区别 键盘是计算机外设设备之一,热插拔是指在计算机运行中插入或拔出设备而无需重启计算机,非热插拔则需要重启计算机才能生效。键盘
    的头像 发表于 02-02 17:34 1w次阅读