Computer Architecture
1999-2000 Fall
MW 3:30-4:45
Ciww 109

Allan Gottlieb
gottlieb@nyu.edu
http://allan.ultra.nyu.edu/~gottlieb
715 Broadway, Room 1001
212-998-3344
609-951-2707
email is best


======== START LECTURE #19 ========

  • How can we tell if a memory block is in the cache?

    Example on pp. 547-8.

    Address(10)Address(2)hit/missblock#
    2210110miss110
    2611010miss010
    2210110hit110
    2611010hit010
    1610000mis000
    300011miss011
    1610000hit000
    1810010miss010

    The basic circuitry for this simple cache to determine hit or miss and to return the data is quite easy. We are showing a 1024 word (= 4KB) direct mapped cache with block size = reference size = 1 word.

    Calculate on the board the total number of bits in this cache.

    Homework: 7.1 7.2 7.3

    Processing a read for this simple cache.

    Skip the section ``handling cache misses'' as it discusses the multicycle and pipelined implementations of chapter 6, which we skipped. For our single cycle processor implementation we just need to note a few points.

    Processing a write for our simple cache (direct mapped with block size = reference size = 1 word).

    Improvement: Use a write buffer

    Unified vs split I and D (instruction and data) caches