一种写合并属性内存空间的分配方法及装置制造方法及图纸

技术编号:8532780 阅读:227 留言:0更新日期:2013-04-04 15:45
本发明专利技术实施例公开了一种写合并属性内存空间的分配方法及装置,包括:进行设备的资源扫描时,确定各个设备所需资源的类型和大小;所有设备的资源扫描完成后,确定所有第一设备所需写合并内存空间的总大小;并且,确定给第一设备分配写合并内存空间时所使用的起始地址;为所有第一设备共同分配一个内存空间,并且,从所述一个内存空间中为每个第一设备分配子内存空间。本发明专利技术实施例能够更为可靠的为设备分配写合并属性的内存空间,且分配方法相对简单。

【技术实现步骤摘要】

本专利技术涉及通信领域,尤其涉及一种写合并(WC,Write Combine)属性内存空间的分配方法及装置。
技术介绍
外设部件互连标准快速通道(PCIe, Peripheral ComponentInterconnectExpress)总线技术作为一种系统内设备互连的方案,已经非常普及。PCIe总线技术具备高性能、低延迟、低功耗、扩展性好、抗干扰能力强等特点,当前标准已演进到PCIExpress V3. O,总线频率最高达8. 0G,数据位宽32路(lane),可提供高达8. 0*32*2=512Gbps的传输带宽。鉴于PCIe传输的优势,目前已经把它应用到系统间互连,衍生出非透明桥(NTB, None transparent Bridge)技术。参见图1,是现有技术中一种应用PCIe总线技术的NTB传输系统结构图,并标出了具体的数据流向,第一系统和第二系统之间通过两个PCIe交换器(Switch)的NT端口(port)之间的PCIe总线传输数据。参见图1,第一系统发起向第二系统的内存写数据可以分为以下5个过程过程1、第一系统的第一中央处理器(CPU)从第一内存条获取数据,并向第本文档来自技高网...

【技术保护点】
一种写合并属性内存空间的分配方法,其特征在于,包括:进行设备的资源扫描时,确定各个设备所需资源的类型和大小,所述类型包括:写合并内存空间;设备的资源扫描完成后,根据各个第一设备所需写合并内存空间的大小确定所有第一设备所需写合并内存空间的总大小,所述第一设备是资源类型包括写合并内存空间的设备;并且,确定给第一设备分配写合并内存空间时所使用的起始地址,所述起始地址位于为内存条分配的内存空间和为设备分配的非写合并的内存空间之后;按照所述总大小从所述起始地址开始为所有第一设备共同分配一个内存空间,并且,按照各个第一设备所需写合并内存空间的大小从所述一个内存空间中为每个第一设备分配子内存空间。

【技术特征摘要】
1.一种写合并属性内存空间的分配方法,其特征在于,包括进行设备的资源扫描时,确定各个设备所需资源的类型和大小,所述类型包括写合并内存空间;设备的资源扫描完成后,根据各个第一设备所需写合并内存空间的大小确定所有第一设备所需写合并内存空间的总大小,所述第一设备是资源类型包括写合并内存空间的设备;并且,确定给第一设备分配写合并内存空间时所使用的起始地址,所述起始地址位于为内存条分配的内存空间和为设备分配的非写合并的内存空间之后;按照所述总大小从所述起始地址开始为所有第一设备共同分配一个内存空间,并且, 按照各个第一设备所需写合并内存空间的大小从所述一个内存空间中为每个第一设备分配子内存空间。2.根据权利要求1所述的方法,其特征在于,还包括对于每个第一设备,将第一设备对应的子内存空间的起始地址写入该第一设备中的写合并基地址寄存器中;所述与合并基地址寄存器是指与合并内存空间对应的基地址寄存器;将所述一个内存空间的地址信息写入RC中的写合并基地址寄存器和写合并限界寄存器中;所述写合并基地址寄存器是指写合并内存空间对应的基地址寄存器;所述写合并限界寄存器是指写合并内存空间对应的限界寄存器;设置所述一个内存空间为写合并属性。3.根据权利要求1或2所述的方法,其特征在于,确定各个设备所需资源的类型包括确定设备所需资源为内存空间时,检测设备的写合并属性标识位;根据所述写合并属性标识位确定该设备的资源类型是否为写合并内存空间。4.根据权利要求3所述的方法,其特征在于,预先将设备基地址寄存器中第3至第6比特位中的至少一个比特位设置为该设备的写合并属性标识位;所述检测设备的写合并属性标识位包括检测设备的基地址寄存器中的写合并属性标识位。5.根据权利要求1至4任一项所述的方法,其特征在于,所有设备的资源扫描完成后, 为所有第一设备共同分配一个内存空间之前还包括判断所述起始地址之后空闲内存空间的总大小是否不小于所述所有第一设备所需写合并内存空间的总大小;判断所述起始地址之后空闲内存空间的总大小不小于所述所有第一设备所需写合并内存空间的总大小时,执行所述为所有第一设备共同分配一个内存空间的步骤。6.根据权利要求1至5任一项所述的方法,其特征在于,确定给第一设备分配写合并内存空间时所使用的起始地址包括获取预先存储的内存地址,将该内存地址作为所述起始地址;或者,根据CPU支持的最大地址解码范围,将所述最大地址解码范围的预设比例对应的地址作为所述起始地址;或者,将高端内存条对应的内存空间之后、距离高端内存条对应的内存空间预设长度的内存地址作为所述起始地址。7.根据权利要求1至6任一项所述的方法,其特征在于,为所有第一设备共同分配一个内存空间之后,将所述一个内存空间的地址信息写入RC中的写合并基地址寄存器和写合并限界寄存器中之前,还包括根据2的整数次幂规则调整所述一个内存空间的大小;根据地址对齐规则调整所述一个内存空间的起始地址。8.根据权利要求1至7任一项所述的方法,其特征在于,设置所述一个内存空间为写合并属性包括调用操作系统提供的接口,通过该接口将CPU中所述一个内存空间对应的属性标识为写合并属性;或者,调用BIOS提供的接口,通过该接口将CPU中所述一个内存空间对应的属性标识为写合并属性。9.一种写合并属性内存空间的分配装置,其特征在于,包括第一确定单元,用于进行设备的资源扫描时,确定各个设备所需资源的类型和大小,所述类型包括写合并内存空间;第二确定单元,用于设备的资源扫描完成后,根据各个第一设备所需写合并内存空间的大小确定所有第一设备所需写合并内存空间的总大小,所述第一设备是资源类型包括写合并内存空间的设备;第三确定单元,用于确定给第一设备分配写合并内存空间时所使用的起始地址,所述起始地址位于为内存条分配的内存空间和为各个设备分配的非写合并的内存空间之后;分配单元,用于按照所述总大小从所述起始地址开始为所有第一设备共同分配一个内存空间,并且,按照各个第一设备所需写合并内存空间的大小从所述一个内存空间中为每个第一设备分配子内存空间。10.根据权利要求9所述的装置,其特征在于,还包括第一写入单元,用于对于每个第一设备,将第一设备对应的子内存空间的起始地址写入第一设备中的写合并基地址寄存器中;所述写合并基地址寄存器是指写合并内存空间对应的基地址寄存器;第二写入单元,用于将所述一个内存空间的地址信息写入RC中的写合并基地址寄存器和与合并限界寄存器中;所述与合并基地址寄存器是指与合并内存空间对应的基地址寄存器;所述写合并限界寄存器是指写合并内存空间对应的限界寄存器;声明单元,用于设置所述一个内存空间为写合并属性。11.根据权利要求9或10所述的装置,其特征在于,第一确定单元具体用于确定设备所需资源为内存空间时,检测设备的写合并属性标识位;根据所述写合并属性标识位确定该设备的资源类型是否为写合并内存空间。12.根据权利要求11所述的装置,其特征在于,预先将设备基地址寄存器中第3至第6 比特位中的至少一个比特位设置为该设备的写合并属性标识位;第一确定单元通过以下方式实现所述检测设备的写合并属性标识位检测设备基地址寄存器中的写合并属性标识位。13.根据...

【专利技术属性】
技术研发人员:彭胜勇
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1