一种板卡的热插拔方法和装置的制作方法

文档序号:6583638阅读:264来源:国知局
专利名称:一种板卡的热插拔方法和装置的制作方法
技术领域
本发明涉及硬件系统中单板热插拔技术,特别是涉及一种板卡的热插拔方法和装置。
背景技术
热插拔(hot-plugging或hot swap)即带电插拔,有时也称为热替换 (hotr印lacement)、热添力口 (hot expansion)禾口热升级(hot upgrade)等。热插拔功會g就 是允许用户在不关闭系统,不切断电源的情况下取出和更换损坏的硬盘、电源或板卡等部 件,从而提高了系统对灾难的及时恢复能力、扩展性和灵活性等。通常,热插拔采用对信号 进行隔离缓冲处理,以对热插拔的设备的元器件、芯片进行保护。例如一些面向高端应用 的磁盘镜像系统都可以提供磁盘的热插拔功能。而热插拔最早出现在服务器领域,是为了 提高服务器的实用性而提出的,在平时用的电脑中一般都有USB接口 ,这种接口就能够实 现热插拔。如果没有热插拔功能,即使磁盘损坏未造成数据的丢失,用户仍然需要暂时关闭 系统,以便能够对硬盘进行更换。然而,若使用热插拔技术,则只要简单的打开连接开关或 者转动手柄就可以直接取出硬盘,而系统仍然可以不间断地正常运行。
目前,热插拔的应用非常广泛,例如中国专利申请号为200410022180. x "单板热 插拔控制方法及具有热拔插控制模块的板卡"的文件中提出通过I2C (Inter-Integrated Circuit)总线控制对外部设备互连(PCI,Peripheral Componentlnterconnect)总线的隔 离来实现板卡热拔插控制,但它存在以下不足 1)该专利申请文件提出的技术方案采用12C两线式串行总线,12C总线接口控制 板卡热插拔状态,这样板卡必须增设12C接口处理器件,增加了系统开销和使用的局限性; 另外,热插拔隔离处理系统必须通过I2C总线与各热插拔板卡电连接,也限制了系统的组 成结构。 2)在该专利申请文件提出的技术方案中,12C总线外挂板卡数量受到一定的限 制,同时I2C总线通信加重了主处理器的负担,提高了系统的复杂度,增加了系统的开发难 度并且降低了系统的可靠性。 又如美国专利公开号为US6026458 "system with pluggable adapter card andhot-sw即interface controller"(可插拔适配器卡和热插拔接口控制器系统)的文 件中,提出P沟道M0S管进行硬件上电缓启动来判断和实现板卡热插拔,即通过对电源上电 缓启动进行保护,但没有对单板总线和其他通信接口热插拔时进行直接保护,而其中最大 的不足是采用单向的保护,对对方的热插拔的冲击保护不够,加重了器件的负担,降低了系 统的可靠性。

发明内容
有鉴于此,本发明的主要目的在于提供一种板卡的热插拔方法和装置,能简单方 便灵活地热插拔板卡,并能降低热插拔对系统的影响。
为达到上述目的,本发明公开了一种板卡的热插拔装置,包括前拼子卡、后拼板; 其中,前拼子卡,用于插接于后拼板,进行上电复位并与后拼板进行热插拔通信握手,以及 初始化操作;后拼板,用于供前拼子卡插接,与前拼子卡进行热插拔通信握手,并复位前拼 子卡,为前拼子卡加载驱动程序,完成前拼子卡的初始化。 其中,所述前拼子卡还用于实现各种对外接口 ;以及,在上电完成后,向后拼板 发送通信请求,后拼板在收到前拼子卡的通信请求后,与前拼子卡进行热插拔通信握手。
上述装置中,所述后拼板还用于检测是否有前拼子卡插入;和/或,检测前拼子 卡是否连接于后拼板;和/或,后拼板具体用于读取前拼子卡的单板信息,并根据读取得 到的前拼子卡的单板信息,分别为前拼子卡的现场可编程门阵列FPGA及其他功能芯片加 载驱动程序。 其中,所述前拼子卡包括第一逻辑控制模块,用于逻辑控制各模块间的信号,进 行热插拔通信握手,以及控制第一隔离模块、第一通信接口模块的开关;上电复位模块,用 于根据后拼板的复位命令和电源开关命令复位前拼子卡、打开或关闭前拼子卡的电源;第 一隔离模块,用于实现前拼子卡与后拼板之间接口的物理隔离;第一通信接口模块,用于提 供前拼子卡的各种总线接口、及与后拼板之间的通信通道;FPGA及其他功能芯片,用于根 据实际需要来实现不同的对外接口。 上述装置中,所述后拼板包括第二逻辑控制模块,用于逻辑控制各模块间的信 号,进行热插拔通信握手,控制第二隔离模块、第二通信接口模块的开关,以及向前拼子卡 发送复位信号、程序加载指示信号和电源开关命令;第二隔离模块,用于实现与前拼子卡之 间接口的物理隔离;第二通信接口模块,用于提供各种总线接口 、以及与前拼子卡之间的通 信通道。 其中,所述后拼板还用于后拼板关闭前拼子卡的电源,拔出前拼子卡;或者,后 拼板关闭第二隔离模块,拔出前拼子卡。 相应地,本发明提供一种板卡的热插拔方法,包括前拼子卡插接于后拼板,进行 上电复位并与后拼板进行热插拔通信握手;热插拔通信握手成功后,后拼板为前拼子卡加 载驱动程序,完成前拼子卡的初始化。 其中,该方法还包括后拼板关闭前拼子卡的电源,拔出前拼子卡;或者,后拼板 关闭第二隔离模块,拔出前拼子卡。
上述方法中,所述前拼子卡进行上电复位并与后拼板进行热插拔通信握手包括
前拼子卡进行上电,并使前拼子卡在上电过程中处于复位状态直到上电完成;上电完成后,
前拼子卡通知后拼板上电完成并向后拼板发送通信请求,后拼板与前拼子卡进行热插拔通
信握手;在握手成功时,后拼板返回允许通信应答信号给前拼子卡,并打开第二隔离模块和
第二通信接口模块,使前拼子卡与后拼板通信正常;后拼板向前拼子卡输出正常的复位信
号,复位前拼子卡。 其中,所述后拼板为前拼子卡加载驱动程序包括后拼板在前拼子卡上电复位完 成后,延迟一定的时间间隔读取前拼子卡的单板信息,并根据读取得到的前拼子卡的单板 信息,分别为前拼子卡的FPGA及其他功能芯片加载驱动程序。 由以上技术方案可以看出,本发明通过增设两个隔离模块,实现热插拔过程中对 上电、复位信号及相关逻辑的控制,因此本发明对系统要求较低,实现容易,成本很低。例如逻辑控制通过原来单板中就用的可编程逻辑器件(PLD, Programmable Logic Device)实现。同时,本发明降低了系统开发的难度并提高了系统的可靠性,且本发明的实现电路简单、元件少,这是因为本发明根据可靠性模型进行设计从而减少了所使用的元件,降低了系统开销。 而且,本发明支持单板热插拔的系统功能板包括前拼子卡和后拼板,前拼子卡通过采用上电控制、复位延时及控制逻辑,并引入热插拔通信握手信号完成前拼子卡与后拼板通信握手,以实现了热插拔;并在系统允许后打开后拼板与前拼子卡的通信通道,进行驱动加载,便可完成前拼子卡的初始化使其能够正常工作。此外,本发明可通过更换前拼子卡来实现支持不同的对外接口,如光纤、网线等。这里,所述对外接口是指对外的用户接口,也就是前拼子卡插入后拼板后的对外接口,用户根据不同需要可以接网线或者光纤等。因此,只要更换前拼子卡就可以实现支持不同的接口 ,而且本发明对前拼子卡和后拼板之间的通信接口是没有要求的,如PCI接口、局部总线(L0CAL_BUS)接口等均可作为前拼子卡和后拼板的通信接口,所以本发明对接口没有特殊要求,适用范围广。可见,本发明能够方便灵活的实现各种对外接口降低了对支持热插拔电路接口的要求,能够根据具体情况对系统进行选择性设计,实现上灵活、易用,所以更具有普遍性。 另外,本发明利用上电、复位信号控制及相关逻辑控制,在保证热插拔单板时对正在运行系统冲击最小的前提下,实现热插拔电路达到最简单和最优化,最大程度上减小热插拔单板对正在运行中的系统的冲击。因此,本发明能够实现硬件系统单板上电的情况下,对单板进行热插拔并保证单板及系统正常工作。 综上所述,本发明实现了一种对系统要求低、影响小、可靠性高,实现简单方便灵活的支持板卡热插拔的方法及装置。


图1为本发明板卡的热插拔装置的组成结构示意 图2为本发明板卡的热插拔方法的实现流程示意图。
具体实施例方式
本发明的基本思想在于利用物理接口隔离以及上电、复位(reset)信号及相关逻辑控制,在保证热插拔单板时对正在运行系统冲击最小的前提下,实现热插拔电路达到最简单和最优化。 为使本发明上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施例对本发明作进一步详细的说明。 下面先来描述一下本发明板卡热插拔的装置实施例,如图1所示,该装置的组成结构主要包括前拼子卡11和后拼板12。其中 前拼子卡11,即业务接口板,用于插接于后拼板12,进行上电复位并与后拼板12进行热插拔通信握手、以及初始化操作; 这里,通过更换前拼子卡11就能够支持不同的接口,其中,更换前拼子卡11的操
作可在系统运行中进行即该前拼子卡11可热插拔,这种更换方式非常方便灵活。 后拼板12,即主控功能板,用于供前拼子卡11插接,与前拼子卡11进行热插拔通
6信握手,并复位前拼子卡11以及为前拼子卡11加载驱动程序,完成前拼子卡11的初始化。 所述后拼板12为系统工作主功能板,具有总线通信、控制、上电、复位、中断控制、逻辑控制 等功能。 其中,所述前拼子卡11还用于实现各种对外接口,由于前拼子卡11具有不同的子 卡类型,而该子卡类型可按照不同的功能和接口进行划分,所以通过更换前拼子卡11来实 现支持不同的对外接口 ,如光纤接口 、网线接口等。而且,本实施例对前拼子卡和后拼板之 间的通信接口是没有要求的,因此,本实施例对接口没有特殊要求,能方便灵活地实现各种 对外接口 ,适用范围极广。这里,所述对外接口是指对外的用户接口 ,也就是前拼子卡插入 后拼板后的对外接口,用户根据不同需要可以接网线或者光纤等。 上述装置中,所述前拼子卡11还用于在上电完成后,向后拼板12发送通信请求, 后拼板12与前拼子卡11进行热插拔通信握手。其中,所述前拼子卡11包括第一逻辑控 制模块103、上电复位模块105、第一隔离模块107、第一通信接口模块109、现场可编程门阵 列(FPGA)其他功能芯片110等。其中: 第一逻辑控制模块103,用于逻辑控制各模块间的信号,进行热插拔通信握手,以 及控制第一隔离模块107、第一通信接口模块109的开关。例如第一逻辑控制模块103通 过对各信号的逻辑控制来打开第一隔离模块107、第一通信接口模块109。其中,第一逻辑 控制模块103对各信号的逻辑控制包括 1)发送第一隔离模块107的开关控制信号(0E1)、中断信号(INT),第一通信接口 模块109的开关控制信号(0E3)等。这里,可通过第一逻辑控制模块103输出的开关控制 信号0E1来打开/关闭的第一隔离模块107 ; 需要说明的是,开关控制信号0E1、0E3是控制第一隔离模块107、第一通信接口模 块109的开关信号。通常第一隔离模块107、第一通信接口模块109是默认打开的,或者也 可在通信握手完成后分别通过0E1、 0E3来打开第一隔离模块107、第一通信接口模块109, 如设置0E1、 0E3的低电平状态为打开信号。 另外,中断信号是指前拼子卡11的第一逻辑控制模块103在检测有异常或出错 时,向后拼板12输出的中断信号,报告有异常或出错,INT信号相当于告警信号。这样,后 拼板12在收到INT信号后会启动相应逻辑进行检测前拼子卡11的异常或错误。
2)发送热插拔指示、前拼子卡11插入系统指示,并向后拼板12发送通信请求,以 及接收后拼板12返回的允许通信应答;例如前拼子卡11插入指示(MATEJ)K)信号、PLD 热插拔通信握手(PLD_0K)信号、握手应答(PLD_0K_BK)信号。该第一逻辑控制模块103功 能可由PLD和一些外接电阻来实现。 上电复位模块105,用于根据后拼板的复位命令和电源开关命令复位前拼子卡 11、打开或关闭前拼子卡11的电源; 其中,前拼子卡11的电源开关POWEILEN在正常情况下处于使能状态,即前拼子 卡11的电源是默认打开的,一插入就有电,只有当上电复位模块105判断到前拼子卡11损 坏或工作异常、或者前拼子卡11无业务需要而进入节电状态时,才通过控制命令关闭前拼 子卡11的电源。 第一隔离模块107,用于实现前拼子卡11与后拼板12之间接口的物理隔离。其 中,该第一隔离模块107由支持热插拔器件构成,所述热插拔器件可由SN74LVTH16245、
7PI3B16244等芯片形成。 第一通信接口模块109,用于提供前拼子卡11的各种总线接口、以及与后拼板 12之间的通信通道,总线接口主要包括高速串行总线(PCIE, PCI E邓ress)、局部总线 LOCAL—BUS、以及其他需要的总线如系统时钟总线等。前拼子卡11的第一隔离模块107和 第一通信接口模块109可设置为默认打开,也可通过设置由第一逻辑控制模块103通过开 关控制信号0E1、0E3来打开第一隔离模块107和第一通信接口模块109。
FPGA及其他功能芯片110,用于实现不同的对外接口,主要根据实际需要来实现 一些基本的逻辑门电路或更复杂一些的组合功能。其中,这里的FPGA和其他功能芯片是前 拼子卡11的功能芯片,前拼子卡11就是依靠这些芯片来实现不同的对外接口,如光纤接 口、网线接口等。 上述装置中,后拼板12还用于检测是否有前拼子卡ll插入;和/或,检测前拼子 卡11是否连接于后拼板或是否在位。后拼板12具体用于读取前拼子卡11的单板信息, 并根据读取得到的前拼子卡11的单板信息,分别为前拼子卡11的FPGA及其他功能芯片 110加载驱动程序。其中,所述后拼板12包括第二逻辑控制模块104、第二隔离模块106、
第二通信接口模块108;其中 第二逻辑控制模块104,用于逻辑控制各模块间的信号,进行热插拔通信握手,控 制第二隔离模块106、第二通信接口模块108的开关,以及向前拼子卡11发送复位信号、程 序加载指示信号和电源开关命令等。其中,第二逻辑控制模块104还用于控制前拼子卡的 电源开关,可通过发送电源开关命令来打开或关闭前拼子卡的电源。
这里,对各信号的逻辑控制包括 1)发送第二隔离模块106的开关控制信号(0E2)、中断信号INT、复位信号、第二通 信接口模块108的开关控制信号(0E4)等; 需要说明的是,开关控制信号0E2、0E4分别是控制第二隔离模块106、第二通信接 口模块108的开关信号。通常在通信握手完成后,分别通过0E2、 0E4来打开第二隔离模块 106、第二通信接口模块108。 2)与前拼子卡11进行热插拔交互,如接收热插拔指示、前拼子卡11插入系统指 示、发送后拼板12返回允许通信应答等。该第二逻辑控制模块104功能可由PLD和一些外 接电阻来实现; 3)通过控制前拼子卡11的电源开关P0WER_EN的使能状态来控制前拼子卡11的 电源,即后拼板12先将P0WEILEN由使能状态调整为截止状态,关闭前拼子卡11的电源, 再拔出前拼子卡ll,如此便实现了热拔前拼子卡11。 第二隔离模块106,用于实现后拼板12与前拼子卡11之间接口的物理隔离,由支 持热插拔器件构成。后拼板12打开其第二隔离模块106,与默认打开的第一隔离模块107 共同使后拼板12和前拼子卡11之间的信号通道得以开通,实现前拼子卡11与后拼板12之 间的正常通信,包括reset信号、INT信号及其它逻辑信号、LOCAL_BUS转换及寄存器赋初 值等都能够在前拼子卡11和后拼板12之间正常进行通信。这里,需要指出的是,后拼板12 除了通过关闭前拼子卡11的电源来实现热拔前拼子卡之外,通过关闭第二隔离模块106, 也能够实现热拔前拼子卡ll。 第二通信接口模块108,用于提供后拼板12的各种总线接口,以及与前拼子卡11之间的通信通道。例如PCIE、LOCAL—BUS、系统时钟等。 以上说明了板卡的热插拔装置实施例,下面来描述一下本发明板卡的热插拔方法 实施例。在本实施例中,系统功能板包括前拼子卡和后拼板,前拼子卡通过采用上电控制、 复位延时及控制逻辑,并引入热插拔通信握手信号完成前拼子卡与后拼板的热插拔通信握 手,以实现热插拔;并通过打开后拼板的第二隔离模块、第一隔离模块使后拼板与前拼子卡 的通信通道开通,实现前拼子卡与后拼板间的正常通信,后拼板为前拼子卡加载驱动程序 并完成前拼子卡的初始化,使前拼子卡能够正常工作。其中,后拼板具有总线通信、控制、上 电、复位、中断控制、逻辑控制等功能。这里,本实施例进行的热插拔是通过热插拔前拼子卡 来实现的。 这里,本实施例的板卡热插拔的方法实现流程可参照图2所示,主要包括以下步 骤 步骤201,前拼子卡接入系统; 将前拼子卡插入后拼板,接入正在运行的系统。 步骤202,后拼板的第二逻辑控制模块判断是否有前拼子卡插入,如果没有前拼子 卡插入,则等待一定时间间隔后继续判断是否有前拼子卡插入;如果有前拼子卡插入,则执 行步骤203 ; 前拼子卡在插入后拼板后且未上电之前,前拼子卡的下拉电阻会将前拼子卡插入 指示MATEJ)K信号拉低至低电平,表示有前拼子卡插入,因此第二逻辑控制模块读取寄存 器得到MATEJ)K信号,进而通过判断MATEJ)K信号是否为低电平来判断是否有前拼子卡插 入,例如若逮取到的MATEJ)K信号是逻辑0,则表示有前拼子卡插入。需要指出的是,本实 施例的低电平用逻辑0表示,而高电平用逻辑1表示。 由于在前拼子卡上电完成以前,前拼子卡的第一逻辑控制模块没有电,所以没有 PLDJ)K信号输出。PLDJ)K在后拼板上被电阻拉低至低电平(用逻辑O表示),因此后拼板 的第二逻辑控制模块接收的PLD_OK信号为逻辑0,则不会打开第二隔离模块和第二通信接 口模块。 另外,需要说明的是,后拼板可定时轮询如等待一定时间间隔后继续判断是否有 前拼子卡插入、或检测前拼子卡是否连接于后拼板等,或者主动选择时间来查询是否有前 拼子卡插入、或检测前拼子卡是否连接于后拼板等,这可根据实际情况选择判断是否有前 拼子卡插入的方式。其中,所述一定时间间隔可结合实际情况根据经验而定,如采用10ms 为一个时间间隔。 步骤203,前拼子卡进行上电,后拼板则输出复位信号使前拼子卡处于复位状态;
这里,后拼板会一直输出reset信号复位前拼子卡,前拼子卡的上电复位模块的 reset信号被其下拉电阻拉低至低电平,使前拼子卡上的芯片一直处于复位状态。这种状态 可持续到通信握手完成后或者第二隔离模块打开之后,即在通信通道正常后,后拼板会输 出一个标准的复位信号给前拼子卡,这就是复位延时的过程。此处,使前拼子卡上的芯片一 直处于复位状态主要是为了增加可靠性。 另外,前拼子卡输出的中断INT信号并不起作用,因为第二隔离模块没有打开,后 拼板的INT信号输入在进入第二逻辑控制模块之前被电阻拉高至高电平(用逻辑1表示), 而INT信号为逻辑O时才有效,所以此时前拼子卡输出的中断信号不起作用。
步骤204,前拼子卡上电完成后,向后拼板发送通信请求,后拼板与前拼子卡进行 热插拔通信握手并判断热插拔通信是否握手成功,如果握手不成功,则隔一定时间继续判 断热插拔通信是否握手成功;如果握手成功,则执行步骤205 ; 后拼板收到通信请求后,得知前拼子卡上电完成,通过第二逻辑控制模块与前拼 子卡的第一逻辑控制模块完成热插拔通信握手。随着前拼子卡上电,第一逻辑控制模块输 出PLDJ)K信号被拉高,前拼子卡上电完成后,PLDJ)K信号被拉至为高电平。因此,后拼板 通过判断其第二逻辑控制模块接收到的PLD_OK信号是否为高电平来判断热插拔通信是否 握手成功。例如若接收到的PLDJ)K信号为逻辑l,则代表热插拔通信握手成功。
另外,若热插拔通信握手不成功,如接收到的PLD_OK信号为逻辑0,则拼板逻辑控 制模块隔一定时间如10ms重新读取寄存器来获取PLD_OK信号,以再次判断热插拔通信是 否握手成功。需要说明的是,本实施例在读取到PLDJ)K信号为逻辑1后,为了增强可靠性, 可再连续读取2 3次的PLD_OK信号,以保证PLD_OK信号确实处于为高电平状态。
步骤205,后拼板返回允许通信应答信号给前拼子卡的第一逻辑控制模块;
热插拔通信握手成功后,后拼板的第二逻辑控制模块向第一逻辑控制模块反馈允 许通信应答信号如握手应答(PLD_OK_BK)信号,表示热插拔通信握手成功。需要说明的是, PLD_OK_BK信号为备用信号,可根据实际情况进行选择性反馈,也就是说,后拼板并不是必 须要反馈握手应答信号。 步骤206,后拼板打开第二隔离模块和第二通信接口模块,前拼子卡与后拼板通信 正常; 后拼板打开其第二隔离模块和第二通信接口模块,使后拼板和前拼子卡之间的通 信通道得以开通,使reset信号、INT信号及其它逻辑信号能够在前拼子卡和后拼板之间 进行正常通信。其中,第二逻辑控制模块分别向第二隔离模块和第二通信接口模块发送开 关控制信号0E2、0E4,来打开第二隔离模块和第二通信接口模块,而前拼子卡的第一隔离模 块和第一通信接口模块则是默认打开,这是因为只要有一个隔离模块关闭即可起到隔离作 用。 需要说明的是,也可通过设置由第一逻辑控制模块通过开关控制信号0E1、 0E3来 打开第一隔离模块和第一通信接口模块。 步骤207,后拼板向前拼子卡输出标准的复位信号,复位前拼子卡; 后拼板通过第二逻辑控制模块给前拼子卡的上电复位模块持续输出标准的reset
信号如输出200ms的低电平信号后输出高电平,将reset信号拉高使reset信号由低电平
后变为高电平,并一直保持高电平状态。这样,便给了前拼子卡一个正常的上电复位(power
on reset)使得前拼子卡上的芯片处于高电平状态,即正常工作状态。 步骤208,前拼子卡上电复位后,启动第一逻辑控制模块相应逻辑; 所述第一逻辑控制模块的相应逻辑包括局部总线L0CAL_BUS转换、寄存器赋初
值等。其中,PLD逻辑芯片上电完成后,第一逻辑控制模块寄存器赋初始值,该初始值也可
为寄存器的默认值。 步骤209,在前拼子卡上电复位完成后,后拼板延迟一定的时间间隔读取前拼子卡 的单板信息; 为了稳定和安全,后拼板在上电复位完成后再延迟一定时间间隔如10ms后,允许后拼板底层的驱动程序读取寄存器,获取前拼子卡的单板信息如子卡类型。其中,所述子卡 类型是指根据前拼子卡功能和接口的不同而分为不同的子卡类型,后拼板通过读取寄存 器值得知前拼子卡类型的号码。 步骤210,后拼板根据读取到的前拼子卡板的单板类型,启动第二通信接口模块为 前拼子卡的FPGA等其他功能芯片加载相应的驱动程序; 后拼板根据前拼子卡不同的类型加载相应程序,如启动前拼子卡FPGA等其他功 能芯片的程序加载;然后,后拼板给前拼子卡加载相应的程序代码。 需要指出的是,后拼板会根据逻辑控制依次加载芯片的驱动程序,以完成前拼子 卡初始化。此处,FPGA及其他功能芯片能够实现前拼子卡不同的对外接口,本步骤先对 FPGA的程序进行加载。本实施例通过更换前拼子卡来实现支持不同的对外接口,如光纤接 口、网线接口等。其中,所述对外接口是指对外的用户接口,也就是前拼子卡插入后拼板后 作为整体为用户提供的对外接口,用户根据不同需要可以接网线或者光纤等。而且本实施 例对前拼子卡和后拼板之间的通信接口是没有要求的,如PCI接口 、局部总线LOCAL_BUS接 口等均可作为前拼子卡和后拼板的通信接口。 步骤211,后拼板判断驱动程序是否加载成功,如果未加载成功,则返回步骤210 ; 如果加载成功,则执行步骤212 ; 其中,后拼板的第二逻辑控制模块通过检测是否收到program—ok信号,来判断 FPGA的驱动程序是否加载成功。如果收到加载成功pr0gram_0k信号,则FPGA的驱动程序 加载成功。 步骤212,后拼板为其他芯片加载驱动程序,完成前拼子卡的初始化,使前拼子卡 正常工作; 这里,对前拼子卡进行驱动程序加载是指先对FPGA的程序进行加载,然后加载
其他芯片需要加载的驱动程序,完成所有芯片的驱动程序加载,这样芯片即可按照相应的
程序正常工作了。本实施例中,前拼子卡的FPGA加载完成和其他功能芯片初始化的完成可
作为前拼子卡的热插入操作的完成标志。 步骤213,结束本次热插前拼子卡的操作流程。 至此,以上描述了热插前拼子卡的实现过程,而对于热拔的操作流程则相对简单, 主要包括以下两种方式 1、后拼板通过控制前拼子卡的电源开关P0WER_EN的使能状态来控制前拼子卡的 电源,即后拼板先将P0WER_EN由使能状态调整为截止状态,关闭前拼子卡的电源,再拔出 前拼子卡,如此便实现了热拔前拼子卡; n、后拼板关闭第二隔离模块,然后拔出前拼子卡,这也能够实现热拔前拼子卡。 可见,本发明能够方便灵活的实现各种对外接口降低了对支持热插拔电路接口的 要求,能够根据具体情况对系统进行选择性设计,实现上灵活、易用,所以更具有普遍性。
对于上述的各实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本 领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步 骤可以采用其他顺序或者同时进行。 在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部 分,可以参见其他实施例的相关描述即可。以上所述,仅为本发明的较佳实施例而已,只是
11用来说明和解释本发明,并非用于限定本发明的保护范围。在本发明的精神和权利要求保 护范围之内,对本发明所作的任何修改、等同替换,都落入本发明的保护范围。
权利要求
一种板卡的热插拔装置,其特征在于,包括前拼子卡、后拼板;其中,前拼子卡,用于插接于后拼板,进行上电复位并与后拼板进行热插拔通信握手,以及初始化操作;后拼板,用于供前拼子卡插接,与前拼子卡进行热插拔通信握手,并复位前拼子卡,为前拼子卡加载驱动程序,完成前拼子卡的初始化。
2. 根据权利要求1所述的板卡的热插拔装置,其特征在于,所述前拼子卡还用于 实现各种对外接口 ;以及,在上电完成后,向后拼板发送通信请求,后拼板在收到前拼子卡的通信请求后,与前拼 子卡进行热插拔通信握手。
3. 根据权利要求1所述的板卡的热插拔装置,其特征在于,所述后拼板还用于 检测是否有前拼子卡插入;和/或, 检测前拼子卡是否连接于后拼板;和/ 或,后拼板具体用于读取前拼子卡的单板信息,并根据读取得到的前拼子卡的单板信息, 分别为前拼子卡的现场可编程门阵列FPGA及其他功能芯片加载驱动程序。
4. 根据权利要求1、或2、或3所述的板卡的热插拔装置,其特征在于,所述前拼子卡包括第一逻辑控制模块,用于逻辑控制各模块间的信号,进行热插拔通信握手,以及控制第 一隔离模块、第一通信接口模块的开关;上电复位模块,用于根据后拼板的复位命令和电源开关命令复位前拼子卡、打开或关 闭前拼子卡的电源;第一隔离模块,用于实现前拼子卡与后拼板之间接口的物理隔离;第一通信接口模块,用于提供前拼子卡的各种总线接口、及与后拼板之间的通信通道;FPGA及其他功能芯片,用于根据实际需要来实现不同的对外接口。
5. 根据权利要求1、或2、或3所述的板卡的热插拔装置,其特征在于,所述后拼板包括第二逻辑控制模块,用于逻辑控制各模块间的信号,进行热插拔通信握手,控制第二隔 离模块、第二通信接口模块的开关,以及向前拼子卡发送复位信号、程序加载指示信号和电 源开关命令;第二隔离模块,用于实现与前拼子卡之间接口的物理隔离; 第二通信接口模块,用于提供各种总线接口、以及与前拼子卡之间的通信通道。
6. 根据权利要求5所述的板卡的热插拔装置,其特征在于,所述后拼板还用于 后拼板关闭前拼子卡的电源,拔出前拼子卡;或者, 后拼板关闭第二隔离模块,拔出前拼子卡。
7. —种板卡的热插拔方法,其特征在于,包括前拼子卡插接于后拼板,进行上电复位并与后拼板进行热插拔通信握手; 热插拔通信握手成功后,后拼板为前拼子卡加载驱动程序,完成前拼子卡的初始化。
8. 根据权利要求7所述的板卡的热插拔方法,其特征在于,该方法还包括 后拼板关闭前拼子卡的电源,拔出前拼子卡;或者,后拼板关闭第二隔离模块,拔出前拼子卡。
9. 根据权利要求7所述的板卡的热插拔方法,其特征在于,所述前拼子卡进行上电复位并与后拼板进行热插拔通信握手包括前拼子卡进行上电,并使前拼子卡在上电过程中处于复位状态直到上电完成;上电完 成后,前拼子卡通知后拼板上电完成并向后拼板发送通信请求,后拼板与前拼子卡进行热 插拔通信握手;在握手成功时,后拼板返回允许通信应答信号给前拼子卡,并打开第二隔离模块和第 二通信接口模块,使前拼子卡与后拼板通信正常;后拼板向前拼子卡输出正常的复位信号,复位前拼子卡。
10. 根据权利要求7、或8、或9所述的板卡的热插拔方法,其特征在于,所述后拼板为前 拼子卡加载驱动程序包括后拼板在前拼子卡上电复位完成后,延迟一定的时间间隔读取前拼子卡的单板信息, 并根据读取得到的前拼子卡的单板信息,分别为前拼子卡的FPGA及其他功能芯片加载驱 动程序。
全文摘要
本发明公开了一种板卡的热插拔装置,包括前拼子卡、后拼板;其中,前拼子卡,用于插接于后拼板,进行上电复位并与后拼板进行热插拔通信握手,以及初始化操作;后拼板,用于供前拼子卡插接,与前拼子卡进行热插拔通信握手,并复位前拼子卡,为前拼子卡加载驱动程序,完成前拼子卡的初始化。相应地,本发明提供一种板卡的热插拔方法,包括前拼子卡插接于后拼板,进行上电复位并与后拼板进行热插拔通信握手;热插拔通信握手成功后,后拼板为前拼子卡加载驱动程序,完成前拼子卡的初始化。因此,本发明能够简单方便灵活地热插拔板卡,并能降低热插拔对系统的影响。
文档编号G06F13/40GK101727430SQ200910221629
公开日2010年6月9日 申请日期2009年11月11日 优先权日2009年11月11日
发明者刘发举 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1