У меня возникли проблемы с пониманием того, как определить бит тега/индекса/смещения, потому что формулировка вопросов меня путает. Чтобы уточнить, слово в архитектуре - 64 бита. Вот первый вопрос:Как узнать размер блока/смещения блока в дизайне кеша?
кэши имеют важное значение для обеспечения иерархии памяти высокой производительности процессорами. Ниже приведен список ссылок на 64-разрядные адреса памяти, , заданные как адреса слов. 0x03, 0xb4, 0x2b, 0x02, 0xBF, 0x58, 0xbe, 0x0E, 0xb5, 0x2c, 0xBA, 0xfd
Для каждой из этих ссылок, определить двоичное слово адрес, тег, индекс, и смещение с учетом прямого кэша с двухсловными блоками и общим размером восьми блоков. Также укажите, является ли ссылка хитом или пропуском, предполагая, что кеш изначально пуст.
Решение указывает, что смещение составляет 1 бит, так как оно принимает 1 бит для представления двух разных «слов» блока. Поэтому я пытаюсь визуализировать блок, разбитый на 2 раздела (смещения). Откуда я знаю, что вы должны разделить блоки на слова (почему бы не байты)? Ясно, что секции в блоке определяют количество смещенных битов, необходимых для представления секций блоков. Но 2 слова - 16 байт, так почему же блок не разбит на 16 разделов, чтобы указать байты вместо 2 разделов для обозначения слов? Если блок был разделен на 16 разделов (для всех байтов из 2-х слов), не было бы 4 смещенных бита, чтобы определить 16 различных байтовых секций в блоке? Я изо всех сил стараюсь узнать, как определить размер блока. Возможно ли, что вопрос, говорящий о «блоках из двух слов», должен визуализировать блоки, разделенные на слова? Является ли блок из 2 слов таким же, как 16-байтовый блок? (слово равно 8 байтам)
Следующий вопрос упоминает байт-адресацию, и это меня сбивает с толку. Как это соотносится ?:
По соглашению, кэш назван в соответствии с количеством данных, которые он содержит (т.е. 4 KiB кэш может содержать 4 KiB данных); однако в кэшах также требуется SRAM для хранения метаданных, таких как теги и действительные биты. В упражнении вы рассмотрите, как конфигурация кэша влияет на общий объем SRAM, необходимый для его реализации, а также на производительность кэша . Для всех частей предположим, что кеши являются байтами, адресуемыми, а адреса и слова - 64 бита.
Рассчитать общее количество бит, необходимых для реализации кеша 32 KiB с двухсловными блоками.
Оба вопросы от компьютерной организации и дизайна Дэвид Паттерсон и Джон L Hennessy
Пахнет домашней работой. –
@TurboJ Если бы вы прочитали дальше, вы увидите, что у меня есть решения. «Решение указывает ...» Вы даже прочитали сообщение? Нигде я не спросил, как это сделать. Я смущен, как известно, когда создавать смещенные биты на целое слово или байт. –
«У меня возникли проблемы с пониманием этого двусмысленно написанного вопроса», вероятно, должно быть направлено на того, кто написал вопрос. Не смотря ни на что, сопутствующий материал курса для контекста, трудно сделать вывод о том, что предполагается предположить. Тот факт, что он дает адреса слов и запрашивает адреса слов, несколько подсказывает адресный адресный кеш, хотя ... – Notlikethat