Сколько бит содержится в поле адреса для кэша с прямым отображением?

Сколько бит содержится в поле адреса для кэша с прямым отображением?

Вот проблема, над которой я работаю:
Проблема:«Высокоскоростная рабочая станция имеет 64-битные слова и 64-битные адреса с разрешением адресов на уровне байтов. Если предположить, что кэш с прямым отображением содержит 8192 строки по 64 байта, сколько бит содержится в каждом из следующих адресных полей кэша? 1) байт 2) индекс 3) тег?»

Сначала я определил термины в этой задаче и использовал другой вопрос Stack Overflow Direct Mapped Cache и мой другой вопрос наКэшированиев качестве ссылок (пожалуйста, поправьте меня, если какие-либо из моих определений неверны)

  • 64-битные слова — процессор может обрабатывать 64 бита одновременно
  • 64-битные адреса с адресацией на уровне байтов — в ОЗУ имеется 2^64 ячеек памяти, и каждая ячейка памяти хранит один байт.
  • Кэшимеет высокую скорость и разделен на строки кэша
  • Кэш с прямым отображениемгде блок оперативной памяти отображается в одну строку кэша (не уверен в значимости этого)

Сейчас отрабатываюПрямой кэш с отображениемв качестве ссылки

  1. Байт — поскольку строка байтов состоит из 64 байтов, для идентификации одного байта в этой строке байтов требуется 6 бит.
  2. Индекс. Поскольку существует 8192 «строки» байтовых строк, для идентификации каждой строки вам понадобится не менее 10 бит.

А вот тут я застрял. Другоепочтасказал: «Все остальные биты — это биты TAG». В то время как эта лекцияпочтасказал: «Каждая строка имеет тег, который указывает адрес в M, с которого была скопирована строка». Я предполагаю, что M означает RAM.

Итак, здесь все остальные биты будут 64 - 6 - 10 = 48 бит. Но разве не нужны все 64 бита в TAG, чтобы указать, из какой ячейки памяти в ОЗУ поступили данные в кэш? Может кто-нибудь прояснить путаницу, которая у меня тут возникла?

Связанный контент