Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсовой проект / микроЭВМ на PIC16C84 / Организация ЭВМ курсовик.doc
Скачиваний:
108
Добавлен:
21.02.2014
Размер:
352.77 Кб
Скачать
    1. Основная память

Основная память (ОП) служит для хранения данных, программ, промежуточных или конечных результатов.

Т.к. шина адреса 32-разрядная, то эти 32 разряда позволяют адресовать до 4 Гслова. Структура ОП по заданию многоблочная, т.е. имеет в своем составе блоки фиксированной длины. Преимуществом многоблочной памяти:

  • позволяет наращивать емкость с помощью добавления новых блоков;

  • заменять дефектные блоки при выходе их из строя.

ОП делится на ОЗУ и ПЗУ. Емкость ОП выберем 128 Мбайт, из них на ПЗУ отведем 1 Мбайт.

ОЗУ выполнено на микросхемах динамической памяти, следовательно, в функции контроллера памяти входят управления чтением, записью и регенерацией, а также выбор типа адресуемой памяти (ОЗУ / ПЗУ). В качестве ПЗУ будем использовать микросхему PROMс однократным программированием.

По заданию имеется блок обнаружения и коррекции ошибок по коду Хэмминга, поэтому разрядность ОЗУ составляет 39 бит (32 бита – информационные и 7 бит – контрольные).

Для адресации 128Мбайт памяти требуется всего 27-разрядный адрес. Адреса от 0 до FFFFEотведем под ПЗУ, а отFFFFFдо 7FFFFFE- под ОЗУ.

Размер блока ОП выберем равным 64Мбайта, таким образом, всего в памяти будет 2 блока. Для адресации 64Мбайт нужно всего 26 младших разрядов адреса, 27-ой разряд отводится для выбора блока.

Основными сигналами при работе с памятью являются RD/#WR(чтение/запись) иMEMQ(разрешение работы памяти).

Рис. 8. Структурная схема ОП

    1. Контроль памяти по Хэммингу

При работе с памятью не исключено возникновение различного рода отказов и сбоев. Причиной отказов могут быть производственные дефекты, повреждение микросхем или их физический износ. Проявляются отказы в том, что в отдельных разрядах одной или нескольких ячеек постоянно считывается 0 или 1 независимо от записываемой туда информации. Сбой – это случайное неверное считывание или запись.

Для обнаружения ошибок и исправления некоторых из них используется код Хэмминга. Код Хэмминга позволяет обнаруживать и исправлять любые одиночные ошибки и обнаруживать двойные ошибки.

Для реализации контроля и исправления ошибок в памяти с использованием кода Хэмминга возможно использовать специальную микросхему типа IDT49C460, позволяющую строить системы контроля на 32 или 64 бита.

Алгоритм:

При записи 32-разрядного слова в ОЗУ корректор формирует 6-разрядный синдром и 1 разряд паритета, которые записываются в дополнительные разряды адресуемой ячейки ОЗУ. При чтении слова из ячейки ОЗУ информационные разряды поступают в корректор, туда же поступают и корректирующие разряды.

Корректор анализирует полученную информацию и, если ошибки нет, то информационные разряды передаются на системную шину данных без изменений. В случае возникновения одиночной ошибки, корректирующая логика исправляет дефектный бит и формирует сигнал одиночной ошибки (#ERR). Если возникает ошибка в двух битах или более, то формируется сигнал «неисправимая ошибка», вызывающий соответствующее прерывание, которое должно быть обработано программой обработки такого рода ошибок.

Рис. 9. Контроллер обнаружения и исправления ошибок памяти по Хэммингу