Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Проектирование МСУ 2.doc
Скачиваний:
25
Добавлен:
19.11.2019
Размер:
24.09 Mб
Скачать

Арх (122) - Архиватор процессов

Алгоритм используется для архивации данных на твердотельном флэш-диске процессора в виде предыстории процесса заданной глубины (например, в задачах учета).

Твердотельный флэш-диск имеет организацию 16 блоков по 64 Кбайт каждый. По записи и чтению доступен каждый байт диска. При повторной записи данных прежние необходимо предварительно стереть путем выполнения специальной процедуры. Стирать можно только блок целиком, а не отдельные байты. Длительность процедуры стирания одного блока составляет 1-2 сек. При стирании какого-либо блока остальные блоки недоступны для операций чтения, записи и стирания.

Алгоритм имеет, кроме управляющих, m однотипных входов, число которых устанавливается модификатором размера (МР=0-120), каждый из которых может регистрировать одно значение вещественного типа или длинного целого (4 байта), два - стандартного целого или упакованного вещественного (2 байта) и 32-дискретного (1 бит). При передаче значений длиной менее 4 байтов обязательна их предварительная шифрация при помощи соответствующих алгоритмов.

Описание алгоритма. Алгоритм архивирует текущие значения входов в заданных блоках флэш-диска с периодом регистрации Тр, равным заданному периоду, округленного до числа, кратного циклу работы контроллера Tо:

Тр=[Тр/Tо]*То.

При этом обеспечивается глубина регистрации предыстории Тп:

Тп=65536*(Nн-Nк+1)*Nр/(4*m).

Для обслуживания алгоритмов архивации (АРХ и АРС) в контроллере выделено 16 блоков памяти флэш-диска объемом 65536 байт каждый с номерами 01-16. При настройке алгоритма ему отводится требуемый объем памяти путем установки на его входах Nн и Nк номеров начального и конечного блоков памяти.

При вводе нескольких алгоритмов АРХ и АРС необходимо следить за тем, чтобы выделяемые различным алгоритмам блоки флэш-диска не пересекались. Кроме того, необходимо с помощью внешних логических схем тщательно синхронизировать операции записи и стирания блоков, принадлежащих различным алгоритмам АРХ, так как операция стирания любого блока делает недоступными для любых операций все остальные блоки.

Принцип работы. Алгоритм может находиться в трех состояниях, индицируемых выходными сигналами Dп и Dстр - состояние “Пуск” (Dп=1, Dстр=0), состояние “Стоп” (Dп=0, Dстр=0) и состояние “Стирание” (Dп=0, Dстр=1).

  1. В состоянии “Пуск” алгоритм осуществляет запись значений входных сигналов в выделенные ему блоки памяти с периодом Np. При каждом выполнении алгоритма устанавливается Dзап=1, если в данном цикле была запись в память, или Dзап=0 в противном случае. Этот признак может использоваться, например, для сброса предвключенных алгоритмов интегрирующего типа. На выходе 2 алгоритма индицируется число записей Nзап. Переход алгоритма в состояние “Пуск” осуществляется только из состояния “Стоп” передним фронтом дискретного сигнала Сп=1 на входе алгоритма (переход Сп из состояния 0 в состояние 1). При этом устанавливается начальное значение счетчика адреса буфера памяти алгоритма, а также устанавливается выход Dп=1 и сбрасываются выходы Nзап=0, Dкон=0 и Dстр=0. В случае, если память алгоритма не стерта, предварительно запускается процедура стирания блоков флэш-диска с номерами Nн....Nк с установкой на время стирания сигнала Dстр=1.

  2. В состоянии “Стоп” алгоритм не выполняет никаких функций, кроме индикации на своих выходах состояния алгоритма.Переход алгоритма в состояние “Стоп” с установкой сигнала Dп=0 осуществляется из режима “Пуск” при поступлении на вход переднего фронта сигнала Сст=1 или при заполнении выделенной алгоритму памяти на флэш-диске. В последнем случае дополнительно устанавливается сигнал Dкон=1. Кроме того, в состояние “Стоп” алгоритм переходит автоматически из состояния “Стирание”.

  3. В состоянии “Стирание” алгоритм осуществляет последовательное, друг за другом, стирание выделенных ему блоков флэш-диска с номерами Nн....Nк. На время стирания флэш- диск недоступен ни для каких операций всем алгоритмам АРХ. Переход алгоритма в режим “Стирание” с установкой сигналов Dп=0 и Dстр=1 осуществляется из любого состояния алгоритма при поступлении переднего фронта сигнала Сстр=1. После стирания выделенных алгоритму блоков флэш-диска устанавливается Dкон=0, Nзап=0, и алгоритм переходит в состояние “Стоп”.

  4. Выходной сигнал Dош устанавливается в состояние Dош=1 при неисправности флэш-диска.

  5. При чтении флэш-диска по команде абонента верхнего уровня информация выдается в следующей последовательности:

  • номер алгоблока;

  • номер передаваемого блока данных (данные передаются блоками по 116 байт);

  • дата и время начала и конца регистрации;

  • значение периода регистрации (на время прихода последней команды “Пуск“ на Сп);

  • число записей;

  • число входов алгоритма;

  • состояние алгоритма;

  • зарегистрированные данные в порядке номеров входов алгоритма.

Алгоритм может настраиваться на один из двух масштабов времени.

Алгоритм может использоваться в одной из следующих схем регистрации данных.

Схема однократной регистрации. Режим запускается внешним сигналом Сп=1 и останавливается либо входным сигналом Сст=1, либо автоматически при заполнении всего объема выделенной ему памяти с формированием соответствующих значений сигналов Dкон=1 и Dп=0.

Схема непрерывной регистрации. Режим запускается и останавливается внешними сигналами, подаваемыми на входы Сп и Сст соответственно. Ячейки памяти флэш-диска заполняются данными последовательно, начиная с первой, но при заполнении последней ячейки, после автоматического стирания памяти опять начинает заполняться первая и т.д., до тех пор, пока на вход алгоритма “Стоп” не поступит дискретный сигнал останова (Сст=1). Для реализации режима на вход Сп необходимо подать сборку по ИЛИ передних фронтов сигналов внешнего запуска и сигнала Dкон, выполняющего функцию повторного запуска алгоритма с предварительным стиранием его памяти.

Повторный запуск алгоритмов регистрации во всех режимах осуществляется передним фронтом сигнала “Пуск”.

Модификатор МР=00-120, масштаб времени МВ=00,01.

Входы-выходы алгоритма АРХ

Номер

Обозначение

Назначение

1

Сп

Пуск

2

Сст

Стоп

3

Сстр

Стирание блоков флэш-диска алгоритма

4

Номер начального блока флэш-диска

5

Номер конечного блока флэш-диска

6

Тр

Период регистрации

7

Х1

Сигнал 1

8

Х2

Сигнал 2

...

...

.....

m+6

Xm

Сигнал m

1

Dзап

Запись данных

2

Nзап

Число записей

3

Dкон

Признак заполнения памяти алгоритма

4

Dп

Признак режима “пуск”

5

Dстр

Признак режима “стирание”