[发明专利]一种处理器地址缓冲管理的实现装置及方法有效
申请号: | 201110065349.X | 申请日: | 2011-03-17 |
公开(公告)号: | CN102681822A | 公开(公告)日: | 2012-09-19 |
发明(设计)人: | 黎立煌;田春雨;任晖 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | G06F9/34 | 分类号: | G06F9/34 |
代理公司: | 北京派特恩知识产权代理事务所(普通合伙) 11270 | 代理人: | 蒋雅洁;张颖玲 |
地址: | 518057 广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 处理器 地址 缓冲 管理 实现 装置 方法 | ||
技术领域
本发明涉及处理器设计领域,尤其涉及一种处理器读取数据(load)或保存数据(store)时地址缓存管理的实现装置及方法。
背景技术
对于现有大部分处理器,其地址寄存器文件包含多个地址寄存器,基于算法需求,每个地址寄存器还需要一个地址增量寄存器,每次执行load/store指令后,地址寄存器自动增加或减小aa_inc。这里,aa_inc为地址增量寄存器的自增值或自减值。有了aa_inc,这样就可以连续地使用load和store指令,实现对不同地址数据的读取和保存,而不需要再写一个地址运算指令。除此之外,在LTE等通信算法中还需要实现地址缓冲管理功能,即为:可以设置一个地址寄存器的首、尾边界值,地址在这个首、尾边界值范围内自增或自减,当跨越边界时,自动跳回边界内。
针对实现地址缓冲管理功能而言,目前常见的解决方案的运算逻辑为:给每个地址寄存器设置两个边界寄存器,一个为首边界寄存器,另一个为尾边界寄存器,并通过指令设置这两个寄存器的值,当执行一个load或store指令时,当前地址加上自增值与边界进行比较,如果越界,则跳回。该运算逻辑对应的编码分自增或自减两种情况,如下所示:
(1)地址自增的情况下的编码:
if(aa_inc>=0&&aa+aa_inc>aa_end)
aa=aa+aa_inc-(aa_end-aa_start+1);
else
aa=aa+aa_inc。
(2)地址自减的情况下的编码:
if(aa_inc<0&&aa+aa_mc<aa_start)
aa=aa+aa_inc+(aa_end-aa_start+1);
else
aa=aa+aa_inc。
其中,aa_inc为地址增量寄存器的自增值或自减值(地址自增的情况下aa_inc为地址增量寄存器的自增值,地址自减的情况下aa_inc为地址增量寄存器的自减值);aa_start为地址缓冲首边界的值;aa_end为地址缓冲尾边界的值;aa为当前地址寄存器的值;(aa_end-aa_start+1)为缓存器的缓存大小值。
然而,上述目前解决方案的缺陷为:该运算逻辑都是在处理器中完成的,也就是说,对于aa+aa_inc>aa_end、aa+aa_inc<aa_start、aa+aa_inc+(aa_end-aa_start+1)和aa+aa_inc-(aa_end-aa_start+1)这四个运算来说,为了实现地址缓冲管理,需要在处理器的硬件实现上采用两个加法器串联,再加上两级二选一数据选择器(MUX)电路选择输出,如图1中粗实线所示的四条关键路径,可见对应处理器的逻辑电路是比较复杂的。
具体的,图1中,表示加法器(执行上述编码的加法运算),表示MUX,也可称为判断分支的选择器(执行上述编码的if/else分支选择运算),buffsize=aa_end-aa_start+1,图1这种处理方式是采用两个加法器串联处理的方式,比如加法器11和加法器12串联,加法器11和加法器13串联;而且采用了二级MUX电路,如图1所示的选择器21(选择器22)与选择器23构成了二级MUX,也就是说最终实现选择输出需采用二级MUX电路。
综上所述,由于处理器的逻辑电路是串行处理(需两个加法器串联),为了最终实现选择输出(需两级MUX电路选择输出),因此,逻辑运算复杂导致采用的处理器的逻辑电路复杂,势必增加硬件成本,而且逻辑运算复杂还能导致拉低整个处理器的频率、产生时序的问题,从而,为了实现地址缓冲管理,采用现有的处理器,既增加了硬件成本,又无法满足处理器时序设计、高效节能的设计需求。
发明内容
有鉴于此,本发明的主要目的在于提供一种处理器地址缓冲管理的实现装置及方法,既降低了处理器的硬件成本,又能满足处理器时序设计、高效节能的设计需求。
为达到上述目的,本发明的技术方案是这样实现的:
一种处理器地址缓冲管理的实现装置,该装置包括:汇编器和处理器;其中,
所述汇编器,用于对地址自增值及边界设置指令进行编码时,运算得到中间值并将中间值封装到地址自增值及边界设置指令中;所述中间值为用于实现地址缓冲管理的地址自增或自减运算的数值;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110065349.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种支持双模双待终端同时通信的方法和系统
- 下一篇:位置检测系统