[发明专利]多CPU系统的启动方法及多CPU系统有效
申请号: | 201010584649.4 | 申请日: | 2010-12-10 |
公开(公告)号: | CN102033768A | 公开(公告)日: | 2011-04-27 |
发明(设计)人: | 黄毅;栾焕志;赵先林;胡扬忠;邬伟琪 | 申请(专利权)人: | 杭州海康威视数字技术股份有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445;G06F15/167 |
代理公司: | 上海明成云知识产权代理有限公司 31232 | 代理人: | 成春荣;竺云 |
地址: | 310012 浙江省杭*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | cpu 系统 启动 方法 | ||
技术领域
本发明涉及计算机技术领域,特别涉及多CPU的启动技术。
背景技术
当前,在基于外围器件互联(Peripheral Component Interconnect,简称“PCI”)/PCIe(高速外围器件互联)总线的多CPU(中央处理器)系统中,如何让这些CPU快速启动,使系统尽快进入工作状态,事关整个系统启动性能。当CPU数量非常庞大时,更显得尤为重要。
现有的启动方法基本有两种,第一种是从非易失存储介质(如闪存,硬盘)启动,第二种是从PCI启动。PCI启动方法的基本思想是主控CPU通过PCI/PCIe总线,把从CPU启动所需的二进制文件下载到其对应的内存中,下载完成后,从CPU的Bootloader(引导系统启动的引导程序)就会从该内存处引导系统启动。
目前,主控CPU一般采用多线程的方法启动从CPU,为每个从CPU都发起一个线程,各个线程分别下载对应从CPU启动所需的二进制文件,下载完成后启动从CPU;或者稍加改进,主控CPU把从CPU分组,先启动每组的组长CPU,然后由组长CPU再分别启动各组其它的CPU。
然而,本发明的发明人发现,这些方法都需要把待下载的文件拷贝成多份数据,虽然是多线程或分组下载,但本质上数据传输是软件串行处理的,随着从CPU数量地增加,势必会消耗更多的系统资源和PCI e带宽,启动速度也会变得更慢。
发明内容
本发明的目的在于提供一种多CPU系统的启动方法及多CPU系统,节约系统资源和PCIe带宽,加快从CPU的启动速度。
为解决上述技术问题,本发明的实施方式提供了一种多CPU系统的启动方法,该多CPU系统包含:主控CPU、从CPU和PCIe交换器,该方法中,多播组被预先设置,需要下载不同启动文件的从CPU对应不同的多播组,需要下载相同启动文件的从CPU,对应同一个多播组,每个所述多播组分配有PCIe多播地址空间;
在每次启动系统时,执行以下步骤:
对于每个多播组,主控CPU将该多播组所对应的从CPU需要下载的启动文件,拷贝至该多播组的PCIe多播地址空间中;
对于每个多播组,通过PCIe交换器将该多播组的PCIe多播地址空间中存放的启动文件,多播到该多播组所对应的各从CPU的内存空间中;
从CPU根据内存空间中存放的启动文件,进行启动。
本发明的实施方式还提供了一种多CPU系统,包含主控CPU、从CPU和PCIe交换器;
主控CPU用于在每次启动系统时,对每个多播组,将该多播组所对应的从CPU需要下载的启动文件,拷贝至该多播组的PCIe多播地址空间中;其中,多播组被预先设置,需要下载不同启动文件的从CPU对应不同的多播组,需要下载相同启动文件的从CPU,对应同一个多播组,每个多播组分配有PCIe多播地址空间;
PCIe交换器用于对每个多播组,将该多播组的PCIe多播地址空间中存放的启动文件,多播到该多播组所对应的各从CPU的内存空间中;
从CPU用于根据内存空间中存放的启动文件,进行启动。
本发明实施方式与现有技术相比,主要区别及其效果在于:
多播组被预先设置,需要下载不同启动文件的从CPU对应不同的多播组,需要下载相同启动文件的从CPU,对应同一个多播组,每个多播组分配有PCI e多播地址空间。主控CPU只需把待下载的文件拷贝到事先完成初始化的各多播组的PCIe多播地址空间,支持多播的PCIe交换器就可以自动地把启动文件多播到相应的从CPU的启动内存中。通过使用PCIe多播功能下载从CPU所需的启动文件,由于多播过程由硬件完成,因而整个多播过程不占用PCIe外部带宽和系统资源,而且数据传输的速度非常快,既可以节约系统资源和PCIe带宽,又能加快从CPU的启动速度,启动文件越多,从CPU数量越多,就越能体现本发明的优越性。
进一步地,通过将多播组的PCIe多播地址空间映射到从CPU的内存BAR所在的PCI地址空间上,再由内存BAR将映射得到的PCI地址空间,映射到从CPU的内存空间。实现简单,保证了本发明方案的可行性。
进一步地,PCIe交换器可以是一级或多级拓扑结构,使得本发明的实施方式可灵活实现。而且,如果是多级拓扑结构,则底层PCIe交换器只需配置有所需要的多播组的PCIe多播地址空间即可(所需要的多播组的PCIe多播地址空间,为与该底层PCIe交换器连接的从CPU所对应的多播组的PCIe多播地址空间),避免了不必要的数据传输,节约了系统资源。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州海康威视数字技术股份有限公司,未经杭州海康威视数字技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010584649.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种页面内容处理方法及装置
- 下一篇:肝素钠沉淀过滤装置