Интерфейсы накопителей гибких магнитных дисков(НГМД=FDD)


FDD подключена к контроллеру через спец. стандартный интерфейс. Основные функции по управлению накопителем, а также кодировка, декодировка данных выполняется контроллером. Все сигналы интерфейса, накапливаемые на гибких дисках, являются логическими с уровнями ТТЛ, причем активный уровень низкий. Формирование выходных сигналов накопителя имеют выход типа открытых коллекторов. Современные трехдюймовые накопители используют распределенный терминатор, т.е. резисторы с высоким сопротивлением в 1-1,5кОм постоянно соединяющие входные линии интерфейса с шиной питания 5В. Низкие частоты интерфейсных сигналов исключают влияние точности согласованности импеданса шлейфа и сопротивление терминатора. Логический интерфейс предусматривает выбор накопителя сигналом Drive Set и запуск мотора шпинделя сигналом MotorOn. Для выборки накопителя имеется 4 сигнала: DS0…DS3, но устройство отзывается только на один из этих сигналов, который определяется либо установкой перемычек, либо программным путем. Выбранный накопитель воспринимает управляющие сигналы от контроллера и передает ему свои выходные сигналы, т. е. происходит обмен. Для перемещения блока головок на один шаг контроллер должен подает импульс Step, а направление перемещения к центру или от центра определяется уровнем сигнала Direction. При низком уровне сигнала, т.е. в активной фазе, перемещение происходит в сторону центра диска. При высоком уровне сигналы двигаются к внешней стороне диска.
Нулевой трек контроллер находит перемещая головку от центра до появления сигнала Track00. Выбор стороны читаемого диска происходит с помощью сигнала Side1. Начало дорожки накопитель отмечается сигналом Index, который вырабатывается при прохождении индексного отверстия вращающейся дискеты мимо датчика. Считываемые данные в закодированном виде усиленный и сформированный в ТТЛ сигнал поступает от накопителя на линии интерфейса Read Data. Если на дискете установлена защита от записи, накопитель выдаст сигнал Write Protect. Для снижения тока записи, которая требуется при работе накопителей высокой плотности, так называется Hide Den site. Данный сигнал вырабатывается контроллером, но для самого дисковода он дублируется сигналом от датчика типа дискеты. Тип дисковода описывается в области CMOS Setup, сравнивая данную запись с сигналом от датчика типа дискеты, выдает рекомендации контроллеру об необходимых условиях считывания дискеты. Дисковод, обладающий свойствами считывания дискет HD, благодаря процедуре Reduce Write, может надежно считывать и форматировать дискеты других типов с меньшей плотностью записи. В момент смены дискеты накопитель устанавливает сигнал Disk Changer, который сбрасывается после установки дискеты и обращения к накопителю, такой сигнал имеется только у дисководов высокой плотностью. По умолчанию на системной плате компьютера устанавливается перемычка разрешающая данный сигнал. Есть альтернативное использование этой линии под сигнал готовности устройства. Все накопители на гибких магнитных дисках независимо от типов имеют одинаковый интерфейс и унифицированный 34 контактный разъем с 2 рядами штырьковых контактов. На такой интерфейсный кабель подключается 2 устройства и перемычками выставить подчиненность Master или Slave. Программное взаимодействие с накопителем на гибких дисках производится через контроллер при участии контроллера DMA и контроллера прерываний. Игнорирование сервисов BIOS и ОС производится только при работе с ключевыми дискетами. Все контроллеры применяемые в комп-ах обеспечивают совместимость с микросхемой контроллера NECРD765 или ее аналогом i8272. Контроллер подерж.2 накопителя, позволяет работать со скоростью передачи данных 250 Кб/с для дискет емкостью 360-720Кбайт, 300Кбайт/с для дискет емкостью 800Кбайт, 800Кбайт для дискет емкостью 1,2 и 1,44Мб. Кроме этого имеются отдельные накопители например LS-120, которые работают со скоростью 1000Кбайт/с и позволяет в одном устройстве считывать дискеты обычного формата и дискеты повышенной плотности 120Кбайт. Режимы контроллера соответствуют скоростям 250->1М, 500->2М, 1000->4М.
В режиме 1М на одной дорожке помещается 9 секторов по 512 байт при частоте вращения шпинделя 300 оборотов в минуту требуется скорость передачи 250Кбит/с, при 360 об/мин -> 300Кбит/с. В режиме 2М при той же скорости вращения 300 об/мини применение дисков высокой плотности на одной дорожке помещается 12 секторов, 360 об/мин -> 15 секторов. Выбор скорости вращения задает частоту синхронизации при записи и форматировании, а так же настраивает цепи фильтра автоподстройки частоты сепаратора данных контроллеров. Сепаратор способен устойчиво выделять данные и синхросигнал из сигнала, принятого от считывающей головки, при отклонениях +10% скорости вращения шпинделя от номинала.
В карте ресурсов компьютера имеется место для двух контроллеров НГМД:
1. FDC AT#1 – это стандартный и основной контроллер который занимает порты с адресами 3F0h и 3F7h.
2. FDC AT#2 – дополнительный контроллер занимает порты с адресами 370h и 377h. Контроллеры вырабатывают запрос аппаратного прерывания IRQ6 для БИОСа INT0Eh. Они его вырабатывают по окончании выполнения внутренних операций. Для обмена данными кроме основного используется дополнительный канал DMA2 — контроллер накопителей на гибком диске использован для работы со стримером. Специально для этого в контроллере имеется регистр TDR (Type Drive Register). Пара младших битов этого регистра задает номер устройства, которому соответствует стример, т.к. для него иначе настраиваются цепи фильтра автоподстройки частоты сепаратора данных. Все операции с дискетами выполняются по командам посылаемым хостом регистр DR. Согласно состоянию битов регистра MSR. Запись байта команды или данных в регистр DR разрешается, при текущем значении регистра MSR=10ххххb, а чтение MSR=11ххххb. Для записи чтения этого регистра используется определенные подпрограммы не только ожид. разреш-го значения регистра MSR, но и имеющие аварийный выход по Time Out. Хост также выполняет запись в регистр DOR для запуска или останова дисковода, а также в регистр CCR и DSR для выбора скорости передачи данных. В операциях обмена данными с дискетами обычно участвуют контроллер DMA и он должен быть своевременно инициализирован. Сигнал ТС (использ) означающий завершение передачи данных. В общем виде процедура передачи данных состоит из следующих шагов:
1. Запуск мотора и выбор дисковода (запись в регистр DOR).
2. Установка скорости (запись CCR)
3. Выполнение команды рекалибровки
4. Ожидание раскрутки двигателя
5. Позиционирование головки на требуемом цилиндре
6. Инициализации контроллера DMA
7. Посылка команды чтения записи
8. Ожидание прерывания от контроллера. Прерывание произойдет если завершится фаза исполнения, во время которой контроллер обменивается данными с хостом. Если за определенное время прерывание не получено, фиксируется неудачная попытка обращения с ошибкой по таймауту.
9. По прерыванию от контроллера, считываются байты результата, если ошибок нет, на этом обмен данными успешно завершается. Если ошибка есть то снова переходят на шаг инициализации DMA (6) и далее повторяются все команды чтения и записи. Если в течении 3 раз результата нет, то выполняется рекалибровка (3). Если после этого нет ответа обмен прекращается аварийно «Отформатируйте дискету.

Загрузка...