[发明专利]一种非对齐地址访存的融合编码状态机实现方法有效
申请号: | 201811389626.0 | 申请日: | 2018-11-21 |
公开(公告)号: | CN111209220B | 公开(公告)日: | 2023-06-09 |
发明(设计)人: | 费晓龙;杨亭 | 申请(专利权)人: | 华夏芯(北京)通用处理器技术有限公司 |
主分类号: | G06F12/02 | 分类号: | G06F12/02;G06F12/0802 |
代理公司: | 北京科家知识产权代理事务所(普通合伙) 11427 | 代理人: | 陈娟 |
地址: | 100080 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 对齐 地址 融合 编码 状态机 实现 方法 | ||
本发明公开的属于状态机技术领域,具体为一种非对齐地址访存的融合编码状态机实现方法,其特征在于:该非对齐地址访存的融合编码状态机实现方法具体步骤如下,S1:存储请求对应的位于状态编码的高三位内的访存范围,S2:顺序发送对齐地址的访存请求,等待数据缓存并拼接,S3:状态机状态初始化,S4:状态机状态转换,S5:数据缓存等待数据的回填,该种非对齐地址访存的融合编码状态机实现方法,融合了对齐地址访存范围信息的编码,能够节省硬件面积开销,融合了发送结束状态的编码,能够简化硬件发送的判断逻辑,方便地记录了返回数据的状态,跟踪整个指令的执行结束。
技术领域
本发明涉及状态机技术领域,具体为一种非对齐地址访存的融合编码状态机实现方法。
背景技术
对齐的访存方式不但能使处理器流水线更加高效,同时也能简化地址冲突的检测逻辑,因此高效的访存指令序列偏爱对齐地址的访问,比如访问双字,那么地址低三位应为全0,访问字,那么地址低两位应为全0,访问半字,LSB应为0,只有访问字节,可以不需要地址对齐,因此大多数程序会天然的编译成对齐地址访存,但是依然有部分库函数,里面的程序是非对齐访问的,并且如果每次都需要做程序移植,则繁琐、耗费时间长,为此,我们提出了一种非对齐地址访存的融合编码状态机实现方法。
发明内容
本发明的目的在于提供一种非对齐地址访存的融合编码状态机实现方法,以解决上述背景技术中提出的依目前状态机里面的程序是非对齐访问的,并且如果每次都需要做程序移植,则繁琐、耗费时间长的问题。
为实现上述目的,本发明提供如下技术方案:一种非对齐地址访存的融合编码状态机实现方法,其特征在于:该非对齐地址访存的融合编码状态机实现方法具体步骤如下:
S1:存储请求对应的位于状态编码的高三位内的访存范围;
S2:顺序发送对齐地址的访存请求,等待数据缓存并拼接;
S3:状态机状态初始化;
S4:状态机状态转换;
S5:数据缓存等待数据的回填,通过着色过程记录当前多笔对齐请求所读数据是否被完全返回,并且每一笔对齐的地址请求有位置信息来标示该数据处在所需数据块的位置;
S6:根据指令的访存范围,来生成范围向量进行数据拼接;
S7:数据拼接完成后,缓存内的数据进行后续的剪切和扩展操作,返回体系结构寄存器。
优选的,所述步骤S6中,每次返回的对齐请求携带位置和范围信息来更新范围向量。
与现有技术相比,本发明的有益效果是:该种非对齐地址访存的融合编码状态机实现方法,融合了对齐地址访存范围信息的编码,能够节省硬件面积开销,融合了发送结束状态的编码,能够简化硬件发送的判断逻辑,方便地记录了返回数据的状态,跟踪整个指令的执行结束。
具体实施方式
下面将对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供一种技术方案:本发明涉及到了非对齐地址访存的硬件实现方式,其中核心在于状态机的设计和高效的编码,可以在硬件通过检测访存地址和访存范围来决定访存指令接下来的拆分动作,通过列举所有非对齐访存,得出以下拆分表格:
Mask:Byte 000/Half 001/Word 011/Double word 111
地址代表访存地址的低四位,假设第四位为0,减少了不必要的跨cache line甚至跨页问题的干扰。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华夏芯(北京)通用处理器技术有限公司,未经华夏芯(北京)通用处理器技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811389626.0/2.html,转载请声明来源钻瓜专利网。