一种处理pci系统异常的方法及装置的制作方法

文档序号:6575172阅读:278来源:国知局
专利名称:一种处理pci系统异常的方法及装置的制作方法
技术领域
本发明涉及网络通信技术领域,特别涉及一种处理PCI系统异常的方法
和装置。
背景技术
夕卜部设备互连(PCI, Peripheral Component Interconnect)总线因其具有 开放架构、易用性和可扩展性好等优点得到广泛应用。图l为一种PCI系统 的结构示意图,主机设备为CPU内置的PCI控制器,通常也4皮成为PCI主 机桥控制器,PCI系统中可以通过PCI总线挂接多个PCI设备,该PCI设备
可以是固定设备也可以是插卡式设备,可以是自举设备也可以是普通设备。
主机设备上电后,首先完成自身的基本配置之后,会通过PCI总线扫描各 PCI设备,并对各PCI设备进行相应的配置,配置完成之后,主机设备就可 以通过PCI总线与各PCI设备进行数据交互。
在PCI系统中,如果某块PCI设备作为目标设备时发生故障,则可能会 引起整个PCI系统故障而无法正常工作,例如可能会出现以下问题其一、 主设备访问目标设备时,目标设备故障引起在声明交易之后迟迟不能准备好 数据接收,即在第三个时钟周期中发送有效的DEVSEL信号后,在第四个 周期及以后一直不发送有效的TRDY信号,从而使得主机设备一直处于等待 中,同时目标设备也不能发出重试或交易废止信号,从而造成PCI系统被此 次交易长时间独占,总线挂死。其二、如果目标设备为自举设备,其在上电 后不依靠主机设备的配置,而是自己进行初始化配置,在该目标i殳备完成初 始化配置之前处于锁定(Locked)状态,主机设备无法对其进4亍访问,对其 的访问交易将被重试。如果该自举设备在初始化过程中出现异常,无法完成初始化配置,则主机设备对其进行的访问将被无限重试,从而造成总线^皮长 时间占用。除此之外还可能出现其它异常状况导致总线被长时间占用,从而
导致整个PCI系统的崩溃。

发明内容
有鉴于此,本发明提供了一种处理PCI系统异常的方法和装置,从而避 免因PCI系统异常引起总线被长时间占用所导致的整个PCI系统崩溃。
一种处理外部设备互连PCI系统异常的方法,在PCI系统中的主机设备 与PCI设备之间设置异常监控隔离装置,该异常监控隔离装置执行以下步 骤
A、 监听主机设备通过PCI总线对作为目标设备的PCI设备的访问;
B、 监听到访问出现异常时,隔离被访问的目标设备;
C、 被隔离的目标设备被访问时,代替该被访问的目标设备向所述主机设备 发送目标废止应答。
一种处理PCI系统异常的装置,该装置应用于包含主机设备和PCI设备的 PCI系统,该装置包括控制单元和隔离单元;
所述控制单元,用于监听主机设备通过PCI总线对作为目标设备的PCI设 备的访问;被所述隔离单元隔离的目标设备被访问时,代替该净皮访问的目标设 备向所述主才几设备发送目标废止应答;
所述隔离单元,用于在所述控制单元监听到访问出现异常时,隔离被访 问的目标设备。
由以上4支术方案可以看出,本发明通过在PCI系统中的主才几设备与PCI 设备之间设置异常监控隔离装置,使该异常监控隔离装置对主机设备通过 CPI总线对目标设备的访问进行监听;监听到访问出现异常时,隔离被访问 的目标设备;当被隔离的目标设备被访问时,代替该被访问的目标设备向主 机设备发送目标废止应答。这种方式能够使得主机设备对目标设备的访问异 常及时被发现,并通过代替被隔离的被访问目标设备向主才几i殳备发送目标废止应答的方式,使得主机设备能够跳出对该发生异常的目标设备的访问,从
而避免PCI总线被长时间占用所可能导致的整个PCI系统崩溃,提高了 PCI 系统的可靠性,并最大限度减少了 PCI设备异常时系统的性能损耗。


图1为一种PCI系统的结构示意图2为本发明实施例提供的主要方法流程图3为本发明实施例提供的详细方法流程图4为本发明实施例提供的包含异常监控隔离装置的PCI系统结构图; 图5为本发明实施例提供的异常监控隔离装置的具体结构图。
具体实施例方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体 实施例对本发明进行详细描述。
本发明在PCI系统中主机设备与PCI设备之间设置异常监控隔离装置, 该异常监控隔离装置所执行的主要方法可以如图2所示,主要包括以下步 骤
步骤201:监听主机设备通过PCI总线对作为目标设备的PCI设备的访问。
步骤202:监听到主机设备通过PCI总线对目标设备的访问出现异常时, 隔离该目标设备。
步骤203:处于隔离状态的目标设备被主机设备访问时,代替被访问的 目标设备向主机设备进行目标废止应答。
异常监控隔离装置对主机通过PCI总线对目标设备的访问进行的监听, 可以包括对PCI总线事件的监听,或对目标设备未应答时长,或同时对两 者进行监听。
下面结合具体实施例对上述方法进行详细描述。图3为本发明实施例提供的详细方法流程图,如图3所示,该方法可以包括以下步骤
步骤301:异常监控隔离装置监听PCI总线事件和目标设备未响应时长,
如果监听到PCI总线事件,执行步骤302;如果监听到目标设备未响应时长
达到预设的时长阈值,执行步骤314。
步骤302:确定监听到的PCI总线事件类型,如果为交易开始事件,执
行步骤303;如果为主机设备准备好事件,执行步骤304;如果为目标设备
应答事件,执行步骤308。
本步骤中,对PCI总线事件类型的监听可以为对PCI总线上的信号进行
监听,如果监听到有效的FRAME信号,则确定监听到的事件类型为交易开
始事件;如果监听到有效的IRDY信号,则确定监听到的事件类型为主机设
备准备好事件。
步骤303:锁存PCI总线上的数据,对锁存的数据进行译码确定本次访 问的目标设备,转至执行步骤301。
当监听到交易开始事件时,会对PCI总线上的地址和数据进行锁存,用 于译码目标设备。
步骤304:判断本次访问的目标设备是否处于隔离状态,如果是,执行 步骤305;否则执行步骤306。
在后续描述中将会涉及到如何标记目标设备处于隔离状态,在本实施例 中可以设置一个状态寄存器存储各PCI设备是否处于隔离状态,例如设置 32比特的状态寄存器,每一个比特对应一个设备,O标识对应PCI设备处于 非隔离状态,1标识对应PCI设备处于隔离状态,复位值为0。
步骤305:代替目标设备向主机设备进行目标废止应答,转至执行步骤
301。
本步骤中,异常监控隔离装置一旦确定被访问的目标设备处于隔离状 态,则说明该目标设备已被确定为异常,则为了避免对该异常的目标设备进 行访问造成PCI系统崩溃,异常监控隔离装置代替目标设备向主机设备进行 目标废止应答,使得主机设备能够继续对其它PCI设备进行访问。对目标设备进行隔离的具体情况和过程将在后续描述中出现。
步骤306:启动对目标设备未应答时长的计时。
监听到主设备准备好的总线事件后,异常监控隔离装置开始等待目标设 备的应答,如果目标设备不能在设定时长内应答,则说明目标设备存在异常。
步骤307:若当前交易是配置目标设备地址,则将访问的目标设备地址 信息记录到地址范围表中,转至执行步骤301。
该地址范围表中存储被访问的PCI设备的地址,即各目标设备地址,用 于对目标设备进行识别。该地址范围表中的表项可以通过该步骤307生成, 也可以通过异常监控隔离装置与主机设备之间的配置通道进^f亍配置。
另夕卜,还可能存在一种情况是,主机设备可能会多次对目标设备地址进 行配置,因此,在确定出当前交易是配置目标地址时,可以首先判断地址范 围表中是否已经存在该被访问的目标设备的地址信息,如果不存在,则将访 问的目标设备的地址信息记录到地址范围表中;如果已经存在,则直接转至 步骤301,从而避免地址范围表中存储重复的目标设备地址信息。
步骤308:将对目标设备未应答时长的计时清零。
目标设备应答表明总线未^皮挂死,因此,可以停止对目朽:i殳备未应答时 长的计时。
步骤309:判断应答事件的类型是否为重试,如果是执行步骤310;否 则执行步骤313。
目标设备应答可能存在多种情况,重试对规范而言是一种合法应答,但 实际应用中会可能会带来异常状况,因此,在本发明中需要对重试进行特殊 处理,即对重试次数进行计数,并在超限时隔离该目标设备。
步骤310:将重试次it加1。
步骤311:判断重试次数是否达到预设的重试门限值,如果是,执行步
骤312,否则,转至步骤301。
可以预先设定主机设备对目标设备所能进行的重试次凄t,在达到该重试
次数时,认为该目标设备出现异常,无法完成初始化配置,需要对该目标设备进行隔离,使得主机设备结束对该目标设备的访问。
步骤312:标记目标设备处于隔离状态,将重试次数清零,转至步骤301。
步骤313:将重试次数清零,判断应答事件是否属于用户设置的异常模 式,如果是,执行步骤314;否则,转至步骤301。
如果应答事件不是重试,则将重试次数清零,因为只有连续重试的次数 达到重试门限值才被认为异常。
由于除了重试之外,应答事件还可能是其它异常状况,用户可以预先配 置一些异常状况,主机设备通过配置通道将这些异常状况配置给异常监控隔 离装置,因此,在本步骤中会进一步判断是否为用户设置的其它异常模式。 如果不考虑其它异常模式,或者用户并没有设置其它异常模式,则在将重试 次数清零后,直接转至步骤301。
可以将用于预先配置的异常状况存储在总线异常模式表中,每个表项定 义一种总线异常,执行本步骤时,通过查表的方式判断应答事件是否属于用 户设置的异常模式。
步骤314:将目标设备潜在异常次数加1。
如果是,执行步骤316;否则,转至执行步骤301。
步骤316:判断本次访问的交易是否结束,如果是,执4亍步骤317;否 则执行步骤318。
当DEVSEL信号无效,TRDY信号也无效时,即目标i殳备结束声明准 备好数据传输,且声明交易结束时,可以确定本次访问的交易结束,否则本 次访问的交易未结束。
步骤317:标记目标设备处于隔离状态,转至步骤301。
步骤318:标记目标设备处于隔离状态,并代替目标设备向主机设备进 行目标废止应答,转至步骤301。
如果交易尚未结束,则异常监控隔离装 通过向主机设备发送目标废止 应答来通知主机设备结束本次交易。
12在本步骤中,在标记目标设备处于隔离状态之前,异常监控隔离装置会
断开PCI总线,并可以进一步向主机设备发送错误报告,代替目标设备向主 机设备进行目标废止应答之后,打开PCI总线,允许PCI信号透传。
另外,在某些确定目标设备发生异常的情况并不一定适合立即隔离目标 设备,例如对于重试次数超限的情况,最好是在下一次目标i殳备被访问的时
刻再隔离目标设备。因此,可以在步骤312中不直接标记目才示i殳备处于隔离 状态,而将目标设备标记为需隔离状态,将重试次数清零后,转至步骤301; 并且,在步骤306和步骤307之间增加一个步骤判断目标设备是否处于需 隔离状态,如果是,将对目标设备未应答时长的计时清零,执行步骤318; 否则继续执行步骤307。
目标设备是否处于需隔离状态,也可以通过设置一个状态寄存器来标 记,例如,设置一个32比特的状态寄存器,每一个比特对应一个PCI设备, O标识对应PCI设备处于正常状态,1标识对应PCIi殳备处于需隔离状态, 等待下次被访问时,隔离该设备。
通过上述流程可以异常监控隔离装置代替发生异常的目标设备向主机 设备进行目标废止应答,使得访问都能够在规定的PCI交易周期中完成,不 会占用太多带宽,可以最大限度地消除对PCI系统的影响。
更优地,异常监控隔离装置在隔离目标设备时,可以通过配置通道发送 错误报告给主机设备,该错误报告通常以中断的形式发送给主^L设备。主机 设备接收到该错误报告后,可以进一步到异常监控隔离装置中查询被隔离的 目标设备信息,也可以选择不进行查询而执行其它操作,这可以根据具体的 策略来执行。
另外,主机设备可以通过配置通道对异常的目标设备进4亍解除隔离,即 通过配置通道通知异常监控隔离装置将目标设备标记为正常状态。并且在对 目标设备解除隔离之后,主机设备可以对解除隔离的目标i殳备进行复位或重 新初始化;另外,考虑到某些设备出现异常并不一定是物理损坏,因此也可 以由用户对解除隔离后的目标设备进行复位或热插拔。
13在上述流程中,当目标设备未响应时长超限或监听到用户定义的其它异 常模式时,认为目标设备存在潜在异常,对潜在异常次数进行计数,当潜在 异常次数超限后,再对目标设备进行隔离。这种通过设置潜在异常次数的方 式是一种容错处理,也可以不设置潜在异常次数的处理,当目标设备未响应 时长超限或监听到用户定义的其它异常模式,则直接对目标设备进行隔离, 这种情况可以视为设置潜在异常次数的限值为1。
以上是对本发明所提供的方法进行的详细描述,下面对本发明所提供的装
置进行详细描述。图4为本发明实施例提供的包含异常监控隔离装置的PCI系 统结构图,如图4所示,该异常监控隔离装置设置在PCI系统中主机设备与PCI 设备之间,该异常监控隔离装置可以包括控制单元400和隔离单元410。
控制单元400,用于对主机设备通过PCI总线对作为目标设备的PCI设备 的访问进行监听;被隔离单元410隔离的目标设备被访问时,4戈替该被访问的 目标设备向主机设备发送目标废止应答。
隔离单元410,用于在控制单元400监听到访问出现异常时,隔离被访问 的目标设备。
图5为本发明实施例提供的异常监控隔离装置的具体结构图,如图5所示, 控制单元400包括PCI接口单元500和核心处理单元510。
其中,PCI接口单元500可以具体包括侦听单元501和PCI总线驱动单 元502。
侦听单元501,用于监听主机设备通过PCI总线对目标设备的访问,并将 监听到的状况上才艮给核心处理单元510。
PCI总线驱动单元502,用于确定被隔离单元410隔离的目标设备被访问时, 代替该被访问的目标设备向主机设备发送目标废止应答。
核心处理单元510,用于在侦听单元501监听到访问出现异常时,通知隔 离单元410隔离被访问的目标设备。
具体地,侦听单元501将监听到的PCI总线事件上报供给核心处理单元
510。核心处理单元510可以包括识别子单元511和异常确定子单元512。 识别子单元511,用于确定侦听单元501上报的PCI总线事件或被访问的 目标设备的未响应时长。
异常确定子单元512,用于在识别子单元511确定PCI总线事件为重试应 答事件且重试次数达到预设的重试门限值时,或者确定PCI总线事件为应答事 件且属于预设的异常应答模式时,或者确定被访问的目标设备的未响应时长达 到预设的时长阈值时,确定访问出现异常,并通知隔离单元410隔离被访问的 目标设备。
对于识别子单元511识别出的不同状况,异常确定子单元512会做出不同 的处理,具体可以包括以下几种状况
第一种状况识别子单元511确定PCI总线事件为主机设备准备好事件时, 异常确定子单元512判断被访问的目标设备是否已被隔离,如果是,触发PCI 总线驱动单元502代替被访问的目标设备向主机设备发送目标废止应答;否则, 启动对被访问的目标设备未应答时长的计时。
第二种状况识别子单元511确定PCI总线事件为主机设备准备好事件时, 核心处理单元510还包括重试计数子单元513。
异常确定子单元512将对目标设备未应答时长的计时清零,判断应答事件 类型是否为重试,如果是,向重试计数子单元513发送计数通知,否则,向重 试计数子单元513发送清零通知;接收到重试门限判断通知后,判断重试计数 子单元513记录的重试次数是否达到预设的重试门限值,如果是,向隔离单元 410发送第一隔离通知;并向重试计数子单元513发送清零通知;接收到应答 模式判断通知后,如果应答事件属于预设的异常应答模式,则判断本次访问的 交易是否结束,如果是,向隔离单元410发送第一隔离通知;否则向隔离单元 410发送第二隔离通知,并触发PCI总线驱动单元代替被访问的目标设备向主 机i殳备发送目标废止应答。
重试计数子单元513,用于接收到计数通知后,将记录的重试次数加l,向 异常确定子单元512发送重试门限判断通知;接收到清零通知后,向异常确定子单元512发送应答模式判断通知。隔离单元410,用于接收到第一隔离通知时,标记浮皮访问的目标设备处于 隔离状态;接收到第二隔离通知时,断开PCI总线,标记被访问的目标设备处 于隔离状态,在PCI总线驱动单元发送目标废止应答后,打开PCI总线。第三种情况异常确定子单元512确定^t访问的目标设备未响应时长达到 预设的时长阈值时,判断本次访问的交易是否结束,如果是,向隔离单元410 发送第一隔离通知;否则向隔离单元发送第二隔离通知410,并触发PCI总线;设备向主机i;隔离单元410,用于接收到第一隔离通知时,标记净皮访问的目标设备处于 隔离状态;接收到第二隔离通知时,断开PCI总线,标记被访问的目标设备处 于隔离状态,在PCI总线驱动单元发送目标废止应答后,打开PCI总线。基于第二种情况和第三种情况,异常确定子单元512,还可以用于在执行 判断本次访问的交易是否结束的操作之前,将目标设备潜在异常次数加1,判 断潜在异常次数是否超限,如果是,继续执行判断本次访问的交易是否结束的 操作;否则结束处理。另外,控制单元400还可以包括本地总线单元520,用于接收主机单元 通过配置通道发送来的异常状况配置信息或解除隔离的目标设备信息,并将该 异常状况配置信息或解除隔离的目标设备信息提供给核心处理单元510。核心处理单元510根据异常状况配置信息确定访问是否出现异常,或者将 解除隔离的目标设备信息提供给隔离单元410。隔离单元410,还可以用于根据解除隔离的目标设备信息,解除对应目 标设备的隔离。另外,核心处理单元510还可以在隔离目标设备时通过本地总线单元 520向主才几设备发送4晉误报告。更进一步地,控制单元400还可以包括时钟合成单元530,用于利用外 部的参考时钟合成异常监控隔离装置所需要的时钟。上述结构中的隔离单元410能够实现控制单元400对目标i殳备的隔离,并在访问正常的目的i殳备时,进行双向PCI信号的透传,并且并不会对PCI信号的质量产生阻碍和干扰。由以上描述可以看出,本发明通过在PCI系统中的主机i殳备与PCI设备 之间设置异常监控隔离装置,使该异常监控隔离装置对主机设备通过CPI 中线对目标设备的访问进行监听;监听到访问出现异常时,隔离被访问的目 标设备;当被隔离的目标设备被访问时,代替该被访问的目标设备向主机设 备发送目标废止应答。这种方式能够使得主机设备对目标设备的访问异常及 时被发现,并通过代替被隔离的被访问目标设备向主机设备发送目标废止应 答的方式,使得主机设备能够跳出对该发生异常的目标设备的访问,从而 PCI总线被长时间占用所可能导致的整个PCI系统崩溃,提高了 PCI系统的 可靠性,并最大限度减少了 PCI设备异常时系统的性能损耗。另外,本发明中针对几种常用的异常状况,提供了具体的解决方案,可 以看出,本发明是一种通用的解决PCI系统异常的方法,可以方便有效地实 现特定PCI总线异常的监控和隔离,可扩展性高。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本 发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在 本发明保护的范围之内。
权利要求
1、一种处理外部设备互连PCI系统异常的方法,其特征在于,在PCI系统中的主机设备与PCI设备之间设置异常监控隔离装置,该异常监控隔离装置执行以下步骤A、监听主机设备通过PCI总线对作为目标设备的PCI设备的访问;B、监听到访问出现异常时,隔离被访问的目标设备;C、被隔离的目标设备被访问时,代替该被访问的目标设备向所述主机设备发送目标废止应答。
2、 根据权利要求1所述的方法,其特征在于,所述步骤A包括所述异 常监控隔离装置监听PCI总线事件和^f皮访问的目标i殳备的未响应时长。
3、 根据权利要求2所述的方法,其特征在于,步骤B中所述监听到访问出 现异常包括当监听到PCI总线事件为重试应答事件且重试次数达到预设的重试门限值 时,确定监听到访问出现异常;或者,当监听到的PCI总线事件为应答事件且属于预设的异常应答模式时,确定 监听到访问出现异常;或者,当监听到被访问的目标设备的未响应时长达到预设的时长阈值时,确定监 听到访问出现异常。
4、 才艮据权利要求2所述的方法,其特征在于,所述步骤C包括当监听到 PCI总线事件为主机设备准备好事件时,判断被访问的目标设备是否已被隔离, 如果是,所述异常监控隔离装置代替所述被访问的目标设备向所述主机设备发 送目标废止应答,转至执行所述步骤A;否则,启动对所述被访问的目标设备 未应答时长的计时,转至执^f于所述步骤A。
5、 才艮据权利要求4所述的方法,其特征在于,所述主^L设备预先将各目标 设备的地址配置在所述异常监控隔离装置中的地址范围表中;或者,在启动对所述被访问的目标设备未应答时长的计时之后,且转至执行所述步骤A之前还包括若当前交易是配置被访问目标地址,则所述异常监控隔离 装置获取被访问目标地址信息,并将访问的目标设备地址信息记录到地址范围 表中。
6、根据权利要求2所述的方法,其特征在于,所述步骤B包括Bll、当监听到PCI总线事件为目标设备应答事件时,将对目标设备未应答时长的计时清零,判断应答事件类型是否为重试,如果是,执行步骤B12,否则,执行步骤B13;B12、将重试次数加l,判断重试次数是否达到预设的重试门限值,如果是标记被访问的目标设备处于隔离状态将重试次数清零,转至所述步骤A;否则,转至所述步骤A;B13、将重试次数清零,判断应答事件是否属于预设的异常应答模式,如果 是执行步骤B14,否则转至所述步骤A;B14、判断本次访问的交易是否结束,如果是,标记被访问的目标设备处于 隔离状态,转至所述步骤A,否则断开PCI总线,标记^皮访问的目标"&备处于打开PCI总线,转至所述步骤A。
7、 根据权利要求2所述的方法,其特征在于,所述步骤B包括 当监听到被访问的目标设备的未响应时长达到预设的时长阔值时,判断本次访问的交易是否结束,如果是,标记被访问的目标设备处于隔离状态,转至 所述步骤A,否则断开PCI总线,标记被访问的目标设备处于隔离状态,并代 替所述祐:访问的目标设备向所述主机设备发送目标废止应答,打开PCI总线, 转至所述步骤A。
8、 根据权利要求6或7所述的方法,其特征在于,在所述判断本次访问的 交易是否结束之前还包括将目标设备潜在异常次数加1,判断潜在异常次数 是否超限,如果是,继续执行所述判断本次访问的交易是否结束的步骤;否则 转至所述步骤A。
9. 一种处理PCI系统异常的装置,该装置应用于包含主机设备和PCI设备的PCI系统,其特征在于,该装置包括控制单元和隔离单元;所述控制单元,用于监听主机设备通过PCI总线对作为目标设备的PCI设备的访问;被所述隔离单元隔离的目标设备被访问时,代替该-陂访问的目标设备向所述主机设备发送目标废止应答;所述隔离单元,用于在所述控制单元监听到访问出现异常时,隔离坤皮访问的目标设备。
10、 根据权利要求9所述的装置,其特征在于,所述控制单元包括PCI 接口单元和核心处理单元;其中,PCI接口单元包括侦听单元和PCI总线驱动单元;所述侦听单元,用于监听主机设备通过PCI总线对目标设备的访问,并将 监听到的状况上报给所述核心处理单元;所述PCI总线驱动单元,用于确定被所述隔离单元隔离的目标设备被访问 时,代替该被访问的目标设备向所述主机设备发送目标废止应答;所述核心处理单元,用于在所述侦听单元监听到访问出现异常时,通知所 述隔离单元隔离被访问的目标设备。
11、 根据权利要求IO所述的装置,其特征在于,所述侦听单元将监听到的 PCI总线事件上报供给所述核心处理单元;所述核心处理单元包括识别子单元,用于确定侦听单元上报的PCI总线事件或被访问的目标设备 的未响应时长;异常确定子单元,用于在识别子单元确定PCI总线事件为重试应答事件且 重试次数达到预设的重试门限值时,或者确定PCI总线事件为应答事件且属于 预设的异常应答模式时,或者确定被访问的目标设备的未响应时长达到预设的 时长阈值时,确定访问出现异常,并通知所述隔离单元隔离^皮访问的目标设备。
12、 根据权利要求11所述的装置,其特征在于,所述识别子单元确定PCI 总线事件为主机设备准备好事件时,所述异常确定子单元判断纟皮访问的目标设 备是否已被隔离,如果是,触发所述PCI总线驱动单元代替所述被访问的目标设备向所述主机设备发送目标废止应答;否则,启动对所述^皮访问的目标设备 未应答时长的计时。
13、 根据权利要求11所述的装置,其特征在于,所述核心处理单元还包括 重试计数子单元;所述识别子单元确定PCI总线事件为主机设备准备好事件时,所述异常确 定子单元将对目标设备未应答时长的计时清零,判断应答事件类型是否为重试, 如果是,向重试计数子单元发送计数通知,否则,向所述重试计^t子单元发送 清零通知;接收到重试门限判断通知后,判断所述重试计数子单元记录的重试 次数是否达到预设的重试门限值,如果是,向所述隔离单元发送第一隔离通知; 并向所述重试计数子单元发送清零通知;接收到应答模式判断通知后,如果应 答事件属于预设的异常应答才莫式,则判断本次访问的交易是否结束,如果是,向所述隔离单元发送第 一隔离通知;否则向所述隔离单元发送第二隔离通知, 并触发所述PCI总线驱动单元代替所述被访问的目标设备向所述主机设备发送 目标废止应答;所述重试计数子单元,用于接收到计数通知后,将记录的重试次数加1, 向所述异常确定子单元发送重试门限判断通知;接收到清零通知后,向所述异 常确定子单元发送应答模式判断通知;所述隔离单元,用于接收到所述第 一隔离通知时,标记4皮访问的目标设备 处于隔离状态;接收到所述第二隔离通知时,断开PCI总线,标记被访问的目 标设备处于隔离状态,在所述PCI总线驱动单元发送目标废止应答后,打开PCI 总线。
14、 根据权利要求11所述的装置,其特征在于,所述异常确定子单元,确 定净皮访问的目标设备未响应时长达到预设的时长阈值时,判断本次访问的交易 是否结束,如果是,向所述隔离单元发送第一隔离通知;否则向所述隔离单元 发送第二隔离通知,并触发所述PCI总线驱动单元代替所述被访问的目标设备 向所述主机i殳备发送目标废止应答;所述隔离单元,用于接收到所述第一隔离通知时,标记被访问的目标设备处于隔离状态;接收到所述第二隔离通知时,断开PCI总线,标记被访问的目 标设备处于隔离状态,在所述PCI总线驱动单元发送目标废止应答后,打开PCI 总线。
15、 根据权利要求13或14所述的装置,其特征在于,所述异常确定子单 元,还用于在执行所述判断本次访问的交易是否结束的操作之前,将目标设备 潜在异常次数加1,判断潜在异常次数是否超限,如果是,继续执行所述判断 本次访问的交易是否结束的操作;否则结束处理。
16、 根据权利要求IO所述的装置,其特征在于,所述控制单元还包括本 地总线单元,用于接收所述主机单元通过配置通道发送来的异常状况配置信息 或解除隔离的目标设备信息,并将该异常状况配置信息或解除隔离的目标设备 信息提供给所述核心处理单元;所述核心处理单元根据所述异常状况配置信息确定访问是否出现异常,或 者将解除隔离的目标设备信息提供给所述隔离单元;所述隔离单元,还用于根据所述解除隔离的目标设备信息,解除对应目标 设备的隔离。
全文摘要
一种处理外部设备互连(PCI)系统异常的方法及装置,在PCI系统中的主机设备与PCI设备之间设置异常监控隔离装置,该异常监控隔离装置执行以下步骤A.监听主机设备通过PCI总线对作为目标设备的PCI设备的访问;B.监听到访问出现异常时,隔离被访问的目标设备;C.被隔离的目标设备被访问时,代替该被访问的目标设备向所述主机设备发送目标废止应答。本发明能够避免PCI总线被长时间占用所可能导致的整个PCI系统崩溃,提高了PCI系统的可靠性,并最大限度减少了PCI设备异常时系统的性能损耗。
文档编号G06F11/30GK101625656SQ20091008908
公开日2010年1月13日 申请日期2009年7月28日 优先权日2009年7月28日
发明者郭道荣 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1