Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПАЗИ.docx
Скачиваний:
13
Добавлен:
25.04.2019
Размер:
147.65 Кб
Скачать

11. Принципы организации контролера зи.

Принципы организации контроллера ЗИ.

Реализация средства аппаратной поддержки

Структура СЗИ имеет следующие особенности:

• модульная архитектура со спецканалами;

• программируемость всех узлов (ISP-технология);

• возможность расширения путем подключения дополнительного

оборудования по стандартным каналам;

• функциональная достаточность резидентного ПО.

Контроллер «Аккорд» предназначен для работы в IBM PC совмес¬тимых компьютерах, имеющих слоты плат расширения ISA (XT или AT), в составе программно-аппаратных комплексов ЗИ от НД

Плата контроллера выполнена как полностью программируемое устройство (In-System-Programmable - ISP). То есть функциональное назначение контроллера определяется программированием его составных частей:

• интерфейса шины (BusInt)

• постоянного запоминающего устройства типа Flash (ROM)

• микроконтроллера (MCU).

Программирование и модификация BnsInt производится в технологическом режиме, a ROM и MCU – в специальном. Конструкция контроллера обеспечивает его работу в этих режимах только при вскрытии корпуса компьютера, извлечения платы из слота motherboard и отсоединений крепежного кронштейна, что служит защитой от проведения такой операции несанкционированно или случайно.

Контроллер, при подсоединении специального программатора, работающего под управлением IBM PC совместимого компьютера, переходит в технологический режим, который обеспечивает программирование интерфейса. Возможность перепрограммирования блокируется при установке платы в слот расширения ЭВМ и/или при установке крепежного кронштейна. Если же плата без крепежного кронштейна (при этом интерфейс шины уже должен быть запрограммирован) установлена в слот расширения компьютера, то она работает в специальном режиме, который обеспечивает программирование содержимого ROM и встроенного программного обеспечения (ПО) MCU (Рис. 3.4) при помощи соответствующих утилит. Возможность перепрограммирования блокируется при установке крепежного кронштейна.

Программатор микроконтроллера доступен только в специальном режиме. После процедур программирования шины плата в сборе с крепежным кронштейном устанавливается в слот расширения и функционирует в основном режиме.

Конструкция программируемых микросхем BusInt и MCU обеспечивает защиту от модификации и чтения записанной в них информации в любом режиме.

Интерфейс шины контроллера обеспечивает доступ центрального процессора ЭВМ к ROM и MCU.

Основные функции аппаратного контроллера ЗИ

1 Адресная селекция и контроль

Для работы контроллера используется область верхней памяти ЭВМ размером 16 Кбайт. Ее базовый адрес определяется состоянием джамперов на плате. Выбранная область разделяется на три окна: окно расширения BIOS (wBIOS), окно регистров управления контроллером (wREG) и окно страничного доступа (wFLASH).

Одна из основных функций контроллера — выполнение расширения BIOS (ПО BIOS) во время процедуры POST до загрузки операционной системы. Обычно, для плат расширения этот код записан в ПЗУ, отображаемом на часть верхней памяти ЭВМ (UMB), и ограничен из–за наличия других плат и устройств: плат, контроллеров дисков и т. д. С другой стороны, объем кода определяет как возможности ПО, так и сложность его разработки. Для уменьшения размера области занимаемой контроллером в UMB и увеличена кода ПО BIOS используется следующий механизм.

Окно wBIOS обеспечивает инициализацию ПО BIOS во время процедуры POST , при этом через окно wFLASH предоставляется полный доступ к большому объему данных. Другими словами, небольшая программа (до 8 Кб) из окна wBIOS считывает через окно wFLASH большую программу (до 500 Кб), размещает ее в памяти ЭВМ и передаёт на исполнение. Такой способ позволяет принципиально расширить ПО BIOS, при этом дает возможность разрабатывать его на языке высокого уровня.

В качестве ROM используется микросхема объемом 512 К, разбитая на 64 страницы. Страница 0 доступна через окно wBIOS, остальные – через окно wFLASH. При этом 6–битовый номер страницы предварительно записывается в регистр номера страниц (rgPAGE). Запись в него производится по адресу rgPAGE_WR, а чтение — rgPAGE_RD. При этом значащими являются 6 младших бит байта шины. В зависимости от режима и содержимого rgPAGE определяется тип доступа к окнам.

Специальный режим

rgPAGE wBIOS wFLASH

= 0 denied denied

> 0 R/W R/W

Рабочий режим

rgPAGE wBIOS wFLASH

= 0 read-only denied

> 0 read-only read-only

Содержимое rgPAGE устанавливается в 0 при сбросе компьютера. Таким образом, код расширения BIOS во время процедуры POST в специальном режиме не исполняется, что важно при отладке ПО или если при его записи возникла ошибка.

Программирование ROM.

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

Интерфейс с MCU.

MCU работает под управлением собственного встроенного ПО и выполняет функцию «электронного замка» для доступа пользователей к таким ресурсам как:

10. вычислительные функции микроконтроллера;

11. встроенная энергонезависимая память микроконтроллера (EEPROM);

12. энергонезависимая память большого объема (DataFIash);

13. внешний интерфейс (ТМ или RS232);

14. датчик случайных чисел;

15. возможность физического отключения устройств;

16. расширение интерфейса SPI.

Поэтому для того, чтобы MCU выполнял свои функции, его необходимо запрограммировать.

2. Программирование MCU

Для программирования MCU контроллер должен работать в специальном режиме, а содержимое rgPAGE должно быть равно 0.

В качестве MCU используется микросхема, которая программируется с помощью командных последовательностей по интерфейсу SPI, при этом сигнал сброс па MCU должен быть установлен активным. Для управления сигналом сброса MCU и обмена по SPI используется только один бит из байта данных шипы, и два адреса в окне wBIOS. Специальная команда по выделенному адресу устанавливает сброс MCU и разрешает обмен по SPI. Интерфейс SPI обеспечивает синхронный последовательный обмен между устройствами — Master и Slave — используя соответствующий протокол, в котором используются 3 сигнала: SO, SCK, SI. Обмен производится байтами старшим битом вперед. Один обмен производится за 8 циклов

Цикл SPI

Устройство Master

Устанавливает сигнал SO – бит данных для устройства Slave.

Формирует передний фронт сигнала SCK.

Формирует задний фронтсигнала SCK и по нему принимает бит данных с линии SI.

Переходит к следующему циклу обмена.

Устройство Slave

Устанавливает сигнал SI - бит данных для устройства Master.

По переднему фронту SCK принимает бит данных с линии SO.

По заднему фронту SCK переходит к следующему циклу обмена.

При этом MCU является устройством Slave. Функцию устройства Master выполняет центральный процессор ЭВМ под управлением соответствующей утилиты. При записи по выделенному адресу в окне wBIOS формируется передний фронт сигнала SCK, а шестой бит байта данных шины определяет значение сигнала SO. Чтение по этому адресу формирует задний фронт SCK, а шестой бит считанного байта определяется значением сигнала SI. Таким образом утилита формирует командные последовательности и производит обмен данными с MCU в режиме программирования.

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

Работа MCU

После выхода из режима программирования, т. с. снятия сигнала сброс, MCU начинает работу, выполняя загруженную в пего программу. Эта программа поддерживает выполнение команд, поступающих от ЦП. Для получения команд и обмена данными используются регистры rgCS и rgDATA для записи/чтения как ЭВМ, так и MCU, a rgPAGE_WR – только для чтения ЭВМ, которые обеспечивают интерфейс между ЭВМ и MCU по типу почтового ящика. При этом запись в rgCS вызывает прерывание MCU и взводит флаг запроса ЭВМ. MCU может передавать данные ЭВМ, записывая байт в rgDATA и в rgCS. При этом запись в rgCS взводит флаг запроса MCU. Чтение регистров со стороны машины позволяет прочитать данные, записанные MCU, а чтение регистров со стороны MCU позволяет прочитать данные, записанные ЭВМ

Флаг запроса MCU снимается при чтении rgCS со стороны ЭВМ, а флаг запроса ЭВМ снимается при любом обращении к rgCS или rgDATA со стороны MCU.

3.3.2.7 Работа контроллера с дополнительными устройствами

Дополнительное оборудование подключается к спецканалам, которые, в свою очередь, управляются MCU.

ДСЧ. Микроконтроллер по запросу CPU может сформировать байт случайного числа, получаемого с помощью шумовых диодов. Наличие у микроконтроллера аналогового компаратора позволяет использовать две схемы ДСЧ.

ТМ интерфейс/ RS-232. Микроконтроллер может поддерживать функцию однопроводного (One Wire) интерфейса, предназначенного для подключения устройств фирмы Dallas, или интерфейс RS-232 для подключения стандартных устройств.

Энергонезависимая память Data Flash. Микроконтроллер, через интерфейс SPI, подключен к энергонезависи¬мой памяти (Serial EEPROM) объёмом до 1Мбит, что позволяет создавать пользовательские архивы.

Контроль физических линий. Микроконтроллер управляет двумя реле, которые могут быть использо¬ваны для физического подключения/отключения (коммутирования на землю или питание) управляющих цепей внешних устройств.

Батарейные устройства (БатУ). Особым вариантом дополнительных устройств является семейство батарейных устройств. Особенности этих устройств заключаются в том, что с их помощью можно организовать аудит тех событий, которые ранее были неконтролируемы. Так, например, БатУ позволяет в своей памяти (DF) фиксировать вскрытие корпуса и изъятие платы контроллера (в том числе для выключенного компьютера). Для этого служат блоки датчиков и блоки уп¬равления. В памяти DF могут фиксироваться также события, связанные с аудитом администратора. Дело в том, что администратор по функциональным обязанностям обычно имеет доступ к журналам СЗИ, что может служить ис-точником злоупотреблений. Если же факт операций с журналом и их тип фик-сируется в DF БатУ, которая вообще закрыта от модификаций, то злоупотреб-ления можно расследовать.

Использование батарейного устройства (БатУ)

Состав БатУ. БатУ представляет собой устройство на основе микроконтроллера (MCU) и имеет в своем составе резервную литиевую батарею, контроллер, осуществляющий переключение питания схемы с основного питания на резервное и наоборот, и вызывающий прерывание MCU при этих событиях. Кроме этого в состав БатУ входит интерфейсная схема, устраняющая дребезг контактов и вызывающая прерывание MCU при изменении состояния входов. Интерфейсная схема контролирует питание «Аккорда» в слоте PCI, режим «Аккорда» в слоте ISA, нахождение «Аккорда» в слоте PCI, режим работы «Аккорда» и состояние внешних цепей, работающих на замыкание-размыкание (КФЛ). Один из них может использоваться для контроля закрытого корпуса. Для хранения информации БатУ имеет энергонезависимую память. Обмен БатУ с контроллером осуществляется по интерфейсу SPI.

Организация энергонезависимой памяти. Память микросхемы объемом 1 Мбайт разбита на 2 части по 512 КБайт. Эта память организована по типу ADD-ONLY, т.е. в эту память можно только добавлять записи, а читать можно произвольный адрес записи.

Первая часть этой памяти представляет память событий объемом 64кб 8–мибайтных записей. Нулевая запись служебная, а по остальным адресам осуществляется последовательная запись текущих состояний входов интерфейсной схемы. Структура записи: резервный байт, резервный байт, минута, час, день месяц, год, состояние входов.

Вторая часть памяти — это фискальная память по типу ADD-ONLY. Она также имеет 64кб 8-ми байтных записей произвольной структуры.

Основные принципы работы. Основной цикл работы – запись нового состояния в память событий. При снижении питания новое состояние записывается в ОЗУ микроконтроллера, а при восстановлении переписывается в память событий. Также БатУ выполняет команды, приходящие по SPI со стороны «Аккорда». Предполагается, что при восстановлении питания осуществляется процедура HANDSHAKE. После удачного выполнения процедуры HANDSHAKE нужная информация из БатУ переписывается в журнал «Аккорда».

При удачном выполнении этой процедуры БатУ выполняет все команды. При неудачном выполнении этой процедуры БатУ выполняет'только процедуру HANDSHAKE (возможно ограничение повторов со стороны «Аккорда»).

Команды БатУ. Команды посылаются по SPI, возврат или код ошибки. БатУ находится в состоянии SLAVE.

Произвольное чтение памяти состояний:1-й байт младшая часть адреса записи (возврат 1). 2-й байт старшая часть адреса записи (возврат 2). Количество записей (возврат 3). После этого прием (кол-во записей X 8) байт.

Произвольное чтение DF: 1-й байт младшая часть адреса записи (возврат 1). 2-й байт старшая часть адреса записи (возврат 2). Количество записей (возврат 3). После этого прием (кол-во записей Х8) байт. Примечание: при произвольном чтении все записи должны находиться на одной странице.

Запрос событий. Прием: 1-й байт – старшая часть адреса считанной записи 2-й байт – младшая часть адреса считанной записи 3-й байт – старшая часть адреса последней записи 4-й байт – младшая часть адреса последней записи