Согласованность RISC-V кеша

Для процессора RISC-V Rocket, какую политику записи используют кэши (например, обратная запись + выделение, запись через + отсутствие выделения)? Как кэши L1 остаются связанными с кэшем L2 в RISC-V?

1 ответ

Решение

RISC-V - это ISA (архитектура набора команд), а не процессор. Таким образом, ISA ничего не может сказать о политиках обратной записи в кэш или о дизайне когерентности. Эти решения оставлены на усмотрение отдельных групп разработчиков процессоров. На самом деле, им даже не нужны кэши.

Единственное, что RISC-V должен сказать о памяти, это "модель согласованности памяти". В RISC-V используется довольно расслабленная модель согласованности, и поэтому два потока RISC-V могут видеть две разные последовательности / чередования операций с памятью (в отличие от "последовательной согласованности", когда все потоки видят одно и то же чередование).


Редактировать (теперь, когда вопрос проясняется, речь идет только о процессоре Berkeley Rocket):

По состоянию на 9 сентября 2015 года, кэш L1 Rocket имеет обратную запись + выделение. L1 сохраняются согласованными с помощью запросов отслеживания. Каждое ядро ​​Rocket находится на "Rocket Tile", который содержит L1.

Дополнительный L2 находится за пределами Ракетных плиток. Ракетные плитки разрешают доступ к одному L2. L2 включительно и содержит все данные L1. Тем не менее, L2 может содержать устаревшие данные, но если ядро ​​запрашивает эти данные, L2 будет знать, какой L1 содержит текущую копию данных, и отправит запрос на освобождение в зависимости от ситуации.

Другие вопросы по тегам