34 из 38 временной интервал записи нуля, Временной интервал чтения данных – Инструкция по эксплуатации Rainbow Electronics DS1961S

Страница 34

Advertising
background image

DS1961S

34 из 38

Временной интервал записи нуля

t

REC

V

PUP

V

IHMASTER

V

TH

V

TL

V

ILMAX

0V

t

SLSMIN

t

F

t

SLOT

t

SLSMAX

t

W0L

РЕЗИСТОР

МАСТЕР

DS1961S

Окно

опроса

DS1961S

Временной интервал чтения данных

t

REC

t

SU

V

PUP

V

IHMASTER

V

TH

V

TL

V

ILMAX

0V

t

SPDMIN

t

F

t

SLOT

t

RL

t

MSR

t

SPDMAX

РЕЗИСТОР

МАСТЕР

DS1961S

δ

Окно

опроса

мастера

ВЫЧИСЛЕНИЕ CRC
DS1961S использует два разных типа контрольной суммы (CRC). Первым типом является
8-битная CRC. Она вычисляется при изготовлении и записывается лазером в старший байт 64-
битного ПЗУ. Эквивалентный полином для этой CRC имеет следующий вид: X

8

+ X

5

+ X

4

+ 1. Для

проверки правильности считывания данных из ПЗУ, мастер шины может вычислить значение CRC
для первых 56 бит 64-битного ПЗУ и сравнить его со значением, считанным из DS1961S. Эта
8-битная CRC принимается при чтении ПЗУ в нормальном виде (без инверсии).
Вторым типом является 16-битная CRC, вычисляемая с помощью стандартизованного полинома
X

16

+ X

15

+ X

2

+ 1. Эта CRC используется для обнаружения ошибок при чтении

аутентифицированной страницы, чтении блокнота и для быстрой проверки правильности
пересылки данных при записи или обновлении блокнота. Это тот же тип CRC, что используется в
расширенной файловой структуре iButton. В отличие от 8-битной CRC, 16-битная CRC всегда
считывается и передается в инвертированном виде. Внутренний генератор CRC в DS1961S (рис.
12) вычисляет новое значение 16-битной CRC в соответствии с блок-схемой, показанной на рис. 7.
Мастер шины может сравнить значение CRC, считанное из устройства, со значением,
вычисленном им самим для тех же данных. На основании результата сравнения мастер может
принять решение продолжить операцию или повторить чтение той части данных, для которой
обнаружена ошибка CRC.
При записи блокнота, так же как и при обновлении блокнота, генерация CRC начинается очисткой
сдвигового регистра генератора CRC. Затем по одному биту в сдвиговый регистр вводится код
команды, адрес назначения TA1 (со сброшенными в 0 разрядами T2..T0) и TA2, а также все байты
данных, переданные мастером. DS1961S передает эту CRC только в том случае, если мастер
передал точно восемь байт данных.

Advertising