




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第33卷第5期中 国 科 学 技 术 大 学 学 报Vol 33 No 5 2003年10月 JOURNAL OF UNIVERSITY OFSCIENCE AND TECHNOLOGY OF CHINA Oct 2 0 0 3 文章编号 0253 2778 2003 05 0510 08 高可用冗余热切换 CompactPCI 系统总线仲裁设计 杨小军 宋克柱 束礼宝 中国科学技术大学近代物理系快电子学实验室 合肥 230027 摘要 CompactPCI 以下简称 CPCI 高可用冗余热插拔系统平台 采用 1 1 双主系 统槽冗余热切换结构 支持主系统槽冗余备份 故障板隔离 热切换以及动态配置 达 到 99 999 的高可用性 高可用系统总线仲裁器的设计是保障该系统热切换的关键 逻辑 其性能直接影响整个系统的可靠性和传输带宽等指标 本文提出了一种 CPCI 总线仲裁器 并在 EPLD erasable programmable logic device 可编程逻辑器件 中实现 该逻辑 实际测量的结果表明该方案是一种公平 高效的总线仲裁器 完全满足高可 用 CPCI 系统平台的要求 关键词 CompactPCI 总线仲裁 高可用 热切换 中图分类号 TP302 1 文献标识码 A 0 引言 计算机技术的发展 使得人们更多的利用计算机系统来处理很多关键任务 一旦计算机 系统出现故障 那就意味着大量的财产损失和人力等资源的浪费 有时甚至是致命的灾难 这就直接导致了对高可用 high availability 以下简称 HA 计算机系统的需求不断增长 开 放式无源背板 CPCI 总线 既具有 PCI 总线的高性能 又具有欧洲卡 Eurocard 结构的高可 靠性 非常适合在可靠性要求较高的工业和军事设备中的应用 硬件冗余是高可靠性系统中常用的策略 如果一个部件失效 它的后备部件将自动取代 失效的部件 保持系统继续运行 硬件的热切换是指在系统运行中间用新的部件代替失效的 部件 以保持硬件冗余 CPCI 热切换规范将可靠级分成几个等级 基础热切换 basic hot swap 只支持 I O 接口板 以下简称 I O 板 硬件逻辑的自动连接 而软件连接则需要操作 者来完成 完全的热切换 full hot swap 支持 I O 板的自动连接 并以 PCI 寄存器为基础 通过一种分布信号表示途径来完成软件连接 高可用性热切换 high availability HA 不仅支 持 I O 板热切换 还支持系统板的热切换 其硬件连接由软件控制自动完成 采用一种附加 收稿日期 2002 10 21 作者简介 杨小军 男 1976 年生 博士研究生 研究方向 数据采集技术 高速数据交换与处理 E mail yxj cn 的 集中式信号产生机制来全面控制每个槽位的硬件连接 一旦某个槽位出现问题可以断电 并与系统隔离 从而消除故障影响 我们所设计的系统就是属于 HA 系统 1 系统结构 我们设计的 HA 系统属于双主系统槽冗余热插拔系统 系统框图如下 图中的 P2P 桥 是 PCI to PCI 桥片的简称 图 1 双主系统槽冗余系统 Fig 1 Redundancy System 该系统为 16 槽位双主系统槽结构 其中 I O 接口板 12 块 主系统板和热切换控制 PCI 桥接板 以下简称桥板 各两块 如图 1 12 个 I O 板分成两段 每 6 个合成一个 CPCI 域 这 12 个 I O 板满足 CPCI 热切换规范的 HA 模式 同时还可以组成 2N 或N 1 冗余备 份系统 由图 1 可以看出 由一个系统板和一个桥板组成的一个系统板和桥板对就可以对两 个 Domain 的 12 个 I O 板进行管理和热切换控制 而我们的 HA 系统采用两套系统板和桥 板来做冗余备份 使得整个系统的可用性有了更大提高 能满足可靠性 99 999 年故障时 间小于 5 分钟的苛刻要求 对于 I O 板热切换和冗余备份 这里不做赘述 本文将重点讨论为了保障主系统板和 桥板对热切换过程的顺利进行所设计的总线仲裁器系统的原理与实现 2 CPCI HA 系统总线仲裁器的原理及实现 2 1 PCI总线仲裁器的基本原理 PCI 总线是共享总线 在 PCI 总线上可以连接多个 PCI 主设备 在任意时刻 可能会有 一个或多个 PCI 主设备要求使用总线进行数据传输 为了不发生总线竞争 各个 PCI 主设 备在使用总线前 必须提出申请 request 得到 PCI 总线仲裁器的总线许可 grant 后 才能 511 第 5 期 高可用冗余热切换 CompactPCI 系统总线仲裁设计 使用总线 在任何时刻 只能有一个 PCI 主设备在进行总线交易 PCI 总线仲裁器就是对总 线上的所有主设备请求使用总线进行控制 使得每一个时刻只有一个 PCI 主设备作为总线 控制器 避免总线冲突 提高系统的整体性能 PCI 总线仲裁是集中仲裁 也称独立仲裁 仲 裁机制示意图如图 2 所示 图 2 PCI 总线仲裁机制示意图 Fig 2 Arbitration mechanism of PCI Bus PCI 总线的信号协定 PCI 总线仲裁主要通过 REQ 和 GNT 两个信号来实现 REQ 为设备请求总线信号 GNT 为仲裁器允许总线请求信号 PCI 总线仲裁器是一种基于事件而不是基于时间的隐式仲裁器 所谓基于事件 即对 PCI 主设备的每次访问总线都必须经过仲裁得到许可后才能进行 访问停止 总线许可立即 收回 PCI 总线传输机制允许在当前获得总线许可的主设备正在进行总线交易时 进行下一 次总线使用权的仲裁 在执行总线仲裁时 PCI 仲裁器没有浪费任何总线周期 因此称为隐 式仲裁 隐式仲裁可以减少仲裁本身的延时 提高仲裁效率 总线停靠 所谓总线停靠 bus parking 是指总线仲裁器在没有设备使用总线或者也没 有设备请求使用总线的情况下 根据一定方式选定一个设备给它发出 GNT 信号 从而选 择一个缺省的总线拥有者 缺省所依据的方式一般采用固定为某一设备或选择最后一次使 用总线的设备等 有时也可指定自己 仲裁器 为缺省的拥有者 这样做的目的是使总线不会 发生漂移 floating 即保持所有设备的 CMOS 输入缓冲区不产生震荡和过大的漏电流 这 是设计总线仲裁器必须要考虑的问题 原则上讲 总线仲裁优先级算法与 PCI 总线技术规范无关 设计者可以根据实际需要 自由设计 只要满足设备所要求的访问延迟 一般采用的仲裁算法有两种 一种是固定优先 级算法 一种是循环优先级算法 固定优先级是指各个 PCI 主设备的优先级是事先确定的 在总线仲裁过程中是不会变化的 其优点就是等级分明 可以对那些有重要数据传输 或大 容量数据传输 经常使用总线的设备赋予较高的优先权 缺点是容易导致设备 撑死 和 饿 512 中国科学技术大学学报 第 33 卷 死 现象 而循环优先级算法则不同 各个主设备的优先级在总线仲裁器过程中是根据总线 控制权的使用状态而变化的 是最公平总线仲裁 其缺点就是在有大容量数据传输时效率不 高 2 2 CPCI 总线仲裁器的设计 CPCI 总线是 PCI 总线的一种工业化加固 它也满足上述的 PCI 总线规范和仲裁协议 根据图 1 可以得到一个 CPCI HA 系统总线仲裁算法循环图 如图 3 图 3 CPCI HA 系统总线仲裁系统算法 Fig 3 Algorithm of Bus Arbitration of CPCI HA System 其中 A0 和 B0 代表 PCI to PCI 桥片 P1 和 P2 分别代表主系统槽 1 的PCI 主桥和其他 PCI 主设备 S1 和 S2 分别代表主系统槽 2 的 PCI 主桥和其他 PCI 主设备 A1 A6 分别代 表 CPCI DomainA 的 6 个 I O 板 B1 B6 分别代表 CPCI DomainB 的 6 个 I O 板 可见 CPCI HA 系统从总线角度来看就是两段 CPCI 总线被两段Local PCI 总线连接在 一起 这两段 Local PCI 总线互为备份 系统可以配置成多种工作模式 一是单系统模式 在 普通的不需要高可靠性冗余热插拔的应用中 本系统可以直接配置成一个单系统的 CPCI 系统 只用一对系统板和桥板来控制12 个 I O 板 二是主备工作模式 两套系统板和桥板都 在工作 但只有一对系统板和桥板对控制 12 个 I O 板 而另一对系统板和桥板对处于 Standby 状态 两套系统 通过 Heartbeat 和 Checkpoint 协议进行互连通信 一旦协议失败 Standby 系统将取代现行工作系统对 12 个 I O 板进行管理控制 三是主主工作模式 两套 系统板和桥板都在工作 而且两套系统都只控制一个 CPCI 域的 6 个 I O 板 当某一个系统 出现问题时 另外一个系统会接管该系统 管理两个 CPCI 域的 12 个 I O 板 对于单系统模式 可以把它直接看成一种普通 CPCI 总线的扩展 如图 3 中所示 不考 虑 Local PCI 系统槽 2 没有系统板和桥板对的热切换 也就没有总线的隔离和总线控制权 的转移 因此 针对这种模式的总线仲裁的设计 可以直接将整个总线系统分成三段 PCI 总 线来处理 两段CPCI 总线的仲裁可以直接使用 P2P 提供的内部PCI 总线仲裁器 Local PCI 总线仲裁器可按上述 PCI 总线仲裁器的原理选用循环优先级来实现 这不是本系统的设计 目标 故不再多说明 而对于主备模式 或是主主模式 可以进行主系统槽的热切换 才是我们 CPCI HA 系统 的重点所在 下面来详细说明 513 第 5 期 高可用冗余热切换 CompactPCI 系统总线仲裁设计 在 CPCI HA 系统中 无论是上述主备模式还是主主模式 当主系统槽出现故障或是为 了升级系统更新软件时 都需要进行主系统槽的热切换 这就必须先进行总线控制权的转 移 然后才能将故障系统或需要升级的系统与 CPCI 系统隔离 总线控制权的切换是本 HA 系统的核心 为了保证在总线控制权的切换时总线上没有数据传送 在切换前必须终止总线 上的数据传送 以免数据丢失 这就必须在切换前先锁定总线 使总线上所有的设备因无法 到总线许可 GNT 而停止总线上所有的活动 由于桥片片内具有上行和下行 FIFO 在总线 转移时 为了不丢失数据 必须要等 FIFO 的数传输完成后才能切换 因此 在总线锁定时还 必须分两级锁定 在总线锁定的具体实现时 即先锁定 CPCI 总线 延时适当的时间 等桥片 内的数据缓冲区的数据传输完毕后 再锁定 Local PCI 总线 对某段 CPCI 总线来说 锁定 CPCI 总线 即收回该域的 6 个 I O 槽位的总线仲裁许可信号 grant 尽管我们选用的桥片 Intel 21154 具有 9个二次侧 PCI 主设备的仲裁能力 但 21154 的仲裁器无法满足冗余系统 槽CompactPCI HA 系统需要分级锁定总线的要求 因此 需要设计一个外部仲裁器完成 CPCI 总线的仲裁 2 3 CPCI 总线仲裁器的逻辑实现 为了实现总线控制权的切换 在设计仲裁器时 除了使用 PCI 总线规范所规定的信号 外 还必须增加两个额外的信号来实现总线的二级锁定 可以设计一个 Lock IO 信号 来 控制 CPCI 总线 6 个 I O 板的总线锁定 设计一个 Lock HS 信号 来控制 Local PCI 总线 对桥片的锁定 我们以主备模式为例来分析仲裁器的工作过程 在正常工作中 假设 Domain A 的一个 I O 板 B 要向 Domain B 的一个 I O 板 3 中写数据 从图 3 中可以看出 首先 I O 板 B 要向 CPCI 总线仲裁器申请使用DomainA 的CPCI 总线 得到许可后将数据写入P2P 桥片A 中 桥片 A 再向 Local PCI 总线仲裁器申请使用 Local PCI 总线 把数据写到控制 Domain B 的 桥片 1 中 桥片 1 再向 Domain B 的 CPCI 总线仲裁器申请使用 Domain B 的 CPCI 总线 把 数据写到 Domain B 的 I O 板 3中 这样就完成了这次数据的跨域传输 当在总线上有数据 传送时 需要热切换系统板和桥板对 热切换控制模块就必须向总线仲裁系统发出 Lock IO 信号 Lock IO 信号有效后 仲裁器将关闭所有 I O 板的总线使用请求许可 并且锁定 Local PCI 总线 只有桥片可以得到总线使用权 根据所使用桥片中的上下行 FIFO 容量的 大小 确定一个合适的延迟时间 保证所有 FIFO 中的数据可以倒空后 热切换控制模块就 将发出 Lock HS 信号 该信号有效后 所有总线 包括 Local PCI 总线 使用请求都将被屏 蔽 并且使所有 Grant 信号处于高阻态 被接管的系统板和桥板的 P2P 桥片也受热切换逻 辑的控制进入 Jtag 状态 所有二次侧信号都处于高阻态 实现被接管系统与 CPCI 总线的隔 离 同时 接管板也在热切换逻辑的控制下退出Jtag 高阻态 并逐步放开 Lock HS 和 Lock IO 信号 开始接管 CPCI 系统 恢复系统 继续运行 并且不改变系统接换前对所有 I O 的 控制信息 5 根据上面的分析 我们设计的 CPCI HA 系统的总线仲裁器有三个总线仲裁器组成 包 含一个 Local PCI 总线仲裁器和两个对称的 CPCI 总线仲裁器 其中 CPCI 总线仲裁器要点 如下 总线停靠在桥片 而不象普通 PCI 总线那样 停靠在最后一个使用的设备 加入 两级总线所定信号 Lock IO 和 Lock HS 可以灵活关闭总线许可信号 GNT 一共有 514 中国科学技术大学学报 第 33 卷 7 个主设备 6 个 I O 板和一个桥片 Local PCI 总线仲裁器相对简单一点 只要考虑当 Lock IO 信号有效时 锁定总线 只允许桥片申请总线就可以了 我们用两片 EPLD 来实现这三个总线仲裁器 桥板上的只做一个 CPCI 总线仲裁器 而 系统板上的包含一个 LocalPCI 总线仲裁器和一个 CPCI 总线仲裁器 两个 CPCI 总线仲裁 器相同 LocalPCI 总线仲裁器相对简单一点 我们就选用一个 CPCI 总线仲裁器为例来说明 一下其具体的实现 具体设计代码时 还要注意几个 PCI 总线仲裁器的协定 a 若设置了 GNT 信号无效而 FRAME 有效时 当前的数据传输是合法的且继续 进行下去 b 如果总线不是处在空闲状态 则一个设备的 GNT 信号有效和另一个设备 的 GNT 信号无效之间必须有一个延迟时钟 否则会在 AD线上和 PAR 线上出现时序竞争 c 当 FRAME 无效时 为了响应更高优先级主设备的服务 可以在任意时刻置 GNT 和 REQ 无效 若总线占用者在 GNT 和 REQ 设置后 在处于空闲状态 16 个 PCI 时 钟后 仍未开始数据传输 仲裁器允许当前主机 打破 这个状态 仲裁器也可以在任意时刻 移去 GNT 以便服务于一个更高优先级的设备 同时屏蔽此设备的 REQ 信号 直到该 信号被设备置高为止 根据前面讲的 PCI 仲裁器的基本原理 我们设计如下框图中的 CPCI 总线仲裁器逻辑 框图 其中以一个带指针的可编程循环优先级编码器为核心逻辑 加上两级总线锁定机制 结 图 4 CPCI 总线仲裁器详细逻辑模块图 Fig 4 Logical module of CPCI Bus Arbitrator 515 第 5 期 高可用冗余热切换 CompactPCI 系统总线仲裁设计 合上面的几个总线仲裁协定 实现了完整的符合我们要求的高效 公平 带系统板热切换要 求的 CPCI 总线仲裁器 3 测试结果 我们对 CPCI HA 系统仲裁器进行过长时间的测试 首先是测试仲裁器的时序 公平性 及仲裁效率 测试方法 将 7 个 Reqn 6 0 都满负荷运行 即所有的槽位主设备都申请使用 总线进行数据传输 用逻辑分析仪观察总线申请和总线许可的波形 同时让这 7 个主设备都 进行数据传输 经过长时间的运行 观察各路数据传输总量 6 个 I O 槽位的单板及工作模 式完全相同 测试结果 经过 72小时的运行 观察到各路数据传输总量非常接近 没有发生 饿死 现 象 也没有死机 用逻辑分析仪记录的仲裁器的仲裁波形如图 5 所示 从图中所示波形可以 看出 我们设计的这个 CPCI 仲裁器是一个公平 高效的仲裁器 图中只有 5 个 I O 板在工 作 更关键的测试就是主备切换 总线切换时数据的传输是否正常 我们采用主备方式 不 停的倒换 连续运行 72小时 测试的结果非常令人满意 没有死机 重起现象 数据的传输也 很正常 达到我们预先的设计目标 图 5 CPCI 总线仲裁器测试波形 Fig 5 Test wave of CPCI Bus Arbitrator 516 中国科学技术大学学报 第 33 卷 4 总结 本文所述的 CPCI HA 系统支持双主系统槽热切换 可提供 528MB s 的峰值带宽 满足 99 999 的高可用性要求 在航天航空 军事等有高可用系统要求的领域有着广阔的应用前 景 而 CPCI 总线仲裁系统是该系统的核心逻辑之一 本文就介绍了一种简便灵活的设计来 实现公平可靠 高效合理的总线仲裁 参考文献 1 CompactPCI Specification PICMG2 0 D3 0 S September 24 1999 2 CompactPCI Hot Swap Specification PICMG2 1 R1 0 S May 14 1998 3 PCI Local Bus Specification Revision 2 2 S December 18 1998 4 宋克柱 杨小军 王砚方 冗余系统槽 Com pactPCI 高可靠平台 J 系统工程与电子技 术 2002 24 8 121 124 5 宋克 柱 杨小军 王 砚方 边界扫 描测试 JTAG 的原理及应用设 计 J 电子技术 2001 28 10 Bus Arbitrator System Design of CompactPCI High Availability Red
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 细胞荧光技术基本原理与应用
- 上级医院参观汇报
- 糖尿病足干性坏疽治疗
- 宣泄心理学讲解
- 外科创伤急救技术
- 女职工特殊疾病互助保障讲解
- 软件技术方案演讲
- 乳房炎诊断技术
- 社会恐惧症病理解析与应对策略
- 社戏精彩片段讲解
- SWITCH暗黑破坏神3超级金手指修改 版本号:2.7.6.90885
- 水工闸门课件
- 通信原理教案
- 2.AD830机台板面操作讲解
- 《诺丁山》经典台词
- 职高英语词汇表优质资料
- YY/T 0752-2009电动骨组织手术设备
- GB/T 40080-2021钢管无损检测用于确认无缝和焊接钢管(埋弧焊除外)水压密实性的自动电磁检测方法
- GB/T 2-2001紧固件外螺纹零件的末端
- 路基土石方工程施工方案
- 教育评价学全套ppt课件完整版教学教程
评论
0/150
提交评论