Высокоуровневое проектирование встраиваемых систем. Платунов А.Е - 162 стр.

UptoLike

прикладной уровень пакетный протокол AP_P (Application Protocol,
Packet).
На рис. 2.45 представлен пример автоматной модели протокола канального
уровня подчиненного устройства.
Остальные уровни модели не представлены в силу простоты
взаимодействия. PM3P поддерживает модель взаимодействия MASTER-SLAVE.
В обмене участвуют два устройства: инструментальная машина (ПК) и целевая
система. При этом роль подчиненного устройства отводится целевой системе.
На канальном уровне данные передаются в виде фреймов (пакетов). Обмен
происходит по принципу «ЗАПРОС-ОТВЕТ»: каждому запросу, сделанному
мастером на канальном уровне, соответствует ответ целевой системы. При
отсутствии ответа или при ошибочном ответе производятся перезапросы.
Содержимое фреймов защищается циклическим кодом.
Канальный уровень инкапсулирует в себя прикладной пакет. Действия
канального уровня с прикладным пакетом определяются полем КОМАНДА.
Если подчиненное устройство корректно обработало пакет ЗАПРОС, то оно в
пакете ОТВЕТ вернет код команды, т.е. копию поля КОМАНДА. В противном
случае подчиненное устройство в поле КОМАНДА вернет код ошибки. Коды
ошибок и команд отличаются старшим битом.
На прикладном уровне целевая система представлена в виде множества
"целей" (рис. 2.46). Цель можно трактовать как виртуальную машину с
некоторым набором команд, поставляемых вместе с данными через прикладной
уровень протокола обмена. Наборы команд каждой из целей могут отличаться
друг от друга, но возможны и пересечения.
Базовым вариантом цели прикладного уровня является представление
целевой системы в виде логического адресного пространства некоторой
адресуемой памяти. Команды, поддерживаемые этой памятью, переносятся в
команды цели. Эти команды позволяют читать данные (read) и записывать
данные (write). Для работы с некоторыми типами памяти требуются команды
стирания данных (erase, erase_sector). Команды работы с памятью формируют
архитектуру памяти. Эта архитектура применима к микроконтроллерам, а
команды работы с памятью являются ее инструкциями. В этом случае никто не
мешает расширить перечень инструкций. Если память является частью машины
Фон-Неймана, то естественной выглядит команда передачи управления (jmp)
или сброса (reset). При необходимости можно расширять и настраивать
протокол для различных приложений путем создания новых целей.
161