9.6. Контроллеры накопителей на гибких дисках
Для хранения больших объемов данных в основном применяют дисковые и ленточные накопители, хотя определенное распространение получает и ЦМД-память (память на цилиндрических магнитных доменах).Пока ленты и диски имеют такие преимущества по сравнению с ЦМД-памятью, как транспортабельность и емкость. Ленты имеют меньшую удельную стоимость и более долговечны, но зато диски обеспечивают намного меньшее время обращения. Выпускаются ленты и диски разнообразных размеров и форм, поэтому аппаратура считывания/записи также отличается разнообразием. Подробное рассмотрение магнитных внешних накопителей выходит за рамки настоящей книги; мы остановимся на самых популярных сейчас носителях для микросистем -гибких дисках (дискетахилифлоппи-дисках}.
Физическая конструкция гибкого диска и общий формат хранения данных представлены на рис. 9.42.Гибкий диск имеет майларовую основу с нанесенным на нее магнитным покрытием. В центре находится шпиндельное отверстие, а на некотором смещении от центра имеется минимум одно индексное отверстие. Назначение индексного отверстия —обеспечить накопителю отсчетную точку при считывании или записи данных. Гибкий диск помещен в квадратный чехол, в котором также имеются шпиндельное и ин-
Рис 941Типичная временны диа1рамма работы контроллера 8237
декспос отверстие Кроме того, в чсхчс есть прорезь для контакгирования головки (чи тывания/записи с ювсрхпосгью дис1 а и вырез защитыoiзаписи
Данные хранятся в последовательной форме на концентрических окружностях, назы васмых дорожками,и группирую гся по дугам, называемымсекторамиВ некоторых накопителя имеется одна головка считывания/записи и данные хранятся только на одной поверхности диска, а в других есть две головки и используются обе поверхности диск! Во втором случае пары дорожек, находящихся ч1 одном и том же расстоянии от ценгра дис1<а, называютсяцилиндрами
Стандаршые гибкие диски имеют размер стороны чехла 203и 133мм(минидиски) Различают диски спрограммным разделением на секторы,когда диск имеет одно ин декснос отверстие, и саппаратным<огда 'тело отверстий равно числу секторов Клж дый сектор должен начинаться со служебной информщии, которая отмечает начало сек тора, итолькопервый ^скгор на порожке отмечается индексным отверстием Во втором случае вес секторы отмечаюгся индексными отверстиями
Дорожки (и цилиндры) пронумерованы, причем внешняя дорожка имеет номер О Секторы 1акже нумеруются, и в диске с пр01раммным разделением на секторы первый .Сектор после индексною отверстия имеет номер 1Когда диск помещается в накопитель, шпиндель проходи! через отверстие, диск сцепляется со шпинделем и вращается В чехле со скоростью 360об/мин Подвижную головку считывания/записи можно позиt
—=—~Р чс ^ 4(1С\ \ )действий контроллера 8237«то состоякиям
Рис. 9.42.Конструкция гибкого диска
ционировать на любую дорожку, после чего вращательное движение заставляет все секторы выбранной дорожки проходить под головкой, обеспечивая тем самым доступ к отдельным секторам. Для выполнения записи или считывания головка опускается (загружается)на поверхность диска через прорезь в чехле и позиционируется на нужную дорожку. В диске с программным разделением на секторы накопитель ожидает появления сигнала от индексного отверстия, а затем начинает считывать служебную информацию о формате сектора. После нахождения нужного сектора начинается собственно операция считывания или записи. В случае диска с аппаратным разделением на секторы требуемый сектор находится с помощью сигналов от индексных отверстий.
Необходимое для доступа к сектору время складывается из следующих составляющих:
Время загрузки.Для приведения головки в контакт с поверхностью диска.Время позиционирования.Для позиционирования головки на дорожку.Вращательное запаздывание.Для поворота диска до достижения требуемого сектора. Средние значения этих времен равны 16, 225и 80мс соответственно. Когда сектор найден, средняя скорость передачи данных составляет (байт/с) :
Чяспо байт в секторе >число (.ькюров на дорож] ^а (.короаов пб'с (здс<,ьучшывл ется время прохождения промежутковмежду данными)
Рассмотрим более подробно конкретный тип гибкие дльк^ 200ммл,искс при граммным разделением на секгоры, совместимый с накопителем 3740фирмыIBMДиск имеет 77дорожек с 15(одинарная плотность) или 26(двойная плотность) секторами, хотя в напшх примерах допустимое число секюров варьируется от 8до 26Обычноиспользуются 7Ч дорожек 1с допк каются две д< фен тыс гро»ки Р-Ротаиг" дорож ки н", меруются от 0до 74
Форматы дорожки и сектора рассматриваемых дисков показаны на рис 9 43Межд> смежными секторами находятся промежутки, и сигнал от индексного отверстия должен появляться в промежутке между последним и первым сектором дорожки. Каждый сектор содержит поле идентификации и поле данных, оба из которых начинаются с поля синхронизации. Между двумя полями имеется промежуток, необходимый для коммутации головки на выполнение заданной операции. Поле идентификации начинается с маркера адреса, после которого следуют номер цилиндра (или дорожки),номер готовки, номер сектора, число байт данных в секторе и два байта контроля ошибок
Маркер адреса в пo^eидснтифик^чил первого сектора обычно огличается от маркеров в других секторах, а маркеры адреса в полях идентификации отличаются от маркеров в полях данных. Кроме того, маркеры адреса в полях данных различаются в зависимости о г того, содержит поле полезную информацию или занято байтами-заполнителями
Имеются два главных метода генерирования байт контроля ошибок Один из чих заключается в получении контрольной суммы посредством суммирования всех байт в поле, находящемся перед контрольной суммой (с игнорированием переносов).Во втором методе биты поля считаются коэффициентами одного двоичного полинома, а байты контроля ошибок являются остатком от деления эгого полинома на фиксированный поли-
Рж 94SОрг<шwr \} оп-pfiл ра накопителя на гибком диске
ном степени 1й (меюд наэывлеюя ц^кличе^, им иЛьпочным к^тролем (К( )Д.1 к;' предполагается применение методаCR<"
Hdрис 9 44показано цвоичнос представление последовательно хранимых дднньгх Информация группируется в элементы, каждый ич когорых разделен на четыре интерва ла; в первом интервале находичся импульс синхронизации 1рр1ий интервал предназн^ чен для бита данных и будет содержать импульс есчи биг ушных равен 1Гипично! зн>. чение временного отрезка элемента ^остаичяет 4мкс (при скор )ии 360об/мил)
Рис 945иллюстрируй ор)аниз.ш,ию шпичного кочтголчера чакопшеля на гиб)- (м диске, а рис 946показываег моего контроллера в подсистеме внешней память на 1 ,v;
ком диске. Из-за последовательного хранения информации входы и выходы накопи ie-ля представляют собой двоичные потоки. Поэтому входные байты принимаются в регистр сдвига и затем передаются в буферный регистр данных, а выходные данные загружаются в регистр сдвига, из которого они выдвигаются в последовательной форме Выходные схемы должны объединять импульсы со входа синхронизации записи и биты данных так, чтобы получался формат, представленный на рис 9 44
P'ие 946Подсистема гибкого дискд
Jt^t и t WiiHh bOKOHS?Uilt1 <. h pu » » -l На ^i'jlttB ItfUlK Hi^^KU H ElM»t I t-KOI 1.
fJi^f^iih^KOiopbieконтакты ь^Нх роллера не-^кодимо зарезьрвироВйТь -^ я !иний вы
6iJi .* iS-^OtlriT^i Kp0*.i^ Т 5Г^ ^0„ ЛАЫ ОЫ^Ь ^а» И./ ВЫ>^ДЫ ь HdKt ^ItClb каг. ЛИ1 АЛ ИМ
1ч^аi^ar». 1оij, »iti^tо i^-южкамmям си/иаланлп^ h тичляшага р линия
L^ 1-П^ ^ «•И - 1<- U U\U^,I»\ u* ^аКЛ^ В >.J 4iu t LriIIWIbl ПО ^<Ub а ЙШИ^ НДХОЖ
^ i^ *v a„i t t л д,/ j t-к ^,, Hj^eu^uJu^it о аознишо $^нл1-01 Ka^d 11 i ^1ибки, ф» KOi
^ u »t'i^ И^ lКAv: ii>/i ri t-ll^ ill,» EiOM, 4TiUГИЬ1ЙЙда^КidlU lih...»! 3jaiH<t «t,ИC-l.,t.fc B^t t ^ wKBД^ tb ^ t ^Ob U /rtb ui J,C T^^Io 01 ИМ11^Jibi. »B lhh ^pU)i<jjdUM
ti8^ ^ о Ut. i 4Я^ ^л (1 мои' cp.uuBut юдстройки ч^пош коюоая фо-рмкр}^ си s гы uksu ii л1у t^iMy контроллер должен в ьщавать сигнал синхронизации V^^, Дтя J«^nrtCH ^аиых к^име чигил выходных данных требуются линии разреш.ния записи и мдлогс гокд ,iWii4i Mo. ли 1ока ip^ir^ a lhjh с тем, что npii записи ha вну^рошис зрожь а <их t щ а бо 1»>ш^ ^3) Лри леняетш м »1ьший ток
Lu^ 'ь.^г ий ди^1 имее -ь ^ктиров, ка кдый ^ктор ссдср^л! 1 28бай1 ^ скоросп ь^^т дL^^i^ чы ЗьО об/мш! средняя ^кирость передачи данных
2й Х 128Х 360/60^ 1996Ь байт/.
«^ ^li» иiepiо к^^ ьауся ^авны?.* прямsro 50Miс С уч^омiipOMeкуков ^сuibii^uiл<г^иодit»,i^atfiiСи^1дй].яе1j^ мь„ (1щи4»ikc на 6Hi) Хотя и р»»ижно хущ<. яв^^ть передач ^ гил^л скоритыо без <<онтроллер1 ПДП, применение контроллера икд^ьшлет^я Go^e•'эф<1'еюивным Поэтому контроллеры дисков обычно имею г г-игнати -»ачр01^ !1ДГ1, ид11^р)кд».н»1я ПДП и окончания счета Коотроллер ПДП оказывается лучшим решением еще и потому, что передачи с диска всегда связаны с передачами бло ков,dи» отдельных байт
Рди чютрим подробнее типлчьый контроллер диска 8272фирмыIntelо;» анизлцияK^,uf0ionoKa-UddH-tрис 947В нем имеюгся два регистра которые мо» iадре ^виь
i ^ v^c.wOp р<.И,.^^ СОСТ.О) ЯИЯ, КО-ЮрЫЙ СЧИТЫВа^^Сд При АО = О И ГИГИ^р ВХиД> ^.IX/ri^I
xu ^tbix данных, ибращеии». к коюром' нроизводипя с АО 1 Формат;peiHc'ipdсопол иия прадстлвлен на рис'у 48 Через регистр входных/выходных данных можноа^рсг-овагь несколько друшх регистров управления, состояния и параметров, ат«п жеhl^koto ко ^пад^рйь Обращение кэтим регистрам и флажкам или випо-шениьввода вывода ^thLii"шредеп&етсмя^^ izi Ооатеяьносгьюдоступа
Bi-.i^ шя^-мые контрочлером операции paздe^яютo{на фазы приказлвыг о^.^ния и р^зулмага Во время фазь! приказа байгы передаюил в ри-истры упра^лен^я и флажки чсре.» регистр входнаЛ/вьц ьдныу данных Зато иiatj? выпотаенияpeaшз^^ч^я запро ш нная 011ерация, по завершении коюрои часху.аасг фаза резу платаkoi ^а троцесюр ^чкгывает информацию состояния Выв^дь^ в^ вр».мя фазы приказаi< вводы во вр^мя ф»зы резу 1ьтата выпочняются о побайтными п р^дачами лотя любыми пс 1^.дач1ми данttb.\ь^в^еляфазы вья олн н л обычноj правпяет контроллер ПДП
Уэ» ^^"^sp1^бко^ 4hд и »ei.tследую..дир приказы
Счш^ть ^ш ••iСчi.^ib^arfHbit- из иол>1 данных на гибком диске
janA-ait- винные^ дш п.аег дан ib e вноле данных на гибкомусе
Ottiit.ibудаленные данные. Считывает данные из поля, отмеченного как у ^ал-н {оь
Записать удаленные данные. Записьюает млркер адреса удаленных данные и по\киУ
ет симьо-ш заполнители в поле данных
Считать дорожку.Считывае! поля данных всей дорожки
Считать IDСчитывает поле идентификации
Форматировать дорожк}Записывает на д >рожку форма-ihp'юту ю информацию ис
пользуя выданные программой параметры форматирования
Рис 947Схема контроллера гибкого диска 8272
Рис 948Формат р1гистра состояния контрочлер1 8272
Сканировать до равно, сканировав до меньше или равно, сканиреааэь ч^ 1ч ьин 'ч равно. Сканируе! данные на ука данное условие и формирует запрос прерыванияш>г' условие удовлетйоряется.
Инициализировать.Вызывай} перемещение юловки на дорижкуU
Считать состояние прерывания.Гчтывае! информацию состояньяri3 М'' ы .. '<„ 1;
рываний, вызванных изменением линии тоговносш и спер.Щп.й гож sa
Определить., Усканаьли^.л с^ирсс чшаи51?i4->rioe'<Hр. »^ яi^hpy•^ ,ч"д, „iiловки, вримд загрузки юловки и режим ПДП
Считать состояние накопителя.Вводи! состояние накопи геля из 5ГЗ.
Искать.Позиционирует головку на указанную дорожку.
В качестве примера на рис. 9,49приведен^ последовагельносгь, необходи лдя дляw полнения четырех приказов. Приказ считывания данных включае! в себя все грифлзи приказ поиска ~ только фазы приказа и выполнения, приказ считывания сосюяния Чч копителя -фазы приказа и резулыата, а приказ определений -только фазу приказ, Во всех случаях приказы должны выполняться целиком (включая и фазу результата, и ли она применима),иначе они считаются незаконченными. При получении недействительного приказа контроллер возвращает байт состоянияSTOв ответ на следующий ввод из регистра входных/выходных данных
Рис. 9.49.Типичные приказы контроллера 8272
Несколько приказов требуют, чтобы на их фазах результатов считывались некоторые из байт состояния STO,ST1,ST2 иST3. Биты в этих регистрах показывают ошибкиCRC, ошибки перегрузки, выбранный накопитель, конец поиска, является ли гибкий диск двусторонним или нет и т. д.
В качестве примера рассмотрим конгроллер 8272,четный адрес которого равен ОП2А. Его можно инициализировать на скорость шагов 6мс на дорожку, время разгрузки головки 48мс, время загрузки юловки 16мс и режим ПДП следующей последова-юльностыо приказов.
%СНЕСК (2АН.80Н)
MOV AL.03H OUT 2BH,AL %СНЕСК (2АН,80Н)
MOV AL.63H OUT 2BH,AL %СНЕСК <2АН,80Н)
MOV AL,10H OUT 2BH,AL
Макрокоманда %СНЕСК имеет такое определение:
%*DEFlNE (CHECK (PORT, STAT)) LOCAL AGAIN (%AGAIN: IN AL,%PORT
AND AL.OCOH
XOR AL.%STAT ) JNE %AGAIN
Причина необходимости макрокоманды %СНЕСК перед каждым выводом заключается в том, что перед записью в контроллер 8272байта каждого приказа старшие два бита регистра состояния должны содержать 10.На фазе результата перед считыванием из регистра данных каждого байта эти два бита должны содержать 11. Последовательность приказа поиска
%СНЕСК (2АН.80Н)
MOV AL,OFH
OUT 2BH,AL %СНЕСК (2АН.80Н)
MOV AL,02H
OUT 2BH,AL %CHECK (2AH.80H)
MOV AL,30
OUT 2BH,AL
.производит в накопителе 1перемещение головки на цилиндр 30и выбор головки 0.
На рис. 9.50определены две макрокоманды для выполнения приказа считывания данных. Предполагается, что перед вызовом макрокомандыREAD_COMнаходятся команды
IDLE- IN AL,2AH TEST AL,12H JNZ IDLE
Они проверяют доступность требуемого накопителя (которым в этом примере служит накопитель 1).Перед вызовом макрокомандыREAD_COMнеобходимо инициализировать контроллер ПДП, чтобы передачи ПДП начинались сразу по окончании операции
Рис. 9.50.Макрокоманды для выполнения приказов считывания данных
считывания. Предполагается, что вызов макрокоманды READSTATделается только после фазы выполнения и при условии завершения считывания (например, после возникновения прерывания по завершению считывания).
- Конспект лекций по курсу "Электронные вычислительные машины, системы и сети"
- Глава 1 структура вычислительной машины
- 1.1 Общее устройство
- 1.2 Корпус pc
- Slimline
- Desktop
- Корпус типа атх
- 1.3 Материнская плата
- Chipset
- Rom bios
- 1.4 Процессор
- Типы процессоров
- Сопроцессор
- Оперативная память
- Контроллеры
- 1.5 Устройства хранения данных
- Дисководы
- Винчестеры
- Глава 2 конфигурирование системы пэвм
- Install, installhigh
- Глава 3 устройства вывода данных
- Глава 4 назначение и функции операционной системы
- Глава 5 производительность компьютера. Способы ее измерения
- Глава 6 сети эвм и средства телекоммуникационного доступа
- Глава 7 устройства ввода данных
- Лекция 1. Эволюция микрокомпьютеров.
- 2.1. Введение
- 2.2. Структура памяти
- 2.3. Сегментация памяти
- 2.4. Структура ввода-вывода
- 2.5. Регистры
- 2.6. Операнды и режимы адресации операндов
- 2.7. Замечания о режимах адресации
- 4. Назначение выводов мп
- 3. Программная модель микропроцессора
- 9 Интерфейсы ввода-вывода
- 9.1 Интерфейсы последовательной связи
- 9.2 Параллельная связь
- 9.5. Контроллрры прямого доступа к памяти
- 9.6. Контроллеры накопителей на гибких дисках
- 9.7. Интерфейс максимального режима и 16-битной шины
- 10. Полупроводниковая память
- § 10.5 Касается разнообразных видов пзу.
- 10.1. Общая организация памяти
- 10.2. Статические зупв
- 10.3. Динамические зупв
- 10.4. Резервное питание для полупроводниковой памяти
- 10.5. Постоянные запоминающие устройства
- 2) Компьютерные сети
- 2.1. Общие понятия
- 2.2.1. Топологии
- 10Base-2 или тонкий Ethenet
- 10Base-5 или толстый Ethenet
- -Звезда
- 2.2.2. Компоненты сети -Концентратор и коммутатор
- 2.2.3. Проводная сеть в умном доме(LexCom Home)
- 2.3. Беспроводные сети
- 2.3.1. Radio-Ethernet
- 2.3.2. Gprs
- Чем привлекательна эта технология?
- Передача данных: gprs и gsm
- Что дает абоненту технология gprs?
- Принципы построения системы gprs
- Терминальное оборудование gprs
- Скорости передачи в системе gprs
- Перспективы развития услуг на базе gprs
- Перспективы пакетной передачи данных
- Gprs модемы для Ноутбуков, кпк и пк
- Gprs модемы существуют в нескольких исполнениях:
- Nokia d211
- 2.3.3. Bluetooth