实验资源来自于MOOC-华中科技大学-计算机硬件系统设计

计算机硬件系统设计_华中科技大学_中国大学MOOC(慕课)

一、Cache(直接相联)

电路功能:设计一个具有8个cache槽的cache,主存地址16位,cache块大小为4字节。

引脚含义:

Addr:输入,16位宽,主存地址

BlkDataIn:输入,32位宽,块数据输入

BlkDataReady:输入,1位宽,块数据准备就绪

CLK:输入,1位宽,时钟输入

Miss:输出,1位宽,1:数据缺失;0:数据命中

DataOut:输出,8位宽,数据输出

由直接相联映射关系我们可知

主存地址16位

8位cache槽需要3位位宽数据

4字节cache字节块要2位位宽数据

区地址占剩余位宽

所以

区地址(tag)11位

行地址(index)3位

字地址(offset)2位

将主存地址数据进行分割

接下来实现读逻辑

由直接相联映射关系实现可知

将行索引index直接译码,得到对应行选择信号

每个cache槽需要三个寄存器,valid, tag, data,将输入输出分别对应,用三态门和行选择信号对输出数据进行选择。

当数据有效,且区地址相同表示命中

接下来实现写逻辑

输入信号为真时,且未命中(即数据失效,需要载入主存中的数据)

整体电路如下

二、测试电路

知乎视频​www.zhihu.com

如果本文对你有用,点个赞再走吧!或者关注我,我会带来更多优质的内容。

主存块和cache块关系_Cache(直接相联)相关推荐

  1. 计组——彻底搞懂cache主存映射以及cache容量的计算

    cache主存映射以及cache容量 一.三种映射方式 1. 全相联映射 2. 直接映射 3. 组相联映射 二.cache容量计算 1. 先计算cache行标记项位数 2. 再计算cache块位数 3 ...

  2. 深入分析:12C ASM Normal冗余中PDB文件块号与AU关系与恢复

    在 10G 和 11G 中,DBA 可以根据文件名,确定这个文件在 ASM 磁盘组上的分布,然后 dd 出来每一个 AU,最后拼凑成一个完成的数据文件. 在 12C 的 PDB 中,我们尝试用这种方法 ...

  3. ttf_openfont可以多次调用吗_西门子OB块、FC块、FB块、DB块之间有什么关系?如何调用?...

    我们在用西门子STEP或者TIA等编程程序的时候,必不可少的就是块编程以及调用,那么什么是块?他们之间有什么关系?如何调用?用在什么场合? 首先,建立一个新的文件,创建一个工艺所需的项目,对项目进行硬 ...

  4. oracle12c asm 冗余,深入分析:12C ASM Normal冗余中PDB文件块号与AU关系与恢复

    原标题:深入分析:12C ASM Normal冗余中PDB文件块号与AU关系与恢复 关注"数据和云",精彩不容错过 李敏:云和恩墨交付工程师 概述 在 10G 和 11G 中,DB ...

  5. Cache的地址结构,tag到底与Cache什么关系,Cache容量与总容量,Cache行长,Cache字地址?

    目录.Cache映射的问题 一.Cache的三种映射 重点:那么我说 1.直接映射 2.全相联映射 3.组相联映射 4.总结三种映射 二.Cache的三个字眼(例题) 1.Cache字地址多少位(字地 ...

  6. Oracle的逻辑结构(表空间、段、区间、块)——Oracle数据块(一)

    Oracle 的逻辑结构 ( 表空间.段.区间.块 ) --块 Oracle 存储数据的最小单位是数据块.Oracle 管理 数据库 数据文件的存储空间被称为数据块,一个数据块是数据库使用的最小数据单 ...

  7. 32 块大小_详解Linux文件系统的完整结构--引导块、超级块、GDT等

    概述 今天主要介绍一下Linux系统的文件系统,一起来看看吧~ 文件系统组成 网上看到的一张完整的文件系统图,如下: 首先,该图中有Boot Block.Super Block.GDT.Reserve ...

  8. 云服务器 ECS > 块存储 > 块存储介绍 > 块存储概述 请输入关键词

    块存储概述 更新时间:2020-04-26 20:07:51 编辑我的收藏 本页目录 块存储类型 产品性能 数据安全 计费 使用限制 产品区别 块存储是阿里云为云服务器ECS提供的块设备产品,具有高性 ...

  9. java try catch陷阱_java异常捕捉陷阱(内存泄漏,finally块,catch块,继承得到的异常)...

    1.    异常捕捉的陷阱 异常处理机制是java语言的特色之一,尤其是java语言的Checked异常,更是体现了java语言的严谨性:没有完善错误处理的代码根本不会被执行.对于Checked异常, ...

最新文章

  1. OpenCV(八)形态学操作3--形态学梯度实现轮廓分析(基本梯度、内部梯度、外部梯度、方向梯度X(Y))
  2. 有关数据库的多库查询
  3. 报表设计器条形码支持类型
  4. Linux下串口编程基础
  5. java执行完main就结束了吗_为什么main方法中执行完第一个方法完之后,后面的代码都不执行了?...
  6. python绘图库seaborn_Matplotlib Toolkits:python高级绘图库seaborn
  7. asp.net 2.0
  8. 24.Linux-Nand Flash驱动(分析MTD层并制作NAND驱动)
  9. 关闭(取消)windows 2003中ie增强的安全配置?
  10. 自制CMSIS-DAP下载器
  11. 学习记录:python糗百爬虫
  12. 基于STM32制作万能遥控器---2
  13. 笔记本护眼设置——全面攻略(保护视力)(笔者倾情奉献+强烈推荐)
  14. 加减法叫做什么运算_加减法的意义及运算定律、性质
  15. eoj 3279 爱狗狗的两个dalao(dfs)
  16. Java在手机平台上的Porting
  17. 电脑时间调到2099年,会发生什么
  18. 工厂供电综合自动化实验QY-PGD11
  19. 第19章 集合框架(3)-Map接口
  20. mysql5.0忘记root密码_【咨询】mysql忘记root密码的处理方法(5.5/5.0)

热门文章

  1. autofac 作用域_控制作用域和生命周期
  2. python如何小写p转换p_Python如何将字符串“p”从列表转换为变量值p
  3. 动态规划算法分析和理解:最长公共子序列、公共子字符串
  4. 面向对象回顾(异常(try、catch、throw、throws和finally)、接口和抽象类、面向对象特征、泛型(extends/super))
  5. ubuntu / 18.04 系统上配置 DHCP Server
  6. html5用圆圈画猫,html5的应用-画一个可爱的小猫咪效果图
  7. SRV05-4二极管参数
  8. linux安装教程 ce,docker CE安装教程
  9. php protobuf 性能,php中使用protobuffer
  10. java sql string_JAVA String转化成java.sql.date和java.sql.time方法示例