55.5.3. КАДРЫ



Как правило данные передаются кадрами (Frame).
Типичный кадр имеет формат:

	+---------+
	|Preambule|	Используются для синхронизации начала кадра
	|	  |	на media или в сети
	+---------+
	| Address |	Адресс получателя (и отправителя) (в сети)
	|	  |	иногда адресс сектора на media
	|	  |	[может и отсутсвовать если Point-to-Point,
	|	  |	или media hard-sectored или серворазметка]
	+---------+
	|         |
	|  Data   |	Блок данных
	|	  |
	+---------+
	|  FCS    |	Frame Checksum
	|	  |	Контрольные или Корректирующие ошибку коды
	+---------+
	|Terminate|	Коды указывающие на конец кадра
	|	  |	[могут отсутствовать]
	+---------+



RS-232-C

Рассмотрим формат кадра последовательного порта (RS-232-C):

Мы видем: +----------+ |Start Bit | Стартовый бит - preambule. +----------+ | | = Data = Биты данных | | +----------+ |Parity Bit| Бит четности данных - контроль ошибок +----------+ |StopBit(s)| Стоповый бит - указывает на конец кадра +----------+


Ethernet

Другой типичный пример - это кадры Ethernet. 00 01 02 03 04 05 06 07 +-----+-----+-----+-----+-----+-----+-----+-----+ +0000 | Preambule | +-----+-----+-----+-----+-----+-----+-----+-----+ +0008 | Destination Address | +-----+-----+-----+-----+-----+-----+ +000e | Source Address | +-----+-----+-----+-----+-----+-----+-----+-----+ +0014 | | = Data = 62-1502 bytes | | +-----+-----+-----+-----+-----+-----+-----+-----+ +END-4| CRC | +-----+-----+-----+-----+ Мы видим все тоже самое: Синхропоследовательность, Адрес, Данные, Контрольная сумма. (Кодов указывающих на конец кадра нет - просто media будет не модулированна после посылки).


CD-ROM frame

CD-ROM frame - это 588 битов (CD-ROM сектор = 98 CD-ROM frames). Имеет формат: Количество битов +----------+ 24+3 | | Synchropattern = 100000000001000000000010 | | +----------+ 14+3 | | Subchannel - это адрессная и другая информация | | типа CD-Text (1 байт) +----------+ 24*(14+3) | | Data (24 байта) +----------+ 8*(14+3) | | CIRC - Коды Рида-Соломона для исправления ошибок +----------+ 8 байт Subchannel,Data и CIRC - кодируется по ЕFM (отсюда 14). Synchropattern - не кодируется по EFM - он уже такой. К каждому 14бит EFM и к Synchropattern добавляются дополнительные 3 бита для того что бы код имел нужный спектр.


Floppy disk

Формат сектора Floppy диска: Gap - защитный зазор, который пишется только один раз при форматировании трека, нужен из-за того что скорость вращения floppy-диска различна в различных дисководах, и надо что бы новая запись не повредила данные в другом секторе. +-------+ | 50x4E | Gap перед адрессом сектора +-------+ | 12x00 | Sync +-------+ | 3xA1 | Указание на данные адресса сектора (Маркер адресса сектора) | FE | +-------+ | CYL | Номер цилиндра +-------+ | HD | Номер головки +-------+ | SEC | Номер сектора +-------+ | NO | Размер сектора (на Floppy от 256 байт до 1KB). +-------+ | CRC | CRC для адресса сектора +-------+ | 22x4E | Gap (Нужен чтобы котроллер дискеты успел) +-------+ --+ | 12x00 | Sync | +-------+ | Это пишется | 3xA1 | Указание на данные (Маркер данных) | при записи | FB/F8 | | сектора +-------+ | | DATA | Данные | +-------+ | | CRC | CRC данных | +-------+ --+ | | | GAP | Большой межсекторный Gap | | +-------+ Данные FM или MFM модулированны.

Index Prev Next