Рис. 4. генератор crc – Инструкция по эксплуатации Rainbow Electronics DS1963S

Страница 6

Advertising
background image

DS1963S

6 из 40

64-БИТНОЕ ПЗУ, ЗАПИСАННОЕ ЛАЗЕРОМ
Каждый экземпляр DS1963S содержит в ПЗУ уникальный код длиной 64 бита. Первые 8 бит
являются кодом семейства. Следующие 48 бит являются уникальным серийным номером.
Последние 8 бит являются контрольной сумой (CRC) первых 56 бит (см. рис. 3). Контрольная
сумма получена с помощью генератора, выполненного на основе сдвигового регистра и элементов
«исключающее ИЛИ», как показано на рис. 4, и использующего полином X

8

+ X

5

+ X

4

+ 1.

Дополнительную информацию о контрольной сумме, используемой фирмой Dallas Semiconductor,
можно найти в книге «Book of DS19xx iButton Standards». Биты сдвигового регистра
инициализируется нулем. Затем, начиная с младшего бита кода семейства, по одному биту в
сдвиговый регистр вводятся данные. После ввода 8-го бита кода семейства вводятся биты
серийного номера. После ввода 48-го бита серийного номера сдвиговый регистр содержит
значение CRC. Если ввести еще 8 бит CRC, то содержимое регистра вновь станет равным нулю.

Рис. 3. 64-БИТНОЕ ПЗУ, ЗАПИСАННОЕ ЛАЗЕРОМ

СТАРШИЙ

БИТ

МЛАДШИЙ

БИТ

8-

CRC

БИТНАЯ

48-БИТНЫЙ СЕРИЙНЫЙ НОМЕР

8-

h)

БИТНЫЙ КОД СЕМЕЙСТВА (18

Рис. 4. ГЕНЕРАТОР CRC

Полином = X + X + X + 1

8

5

4

1-й

каскад

2-й

каскад

3-й

каскад

4-й

каскад

5-й

каскад

6-й

каскад

7-й

каскад

8-й

каскад

X

0

X

1

X

2

X

3

X

4

X

5

X

6

X

7

X

8

Входные данные

=1

=1

=1

КАРТА ПАМЯТИ
Как показано на блок-схеме, DS1963S имеет четыре области памяти: память данных, память
секретных кодов, счетчики и блокнот. Каждая из этих областей памяти организована в виде
страниц по 32 байта, как показано на рис. 5. Блокнот используется как буфер при записи памяти
данных или памяти секретных кодов. Страницы 0..15 имеют неограниченный доступ для
записи/чтения. Они насчитывают 4096 бит энергонезависимого ОЗУ. Страницы 16 и 17 содержат
восемь 64-битных секретных кодов, которые пользователь может только записывать. Для чтения
секретные коды доступны только блоку SHA, который использует их для вычисления кода
аутентификации сообщения. Шестнадцать 32-битных счетчиков подсчитывают количество циклов
записи в страницы 8..15, а также в область каждого из восьми секретных кодов. Эти счетчики
расположены в страницах 19 и 20 и могут быть считаны без каких-либо ограничений. Страница 21
содержит счетчик, который инкрементируется при каждом запуске блока SHA. Значение этого
счетчика используется для генерации псевдослучайных чисел и поэтому он называется
PRNG-счетчиком. Поскольку блок SHA потребляет примерно в 20 раз больше энергии, чем
копирование всего блокнота в память, PRNG-счетчик может быть использован как индикатор
оставшихся в устройстве запасов энергии. Блокнот физически расположен в странице 18.

Advertising