[发明专利]基于PCI/PCIe总线多CPU系统启动方法及模块有效
| 申请号: | 200910249673.X | 申请日: | 2009-12-11 |
| 公开(公告)号: | CN101876911A | 公开(公告)日: | 2010-11-03 |
| 发明(设计)人: | 金伟;赵先林;胡扬忠;邬伟琪 | 申请(专利权)人: | 杭州海康威视数字技术股份有限公司 |
| 主分类号: | G06F9/445 | 分类号: | G06F9/445;G06F9/48;G06F13/20 |
| 代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 逯长明;王宝筠 |
| 地址: | 310012*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 pci pcie 总线 cpu 系统启动 方法 模块 | ||
1.一种基于PCI/PCIe总线的多CPU系统启动方法,其特征在于,预先建立包括各从CPU初始化信息、所在PCI空间的基址和PCI拓扑位置、及状态信息的数据结构,并在每条总线上选定至少一个从CPU作为该总线的组长CPU,所述方法包括:
主CPU将数据结构加载到自身内存,并将自身内存映射到PCI空间;
主CPU加载所述数据结构至各总线的组长CPU;各总线的组长CPU在接收到所述数据结构后,依据所述数据结构中本CPU的初始化信息启动初始化,并在初始化成功后通知主CPU更新本CPU的状态信息;
各总线上,完成初始化的组长CPU在主CPU的控制下,加载所述数据结构至本总线上其它从CPU;其它从CPU在接收到所述数据结构后,依据所述数据结构中本CPU的初始化信息启动初始化,并在初始化成功后通知主CPU更新本CPU的状态信息;至全部CPU均初始化成功,完成所述系统的启动。
2.根据权利要求1所述的基于PCI/PCIe总线的多CPU系统启动方法,其特征在于,所述方法还包括:
主CPU初始化系统中其它从CPU,具体为:
主CPU查找数据结构中的状态信息,选出一个待初始化CPU,加载数据结构至该待初始化CPU;该待初始化CPU在接收到所述数据结构后,依据所述数据结构中本CPU的初始化信息启动初始化,并在初始化成功后通知主CPU更新本CPU的状态信息。
3.根据权利要求2所述的基于PCI/PCIe总线的多CPU系统启动方法,其特征在于,其它从CPU在初始化成功后,还包括:
初始化成功的从CPU获取主CPU赋予其初始化其所在总线上其它从CPU的权利,并在主CPU的控制下,按照组长CPU初始化其它从CPU的步骤初始化其所在总线上的其它从CPU。
4.根据权利要求1、2或3所述的基于PCI/PCIe总线的多CPU系统启动方法,其特征在于,完成初始化的组长CPU或初始化成功的从CPU在主CPU的控制下,加载所述数据结构至本总线上其它从CPU具体为:
完成初始化的组长CPU或初始化成功的从CPU作为请求CPU向主CPU发出请求,主CPU查找所述数据结构,根据请求CPU的PCI空间的基址和PCI拓扑位置,选出该请求CPU所在总线上的一个待初始化CPU,判断该待初始化CPU是否已经被其它CPU请求,是则重新选择一个待初始化CPU再次执行上述判断步骤,否则将该待初始化CPU作为被请求CPU,赋予该请求CPU初始化该被请求CPU的权利;请求CPU加载所述数据结构至被请求CPU后,继续向主CPU发出请求。
5.根据权利要求1、2或3所述的基于PCI/PCIe总线的多CPU系统启动方法,其特征在于,主CPU与各从CPU之间的通讯通过PCI内存读写及PCI中断实现,所述通讯格式为共享缓冲格式,且保证主CPU与各从CPU的缓冲区不重叠。
6.根据权利要求1、2或3所述的基于PCI/PCIe总线的多CPU系统启动方法,其特征在于,所述主CPU将自身内存映射到PCI空间具体为:通过设置主CPU的用于映射到PCI空间的寄存器中相关参数,将自身内存映射到PCI空间。
7.根据权利要求1、2或3所述的基于PCI/PCIe总线的多CPU系统启动方法,其特征在于,在每条总线上选定设备号为0的从CPU作为该总线的组长CPU。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州海康威视数字技术股份有限公司,未经杭州海康威视数字技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910249673.X/1.html,转载请声明来源钻瓜专利网。





