КР1818ВГ93

КР1818ВГ93интегральная микросхема контроллера накопителя на гибких магнитных дисках (НГМД) производства СССР[1]. Функциональный аналог микросхемы FD1793 компании Western Digital[2]. Микросхема обеспечивает управление процессом обмена информацией между компьютером и НГМД, позволяет программно задавать размер и число секторов на дорожке, скорость перемещения магнитных головок. Поддерживаются одинарная и двойная плотность записи. Микросхема использовалась во многих советских и российских персональных компьютерах, начиная с середины 1980-х годов. Выпускалась заводами «Квазар» и «Квантор».

КР1818ВГ93

Описание править

Микросхема обеспечивает формирование управляющих сигналов для НГМД, преобразование данных из параллельного кода в последовательный и обратно, чтение и запись данных и индексной информации, контроль целостности информации по контрольной сумме. При записи на диск обеспечивается совместимость с двумя форматами: форматом системы подготовки данных IBM 3740 в режиме одинарной плотности (FM) и форматом мини-компьютера IBM System/34 в режиме двойной плотности (MFM)[3].

Скорость обмена с НГМД составляет 250 Кбит/с в режиме одинарной плотности и 500 Кбит/с в режиме двойной. В режиме записи формируются сигналы для управления внешней схемой предкомпенсации записи, необходимой для учёта нелинейности характеристик магнитных носителей. Для чтения требуется внешняя схема сепаратора данных[4]. Поиск секторов на дорожке осуществляется по адресным меткам, которые должны быть предварительно записаны на НГМД в режиме разметки. Для контроля информации вычисляется контрольная сумма в виде двух байт с порождающим многочленом  

Обмен информацией между компьютером и контроллером НГМД выполняется по 8-разрядной двунаправленной шине данных через 5 программно доступных внутренних регистров: регистр данных, регистр дорожки, регистр сектора, регистр команд и регистр состояния. Выбор требуемого регистра осуществляется с помощью 2-разрядной шины адреса. В таблице приведено соответствие значений разрядов адреса A1 и A0 выбираемым регистрам.

A1 A0 Чтение Запись
0 0 Регистр состояния Регистр команд
0 1 Регистр дорожки Регистр дорожки
1 0 Регистр сектора Регистр сектора
1 1 Регистр данных Регистр данных

Синхронизация контроллера осуществляется от внешнего тактового генератора частотой 1 или 2 МГц (временные задержки приведены для частоты 2 МГц). Микросхема выпускалась по технологии N-МОП 6 мкм[5] в 40-выводном корпусе DIP. Содержала 5600 интегральных элементов[6]. Питание микросхемы осуществлялось от двух источников, напряжением 5 и 12 В.

Система команд править

Контроллер выполняет 11 команд четырех типов: вспомогательные, записи и чтения информации, записи и чтения индексных данных, принудительного прерывания. Завершение выполнения каждой команды сопровождается установкой сигнала INTRQ. В таблице приведена структура команд контроллера.

Тип Команда Номера бит
7 6 5 4 3 2 1 0
I Восстановление 0 0 0 0 h V r1 r0
I Поиск 0 0 0 1 h V r1 r0
I Шаг 0 0 1 u h V r1 r0
I Шаг вперед 0 1 0 u h V r1 r0
I Шаг назад 0 1 1 u h V r1 r0
II Чтение сектора 1 0 0 m S E C 0
II Запись сектора 1 0 1 m S E C a0
III Чтение адреса 1 1 0 0 0 E 0 0
III Чтение дорожки 1 1 1 0 0 E 0 0
III Запись дорожки 1 1 1 1 0 E 0 0
IV Принудительное прерывание 1 1 0 1 I3 I2 I1 I0

Значения флагов команд:

h — флаг установки магнитной головки в рабочее положение (при h = 0 головка поднята, при h = 1 установлена в рабочее положение)
V — флаг проверки номера дорожки (при V = 0 проверка не выполняется, при V = 1 выполняется перевод магнитной головки в рабочее положение, выдерживается пауза в 15 мс, проверяется сигнал HRDY и считывается первая найденная адресная метка. Если номер дорожки совпадает с заданным в регистре дорожки, проверка считается успешной, в противном случае устанавливается флаг ошибки в регистре сосотояния)
r1r0 — код скорости перемещения магнитной головки
u — флаг обновления регистра дорожки (при u = 0 обновление не выполняется, при u = 1 регистр дорожки обновляется при выдаче каждого шагового импульса)
m — флаг операции над несколькими секторами (при m = 0 после выполнения операции с сектором команда завершается, при m = 1 после выполнения операции к регистру сектора прибавляется 1 и операция повторяется до достижения последнего сектора на дорожке или выдачи команды принудительного прерывания)
S — флаг выбора стороны диска
E — флаг задержки установки магнитной головки в рабочее положение (при E = 0 задержка не выполняется, при E = 1 после выдачи сигнала HLD выполняется задержка в 15 мс)
C — флаг проверки стороны дорожки (при C = 0 проверка не выполняется, при C = 1 выполняется проверка номера стороны, считанного из адресной метки, со значением флага S)
a0 — флаг метки данных (при a0 = 0 перед данными сектора записывается метка «данные» в виде байта 0xFB, при a0 = 1 записывается метка «удалённые данные» в виде байта 0xF8). При операции чтения сектора тип метки данных помещается в регистр состояния
I3 — флаг условия прерывания (при I3 = 1 прерывание возникает при переходе контроллера из состояния «не готов» в состояние «готов»)
I2 — флаг условия прерывания (при I2 = 1 прерывание возникает при переходе контроллера из состояния «готов» в состояние «не готов»)
I1 — флаг условия прерывания (при I1 = 1 прерывание возникает при появлении сигнала индексного маркера IP)
I0 — флаг условия прерывания (при I0 = 1 прерывание возникает немедленно)

Применение править

На основе КР1818ВГ93 были построены контроллеры дисководов в компьютерах:

Также микросхема использовалась в советских и позже российских клонах ZX Spectrum в составе интерфейса Beta Disk, плате НГМД «Card-93» для компьютера «Агат»[8], и модуле контроллера дисковода «Партнёр 01.51» компьютера «Партнёр-01.01»[9].

Особенность микросхемы: Питание следовало подавать последовательно 5 В ,а затем 12В. В противном случае микросхема моментально выходила из строя.

Ссылки править

  1. Коваленко В.А., Олейник А.В., Пархоменко Л.П., Солдатенко Л.М. БИС контроллера КР1818ВГ93 для накопителя на гибком диске // Микропроцессорные средства и системы. — 1986. — № 3. — С. 3-8. — ISSN 0233-4844.
  2. Все отечественные микросхемы / Перебаскин А.В.. — 2-е изд.. — М.: Издательский дом «Додэка», 2004. — С. 114. — 400 с. — ISBN 5-94120-034-X.
  3. FD 179X-02 datasheet. Дата обращения: 13 октября 2018. Архивировано из оригинала 28 июля 2018 года.
  4. С. Рюмик. Контроллер дисководов. Канал чтения // Радиолюбитель Ваш компьютер. — 1999. — № 4. — С. 24-25. — ISSN 0869-0510.
  5. КР1818ВГ93 - контроллер гибких дисков : фото выходного дня. Дата обращения: 13 апреля 2015. Архивировано 1 февраля 2015 года.
  6. Нефедов А.В. Интегральные микросхемы и их зарубежные аналоги. — М.: ИП «Радиософт», 2001. — Т. 12. — 544 с. — ISBN 5-93037-053-2.
  7. С. Ахманов, Н. Рой, А.Скурихин. Пользователям о «Корвете». Контроллер накопителя на гибких дисках // Радио. — 1989. — № 6. — С. 34-37. — ISSN 0033-765X.
  8. Фотографии различных блоков Агата: контроллеры дисководов. Дата обращения: 13 октября 2018. Архивировано из оригинала 14 октября 2018 года.
  9. МКД "Партнер-01.51". Дата обращения: 22 апреля 2019. Архивировано 22 апреля 2019 года.