- •Министерство образования и науки российской федерации
- •1. Цель работы
- •2. Исходные данные к проекту
- •3. Разработка структурной схемы эвм
- •3.1 Центральный процессор
- •3.2 Оперативная память (оп)
- •3.3 Блок синхронизации
- •3.4 Система прерывания программ
- •3.5 Таймер
- •3.6 Система ввода-вывода
- •3.7 Монитор и видеоадаптер
- •3.8 Клавиатура и мышь
- •3.9 Жесткий диск и нгмд
- •4. Разработка принципиальной схемы кэш
- •4.1 Основные характеристики кэш-памяти
- •4.2 Способ отображения оперативной памяти на кэш-память
- •4.3 Алгоритм замещения информации в заполненной кэш-памяти
- •4.4 Алгоритм согласования содержимого кэш-памяти и основной памяти
- •4.5 Смешанная и разделенная кэш-память
- •4.6 Выбор элементной базы для принципиальной схемы кэШа
- •4.7 Принципиальная схема кэш
- •5. Заключение
- •6. Список литературы
4.3 Алгоритм замещения информации в заполненной кэш-памяти
Когда кэш-память заполнена, занесение в нее нового блока связано с замещением содержимого одной из строк. При прямом отображении каждому блоку основной памяти соответствует только одна определенная строка в кэш-памяти, и никакойиной выбор удаляемой строки здесь невозможен.
4.4 Алгоритм согласования содержимого кэш-памяти и основной памяти
В процессе вычислений ЦП может не только считывать имеющуюся информацию, но и записывать новую, обновляя тем самым содержимое кэш-памяти. В этом случае содержимое строки кэша и соответствующего блока ОП перестает совпадать. В результате, на связанное с основной памятью устройство вывода может быть выдана «устаревшая» информация, поскольку все изменения в ней, сделанные процессором фиксируются только в кэш-памяти. С другой стороны, при использовании ПУ с прямым доступом к памяти может возникнуть обратная ситуация, когда в кэше окажется устаревшая информация. Но этот случай здесь рассмотрен не будет, т.к. в соответствии с заданием, ввод-вывод может осуществляться только через ЦП (программно-управляемыйввод-вывод).
Для разрешения рассмотренной ситуаций (когда процессор выполняет операцию записи) в системах с кэш-памятью предусмотрены методы обновления основной памяти, которые можно разбить на две большие группы: метод сквозной записи (write through) и метод обратной записи (write back).
В разрабатываемом кэше будет использоваться метод сквозной записи, при котором прежде всего обновляется слово, хранящееся в основной памяти. Если в кэш-памяти существует копия этого слова, то она также обновляется. Если же в кэш-памяти отсутствует нужная копия, то из основной памяти в кэш-память пересылается блок, содержащий обновленное слово (сквозная запись с отображением).
Главное достоинство метода сквозной записи состоит в том, что когда строка в кэш-памяти назначается для хранения другого блока, то удаляемый блок можно не возвращать в основную память, поскольку его копия там уже имеется. Метод достаточно прост в реализации. К сожалению, эффект от использования кэш-памяти (сокращение времени доступа) в отношении к операциям записи здесь отсутствует.
4.5 Смешанная и разделенная кэш-память
Когда в микропроцессорах впервые стали применять внутреннюю кэш-память, ее обычно использовали как для команд, так и для данных. Такую кэш-память принято называть смешанной, а соответствующую архитектуру — Принстонской (Princeton architecture), по названию университета, где разрабатывались ВМ с единой памятью для команд и данных, то есть соответствующие классической архитектуре фон-Неймана. Сравнительно недавно стало обычным разделять кэш-память на две — отдельно для команд и отдельно для данных. Подобная архитектура получила название Гарвардской (Harvard architecture), поскольку именно в Гарвардском университете был создан компьютер «Марк-1» (1950 год), имевший раздельные ЗУ для команд и данных.
Смешанная кэш-память обладает тем преимуществом, что при заданной емкости ей свойственна более высокая вероятность попаданий по сравнению с разделенной, поскольку в ней оптимальный баланс между командами и данными устанавливается автоматически. Так, если в выполняемом фрагменте программы обращения к памяти связаны в основном с выборкой команд, а доля обращений к данным относительно мала, кэш-память имеет тенденцию насыщаться командами, и наоборот.
С другой стороны, при раздельной кэш-памяти выборка команд и данных может производиться одновременно, при этом исключаются возможные конфликты. Последнее обстоятельство существенно в системах, использующих конвейеризацию команд, где процессор извлекает команды с опережением и заполняет ими буфер или конвейер.
В соответствии с заданием разрабатываемый КЭШ будет являться смешенным.