发明内容
本发明的实施例提供一种地址调度方法、装置及系统,能够提升地址供应速率,进而提高设备的数据访问效率。
为达到上述目的,本发明的实施例采用如下技术方案:
一方面,提供一种地址调度方法,应用于一种地址调度系统,所述地址调度系统包括地址调度装置以及与所述地址调度装置相连的回收地址存储器、供给地址存储器和地址存储器,包括:在一个预设时间周期内所述地址调度装置从所述回收地址存储器读出地址;将所述地址写入所述供给地址存储器,其中写入所述供给地址存储器的地址用于报文存储。
进一步地,该方法还包括:一个预设时间周期内当所述回收地址存储器中的的地址数量为零时,所述地址调度装置从所述地址存储器的尾部读出地址;将所述从地址存储器的尾部读出的地址写入所述供给地址存储器。
进一步地,该方法还包括:在两个所述预设时间周期之间所述地址调度装置从所述回收地址存储器读出地址;将所述地址写入所述地址存储器的首部;所述地址调度装置从所述地址存储器的尾部读出地址写入所述供给地址存储器。
另一方面,提供一种地址调度装置,应用于一种地址调度系统,所述地址调度系统包括回收地址存储器、供给地址存储器和地址存储器,该地址调度装置包括:
回收地址入口单元,用于在一个预设时间周期内从回收地址存储器读出地址;供给地址出口单元,用于将所述地址写入供给地址存储器,其中写入所述供给地址存储器的地址用于报文存储。
进一步地,该装置还包括:存储地址出口单元,用于在所述一个预设时间周期内当所述回收地址存储器中的地址数量为零时,从地址存储器的尾部读出地址;所述供给地址出口单元还用于将所述从地址存储器的尾部读出的地址写入所述供给地址存储器。
进一步地,该装置还包括:所述回收地址入口单元,还用于在两个所述预设时间周期之间从所述回收地址存储器读出地址;存储地址入口单元,用于将所述地址写入所述地址存储器的首部;所述供给地址出口单元,用于将从所述地址存储器的尾部读出的地址写入所述供给地址存储器,其中存储地址出口单元用于从所述地址存储器的尾部读出地址。
再一方面,提供一种地址调度系统,包括:地址调度装置、以及与所述地址调度装置连接的回收地址存储器、供给地址存储器和地址存储器,所述地址调度装置用于在一个预设时间周期内从所述回收地址存储器读出地址;将所述地址写入所述供给地址存储器,其中写入所述供给地址存储器的地址用于报文存储。进一步地,所述地址调度装置还用于在所述一个预设时间周期内当所述回收地址存储器中的的地址数量为零时,所述地址调度装置从所述地址存储器的尾部读出地址;将所述从地址存储器的尾部读出的地址写入所述供给地址存储器。进一步地,所述地址调度装置还用于在两个所述预设时间周期之间从所述回收地址存储器读出地址;将所述地址写入所述地址存储器的首部;从所述地址存储器的尾部读出地址写入所述供给地址存储器。
本发明实施例提供的地址调度方法、装置及系统,能够在一个预设的时间周期内直接从回收地址存储器向供给地址存储器供给用于报文存储的地址,提升了地址供应速率,进而提高设备的数据访问效率。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参照图1提供的报文缓存中地址调度的构架示意图,可通过FPGA(Field-Programmable Gate Array,现场可编程门阵列)实现,并应用于基于FPGA与CPU共享内存DDR的硬件构架实现,例如采用PCIe(X86系统和外部设备互联的一种总线结构)总线将X86CPU与FPGA建立连接使得FPGA与X86CPU共享X86CPU的DDR的硬件构架。CPU报文处理结束后为了让原来存贮报文的地址可以继续存储别的报文,地址调度系统再将报文存储地址通过回收地址存储器(回收地址fifo)收回并写入地址存储器,在现有技术中,地址存储器的地址读出时一定从尾部读出,写入时一定从头部写入,一个写入地址存储器的地址必须等待其前方的地址读出以后才能再次被读出供应到供给地址存储器(供给地址fifo),以下本发明实施例提供的地址调度方法和地址调度装置均可应用于图1提供的报文缓存中地址调度的构架。
参照图2所示,本发明实施例提供一种地址调度方法,包括:
S101、在一个预设时间周期内地址调度装置从回收地址存储器读出地址。
S102、地址调度装置将该地址写入供给地址存储器,其中写入供给地址存储器的地址用于报文存储。
同时参照图5所示,由于在一个预设时间周期内地址调度装置从回收地址存储器读出地址,并将该地址写入供给地址存储器,例如回收地址存储器中只有地址0和地址1可用,则在该预设时间周期内,只有地址0和地址1在供给地址存储器和回收地址存储器之间循环使用;当然这里的预设时间周期可以根据各个存储器件的工程要求及地址使用疲劳率进行设置。
进一步的,参照图3所示,该方法还包括:
S103、在上述的一个预设时间周期内当回收地址存储器的地址数量为零时,地址调度装置从地址存储器的尾部读出地址。
S104、地址调度装置将从地址存储器的尾部读出的地址写入供给地址存储器。
回收存储器的地址数量为零时,存在两种状况即CPU需要更多的地址进行信息处理即上述的地址0和地址1不够用,或者回收地址存储器和供应地址存储器中均没有地址,则地址调度装置可以从地址存储器的尾部读出地址写入供给地址存储器使用,参照图6,回收存储器(回收地址fifo)地址数量为零时,地址调度装置将从地址存储器的尾部读出的地址(地址N-1和地址N)写入供给地址存储器。
本发明实施例提供的一种地址调度方法,使得相同的存储地址在回收地址存储器和供给地址存储器之间循环使用,即使得报文地址在一个预设时间周期内连续被使用,能够提升地址供应速率,进而提高设备的数据访问效率。
进一步,可选的,参照图4所示,本发明实施例提供的地址调度方法还包括:
S105、在两个上述的预设时间周期之间地址调度装置从回收地址存储器读出地址;
S106、地址调度装置将从回收地址存储器读出的地址写入地址存储器的首部;
S107、地址调度装置将从地址存储器的尾部读出地址的写入供给地址存储器。
参照图7,该过程地址调度装置将回收地址存储器(回收地址fifo中的地址0地址1读出并写入地址存储器的首地址处即图中阴影示出的地址0和地址1的位置,同时地址调度装置将地址存储器的尾地址处的地址N-1和N读出并写入供给地址存储器(供给地址fifo),从而实现对使用地址的刷新。
此时,避免了在步骤S101至S102中的地址被连续使用,避免器件老化进而提高了器件使用寿命,在回收地址存储器和供给地址存储器中刷新地址之后,在新的预设时间周期内刷新的地址又被连续循环使用,从而在保证期间的使用性能的同时又能够提升地址供应速率,进而提高设备的数据访问效率。
参照图5所示,本发明实施例提供一种地址调度装置5,应用于一种地址调度系统,地址调度系统包括与该地址调度装置相连的回收地址存储器、供给地址存储器和地址存储器,地址调度装置5包括:
回收地址入口单元51,用于在一个预设时间周期内从回收地址存储器读出地址;
供给地址出口单元52,用于将该地址写入供给地址存储器,其中写入供给地址存储器的地址用于报文存储。
进一步的,参照图6所示,地址调度装置5还包括:
存储地址出口单元53,用于在上述的一个预设时间周期内当回收地址存储器中的地址数量为零时,从地址存储器的尾部读出地址;
供给地址入口单元52还用于将从地址存储器的尾部读出的地址写入供给地址存储器。
本发明实施例提供的地址调度装置,使得相同的存储地址在回收地址存储器和供给地址存储器之间循环使用,即使得报文地址在一个预设时间周期内连续被使用,能够提升地址供应速率,进而提高设备的数据访问效率。
进一步可选的,参照图7所示,本发明实施例提供的地址调度装置5,还包括:
回收地址入口单元51,还用于在两个预设时间周期之间从回收地址存储器读出地址;
存储地址入口单元54,用于将该地址写入地址存储器的首部;
供给地址出口单元52,用于将从地址存储器的尾部读出的地址写入供给地址存储器,其中存储地址出口单元53用于从地址存储器的尾部读出地址。
本发明实施例提供的地址调度装置,使得相同的存储地址在回收地址存储器和供给地址存储器之间循环使用,即使得报文地址在一个预设时间周期内连续被使用,能够提升地址供应速率,进而提高设备的数据访问效率。同时,可以避免相同的地址被连续使用,避免器件老化进而提高了器件使用寿命,在回收地址存储器和供给地址存储器中刷新地址之后,在一个新的预设时间周期内刷新的地址又被连续循环使用,从而在保证期间的使用性能的同时又能够提升地址供应速率,进而提高设备的数据访问效率。
本发明的实施例提供一种地址调度系统,参照图8所示,包括:地址调度装置1、以及与地址调度装置1连接的回收地址存储器3、供给地址存储器4和地址存储器2,地址调度装置1用于在一个预设时间周期内从回收地址存储器读出地址;将地址写入供给地址存储器,其中写入供给地址存储器的地址用于报文存储。
可选的,地址调度装置1还用于在一个预设时间周期内当回收地址存储器中的的地址数量为零时,地址调度装置从地址存储器的尾部读出地址;将从地址存储器的尾部读出的地址写入供给地址存储器。
本发明实施例提供的地址调度系统,使得相同的存储地址在回收地址存储器和供给地址存储器之间循环使用,即使得报文地址在一个时间段内连续被使用,能够提升地址供应速率,进而提高设备的数据访问效率。
进一步的,可选的,地址调度装置1还用于在两个预设时间周期之间从回收地址存储器读出地址;将地址写入地址存储器的首部;将从地址存储器的尾部读出的地址写入供给地址存储器。
这样,可以避免相同的地址被连续使用,避免器件老化进而提高了器件使用寿命,在回收地址存储器和供给地址存储器中刷新地址之后,在一个时间段内刷新的地址又被连续循环使用,从而在保证期间的使用性能的同时又能够提升地址供应速率,进而提高设备的数据访问效率。
以上本发明实施例提供的地址调度方法和装置可通过FPGA(Field-Programmable Gate Array,现场可编程门阵列)实现,并应用于基于FPGA与CPU共享内存DDR的硬件构架实现,例如采用PCIe(X86系统和外部设备互联的一种总线结构)总线将X86CPU与FPGA建立连接使得FPGA与X86CPU共享X86CPU的DDR的硬件构架。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。