Question

In: Computer Science

Given an 8-word, direct mapped cache, and the sequence of address accesses below, enter the number...

Given an 8-word, direct mapped cache, and the sequence of address accesses below, enter the number of misses.

CACHE CONFIG

24
13
24
10
8
8

Given an 8-word, 2-way set associative cache, and the sequence of address accesses below, enter the number of misses.

CACHE CONFIG
22
1
9
22
22
22

Given an 8-word, 2-way set associative cache, and the sequence of address accesses below, enter the number of misses.

CACHE CONFIG
23
23
8
20
9
20

Given an 8-word, direct mapped cache, and the sequence of address accesses below, enter the number of misses.

CACHE CONFIG
5
23
1
24
23
11

Given an 8-word, 4-way set associative cache, and the sequence of address accesses below, enter the number of misses.

CACHE CONFIG
4
4
12
23
12
4

Solutions

Expert Solution

Direct Mapped:(8 word)

Sequence = { 24, 13, 24, 10, 8, 8 } , addresses will be placed in the block no. (address % 8).

for 24: it will be placed in 24 % 8 = 0; '24' will be placed in 0th block; ==> 1st miss;

for 13: 13 % 8 = 5; will be in 5th block ==> 2nd miss;

for 24: 24 is already present, so cache hit.

for 10: 10 % 8 = 2; will be in 2nd block ==>3rd miss

for 8: 8 % 2 = 0; 0th block is occupied by 24, so replace it by 8 ==> 4th miss

again 8: 8 is already present, so cache hit.

So Total: 4 miss.

0 24 / 8
1
2 10
3
4
5 13
6
7

2-way set associative(8 word):

Sequence: { 22, 1, 9, 22, 22, 22 }:

Here no of sets: 8/2 = 4 no. of sets.

So addresses will be mapped to any one of these sets. and can be placed any of the two blocks;

for 22: 22 % 4 = 2; place it in 2nd set, 4th block, ==> 1 miss;

for 1: 1 % 4 = 1; in 1st set; in 2nd block; ==> 1 miss;

for 9: 9 % 4 = 1; in 1st set; in 3rd block as it is empty; ==> 1 miss;

for 22: already present in cache; ==>cache hit;

for 22: already present in cache; ==>cache hit;

for 22: already present in cache; ==>cache hit;

So Total = 3 miss;

set 0 0
1
set 1 2 1
3 9
set 2 4 22
5
set 3 6
7

2-way set associative(8 word):

Sequence: { 23, 23, 8, 20, 9, 20 }:

Here no of sets: 8/2 = 4 no. of sets.

So addresses will be mapped to any one of these sets. and can be placed any of the two blocks;

for 23: 23 % 4 = 3; place it in 3rd set, 6th block, ==> 1 miss;

for 23: already present. ==> cache hit

for 8: 8 % 4 = 0; in 0th set; in 0th block; ==> 1 miss;

for 20: 20 % 4 = 0; in 0th set; in 1st block; ==> 1 miss

for 9: 9 % 4 = 1; in 1st set; in 2nd block; ==> 1 miss

for 20: already present in cache; ==>cache hit;

So Total = 4 miss;

set 0 0 8
1 20
set 1 2 9
3
set 2 4
5
set 3 6 23
7

Direct Mapped:(8 word):

Sequence = { 5, 23, 1, 24, 23, 11 } , addresses will be placed in the block no. (address % 8).

for 5: it will be placed in 5 % 8 = 5; '5' will be placed in 5th block; ==> 1st miss;

for 23: 23 % 8 = 7; will be in 7th block ==> 2nd miss;

for 1: 1 % 8 = 1; will be in 1st block ==> 3rd miss;

for 24: 24 % 8 = 0; will be in 0th block ==> 4th miss;

for 23: already present. ==>cache hit

for 11: 11 % 8 =3; will be in 3rd block; ==> 5th miss;

So Total: 5 miss.

0 24
1 1
2
3 11
4
5 5
6
7 23

4-way set associative(8 word):

Sequence: { 4, 4, 12, 23, 12, 4}:

Here no of sets: 8/4 = 2 no. of sets.

So addresses will be mapped to any one of these sets. and can be placed in any of the four blocks;

for 4: 4 % 2 = 0; place it in 0th set and 0th block; ==> 1 miss

for 4: already present. ==> cache hit

for 12: 12 % 2 = 0; place it in 0th set and 1st block; ==> 1 miss

for 23: 23 % 2 = 1; in 1st set; in 4th block; ==> 1 miss

for 12: already present. ==> cache hit

for 4: already present in cache; ==>cache hit;

So Total = 3 miss;

set 0 0 4
1 12
2
3
set 1 4 23
5
6
7

Related Solutions

For a direct mapped cache design with 32 bit address, the following bits of the address...
For a direct mapped cache design with 32 bit address, the following bits of the address are used to access the cache Tag Index Offset 31 - 8 7 - 4 3 - 0 What is the cache block size (in words)? How many entries does the cache have? What is the ratio between total bits required for such a cache implementation over the data storage bits? Starting from power on, the following byte-addressed cache references are recorded. Address 0...
Below are listed parameters for different direct-mapped cache designs. Cache Data Size: 32 KiB Cache Block...
Below are listed parameters for different direct-mapped cache designs. Cache Data Size: 32 KiB Cache Block Size: 2 words Cache Access Time: 1 cycle Word: 4 bytes. Calculate the total number of bits required for the cache listed above, assuming a 32-bit address. Given that total size, find the total size of the closest direct-mapped cache with 16-word blocks of equal size or greater. Explain why the second cache, despite its larger data size, might provide slower performance than the...
A direct mapped cache has 32 cache lines.Each cache line consists of 4 words, and each...
A direct mapped cache has 32 cache lines.Each cache line consists of 4 words, and each word is four bytes.The address bus consists of 16 bits. How many bits are required for the tag in this direct-mapped cache?
Suppose a computer using direct mapped cache has 232 bytes of main memory and a cache...
Suppose a computer using direct mapped cache has 232 bytes of main memory and a cache of 1024 blocks, where each block contains 32 bytes. [2] How many blocks of main memory does this computer have? [4] Show the format of a memory address as seen by cache; be sure to include the field names as well as their sizes. [3] Given the memory address 0x00001328, to which cache block will this address map? (Give you answer in decimal.) A...
A direct mapped cache has 16 blocks and block size is 64-bits (8 bytes). a. Where...
A direct mapped cache has 16 blocks and block size is 64-bits (8 bytes). a. Where will the memory block 45 reside in cache? (5 b. Where will be the memory address 1667 mapped in cache
A direct-mapped cache consists of 8 blocks. Byte-addressable main memory contains 4K blocks of 8 bytes...
A direct-mapped cache consists of 8 blocks. Byte-addressable main memory contains 4K blocks of 8 bytes each. Access time for the cache is 22ns, and the time required to fill a cache slot from main memory is 300ns. (This time allows us to determine the block is missing and bring it into cache.) Assume a request is always started in parallel to both cache and to main memory(so if it is not found in cache, we do not have to...
A direct-mapped cache consists of 8 blocks. Byte-addressable main memory contains 4K blocks of 8 bytes...
A direct-mapped cache consists of 8 blocks. Byte-addressable main memory contains 4K blocks of 8 bytes each. Access time for the cache is 22ns, and the time required to fill a cache slot from main memory is 300ns. (This time allows us to determine the block is missing and bring it into cache.) Assume a request is always started in parallel to both cache and to main memory(so if it is not found in cache, we do not have to...
A computer uses direct-mapped cache with four16-bit words, and each word has an associ-ated13-bit tag. Consider...
A computer uses direct-mapped cache with four16-bit words, and each word has an associ-ated13-bit tag. Consider the following loop (three instructions) in a program. Before the loop,the values in registersR0,R1,R2are 0, 054E, and 2 respectively. Consider that instructions arealready in separate cache memory. (See Table1.)The loop starts at location LOOP=02EC.LOOPAdd(R1)+,R0;DCRR2; BR>0LOOPShow the content of cache at the end of each pass of this loop if direct mapping cache is used.Compute hit rate.
Suppose we have a direct-mapped cache that can hold a total of 1024 blocks with 4...
Suppose we have a direct-mapped cache that can hold a total of 1024 blocks with 4 words per block. Compute the block index, block offset, and the tag for the following addresses: (a) 0x11001001 (b) 0x00010014 (c) 0x01000004 (d) 0x01001018 (e) 0x7bdcca10
a) consider a direct mapped cache with 10 blocks of 10 words each. Suppose main memory...
a) consider a direct mapped cache with 10 blocks of 10 words each. Suppose main memory is 1000 words. For ewach memory address below say what cache block it maps to, what is the offset, and what is the tag. 934, 666, 348, 522
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT