- •Курсовая работа по курсу
- •Разработка и описание структурной схемы эвм.
- •Центральный процессор
- •Система прерываний
- •Описание блока синхронизации и таймера
- •Клавиатура
- •Монитор
- •Прямой доступ к памяти (пдп)
- •Основная память
- •Контроль памяти по Хэммингу
- •Разработка функциональной схемы кэШа команд и данных
- •Литература
Основная память
Основная память (ОП) служит для хранения данных, программ, промежуточных или конечных результатов.
Т.к. шина адреса 32-разрядная, то эти 32 разряда позволяют адресовать до 4 Гслова. Структура ОП по заданию многоблочная, т.е. имеет в своем составе блоки фиксированной длины. Преимуществом многоблочной памяти:
позволяет наращивать емкость с помощью добавления новых блоков;
заменять дефектные блоки при выходе их из строя.
ОП делится на ОЗУ и ПЗУ. Емкость ОП выберем 128 Мбайт, из них на ПЗУ отведем 1 Мбайт.
ОЗУ выполнено на микросхемах динамической памяти, следовательно, в функции контроллера памяти входят управления чтением, записью и регенерацией, а также выбор типа адресуемой памяти (ОЗУ / ПЗУ). В качестве ПЗУ будем использовать микросхему PROMс однократным программированием.
По заданию имеется блок обнаружения и коррекции ошибок по коду Хэмминга, поэтому разрядность ОЗУ составляет 39 бит (32 бита – информационные и 7 бит – контрольные).
Для адресации 128Мбайт памяти требуется всего 27-разрядный адрес. Адреса от 0 до FFFFEотведем под ПЗУ, а отFFFFFдо 7FFFFFE- под ОЗУ.
Размер блока ОП выберем равным 64Мбайта, таким образом, всего в памяти будет 2 блока. Для адресации 64Мбайт нужно всего 26 младших разрядов адреса, 27-ой разряд отводится для выбора блока.
Основными сигналами при работе с памятью являются RD/#WR(чтение/запись) иMEMQ(разрешение работы памяти).
Рис. 8. Структурная схема ОП
Контроль памяти по Хэммингу
При работе с памятью не исключено возникновение различного рода отказов и сбоев. Причиной отказов могут быть производственные дефекты, повреждение микросхем или их физический износ. Проявляются отказы в том, что в отдельных разрядах одной или нескольких ячеек постоянно считывается 0 или 1 независимо от записываемой туда информации. Сбой – это случайное неверное считывание или запись.
Для обнаружения ошибок и исправления некоторых из них используется код Хэмминга. Код Хэмминга позволяет обнаруживать и исправлять любые одиночные ошибки и обнаруживать двойные ошибки.
Для реализации контроля и исправления ошибок в памяти с использованием кода Хэмминга возможно использовать специальную микросхему типа IDT49C460, позволяющую строить системы контроля на 32 или 64 бита.
Алгоритм:
При записи 32-разрядного слова в ОЗУ корректор формирует 6-разрядный синдром и 1 разряд паритета, которые записываются в дополнительные разряды адресуемой ячейки ОЗУ. При чтении слова из ячейки ОЗУ информационные разряды поступают в корректор, туда же поступают и корректирующие разряды.
Корректор анализирует полученную информацию и, если ошибки нет, то информационные разряды передаются на системную шину данных без изменений. В случае возникновения одиночной ошибки, корректирующая логика исправляет дефектный бит и формирует сигнал одиночной ошибки (#ERR). Если возникает ошибка в двух битах или более, то формируется сигнал «неисправимая ошибка», вызывающий соответствующее прерывание, которое должно быть обработано программой обработки такого рода ошибок.
Рис. 9. Контроллер обнаружения и исправления ошибок памяти по Хэммингу