【发布时间】:2015-01-19 13:56:33
【问题描述】:
这是我的考试学习指南中的一个问题,我们尚未介绍如何计算数据传输。任何帮助将不胜感激。
Given 是一个 8 路组关联的 2 级数据缓存,容量为 2 MByte (1MByte = 2^20 Byte) 块大小为 128 字节。高速缓存通过共享的 32 位地址连接到主存储器,并且 数据总线。高速缓存和 RISC-CPU 通过单独的地址和数据总线连接,每个总线都有一个 宽度为 32 位。 CPU正在执行加载字指令
a) 在缓存未命中的情况下,有多少用户数据从主内存传输到缓存?
b) 在缓存未命中的情况下,有多少用户数据从缓存传输到 CPU?
【问题讨论】:
-
您的问题与编程无关,也没有显示任何搜索效果。
-
@mrgenco 它涉及低级编程,即计算机体系结构。就搜索工作而言,在过去的 8 个小时里,我一直在阅读我的书,试图弄清楚如何做到这一点。我在我的书中找不到这个信息;这是我的教授的一个问题。捏造。因此,我正在寻求帮助。
-
告诉我们你的想法和原因,如果你是对的,我们会告诉你:)
-
@VAndrei 早该到期了,但老实说,我不知道该怎么做。我说:对于A来说,因为有8个128字节的块需要更新,所以8*128 = 1024字节会从内存中调出。对于 B 来说,有两条 32 位的总线,先发送 64 位,然后声明未命中,所以从内存中解决未命中后,该指令必须再向 CPU 重新发送 64 位,总共 128 位。但是,这只是我如何理解这一点的简单逻辑(而且我根本不理解这一点);这只是我最好的猜测,因为我不能把它留空。
标签: caching computer-architecture data-transfer