2022年Cache控制器设计实验.pdf

上传人:C****o 文档编号:12786750 上传时间:2022-04-26 格式:PDF 页数:7 大小:561.04KB
返回 下载 相关 举报
2022年Cache控制器设计实验.pdf_第1页
第1页 / 共7页
2022年Cache控制器设计实验.pdf_第2页
第2页 / 共7页
点击查看更多>>
资源描述

《2022年Cache控制器设计实验.pdf》由会员分享,可在线阅读,更多相关《2022年Cache控制器设计实验.pdf(7页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、Cache控制器设计实验实验 3 Cache 控制器设计1.实验目的(1) 掌握 Cache 控制器的原理及其设计方法。(2) 熟悉 FPGA应用设计及EDA 软件的使用。(3) 熟悉 Vivado 软件的使用及FPGA应用设计。2.实验原理Cache 就是介于CPU与主存之间的小容量存储器,包括管理在内的全部功能由硬件实现,对程序员就是透明的,在一定程度上解决了CPU 与主存之间的速度差异。与主存容量相比,Cache 的容量很小 ,它保存的内容只就是内存内容的一个子集,且 Cache 与主存的数据交互以块为单位。把主存中的块放到Cache 中时必须把主存地址映射到Cache 中,即确定位置的

2、对应关系 ,并采用硬件实现,以便 CPU给出的访存地址能够自动变换成Cache地址。由于程序访问的局部性 ,使得主存的平均读出时间接近Cache 的读出时间 ,大大提高了CPU 的访存效率。地址映射方式有全相联方式、直接相联方式、组相联方式,本实验采用的就是直接方式,这种变换方式简单而直接,硬件实现很简单,访问速度也比较快,但就是块的冲突率比较高。其主要原则就是 :主存中一块只能映象到Cache的一个特定的块中。假设主存的块号为B,Cache的块号为b,则它们之间的映象关系可以表示为:b = B mod Cb其中 ,Cb 就是 Cache 的块容量。设主存的块容量为Mb,区容量为Me,则直接映

3、象方法的关系如图 3、 19 所示。把主存按Cache 的大小分成区 ,一般主存容量为Cache容量的整数倍 ,主存每一个分区内的块数与Cache的总块数相等。 直接映象方式只能把主存各个区中相对块号相同的那些块映象到Cache中同一块号的那个特定块中。例如,主存的块 0 只能映象到Cache 的块 0 中,主存的块1 只能映象到Cache的块 1 中 ,同样 ,主存区 1 中的块 Cb(在区 1 中的相对块号就是 0)也只能映象到Cache 的块 0 中。根据上面给出的地址映象规则,整个 Cache 地址与主存地址的低位部分就是完全相同的。精品资料 - - - 欢迎下载 - - - - -

4、- - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 1 页,共 7 页 - - - - - - - - - - Cache控制器设计实验图 1 直接相联映像方式直接映象方式的地址变换过程如图1 所示 ,主存地址中的块号B与 Cache地址中的块号b 就是完全相同的。 同样 ,主存地址中的块内地址W 与 Cache地址中的块内地址w 也就是完全相同的 ,主存地址比Cache地址长出来的部分称为区号E。图 2 直接相联地址变换在程序执行过程中,当要访问 Cache时,为了实现主存块号到Cache块号的变换 ,需要有一个存放主存区号的小容量存储器,这个存储器的容量与

5、Cache的块数相等 ,字长为主存地址中区号 E 的长度 ,另外再加一个有效位。在主存地址到Cache地址的变换过程中,首先用主存地址中的块号去访问区号存储器(按地址访问 )。把读出来的区号与主存地址中的区号E进行比较 ,根据比较结果与与区号在同一存储字中的有效位情况作出处理。如果区号比较结果相等,有效位为 1,则 Cache 命中 ,表示要访问的那一块已经装入到Cache中了,这时 Cache地址 (与主存地址的低位部分完全相同)就是正确的。 用这个 Cache地址去访问Cache,把读出来的数据送往CPU。其她情况均为Cache 没精品资料 - - - 欢迎下载 - - - - - - -

6、 - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 2 页,共 7 页 - - - - - - - - - - Cache控制器设计实验有命中 ,或称为 Cache失效,表示要访问的那个块还没有装入到Cache中,这时 ,要用主存地址去访问主存储器 ,把读出来的一个字送往CPU, 同时 ,把包括被访问字在内的一块都从主存储器中读出来 ,送往 Cache的相应块。Cache与 CPU以及存储器的连接如图3 所示 ,本实验要在FPGA中实现 Cache及其地址变换逻辑 (也叫 Cache控制器 ),采用直接相联地址变换,只考虑 CPU从 Cache读数据 ,不考虑 CP

7、U写回数据的情况。Cache控制器顶层模块如图4 所示 ,主存地址为A7 A0, 共 8 位,区号 E取 3 位,这样 Cache地址还剩 5 位,所以 Cache容量为 32 个单元 ,块号 B 取 3 位,那么 Cache分为 8 块,块内地址W取 2 位,则每块为 4 个单元。 图 4 中,WCT为写 Cache块表信号 ,CLR为系统总清零信号,A7A0为 CPU访问内存的地址,M 为 Cache失效信号 ,CA4CA0为 Cache 地址 ,MD7 MD0 为主存送Cache的数据 ,D7 D0 为 Cache送 CPU数据,T2 为系统时钟 ,RD为 CPU访问内存读信号,LA1

8、与LA0 为块内地址。图 3Cache 系统图精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 3 页,共 7 页 - - - - - - - - - - Cache控制器设计实验图 4 Cache 控制器顶层模块图3.实验内容(1)在 Vivado 软件中 ,使用 D 触发器作为存储一个二进制代码的存储单元,设计一个 8位的存储单元模块 ,按照基于硬件描述语言的设计流程输入该电路,进行编译、仿真验证后生成存储单元模块供上层设计调用。(2)根据对实验原理的描述,使用这个8 位的存储单元构成一个32*8 位的

9、 Cache 存储体 ,并在 Vivado 软件中实现该电路,进行编译、仿真验证后生成Cache存储体模块供上层调用。(3)参照上面两步 ,在 Vivado 软件中实现一个4 位的存储单元模块;然后使用这个位存储单元构成一个8*4 位的区表存储器,用来存放区号与有效位。由图2 可知 ,还需要实现一个区号比较器 ,如果主存地址的区号与区表中相应单元中的区号相等,且有效位为 ,则 Cache命中,否则 Cache 失效 ,标志位为 M,M 为 0 时表示 Cache 失效。最后 ,编译、仿真验证后生成区表存储器模块供上层调用。(4)当 Cache 命中时 ,就将 Cache 存储体中相应单元的数据

10、送往CPU, 这个过程比较简单;当 Cache失效时 ,需要将主存中相应块中的数据读出写入Cache 中,这样 Cache控制器就要产生访问主存储器的地址与主存储器的读信号,由于每块占4 个单元 ,所以需要连续访问4 次主存,这就需要一个低地址发生器。在 Vivado 软件中 ,按照基于VerilogHDL 的设计流程输入一个2 位计数器 ,用于产生低2 位地址 0011,进行编译、仿真验证后生成低地址发生器模块供上层调用。(5)将产生的低2 位地址与 CPU给出的高 6 位地址组合起来,形成访问主存储器的地址,M精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎

11、下载 名师归纳 - - - - - - - - - -第 4 页,共 7 页 - - - - - - - - - - Cache控制器设计实验可以作为主存的读信号。这样在时钟T2 的控制下 ,就可以将主存中相应的块写入Cache的相应块中 ,最后再修改区表。 在 Vivado 软件中 ,参照图 4 给出的 Cache存储器顶层模块,按照基于VerilogHDL 的设计流程输入该电路,进行编译、仿真验证后生成编程文件。思考题 :对比分析全 (组 )相联映射与直接映射方式的区别。如何在Vivado 软件中实现全(组)相联映射方式的Cache 存储器?精品资料 - - - 欢迎下载 - - - -

12、- - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 5 页,共 7 页 - - - - - - - - - - Cache控制器设计实验精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 6 页,共 7 页 - - - - - - - - - - Cache控制器设计实验顶层模块图CPU 读内存时与 CACHE MEM之间的连接信号精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 7 页,共 7 页 - - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com