【技术实现步骤摘要】
一种处理器核外缓存模型及模拟方法
[0001]本申请涉及处理器
,尤其涉及一种处理器核外缓存模型及模拟方法。
技术介绍
[0002]在处理器系统设计过程中,往往会对某一级或某几级缓存进行建模,以减少模块设计过程之间的耦合,提高各子系统的设计并行度。但不同级的缓存往往需要单独进行开发,如在验证多级缓存时,需要一对一地开发多个模型,不仅需要设计人员花费大量时间和精力,还容易导致缓存模型不一致的问题,多个对应不同级的缓存模型也增加了对缓存模型的移植和维护难度。
技术实现思路
[0003]本申请提供了一种处理器核外缓存模型及模拟方法,其中,该缓存模型可通用于多种缓存的应用场景,减少了对多个缓存模型的维护和移植难度。
[0004]第一方面,本申请实施例提供了一种处理器核外缓存模型,该模型包括:请求接口模块、读取处理模块、写入处理模块、命中检测模块、数据缓存模块和总线请求处理模块;
[0005]请求接口模块用于根据请求接口时序接收读取请求和写入请求,将读取请求转换为读取事件发给读取处理模块,将写入请求转换为写入事件发给写入处理模块;
[0006]请求接口模块还用于根据模式配置信息修改请求接口时序;
[0007]数据缓存模块用于将读取事件对应的读取数据发送给读取处理模块;
[0008]数据缓存模块还用于根据模式配置信息修改数据缓存模块的容量;
[0009]读取处理模块用于通过命中检测模块获取读取事件的读取命中结果,并基于模式配置信息和读取命中结果获取读取数据;< ...
【技术保护点】
【技术特征摘要】
1.一种处理器核外缓存模型,其特征在于,所述模型包括请求接口模块、读取处理模块、写入处理模块、命中检测模块、数据缓存模块和总线请求处理模块;所述请求接口模块用于根据请求接口时序接收读取请求和写入请求,将所述读取请求转换为读取事件发给所述读取处理模块,将所述写入请求转换为写入事件发给所述写入处理模块;所述请求接口模块还用于根据模式配置信息修改请求接口时序;所述数据缓存模块用于将所述读取事件对应的读取数据发送给所述读取处理模块;所述数据缓存模块还用于根据所述模式配置信息修改所述数据缓存模块的容量;所述读取处理模块用于通过所述命中检测模块获取所述读取事件的读取命中结果,并基于所述模式配置信息和所述读取命中结果获取所述读取数据;所述写入处理模块用于通过所述命中检测模块获取所述写入事件的写入命中结果,并基于所述模式配置信息和所述写入命中结果,根据所述写入事件或写入数据更新所述数据缓存模块;所述总线请求处理模块用于基于总线接口时序获取所述读取数据并发送至所述读取处理模块,基于所述总线接口时序获取所述写入数据并发送至所述写入处理模块;所述总线请求处理模块还用于根据所述模式配置信息修改所述总线接口时序。2.根据权利要求1所述的模型,其特征在于,所述模型还包括读取队列模块和写入队列模块;所述读取队列模块用于接收所述读取事件,所述写入队列模块用于接收所述写入事件;所述读取队列模块还用于对各所述读取事件与所述写入队列模块中的各所述写入事件做冲突检测,将无冲突的所述读取事件发送至所述读取处理模块;所述写入队列模块还用于对各所述写入事件与所述读取队列模块中的各所述读取事件做冲突检测,将无冲突的所述写入事件发送至所述写入处理模块;所述读取处理模块还用于在获取所述读取数据后,将其发送给所述读取队列模块。3.根据权利要求2所述的模型,其特征在于,所述命中检测模块和所述总线请求处理模块还用于在所述模式配置信息为无缓存信息时进入屏蔽状态;所述读取处理模块用于在所述模式配置信息为所述无缓存信息时,获取所述数据缓存模块中的所述读取数据;所述写入处理模块用于在所述模式配置信息为所述无缓存信息时,根据所述写入事件更新所述数据缓存模块。4.根据权利要求3所述的模型,其特征在于,所述读取处理模块还用于在所述模式配置信息为二级缓存信息或三级缓存信息时,若所述读取事件命中,则获取所述数据缓存模块中的所述读取数据;若所述读取事件未命中,则通过所述总线请求处理模块获取所述读取数据;所述写入处理模块还用于在所述模式配置信息为所述二级缓存信息或所述三级缓存信息时,若所述写入事件命中,则根据所述写入事件更新所述数据缓存模块;若所述写入事件未命中,则通过所述总线请求处理模块获取所述写入数据,并更新所述数据缓存模块。5.根据权利要求4所述的模型,其特征在于,所述模型还包括访存记录模块;所述读取处理模块还用于在所述模式配置信息为所述二级缓存信息或所述三级缓存信息时,在获取所述读取数据后根据所述读取数据更新所述访存记录模块;
所述写入处理模块还用于在所述模式配置信息为所述二级缓存信息或所述三级缓存信息时,在根据所述写入事件或所述写入数据更新所述数据缓存模块后,根据所述写入事件或所述写入数据更新所述访存记录模块。6.根据权利要求5所述的模型,其特征在于,所述模型还包括替换处理模块;所述读取处理模块或所述写入处理模块还用于在所述读取事件或所述写入事件未命中时,通过所述访存记录模块得到替换数据并发送给所述替换处理模块;所述替换处理模块用于将所述替换数据写出所述模型。7.根据权利要求6所述的模型,其特征在于,所述替换处理模块还用于根据所述替换数据生成替换写请求并发送给所述总线请求处理模块,并在接收到总线应答时写出所述替换数据;所述总线请求处理模块还用于将所述替换写请求转换为总线写请求并发送给总线;以及将接收到的所述总线应答发送给所述替换处理模块。8.根据权利要求4所述的模型,其特征在于,所述写入处理模块还用于在根据所述写入数据更新所述数据缓存模块后,根据所述写入数据更新所述命中检测模块;所述读取处理模块还用于在通过所述总线请求处理模块获取所述读取数据后,根据所述读取数据更新所述数据缓存模块和所述命中检测模块。9.根据权利要求7所述的模型,其特征在于,所述模型还包括窥探处理模块和窥探队列模块;当所述模式配置信息为二级缓存信息或三级缓存信息时:所述总线请求处理模块还用于接收窥探请求,并转换为窥探事件发送给所述窥探队列模块;所述窥探队列模块用于将各所述窥探事件与...
【专利技术属性】
技术研发人员:施葹,苟鹏飞,刘扬帆,王贺,徐越,陆泳,
申请(专利权)人:合芯科技苏州有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。