Ремонт принтеров, сканнеров, факсов и остальной офисной техники


назад Оглавление вперед




[38]

Ниже приведена кодировка коротких байтов в< полные по MFM-методу:

00-96

10-В4

20-D6

30-ED

01-97

I1-B5

21-D7

31-EE

02-9А

12-В6

22-D9

32-EF

03-9В

13-В7

23-DA

33-F2

04-9D

14-В9

24-DB

34-F3

05-9Е

15-ВА

25-DC

35-F4

06-9F

16-ВВ

26-DD

36-F5

07-А6

17-ВС

27-DE

37-F6

08-А7

18-BD

28-DF

38-F7

09-АВ

19-BE

29-Е5

39-F9

OA-АС

1A-BF

2А-Е6

ЗА-FA

0B-AD

1В-СВ

2В-Е7

3B-FB

ОС-АЕ

1C-CD

2С-Е9

3C-FC

0D-AF

1D-CE

2D-EA

3D-FD

0Е-В2

1E-CF

2Е-ЕВ

3E-FE

0F-B3

1F-D3

2F-EC

3F-FF

Байты АА и D5 исключены из таблицы, так как они используются при записи эпилога и пролога.

Прежде чем записать даные на ГМД, необходимо осуществить их перекодировку - каждые шесть битов информации пользователя в восемь битов информации, записываемой на дискету.

Все разрешенные значения байтов находятся в диапазоне Д 96-FF. Считанную с диска информацию нужно перекодировать обратно (каждые восемь битов в шесть битов информации) и упаковать в полные байты.

С точки зрения пользователя ДОС на одном секторе умещается 256 байт информации. Контрольная сумма (CHECK SUM) кодируется так же, как в адресном поле.

Самосинхронизация и разделительные поля. Поле адреса и поле данных ограничены специальными разделительными промежутками (участками), GAP, заполненными определенным числом специальных байтов. Необходимость в их применении заключается в следующем:

обеспечивают при записи информации в данном поле сохранение информации в соседних полях;

обеспечивают компьютеру время для дешифрации адресной информации до того, как искомое поле данных достигло головки чтения-записи.

Очередность различных типов полей и промежуточных участков на одной дорожке (рис. 6.10) одинакова для всех дорожек магнитного диска и определяется в процессе форматирования (команда ПМГТ в ДОС "Агат"). Одинакова также структура всех секторов.

Информацию, записанную на одну дорожку мини-диска, можно рассматривать как непрерывный поток импульсов, и на первый взгляд кажется невозможным выделение отдельных байтов, поскольку нет указателя начала и конца одного байта. Сделать это позволяет использование разделительных участков, в которых записаны специальные самосинхронизируюшиеся байты. Каждый самосинхронизирующийся байт является нормальным байтом, равным FF , к которому


добавляются два бита с нулевыми значениями, т.е. 1111111100. Эти два нулевых бита записываются на диск автоматически контроллером НГМД.

Подпрограмма СЧИТЫВАНИЕ в ДОС, которая следит за заполнением регистра сдвига контроллера, принимает решение, что операция закончена только тогда, когда старший бит обращается в единицу.

На рис. 6.11 показана синхронизация контроллера в режиме считывания ин-4юрмации с промежуточных участков; при этом синхронизация достигается в рамках пяти последовательных синхробайтов.

-*-it-

T\FF\FFll \FF\FF

D5\AA\96

VOL UM TRACK СЕКТОР СИ. SUM

II 1 т

BEiAAiS8

FF\FF\FF\FF\FF

D5{AA\AV

96i96\ i96\

128 байт FF

Пролог

Эпилог

5 байт FF К........\-*

Пролог

*-if-

данных сектора 00 t САРЗ

96 ?6Р69656 csfa

B£iAAiF8

FFFFfFJlFFFF

SSfAAfAB

VOL UM TRACK СЕКТОР SH.SUM 1 1 1 1

J42 байт

Эпилог

40 байт FF

Пролог

Эпилог

GAP2

Поле данных сектора 01

6АРЗ

FF,FFKFF

D5\АА ЛИ

96\96\Ц\96\96 %

K\AAiBB

FFlFFlJllFFlFF

U\ 1

5байт

Пролог

342 байт

Эпилог

W байт FF

Рнс. 6.10. Форматирование дорожки магнитного диска

Ситро-1-й. 2-йt3-й. ( 4-ц 5-йt

6aambl Il/lililil/lililolS "l/lilrlrlrl/lilolS 7I;I/I/IjItItI;IoIo 7l/l/l/lM/i/i/lol3 flrl/l/MMilrlolS

I- * H

-HI- * -I

-H-Hh

h-H К-

Рис. 6.11. Возможные случаи начала самосинхронизации (символом * отмечен байт, в котором произошла самосинхронизация контроллера с данными)


Возможны девять различных начальных моментов процесса синхронизации, которые определяются моментом запуска подпрограммы СЧИТЬШАНИЕ. Этот метод самосинхронизации контроллера по информации не требует, чтобы программа следила за синхробайтами. Достаточно после старта подпрограммы СЧИТЬШАНИЕ отыскать соответствующий указатель начала поля (ПОЛЯ АДРЕСА или ПОЛЯ ДАННЫХ). При этом можно гарантировать, что в рамках одного оборота (рис. 6.11) мини-диска этот указатель будет найден.

На каждой дорожке размещены три типа разделительных участков (см.рис. 6.10), заполненные синхробайтами; эти участки различаются только по длине и предназначению:

GAP1 представляет собой последовательность из 128 синхробайтов и генерируется только один раз во время форматирования дорожки. Синхробайты в некоторой степени компенсируют изменение частоты вращения и деформацию диска. GAP1 предназначен для индикации начала. каждой дорожки, т.е. после него следует сектор 00, который выполняет функцию буфера между адресным полем сектора 00 и полем данных последнего сектора 15. Из-за непостоянной частоты вращения диска часть данных сектора 15 может перейти в участок GAP1, и при этом адресное поле сектора 00 не разрушается;

GAP2 разделяет ПОЛЕ АДРЕСА от следующего за ним ПОЛЯ ДАННЫХ и имеет длину от 5 до 10 байт. Этот промежуточный участок обеспечивает дисковой системе время для дешифрации адресного поля. При записи новых данных в ПОЛЕ ДАННЫХ нельзя предсказать начальный момент команды ЗАПИСЬ, и разрушение хотя бы одного синхробайта в GAP2 вполне возможно. Поэтому подпрограмма ЗАПИСЬ начинается генерацией пяти синхробайтов, с последующей генерацией указателя начала ПОЛЯ ДАННЫХ, и только тогда записывается действительная информация. Это гарантирует самосинхронизацию при считывании информации (рис. 6.11);

GAP3 разделяет ПОЛЕ ДАННЫХ от ПОЛЯ АДРЕСА следующего сектора и состоит из 40 синхробайтов, обеспечивающих время, необходимое компьютеру для обработки уже считанных данных. Если компьютер не успевает в течение времени прохождения этого участка обработать полученные данные и обратиться к следующему сектору, то он это сделает при следующем обороте диска.

Заметим, что пролог и эпилог позволяют управляющим программам определять положение головки чтение - запись относительно соответствующей дорожки.

Каталог. Для организации и ведения файловых структур ДОС размещает свой каталог, начиная с дорожки 17. На дорожке 17 каталог начинается с сектора 15 и кончается сектором 0. В начале ПОЛЯ ДАННЫХ каждого сектора ДОС записываются три байта служебной информации:

первый байт - признак продолжения или ноль;

второй байт - дорожка, продолжение каталога;

третий байт - сектор, продолжение каталога.

После трех служебных байтов идут восемь байтов, не задействованных (резерв), за которыми начинается поле файлов. Если каталог, заведенный под файлы на дискете, помещается на одной дорожке (17), то в этом случае на всех секторах в ПОЛЕ ДАННЫХ второй байт ссылается на дорожку 17, а третий байт старшего сектора - на младший (например, 15 на 14, 14 на 13 и т.д.). При этом нулевой сектор ссылается на сектор 15, т.е. каталог как бы закольцовывается. При невозможности разместить информацию о файлах на ГМД на одной



[стр.Начало] [стр.1] [стр.2] [стр.3] [стр.4] [стр.5] [стр.6] [стр.7] [стр.8] [стр.9] [стр.10] [стр.11] [стр.12] [стр.13] [стр.14] [стр.15] [стр.16] [стр.17] [стр.18] [стр.19] [стр.20] [стр.21] [стр.22] [стр.23] [стр.24] [стр.25] [стр.26] [стр.27] [стр.28] [стр.29] [стр.30] [стр.31] [стр.32] [стр.33] [стр.34] [стр.35] [стр.36] [стр.37] [стр.38] [стр.39] [стр.40] [стр.41] [стр.42] [стр.43] [стр.44] [стр.45] [стр.46] [стр.47] [стр.48] [стр.49] [стр.50] [стр.51] [стр.52] [стр.53] [стр.54] [стр.55] [стр.56] [стр.57] [стр.58] [стр.59] [стр.60] [стр.61] [стр.62] [стр.63] [стр.64] [стр.65] [стр.66] [стр.67] [стр.68] [стр.69] [стр.70] [стр.71] [стр.72] [стр.73] [стр.74] [стр.75] [стр.76] [стр.77] [стр.78] [стр.79] [стр.80] [стр.81] [стр.82] [стр.83] [стр.84] [стр.85] [стр.86] [стр.87] [стр.88] [стр.89] [стр.90] [стр.91] [стр.92] [стр.93] [стр.94] [стр.95] [стр.96] [стр.97] [стр.98]