Page tree
Skip to end of metadata
Go to start of metadata

Важно!
Обратите особое внимание на отличия методов адресации памяти и на то, какие области памяти доступны для использования.
         

Память ключа Guardant Code

В контроллере электронных ключей Guardant Code существует два вида памяти: оперативная (RAM) и постоянная (Flash).

Оперативная память (далее – RAM) используется для хранения переменных, стека, буферов ввода-вывода. Часть RAM используется системной микропрограммой (System RAM), а другая часть – загружаемым кодом (20 Кб).

Память, которая используется для хранения загружаемого кода и его констант, в дальнейшем будет называться Flash-памятью. Часть Flash-памяти занята системной микропрограммой (System Flash), другая часть предназначена для загружаемого кода (128 Кб или 352 Кб, в зависимости от модификации ключа).

В предыдущих моделях ключей Guardant энергонезависимая память для хранения ключевой информации защищаемого приложения была выполнена в виде отдельной микросхемы EEPROM (электрически перепрограммируемая постоянная память). Поэтому для сохранения преемственности и совместимости EEPROM эмулируется во Flash-памяти контроллера Guardant Code. В ней (точно так же, как в обычных ключах Guardant) хранятся системные поля данных, дескрипторы защищенных ячеек и аппаратных алгоритмов. Для ясности и краткости эта эмулируемая память в дальнейшем будет называться просто EEPROM.   

Организация EEPROM

Ключи с загружаемым кодом обладают EEPROM объемом 4096 байт. Организованна эта области памяти идентично устройству EEPROM ключей Guardant Sign/Time/Sign Net/ Time Net и детально рассматривается в разделе Организация EEPROM памяти.

Карта Flash-памяти и RAM

При работе с RAM-памятью и Flash-памятью для хранения загружаемого кода используется иная, чем в случае с EEPROM, адресация, основанная на карте памяти контроллера ключа. 

Карта памяти, доступная для загружаемого кода, выглядит так: 

Адреса

Назначение

00020000h-0003FFFFh 

Flash-память для размещения загружаемого кода,страницы 1-4 (для варианта с 128 кб Flash-памяти)

00040000h-00077FFFh

Flash-память для размещения загружаемого кода,страницы 5-11 (для варианта с 352 кб Flash-памяти)

40003000h-40007FDFh

RAM (ОЗУ), доступная загружаемому коду. Тут размещаются: стек, буфер ввода-вывода, переменные загружаемого кода

Flash-память разделена на страницы по 32 Кб. При этом страница может быть занята только целиком. Вследствие такой организации памяти в Guardant Code может существовать от 1 до 4 (или до 11, в зависимости от объема доступной Flash-памяти) отдельных сегментов загружаемого кода.

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

  • No labels