检索规则说明:AND代表“并且”;OR代表“或者”;NOT代表“不包含”;(注意必须大写,运算符两边需空一格)
检 索 范 例 :范例一: (K=图书馆学 OR K=情报学) AND A=范并思 范例二:J=计算机应用与软件 AND (U=C++ OR U=Basic) NOT M=Visual
机构地区:[1]中国科学院计算技术研究所前瞻研究实验室,北京100190
出 处:《计算机工程与科学》2009年第11期30-32,61,共4页Computer Engineering & Science
摘 要:在主流通用处理系统中,超标量机制及高速缓存使得自修改代码(SMC)成为一种需要特殊处理的情况,为了继续支持使用自修改代码的程序并兼容原有程序,在处理系统设计中需要对SMC的情况进行支持。本文分析并对比了多种程序的SMC行为及解决方案,设计了一种利用FIFO队列在流水线外检测SMC的方案,避免了对主流水线的干扰;并通过复用访存通路来检测SMC导致的缓存一致性问题,由于优化后的设计不需要额外的端口,避免了在数据缓存使用多端口设计,使得整体面积下降了1.16%。同零开销的理想方案相比,该方案对性能的影响小于0.1%。The superscalar pipeline and the cache mechanism make SMC (Self-Modifying Code) a problem in mainstream processing systems. It is necessary to handle this case for compatibility and keep supporting the programs with SMC. This paper analyzes many programs for their SMC behaviors and several methods for SMC handling, and gives a facile method that can be easily implemented to handle the SMC problem. A FIFO queue is used for checking SMC out of the pipeline, decreasing the complexity of the logic, and multiplexing the data memory access paths to avoid the use of multi-port design. In this way, the processor area is reduced by 1.16% , while the performance is influenced no more than 0. 1%.
分 类 号:TP303[自动化与计算机技术—计算机系统结构]
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在链接到云南高校图书馆文献保障联盟下载...
云南高校图书馆联盟文献共享服务平台 版权所有©
您的IP:3.22.79.2