用户名: 密码: 验证码:
Cache Controller的研究和设计
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
Cache即高速缓存,是位于CPU和主存之间的规模小速度快的存储器。Cache的工作原理是保存CPU中最常用的数据。当Cache中保存着CPU要读写的数据时,CPU直接访问Cache。由于Cache的速度与CPU相当,CPU能在零等待状态下迅速地实现数据存取。只有在Cache中不含有CPU所需的数据时CPU才去访问主存。Cache在CPU的读取期间依照优化命中原则淘汰和更新数据。可以把Cache看成是主存与CPU之间的缓冲适配器,借助于Cache,可以高效地完成DRAM内存和CPU之间的速度匹配。因此,Cache是当今衡量计算机系统性能的一项重要指标。
     为了发展民族的CPU产业,许多专家学者都在致力于研究有自己特色的CPU。北京凝思公司总裁宫敏博士就是其中之一,为了研制基于高端安全服务器的64位通用CPU,宫博士成立了研发队伍,研制LX—1164 CPU芯片。本人有幸在夏宏博士的指导下参加这一工程,承担LX—1164 CPU的高速缓存控制器(CCU)的逻辑设计和功能仿真。
     本文介绍了我们所研制的基于安全服务器的64位通用CPU芯片中的快存控制器CCU(Cache Controller Unit)的设计原理和硬件实现。LX—1164 CPU将采用0.18μmCMOS工艺,工作主频为400MHz,安全、可靠、低功耗是其最大的特点。LX—1164具有独立的32KB片内数据高速缓存和32KB片内指令高速缓存,通过CCU可以同时对指令Cache和数据Cache进行查询。CCU采用ASIC的全定制电路设计方法,使用先进的EDA设计工具进行逻辑设计与功能仿真。在设计上突破传统思想的约束,采用可重构技术降低Cache的功耗。所谓可重构技术是指系统中的硬件结构可以根据应用程序的需求进行重新配置。本课题中运用Cache重构技术对Cache的组织结构和数据存储方式进行改进和优化,通过在Cache中设置控制逻辑和选择合适的调整策略对Cache进行重构从而实现对Cache容量的动态调整,同时采用压缩的数据存储方式减少Cache的存取量,从而大大地降低了Cache的动态功耗,附加晶体管的引入又有效地降低了静态功耗,仿真结果证明该技术可有效地降低数据快存和指令快存的功耗,使整个系统性能有所提高。
     由于本文涉及凝思公司技术机密,所以有关的技术细节未能详细阐述。敬请评委原谅。
Cache memory is a software transparent fast memory layer between the CPU and the main memory. It is so transparent that application developers do not need to think of its existence. Cache memory is constructed with high-speed static random access memory(SRAM), managed in a unit called cache line. The cycle time of SRAM can be as short as a few nanoseconds. This kind of performance can match the speed of microprocessor bus operation. The size of a cache line is usually a few processor words.
    Although SRAM is fast, it costs too much. A basic DRAM cell uses one transistor while an SRAM cell uses four. With the help of a cache memory all memory access requests,whenever possible, take place in cahce memory;main memory will be referred to only when it is necessary.
    Since a cache memory system can reduce the need for main memory access, It greatly reduces the potential memory access contention in shared memory Multiprocessor systems. It localizes memory access by isolation CPU bus traffic from memory bus traffic.
    This paper presents the logic circuit design of CCU for LX-1164 CPU chip, for CCU, data and instructions are stored in separate data and instruction caches. So it allows the processor to fetch instructions from the instruction cache and data from the data cache simultaneously. CCU contain a tag array and a data array. Dividing the cache into separating tag and data arrays reduces the access time of the cache. In order to keep the cache coherence , CCU adopts MOESI protocol.
    We adopt ASIC design technique, using advanced EDA tools to design and simulate CCU. At the same time, We propose an optimization methodology for power minimization by reconfiguring the organization of cache and changing the form of words stored in some cache lines.
    As this paper is related to technical secret of the linx company, so I can't give you information in details,I am so sorry about it.
引文
[1].夏宏,《LX-1164微处理器体系结构说明书》,北京凝思公司技术资料,2003。
    [2].夏宏,求补舍入并行和位长自适应整数转浮点数电路设计,计算机研究与发展,2001年09期。
    [3].夏宏、李笑盈、王攻本,浮点开方运算单元的电路设计,计算机工程与应用,2002年11期。
    [4].夏宏、吴克河、李占才,浮点加法器电路设计算法的研究,计算机工程与应用,2002年13期。
    [5].夏宏、曲英杰、周志伟,高速32位伪随机数发生器电路设计,计算机工程与应用,2001年15期。
    [6].刘金平、肖立贤,交互式河流预报系统数据管理模式分析,水文,2002年04期。
    [7].张晨曦、王志英、张春元、戴葵、朱海滨,《计算机体系结构》,高等教育出版社,2000.6。
    [8].王爱英主编,《计算机组成与结构(第二版)》,清华大学出版社,1995。
    [9].孙强南、孙昱东,《计算机体系结构》,科学出版社,1993。
    [10].李三立、李压民,《RISC单发射与多发射体系结构》,清华大学出版社,1993。
    [11].夏仁霖,《RISC技术参考大全》,电子工业出版社,1992。
    [12].Jerry Young著,周予傧译,《Power PC体系结构》,1995。
    [13].洪志全、罗省贤,《80x87、80x86汇编语言程序设计》,电子科技大学出版设,1996。
    [14].沈绪榜,《RISC及后编译技术》,广西科学出版社,1994。
    [15].周明德,《保护方式下的80386及其编程》,清华大学出版社,1993。
    [16].COMPASS ASIC设计软件介绍,SunBay Electronics CO.LTD。
    [17].Peter Norton著,张载鸿、张昆藏译,《PC/Pentium实用技术指南》,清华大学出版社,1996。
    [18].WALTER A.TRIEBEL著,王克义、王钧、方晖、蔡旭斌译,《80x86/Pentium处理器硬件、软件及接口技术》,清华大学出版社,1998。
    [19].夏宇闻,《从算法设计到硬线逻辑的实现》,高等教育出版社,2001。
    [20].张明编著,《Verilog HDL实用教程》,电子科技大学出版社,1999。
    [21].Mark G.Sobell著,詹文军、廖铮、李志等译,《Solaris技术指南》,机械工业出版设,2001。
    [22].王金明、杨吉斌编著,《数字系统设计与Verilog HDL》,电子工业出版社,2002。
    [23].康华光主编,《电子技术基础》,高等教育出版设,1982。
    [24].康宝祥、栾贵兴著,《RISC体系结构及其实现技术》,科学出版社,1996。
    [25]. D. Brooks,V.Tiwari,and M.Martonosi.Wattch. A framework for Architectural power analysis and optimizations.In Proceedings of the 27th Annual International Symposium on Computer Architecture, pages 83-94, June 2000.
    [26]. S. Manne,A.Klauser,and D.Grunwald.Pipeline gating: Speculation control for energy reduction. In Proceedings of the 25th Annual International Symposium Computer Architecture, pages 132-141, June 1998.
    
    
    [27]. L.Villa, M. Zhang and K. Asanovic. Dynamic zero compression for cache energy reduction. Proc. 33th Int. Symp. On Microarchitecture, Dec.2000.
    [28]. Agarwal, J. Hennessy, and M. Horowitz.Cache performance of operating systems and multiprogramming. ACM Transactions on Computer Systems, Nov.1988.
    [29]. A. Agarwal and S. Pudar. Column associative caches: A technique for reducing miss rate of direct-mapped caches. In Proceedings of the 20th Annual International Symposium on Computer Architecture, May 1993.
    [30]. B. Calder and D. Grunwald. Next cache line and set prediction. In Proceedings of the 25th Annual International Symposium on Computer Architecture, June 1995.

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700