一种内存地址总线扩展方法及装置制造方法及图纸

技术编号:17442004 阅读:31 留言:0更新日期:2018-03-10 14:41
本发明专利技术实施例提供一种内存地址总线扩展方法及装置,涉及计算机技术领域。该方法包括:处理器向本地控制器发送第一数据访问请求,第一数据访问请求包含第一目标数据的第一拍列地址信息,第一数据访问请求为写数据指令或者读数据指令;处理器向本地控制器发送第二数据访问请求,第二数据访问请求包含第一目标数据的第二拍列地址信息,第一拍列地址信息和第二拍列地址信息用于指示第一目标数据的地址,第二数据访问请求为写数据指令或者读数据指令,且与第一数据访问请求的指令类型相同;若第一数据访问请求为读数据指令,处理器接收本地控制器发送的第一目标数据;若第一数据访问请求为写数据指令,处理器向本地控制器发送第一目标数据。

【技术实现步骤摘要】
一种内存地址总线扩展方法及装置
本专利技术涉及计算机
,尤其涉及一种内存地址总线扩展方法及装置。
技术介绍
随着计算机技术的快速发展,计算机系统对于大容量内存的需求越来越强烈,现有的基于内存总线的扩容方法如图1所示,处理器通过内存总线接口连接到本地控制器,然后由本地控制器进行大容量的内存扩展。其中,本地控制器由ASIC/FPGA实现,且可以接收来自处理器的内存访问请求,并通过内置的内存控制器,将命令转化为对下级DRAM或NVM的访存。目前,在基于内存总线的扩容方法下,处理器访问本地控制器控制下的内存时,通常向本地控制器发送一条访问指令,该访问指令携带访问数据的地址,该地址通过处理器与本地控制器之间固定的地址总线位宽来传输,当本地控制器接收到该条访问指令时,根据访问数据的地址从内存中将访问数据取回内部缓冲区,之后,本地控制器将该访问数据从内部缓冲区返回给处理器。但是,处理器在通过上述方法访问内存时,并未对内存地址总线进行扩展,由于每一次传输地址时所使用的地址总线位宽是一定的,当扩展的内存容量较大,对应的扩展后的地址也会变大,若扩充后的大地址超出了地址线位宽所表示的范围,则基于现有的地址线位宽,无法通过标准的内存总线接口来传输扩充后的大地址。
技术实现思路
本专利技术的实施例提供一种内存地址总线扩展方法及装置,解决了现有技术中在对内存容量进行扩展时未对内存地址总线进行扩展的问题。为达到上述目的,本专利技术的实施例采用如下技术方案:第一方面,提供一种内存地址总线扩展方法,该方法包括:处理器向本地控制器发送为写数据指令或者读数据指令的第一数据访问请求,第一数据访问请求包含第一目标数据的第一拍列地址信息;处理器向本地控制器发送第二数据访问请求,第二数据访问请求包含第一目标数据的第二拍列地址信息,第一拍列地址信息和第二拍列地址信息用于指示第一目标数据的地址;其中,第二数据访问请求为写数据指令或者读数据指令,且第二数据访问请求与第一数据访问请求的指令类型相同;若第一数据访问请求为读数据指令,处理器接收本地控制器发送的第一目标数据;若第一数据访问请求为写数据指令,处理器向本地控制器发送第一目标数据。上述技术方案中,处理器通过发送第一数据访问请求和第二数据访问请求来完成一次完整的内存访问,即每一次发送的数据访问请求携带一拍列地址信息,通过两拍列地址信息来指示内存访问时的具体地址,从而可以通过现有的内存总线接口传输内存扩展后的大地址,实现内存地址总线的扩展。在一种可能的实现方式中,处理器与本地控制器之间用于传输地址信息的地址线位宽为N,该方法还包括:当第一目标数据的第一拍列地址信息与第二拍列地址信息所占用的地址线位宽之和M小于2N时,处理器向本地控制器发送其他信息,其他信息占用2N-M位地址线位宽。上述可能的技术方案中,在无需修改本地控制器的情况下,可以利用扩展的地址总线来传输其他信息。在一种可能的实现方式中,第一拍列地址信息和第二拍列地址信息分别包括指示信息和拍列地址;其中,当指示信息为第一指示信息时,指示信息用于指示拍列地址为第一拍列地址;当指示信息为第二指示信息时,指示信息用于指示拍列地址为第二拍列地址。上述可能的技术方案中,可以通过指示信息来指示第一目标数据的两拍列地址,从而根据两拍列地址来确定第一目标数据的地址,实现内存地址总线的扩展。在一种可能的实现方式中,第一拍列地址信息和第二拍列地址信息还分别包括用于指示数据访问请求顺序的请求标识,且第一目标数据的第一拍列地址信息和第一目标数据的第二拍列地址信息包括的请求标识相同。上述可能的技术方案中,在存在并发的多个目标数据的数据访问请求时,可以根据请求标识确定多个目标数据的数据访问请求的顺序,从而可以有效地保证访问多个目标数据的访问。在一种可能的实现方式中,若第一数据访问请求为读数据指令,处理器接收本地控制器发送的第一目标数据之前,该方法还包括:处理器接收本地控制器发送的用于指示本地控制器从内存中取出第一目标数据的第一确认信息;处理器根据第一确认信息向本地控制器发送用于获取第一目标数据的第一数据获取指令。上述可能的技术方案中,可以通过第一确认信息使处理器在恰当的时间发送第一数据获取指令,从而有效的获取第一目标数据,减小了不必要的数据获取指令的发送。在一种可能的实现方式中,当第一目标数据的第一拍列地址信息与第二目标数据的第一拍列地址相同时,该方法还包括:处理器向本地控制器发送第三数据访问请求,第三数据访问请求包含第二目标数据的第二拍列地址信息,第一目标数据的第一拍列地址信息与第二目标数据的第二拍列地址信息用于指示第二目标数据的地址;第三数据访问请求为写数据指令或者读数据指令,且第三数据访问请求与第一数据访问请求的指令类型相同;其中,第二目标数据的第二拍列地址信息包括指示信息和拍列地址。上述可能的技术方案中,在大量连续地址访存时,可以将第一拍列地址信息作为虚拟行地址与其后的请求共享,从而节省了总线带宽,进一步的扩展了内存地址总线。在一种可能的实现方式中,处理器向本地控制器发送第三数据访问请求之后,该方法还包括:若第一数据访问请求为读数据指令,处理器接收本地控制器发送的第二目标数据;若第一数据访问请求为写数据指令,处理器向本地控制器发送第二目标数据。第二方面,提供一种内存地址总线扩展方法,该方法包括:本地控制器接收处理器发送的第一数据访问请求,第一数据访问请求包含第一目标数据的第一拍列地址信息,第一数据访问请求为写数据指令或者读数据指令;本地控制器接收处理器发送的第二数据访问请求,第二数据访问请求包含第一目标数据的第二拍列地址信息,第一拍列地址信息和第二拍列地址信息用于指示第一目标数据的地址;其中,第二数据访问请求为写数据指令或者读数据指令,且第二数据访问请求与第一数据访问请求的指令类型相同;若第一数据访问请求为读数据指令,本地控制器根据第一目标数据的第一拍列地址信息和第二拍列地址信息,从内存中获取第一目标数据,并将第一目标数据发送给处理器;若第一数据访问请求为写数据指令,本地控制器接收处理器发送的第一目标数据,并根据第一目标数据的第一拍列地址信息和第二拍列地址信息,将第一目标数据写入内存中。在一种可能的实现方式中,处理器与本地控制器之间用于传输地址信息的地址线位宽为N,该方法还包括:当第一目标数据的第一拍列地址信息与第二拍列地址信息所占的地址线位宽之和M小于2N时,本地控制器接收处理器发送的其他信息,其他信息占用2N-M位地址线位宽。在一种可能的实现方式中,第一拍列地址信息和第二拍列地址信息分别包括指示信息和拍列地址;其中,当指示信息为第一指示信息时,指示信息用于指示拍列地址为第一拍列地址;当指示信息为第二指示信息时,指示信息用于指示拍列地址为第二拍列地址。在一种可能的实现方式中,第一拍列地址信息和第二拍列地址信息还分别包括用于指示数据访问请求顺序的请求标识,且第一目标数据的第一拍列地址信息和第一目标数据的第二拍列地址信息包括的请求标识相同。在一种可能的实现方式中,若第一数据访问请求为读数据指令,本地控制器根据第一目标数据的第一拍列地址信息和第二拍列地址信息,从内存中获取第一目标数据之后,该方法还包括:本地控制器向处理器发送第一确认信息,第一确认信息用于指示本地控制器本文档来自技高网...
一种内存地址总线扩展方法及装置

【技术保护点】
一种内存地址总线扩展方法,其特征在于,所述方法包括:处理器向本地控制器发送第一数据访问请求,所述第一数据访问请求包含第一目标数据的第一拍列地址信息;其中,所述第一数据访问请求为写数据指令或者读数据指令;所述处理器向所述本地控制器发送第二数据访问请求,所述第二数据访问请求包含所述第一目标数据的第二拍列地址信息,所述第一拍列地址信息和所述第二拍列地址信息用于指示所述第一目标数据的地址;其中,所述第二数据访问请求为写数据指令或者读数据指令,且所述第二数据访问请求与所述第一数据访问请求的指令类型相同;若所述第一数据访问请求为读数据指令,所述处理器接收所述本地控制器发送的所述第一目标数据;若所述第一数据访问请求为写数据指令,所述处理器向所述本地控制器发送所述第一目标数据。

【技术特征摘要】
1.一种内存地址总线扩展方法,其特征在于,所述方法包括:处理器向本地控制器发送第一数据访问请求,所述第一数据访问请求包含第一目标数据的第一拍列地址信息;其中,所述第一数据访问请求为写数据指令或者读数据指令;所述处理器向所述本地控制器发送第二数据访问请求,所述第二数据访问请求包含所述第一目标数据的第二拍列地址信息,所述第一拍列地址信息和所述第二拍列地址信息用于指示所述第一目标数据的地址;其中,所述第二数据访问请求为写数据指令或者读数据指令,且所述第二数据访问请求与所述第一数据访问请求的指令类型相同;若所述第一数据访问请求为读数据指令,所述处理器接收所述本地控制器发送的所述第一目标数据;若所述第一数据访问请求为写数据指令,所述处理器向所述本地控制器发送所述第一目标数据。2.根据权利要求1所述的方法,其特征在于,所述处理器与所述本地控制器之间用于传输地址信息的地址线位宽为N,所述方法还包括:当所述第一目标数据的第一拍列地址信息与所述第二拍列地址信息所占用的地址线位宽之和M小于2N时,所述处理器向所述本地控制器发送其他信息,所述其他信息占用2N-M位地址线位宽。3.根据权利要求1所述的方法,其特征在于,所述第一拍列地址信息和所述第二拍列地址信息分别包括指示信息和拍列地址;其中,当所述指示信息为第一指示信息时,所述指示信息用于指示所述拍列地址为第一拍列地址;当所述指示信息为第二指示信息时,所述指示信息用于指示所述拍列地址为第二拍列地址。4.根据权利要求3所述的方法,其特征在于,所述第一拍列地址信息和所述第二拍列地址信息还分别包括用于指示数据访问请求顺序的请求标识,且所述第一目标数据的第一拍列地址信息和所述第一目标数据的第二拍列地址信息包括的请求标识相同。5.根据权利要求4所述的方法,其特征在于,若所述第一数据访问请求为读数据指令,所述处理器接收所述本地控制器发送的所述第一目标数据之前,所述方法还包括:所述处理器接收所述本地控制器发送的第一确认信息,所述第一确认信息用于指示所述本地控制器从所述内存中取出所述第一目标数据;所述处理器根据所述第一确认信息向所述本地控制器发送第一数据获取指令,所述第一数据获取指令用于获取所述第一目标数据。6.根据权利要求3所述的方法,其特征在于,当所述第一目标数据的第一拍列地址信息与第二目标数据的第一拍列地址相同时,所述方法还包括:所述处理器向所述本地控制器发送第三数据访问请求,所述第三数据访问请求包含所述第二目标数据的第二拍列地址信息,所述第一目标数据的第一拍列地址信息与所述第二目标数据的第二拍列地址信息用于指示所述第二目标数据的地址;所述第三数据访问请求为写数据指令或者读数据指令,且所述第三数据访问请求与所述第一数据访问请求的指令类型相同;其中,所述第二目标数据的第二拍列地址信息包括所述指示信息和所述拍列地址。7.根据权利要求6所述的方法,其特征在于,所述处理器向所述本地控制器发送第三数据访问请求之后,所述方法还包括:若所述第一数据访问请求为读数据指令,所述处理器接收所述本地控制器发送的所述第二目标数据;若所述第一数据访问请求为写数据指令,所述处理器向所述本地控制器发送所述第二目标数据。8.一种内存地址总线扩展方法,其特征在于,所述方法包括:本地控制器接收处理器发送的第一数据访问请求,所述第一数据访问请求包含第一目标数据的第一拍列地址信息;其中,所述第一数据访问请求为写数据指令或者读数据指令;所述本地控制器接收所述处理器发送的第二数据访问请求,所述第二数据访问请求包含所述第一目标数据的第二拍列地址信息,所述第一拍列地址信息和所述第二拍列地址信息用于指示所述第一目标数据的地址;其中,所述第二数据访问请求为写数据指令或者读数据指令,且所述第二数据访问请求与所述第一数据访问请求的指令类型相同;若所述第一数据访问请求为读数据指令,所述本地控制器根据所述第一目标数据的第一拍列地址信息和第二拍列地址信息,从内存中获取所述第一目标数据,并将所述第一目标数据发送给所述处理器;若所述第一数据访问请求为写数据指令,所述本地控制器接收所述处理器发送的所述第一目标数据,并根据所述第一目标数据的第一拍列地址信息和第二拍列地址信息,将所述第一目标数据写入所述内存中。9.根据权利要求8所述的方法,其特征在于,所述处理器与所述本地控制器之间用于传输地址信息的地址线位宽为N,所述方法还包括:当所述第一目标数据的第一拍列地址信息与所述第二拍列地址信息所占的地址线位宽之和M小于2N时,所述本地控制器接收所述处理器发送的其他信息,所述其他信息占用2N-M位地址线位宽。10.根据权利要求8所述的方法,其特征在于,所述第一拍列地址信息和所述第二拍列地址信息分别包括指示信息和拍列地址;其中,当所述指示信息为第一指示信息时,所述指示信息用于指示所述拍列地址为第一拍列地址;当所述指示信息为第二指示信息时,所述指示信息用于指示所述拍列地址为第二拍列地址。11.根据权利要求10所述的方法,其特征在于,所述第一拍列地址信息和所述第二拍列地址信息还分别包括用于指示数据访问请求顺序的请求标识,且所述第一目标数据的第一拍列地址信息和所述第一目标数据的第二拍列地址信息包括的请求标识相同。12.根据权利要求11所述的方法,其特征在于,若所述第一数据访问请求为读数据指令,所述本地控制器根据所述第一目标数据的第一拍列地址信息和第二拍列地址信息,从内存中获取第一目标数据之后,所述方法还包括:所述本地控制器向所述处理器发送第一确认信息,所述第一确认信息用于指示所述本地控制器从所述内存中取出所述第一目标数据;相应的,所述本地控制器将所述第一目标数据发送给所述处理器,包括:当所述本地控制器接收到所述处理器发送的第一数据获取指令时,所述本地控制器将所述第一目标数据发送给所述处理器。13.根据权利要求11所述的方法,其特征在于,当所述第一目标数据的第一拍列地址信息与第二目标数据的第一拍列地址相同时,所述方法还包括:所述本地控制器接收所述处理器发送的第三数据访问请求,所述第三数据访问请求包含所述第二目标数据的第二拍列地址信息,所述第一目标数据的第一拍列地址信息与所述第二目标数据的第二拍列地址信息用于指示所述第二目标数据的地址;所述第三数据访问请求为写数据指令或者读数据指令,且所述第三数据访问请求与所述第一数据访问请求的指令类型相同;其中,所述第二目标数据的第二拍列地址信息包括所述指示信息和所述拍列地址。14.根据权利要求13所述的方法,其特征在于,所述本地控制器接收所述处理器发送的第三数据访问请求之后,所述方法还包括:若所述第一数据访问请求为读数据指令,所述本地控制器根据所述第一目标数据的第一拍列地址信息和所述第二目标数据的第二拍列地址信息,从所述内存中获取第二目标数据,并将所述第二目标数据发送给所述处理器;若所述第一数据访问请求为写数据指令,所述本地控制器接收所述处理器发送的所述第二...

【专利技术属性】
技术研发人员:张雪琳阮元陈明宇卢天越陈少杰
申请(专利权)人:华为技术有限公司中国科学院计算技术研究所
类型:发明
国别省市:广东,44

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

1