А.А. Мельников, А.В. Ушаков
ДВОИЧНЫЕ ДИНАМИЧЕСКИЕ СИСТЕМЫ ДИСКРЕТНОЙ АВТОМАТИКИ
x( k + 1) = λ [ x( k ), u ( k ) ], y ( k ) = δ [ x( k ), u ( k ) ]
Санкт - Петербург 2005
Редакционно-издательский отдел Санкт-Петербургского государственного университета информационных технологий, механики и оптики 197101, Санкт-Петербург, Кронверкский пр., 49
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ САНКТ - ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ, МЕХАНИКИ И ОПТИКИ
А.А. Мельников, А.В. Ушаков
ДВОИЧНЫЕ ДИНАМИЧЕСКИЕ СИСТЕМЫ ДИСКРЕТНОЙ АВТОМАТИКИ
Санкт - Петербург 2005
УДК [517.938 + 519.713 / .718]: 621.398 Мельников А.А., Ушаков А.В. Двоичные динамические системы дискретной автоматики / Под ред. А. В. Ушакова. СПб.: СПбГУ ИТМО, 2005. 220с., ил. 40. В монографии освещены вопросы анализа и синтеза двоичных динамических систем, используемых в современной дискретной автоматике «четкой логики». Монография отражает современные достижения в области теории двоичных динамических систем (ДДС) с использованием возможностей алгебраических методов, которые опираются на матричный формализм метода пространства состояния с учетом специфики свойств матриц над простым двоичным полем Галуа, образующих класс линейных ДДС (ЛДДС), а также формализм автоматной логики, разрабатываемый в рамках теории конечных автоматов (КА), именуемых в монографии в рамках общесистемных представлений нелинейными ДДС (НДДС). В этой связи авторами решается задача взаимной трансформируемости НДДС в ЛДДС и наоборот. Особняком в монографии стоят проблемы анализа и синтеза двоичных динамических систем, которые сочетают в себе элементы автоматной логики и линейных векторно-матричных представлений, в силу чего авторами выделенные в особый класс гибридных ДДС (ГДДС). Монография рассчитана на широкий круг специалистов в области дискретной автоматики, отраслевой телемеханики, аспирантов специальности 05.13.05.«элементы и устройства вычислительной техники и систем управления», а также студентов старших курсов, обучающихся по направлению 6519.00- «автоматизация и управление» бакалаврской и магистерской подготовки и специальности 2101.00«управление и информатика в технических системах» подготовки специалистаинженера.
ISBN
© Санкт-Петербургский государственный университет информационных технологий, механики и оптики, 2005. © А. А. Мельников, А. В. Ушаков, 2005. 197101, Санкт-Петербург, Кронверкский пр. 49, Санкт-Петербургский государственный университет информационных технологий, механики и оптики, e-mail:
[email protected],
[email protected]
СОДЕРЖАНИЕ CONTENTS……………………………………………………... 5 Принятые сокращения и обозначения………………………… 7 ВВЕДЕНИЕ…………………………………………………….. 10 1. ЛИНЕЙНЫЕ ДВОИЧНЫЕ ДИНАМИЧЕСКИЕ СИСТЕМЫ (ЛДДС) ДИСКРЕТНОЙ АВТОМАТИКИ…………………… 13 1.1. Аппарат передаточных функций (матриц) в задаче модельного представления ЛДДС………………………….. 1.2. Векторно-матричное модельное представление ЛДДС, параметризованное дискретным временем……………….. 1.3. Проблема редуцирования размерности модельных представлений ЛДДС……………………………………..... 1.3.1. Редуцирование линейных двоичных динамических систем на основе делимости модулярных многочлена числителя и знаменателя передаточной функции…… 1.3.2. Редуцирование линейных двоичных динамических систем на основе анализа структуры пространств управляемости и наблюдаемости ЛДДС……………... 1.4. Концепции подобия в теории линейных ДДС…………….. 1.4.1. Концепция подобия в задаче декодирования систематических помехозащищенных кодов………… 1.4.2. Концепция подобия в задаче синтеза двоичных динамических систем в логике произвольных линейных триггеров………… 1.5. Векторно-матричное представление линейного помехозащитного кодопреобразования, не параметризованное дискретным временем…………….. 1.5.1. Формирование матриц ПЗК с помощью проверочных равенств при декодировании и кодировании…………………… 1.5.2. Формирование матриц ПЗК с использованием матричного уравнения Сильвестра 1.5.3. Формирование матриц ПЗК с полной блоковой систематикой…………………….. 1.6. Анализ структуры неподвижных состояний и замкнутых циклов ЛДДС………………………………………………... 1.6.1. Неподвижные состояния линейной двоичной динамической системы…………. 1.6.2. Замкнутые циклы линейных ДДС…………………….. 1.7. ЛДДС в задачах дивидендного помехозащитного кодопреобразования…………………………………………
13 23 34 34 38 43 51 55 59 64 66 69 74 75 78 93 3
2. НЕЛИНЕЙНЫЕ ДВОИЧНЫЕ ДИНАМИЧЕСКИЕ СИСТЕМЫ (НДДС) ДИСКРЕТНОЙ АВТОМАТИКИ…….. 101 2.1. Построение модельного представления НДДС с использованием средств автоматной логики…..……….. 2.2. Построение дивидендных устройств помехозащитного кодопреобразования с помощью НДДС в логике произвольных триггеров………………………….. 2.3. НДДС в задачах коррекции искажений помехозащищенных кодов…………………………………. 2.4. Дивидендные кодирующие и декодирующие устройства укороченных циклических кодов с коммутируемой структурой………………………………. 2.5. Аппарат селлерсовского дифференцирования в задачах анализа булевых описаний НДДС дискретной автоматики
142
3. ГИБРИДНЫЕ ДВОИЧНЫЕ ДИНАМИЧЕСКИЕ СИСТЕМЫ (ГДДС) ДИСКРЕТНОЙ АВТОМАТИКИ……..
155
3.1. Проблема заполнения кодового пространства классом гибридных ДДС……………………………………………... 3.2. Фактор востребованности переменных булевых описаний двоичных динамических систем…………………………… 3.3. Использование фактора востребованности булевых переменных кодов состояний НДДС для рационального использования ресурса помехозащиты 3.4. Построение эквивалентного линейного векторноматричного представления НДДС на основе принципа агрегирования переменных булевых описаний…………… 3.5. Проблема обмена на паре «аппаратурное пространство – временные затраты» в задачах помехозащитного кодопреобразования………………………………………………
101 117 126 136
155 169 180 188 198
ЗАКЛЮЧЕНИЕ….……………………………………………….
201
ПРИЛОЖЕНИЕ D-преобразование и его свойства…………...
202
ЛИТЕРАТУРА……………………………………………………
208
Предметный указатель…………………………………………..
212
Из истории лаборатории телемеханики………………………… 215 4
BINARY DYNAMIC SYSTEMS OF DISCRET AUTOMATION Editor Doctor of Technical Sciences Professor A. V. Ushakov CONTENTS………………………………………………………. 5 Table of Abbreviations and Symbols……………………………... 7 INTRODUCTION………………………………………………... 10 1. LINEAR BINARY DYNAMIC SYSTEMS (LBDS) OF DISCRETE AUTOMATION……………………………...... 1.1. Transfer Function (Matrix) Approach in Problem of LBDS Model Representation…………………………………………. 1.2. Vector-Matrix LBDS Model Representation Parameterized by Discrete Time………………………………………………..... 1.3. The Problem of Dimension Reduction of LBDS Model Representation……………………………………………………...... 1.3.1. Reduction of Dimension of LBDS by Means of Numerator and Denominator Modular Polynomials of Transfer Function Divisibility……………………………………… 1.3.2. Reduction of Dimension of LBDS by Means of Analysis of Controllability and Observability Space of LBDS…….. 1.4. The Similarity Conception in Theory of Linear Binary Dynamic Systems……………………………………………… 1.4.1. The Similarity Conception in Systematic Noise-Immune Codes Decode Task………………………………………. 1.4.2. The Similarity Conception in Task of Binary Dynamic Systems Synthesis Within Arbitrary Flip-Flop Logic……. 1.5. Vector-Matrix Model Representation of Linear NoiseImmunity Encoding not parameterized by Discrete Time…….. 1.5.1. Design of Noise-Immune Codes Matrices by Means of Check Equations Within Coding and Decoding Processes 1.5.2. Design of Noise-Immune Codes Matrices by Means of Sylvester Matrix Equation……………………………….. 1.5.3. Design of Noise-Immune Codes of Full-Block Systematization……………………………. 1.6. The Analysis of Structure of LBDS Motionless States and Closed Loops………………………………………………….. 1.6.1. Motionless States of LBDS………………………………. 1.6.2. Closed Loops of LBDS…………………………………… 1.7. LBDS in Tasks of Dividing Noise-Immunity Code Transformation…………………………………………………………..
13 13 23 34 34 38 43 51 55 59 64 66 69 74 75 78 93
5
2. NONLINEAR BINARY DYNAMIC SYSTEMS (NBDS) OF DISCRETE AUTOMATION……………………………...... 2.1. The Construction of NBDS Model Representation by Means of Finite-State Machine Logic……………………………………. 2.2. The Construction of Dividing Devices Noise-Immunity Code Transformation by Means of NBDS in the Arbitrary Flip-Flops Logic…………………………………………………………... 2.3. NBDS in Tasks of Noise-Immunity Codes Errors Correction………………………………………………. 2.4. The Dividing Encoding and Decoding Devices of Shortened Cyclical Codes with Switching Structure…………………….. 2.5. Sellers’ Differentiation Approach in Boolean Description Analysis Tasks of NBDS of Discrete Automation ……………. 3. THE HYBRID BINARY DYNAMIC SYSTEMS (HBDS) OF DISCRETE AUTOMATION……………………………...... 3.1. The Problem of Code Space infilling with a Hybrid Binary Dynamic Systems Set………………………………………….. 3.2. The Request Factor of Boolean Variables of Binary Dynamic Systems Description…………………………………………… 3.3. The Use of the Request Factor of State Codes’ Boolean Variables of NBDS for EFFICIENT Employment of Noise Immunity Resource………………………………………………….. 3.4. The Design of Equivalent Linear Vector-Matrix Model Representation of NBDS Based on Boolean Description Variables Aggregation Approach………………………………………… 3.5. The Problem of “Apparatus Space – Time Expense” Exchange in Tasks of Noise-Immunity Code Transformation……………
101 101 117 126 136 142 155 155 169 180 188 198
CONCLUSION…………………………………………………….. 201 APPLICATION D – Transformation and its Properties…………… 202 REFERENCES……………………………………………………..
208
Subject index……………………………………………………….
212
Remote Control Laboratory. Brief Historical Review……………... 215
6
ПРИНЯТЫЕ СОКРАЩЕНИЯ И ОБОЗНАЧЕНИЯ АА БП БФ ВА ВВ ВК ВМП ВНН ВПС ВС ВСВ
– – – – – – – – – – –
ГДДС ГСА ДА ДДС ДКП ДКУ ДНУ ДПВ ДСНФ ДУПК
– – – – – – – – – –
ИВП ИЧК КА КПР КС КУ ЛДДС ЛУ ММ МС НДДС ОПВ ОСВ ПЗК ПЗКА ПНЗК
– – – – – – – – – – – – – – – –
абстрактный автомат блок памяти булева функция время «аппаратурное» модель «вход-выход» время «канальное» векторно-матричное представление вектор невязки наблюдения векторный показатель сложности модель «вход-состояние» векторно-матричное линейное описание «входсостояние-выход» гибридная двоичная динамическая система граф-схема алгоритма дискретная автоматика двоичная динамическая система двоичная кодовая последовательность декодирующее устройство двоичное динамическое наблюдающее устройство диаграмма переходов и выхода дизъюнктивная совершенная нормальная форма дивидендное устройство помехозащитного кодопреобразования источник входной последовательности информационная часть кода конечный автомат кодовое пространство канал связи кодирующее устройство линейная двоичная динамическая система линейное устройство модулярный многочлен модельная среда нелинейная двоичная динамическая система относительная оценка приведенной востребованности оценка степени востребованности помехозащищенный код помехозащищенный конечный автомат помехонезащищенный код
7
РКС СД СДБФ
– – –
УДA УДММ УК УКК УПЗК УС УФСК ХММ ХП ЦДУ ЦКУ ЦПЗК ЧПС ЭЗ ЭП
– – – – – – – – – – – – – – –
регистр канала связи «синдромный» дешифратор аппарат селлерсовского дифференцирования булевых функций устройство дискретной автоматики устройство деления модулярных многочленов устройство коммутации устройство коррекции кода укороченный помехозащищенный код уравнение Сильвестра устройство формирования сигнала коррекции характеристический модулярный многочлен характеристический полином циклическое декодирующее устройство циклическое кодирующее устройство циклический помехозащищенный код частная производная Селлерса элемент задержки элемент памяти
Г – гипотеза; К – концепция; ПМ – примечание; Пр. – пример; ПС – постулат; С – следствие; СВ – свойство; Т – теорема; У – утверждение; ■ – знак завершения доказательства утверждения, решения примера, завершения алгоритма; □ – знак завершения формулировки утверждения, определения, примечания, следствия, свойства, постулата, гипотезы;
A, A i , A j – матрица, i -я строка, j -й столбец матрицы A ;
{
}
col α i , i = 1, n – столбцовая матричная структура с элементами α i в столбце;
D {( • )( k ) } – прямое D-преобразование кодовой последовательности ( • ) над простым полем Галуа;
8
E{ ( • )} – оператор округления величины ( • ) до ближайшего большего целого;
F ( d ) =D { f ( k ) } – D-образ последовательности f ( k ) ;
f ( k ) =D −1{ f ( d ) } – оригинал D-образа последовательности f ( k ) ; GF ( p ) = { 0,1, 2, ..., p − 1}, p ∈ N – простое поле Галуа;
( )
GF p n , p, n ∈ N – расширенное поле Галуа; k – дискретное время ( k = 0,1, 2,Κ ), выраженное в числе тактов длительностью ∆ t процессов кодопреобразования; row α i , i = 1, n – строчная матричная структура с элементами α i в строке; u ( k ) – входная кодовая последовательность ДДС; x( k ) – вектор исходного состояния ДДС; x( k + 1) – вектор состояния перехода ДДС; y ( k ) – выходная кодовая последовательность ДДС; & – союз «И» предикатов; ∨ – союз «ИЛИ» предикатов.
{
}
9
ВВЕДЕНИЕ Вниманию проблемно ориентированного читателя предлагается монография «Двоичные динамические системы дискретной автоматики», которая содержит три тематически замкнутых раздела. Первый раздел, посвященный проблемам анализа и синтеза линейных двоичных динамических систем (ЛДДС) дискретной автоматики (ДА), инструментально строится на результатах процесса алгебраизации общей теории систем. Алгебраизация методов исследования устройств дискретной автоматики (УДА), которые составляют обширный класс динамических систем над конечными простым и расширенным полями Галуа, стала проникать в практику разработчиков этих устройств в последней трети XX в. На первом этапе она проявилась в использовании векторно-матричных модельных представлений линейных УДА над конечными полями с основанием (характеристикой) два. Процесс алгебраизации, опираясь на возможности матричного формализма, позволил решить проблемы анализа свойств линейных УДА на основе исследования структуры пространств матриц состояния, управляемости и наблюдаемости и их пересечения, что особенно эффективно проявило себя при анализе структуры неподвижных состояний ЛДДС, их замкнутых циклов, а также при редуцировании размерности УДА. В задачах синтеза ЛДДС устройств ДА применение принципа векторного и матричного подобия позволило конструктивно использовать возможности формализма матричного уравнения Сильвестра (УС) над конечным полем для расширения банка реализаций линейных УДА. Более того, алгебраизация обнаружила свои возможности в переносе идей динамического наблюдения, разработанных в недрах теории систем над бесконечными полями, на УДА и двоичные каналы связи с целью оценки их состояния. Причем в случае постановки задачи оценки начального состояния «регистра помехи» в двоичном канале связи удается по-новому сформулировать задачу помехоустойчивости передачи кодированных сигналов в фазе декодирования, которая также решается с помощью матричного уравнения Сильвестра. Последнее обстоятельство позволило разработать алгоритмическое обеспечение конструирования проверочных и образующих матриц помехозащищенных кодов, также опирающееся на возможности матричного уравнения Сильвестра. В случае неконтролируемой кодовой систематики эта задача может быть решена с помощью SVD-процедуры сингулярного разложения матриц с использованием программной оболочки MATLAB, адаптированной к модулярной арифметике. Второй раздел, посвященный проблемам анализа и синтеза нелинейных двоичных систем (НДДС) дискретной автоматики, инструментально опирается на результаты в области теории и практики конечных 10
автоматов, которые с точки зрения общей теории систем образуют класс НДДС. В разделе проблемы синтеза и анализа устройств дискретной автоматики в рамках существующих версий автоматной логики рассматриваются как в канонической «автоматной» постановке, так и с использованием граф-схем алгоритмов (ГСА) описания функционирования УДА, при этом разработка методов погружения ГСА в автоматную среду позволила построить алгоритмы синтеза УДА в различных типах автоматной и триггерной логики. Возможности автоматных представлений УДА распространяются на реализацию циклических дивидендных кодирующих и декодирующих устройств в произвольной триггерной логике, а также устройств коррекции искаженных при передаче по двоичным каналам связи кодовых комбинаций с использованием синдромов и квазисиндромов искажений. Автоматные представления ДДС обнаруживают свои возможности и при построении циклических кодирующих и декодирующих дивидендных устройств укороченных кодов с управляемым циклом деления путем коммутации структуры устройств оптимальных кодов. Богатые возможности в теории и практике автоматных описаний обнаруживает аппарат Селлерса дифференцирования булевых функций. Эти возможности в монографии используются для контроля корректности выбора булевых переменных, оценки их востребованности в процессе функционирования УДА, а также сравнительной оценки «степени нелинейности» и сложности альтернативных реализаций комбинационных схем по числу членов разложения булевых функций в ряд по селлерсовским производным. Третий раздел монографии посвящен проблемам анализа и синтеза гибридных двоичных динамических систем (ГДДС) дискретной автоматики, сочетающей в себе элементы линейных и нелинейных модельных представлений. Первым признаком гибридности ДДС является размерность ее блока памяти, которая занимает промежуточное положение между размерностью автоматной реализации и линейной при решении одной и той же задачи кодопреобразования. В этой связи важной концептуальной задачей синтеза ГДДС являются проблема «кодового пространства» и формирование способов его заполнения. В монографии указанные проблемы решаются путем редуцирования линейных ДДС и введением избыточности при кодировании состоянии ДДС, синтезируемых в автоматной логике, с целью приданию им помехозащищенности. Причем последняя задача решается в постановке рационального использования ресурсов помехозащиты, в качестве критерия которого используется фактор востребованности булевых переменных кодов состояний на всех наборах переменных. Еще одним эффективным способом решения проблемы «кодового пространства» на паре НДДС-ЛДДС является обмен аппаратурного пространства на вре11
менные затраты. Гибридные ДДС образуют достаточно новый класс двоичных динамических систем, разработка теории которых является весьма актуальной. Авторы отдают себе отчет в том, что предлагаемая вниманию читателей монография является скромным вкладом в теорию двоичных динамических систем устройств дискретной автоматики, основы которой заложены фундаментальными работами Буля Дж. (Boole G.), К. Шеннона (C.Shannon), Э. Мура (E. Moore), А. Гилла (A. Gill), М. Арбиба (M. Arbib), У. Питерсона (W. Peterson), Ф. Селлерса (F. Sellers), Д. Бохманна (D. Bochmann), Х. Постхофа (C. Posthoff), Р. Хэмминга (R.Hamming), В. М. Глушкова, Ю. Т. Медведева, Р. Г. Фараджева, С. И. Баранова, В. В. Сапожникова, Вл. В. Сапожникова, В. А. Горбатова, Ю. Л. Сагаловича, А. А. Шалыто, Н. С. Щербакова и многих других зарубежных и отечественных ученых. Основу монографии составили результаты научных исследований в лаборатории телемеханики кафедры систем управления и информатики (бывшей кафедры автоматики и телемеханики) университета, проводившихся под руководством доктора технических наук, профессора А. В. Ушакова. Результаты последних лет авторами получены при разработке теоретических проблем, к решению которых во исполнение региональной комплексной целевой программы «ТЕЛЕМЕХАНИКА – 2000» в инициативном порядке подключилась лаборатория телемеханики. Монография в предложенном виде содержит в основном результаты последних лет, имеющие как научный, так и методикопознавательный характер. Последнее позволяет рекомендовать ее специалистам в области дискретной автоматики, а также аспирантам специальности 05.13.05.- «элементы и устройства вычислительной техники и систем управления», студентам старших курсов направления 6519.00- «автоматизация и управление» и специальности 2101.00«управление и информатика в технических системах». Замысел монографии возник у авторов в результате постоянных научных контактов и обмена научными идеями, в результате чего основной текст монографии авторы написали совместно. В написании параграфов 1.6, 1.7 и 2.4 приняла участие Е.В. Рукуйжа. Конструктивную критику по существу структуры и содержания монографии просим направлять авторам: почтовый адрес – 197101, Санкт-Петербург, Кронверкский пр., 49, Санкт-Петербургский государственный университет информационных технологий, механика и оптики (СПбГУ ИТМО); телефон 595-41-28; электронная почта –
[email protected] и
[email protected]. 12
1 ЛИНЕЙНЫЕ ДВОИЧНЫЕ ДИНАМИЧЕСКИЕ СИСТЕМЫ ДИСКРЕТНОЙ АВТОМАТИКИ
1.2. Аппарат передаточных функций в задаче модельного представления линейных двоичных динамических систем Двоичные динамические системы (ДДС), интегрированные в некоторую техническую среду приема, хранения, обработки и передачи двоичной информации, при выполнении конкретных функций решают в основном задачи преобразования кодов, элементы которых принадлежат простому полю Галуа GF ( p ) = {0 ,1,2 ,Κ , p − 1 }, которое при
p = 2 принимает вид GF ( 2 ) = { 0,1} [15, 29, 42, 55]. Преобразуемые коды могут быть представлены тремя основными способами: в виде вектора, не параметризованного дискретным временем; в виде кодовой последовательности (скалярной или векторной), параметризованной дискретным временем, и в виде модулярных многочленов (ММ) [15, 55]. Если процесс преобразования кода, поданного на вход ДДС, в код, наблюдаемый на ее выходе, осуществляется с помощью линейной композиции результатов линейных операций умножения и суммирования по модулю два, то такая двоичная динамическая система является линейной (ЛДДС). Если при этом основной результат преобразования кодов с помощью ЛДДС фиксируется на ее выходе и входе, то описание функционирования такой ЛДДС может быть задано в классе модельных представлений «вход – выход». Одним из конструктивных средств задания модельного представления «вход – выход» над бесконечными и конечными полями является аппарат передаточных функций (матриц). В основе методологии аппарата передаточных функций (матриц) лежит алгебраизация отношения «вход – выход», которое для непрерывных систем над бесконечным полем осуществляется с помощью преобразования Лапласа, для дискретных систем над бесконечным полем – с помощью Z преобразования, а для дискретных систем над конечным простым полем Галуа GF ( p ) , частным случаем которых при p = 2 являются
D
ЛДДС, – с помощью -преобразования кодовых последовательностей и модулярных многочленов (см. Приложение).
68
Передаточная функция, записанная в виде отношения двух полиномов, представляет собой решение графа [46], к которому может быть применено правило Мейсона некасающихся контуров в инверсной постановке. Суть инверсного использования правила Мейсона [25, 46] состоит в воссоздании класса графов с вложенными (касающимися) контурами минимальной размерности, эквивалентных в смысле решений этих графов в форме передаточной функции отношения «вход – выход». Построенный класс графов образует множество возможных структурных представлений ЛДДС, которые могут быть положены в основу схемотехнических реализаций двоичных динамических систем, решающих заданную задачу преобразования кодов. Возможности аппарата передаточных функций (матриц) в задаче модельного представления ЛДДС рассмотрим, опираясь на систему определений и утверждений. Определение 1.1 (О1.1). λ -мерной двоичной кодовой последовательностью f ( k ) : f ( 0 ) , f ( 1) , f ( 2 ) , Κ , f ( k ) ,Κ (1.1) будем называть параметризованный дискретным временем k , выраженным в числе k тактов длительностью ∆ t , векторный кортеж [29], компоненты которого f ( k ) для ∀ k представляют собой λмерные векторы, элементы которых принадлежат простому полю Галуа GF ( p ) p =2 = {0 ,1 }. □ Если в (1.1) размерность λ компонентов равна единице, то последовательность f ( k ) является скалярной или одномерной. Кодовая последовательность (1.1) может быть конечной по времени и периодической, если выполняется равенство f ( k ) = f ( k + T ), (1.2) где T – период периодической последовательности.
D-образом F ( d ) двоичной кодовой последовательности (1.1) в силу прямого D-преобразования (см. ПрилоОпределение 1.2 (О1.2).
жение) называется сходящаяся бесконечная сумма ∞
F ( d ) = D{ f ( k )} = ∑ f ( k ) d k .□
(1.3)
k =0
Введем теперь в рассмотрение передаточные матрицы и функции линейной ДДС. Определение 1.3 (О1.3). Пусть ЛДДС преобразует r -мерную входную двоичную кодовую последовательность (ДКП) u ( k ) в m мерную выходную ДКП y ( k ) , тогда передаточной матрицей Φ ( d )
69
этой ЛДДС называется матрица, связывающая
D-образ Y ( d )
вы-
ходной ДКП y ( k ) с D-образом U ( d ) входной ДКП u ( k ) при нулевом начальном состоянии ЛДДС в силу соотношения Φ ( d ) = arg {Y ( d ) = Φ ( d ) U ( d ) , Y ( d ),U ( d ) − fix } □ (1.4) Введем в рассмотрение ( i, j ) -й сепаратный канал ДДС, который связывает ее i-й выход Yi ( k ) с j-м входом U j ( k ) i = 1,m; j = 1,r . То-
(
)
гда ( i, j ) -й сепаратный канал ЛДДС может быть описан передаточной функцией Φ ij ( d ) , задаваемой определением.
( i, j ) -го сепаотношение Yi ( d ) – D-
Определение 1.4 (О1.4). Передаточной функцией
ратного канала Φ ij ( d ) ЛДДС называется образа выходной ДКП yi ( k ) , наблюдаемой на i-м выходе системы и U j (d) –
D-образа
входной двоичной кодовой последовательности
u j ( k ) , поданной на j-й вход линейной ДДС, полученное при нулевом начальном состоянии ЛДДС: ∆ Y (d) ( ) .□ (1.5) Φ ij d = i U j (d) Нетрудно видеть, что Φ ij ( d ) является ( i, j ) -м компонентом пере-
даточной матрицы Φ ( d ) (1.4). Таким образом становится справедли-
вым положение следующего утверждения. Утверждение 1.1 (У1.1). Передаточная матрица Φ ( d ) (1.4) линейной ДДС, осуществляющей преобразование r -мерной кодовой последовательности u ( k ) в m -мерную кодовую последовательность y ( k ) , имеющих представление (1.6) u ( k ) = col u j ( k ) , j = 1,r ; y ( k ) = col yi ( k ) ,i = 1,m ,
{
}
{
}
представляет собой ( m × r ) -матрицу, составленную из передаточных функций Φ ij ( d ) (1.5) всех ( m × r ) ее ( i, j ) -х сепаратных каналов
так, что становится справедливым представление
[
]
(1.7) Φ ( d ) = row {col Φ ij ( d ); i = 1,m ; j = 1,r }. □ Если ЛДДС преобразует скалярную входную кодовую последовательность u ( k ) в скалярную кодовую последовательность y ( k ) так, что r = m = 1 , то передаточная матрица (1.4) ЛДДС вырождается в передаточную функцию, задаваемую дивидендным выражением
70
λ
αid i ∑ Y ( d ) M ( d ) i =0 Φ(d)= = = , β 0 = 1, U (d) N (d) m β d j ∑ ∆
j =0
□
(1.8)
j
71
где M ( d ) , N ( d ) — модулярные многочлены (ММ) относительно переменной d, соответственно степеней λ и m . Выделим теперь случай, когда входной и выходной коды задаются в форме модулярных многочленов u ( x ) = u λ x λ + u λ−1 x λ−1 + Κ + u1 x + u 0 , (1.9)
y ( x ) = y m x m + y m −1 x m −1 + Κ + y1 x + y0 , (1.10) где λ и m именуются степенями ММ u ( x ) и y ( x ) ; uν ν = 1, λ , y µ µ = 1, m принадлежат простому полю Галуа GF ( p ) p =2 = {0 ,1 },
(
(
)
)
при этом приведение подобных при сложении и умножении модулярных многочленов производится по правилам сложения и умножения по модулю p = 2 ( mod p = mod 2 ). Процесс преобразования входного кода u , задаваемый ММ u ( x ) (1.9) в выходной вектор y , задаваемый модулярным многочленом y ( x ) (1.10), может быть так же описан с помощью передаточной функции Φ ( d ) вида (1.8), если будут сконструированы
D-образы U ( d ) и Y ( d ) модулярных многочленов u ( x ) и y ( x ) соответственно. D-образ
модулярного многочлена зависит от того, каким разрядом вперед организована в среде линейных ДДС передача (преобразование) модулярных многочленов. Утверждение 1.2 (У1.2). D-образ модулярного многочлена 0
f ( x ) = ∑ f k x k = f n x n + f n−1 x n−1 + Κ + f1 x + f 0 ,
(1.11)
k =n
F ( d ) = D{ f ( x )} при его передаче младшим разрядом вперед задается выражением F ( d ) = D{ f ( x )} = f ( x ) x=d = f 0 + f 1 x + Κ + f n−1 d n−1 + f n d n □ (1.12) Доказательство утверждения состоит в формировании последовательности f ( k ) : f 0 , f 1 , Κ , f n−1 , f n , (1.13)
с последующим применением к (1.13) прямого D-преобразования. ■ Утверждение 1.3 (У1.3). D-образ модулярного многочлена
f ( x) =
n
∑ fk xk
k =0
(1.14)
F ( d ) = D{ f ( x )} при его передаче старшим разрядом вперед задается выражением
72
~ F ( d ) = D{ f ( x )} = f ( x −1 )
x −1 = d
=
~ = f n + f n−1d + Κ + f1d n−1 + f 0 d n ; f ( x −1 ) = x − n f ( x ) □ (1.15) Доказательство утверждения строится на формировании последовательности ~ (1.16) f ( k ) : f n , f n−1 , Κ , f 1 , f 0 , с последующим применением к (1.16) прямого D-преобразования. ■ Заметим, что в современных устройствах дискретной автоматики (УДА) преобразование кодов, заданных с помощью модулярных многочленов, осуществляется старшим разрядом вперед. Отмеченное выше позволяет ввести следующее определение. Определение 1.5 (О1.5). ЛДДС, осуществляющая преобразование входного кода, заданного с помощью модулярного многочлена u ( x ) (1.9), в выходной код, заданного с помощью модулярного многочлена y ( x ) (1.10), может быть описана передаточной функцией вида (1.8), в которой D-образы Y ( d ) и U ( d ) вычисляются в силу (1.15). □ Отдельного рассмотрения требует вопрос конструирования передаточной функции ДДС в случае, если ставится задача синтеза устройства умножения или деления модулярных многочленов. В данной постановке передаточная функция Φ ( d ) ДДС, осуществляющей умножение ММ a ( x ) и b ( x ) , будет определяться в силу правила
Φ ( d ) = arg { ( a( d ) ∨ b( d ) ) & deg Φ ( d ) = (1.17) = min { deg a( d ) ,deg b ( d ) }} В случае, когда ставится задача конструирования ДДС, осуществляющей деление модулярного многочлена a ( x ) и ММ b ( x ) в форме a ( x) , то передаточная функция Φ ( d ) ДДС будет иметь вид b ( x) 1 Φ(d)= . (1.18) b( d ) Представленные положения своей целью имеют получение структурного представления ЛДДС для последующей ее технической реализации или структурно-функционального анализа. Получить структурное представление ЛДДС с использованием понятия передаточной функции (матрицы) позволяют положения следующего утверждения. Утверждение 1.4 (У1.4). Структура модельного представления ЛДДС, описываемой передаточной функцией вида (1.8) с единичным свободным членом знаменателя, может быть построена с использованием правила некасающихся контуров метода Мейсона, в соответствии с которым она выразится в форме касающихся (вложенных
73
друг в друга) контуров, передаточные функции которых заданы мультипликативной структурой из постоянного коэффициента α i и соответствующей степени i переменной d знаменателя передаточной функции так, что их число не превышает m , а число прямых ветвей от входа к выходу этой реализации определяется числом ненулевых элементов числителя передаточной функции с передаточными функциями ветвей β i d i , число которых не превышает m + 1 . □ Доказательство утверждения можно найти в литературе по теории графов, например, в [25]. ■
Рисунок 1.1. Представление ЛДДС в каноническом управляемом базисе
Рисунок 1.2. Представление ЛДДС в каноническом наблюдаемом базисе
Таким образом, положения У1.4 дают два канонически сложившихся модельных представления [25] ЛДДС, описываемых передаточной функцией вида (1.8), приведенных на рисунках 1.1 и 1.2. Элементы d модельных представлений, показанных на рисунке 1.1 и 1.2, имеют смысл, который раскрывают положения следующего утверждения.
74
Утверждение 1.5 (У1.5). Элемент памяти, передаточная функция Φ ЭП ( d ) которого имеет представление Φ ЭП ( d ) = d , (1.19) является D–триггером. □ Доказательство утверждения строится на понятии D–триггера и
D
свойстве -преобразования для сдвинутой ДКП (см. Приложение). Из теории элементов дискретной автоматики известно, что D–триггер представляет собой элемент памяти (ЭП), реализующий задержку выходной y ( k ) ДКП на один такт относительно входной u ( k ) ДКП так, что u ( k ) = y ( k + 1) . Если теперь воспользоваться свойством преобразования для сдвинутой ДКП, то получим: d −1Y ( d ) = U ( d ) , откуда для Φ ЭП ( d ) будем иметь: ∆ Y (d) Y (d) Φ( d ) = = −1 =d.■ U (d) d Y (d) Положения раздела позволяют сформировать следующий алгоритм конструирования передаточной функции и построения структурного представления соответствующей ЛДДС.
D
Алгоритм 1.1 (А1.1)
0. Классифицировать задачу кодопреобразования: в форме ЛДДС, преобразующей входную последовательность в выходную, или в форме ЛДДС, осуществляющей умножение/деление ММ. Если рассматриваемая задача соответствует первому случаю, то продолжить выполнение алгоритма с п.1, если второму – с п.6 алгоритма. 1. Задать преобразуемый (входной) двоичный код в форме двоичной кодовой последовательности u ( k ) или модулярного многочлена u ( x ) . 2. Задать выходной двоичный код в форме ДКП y ( k ) или ММ y( x ) .
D-образ u( k ) или u( x ) . Вычислить Y ( d ) D-образ y ( k ) или y ( x ) .
3. Вычислить U ( d )
4. 5. Сконструировать передаточную функцию Φ ( d ) синтезируемой ЛДДС в форме (1.8) и перейти к выполнению п.7 алгоритма.
75
6. В случае конструирования ЛДДС, осуществляющую умножение ММ, вычислить ее передаточную функцию Φ ( d ) в силу (1.17). В случае конструирования ЛДДС, осуществляющую деление ММ, то вычислить ее передаточную функцию Φ ( d ) в силу (1.18). 7. С помощью правила Мейсона некасающихся контуров построить структурные представления передаточной функции Φ ( d ) в канонических структурных формах [25]. 8. Сравнить реализации по векторному показателю сложности (ВПС) с компонентами, учитывающими число элементов памяти с передаточной функцией Φ ЭП ( d ) = d , число элементов двухвходового суммирования по mod 2 , число точек ветвления распространения сигналов, число ветвей. 9. Принять к реализации одну из структур (с меньшей нормой ВПС). Осуществить схемотехническую реализацию принятой версии ЛДДС. ■ Пример 1.1 (Пр1.1)
В качестве примера рассматривается линейная ДДС, преобразующая входную единичную последовательность u ( k ) = 1 ( k ) в периодическую периода T = 7 , обеспечивающую размещение в регистре хранения информационных разрядов кода Хэмминга (7,4). 0. Выполним п.0 алгоритма 1.1, в соответствии с которым продолжим выполнение алгоритма с п.1. 1. Зададим преобразуемый (входной) двоичный код в форме двоичной кодовой последовательности u ( k ) : u ( k ) = 1( k ) = 1111111 1111111 Κ 2. В соответствии с расположением информационных разрядов в кодах Хэмминга (7,4) зададим выходной двоичный код в форме ДКП y ( k ) : y ( k ) = 1110100 1110100 Κ 1110100 Κ . 3. Используя прямое
D-преобразование
(П1.1), вычислим
U ( d ) D-образ преобразуемой (входной) кодовой последовательности u ( k ) в результате чего получим: 1 U ( d ) =D {u ( k ) } = . 1+ d
4. Аналогично п.3 вычислим Y ( d ) y( k ) :
76
D-образ
выходной ДКП
1+ d + d2 + d4 . Y ( d ) =D { y ( k ) } = 1 + d7 5. Сконструируем передаточную функцию синтезируемой ЛДДС в форме (1.8) и перейдем к выполнению п.7 алгоритма. Y ( d ) (1 + d + d 2 + d 4 ) ( 1 + d ) 1 + d 3 + d 4 + d 5 Φ(d)= . = = U(d) 1 + d7 1 + d7 7. С помощью правила Мейсона некасающихся контуров построим структурные представления передаточной функции Φ ( d ) в канонических структурных формах (рисунок 1.3, рисунок 1.4).
Рисунок 1.3
Рисунок 1.4
8. В соответствии с п.7 алгоритма при выбранной элементной базе технической реализации ДДС выполним сравнение полученных в п.7 модельных представлений ЛДДС по векторному показателю сложности, которое обнаруживает их идентичность. ■ Пример 1.2 (Пр1.2)
Рассматривается задача конструирования линейной ДДС, осуществляющей деление произвольной входной ДКП (задаваемой в виде ММ u ( x ) ) на неприводимый многочлен β ( x ) = x 3 + x + 1 с учетом передачи ДКП старшим разрядом вперед.
77
0. Выполним п.0 алгоритма 1.1, в соответствии с которым продолжим выполнение алгоритма с п.6. 6. Сконструируем передаточную функцию синтезируемой ЛДДС в форме (1.17) с учетом передачи ДКП старшим разрядом вперед: ~ −1 f x = x 3 1 + x −2 + x −3 ; ~ β ( d ) = D{ β ( x )} = β x −1 −1 = 1 + d 2 + d 3 ;
( )
(
) ( )
x
=d
1 1 . = β(d) 1+ d2 + d3 7. С помощью правила Мейсона некасающихся контуров построим структурные представления полученной передаточной функции Φ ( d ) в канонических структурных формах (см. рисунок 1.5, рисунок 1.6):
Φ(d)=
Рисунок 1.5
Рисунок 1.6
78
1.3. Векторно-матричное модельное представление линейных двоичных динамических систем, параметризованное дискретным временем
Общесистемные тенденции к расширению банка модельных представлений динамических систем над бесконечными и конечными полями [3, 9, 15, 29] привели разработчиков теории систем к достаточно универсальной модельной среде (МС), которая опирается на триаду «вход–состояние–выход» (ВСВ). Применительно к двоичным динамическим системам модель ВСВ последних имеет вид (1.20) ДДС : { u , x , y , k , λ , δ } где u – r -мерный вектор входной последовательности; x – n -мерный вектор состояния ДДС; y – m -мерный вектор выходной последовательности; k – счетное множество моментов кодопреобразования, осуществляемого ДДС; λ – правило перехода ДДС из исходного состояния x( k ) в состояние перехода x( k + 1) под действием вектора входной последовательности u ( k ) ; δ – правило выхода, описывающее процесс формирования элементов выходной последовательности y ( k ) на переходе из состояния x( k ) под действием u ( k ) или как функции только состояния x( k ) . Введем в рассмотрение следующее определение. Определение 1.6 (О1.6). Каноническим представлением «вход– состояние–выход» произвольной двоичной динамической системы (1.20) называется ее представление в виде двух векторных выражений (1.21) x( k + 1) = λ [ x( k ), u ( k ) ], (1.22) y ( k ) = δ [ x( k ), u ( k ) ] . □ Векторное модельное описание ВСВ (1.21), (1.22) произвольной ДДС имеет структурное представление, приведенное на рисунке 1.7.
λ ( x, u )
x( k + 1)
x( k )
δ ( x, u )
y( k )
Рисунок 1.7. Структурное представление произвольной ДДС
79
На рисунке 1.7 ЭЗ – элемент задержки на один такт кодопреобразования образует блок памяти (БП); блоки λ ( x , u ) , δ ( x , u ) образуют комбинационную схему (КСХ) произвольной ДДС. Определение 1.7 (О1.7). Если правило перехода λ ( x , u ) и правило выхода δ ( x , u ) ДДС (1.21), (1.22) допускают представление в виде композиции линейных операций умножения матрицы на вектор и суммирования в рамках правил модулярной арифметики по модулю p = 2 так, что (1.21) и (1.22) принимают вид (1.23) x ( k + 1) = A x ( k ) + B u ( k ) , x ( 0 ) ; (1.24) y ( k ) = C x ( k ) + H u ( k ), то такая ДДС называется линейной. В (1.21), (1.22) A – ( n × n ) – матрица состояния, B – ( n × r ) –матрица входа, C – ( n × m ) – матрица выхода, H – ( m × r ) –матрица вход-выход ДДС, x ( 0 ) – начальное состояние ДДС. □ Краткости ради представление (1.23), (1.24) ЛДДС будем называть ее ( A, B,C, H ) –матричным представлением. Линейное векторно-матричное представление (1.23), (1.24) двоичной динамической системы имеет структурный графический аналог, приведенный на рисунке 1.8. На рисунке 1.8 ЭЗ – элемент задержки, который образует БП ЛДДС, а блоки с матричными коэффициентами передачи B , A,C , H и сумматоры по модулю p = 2 образуют комбинационную схему линейной ДДС. x( 0 )
u(k)
B
x( k + 1)
ЭЗ
x( k )
C
y( k )
A
H Рисунок 1.8. Структурное представление векторно-матричной модели (1.23), (1.24) ЛДДС
Векторно-матричное представление (ВМП) (1.23), (1.24) линейной ДДС называется рекуррентным, наряду с которым существует и суммарное ВМП ЛДДС. Суммарное векторно-матричное представление линейной ДДС введем с помощью утверждения.
80
Утверждение 1.6 (У1.6). Суммарное векторно-матричное представление ЛДДС (1.23), (1.24) задается соотношениями k −1
x ( k ) = A k x ( 0 ) + ∑ A k −1−i B u ( i ) ,
(1.25)
i =0
k −1
y ( k ) = C A x ( 0 ) + ∑ CA k −1−i B u (i ) + u ( k ) □ k
(1.26)
i =0
Доказательство утверждения строится с использованием рекуррентного соотношения (1.23), которое для первых трех тактов позволяет записать x ( 1) = A x ( 0 ) + B u ( 0 ) ; x ( 2 ) = A x ( 1) + B u ( 1) = A 2 x ( 0 ) + AB u ( 0 ) + B u ( 1) ;
x ( 3) = A x ( 2 ) + B u ( 2 ) = A 3 x ( 0 ) + A 2 B u ( 0 ) + AB u ( 1) + B u ( 2 ) ; Полученная база индукции для любого момента k делает справедливым представление k −1
x ( k ) = A k x ( 0 ) + ∑ A k −1−i B u ( i ) ,
(1.27)
i =0
Второе соотношение суммарной ВМП ЛДДС в форме (1.26) получается подстановкой (1.27) в (1.24). ■ Соотношение (1.27) допускает модификацию, обнаруживающую динамическое преимущество моделей ВСВ над моделями «входвыход», коими являются передаточные функции двоичных динамических систем. Модифицированное представление суммарной ДДС зададим с помощью утверждения. Утверждение 1.7 (У1.7). Суммарная модель (1.27) процессов по вектору состояния линейной ДДС допускает представление (1.28) x ( k ) = Ak x ( 0 ) = W y ( k ) U ( k ) ,
где
[
U ( k ) = u T ( k − 1) ,u T ( k − 2 ) ,Κ ,u T ( 1),u T ( 0 )
[
]
]
T
(1.29)
(1.30) W y ( k ) = B AB Κ A k −1 B , при этом U ( k ) именуется «вектором стратегии» перевода ЛДДС из начального состояния x ( 0 ) в желаемое состояние x ( k ) за k -тактов, а матрица W y ( k ) (1.30) именуется матрицей управляемости линей-
ной двоичной динамической системы за k -тактов. □ Доказательство утверждения строится на представления выражения (1.27) в форме x ( k ) + A k x ( 0 ) = B u ( k − 1) + AB u ( k − 2 ) + A 3 B u ( k − 3) + Κ Κ + A k −2 B u ( 1) + A k −1 B u ( 0 )
(1.31)
81
Выражение (1.31) путем введения агрегированных матрицы и вектора в правой части позволяет записать x ( k ) + Ak x ( 0 ) = T = [ B AB Κ A k −1 B ] [ u T ( k − 1) ,u T ( k − 2 ) ,Κ ,u T ( 1),u T ( 0 ) ] (1.32) Введение обозначений (1.29), (1.30) приводит (1.32) к виду (1.28). ■ Представление (1.28) позволяет сформулировать критерий управляемости линейной ДДС с индексом управляемости, равным k . Утверждение 1.8 (У1.8). Для того чтобы линейная ДДС (1.23), (1.24) была полностью управляемой с индексом управляемости [29] равным k , то есть за k тактов линейная двоичная система могла быть переведена из любого начального состояния x ( 0 ) в любое конечное состояние необходимо и достаточно, чтобы выполнялось условие (1.33) rank W y ( k ) = n = dim x . □ Доказательство утверждения строится на том, что выполнение равенства (1.33) является необходимым условием обратимости матрицы W y ( k ) , то есть существование W y−1 ( k ) . Но если это так, то это условие становится достаточным для вычисления «вектора стратегии» управления U ( k ) на основе (1.28), записываемого в форме (1.34) U ( k ) = W y−1 ( k ) ( x ( k ) + A k x ( 0 ) ) для любых x ( k ) и x ( 0 ) . ■ Условие полной управляемости с индексом k < n = dim x является достаточно жестким, более мягкой формой является условие полной управляемости с индексом n = dim x , которое принимает вид (1.35) rank W y ( n ) = rank B AB Κ A n −1 B = n = dim x . □
[
]
Соотношение (1.35) является условием полной управляемости, то есть управляемости за n тактов, при этом используется обозначение W y ( n ) = W y , где матрица
[
]
(1.36) W y = B AB Κ A n−1 B именуется матрицей управляемости ЛДДС (1.23), (1.24). По аналогии с (1.32) может быть сконструировано векторноматричное соотношение, позволяющее по результатам измерений на первых k тактах выходной последовательности y ( k ) и входной последовательности u ( k ) восстановить начальное состояние x( 0 ) линейной ДДС. Утверждение 1.9 (У1.9). Для того чтобы линейная ДДС (1.23), (1.24) была бы полностью наблюдаемой с индексом наблюдаемости k , то есть чтобы имелась возможность восстановить начальное состояние x( 0 ) за первые k тактов, необходимо и достаточно, чтобы
82
матрица наблюдаемости W н ( k ) с индексом наблюдаемости k обладала рангом, равным n = dim x , иначе чтобы выполнялось условие
[
{
]
rank W н ( n ) = col CA i ; i = 0 ,k − 1 =
[
(C A )
Κ ( C A k −1 )
]
⎫ = n = dim x .□ (1.37) ⎬ ⎭ Доказательство утверждения строится на формировании измерений на первых k тактах в силу (1.24) и (1.27) y ( 0) = C x ( 0) + H u ( 0) ⎫ ⎪ y ( 1) = C x ( 1) + H u ( 1) = CAx ( 0 ) + CB u ( 0 ) + H u ( 1) 2 y ( 2 ) = C x ( 2 ) + H u ( 2 ) = CA x ( 0 ) + CAB u ( 0 ) + CB u ( 1) + H u ( 2 )⎪⎪ ⎬ (1.38) Μ ⎪ y ( k − 1) = C x ( k − 1) + H u ( k − 1) = CA k −1 x ( 0 ) + CA k −2 B u ( 0 ) + ⎪ ⎪⎭ + CA k −3 B u ( 1) + Κ + H u ( k − 1) = C ( C A)
T
2 T
T T
Сформируем на основе (1.38) вектор измерения z ( k ) с компонентами ⎡ y ( 0) + H u ( 0) ⎤ ⎢ y ( 1) + CB u ( 0 ) + H u ( 1) ⎥ ⎢ ⎥ (1.39) z ( k ) = y ( 2 ) + CAB u ( 0 ) + CB u ( 1) + H u ( 2 ) ⎢Μ ⎥ ⎢ ⎥ k −2 k −3 ⎣ y ( k − 1) + CA B u ( 0 ) + CA B u ( 1) + Κ + H u ( k − 1)⎦ Совместное использование представлений (1.38) и (1.39) позволяет записать (1.40) z ( k ) = col CA i ; i = 0 ,k − 1 x( 0 ) = W ( k ) x( 0 ) .
[
]
н
Выполнение условия (1.37) является необходимым для обратимости матрицы наблюдаемости с индексом k W н ( k ) , а существование
матрицы W н−1 ( k ) является достаточным для вычисления вектора начального состояния ЛДДС x( 0 ) в силу (1.40) в форме
x( 0 ) = W н−1 ( k ) z ( k ) . ■ Нетрудно видеть, что условие (1.37) для матрицы наблюдаемости с индексом k является сильным, более слабым является выполнение этого условия для k = n = dim x , тогда матрица наблюдаемости с индексом n W н ( n ) называется просто матрицей наблюдаемости ЛДДС (1.23), (1.24) или пары матриц ( A,C ) и обозначается следующим образом ∆
{
}
(1.41) W н =W н ( n ) = col C A i : i = 0 ,n − 1 . □ Векторно-матричная модель ВСВ линейной ДДС (1.23), (1.24) позволяет сконструировать модель «вход-выход» (ВВ) в форме передаточной
83
функции (матрицы), а также в форме рекуррентного уравнения ВВ с матричными коэффициентами. Утверждение 1.10 (У1.10). Линейная ДДС (1.23), (1.24) может быть описана передаточной функцией (матрицей) Φ ( d ) , связываю-
щей D-образ Y ( d ) выходной последовательности y ( k ) и D-образ U ( d ) входной последовательности u ( k ) в мультипликативной форме Y( d ) =Φ( d )U ( d ) (1.42) где Φ ( d ) задается в виде
Φ ( d ) = C ( d −1 I + A) −1 B + H . □
(1.43) Доказательство утверждения строится на применении к (1.23), (1.24) прямого D-преобразования, которое дает выражения
d −1 x( d ) + d −1 x( 0 ) = Ax( d ) + BU ( d ) (1.44) Y ( d ) = Cx( d ) + HU ( d ) (1.45) Если исключить из (1.44) и (1.45) x( d ) и разрешить их с использованием модальной арифметики относительно D-образа Y ( d ) , то получим
Y ( d ) = {C ( d −1 I + A) −1 B + H }U ( d ) + C ( d −1 I + A) −1d −1 x( 0 ) . (1.46) Положив в (1.46) нулевое начальное состояние ЛДДС в форме x( 0 ) ≡ 0 , запишем для D-образа Y ( d ) выходной последовательности
Y ( d ) = {C ( d −1 I + A) −1 B + H }U ( d ) . (1.47) Сравнение (1.47) с (1.42) позволяет записать (1.43). ■ Из выражения (1.43) становится корректным вычисление Φ ij ( d ) – передаточной функции ( i, j ) –сепаратного канала ЛДДС, связывающего i -й выход yi ( k ) с j -м входом u j ( k ) в виде
Φ ij ( d ) = C i ( d −1 I + A) −1 B j + H ij ,
(1.48)
где C i – i -я строка матрицы C , B j – j -й столбец матрицы B и H ij – ( i, j ) -й элемент матрицы H . С целью дальнейших исследований воспользуемся разложением Д. К. Фаддеева [25] резольвенты d −1 I + A −1 ЛДДС (1.23), (1.24). Разложение построим в силу положений следующего утверждения. Утверждение 1.11 (У1.11). Резольвента d −1 I + A −1 ЛДДС (1.23), (1.24) может быть представлена в форме n −1 n−2 n −3 ( d −1 I + A)−1 = ( −11 L0 (d −1 ) + L1 (d −1 ) + L2 (d −1 ) + Λ det d I + A) Λ + Ln−2 (d −1 ) + Ln−1 , (1.49)
(
)
(
[
84
]
)
(
)
где матричные компоненты Lλ λ = 1,n − 1 определяются в силу рекуррентной процедуры Д. К. Фаддеева [25] Lλ = aλ I + ALλ−1 , λ = 1,n − 1; L0 = I (1.50) где элементы aλ , λ = 1,n суть коэффициенты характеристического полинома
(
) ( )
n
( )
n −1
( )
( )
n−2
det d −1 I + A = d −1 + a1 d −1 + a2 d −1 + Λ + an−1 d −1 + an □(1.51) Доказательство утверждения строится на последовательном умножении слева выражения (1.49) на характеристическую матрицу d −1 I + A ЛДДС (1.23), (1.24), затем на характеристический полином
(
(
)
)
det d −1 I + A , записанный в форме (1.51), и приравнивании матрич-
( )
λ
ных коэффициентов при скалярных степенях d −1 , λ = 0 ,n − 1 слева и справа. Выполнение указанных действий приводит к (1.49) с матричными коэффициентами (1.50). ■ Утверждение 1.12 (У1.12). Линейная двоичная динамическая система (1.23), (1.24) может быть модельно представлена рекуррентным уравнением ВВ с матричными коэффициентами, которое имеет вид y(k + n ) + a1 y(k + n − 1) + a2 y(k + n − 2 ) + Κ + an−1 y(k + 1) + an y(k ) =
= H u( k + n ) + ( CL0 B + a1 H ) u( k + n − 1) + Κ
(1.52) Κ + ( CLn− 2 B + an−1 H )u ( k + 1) + ( CLn−1 B + an H )u ( k ) □ Доказательство утверждения строится на подстановке резольвенты d −1 I + A −1 , записанной в форме (1.49), с характеристическим полиномом вида (1.50) в выражение (1.47), что позволяет записать d − n y(d ) + a1d −( n−1 ) y(d ) + a2 d −( n−2 ) y(d ) + Κ + an−1d −1 y(d ) + an y(d ) =
(
)
= Hd −n u ( d ) + ( CL0 B + a1 H ) d −( n−1 )u ( d ) + Κ
Κ + ( CLn − 2 B + a n −1 H ) d −1 u ( d ) + ( CLn −1 B + a n H ) u ( d )
(1.53)
Если теперь к левой и правой частям (1.53) применить обратное Dпреобразование, памятуя о том, что при нулевых начальных условиях в силу свойств прямого D-преобразования выполняется соотношение
D −1 {D [ f ( k + p ) ]} = D −1 {d − p F ( d ) }= f ( k + p )
(1.54)
то становится понятным переход от (1.53) к (1.52). ■ Нетрудно видеть, что в структуре доказательств утверждений У1.11 и У1.12 содержится доказательство следующего утверждения.
85
Утверждение 1.13 (У1.13). Если передаточная функция Φ ( d ) линейной ДДС (1.23), (1.24) задана в форме отношения модулярных многочленов по положительным степеням переменной d M (d) Φ(d)= . (1.55) D( d) где M ( d ) и D( d ) соответственно степеней deg M ( d ) = m и
(
)
deg D( d ) = n , то характеристический полином det d −1 I + A матрицы состояния A ЛДДС с передаточной функцией (1.55) определится выражением ~ det d −1 I + A = D d −1 , (1.56) ~ где D d −1 – модулярный полином по отрицательным степеням переменной d , вычисляется в силу соотношения ~ D( d ) = d n D d −1 . □ (1.57) Теперь поставим обратную задачу конструирования ( A, B ,C , H ) представления линейной ДДС в форме (1.23), (1.24) по ее передаточной функции Φ ( d ) отношения «вход-выход». Возможности решения поставленной задачи заложены в параграфе 1.1 структурными представлениями в виде рисунков 1.1 и 1.2 передаточных функций, а также тем обстоятельством, что элемент памяти с передаточной функцией Φ ЭП ( d ) = d реализует задержку на один такт двоичного кодового преобразования произвольной переменной æ( k + 1) , наблюдаемой на его входе, в переменную æ( k ) , наблюдаемую на его выходе. Решение поставленной задачи представим в виде алгоритма.
( )
(
) ( )
( )
Алгоритм 1.2 (А1.2) конструирования ( A, B ,C , H ) представления ЛДДС по ее передаточной функции Φ ( d )
1. Выполнить алгоритм 1.1. 2. Разметить выбранную структурную реализацию передаточной функции Φ ( d ) , для чего выходам элементов памяти с передаточной функцией Φ ЭП ( d ) = d в определенном порядке присвоить переменную xi ( k ) , а их непосредственным входам – переменную xi ( k + 1) . 3. Из размеченной структурной реализации передаточной функции Φ ( d ) сконструировать матрицы A, B ,C и H векторноматричного представления линейной ДДС в форме (1.23), (1.24). ■
86
Для приведенных на рисунке 1.1 и рисунке 1.2 структурных реализаций Φ ( d ) , заданной в форме отношения двух модулярных многочленов (1.55), размеченных переменными состояния xi ( k ) и xi ( k + 1) слева направо (рисунок 1.9) и справа налево (рисунок 1.10) конструирование матриц A, B ,C и H дает для последних представления
α~n
α~1
α~n −1
Рисунок 1.9. Представление ЛДДС в каноническом управляемом базисе
αˆ1
αˆ 2
αˆ n −1
αˆ n
Рисунок 1.10. Представление ЛДДС в каноническом наблюдаемом базисе
1) в каноническом управляемом базисе (рисунок 1.9) ⎡0 ⎢1 A = ⎢0 ⎢ ⎢ ⎣⎢0
где
0 0 0 α~n ⎤ 0 0 0 α~n−1 ⎥ ⎡ O(Tn−1 ) ~ ⎥ 1 0 0 α n−2 = ⎢ ⎥ I Λ Λ ⎥ ⎣ ( n−1 )×( n−1 ) 0 Λ 1 α~1 ⎦⎥
⎤ α~n×1 ⎥ , ⎦
(1.58)
α~n×1 = col {α~i : i = 1,n},
87
⎡ βn ⎢ B = ⎢ β n−1 ⎢ β ⎣ 1
+ β 0 α~n ⎤ + β 0 α~n−1 ⎥ ,C = O T ( n −1 ) 1 , H = [ β 0 ] , ⎥ Λ + β 0 α~1 ⎥⎦
[
]
(1.59)
2) в каноническом наблюдаемом базисе (рисунок 1.10)
где
0⎤ ⎡0 1 0 ⎡ ⎤ ⎢0 0 1 0 ⎥ ⎢O( n−1 ) I ( n−1 )×( n−1 ) ⎥ A=⎢0 0 0 Λ 0 ⎥=⎢ ⎥, ⎢0 0 0 1⎥ ⎢ ⎥ ⎥ ⎢ ⎢ ˆ α n×1 ⎦⎥ ⎢⎣αˆ 1 αˆ 2 αˆ 3 Λ αˆ n ⎥⎦ ⎣ = col αˆ : i = 1,n ,
αˆ n×1
{
(1.60)
}
i
⎡O ⎤ B = ⎢ ( n−1 ) ⎥ ,C = [β n + β 0 αˆ n β n−1 + β 0 αˆ n−1 Κ β 1 + β 0 αˆ 1 ], ⎣ 1 ⎦ (1.61) H = [ β0 ]
Пример 1.3 (Пр1.3)
Рисунок 1.11
88
x7 (k )
x7 (k + 1)
x6 (k ) x6 (k + 1)
x5 (k + 1)
x5 (k )
x4 (k ) x4 (k + 1)
x3 (k )
x2 (k ) x3 (k + 1)
x2 (k + 1)
x1 (k + 1)
x1 (k )
Сконструировать ( A, B ,C , H ) -представление ЛДДС по ее передаточной функции Φ ( d ) , обеспечивающую размещение в регистре хранения информационных разрядов кода Хэмминга (7,4). 1. Выполним алгоритм 1.1, в результате чего получим передаточную функцию ЛДДС 1+ d3 + d4 + d5 Φ(d)= . 1 + d7 и структурные представления, приведенные на рисунке 1.3 и рисунке 1.4. 2. Разметим соответствующим образом структурные реализации (см. рисунок 1.11, рисунок 1.12).
x1 (k + 1)
x1 (k )
x2 (k )
x2 (k + 1)
x3 (k + 1)
x3 (k )
x4 (k )
x5 (k ) x4 (k + 1)
x5 (k + 1)
x6 (k + 1)
x6 (k )
x7 (k )
x7 (k + 1)
Рисунок 1.12
3. По размеченной структурной реализации передаточной функции Φ ( d ) сконструируем матрицы A, B ,C и H векторно-матричного представления линейной ДДС в форме (1.23), (1.24) 1) в каноническом управляемом базисе (рисунок 1.11) ⎡O2 ⎤ ⎡ O6T 1 ⎤ , B = ⎢⎢ I 3 ⎥⎥ ,C = O6T 1 , H = [ 1 ] A=⎢ ⎥ O 6⎦ ⎣ I 6×6 ⎢⎣O2 ⎥⎦
[
]
2) в каноническом наблюдаемом базисе (рисунок 1.12)
[
]
⎡O I ⎤ ⎡ ⎤ A = ⎢ 6 6×6 ⎥ , B = ⎢O6 ⎥ ,C = O2 I 3 O2 , H = [ 1 ] ■ ⎣1⎦ ⎣ 1 O6×1 ⎦
89
1.4. Проблема редуцирования размерности модельных представлений линейных двоичных динамических систем
В параграфах 1.1 и 1.2 рассмотрены возможности модельных представлений линейных двоичных динамических систем в классе отношений «вход-выход» в форме передаточных функций (матриц) и рекуррентного уравнения ВВ n -го порядка, а также в классе отношений «вход-состояние-выход» в форме векторно-матричных представлений правил перехода и выхода рекуррентной и суммарной версий. Однако в одном из вариантов модельных представлений ЛДДС пока не затронута проблема их минимального модельного представления. Тем не менее, проблема построения минимальной схемотехнической реализации линейных ДДС ставит задачу редуцирования их первичных модельных представлений. Очевидно, эта задача может быть решена двумя способами. Первый способ опирается на формализм модулярных многочленов, использующий фактор делимости модулярных многочленов числителя и знаменателя передаточной функции [15, 38, 55]. Второй способ использует свойства пространств управляемости и наблюдаемости, конструируемых на матричных компонентах модельного ВСВпредставления линейных двоичных динамических систем [38].
1.4.1 Редуцирование линейных двоичных динамических систем на основе делимости модулярных многочлена числителя и знаменателя передаточной функции Рассмотрение данного способа редуцирования начнем с исследования некоторых основных свойств квадратных ( n × n ) -матриц, часть из которых носит общесистемный характер, то есть выполняется для матрицы над любым полем, а часть имеет силу над простым полем Галуа GF ( p ) при p = 2 . Заявленные свойства зададим с помощью утверждений. Утверждение 1.14 (У1.14). (Теорема Гамильтона-Кэли). Произвольная квадратная ( n × n ) -матрица A над простым полем Галуа GF ( p ) при p = 2 обнуляет свой характеристический модулярный многочлен (ХММ) так, что выполняется равенство
det ( λI + A)
λ=A
= a0 A m + a1 A m−1 + Κ + am−1 A + am I = O □ (1.62)
Доказательство утверждения строится по той же схеме, что и над бесконечным полем F = R действительных чисел [12, 13]. ■
90
Утверждение 1.15 (У1.15). Если характеристический полином матрицы A D( λ ) = det ( λ I + A) степени n входит в разложение дву-
⎧ ⎫ λµ j + 1 = 0 ⎬ , то матрица A члена λµ + 1 , где µ = min ⎨ µ j : rest j det ( λ I + A) ⎩ ⎭ принадлежит показателю µ в том смысле, что Aµ = I . □ (1.63) Доказательство утверждения строится на факте делимости без остатка двучлена λµ + 1 на ХММ D( λ ) = det ( λ I + A) , который позволяет записать λµ + 1 = Q( λ ) det ( λ I + A) = Q( λ ) D( λ ) (1.64) Выражение (1.64) делает справедливым соотношение A µ + I = Q( A) D( A) = Q( A)det ( λ I + A) λ = A , (1.65)
в котором в силу У1.14 член det ( λ I + A) λ = A оказывается равным нулю, что доказывает справедливость У1.15. ■ Приведем еще одно утверждение, положения которого будут востребованы при решении задачи редуцирования модельного представления линейной ДДС. Утверждение 1.16 (У1.16). Любой модулярный многочлен f ( x ) над простым полем Галуа GF ( p ) при p = 2 с ненулевым свободным членом, то есть неделящийся без остатка на x , является при некотором целом числе µ делителем двучлена 1 + x µ , при этом минимальное значение µ называется показателем, которому принадлежит f ( x ) . □ Доказательство утверждения можно найти в [15]. ■ Нетрудно видеть, что объединение положений У1.15 и У1.16 позволяет сформулировать утверждение, использование которого дает возможность сформировать простую технологию оценки показателя µ , которому принадлежит ММ f ( x ) . Утверждение 1.17 (У1.17). Если сконструировать некоторую квадратную ( n × n ) матрицу P , где n = deg f ( x ) в сопровождающей f ( x ) форме так, что (1.66) f ( λ ) = det ( λ I + P ) = D ( λ ) , то оценка
{
}
(1.67) µ = arg P µ = I для случая минимального значения µ представляет собой показатель,
которому принадлежит ММ f ( x ) . □
91
Доказательство утверждения строится на непосредственном вы-
числении µ , при котором выполняется равенство P µ = I . ■ Вернемся к решению проблемы редуцируемости передаточной функции Φ ( d ) = M ( d ) / D( d ) на основе сокращаемости ММ числителя M ( d ) и знаменателя D( d ) . Математической основой возможной сокращаемости модулярных многочленов над простым полем Галуа является основная теорема арифметики [30] о представлении отличного от нуля целого числа произведением степеней простых чисел. Над конечным полем GF ( p ) при p = 2 свойствами простого числа обладают неприводимые многочлены. В этой связи весьма важным является следующее утверждение. Утверждение 1.18 (У1.18). Если степень µ бинома x µ + 1 представима в форме µ = 2 n − 1, (1.68) где µ и n положительные целые числа, то в разложении бинома
x µ + 1 входят все без исключения неприводимые ММ, степени которых, начиная с единицы, являются делителями числа n . □ Доказательство утверждения можно найти в [15]. ■ Утверждение 1.18 является эффективным инструментом при редуцировании передаточных функций Φ ( d ) линейных ДДС, решающих задачи кодопреобразования, в результате которого на выходе ДДС формируется периодическая последовательность y ( k ) с периодом T . В этом случае в знаменателе передаточной функции Φ ( d ) появляется бином d T + 1 , который в силу У1.18 представим произведением неприводимых ММ, что порождает возможность редуцирования Φ ( d ) . Приведем еще одно утверждение, положения которого могут быть так же полезны в решении задачи редуцирования модельного представления ЛДДС. Утверждение 1.19 (У1.19). Если степень µ бинома x µ + 1 представима в форме µ = 2ν , где ν – целое положительное число, то би-
ном x µ + 1 над простым полем Галуа GF ( 2 ) при p = 2 может быть записан в форме
(
)
2
x µ + 1 = x 2ν + 1 = x v + 1 . □ (1.69) Доказательство утверждения сводится к непосредственному вычислению правой части (1.69) с учетом специфики модулярной арифметики по mod p = mod 2 . ■ Как следствие из У1.19 становится справедливым положение следующего утверждения.
92
Утверждение 1.20 (У1.20). Если степень µ бинома x µ + 1 пред-
ставима в форме µ = 2ν , где ν – целое положительное число, то этот бином над простым полем Галуа GF ( 2 ) при p = 2 может быть записан в виде ν
(
ν −1
)(
ν −2
)
(
)
xµ + 1 = x2 + 1 = x2 + 1 x2 + 1 Κ x2 + 1 . □ (1.70) Доказательство утверждения строится на использовании У1.19, позволяющее записать 2ν 2ν ⎛ ⎞ ⎛ ⎞ ν ν −1 ν −1 x µ + 1 = x 2 + 1 = ⎜ x 2 + 1⎟ ⎜ x 2 + 1⎟ = x 2 + 1 x 2 + 1 .■ (1.71) ⎟ ⎜ ⎟⎜ ⎠ ⎝ ⎠⎝ Пример 1.4 (Пр1.4)
(
)
(
)(
)
В качестве примера рассматривается линейная ДДС, преобразующая входную импульсивную последовательность u ( k ) = δ ( k ) в периодическую последовательность y ( k ) : 11110000 11110000 Κ периода T = 8. Следуя А1.4 получим передаточную функцию проектируемой ЛДДС в силу определения Y (d) 1+ d + d 2 + d3 M (d) Φ(d)= = = U (d) 1+ d8 D( d ) Задачу редуцирования размерности Φ ( d ) решим с использованием делимости модулярных многочленов, то есть полинома наибольшего
(
)
общего делителя M ( d ) = 1 + d + d 2 + d 3 и D ( d ) = 1 + d 8 = 1 + d 4 . С этой целью проверим: не принадлежит ли M ( d ) показателю µ = 4 . Следуя У1.17, сформируем матрицу P сопровождающую модулярный многочлен M ( d ) = 1 + d + d 2 + d 3 так, что 2
⎡0 1 0 ⎤ P = ⎢0 0 1⎥ . ⎢⎣1 1 1⎥⎦ с целью решения задачи
µ = arg { P µ = I } , которая в своем решении дает µ = 4 . dµ +1= d4 +1 в форме Представим полином d 4 + 1 = ( d + 1) M ( d ) и осуществим редуцирование передаточной функции Φ ( d ) с помощью цепочки равенств
Φ(d)=
M(d) = D( d )
M(d)
(1 + d )(1 + d ) 4
4
=
M(d)
(1 + d ) M ( d )( 1 + d 4 )
=
1 . 1+ d + d4 + d5
93
Сконструируем структурное представление редуцированной версии проектируемой ЛДДС, которое приведено на рисунке 1.13.
Рисунок 1.13
1.4.2 Редуцирование линейных двоичных динамических систем на основе анализа структуры пространств управляемости и наблюдаемости ЛДДС Рассмотрим векторно-матричное ВСВ представление ЛДДС (1.72) x ( k + 1) = A x ( k ) + B u ( k ) , x ( 0 ); y ( k ) = C x ( k ) + H u ( k ) . В предыдущем разделе исследованы вопросы управляемости и наблюдаемости ЛДДС, записанной в форме (1.23), (1.24) или (1.72) за n тактов ее функционирования, где n = dim x . В случае неполной управляемости и наблюдаемости структура пространства ЛДДС (1.72) разбивается на четыре части, так что вектор состояния линейной ДДС представим в форме
[
]
T
T T x = xTун xTунн xнун xнунн ,
(1.73)
где x ун – управляемая и наблюдаемая часть вектора состояния x ;
x унн – управляемая, но ненаблюдаемая часть x ; xнун – неуправляемая, но наблюдаемая часть x ; xнунн – неуправляемая и ненаблюдаемая часть вектора x . ЛДДС (1.72) с вектором состояния (1.73) структурно представим схемой (рисунок 1.14).
94
S ун
S унн
S нун
S нунн
Рисунок 1.14. Структурная схема ЛДДС (1.72) с вектором состояния (1.73)
Структурное представление, приведенное на рисунке 1.14, системы, характеризующееся четырьмя перечисленными компонентами вектора состояния, справедливо для систем над бесконечными и конечными полями предложено Р. Калманом [29] и носит название «каноническое представление Р. Калмана». Из приведенного представления видно, что передаточная функция Φ ( d ) , как модель «вход-выход» описывает только полностью управляемую и полностью наблюдаемую часть ЛДДС. При вычислении передаточной функции ЛДДС (1.72) в силу соотношения Φ ( d ) = C d −1 I + A −1 B + H (1.74) должно происходить сокращение сомножителей числителя и знаменателя ММ, которые задействованы для описания неуправляемых и ненаблюдаемых частей ЛДДС. Таким образом размерность передаточной функции ЛДДС в целом, которая совпадает с передаточной функцией ее полностью управляемой и полностью наблюдаемой части, в ее минимизированной после сокращения сомножителей форме определится размерностью пересечения пространства управляемости пары матриц ( A, B ) и пространства наблюдаемости пары матриц ( A,C ) . Для вычисления размерности этого пересечения может быть использован следующий алгоритм.
(
)
95
Алгоритм 1.3 (А1.3) 4. Построить матрицу W y управляемости пары матриц дели ЛДДС (1.71) в форме
[
( A, B )
мо-
]
(1.75) W y = B A B A 2 B Λ A n−1 B . 5. Составить матрицу W H наблюдаемости пары матриц ( A,C ) модели ЛДДС (1.72)
[
( CA) T
WH = C T
( CA )
2 T
6. Вычислить размерности пространств
( CA ) ] . T n-1 T
(1.76)
L {W y } управляемости
{W } с помощью соотношений = dim L {W }= rank W ; n = dim L {W }= rank W
наблюдаемости nу
Λ
и
T
L
н
T
y
y
Н
н
н
(1.77)
{
}
7. Вычислить размерность n у∪Н объединения L {W y } ∪ L W H пространств управляемости и наблюдаемости ЛДДС в силу выT ражения n = rank W W . у∪Н
[
y
H
T
]
8. Вычислить размерность n у∩Н пересечения пространств управ-
L { W y } ∩ L {WH T } T = dim {L {W y } ∩ L {W H }}= n у + nН − n у∪Н
ляемости и наблюдаемости
n у∩Н ■ (1.78) Практика построения редуцированных модельных представлений линейных ДДС показывает, что наилучший результат решения задачи редуцирования имеет место при комбинировании двух рассмотренных подходов. Это комбинирование позволило сконструировать следующий алгоритм синтеза линейных ДДС редуцированной размерности. Алгоритм 1.4 (А1.4)
1. Выполнить А1.1, получив передаточную функцию ЛДДС в форM (d) . ме Φ ( d ) = D( d) 2. Выполнить А1.2, получив матричные компоненты ( A, B ,C , H ) представления ВСВ (1.72). 3. Выполнить А1.3, получив оценку n у∩Н размерности пересечения пространств управляемости и наблюдаемости.
96
4. Проанализировать полученное значение n у∩Н , при этом если n у∩Н = n , то перейти к выполнению п.9 алгоритма, иначе – к выполнению п.5. 5. Оценить порядок n p = n у∩Н редуцированной модели ЛДДС и степень ее редуцируемости n~ = n − n . p
у∩Н
6. На множестве ММ степени n~p найти такой, который входит в разложение полинома числителя M ( d ) и знаменателя D ( d ) передаточной функции Φ ( d ) синтезируемой ЛДДС, с целью конструирования Φ p ( d ) передаточной функции ЛДДС размерности
np . 7. Построить структурное представление передаточной функции Φ p ( d ) в одном из канонических базисов и разметить его пере-
менными xi ( k ) и xi ( k + 1) . 8. Построить векторно-матричное ВСВ-представление редуцированной ЛДДС x p ( k + 1) = A p x p ( k ) + B p u ( k ) , x p ( 0 ); y( k) = C p xp ( k) + H u( k)
(1.79) 9. Построить техническую реализацию редуцированной ЛДДС в схемотехнической версии в соответствии со структурным представлением Φ p ( d ) или в программной версии в соответствии с (1.79). ■ Пример 1.4 (продолжение)
В продолжение примера 1.4 решим задачу редуцирования с использованием оценки n у∩Н размерности пересечения пространств управ-
ляемости и наблюдаемости исходной ( A, B ,C , H ) модели синтезируемой ЛДДС. Имеем передаточную функцию устройства Y (d) 1+ d + d2 + d3 M (d) Φ(d)= = = . U (d) 1+ d8 D( d ) Выполняем А1.4 с пункта 2. 2. Строим структурное представление передаточной функции устройства и размечаем ее. В результате указанных действий получаем структурную схему, представленную на рисунке 1.15.
97
Рисунок 1.15
По отмеченной схеме рисунок 1.15 конструируем матрицы A, B ,C , H : ⎡O7T×1 I 1×1 ⎤ A=⎢ ⎥, I O 7×1 ⎦ ⎣ 7×7
⎡ ⎤ B = ⎢O4×1 ⎥ , C = O7T×1 I 1×1 , ⎣ I 4×1 ⎦ H = [ 1]. 3. Выполняем А1.3 с использованием пакета Matlab 6.5. В результате находим n p = n у∩Н = 5 . 4. Выполняем п.п.4,5 и находим, что величина уменьшения размерности n p оказывается равной трем, то есть n~p = 3 .
[
]
5. Находим общий делитель M ( d ) = 1 + d + d 2 + d 3 , что приводит к редуцированной передаточной функции ЛДДС вида
Φ p ( d ) = (1 + d + d 4 + d 5 )
−1
6. Строим структурную схему полученной передаточной функции и осуществляем ее разметку (рисунок 1.13). 7. Строим по размеченной структурной схеме (рисунок 1.13) векторно-матричное ВСВ-представление (1.79) редуцированной ЛДДС, матрицы которой принимают вид ⎡ I 2×1 ⎤ ⎡ T I 2×1 ⎤ O × 5 1 Ap = ⎢ O2×1 ⎥ , Bp = ⎢O 2×1 ⎥ , C p = O4T×1 I 1×1 , H = [ I 1×1 ]. ■ ⎢ ⎥ ⎢ I 5×5 I ⎥ 1×1 ⎦ ⎣ ⎣ I 1×1 ⎦
[
98
]
1.5. Концепция подобия в теории линейных двоичных динамических систем
Концепция подобия в теории динамических систем над бесконечными полями получила в последнее время заметное распространение при решении широкого круга задач управления [5, 35, 40, 48, 53]. В рамках векторно-матричного формализма метода пространства состояний в непараметризованной временем форме концепция подобия сводится к выполнению соотношения η= Mχ . (1.80) В параметризованном временем виде соотношение (1.80) достигается в асимптотике так, что η (τ ) = M χ (τ ) − θ (τ ) , (1.81) при этом lim θ ( τ ) = 0 ∀χ ( 0 ),η ( 0 ) . (1.82) τ →∞
В (1.80) – (1.82) χ – вектор состояния некоторого эталонного динамического процесса, η – вектор состояния конструируемой динамической среды, dimη = m , dim χ = λ, M – ( m × λ ) – матрица в общем случае особого [12] преобразования подобия; τ – принимает смысл непрерывного времени t ( τ = t ) в непрерывных по времени процессах и смысл дискретного времени k ( τ = k ) , выраженного в числе интервалов дискретности длительности ∆ t так, что t = k ∆ t , в дискретных по времени процессах, θ – вектор невязки выполнения векторно-матричного подобия, задаваемого в форме η ( τ ) = M χ ( τ ); ∀χ ( 0 ),η ( 0 ) , (1.83) Если на асимптотически сходящемся процессе (1.82) можно указать τ ∗ такое, что при τ ≥ τ ∗ соотношение (1.83) выполняется «почти точно», то τ ∗ следует называть временем установления векторно-матричного подобия (1.83). В технической среде достижение векторно-матричного подобия (1.83), обеспечиваемого путем выполнения условия (1.82), реализуется в виде связей по вектору состояния η и части компонентов вектора состояния χ так, что математическая модель по вектору невязки θ представляет собой автономную систему, которая для непрерывного времени имеет вид θ&( t ) = Aθ θ ( t ); θ ( 0 ) = M χ ( τ ) − η ( 0 ) , (1.84) и θ ( k + 1) = Aθ θ ( k ); θ ( 0 ) = M χ ( τ ) − η ( 0 ) , (1.85)
99
для дискретного времени. Указанные связи должны быть выбраны так, чтобы процессы в (1.84) и (1.85) θ ( t ) = e Aθ tθ ( 0 ); θ ( k ) = Aθ k θ ( 0 ) , (1.86)
сходились за назначенное время τ ∗ . Для процессов с непрерывным временем матрица Aθ должна быть гурвицевой, для процессов с дискретным временем матрица Aθ должна иметь собственные значения в единичном круге [5, 48]. К схеме (1.81), (1.84), (1.85) сводится задача регулирования [31] в форме модального управления [48, 53], задача слежения за конечномерным экзогенным воздействием [5, 48, 31, 52], задача динамического наблюдения [5, 35, 48]. К этой же схеме сводятся задачи адаптивного управления [40]. Для случая единичной матрицы преобразования подобия ( M = I ) , когда отношение подобия превращается в отношение тождественного равенства, разработаны методы решения обратных задач динамики [34]. Следует ожидать, что перенос концепции подобия на динамические системы над конечными полями, частным случаем которых являются двоичные динамические системы, заметно обогатит алгоритмическое обеспечение синтеза как линейных, так и нелинейных ДДС (конечных автоматов). Следует заметить при этом, что обеспечение условия вида (1.82) опирается на особые свойства матриц над конечным полем Галуа GF ( p ) при p = 2 [37]. Часть этих свойств представлены в разделе 1.3.1. Этими свойствами являются: свойство обнуления произвольной квадратной m × m -матрицей с элементами из конечного поля Галуа GF ( p ) при p = 2 своего характеристического полинома (Теорема Гамильтона-Кэли над конечным полем Галуа GF ( p ) при p = 2 ) в форме (1.62); свойство принадлежности квадратной m × m -матрицы с элементами из конечного поля Галуа GF ( 2 ) показателю µ в форме (1.63). Для целей дальнейших исследований введем в рассмотрение еще одно свойство матриц над конечным полем Галуа GF ( 2 ) . Свойство 1.1 (СВ1.1). (Нильпотентность индекса ν матрицы A). Квадратная (m × m ) -матрица A с элементами из GF ( 2 ) обладает свойством нильпотентности индекса ν, если выполняется условие (1.87) Aν = O . □ Утверждение 1.21 (У1.21). Для того чтобы ( m × m ) -матрица A с элементами из конечного поля Галуа GF ( 2 ) обладала свойством СВ1.1 достаточно, чтобы матрица A обладала нулевым корнем кратности ν, при этом ее каноническое представление имело вид
100
I ⎡O ⎤ (1.88) Aν = ⎢ (ν −1)×(m−ν +1) (ν −1)×(ν −1) ⎥ . □ O(m−ν +1)×m ⎣ ⎦ Доказательство утверждения строится на свойстве матричной функции от матрицы сохранять отношение подобия. Действительно, если существует ( m × m ) - неособая матрица М преобразования подобия такая, что выполняется матричное соотношение A = MAν M -1 , (1.89) тогда по указанному свойству выполняется и соотношение f ( A) = M f ( Aν ) M -1 . (1.90)
Если в качестве f ( A) выбрана функция от матрицы f ( A) = Aν , то соотношение (1.90) примет вид (1.91) Aλ = MAνλ M -1 , но Aνλ при λ = ν в силу представления (1.88) обнуляется:
Aνν = O , что приводит к выполнению (1.87) в силу (1.91). ■
(1.92)
1.5.1 Концепция подобия в задаче динамического наблюдения состояния произвольной линейной ДДС Пусть линейная ДДС, состояние которой подлежит наблюдению, имеет векторно-матричное описание χ ( k + 1) = A χ ( k ) + B u ( k ) , χ ( 0 ) = χ 0 , ξ ( k ) = C χ ( k ) , (1.93) где χ , u , ξ – соответственно n –мерный вектор состояния, r –мерный вектор входной последовательности и λ –мерный вектор выходной последовательности, матрицы A , B ,C согласованы по размерности с векторами χ , u и ξ . Элементы векторов и матриц принадлежат двоичному простому полю Галуа GF ( 2 ) . Двоичное динамическое наблюдающее устройство (ДНУ), использующее всю доступную для непосредственного измерения информацию об ДДС (1.93) в виде входной последовательности u ( k ) и выходной – y ( k ) , строится в форме z ( k + 1) = Γ z ( k ) + Lξ ( k ) + G u ( k ) , z ( 0 ) = z 0 , (1.94) где z – m -вектор состояния ДНУ, матрица Γ определяет динамику процесса наблюдения в форме (1.82), а пара матриц ( L,G ) обладает свойствами (1.95) L = arg { contr ( Γ , L ) }, G = arg { contr ( Γ,G ) }, где contr { ( ∗),( • )} – предикат наличия полной управляемости пары матриц { ( ∗),( • )}. 101
Задачу наблюдения вектора χ состояния системы (1.93) в среде ДНУ (1.94) сформулируем в форме (1.81), записываемой в виде (1.96) z ( k ) = T χ ( k ) + θ ( k ), ∀ k , где T – матрица преобразования подобия (в общем случае – особого). Уравнение (1.96) позволяет построить модель процесса наблюдения по вектору невязки наблюдения, которое принимает вид (1.97) θ ( k + 1) = T χ ( k + 1) + z ( k + 1) . Структурная модель процесса двоичного динамического наблюдения в форме (1.97) в соответствии с моделями (1.93) и (1.94) представлена на рисунке 1.16.
χ ( 0) u ( k)
χ ( k + 1) = A χ ( k ) + B u ( k ) , ξ ( k ) = C χ ( k ), χ ( 0 ) = χ 0
ξ( k)
z ( k + 1) = Γ z ( k ) + L ξ ( k ) + G u ( k ) , z ( 0) = z 0 Рисунок 1.16. Модель процесса двоичного динамического наблюдения состояния произвольной ЛДДС
Сформулируем теперь утверждение. Утверждение 1.22 (У1.22). Если матрицы T, L, G удовлетворяют матричным соотношениям Γ T +T A = LC , G =T B , (1.98)
то процесс по вектору невязки наблюдения (ВНН) θ ( k ) описывается рекуррентным векторно-матричным уравнением (1.99) θ ( k + 1) = Γ θ ( k ) , θ ( 0 ) = Tχ ( 0 ) + z ( 0 ) . □ Доказательство утверждения строится на подстановке в (1.99) векторно-матричных соотношений (1.93) и (1.94), в результате чего получим θ ( k + 1) = Γ θ ( k ) + (T A + Γ T + L C ) χ ( k ) + (T B + G )υ ( k ) . (1.100) Если в (1.100) подставить (1.98), то приходим к (1.99). ■
102
Модель процесса двоичного динамического наблюдения в форме процесса по ВНН (1.99) позволяет сформулировать требования к матричным компонентам наблюдаемой ДДС (1.93) и ДНУ (1.94), которые позволят обеспечить все возможные задачи наблюдения. Так если ставится задача наблюдения вектора χ ( k ) текущего состояния ДДС (1.93), то следует воспользоваться явным (показательным) решением (1.99), записываемым в форме θ ( k ) = Γ k θ ( 0 ) ; θ ( 0 ) = Tχ ( 0 ) + z ( 0 ) . (1.101) Следует заметить, что при нормальном использовании ДНУ его состояние при запуске обнуляется так, что z ( 0 ) = 0 . С учетом этого обстоятельства (1.101) принимает вид (1.102) θ ( k ) = Γ k T χ ( 0 ). В свою очередь подстановка (1.102) в (1.96) дает (1.103) z ( k ) = T χ ( k ) + Γ k θ ( 0 ). Потребуем от матрицы Γ состояния ДНУ обладания свойством нильпотентности с индексом ν , тогда при k ≥ ν устанавливается равенство (1.104) z ( k ) = T χ ( k ), k ≥ ν . Таким образом, вектор z ( k ) состояния ДНУ с точностью до матрицы преобразования подобия T задает текущее состояние вектора χ ( k ) наблюдаемой ДДС (1.93). Заметим, что подобие (1.104) можно преобразовать в тождество, если в матричное уравнение Сильвестра (1.98) положить T = I , где I – единичная матрица, и решить уравнение (1.100) относительно матрицы L . Поставим теперь задачу наблюдения вектора χ ( 0 ) начального состояния наблюдаемой ДДС (1.93). Для этого потребуем, чтобы матрица Γ принадлежала показателю µ так, что Γ µ = I . В этом случае при k = µ соотношение (1.102) примет вид (1.105) z ( µ ) = T χ ( µ ) +θ ( 0 ) = T χ ( µ ) + T χ ( 0 ) . Дополним ситуацию еще одним условием, для чего предположим, что наблюдаемая ДДС (1.93) представляет собой регистр сдвига, функционирующий при u ( k ) ≡ 0 и χ ( 0 ) ≠ 0 . Если учесть, что показатель µ удовлетворяет неравенствам n ≤ µ ≤ 2n − 1 , (1.106) то к моменту k = µ (1.105) примет вид (1.107) z ( µ ) = T χ ( 0). Таким образом (1.107) обнаруживает результат, который не достигается над бесконечными полями. Если наблюдаемая ДДС (1.93) представляет собой регистр сдвига размерности n с нулевой входной по-
103
следовательностью u ( k ) ≡ 0 и ненулевым начальным состоянием χ ( 0 ) , а двоичное наблюдающее устройство (1.94) таково, что его матрица Γ состояния принадлежит показателю µ , то в силу выполнения (1.107) состояние z ( k ) ДНУ при k = µ является синдромом состояния χ ( 0 ). Выделим еще одну постановочную версию задачи наблюдения состояния ДДС (1.93), предположив, что входная последовательность u ( k ) формируется с помощью конечномерной автономной ДДС. (1.108) ξ ( k + 1) = R ξ ( k ); ξ ( 0 ) = ξ 0 ; υ ( k ) = S ξ ( k ) . Соотношения (1.108) задают источник входной последовательности (ИВП) u ( k ) . Объединим системные компоненты – наблюдаемая ДДС (1.93), ДНУ (1.94) и ИВП (1.108), – процесса наблюдения, охарактеризовав
[
]
T
его агрегированным вектором состояния χ = z T , χ T ,ξ T . Тогда динамика системы с агрегированным вектором χ описывается автономной ДДС
[
]
χ ( k + 1) = A χ ( k ), χ ( 0 ) = z T ( 0 ), χ T ( 0 ), ξ T ( 0 ) , где матрица A имеет представление ⎡Γ LC G S ⎤ A = ⎢0 A B S⎥ . ⎢0 0 R ⎥⎦ ⎣ ξ ( 0) ξ ( k + 1) = R ξ ( k ) , u ( k ) = S ξ ( k ), ξ ( 0) = ξ 0
T
(1.109)
(1.110)
χ ( 0) u ( k)
χ ( k + 1) = A χ ( k ) + B u ( k ) , ξ ( k ) = C χ ( k ), χ ( 0 ) = χ 0
ξ( k)
z ( k + 1) = Γ z ( k ) + L ξ ( k ) + G u ( k ) , z ( 0) = z 0
Рисунок 1.17. Структурное представление модели (1.109) процесса двоичного динамического наблюдения
Агрегированная модель (1.109) с матричным компонентом A (1.110) процесса двоичного динамического наблюдения представлена на рисунке 1.17.
104
Для системы (1.109) явное решение χ ( k ) в показательной форме принимает вид (1.111) χ ( k ) = A k χ ( 0). С целью покомпонентного вычисления (1.111) сформулируем утверждение. Утверждение 1.23 (У1.23). Показательная матричная функция A k матрицы A вида (1.110) представима в форме ⎡ Γ k Γ k T + T Α k T πR k + Α k π ⎤ πR k +k Α k π ⎥⎥ , Αк = ⎢ 0 Αk (1.112) ⎢ 0 R ⎢⎣ 0 ⎥⎦ где матрица Τ удовлетворяет матричному уравнению Сильвестра (1.98), а матрица π – матричному уравнению Сильвестра π R + Aπ = B S . □ (1.113) Доказательство утверждения осуществляется на замене матричных членов LC и B S в представлении (1.108) матрицы A , являющихся правыми частями уравнений Сильвестра (1.98) и (1.113), на их левые части, а так же подстановке второго матричного соотношения (1.98) в (1.108) так, что становится справедливым матричное равенство G S = TB S . (1.114) После проведенной модернизации представления (1.108) матрицы A осуществляется конструирование базы индукции степеней матрицы A , что приводит к (1.112). ■ Если теперь в агрегированном векторе χ выделить векторный компонент z , представляющий собой вектор состояния ДНУ, то в силу (1.111) и (1.112) для него можно записать z ( k ) = Γ k z ( 0 ) + Γ k T + T A k χ ( 0 ) + T π R k + A k π ξ ( 0 ) . (1.115) Выражение (1.115) обнаруживает все богатство решений задач двоичного динамического наблюдения, рассмотренных выше на основе частных композиций начальных состояний и свойств матричных компонентов.
(
(
)
)
(
)
Пример 1.5 (Пр1.5) Пусть требуется синтезировать ДНУ для наблюдения вектора состояния ДДС, A, B ,C , H -описание которой имеют вид ⎡0 1 0 ⎤ ⎡0 ⎤ A = ⎢0 0 1⎥ , B = ⎢0 ⎥ , C = [ 1 1 0 ], H = [ 0]. ⎢⎣1 1 0 ⎥⎦ ⎢⎣1⎥⎦ С целью решения поставленной задачи в соответствии с (1.103) и (1.104) выберем в качестве модели ДНУ регистр сдвига третьего порядка, матрица Γ ВМ описания которого будет иметь следующий вид
105
⎡0 1 0 ⎤ Γ = ⎢0 0 1⎥ . ⎢⎣0 0 0 ⎥⎦ Решим поставленную задачу в форме z ( k ) = χ ( k ), k ≥ ν , для чего в силу (1.104) выберем матрицу T в форме T = I . Решение уравнения Сильвестра (1.98) относительно матрицы L и вычисление матрицы G дает T T L = [ 0 0 1] , G = [ 0 0 1] . В силу (1.104) и того, что матрица Γ имеет индекс нильпотентности, равный трем, то, очевидно, что начиная с момента k ≥ 3 вектор состояния z ДНУ должен будет совпасть с вектором состояния χ исходной ДДС. Покажем это, полагая, что входная последовательность u ( k ) ДДС на первых семи тактах имеет вид u ( k ): 1001010 , а начальное со-
стояние χ ( 0 ) ДДС определяется вектором χ ( 0 ) = [0 1 1] . T
Таблица 1.1
k u(k)
0 0
1 1
2 0
3 0
4 1
5 0
6 1
7 0
χT ( k)
011
110
100
001
011
111
111
110
zT ( k )
000
000
000
001
011
111
111
110
z3 (k )
χ1 (k )
χ 2 (k ) χ 1 (k + 1)
χ 3 (k + 1)
u ( k)
χ 2 (k + 1)
χ 3 (k )
ξ ( k)
z 2 (k )
z1 (k )
Рисунок 1.18. Структурное представление процесса двоичного динамического наблюдения
106
Из таблицы 1.1 видно, что начиная с третьего такта, то есть с выполнением условия k = 3 , вектор состояния z синтезированного ДНУ повторяет в форме z ( k ) = χ ( k ) состояние χ ( 0 ) наблюдаемой ДДС.С использованием полученных результатов структурно-функциональная схема процесса двоичного динамического наблюдения вектора состояния заданной ДДС примет вид, как показано на рисунке 1.18. Из таблицы 1.1 видно, что начиная с третьего такта, то есть с выполнением условия k = 3 , вектор состояния z синтезированного ДНУ повторяет в форме z ( k ) = χ ( k ) состояние χ ( 0 ) наблюдаемой ДДС.С использованием полученных результатов структурно-функциональная схема процесса двоичного динамического наблюдения вектора состояния заданной ДДС примет вид, как показано на рисунке 1.18.
1.5.2 Концепция подобия в задаче декодирования систематических помехозащищенных кодов Задачу декодирования систематических помехозащищенных кодов, подвергшихся воздействию на функциональном и модельном уровнях, зададим следующим образом. Кодирующее устройство (КУ) на выходе которого формируется ( n, k ) -помехозащищенный код y , выводимый в канал связи в виде двоичной кодовой последовательности y ( k ) , старшим разрядом вперед, представляется n -разрядным регистром сдвига, начальное состояние которого χ ( 0 ) представляет собой передаваемую помехозащищенную кодовую посылку. Векторно-матричное модельное представление КУ имеет вид (1.116) x ( k + 1) = F x ( k ); x ( 0 ); y ( k ) = P x ( k ) , где F – матрица размерности ( n × n ) является нильпотентной с индексом нильпотентности ν равным n так, что ν = n . Формирователь импульсной помехи ξ , которая в канале связи (КС) искажает передаваемую кодовую посылку y , также представим n -разрядным регистром сдвига, который будем именовать регистром канала связи (РКС). РКС характеризуется нулевой входной последовательностью и вектором начального состояния χ ( 0 ) , который представляет собой n -разрядный вектор помехи ξ , выводимый в КС в виде последовательности ξ ( k ) старшим разрядом вперед. Векторно-матричное описание РКС имеет вид (1.117) χ ( k + 1) = A χ ( k ); χ ( 0 ); ξ ( k ) = C χ ( k ) .
107
Матрица A совпадает с матрицей F и так же является нильпотентной с индексом нильпотентности ν = n . Процесс искажения кодовой последовательности y ( k ) , при передаче по КС представим суммированием в простом двоичном поле GF ( 2 ) , в результате чего формируется искаженная кодовая комбинация f = y + ξ , в виде кодовой последовательности
108
f ( k ) = y( k ) + ξ ( k ) . (1.118) Процесс декодирования реализуем в форме построения ДНУ, формирующего к моменту k = n состояние z ( n ) , которое с точностью до матрицы преобразования подобия представляло бы собой вектор χ ( 0 ) начального состояния РКС. Векторно-матричное описание ДНУ – декодирующего устройства (ДКУ) принимает вид (1.119) z ( k + 1) = Γ z ( k ) + L f ( k ); z ( 0 ) , а структурное представление процесса декодирования – так, как показано на рисунке 1.19.
Рисунок 1.19. Структурное представление двоичного динамического наблюдения начального состояния регистра канала связи
Поставленная задача опирается на следующее утверждение. Утверждение 1.24 (У1.24). Вектор z ( k ) состояния ДКУ, построенного по структуре двоичного наблюдающего устройства для наблюдения векторов x( 0 ) и χ ( 0 ) , задается соотношением
(
)
(
)
z ( k ) = Γ k z ( 0 ) + Tχ A k + Γ k Tχ χ ( 0 ) + Tx F k + Γ k Tx x ( 0 ) , (1.120)
где матричные компоненты Tχ и Tx вычисляются как решение матричных уравнений Сильвестра Tχ A + Γ Tχ = L C , Tx F + Γ Tx = L P . □ (1.121) Доказательство утверждения ведется по той же схеме, что и доказательство У1.23. В рассмотрение вводится агрегированный вектор
[
]
T
(1.122) z = z T , χ T , xT . Вектор (1.122) подчиняется рекуррентному векторно-матричному уравнению
109
[
]
z ( k + 1) = Γ z ( k ); z ( 0 ) = z T ( 0 ), χ T ( 0 ), x T ( 0 ) , явное решение которого в показательной форме имеет вид z ( k ) = Γ k z ( 0). T
(1.123) (1.124)
В (1.123) и (1.124) матрицы Γ и Γ k имеют вид ⎡ Γ k Tχ A k + Γ k Tχ Tx F k + Γ k Tx ⎤ ⎡Γ LC L P ⎤ ⎢ ⎥ Γ = ⎢0 A Ak 0 0 ⎥;Γ k = ⎢ 0 ⎥ (1.125) k ⎥ ⎢0 0 F 0 F ⎢0 ⎥ ⎦ ⎣ ⎣ ⎦ k Подстановка Γ из (1.125) в (1.124) и выделение из z ( k ) компонента z ( k ) приводит к (1.120). ■ В стандартной постановке задачи декодирования [51] сформированный ДКУ синдром ошибки представляет собой образ вектора начального состояния χ ( 0 ) РКС, формируемого с помощью матрицы преобразования подобия Tχ . В этой связи выясним при каких условиях и свойствах матричных компонентов соотношения (1.120) последнее вырождается в соотношение вида (1.107), записываемое в форме (1.126) z k ∗ = Tχ χ ( 0 ) . Решение поставленной задачи получим с использованием положений следующего утверждения. Утверждение 1.25 (У1.25). Если ДНУ начального состояния χ ( 0 ) функционирует так, что всегда z ( 0 ) = 0 , то есть перед запуском его состояние обнуляется, матрица Γ принадлежит показателю µ = n , матрицы A и F обладают индексом нильпотентности ν = n , матрица преобразования подобия Tx обладает свойством
( )
(1.127) Tx G T = O . где G – образующая матрица систематического кода [51], то выполняется соотношение векторно-матричного подобия (1.128) z ( n ) = Tχ χ ( 0 ) . □
Доказательство утверждения строится на определениях свойств нильпотентности матрицы и принадлежности матрицы показателю, а так же на использовании условия z ( 0 ) = 0 , что приводит (1.120) к виду (1.129) z ( n ) = Tχ χ ( 0 ) + Tx x ( 0 ) . Напомним, что вектор x( 0 ) формируется из информационной части xи ( 0 ) систематического помехозащищенного кода с помощью образующей матрицы G кода в силу соотношения (1.130) x ( 0 ) = G T xи ( 0 ) . Если (1.130) подставить в (1.129) и учесть (1.127), то получим (1.128). ■ 110
Следует заметить, что в силу (1.127) матрица Tx как решение матричного уравнения Сильвестра (1.121) является проверочной матрицей [51] систематического кода.
Пример 1.6 (Пр1.6) В качестве примера рассмотрим аналитику решения в виде (1.130) задачи конструирования декодирующего устройства в форме ДНУ циклического кода с образующим многочленом g ( x ) = x 3 + x + 1 . Сконструируем ДКУ в форме ДНУ и кодирующее устройство в виде модельных представлений «вход-состояние-выход» с матричными компонентами I ⎤ ⎡ A = F = ⎢O7 6×T6 ⎥ , C = P = 1 O6T O6 ⎦ ⎣
[
]
соответственно. Решение относительно матрицы T матричного уравнения (1.97) дает ⎡1 1 1 0 1 0 0⎤ T = ⎢0 1 1 1 0 1 0⎥ . ⎢⎣1 1 0 1 0 0 1⎥⎦ Следует заметить тождественность результата для вычисленной матрицы T каноническому [51] представлению проверочной матрицы ~ H циклического кода, который в рассматриваемом примере соответствует образующему многочлену g ( x ) = x 3 + x + 1 , которая имеет вид T
⎡1 1 1 0 1 0 0 ⎤ = ⎢0 1 1 1 0 1 0 ⎥ . ⎢⎣1 1 0 1 0 0 1⎥⎦ Заметим также, что процесс декодирования состоит в вычислении вектора ошибки (применительно к данному примеру – вектору состояния регистра канала связи см. рисунок 1.19) посредством умножения матрицы T T на вектор начального состояния χ ( 0 ) РКС. Нетрудно ви~ деть, что в силу равенств матриц T и H T , процесс декодирования циклических кодов полностью совпадает с классическим его представлением. Структурная схема процесса декодирования циклического кода с образующим многочленом g ( x ) = x 3 + x + 1 представлена на рисунке 1.20. ■
[
~ ~ H = GT I
]
T
111
χ 7 (0 )
χ 6 (0 )
χ 5 (0 )
χ 4 (0 )
χ 2 (0 )
χ 3 (0)
χ 1 (0 ) РКС
7
6
5
4
3
2
1
d
d
d
d
d
d
d
ξ ( k)
КУ
xи (0)
~ GT x7 (0)
x6 (0 )
x5 (0 )
x4 (0 )
x3 (0)
x2 (0 )
7
6
5
4
3
2
1
d
d
d
d
d
d
d
x1 (0)
y ( k)
z3 (k )
ДНУ
z 2 (k )
f ( k)
3
2
1
d
d
d
z1 (k )
Рисунок 1.20. Структурное представление процесса декодирования циклического кода
1.5.3 Концепция подобия в задаче синтеза двоичных динамических систем в логике произвольных линейных триггеров Решая поставленную задачу, следует отметить, что банк линейных триггеров состоит из D- и T- триггеров при этом так, как передаточная функция элемента памяти (ЭП), выполненного в виде D- триггера, характеризуется передаточной функцией Φ D ЭП ( d ) = d , (1.131)
112
а в виде T- триггера – характеризуется передаточной функцией d Φ T ЭП ( d ) = , (1.132) 1+ d то векторы состояний ДДС, имеющих D- и T- триггерную реализацию, оказываются связанными отношениями подобия (1.133) xT ( k ) = M x D ( k ), ∀ k . Пусть в результате синтеза ДДС, решающей задачу преобразования входной последовательности u ( k ) в выходную y ( k ) , получена Dтриггерная реализация системы, имеющая векторно-матричное представление (1.134) x D ( k + 1) = AD x D ( k ) + B D u ( k ) , y D ( k ) = C D x D ( k ) + H u ( k ) . Требуется, опираясь на условие векторно-матричного подобия (1.133), построить T- триггерную реализацию системы (1.135) xT ( k + 1) = AT xT ( k ) + BT u ( k ) , yT ( k ) = C T xT ( k ) + H u ( k ) , решающую ту же задачу кодопреобразования. Поставленную задачу решим, опираясь на следующие утверждения. Утверждение 1.26 (У1.26). Матричные компоненты векторноматричных представлений (1.134) и (1.135) ДДС, решающих одну и ту же задачу кодопреобразования входной последовательности u ( k ) в выходную y ( k ) , связаны соотношениями AT = M AD M -1 ,
(1.136)
(1.137) BT = M B D , C T = C D M -1 . □ Доказательство утверждения строится на использовании (1.133), которое должно выполняться для ∀k , а потому оказывается справедливой запись (1.138) xT ( k + 1) = M x D ( k + 1), ∀ k . Подстановка в (1.138) соотношений (1.134) и (1.135) приводит к справедливости (1.136) и первого соотношения в (1.137). Второе соотношение в (1.137) получается после подстановки (1.133) в выражение для выходной последовательности y ( k ) в (1.135). ■ Утверждение 1.27 (У1.27). Матричное условие подобия (1.136), записанное в форме (1.139) M AD = AT M , представимо в виде неоднородного матричного уравнения Сильвестра (1.140) M AD + AT M = BT LD , где dim AD = dim AT , ( AD , LD ) – полностью наблюдаемая пара матриц [4], ( AT , BT ) – полностью управляемая пара матриц, алгебраические спектры собственных значений матриц AD и AT не пересе-
113
каются, то есть σ { AD } ∩ σ { AT } = ∅ , размерности матриц BT , LD согласованы в силу соотношения dim BT = dim LD . □ Доказательство утверждения строится на представлении матрицы AT в форме (1.141) AT = AT + BT N T , где матрица N T допускает представление (1.142) N T = LD M - 1 . Выражение (1.142) допускает эквивалентное представление ~ LD = N T M . (1.143) Подстановка (1.143) в (1.140) с учетом (1.141) приводит к (1.139). ■ Утверждение (У1.27) является основой следующего алгоритма синтеза ДДС в логике T- триггеров.
Алгоритм 1.5 (А1.5) конструирования двоичных динамических систем в логике произвольных линейных триггеров 10. Выполнить А1.2, получив представление линейной ДДС в форме (1.138). 11. Назначить произвольные матрицы AT , BT и LD , удовлетворяющие условиям У1.30. 12. Решить матричное уравнение Сильвестра (1.140) относительно матрицы подобия M и вычислить матрицу M −1 . 13. Сконструировать матричные компоненты T-триггерной реализации линейной ДДС (1.138) с помощью соотношений (1.136) и (1.137). ■ Следует отметить, что так как нелинейные ДДС, именуемые конечными автоматами, имеют линейные аналоги, то, как представляется авторам, концепция подобия может быть распространена и на этот класс ДДС.
Пример 1.7 (Пр1.7) Построить для декодирующего устройства циклического кода с образующим многочленом g ( x ) = x 3 + x + 1 модельное представление ДДС в логике линейных T-триггеров. 1. Выполнение п.1 А1.5 формирует модельное «входсостояние-выход» представление декодирующего устройства с матричными компонентами
114
⎡0 1 0 ⎤ AD = ⎢1 0 1⎥ , ⎢⎣1 0 0 ⎥⎦
⎡0 ⎤ B D = ⎢ 1⎥ , ⎢⎣1⎥⎦
C D = [ 1 0 0 ],
H = [ 1] .
2. Назначение произвольных матриц AT , BT и LD , удовлетворяющих условиям У1.27, дает ⎡0 ⎤ ⎡1 1 0 ⎤ ~ ~ BT = ⎢0 ⎥ , LD = [1 0 0 ]. AT = ⎢0 1 1⎥ , 1 0 0 1 ⎥ ⎣⎢ ⎦⎥ ⎣⎢ ⎦ 3. Выполнение п.3 алгоритма, состоящее в решении матричного уравнения Сильвестра (1.138) относительно матрицы подобия M , приводит к матрице ⎡0 1 1⎤ ⎡ 1 0 1⎤ M = ⎢0 1 0 ⎥ и M -1 = ⎢0 1 0 ⎥ соответственно. ⎢⎣1 1 1⎥⎦ ⎢⎣1 1 0 ⎥⎦ 4. С помощью соотношений (1.136) и (1.137) конструирование матричных компонентов T-триггерной реализации ДДС, описываемой матричными компонентами, полученными в п.1 алгоритма, дает матричные компоненты искомого векторно-матричного описания ⎡1 1 0 ⎤ ⎡0 ⎤ C T = [1 0 1] . AT = ⎢0 1 1⎥ ; BT = ⎢1⎥ ; ⎢⎣0 ⎥⎦ ⎢⎣1 0 0 ⎥⎦ Структурное представление векторно-матричного описания искомой ДДС с полученными компонентами AT , BT ,C T имеет вид, как показано на рисунке 1.21. ■
Рисунок 1.21
1.6. Векторно-матричное представление линейного помехозащитного кодопреобразования,
115
непараметризованное дискретным временем. Методы формирования матриц помехозащищенных кодов
Процесс линейного помехозащитного кодопреобразования как в фазе кодирования, так и в фазе декодирования [15, 42, 55, 51] как частный случай линейного кодопреобразования имеет три модельных представления, приведенных в параграфе 1.1. В данном параграфе используется векторно-матричное представление линейного помехозащитного кодопреобразования, непараметризованное дискретным временем, при этом особое внимание обращается на методы формирования образующей и проверочной матриц помехозащищенного кода (ПЗК). Полная схема, описывающая процесс кодирования, состоящий в преобразовании исходного помехонезащищенного кода в помехозащищенный, его передачу по двоичному каналу связи, сопровождающуюся искажением помехозащищенного кода, и процесс декодирования принятого из КС кода с целью формирования кода синдрома (опознавателя) внесенной при передаче ошибки (искажения), приведена на рисунке 1.22.
ξ a
y
f = y +ξ
E
Рисунок 1.22
На рисунке 1.22: КУ – кодирующее устройство; КС – канал связи, искажение в котором моделируется сумматором по модулю два помехозащищенного кода и кода ошибки; ДКУ – декодирующее устройство, формирующее синдром ошибки; a – вектор-строка исходного помехонезащищенного кода, dim a = k ; y – вектор-строка помехозащищенного ( n, k ) -кода, наблюдаемого на выходе КУ, dim y = n , n > k , m = n − k – число вводимых избыточных разрядов кода y ; ξ – вектор-строка помехи, воздействующей на КС, dim ξ = n ; f = y + ξ – вектор-строка искаженного кода, принимаемого из КС; E – вектор-строка синдрома ошибки (искажения) в принятой из КС кодовой комбинации, dim E = m .
116
Процесс формирования вектор-строки помехозащищенного кода y из вектор-строки помехонезащищенного кода a , осуществляемый в КУ, может быть описан линейным векторно-матричным соотношением y = aG , (1.144) где G – ( k × n ) -матрица, именуемая образующей матрицей [42, 51] помехозащищенного линейного кода y . Процесс искажения передаваемой кодовой комбинации y в канале связи под действием помехи ξ такой, что на выходе КС формируется вектор-строка искаженного кода f , может быть представлен операцией суммирования f = y +ξ , (1.145) соответствующих вектор-строк. И, наконец, процесс декодирования, состоящий в формировании вектор-строки синдрома (опознавателя) E из вектор-строки принятого из КС искаженного кода f может быть описан векторно-матричным соотношением E= f H, (1.146) где H – ( k × n ) -матрица, именуемая проверочной [42, 51] матрицей помехозащищенного кода y . Заметим, что все операции умножения и суммирования в соотношениях (1.144) – (1.146) и ниже осуществляются по правилам модулярной арифметики с модулем два ( mod 2 ). Выясним: какими свойствами должна обладать пара матриц ( G, H ) с тем, чтобы она порождала помехозащищенный код? С этой целью сформулируем утверждение. Утверждение 1.28 (У1.28). Матрица G , принятая за образующую матрицу, и матрица H , принятая за проверочную матрицу, порождают помехозащищенный код, если они удовлетворяют матричному соотношению GH =O. □ (1.147) Доказательство утверждения строится [42] на использовании соотношений (1.146), (1.145) и (1.144). Если в (1.146) подставить (1.145), в котором учесть (1.144), то получим цепочку равенств E = f H = ( y + ξ ) H = ( a G + ξ ) H = a GH + ξ H . (1.148) Напомним, что декодирующие устройства помехозащищенных кодов, построенные в прямой логике, функционируют так, что при отсутствии ошибки в принятой кодовой комбинации декодирующее устройство формирует нулевой синдром, а в случае наличия ошибок, для обнаружения или исправления которых осуществлено помехозащитное
117
кодирование, ДКУ формирует соответствующий ненулевой синдром. Таким образом ДКУ реализует соотношение E = E ( ξ ) ξ =0 = O , E = E ( ξ ) ξ ≠0 ≠ O . (1.149) Если теперь в (1.148) положить ξ = 0 , то в силу первого из соотношений (1.149) получим векторно-матричное равенство E = a GH = O , (1.150) выполняемое при любых вектор-строках исходного кода a , что доказывает справедливость утверждения. ■ Примечание 1.1 (ПМ1.1). Следует заметить, что характеристическое свойство (1.147) матриц ПЗК не нарушается при перестановке строк образующей матрицы G и столбцов проверочной матрицы H . При перестановке столбцов матрицы G для сохранения (1.147) необходима согласованная перестановка строк матрицы H . □ Нетрудно видеть, что соотношения (1.147) – (1.149) содержат доказательство следующего утверждения. Утверждение 1.29 (У1.29). Процедура формирования синдрома E имеет два эквивалентных представления (1.145) и E =ξ H . ■ (1.151) Следует заметить, что векторно-матричные представления (1.146) и (1.149) имеют различную нагрузку и среду реализацию. Первое используется в аппаратурной среде, а второе – в аналитической при формировании проверочной матрицы H помехозащищенного кода. Заметим так же, что доказательство У1.28 делает справедливым положения следующего утверждения. Утверждение 1.30 (У1.30). Пара матриц ( G , H ) размерности dim G = k × n и dim H = n × m , удовлетворяющие матричному соотношению (1.147), принятые соответственно за образующую и проверочную матрицы кода, порождают помехозащищенный ( n, k ) -код, характеризующийся корректирующей способностью, определяемой мощностью [ { E} ] множества { E} ненулевых синдромов, задаваемой в силу (1.149) соотношением [ { E} ] = 2 m − 1 . ■ (1.152) Поставим теперь задачу конструирования алгоритмов формирования образующей G и проверочной H матриц помехозащищенного кода. Эта задача не инвариантна относительно требований к блоковой систематике формируемого помехозащищенного кода. В связи с этим введем следующие определения. Определение 1.8 (О1.8). Систематическим помехозащищенным кодом называется код, элементы которого представляют собой комбинации элементов исходного помехонезащищенного кода. При этом ПЗК называется линейным, если эти комбинации строятся на основе
118
линейных бинарных операций модулярной арифметики, и нелинейным, если комбинации строятся на основе нелинейных бинарных операций модулярной арифметики. □ Нетрудно видеть, что ПЗК, сформированные в силу правила (1.144), являются систематическими и линейными, при этом вся систематика помехозащищенного линейного кода y заложена в образующей матрице G . Определение 1.9 (О1.9). Систематический ПЗК называется систематическим помехозащищенным кодом с полной блоковой систематикой, если проверочные разряды кода, вводимые в структуру ПЗК процедурой кодирования, и информационные разряды, образованные исходным помехонезащищенным кодом (ПНЗК) a , представляют собой отдельные монолитные блоки. □ Следует заметить, что в современной телекоммуникационной технике, в которой преобладает передача кодов «старшим разрядом вперед», в ПЗК с полной блоковой систематикой исходный ПНЗК образует старшие разряды кода, а блок проверочных разрядов – младшие его разряды. Определение 1.10 (О1.10). Систематический ПЗК называется кодом с неполной блоковой систематикой, если разряды исходного ПНЗК и проверочные разряды ПЗК перемежаются, не образуя монолитные блоки. □ С целью конструирования алгоритмов формирования матриц G и H ПЗК сформулируем дополнительно следующее утверждение. Утверждение 1.31 (У1.31). Если помехозащищенный код исправляет ошибки кратности γ = 1, s , то синдром E jγ ошибки ξ jγ в γ разрядах для j -ой их комбинации j = 1,C nγ равен сумме по модулю два γ строк H i , i = 1,n проверочной матрицы H однократных ошибок, сумма которых образует данную ошибку ξ jγ . □ Доказательство утверждения строится на использовании соотношения (1.149), в котором вектор-строку синдрома E , вектор-строку ошибки ξ следует писать в поэлементной форме
{
}
{
{
}
}
E = row Eλ , λ = 1,m , ξ = row ξ i , i = 1,n , (1.153) а проверочную матрицу H записать в столбцовой форме H = col H i , i = 1,n , (1.154) где H i – i -я строка матрицы H . Подстановка компонентов соотношения (1.149), представленных в форме (1.153), (1.154), в соотношение (1.152) доказывает справедливость утверждения. ■
119
Примечание 1.2 (ПМ1.2). Нетрудно видеть, что если при кодировке векторов ошибок ξ векторами-синдромами E при построении ПЗК, исправляющего ошибки кратности s > 1 или обнаруживающего ошибки кратности r > 2 , учтены условия У1.31, то достаточно иметь таблицу кодировок ошибок ξ только первой кратности. Ниже при построении алгоритмов формирования матриц G и H кода предполагается, что условия У1.31 выполняются. □ Утверждение 1.32 (У1.32). Столбцы H λ , λ = 1,m матрицы H принадлежат ядру матрицы G так, что выполняются соотношения H λ ∈ ker G ∨ GH λ = O ; (1.155)
в свою очередь столбцы G Tj , j = 1,k транспонированной G T образующей матрицы принадлежат ядру транспонированной H T проверочной матрицы кода так, что выполняются соотношения G Tj ∈ ker H T ∨ H T G Tj = O . □ (1.156) Доказательство утверждения строится на представлении матричного соотношения (1.147) в векторно-матричной форме с использованием правых вектор-столбцов G[ H 1 H 2 Κ H λ Κ H m ] = O , (1.157) что позволяет записать GH λ = O ,λ = 1,m ∨ H λ ∈ ker G . в свою очередь матричное соотношение (1.147) в транспонированной форме по аналогии с (1.157) может быть записано в виде H T G T = H T G1T G2T Κ G Tj Κ GkT = O , что позволяет записать H T G Tj = O , j = 1,k ∨ G Tj ∈ ker H T . ■ Утверждение 1.33 (У1.33). Матрицы G и H , сформированные в виде ~ ~ ⎡ G (1.158) G = I k G , H = ⎢ ⎤⎥ . ⎣Im ⎦ где I k – k × k -единичная матрица, I m – m × m -единичная матрица, ~ G – k × m -матрица синдромов однократных ошибок вида ~ (1.159) ξ = ξ Om , ~ где ξ – k -мерный вектор-строка, содержащий одну единицу, Om – m -мерная нулевая вектор-строка, порождают помехозащищенный код, обладающий полной блоковой систематикой. □
[
]
[
]
[
120
]
Доказательство утверждения в первой части состоит в непосредственной подстановке матриц G и H вида (1.158) в (1.147), которая приводит к ~ ~ ⎡G ~ ~ GH = I k G ⎢ ⎤⎥ = G + G = O . ⎣Im ⎦ Доказательство второй части утверждения строится на подстановке матрицы G вида (1.158) в (1.144) ~ ~ (1.160) y = aG = a I G = a aG ,
[
]
[ ] [
]
что обнаруживает полную блоковую систематику ПЗК y . ■ Алгоритмы формирования матриц G и H ПЗК различаются последовательностью этой процедуры. Сначала рассмотрим процедуры формирования матриц помехозащищенного кода, в которых сперва конструируется проверочная матрица H , а затем на основе сформулированных утверждений вычисляется образующая матрица G ПЗК. Вторую группу алгоритмов составляют процедуры, в которые на первом этапе формируется матрица G кода, а затем формируется проверочная матрица H ПЗК.
1.6.1 Формирование матриц ПЗК с помощью проверочных равенств при декодировании и кодировании Процедура формирования матриц H и G ПЗК, основанная на использовании проверочных равенств при декодировании и кодировании, инвариантна относительно требований к блоковой систематике кода. По существу уровень блоковой систематики в структуре проверочной матрицы H кода закладывается в силу (1.146) и У1.31 на первом шаге процедуры, состоящем в кодировке векторов-строк ошибок ξ j векторами-строками синдромов E j . Следует заметить, что на этапе кодировок ошибок ξ j синдромами E j может быть так же заложен [42, 51] способ технической реализации исправления ошибки(ок) в принятой кодовой комбинации. Так кодировкой ошибок ξ j синдромами E j по схеме Р. Хэмминга [42, 51] закладывается возможность технической реализации исправления однократных ошибок с использованием стандартных дешифраторов [27, 51].
121
Алгоритм 1.6 (А1.6) формирования матриц ПЗК с помощью проверочных равенств при кодировании и декодировании 14. Составить таблицу кодировок векторов-строк однократных ошибок ξ j векторами-строками синдромов E j , начиная с ошибки в старшем разряде ξ n = [ 1 On−1 ] и заканчивая ошибкой в
младшем разряде ξ 1 = [ On−1 1] , где On−1 – ( n − 1) -мерная нулевая вектор-строка, так, что E j удовлетворяют условиям У1.31 и принятым техническим соображениям относительно процедуры коррекции искаженного кода. 15. Сформировать проверочную матрицу H на основании составленной таблицы кодировок и соотношения (1.151), которая построчно должна удовлетворять условию H j = E n+1− j ; j = 1, n . (1.161) 16. На основании составленной проверочной матрицы H кода и соотношения (1.146), описывающего процесс формирования синдрома в аппаратурной среде ДКУ, составить аналитические выражения для каждого разряда Eλ , λ = m , 1 синдрома как функции принятой из КС искаженной кодовой комбинации f = row f n+1− j ; j = 1,n в силу соотношения
{
}
Eλ = f H m+1−λ , λ = 1,m , (1.162) где H m+1−λ – ( m + 1 − λ) -ый столбец матрицы H . 17. Сформировать аналитические выражения для помехозащитного кодирования помехонезащищенного кода a = row ai , i = k ,1 , для чего записать соотношения (1.162) в предположении, что в КС отсутствует помеха ( ξ = 0 ), положив, тем самым, справедливость выполнения условий Eλ = 0 , f n+1− j = y n+1− j , j = 1,n , (1.163) порождающих систему равенств 0 = y H m+1−λ = y n+1− j , λ = 1,m , (1.164)
{
}
допускающих явное разрешение относительно разрядов y j ПЗК как функций разрядов ai помехонезащищенного кода в форме
(
)
y j = y j ai , i = 1,k , j = 1,n .
122
(1.165)
{
18. Сформировать образующую матрицу G = row G j , j = 1,n на основании соотношения (1.144) в силу условия
{
(
)
} кода
}
(1.166) G j = arg y j = a G j = y j ai , i = 1,k ; j = 1,n , в котором известны вектор-строка помехонезащищенного кода a , а также линейная связь y j и ai в форме (1.165). ■
1.6.2 Формирование матриц ПЗК с использованием матричного уравнения Сильвестра На возможность использования матричного уравнения Сильвестра для формирования проверочной матрицы циклического помехозащищенного кода (ЦПЗК) указано в параграфе 1.4. Эти возможности в систематизированном виде являются основой алгоритма 1.7 формирования указанной матрицы ЦПЗК.
Алгоритм 1.7 (А1.7) формирования проверочной матрицы ЦПЗК на основе использования матричного уравнения Сильвестра 1. Сформировать k -разрядный ПНЗК на основе мощности [ Q] = N и заданного массива Q передаваемой или хранимой информации так, что k = arg{2 k ≥ N и = [ Q ] } (1.167) 2. Сформировать число m проверочных разрядов, удовлетворяющих требованием к достоверности передачи или хранения информации и к способу реализации корректирующей способности синтезируемого ПЗК. 3. Выбрать неприводимый модулярный многочлен g ( λ ) степени deg g ( λ ) = m , удовлетворяющий всем требованиям к корректирующей способности кода [28, 42, 51]. 4. Задать m × m -матрицу Γ в произвольном базисе (1.168) Γ = arg { det ( λI + Γ ) = g ( λ ) }, так, чтобы она обладала характеристическим полиномом g ( λ ) . 5. Выбрать матрицу L размерности m × 1 , образующую с матрицей Γ полностью управляемую пару ( Γ , L) .
123
6. Задать матрицу A размерности n × n , где n = k + m , с индексом нильпотентности ν равным ν = n в канонической Жордановой [12, 13] форме A = J { λ = 0 }. (1.169) 7. Выбрать матрицу P размерности 1× n , образующую с матрицей A полностью наблюдаемую пару ( A , P ) матриц. 8. Найти решение матричного уравнения Сильвестра T A + ΓT = L P (1.170) относительно матрицы T . 9. Сформировать проверочную матрицу H помехозащищенного ( n, k ) -кода в силу соотношения (1.171) H =ΤT . ■ Примечание 1.3 (ПМ.1.3). Множество формируемых матриц H с помощью приведенного алгоритма (А1.7) может быть существенно расширено, если в матрицах L и P допустить отличное от единицы соответственно число столбцов и строк, но при этом они всякий раз должны быть согласованы с тем, чтобы существовало их произведение L P . □
1.6.3 Использование сингулярного разложения матриц в задаче формирования матриц ПЗК Рассмотрим теперь алгоритм конструирования образующей матрицы G ПЗК по известной проверочной матрице H , который основан на положениях У1.32 и использующий возможности сингулярного разложения (SVD-процедуры) матриц [12, 16]. С этой целью сделаем некоторые пояснения. Определение 1.11 (О1.11). Сингулярным разложением [12, 16] ν × µ матрицы N над произвольным полем называется ее представление в форме N = UΣV T , (1.172) где U – ν × ν -матрица левого сингулярного базиса, V – µ × µ -матрица правого сингулярного базиса, обладающие свойством над этим полем UU T = U T U = Iν , VV T = V T V = I µ , (1.173)
Σ – ν × µ -квазидиагональная матрица сингулярных чисел, размещаемых на главной диагонали, при этом их число равно min {ν , µ }. □
124
Если с помощью (1.172) сконструировать матрицы NN T и N T N , то в силу (1.173 получим NN T = UΣΣ T U T ; N T N = VΣ T ΣV T , (1.174) при этом оказывается, что сингулярные числа совпадают с арифметическими значениями корней из собственных значений матриц NN T и N T N . Элементы левого сингулярного базиса U являются нормированными собственными векторами матрицы NN T , а элементы правого сингулярного базиса V являются нормированными собственными векторами матрицы N T N . Выделим случай реализации ν × µ -матрицы N, которая характеризуется выполнением условия µ <ν , (1.175) тогда [12, 16] µ − ν последних столбцов матрицы V правого сингулярного базиса будут принадлежать ядру матрицы N, что записывается в форме Vi ∈ ker N , i = ν + 1, µ . (1.176) Для построения алгоритма формирования образующей матрицы G ПЗК по известной проверочной матрице H , необходимо положить N = HT . Если с помощью (1.172) сконструировать матрицы NN T и N T N , то в силу (1.173 получим NN T = UΣΣ T U T ; N T N = VΣ T ΣV T , (1.174) при этом оказывается, что сингулярные числа совпадают с арифметическими значениями корней из собственных значений матриц NN T и N T N . Элементы левого сингулярного базиса U являются нормированными собственными векторами матрицы NN T , а элементы правого сингулярного базиса V являются нормированными собственными векторами матрицы N T N . Выделим случай реализации ν × µ -матрицы N, которая характеризуется выполнением условия µ <ν , (1.175) тогда [12, 16] µ − ν последних столбцов матрицы V правого сингулярного базиса будут принадлежать ядру матрицы N, что записывается в форме Vi ∈ ker N , i = ν + 1, µ . (1.176)
125
Для построения алгоритма формирования образующей матрицы G ПЗК по известной проверочной матрице H , необходимо положить N = HT .
Алгоритм 1.8 (А1.8) формирования образующей матрицы G ПЗК по известной проверочной матрице H с использованием SVD-процедуры 1. Сформировать проверочную n × m -матрицу H помехозащищенного ( n, k ) -кода с помощью приведенных А1.6 и А1.7. 2. Построить сингулярное разложение m × n -матрицы H T в форме H T = U н Σ н VнT , (1.177) где dim U н = m × m , dim Σ н = m × n , dim Vн = n × n . 3. Сконструировать ядро матрицы H T в форме ker H T = row ν i ∈ ker H T , i = m + 1,n . (1.178) 4. В силу соотношений (1.156) сформировать образующую матрицу G помехозащищенного ( n, k ) -кода в форме
{
(
)
(
G = ker H T
126
}
)
T
.■
(1.179)
1.6.4 Формирование матриц ПЗК с полной блоковой систематикой Рассмотрим проблемы формирования матриц G и H ПЗК с полной блоковой систематикой. Если формирование матриц кода осуществляется с помощью алгоритма 1.6, то блоковая систематика закладывается на этапе кодировке вектор-строк однократных ошибок ξ j в m младших разрядах помехозащищенного ( n, k ) -кода векторамистроками синдромов E j так, чтобы последние m синдромов в таблице
кодировок образовывали m × m -единичную матрицу I m . При этом проверочная матрица H ( n, k ) -кода примет вид (1.158), который в силу положений утверждения У.1.33 является основой для формирования образующей матрицы G ПЗК в форме (1.158). Завершим рассмотрение поставленной проблемы формирования матриц ( G , H ) помехозащищенного ( n, k ) -кода случаем циклических ПЗК, матрицы которых обладают полной блоковой систематикой. Приводимый ниже алгоритм строится на базе работ [42, 44].
Алгоритм 1.9 (А1.9) конструирования матриц циклического ПЗК с полной блоковой систематикой 1. Выполнить п.п. 1 – 3 алгоритма 1.7. 2. Вычислить остаток ri ( x ) от деления ММ, производимого на образующий ММ g ( x ) в силу соотношения
x n −i (1.180) ; i = 1,k . g( x ) 3. Сформировать кодовые аналоги остатков ri ( x ) в форме m разрядных вектор-строк ⎧ ⎫ x n −i ~ G i = к ⎨ri ( x ) = rest ; i = 1,k ⎬ , (1.181) g ( x ) ⎩ ⎭ ri ( x ) = rest
где к{(• )} – код ММ (•). ~ 4. Сформировать k × m -матрицу G кодов остатков в силу соотношения ~ ~ G = col G i ; i = 1,k . (1.182) 5. С использованием соотношения (1.158) сформировать образующую G и проверочную H матрицы циклического ПЗК с полной блоковой систематикой. ■
{
}
127
Пример 1.8 (Пр1.8) Решается задача формирования матриц G и H ПЗК ( 15 ,7 ) , исправляющего ошибки кратности s = 2 и обладающего синдромами однократных ошибок, удовлетворяющих условиям У1.31. Формирование матриц требуется осуществлять с помощью проверочных равенств при декодировании и кодировании. Тогда, следуя алгоритму 1.6: 1. Составим таблицу 1.2 однократных ошибок, используя синдромы группового кода [50], исправляющие ошибки кратности s = 2. 2. Составим проверочную матрицу H , используя соотношение (1.158), в результате чего получим
{
H = col H j = E n+1− j ;
128
⎡1 ⎢1 ⎢1 ⎢1 ⎢0 ⎢0 ⎢0 j = 1,15 = ⎢ 0 ⎢0 ⎢0 ⎢0 ⎢0 ⎢0 ⎢0 ⎢0 ⎣
}
1 0 0 0 1 1 1 0 0 0 0 0 0 0 0
0 1 0 0 1 0 0 1 1 0 0 0 0 0 0
1 1 1 0 0 1 0 1 0 1 0 0 0 0 0
1 0 0 0 1 0 0 0 0 0 1 1 0 0 0
0 1 1 0 0 1 0 0 0 0 1 0 1 0 0
1 0 1 0 1 0 0 1 0 0 1 0 0 1 0
1⎤ 1⎥ 0⎥ 0⎥ 0⎥ 1⎥ 0⎥ 1⎥ 0⎥ 0⎥ 1⎥ 0⎥ 0⎥ 0⎥ 1⎥⎦
Таблица 1.2
Номер искаженного разряда 15 14 13 12 11 10 9 8
Синдром E = [E8 E7 E6 E5 E4 E3 E2 E1 ] 1 1 0 1 1 0 1 1 1 0 1 1 0 1 0 1 1 0 0 1 0 1 1 0 1 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 1 1 0 0 1 1
Номер искаженного разряда 7 6 5 4 3 2
Синдром E = [E8 E7 E6 E5 E4 E3 E2 E1 ] 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0
1
0 0 0 0 0 0 0 1
71
3. Составим аналитические выражения для каждого разряда Eλ ,λ = m ,1 синдрома в силу соотношения (1.162), которые примут вид E8 = f 15 + f 14 + f 13 + f 12 E7 = f 15 + f 11 + f 10 + f 9 E6 = f 14 + f 11 + f 8 + f7 E5 = f 15 + f 14 + f 13 + f 9 + f 8 + f 6 E4 = f 15 + f 11 + f 5 + f 4 E3 = f 14 + f 13 + f 10 + f 5 + f 3 E 2 = f 15 + f 13 + f 11 + f 8 + f 5 + f 2 E1 = f 15 + f 14 + f 10 + f 8 + f 5 + f 1 4. Сформируем аналитические выражения для помехозащитного кодирования, используя соотношения (1.163), в результате чего получим y12 = y15 + y14 + y13 y 9 = y15 + y11 + y10 y7 = y14 + y11 + y 8 y6 = y15 + y14 + y13 + y10 + y 8 y 4 = y15 + y11 + y 5 y 3 = y14 + y13 + y10 + y 5 y 2 = y13 + y15 + y11 + y 8 + y 5 y1 = y15 + y14 + y10 + y 8 + y 5 5. Сформируем образующую матрицу G ПЗК ( 15, 7 ) , используя соотношение (1.166). Для этого заметим, что соотношения, полученные в п.4 алгоритма, обнаруживают, что проверочными разрядами ПЗК являются 12, 9, 7, 6, 4, 3, 2, 1, а информационными – 15, 14, 13, 11, 10, 8, 5-й разряды. Если теперь процесс (1.144) формирования ПЗК записать в развернутой форме [ y15 y14 y13 y12 y11 y10 y9 y8 y7 y6 y5 y4 y3 y2 y1 ] = , = [ a7 a6 a5 a4 a3 a2 a1 ] G , где y15 = a7 y14 = a6 y13 = a5 y12 = a4 y11 = a3 y10 = a2 y 9 = a1
86
y8 y7 y6 y5 y4 y3 y2 y1
= a7 = a7 = a6 = a7 = a7 = a6 = a7 = a7
+ a6 + a4 + a4 + a6 + a4 + a5 + a5 + a6
+ a5 + a3 + a2 + a5 + a1 + a3 + a4 + a3
+ a 3 + a1 + a1 + a 2 + a1 + a 2 + a1
то образующая матрица кода ( 15, 7 ) принимает вид ⎡ 100 100 100 10 10 11⎤ ⎢ 0 10 10000 1100 10 1⎥ ⎥ ⎢ ⎢ 00 1100000 100 110 ⎥ ⎥ ⎢ G = ⎢ 0000 10 10 100 10 10 ⎥ ⎢ 00000 1100 100 10 1⎥ ⎥ ⎢ ⎢ 0000000 111000 11⎥ ⎢⎣ 0000000000 11111⎥⎦ Примечание 1.4 (ПМ1.4). Рассмотренный ПЗК ( 15, 7 ) , исправляющий ошибки кратности s = 2 имеет избыточное число проверочных разрядов. Действительно, число синдромов m 8 N c = 2 − 1 = 2 − 1 = 255 , а число ошибок первой и второй кратности
N ош = С n1 + С n2 = n ( n + 1) / 2 = 120 . Складывается впечатление, что соотношение N c > N ош сохранится, если число m проверочных разрядов сократить с 8 до 7. Действительно, в этом случае код ( 15 ,7 ) трансформировался бы в код ( 14 ,7 ) , для которого было бы справедливо неравенство N c = 2 m − 1 = 27 − 1 = 127 ≥ N ош = С n1 + С n2 = 105 . Но в этом случае необходимо было бы приведенные в таблице 1.1 синдромы укоротить на один старший разряд. Однако при этом нарушается условие [42, 51] и корректирующая способность ПЗК, исправляющего ошибки кратности s = 2 , что вызывается появлением нулевого синдрома (для ошибки в двенадцатом разряде в рамках рассмотренного примера) и сокращением кодового расстояния между синдромами до d min = 3 . □
87
Пример 1.9 (Пр1.9) Иллюстрируется процедура формирования проверочной матрицы H ПЗК ( 7, 4 ) , исправляющего ошибки кратности s = 1 . Читателю предлагается убедиться, что проверочная матрица H вида ⎡ 1 0 1⎤ ~ ⎡G ⎤ ~ ⎢ 1 1 1⎥ H = ⎢ ⎥ , где G = , ⎢ 1 1 0⎥ I ⎣ 3⎦ ⎢⎣ 0 1 1⎥⎦ получена решением уравнения Сильвестра (1.170) относительно матрицы Τ = H T с матричными компонентами ⎡0 1 0 ⎤ ⎡0 ⎤ I 6 ×6 ⎤ ⎡ T Γ = ⎢1 0 1⎥ ; L = ⎢0 ⎥ ; A = ⎢O7 T ⎥ ; P = 1 O6 . O6 ⎦ ⎣ ⎢⎣1 0 0 ⎥⎦ ⎢⎣1⎥⎦ Матрица H обнаруживает полную блоковую систематику ПЗК ( 7 ,4 ) , поэтому образующая матрица кода принимает вид G = I G~ .
[
]
[
4
]
□
Пример 1.9 (Пр1.9) Иллюстрируется процедура формирования проверочной матрицы H ПЗК ( 7, 4 ) , исправляющего ошибки кратности s = 1 . Читателю предлагается убедиться, что проверочная матрица H вида ⎡ 1 0 1⎤ ~ ⎡G ⎤ ~ ⎢ 1 1 1⎥ H = ⎢ ⎥ , где G = , ⎢ 1 1 0⎥ I ⎣ 3⎦ ⎢⎣ 0 1 1⎥⎦ получена решением уравнения Сильвестра (1.170) относительно матрицы Τ = H T с матричными компонентами ⎡0 1 0 ⎤ ⎡0 ⎤ I 6 ×6 ⎤ ⎡ T Γ = ⎢1 0 1⎥ ; L = ⎢0 ⎥ ; A = ⎢O7 T ⎥ ; P = 1 O6 . O6 ⎦ ⎣ ⎢⎣1 0 0 ⎥⎦ ⎢⎣1⎥⎦ Матрица H обнаруживает полную блоковую систематику ПЗК ( 7 ,4 ) , поэтому образующая матрица кода принимает вид G = I G~ .
[
]
[
4
□
1.7. Анализ структуры неподвижных состояний и замкнутых циклов линейных двоичных динамических систем
88
]
В данном параграфе рассматриваются проблемы, связанные со спецификой структуры пространства состояния линейных двоичных динамических систем, характеризующихся наличием неподвижных состояний и замкнутых циклов при отсутствии ( u ( k ) = 0 ) и наличии ( u ( k ) ≠ 0 ) экзогенной задающей последовательности на входе ЛДДС. Решаемая задача связана с особенностью структуры алгебраического спектра собственных значений σ { A } = { λi : D( λ ) = det ( λI + A) = 0 } матрицы A состояния линейной ДДС, особенностями структуры геометрического спектра собственных векторов {ξ i : Aξ i = ξ i ; i = 1,n той же матрицы, с фактом, когда этот спектр имеет своими элементами вектор начального x( 0 ) (в общем случае исходного x( k ) ) состояния системы и столбцы матрицы B входа ЛДДС. Для случая, когда u ( k ) ≠ 0 решаемая задача связана с проблемой управляемости пары матриц ( A, B ) . И, наконец, решение задачи в значительной степени зависит от показателя µ , которому принадлежит матрица A . Рассматриваемая проблема решается с использованием моделей «вход–состояние» линейных ДДС, задаваемых в рекуррентной (1.183) x ( k + 1) = A x ( k ) + B u ( k ) , x ( 0 ) ; и суммарной
}
k −1
x ( k ) = A x ( 0 ) + ∑ A k −1−i B u ( i ) k
(1.184)
i =0
формах. Анализ структуры пространства состояния ЛДДС, задаваемой моделями (1.183), (1.184) проведем для случая, когда ( n × r ) матрица B входа представляет собой n -мерный вектор-столбец так, что r = 1 .
1.7.1 Неподвижные состояния линейной двоичной динамической системы Рассмотрение проблемы начнем с определения неподвижного состояния. Определение 1.12 (О1.12). Состояние x( k ) ЛДДС (1.182), (1.183) называется неподвижным, если оно удовлетворяет условию (1.185) x ( k + 1) = x ( k ) , ∀ k . □
89
Анализ структуры неподвижных состояний начнем со случая, когда экзогенная последовательность u ( k ) на входе ЛДДС отсутствует. Для этого случая u ( k ) = 0 , поэтому модели (1.183), (1.184) принимают вид (1.186) x ( k + 1) = A x ( k ) , x ( 0 ) ;
(1.187) x ( k ) = Ak x ( 0 ) . Утверждение 1.34 (У1.34). ЛДДС (1.186), (1.187) при любой ( n × n ) -реализации матрицы A состояния всегда имеет в качестве неподвижного состояния нулевое (1.188) x( k)≡ 0 . □ Доказательство утверждения использует рекуррентную модель (1.186), подстановка в которую (1.188) дает цепочку равенств x ( k + 1) = A x ( k ) = A ⋅ O = O = x ( k ) . ■ Утверждение 1.35 (У1.35). ЛДДС (1.186), (1.187) при реализации матрицы A состояния в форме единичной ( n × n ) -матрицы так, что A = I , имеет неподвижными все 2 n состояния двоичной системы. □
90
Доказательство утверждения, как и выше, использует рекуррентную модель (1.186) ЛДДС, в которой следует положить A = I так, что (1.186) принимает вид x ( k + 1) = A x ( k ) = I x ( k ) = x ( k ); ∀ x ( k ) . ■ Выделим теперь класс матриц состояния ЛДДС (1.186), (1.187), при которых двоичная система обладает неподвижным состоянием x ( k ) ≠ 0 , отличным от нуля. Утверждение 1.36 (У1.36). Если состояние x ( k ) является собственным вектором ξ матрицы A , соответствующим ее собственному значению равному единице ( λ = 1) , то состояние (1.189) x( k)= ξ является неподвижным. □ Доказательство утверждения использует рекуррентную модель ЛДДС (1.186) и определение собственного вектора ξ матрицы (1.190) Aξ = λ ξ . Для собственного значения λ = 1 соотношение (1.190) принимает вид (1.191) Aξ = ξ . Если x ( k ) выбран в форме (1.189), тогда используя (1.186) получим цепочку равенств (1.192) x ( k + 1) = A x ( k ) = Aξ = ξ = x ( k ) . ■ Выделим класс матриц состояния ЛДДС, которые не порождают ненулевые неподвижные состояния x ( k ) ≠ 0 . Очевидно, что в этот класс входят все ( n × n ) -матрицы A , обладающие индексом ν нильпотентности, удовлетворяющим неравенствам 1 ≤ν ≤ n. (1.193) Это вызвано тем, что нильпотентная ( n × n ) -матрица A с индексом нильпотентности (1.193) имеет все n собственных значений, равных нулю ( λ = 0 ) , что делает невозможным переход от (1.190) к (1.191). В этот класс также входит ( n × n ) -матрица A , принадлежащая максимальному показателю µ = 2 n − 1 , что имеет место, когда характеристический полином матрицы A D( λ ) = det ( λI + A) представляет собой неприводимый полином степени n ( deg D( λ ) = n ). В этом случае матрица A не имеет собственных значений в простом двоичном поле Галуа GF ( 2 ) = {0 ,1}, как следствие матрица A не имеет собственных векторов, в силу чего не выполняется соотношение (1.191). Таким образом неподвижным ненулевым состоянием обладает ЛДДС, ( n × n ) матрица A состояния которая принадлежит показателю µ , удовлетворяющему неравенствам
91
(1.194) n ≤ µ < 2n − 1 . Рассмотрим теперь структуру неподвижных состояний для случая отличной от нуля экзогенной последовательности на входе ЛДДС так, что выполняются соотношения u( k ) ≠ 0 ; u( k ) = 1 , ∀ k . (1.195) Утверждение 1.37 (У1.37). Нулевое состояние x ( k ) ≡ 0 не принадлежит множеству неподвижных состояний ЛДДС при ненулевой экзогенной последовательности, удовлетворяющей условиям (1.195). □ Доказательство утверждения строится на подстановке x ( k ) ≡ 0 и (1.195) в модель (1.183) ЛДДС, что приводит к соотношению (1.196) x ( k + 1) = B u ( k ) . В случае если dim B = ( n × 1 ) и B ≠ O соотношение x ( k + 1) = O = x ( k ) при u ( k ) = 1 не выполняется. ■ Утверждение 1.38 (У1.38). Ненулевое неподвижное состояние ЛДДС (1.183) вычисляется в силу соотношения −1 (1.197) x ( k ) = ( I + A) B . □ Доказательство утверждения строится на непосредственном вычислении неподвижного состояния, опирающегося на его определение (1.185), и соотношение (1.183) с учетом (1.195), из которых получаем x( k)= Ax( k)+ B , что записывается в форме ( I + A) x ( k ) = B , (1.198) приводящей к выражению (1.197), если матрица ( I + A ) обратима. ■ Выделим случай, когда матрица ( I + A ) не является обратимой. С этой целью воспользуемся свойством спектра собственных значений матричной функции от матрицы. В соответствии с этим свойством ~ спектр σ { I + A} = λi ; i = 1,n состоит из элементов ~ λi = 1 + λi , i = 1,n , (1.199) где λi – элемент алгебраического спектра σ { A} = λi : det ( λI + A) = 0 ; i = 1,n собственных значений матрицы A . В силу соотношения (1.199) матрица ( I + A ) является обратимой, а следовательно линейная ДДС (1.183), (1.184) имеет при u ( k ) = 1 неподвижное состояние, определяемое в силу (1.198), если матрица A является нильпотентной с любым индексом ν нильпотентности или если матрица A имеет своим характеристическим полиномом любой неприводимый полином степени n , принадлежащий показателю µ , удовлетворяющему условию (1.194).
{
}
{
92
}
Необратимой матрица ( I + A ) является для ЛДДС, матрица A состояния которой имеет в своем алгебраическом спектре собственных зна~ чений σ { A} = λi : det ( λI + A) = 0 ; i = 1,n ∗ элемент λ j = 1 так, что λ j в ~ силу (1.200) обращается в ноль ( λ j = 0 ). В этом случае линейная ДДС (1.183), (1.184) не имеет неподвижных состояний отличных от нулевого. Следует, однако, заметить, что сказанное выше справедливо, если иметь в виду произвольную реализацию матрицы B . Если же матрица входа такова, что она принадлежит пространству столбцов матрицы B , то есть выполняется условие B ∈ Jm( I + A ) , то вектор x ( k ) ищется из условия n ⎧ ⎫ x ( k ) = arg ⎨ B = ∑ ( I + A )i xi ( k )⎬ . ⎩ i =1 ⎭
{
}
1.7.2 Замкнутые циклы линейных ДДС Вынесенную в название параграфа проблему как для случая исследования неподвижных состояний будем решать с использованием модельных представлений ЛДДС в форме (1.186), (1.187) при отсутствии на входе двоичной динамической системы экзогенной последовательности ( u ( k ) = 0 ) и в форме (1.183), (1.184) при наличии на входе системы экзогенной последовательности ( u ( k ) ≠ 0 ). Предварим исследование важным для решения проблемы утверждением. Утверждение 1.39 (У1.39). Пусть ( n × n ) -матричная функция f ( A) от ( n × n ) -матрицы A задана над простым полем Галуа GF ( p ) при p = 2 в степенной форме
f ( A) = A q (1.200) где q – целое положительное число. Пусть матрица A обладает алгебраическим спектром σ { A } = { λi : det ( λI + A) = 0 ; λi ∈ GF ( 2 ) } собственных значений и геометрическим спектром {ξ i : Aξ j = ξ j ; j = 1,rA собственных векторов. Пусть матричная функция f ( A) от матрицы A обладает алгебраическим спектром
}
σ { f ( A) } = {λ f i = f ( λi ) : det [ λ f I + f ( A) ] = 0 ; i = 1,n }
93
собственных
значений и геометрическим спектром {ξ λ : f ( A)ξ λ = ξ f }. Тогда геометрический спектр ξ f λ ; λ = 1,r } собственных векторов f ( A) включает в себя геометрический спектр
{ξ j ;
j = 1,n A
{
} собственных векторов матрицы
A , при этом они мо-
гут не совпадать так, что выполняется соотношение ξ f λ ; λ = 1,r f } ⊃ {ξ j ; j = 1,r
{
}
(1.201)
rf ≥ r . □ (1.202) Доказательство. Очевидно сформулированное утверждение справедливо для матрицы A , не являющейся нильпотентной матрицей любого значения индекса ν нильпотентности, которая обладает алгебраическим спектром собственных значений, составленным из нулей так, что σ { A } = λi = 0 ; i = 1,n , а также для матрицы A , имеющей своим характеристическим полиномом D( λ ) = det ( λI + A) неприводимый полином степени n , который не имеет корней в простом поле Галуа GF ( 2 ) так, что σ { A } = { λi ∉ GF ( 2 ) } . Таким образом утверждение имеет дело со случаем, когда характеристический полином матрицы A разложим в произведение двучленов
{
}
D( λ ) = det ( λI + A) = ∏ ( λ + λ j ) n
(1.203)
j =1
и который характеризуется кратными единичными собственными значениями λ j = 1 j = 1,n . Известно [13], что число rA различных собст-
(
)
венных векторов ξ j матрицы A , имеющей кратные корни, меньше n = dim x и определяется из соотношения rA = dim{ Ker ( λI + A) } = n − dim{ Jm ( λ j I + A)} = n − rank ( I + A) (1.204) В свою очередь число r f собственных векторов ξ fλ матричной функции f ( A) от матрицы A определяется из соотношения
r f = dim{ Ker ( λ fλ I + f ( A))} =
= n − dim{ Jm ( λ fλ I + f ( A))} = n − rank ( I + f ( A))
(1.205)
Причем так как по свойству спектра собственных значений матричной функции f ( A) от матрицы A оказывается справедливым соотношение
λ fλ = f ( λ j ) : j ,λ = 1,n ,
(1.206)
то с учетом степенного характера f ( A) = A q спектр кратных единичных значений матрицы A
{
{λ
j
}
= 1: j = 1, n сохраняется и для матрич-
}
ной функции f ( A) λ fλ = λ2λ = 1: λ = 1,n . Если к этому добавить, что
94
матричная функция f ( A) в общем случае не сохраняет базис представления исходной матрицы A , то размерности ядер (нульпространств) матриц ( λ j I + A) = ( I + A) и ( λλ I + f ( A)) = ( I + f ( A)) могут быть различными так, что выполняется неравенство r f ≥ rA . ■ (1.207)
Пример 1.10 (Пр1.10) Для иллюстрации положений утверждения рассмотрим матрицу ⎡0 1 0 ⎤ A = ⎢0 0 1⎥ ⎢⎣1 1 1⎥⎦ и матричную функцию от матрицы ⎡0 1 0 ⎤ ⎡0 1 0 ⎤ ⎡0 0 1⎤ 2 f ( A) = A = A ⋅ A = ⎢0 0 1⎥ ⎢0 0 1⎥ = ⎢1 1 1⎥ ⎢⎣1 1 1⎥⎦ ⎢⎣1 1 1⎥⎦ ⎢⎣1 0 0 ⎥⎦
0 ⎤ ⎡λ 1 3 det ( λI + A) = det ⎢ 0 λ 1 ⎥ = λ3 + λ2 + λ + 1 = ( λ + 1) . ⎢⎣ 1 1 λ + 1⎥⎦
σ { A} = { λ1 = λ2 = λ3 = 1} . ⎡λ f det ( λ f I + f ( A)) = det ⎢ 1 ⎢ ⎢⎣ 1
0 1+ λf 0
1⎤ 3 1 ⎥ = λ3f + λ2f + λ f + 1 = λ f + 1 ⎥ λ f ⎥⎦
(
)
σ { f ( A) = A 2 } = {λ f 1 = λ f 2 = λ f 3 = 1} . Вычислим
⎧⎪ ⎡0 rA = dim ⎨ Ker ( λI + A) = Ker ⎢0 ⎢⎣1 ⎪⎩ ⎡1 = n − rank ( I + A) = 3 − rank ⎢0 ⎢⎣1
1 0 ⎤ ⎫⎪ 0 1⎥ ⎬ = n − dim{ Jm ( λI + A) } = 1 1⎥⎦ ⎪⎭ 1 0⎤ 1 1⎥ = 3 − 2 = 1 . 1 0 ⎥⎦
Размерность rA ядра Ker ( λI + A) , определяющая число собственных векторов ξ j , составляет rA = 1 . Таким образом, матрица A имеет единственный собственный вектор
95
⎡1⎤
⎡0 1 0 ⎤ ⎡1⎤
⎡1⎤
ξ = ⎢1⎥ такой, что Aξ = ξ : ⎢0 0 1⎥ ⎢1⎥ = ⎢1⎥ выполняется.
⎢⎣1⎥⎦ ⎢⎣1 1 1⎥⎦ ⎢⎣1⎥⎦ ⎢⎣1⎥⎦ Оценим теперь размерность r f ядра Ker ( λ f I + f ( A)) , определяющую число собственных векторов ξ fλ
⎧⎪ ⎡1 0 1⎤ ⎫⎪ dim ⎨ Ker ( λ f I + f ( A)) = Ker ⎢1 0 1⎥ ⎬ = ⎢⎣1 0 1⎥⎦ ⎪⎭ ⎪⎩ = n − dim{ Jm ( λ f I + f ( A))} = n − rank ( I + f ( A)) = ⎡1 0 1⎤ = 3 − rank ⎢1 0 1⎥ = 3 − 1 = 2 ⎢ ⎥ ⎢⎣1 0 1⎥⎦
Таким образом f ( A) = A 2 имеет следующие собственные вектора: ξ f 1 = ξ по свойству матричной функции от матрицы сохранять геометрический спектр собственных векторов в форме f ( A)ξ = A 2 ξ = A { Aξ = Aξ = ξ = ξ f 1 . Действительно ξ
⎡0 0 1⎤ ⎡1⎤ ⎡1⎤ f ( A)ξ = ⎢1 1 1⎥ ⎢1⎥ = ⎢1⎥ = ξ f 1 ; ⎣⎢1 0 0 ⎦⎥ ⎣⎢1⎦⎥ ⎣⎢1⎦⎥ ξ f 2 и ξ f 3 , вычисленные из соотношения f ( A)ξ fλ = ξ fλ так, что ⎡ 1⎤ ⎡0 0 1⎤ ⎡1⎤ ⎡1⎤ ξ f 2 = ⎢0 ⎥ : f ( A)ξ f 2 = ⎢1 1 1⎥ ⎢0 ⎥ = ⎢0 ⎥ = ξ f 2 ; ⎢⎣1⎥⎦ ⎢⎣1 0 0 ⎥⎦ ⎢⎣1⎥⎦ ⎢⎣1⎥⎦ ⎡0 ⎤ ⎡0 0 1⎤ ⎡0 ⎤ ⎡0 ⎤ ξ f 3 = ⎢1⎥ : f ( A)ξ f 3 = ⎢1 1 1⎥ ⎢1⎥ = ⎢1⎥ = ξ f 3 . ⎢⎣0 ⎥⎦ ⎢⎣1 0 0 ⎥⎦ ⎢⎣0 ⎥⎦ ⎢⎣0 ⎥⎦ Заметим, что собственные векторы ξ f 1 , ξ f 2 , ξ f 3 матричной функции f ( A) = A 2 оказались линейно зависимыми. Действительно ⎡1⎤ ⎡0 ⎤ ⎡1⎤ ξ f 1 = ξ f 2 + ξ f 3 = ⎢0 ⎥ + ⎢1⎥ = ⎢1⎥ ; ⎢⎣1⎥⎦ ⎢⎣0 ⎥⎦ ⎢⎣1⎥⎦ ⎡1⎤ ⎡1⎤ ⎡0 ⎤ ξ f 3 = ξ f 1 + ξ f 2 = ⎢1⎥ + ⎢0 ⎥ = ⎢1⎥ и т.д. ⎢⎣1⎥⎦ ⎢⎣1⎥⎦ ⎢⎣0 ⎥⎦ Этого результата и следовало ожидать, так как линейная оболочка, натянутая на эти векторы, имеет размерность r f = 2 < n = 3 . ■
96
Введем понятие замкнутый цикл в структуре пространства матрицы состояния линейной ДДС с помощью следующего определения. Определение 1.13 (О1.13). Пусть множество ~ x мощности ~ [ ~x ] = N = 2 n − 1 состояний линейной ДДС (1.186), (1.187), не включающее в себя нулевое неподвижное состояние, тогда подмножество x , содержащее T состояний, на котором выполняется множества ~ соотношение x( k ) = x( k + T ) , (1.208) называется замкнутым циклом длинной T , составленным из векторов состояния
{x( k ); x( k + 1) = Ax( k ); x( k + 2) = Ax( k + 1) = A x( k ),Κ Κ , x( k + T − 1) = A x( k )}. □ 2
T −1
(1.209) Рассмотрим факторы, определяющие длину T замкнутых циклов на множестве состояний ЛДДС при отсутствии экзогенной последовательности ( u ( k ) = 0 ) на ее входе. С этой целью соотношение (1.208) запишем в форме (1.187) x( k ) = AT x( k ) . (1.210) Сформулируем следующее утверждение. Утверждение 1.40 (У1.40). При x( k ) ≠ 0 соотношение (1.210) выполняется в случаях, когда: – матрица A принадлежит показателю T ; – x( k ) является собственным вектором матрицы AT . □ Доказательство справедливости первой части утверждения строится на определении показателя µ , которому принадлежит матрица A , в соответствии с которым выполняется матричное равенство Aµ = I , (1.211) подстановка µ = T делает справедливым (1.210). Доказательство справедливости второй части утверждения строится на определении собственного вектора с учетом специфики простого поля Галуа GF ( p ) при p = 2. ■ Нетрудно видеть, что длина T замкнутых циклов удовлетворяет неравенствам 1 ≤ T ≤ n −1. (1.212) Очевидно, что в структуре пространства ( n × n ) -матрицы A состояния ЛДДС (1.186), (1.187) имеется цикл длины T = 1 , когда x( k ) является собственным вектором матрицы A . Иначе говоря, ненулевое неподвижное состояние образует цикл длительностью T = 1 . Максимальная длительность T = 2 n − 1 имеет место, когда ( n × n ) -матрица A и ее ха-
97
рактеристический полином D( λ ) = det ( λI + A) принадлежат показателю µ = 2 n − 1 . Наложим на неравенства (1.212), определяющие возможные по x мощности длине T циклы на множестве ненулевых состояний ~ ~ n ~ [ x ] = N = 2 − 1 , неравенства, оценивающие возможные показатели µ , которым могут принадлежать ( n × n ) -матрица состояния ЛДДС и ее характеристический полином D( λ )
n ≤ µ ≤ 2n − 1 . (1.213) В результате этого наложения, а также с использованием положений У1.39 и У1.40 можно предложить следующий алгоритм анализа структуры замкнутых циклов линейных ДДС (1.186), (1.187), которому придадим номер 1.10. Алгоритм 1.10 (А1.10) 6. Построить векторно-матричное представление линейной двоичной динамической системы в форме (1.183), (1.184). 7. Перейти от представления ЛДДС (1.183), (1.184) к ее представлению в форме (1.186), (1.187), положив в (1.183), (1.184) u( k ) = 0 . 8. Вычислить характеристический полином D( λ ) матрицы A состояния ЛДДС в силу соотношения D( λ ) = det ( λI + A) . 9. Определить показатель µ которому принадлежит характеристический полином D( λ ) и матрица A состояния ЛДДС с использованием таблиц полиномов, принадлежащих конкретному µ или возведением матрицы A в степень над полем Галуа GF ( 2 ) до момента выполнения равенства A µ = I . 10. Проанализировать полученное значение µ : если µ = 2 n − 1 , то осуществить переход к п.11 алгоритма, в противном случае – к п.6 алгоритма. 11. Найти корни характеристического полинома D( λ ) , после чего его записать в форме χ
(
)
D( λ ) = g ( λ )∏ λn j + 1 , j =1
где g ( λ ) – неприводимый модулярный многочлен, n1 = 1 < n2 < Κ < n j < n j +1 < Κ < n χ χ
deg D( λ ) = n = deg g ( λ ) + ∑ n j j =1
98
(1.214) (1.215) (1.216)
12. Вычислить величину rΣ , определяющую сумму размерностей ядер матриц ( I + A n j ) в силу соотношений 2 n − 1 = nµ µ + rΣ , где nµ – число циклов длины T = µ .
(
(1.217)
)
13. Вычислить размерности r j ядер Ker I + A n j матриц I + A n j , определяющих число собственных векторов матриц A n j , а, следовательно, длину T j = r j соответствующих им замкнутых циклов. 14. Вычислить собственные векторы ξ f j матриц A n j . 15. Определить состав и очередность изменения состояний в замкнутых циклах длиной T j = r j , порожденных собственными векторами ξ f j матриц A n j , используя для этого представление циклов в форме (1.209). 16. Определить состав и очередность изменения состояний в замкнутых циклах длиной Tµ = µ , порожденных фактом принадлежности матрицы A состояния ЛДДС показателю µ , используя представление циклов в форме (1.209), в котором за исходное x , не состояние x( k ) цикла взять любое состояние множества ~ принадлежащее циклам, сформированным в п.10. 17. Сформировать структуру замкнутых циклов и неподвижных состояний линейной ДДС (1.186), (1.187) (при u ( k ) ≡ 0 ) путем объединения циклов в п.п. 10 и 11, дополнив их нулевым неподвижным состоянием. ■
Пример 1.10 (Пр1.10) (Продолжение) 1. Выполним п.п.1–3 А1.10, в результате чего ЛДДС будет иметь матрицу A состояния и характеристический полином D( λ ) = det ( λI + A) ⎡0 1 0 ⎤ A = ⎢0 0 1⎥ ; D( λ ) = λ3 + λ2 + λ + 1 ; n = 3 ⎢⎣1 1 1⎥⎦ 4. Путем возведения матрицы A в степень получим ⎡0 0 1⎤ ⎡0 0 1⎤ ⎡0 0 1⎤ ⎡1 0 0 ⎤ A 2 = A ⋅ A = ⎢1 1 1⎥ ; A4 = A 2 ⋅ A 2 = ⎢1 1 1⎥ ⎢1 1 1⎥ = ⎢0 1 0 ⎥ , ⎢⎣1 0 0 ⎥⎦ ⎢⎣1 0 0 ⎥⎦ ⎢⎣1 0 0 ⎥⎦ ⎢⎣0 0 1⎥⎦ что показатель µ , которому принадлежит матрица A , равен четырем ( µ = 4 )
99
5. Анализ значения µ обнаруживает, что
µ = 4 < 2n − 1 = 23 − 1 = 8 − 1 = 7 ; в результате чего необходимо перейти к п.6 А1.10. 6. Выполнение п.6 алгоритма дает λ1 = λ2 = λ3 = 1 и D( λ ) представим в форме D( λ ) = λ3 + λ2 + λ + 1 = λ2 + 1 ( λ + 1) , где g ( λ ) = 1 ; n1 = 1 ; n2 = 2 .
(
)
7. Выполнение п.7 алгоритма дает 2 n − 1 = 7 = 1 ⋅ 4 + 3 так, что в структуре пространства матрицы A состояния ЛДДС имеется один замкнутый цикл длиной T = µ = 4 . 8. Вычисление размерности r j ядер матриц
⎡1 1 0 ⎤ ⎡1 0 1⎤ 1 1⎥ и I + A n 2 = I + A 2 = ⎢1 0 1⎥ ⎢⎣1 1 0 ⎥⎦ ⎢⎣1 0 1⎥⎦
( I + A ) = ( I + A) = ⎢0 n1
(
) (
)
дает r1 = 1 и r2 = 2 . 9. Вычисление собственных векторов матриц A n j приводит к результату {ξ f 1 }= arg An1ξ f 1 = ξ f 1 = arg{ Aξ = ξ } =
{
}
⎧ ⎡0 1 0 ⎤ ⎡ ⎤ ⎡ ⎤ ⎫ ⎧ ⎡1⎤ ⎫ ⎪ ⎪ ⎪ ⎪ = arg ⎨ ⎢0 0 1⎥ ⎢ξ ⎥ = ⎢ξ ⎥ ⎬ = ⎨ ⎢1⎥ ⎬ ⎪⎩ ⎢⎣1 1 1⎥⎦ ⎢⎣ ⎥⎦ ⎢⎣ ⎥⎦ ⎪⎭ ⎪⎩ ⎢⎣1⎥⎦ ⎪⎭ 10. Определение состава циклов, порожденных собственными векторами матриц A n j дает два цикла, представляющих собой набор векторов ⎧⎪ ⎡1⎤ ⎫⎪ ⎧⎪ ⎡1⎤ ⎡0 ⎤ ⎫⎪ {ξ f 1 } = ⎨ ⎢1⎥ ⎬ , {ξ f 2 }= ⎨ ⎢0 ⎥ , ⎢1⎥ ⎬ ⎪⎩ ⎢⎣1⎥⎦ ⎪⎭ ⎪⎩ ⎢⎣1⎥⎦ ⎢⎣0 ⎥⎦ ⎪⎭ 11. Определение состава и очередность смены состояния ЛДДС в замкнутом цикле длины Tµ = µ = 4 , порожденным фактом принадлежности матрицы A показателю µ = 4 , если за x( k ) при-
нять x( k ) = [0 0 1] , не принадлежащий {ξ f 1 } ∪ {ξ f 2 }, и воспользоваться (1.208), дает замкнутый цикл ⎧⎪ ⎡0 ⎤ ⎡0 ⎤ ⎡1⎤ ⎡1⎤ ⎡0 ⎤ ⎫⎪ ⎨ ⎢0 ⎥ , ⎢1⎥ , ⎢1⎥ , ⎢0 ⎥ , ⎢0 ⎥ ⎬ ⎪⎩ ⎢⎣1⎥⎦ ⎢⎣1⎥⎦ ⎢⎣0 ⎥⎦ ⎢⎣0 ⎥⎦ ⎢⎣1⎥⎦ ⎪⎭ 12. Полная структура замкнутых циклов и неподвижных состояний при u ( k ) ≡ 0 принимает вид (рисунок 1.23). ■ T
100
0 000
0
010 0
001
101
011
0 0 110
0 111
0
0 100
Рисунок 1.23. Структура замкнутых циклов и неподвижных состояний ЛДДС
Рассмотрим теперь структуру замкнутых циклов линейной ДДС при u ( k ) = 1 . Описание ЛДДС для этого случая задается представлениями (1.183), (1.184), в которых следует положить u ( k ) = 1 так, что получим: в рекуррентной форме x( k + 1) = Ax( k ) + B ; x( 0 ) (1.218) и в суммарной форме x( k + 1) = A k x( 0 ) + A k −1 B + A k −2 B + Κ + AB + B ; x( 0 ) . (1.219) Следует заметить, что введенное с помощью О1.13 определение замкнутого цикла длинной T сохраняется, однако структура этих циклов не только зависит от показателя µ , которому принадлежит матрица A , структуры собственных векторов {ξ f } степенных матричных функций f ( A) = A q от ( n × n ) -матрицы A состояния ЛДДС, но и от матрицы B . Последняя может принадлежать пространству столбцов матрицы A , то есть ее образу B ⊂ Jm A , (1.220) тогда пара матриц ( A, B ) оказывается не полностью управляемой, простейший случай такой ситуации является случай, когда матрица B является собственным вектором матрицы A . В этой связи сформулируем утверждение. Утверждение 1.41 (У1.41). Если матрица B векторноматричного описания ЛДДС является собственным вектором матрицы A , то ЛДДС с такой парой матриц ( A, B ) не является полностью управляемой, при этом размерность подпространства управляемости равна единице. □ 101
Доказательство. Тот факт, что матрица B суть собственный вектор матрицы A состояния ЛДДС над простым полем Галуа GF ( 2 ) , позволяет записать AB = B . (1.221) Составим матрицу управляемости пары ( A, B )
[
W у ( A, B ) = B A B A 2 B Κ Для элементов W у ( A, B ) можно записать
(
]
A n−1 B .
(1.222)
)
A B = B ; A 2 B = A B = B ,Κ , A n−1 B = A A n−2 B = Κ = B . Подстановка полученных матричных равенств в (1.222) дает для матрицы управляемости rank W у ( A, B ) = rank [B B B Κ B ] = rank B = 1 < n . ■ Следует заметить, что рекуррентная форма (1.218) представления ЛДДС при u ( k ) = 1 содержит конструктивный алгоритм формирования структуры замкнутых циклов путем простого суммирования состояния перехода с матрицей B , так что в цикле происходит аддитивный сдвиг на векторный компонент B . Однако это впечатление обманчиво. Структура замкнутых циклов может измениться так, что в них могут полностью исчезнуть неподвижные состояния. Напомним, что выше было доказано, что при u ( k ) = 1 нулевое состояние перестает быть неподвижным, а ненулевое неподвижное состояние существует, когда матрица ( I + A) обратима или когда матрица B принадлежит ее образу. Но возможны ситуации, когда ни одно из этих условий не выполняется. Проиллюстрируем сказанное на примере.
Пример 1.11 (Пр1.11) Рассмотрим ЛДДС с матрицей A состояния из Пр1.9 в сочетании с двумя версиями матрицы входа B : ⎡1⎤ ⎡0 ⎤ B1 = ⎢1⎥ , B2 = ⎢0 ⎥ . ⎣⎢1⎦⎥ ⎣⎢1⎦⎥ Для поиска ненулевого неподвижного состояния x( k ) : x( k + 1) = x( k ) в силу (1.198) сконструируем матрицу ⎡0 1 0 ⎤ ⎡1 0 0 ⎤ ⎡1 1 0 ⎤ ( A + I ) = ⎢0 0 1⎥ + ⎢0 1 0 ⎥ = ⎢0 1 1⎥ . ⎣⎢1 1 1⎦⎥ ⎣⎢0 0 1⎦⎥ ⎣⎢1 1 0 ⎦⎥ Ранг матрицы ( A + I ) меньше n = 3 , действительно ⎡1 1 0 ⎤ rank ( A + I ) = rank ⎢0 1 1⎥ = 2 . ⎣⎢1 1 0 ⎦⎥
102
Матрица ( A + I ) является необратимой, а потому использование соотношения (1.197) для поиска ненулевого неподвижного состояния оказывается некорректным. Однако проверим принадлежат ли матрицы B1 и B2 в силу (1.198) ( A + I ) x( k ) = B образу ( A + I ) . Для первой версии матрицы B = B1 имеет место соотношение ⎡1 1 0 ⎤ ⎡1⎤ ( ) 0 1 1 x k = ⎢ ⎥ ⎢1⎥ , ⎢⎣1 1 0 ⎥⎦ ⎢⎣1⎥⎦ откуда следует B1 ⊂ Jm ( A + I ) , при этом неподвижных состояний два
x( k ) = [0 1 0 ] и x( k ) = [1 0 1] . Для второй версии имеем ⎡1 1 0 ⎤ ⎡0 ⎤ ⎢0 1 1⎥ x( k ) = ⎢0 ⎥ , ⎢⎣1 1 0 ⎥⎦ ⎢⎣1⎥⎦ откуда следует B2 ⊄ Jm ( A + I ) , а следовательно ЛДДС с парой матриц ( A, B2 ) при u ( k ) = 1 не имеет ненулевых неподвижных состояний, как следствие следует ожидать объединения «коротких» замкнутых циклов. На рисунке 1.24 приведена структура циклов ЛДДС с парой матриц ( A, B1 ) , построенная в силу (1.217). T
T
Рисунок 1.24. Структура циклов ЛДДС с парой матриц
( A, B1 )
( A, B1 ) не является полностью управT ляемой, так как матрица B1 = [1 1 1] является собственным вектором матрицы A . В результате ранг W у ( A, B1 ) равен единице, а управСледует заметить, что пара
103
ляемое подпространство натянуто на вектор x = B1 . Если ЛДДС находится в нулевом начальном состоянии x( 0 ) = [0 0 0 ] , то никакими u ( k ) нельзя ЛДДС вывести из подпространства, натянутого на состояT
ния x = [0 0 0 ] и x = [1 1 1] . На рисунке 1.25 приведена структура циклов ЛДДС с парой матриц ( A, B2 ) – полностью управляемой, так как ⎡0 0 1⎤ rank W у ( A, B2 ) = rank ⎢0 1 1⎥ = 3 = n ⎢⎣1 1 0 ⎥⎦ T
T
Рисунок 1.25. Структура циклов ЛДДС с парой матриц
( A , B2 )
Неподвижные состояния в случае u ( k ) = 1 в ЛДДС с парой матриц ( A, B2 ) «исчезли», структура пространства состояний распалась на два замкнутых цикла длиной T = µ = 4 . В силу полной управляемости пары ( A, B2 ) существует последовательность u ( k ) , которая позволяет обойти все состояния ЛДДС. Примером такой последовательности является u ( k ) = 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 ... ■ В заключение следует остановиться на проблеме вычисления состояния, из которого ЛДДС переходит в нулевое состояние. Нетрудно видеть, если в левой части (1.218) положить для состояния перехода x( k + 1) ≡ 0 , то x( k ) , из которого происходит под действием u ( k ) переход в нулевое состояние, определится выражением x( k ) = A −1 B . (1.223) Оценка состояния (1.223) особенно важна в задачах помехозащитного декодирования.
104
Следует также заметить, что структура замкнутых циклов претерпевает минимальную модификацию для случая, когда матрица A состояния ЛДДС принадлежит показателю µ = 2 n − 1 . В этом случае нулевое состояние перестает быть неподвижным, существует единствен−1 ное ненулевое неподвижное состояние x( k ) = ( A + I ) B и единствен-
ный замкнутый цикл длиной T = 2 n − 1 . Пара матриц ( A, B ) при любой реализации матрицы B является управляемой так как матрица A с неприводимым характеристическим полиномом D( λ ) = det ( λI + A) не имеет над GF ( 2 ) собственных векторов. В заключение приведем в форме таблицы 1.3 результаты исследования всех 28 возможных вариантов реализаций пар ( A, B ) матриц, задающих соответствующие ЛДДС при размерности dim x вектора x их состояния равной трем, что является широко распространенным случаем конструирования ДДС. Для компактности записи в таблицах использованы представления матриц, циклов, последовательностей в виде их десятичных эквивалентов, причем величина периодичности представлена скобочной записью с указанием длительности периода в виде нижнего индекса у правой скобки.
105
Таблица 1.3
Характеристика
Ранг матрицы управляемости Управляющая последовательность
Замкнутые циклы
Неподвижные состояния
Матрица AT [2, 1, 4] [2, 1, 6] [2, 1, 5] [2, 1, 7] [2, 1, 4] [2, 1, 6] [2, 1, 5] [2, 1, 7] [2, 1, 4] [2, 1, 6] [2, 1, 5] [2, 1, 7] [2, 1, 4] [2, 1, 6] [2, 1, 5] [2, 1, 7]
Матрица B T 1
2
3 3 3 3 (175)8 (207)8 (243)8 (221)8
3 3 3 2 (175)8 (207)8 (243)8 –
3
4
Показатель 5
2 3 2 3 3 2 3 3 3 3 3 2 – (175)8 – (207)8 (207)8 – (243)8 (243)8 (243)8 (221)8 (221)8 – (1, 2, 4)3 , (3, 6, 5)3 (1, 2, 5, 3, 7, 6, 4)7 (1, 3, 7, 6, 5, 2, 4)7 (2, 5)2 , (1, 3, 6, 4)4 (0), (7) (0) (0) (0), (7)
6
7
2 3 3 3 – (207)8 (243)8 (221)8
1 3 3 1 – (207)8 (243)8 –
µ
3 7 7 4 3 7 7 4 3 7 7 4 3 7 7 4
91
92 Таблица 1.3 (продолжение)
Характеристика
Матрица AT [2, 1, 4]
Сепаратные управляемые состояния и циклы (при u ( k ) = 1( k ) )
[2, 1, 6] [2, 1, 5] [2, 1, 7]
Матрица B T 1
2
3
4
Показатель 5
6
7
(0,1,3,7, (0,2,6,7, (0,3,5)3, (0,4,5,7, (0,5,6)3, (0,6,3)3, (1,5,4,6, 6,4)6, (2,7,4)3, (1,7,2)3, (1,4,7)3, 5,0)6, 3,2)6, 2,3)6, (2,5)2 (3,4)2 (1)1, (6)1 (1,6)2 (3)1, (4)1 (2)1, (5)1 (0,7)2 (0,1,3,6, (0,2,7,4, (0,3,4,2, (0,2,7,4, (0,5,6,1, (0,6,2,3, (0,7,1,5, 3,5,1)7, 6,7,5)7, 3,5,0)7, 7,3,2)7, 1,4,7)7, 4,6,3)7, 5,4,2)7, (7)1 (6)1 (1)1 (6)1 (4)1 (5)1 (2)1 (0,1,2,5, (0,2,6,7, (0,3,4,2, (0,4,5,6, (0,5,7,3, (0,6,3,1, (0,7,1,4, 4,3,5)7, 7,5,1)7, 1,7,2)7, 2,1,6)7, 5,4,7)7, 6,2,3)7, 3,6,4)7, (7)1 (1)1 (6)1 (3)1 (4)1 (2)1 (5)1 (0,1,2,4)4, (1)1, (6)1, (0,3,5,1)4, (0,4,5,6)4, (3)1, (4)1, (0,6,2,3)4, (2)1, (5)1, (3,7,6,5)4 (0,2,7,5)4 (2,6,7,4)4 (1,7,3,2)4 (1,6)2, (1,5,4,7)4 (0,7)2, (0,5,7,2)4 (1,4,6,3)4
µ
3 7 7 4
Примечания. 1. Матрица AT представлена построчно: в таблице указаны десятичные эквиваленты строк матрицы. 2. Матрица B T представлена десятичным эквивалентом ее столбца. 3. Запись вида ( •)ο означает цикл длины ( ο) с последовательностью кодов состояния ( •) , каждый из которых задан в десятичном эквиваленте.
1.8. Линейные двоичные динамических системы в задачах дивидендного помехозащитного кодирования
Дивидендное представление процессов помехозащитного кодопреобразования в фазе кодирования и декодирования использует векторно-матричное описание, параметризованное дискретным временем k этих процессов в форме линейных двоичных динамических систем, опирающиеся на модели «вход-состояние» (ВС) вида (1.23), (1.25) (1.224) x ( k + 1) = A x ( k ) + B u ( k ) , x ( 0 ) ≡ 0 , k −1 k −1 ⎛ ⎞ x ( k ) = ⎜ A k x ( 0 ) + ∑ A k −1−i B u ( i )⎟ = ∑ A k −1−i B u ( i ) . (1.225) i =0 ⎝ ⎠ x ( 0 )≡0 i =0 Форма модели ВС (1.224), как указано в параграфе 1.2, именуется рекуррентной формой, форма (1.225) – суммарной. В (1.224), (1.225) x ( k ) – вектор состояния ЛДДС, осуществляющей помехозащитное кодопреобразование; u ( k ) – входная кодовая последовательность; dim x = m , dim u = 1 , dim A = ( m × m ) , dim B = ( m × 1) . В зависимости от задачи помехозащитного кодопреобразования u ( k ) принимает смысл помехонезащищенного информационного кода u ( k ) = a ( k ) при формировании помехозащищенного кода y ( k ) и смысл принятого из канала связи искаженного кода f ( k ) = y ( k ) + ξ ( k ) так, что u ( k ) = f ( k ) в задаче декодирования. Характерной особенностью модельных представлений (1.224) и (1.225) является то, что матрица Aку состояния ко-
дирующего устройства и матрица Aдку состояния декодирующего устройства совпадают так, что выполняется равенство (1.226) Aку = Aдку = A . Матрица A состояния КУ и ДКУ задается в одном базисе, при этом чаще всего в сопровождающей характеристический полином (ХП) форме, причем ХП D( λ ) = det ( λI + A) совпадает с образующим ПЗК модулярным многочленом g ( x ) так, что выполняется соотношение D ( λ ) = g ( x ) x =λ (1.227) Матрицы входа для устройств кодирования и декодирования чаще всего не совпадают так что для КУ и ДКУ модель (1.224) соответственно получает представление x ( k + 1) = A x ( k ) + Bку u ( k ); x ( k + 1) = A x ( k ) + Bдку u ( k ) . (1.228) Если при формировании ПЗК предполагается возможность перехода от их матричного задания, не параметризованного дискретным временем k , с помощью образующей матрицы G и проверочной матрицы 23
H , то следует иметь в виду следующее. Необходимое условие реализуемости матричного представления ПЗК (1.144), (1.146) дивидендным способом, осуществляемым средствами ЛДДС (1.228), является однозначное соответствие строк проверочной матрицы H ПЗК с точностью до процедуры транспонирования с матрицей входа Bдку устройства де~ кодирования и строк матрицы G при представлении образующей матрицы ПЗК в форме (1.158) с матрицей входа Bку (1.228) устройства кодирования. Высказанные соображения подтвердим следующими утверждениями. Утверждение 1.42 (У1.42). Матрица Bку ЛДДС дивидендного
кодирующего устройства с точностью до операции транспонирова~ ния совпадает с последней строкой ( k -ой) строкой G k образующей матрицы G так, что выполняется соотношение ~ (1.229) BкуT = G k = κ { g ( x ) + x m }, где κ { ( •) } – код модулярного многочлена ( •) . □ Доказательство. Рассмотрим процесс кодирования для случая u ( k ) = a ( x ) = 1 , то есть для случая k -элементной входной последовательности u ( k ) = [ u ( 0 ) = 0 , u ( 1) = 0 ,Κ , u ( k − 2 ) = 0 , u ( k − 1) = 1 ] . (1.230) В течение первых ( k − 1) -тактов ЛДДС КУ будет находится в нулевом неподвижном состоянии. При приеме элемента u ( k − 1) = 1 ЛДДС КУ (1.228) перейдет в состояние x ( k ) = Bку u ( k − 1) u ( k −1)=1 = Bку . (1.231) Состояние (1.231) определяет код остатка, выводимый из КУ, для ~ a( x ) = 1 , задаваемый последней строкой матрицы G кодов остатков так, что выполняется цепочка равенств ~ (1.232) x T ( k ) = BкуT = G k = κ { g ( x ) + x m }. ■ Утверждение 1.43 (У1.43). Матрица Bдку входа ЛДДС (1.228) ди-
видендного декодирующего устройства с точностью до процедуры транспонирования совпадает с последней строкой проверочной матрицы H ПЗК так, что выполняется равенство T (1.233) Bдку = H n. □ Доказательство. В силу идентичности результатов процедур формирования синдрома E при декодировании в форме (1.146), (1.151) с целью анализа процессов в ЛДДС (1.228) при декодировании рассмотрим последний при входной последовательности u ( k ) = ξ ( k ) . Как и
24
выше, ограничимся ситуацией, когда последовательность ξ ( k ) содержит единицу только в младшем разряде u ( k ) = ξ ( k ) = [ u ( 0 ) = 0 , u ( 1) = 0 ,Κ , u ( k − 2 ) = 0 , u ( k − 1) = 1 ]. (1.234) При входной последовательности вида (1.234) ЛДДС (1.228) устройства декодирования в течение первых ( n − 1) -тактов, характеризующихся u ( k ) = 0 остается в нулевом неподвижном состоянии, а на последнем n -м такте перейдет в состояние, совпадающее с матрицей Bдку . Однако в силу правил декодирования это состояние представляет собой синдром ошибки в младшем разряде, который в силу правил формирования проверочной матрицы H ПЗК является ее последней строкой, что приводит к цепочке равенств T (1.235) E = x T ( n ) = Bдку = Hn. ■ Поставим задачу: матрица A ЛДДС устройств кодирования и декодирования (1.228) фиксирована, матрица входа ЛДДС кодирующего устройства фиксирована в форме (1.232), модифицируема ли матрица входа ЛДДС устройства декодирования при сохранении матричного характеристического свойства ПЗК (1.146) GH = O ? С целью решения поставленной задачи сформулируем утверждение, предварив его следующим определением. Определение 1.14 (О1.14). Матрицей циклического сдвига на один шаг «вниз» строк произвольной ( n × m ) -матрицы H называется ( n × n ) -матрица Pc вида I1 × 1 ⎡O ⎤ (1.236) Pc = ⎢ 1 × ( n−1) ⎥. □ I O ( ) ( ) ( ) n − 1 × n − 1 n − 1 × 1 ⎣ ⎦ Определение 1.15 (О1.15). Матрицей циклического сдвига на один шаг «вверх» произвольной ( n × m ) -матрицы H называется ( n × n ) -
матрица Pc−1 вида I (n−1) × (n−1) ⎤ ⎡O Pc−1 = ⎢ ( n−1) × 1 (1.237) ⎥.□ I O ( ) 1 × 1 1 × n − 1 ⎣ ⎦ Из (1.236) и (1.237) видно, что матрицы циклического сдвига «вниз» и «вверх» строк произвольной ( n × m ) -матрицы H связаны соотношениями Pc−1 = PcT , Pc PcT = PcT Pc = I . (1.238) Определение 1.16 (О1.16). Матрицей циклического сдвига на ν шагов «вниз» строк произвольной ( n × m ) -матрицы H называется
( n × n ) -матрица
Pcν вида I ⎡O Pcν = ⎢ ν × ( n−ν ) ν × ν ⎣ I (n−ν ) × (n−ν ) O( n−v ) × v
⎤ ⎥. □ ⎦
(1.239)
25
Определение 1.17 (О1.17). Матрицей H (ν ) размерности ( n × m ) , полученной из ( n × m ) -матрицы H путем сдвига на ν шагов ее строк «вниз», называется матрица, вычисленная в силу матричного соотношения H (ν ) = Pcν H . □ (1.240) Утверждение 1.44 (У1.44). Характеристическое свойство (1.147) матриц ( G , H ) помехозащищенного кода сохраняется для матриц ( G , H (ν )) так, что GH (ν ) = GPcν H . □ (1.241) Доказательство утверждения строится на использовании матрицы G , записанной в каноническом виде (1.158) ~ G= I G ,
[
]
k×k
и матрицы H , записанной в форме
[
]
T
H = A n−1 Bдку A n−2 Bдку Κ ABдку Bдку .
(1.242)
При этом используются свойства ( m × m ) -матрицы A принадлежности показателю n = 2 m − 1 , в силу чего выполняется равенство An = I , (1.243) а также справедливости теоремы Гамильтона-Кэли позволяющей записать D( λ ) λ = A = D( A) = O . (1.244) Если записать (1.241) в транспонированной форме H T ( Pcν ) G T , T
(1.245)
подставить в нее матрицу H в форме (1.242), Pcν в форме (1.239) и матрицу G в форме (1.158), учесть (1.243) и (1.244), тогда получим матричное соотношение
{
}
H T ( Pcν ) G T = row A ρi D( A)Bдку ; i = 1,k , ρ i = 0 ,1,2 ,Κ ,m = O . ■ (1.246) T
Пример 1.12 (Пр1.12). Проиллюстрируем положения У1.44 на примере циклического ПЗК с образующим ММ g ( x ) = x 3 + x + 1 , который характеризуется матрицами G и H ⎡ 1 0 0 0 1 0 1⎤ ⎡1 1 1 0 1 0 0 ⎤ G = ⎢0 1 0 0 1 1 1⎥ ; H T = ⎢0 1 1 1 0 1 0 ⎥ (1.247) ⎢0 0 1 0 1 1 0 ⎥ ⎢⎣1 1 0 1 0 0 1⎥⎦ ⎢⎣0 0 0 1 0 1 1⎥⎦ Матрица Pc циклического сдвига «вниз» строк матрицы H на один шаг (1.236) имеет вид
26
1 ⎤ ⎡O Pc = ⎢ 1 × 7 ⎥. I O 7 × 7 7 × 1 ⎣ ⎦ Тогда для матриц (1.245) для ν = 0 ,ν = 3 ,ν = 6 получим
[
H T G T = A6 Bдку A 5 Bдку A 4 Bдку A 3 Bдку A 2 Bдку ABдку Bдку
[
= A 2 Bдку ABдку Bдку A6 Bдку A 5 Bдку A 4 Bдку A 3 Bдку
H
( P )G 6 c
⎡1 0 0 0 ⎤ ⎢0 1 0 0 ⎥ ⎢0 0 1 0 ⎥ ⎢0 0 0 1⎥ ; ⎢1 1 1 0 ⎥ ⎢0 1 1 1⎥ ⎢⎣1 1 0 1⎥⎦
]
(1.249)
H T ( Pc3 )G T =
T
(1.248)
⎡1 0 0 0 ⎤ ⎢0 1 0 0 ⎥ ⎢0 0 1 0 ⎥ ⎢0 0 0 1⎥ ; ⎢1 1 1 0 ⎥ ⎢0 1 1 1⎥ ⎢⎣1 1 0 1⎥⎦
]
(1.250) T
=
[
= A 5 Bдку A 4 Bдку A 3 Bдку A 2 Bдку ABдку Bдку A6 Bдку
⎡1 0 0 0 ⎤ ⎢0 1 0 0 ⎥ ⎢0 0 1 0 ⎥ ⎢0 0 0 1⎥ . ⎢1 1 1 0 ⎥ ⎢0 1 1 1⎥ ⎢⎣1 1 0 1⎥⎦
]
(1.251) Раскрытие произведений матриц позволяет для (1.248) – (1.250) записать
[
H T G T = (A6 + A 2 + I ) Bдку (A 5 + A 2 + A + I ) Bдку
(A
4
+ A 2 + A) Bдку (A 3 + A + I ) Bдку
]
(1.252)
[
H T ( Pc3 )G T = (A 5 + A 3 + A 2 ) Bдку (A 5 + A 4 + A 3 + A) Bдку
(A
5
+ A 4 + I ) Bдку (A6 + A 4 + A 3 ) Bдку
]
(1.253)
]
(1.254)
[
H T ( Pc6 )G T = (A6 + A 5 + A) Bдку (A6 + A 4 + A + I ) Bдку
(A
3
+ A + I ) Bдку (A6 + A 2 + I ) Bдку
27
Если в (1.252) – (1.254) учесть (1.243) и (1.244), записываемые для рассматриваемого примера в форме A7 = I , D( A) = A 3 + A + I = O , (1.255) то (1.252) – (1.254) примут вид
[
H T G T = A −1 D( A) Bдку A 2 D( A) Bдку
AD( A) Bдку D( A) Bдку ] = O
(1.256)
[
H T ( Pc3 )G T = A 2 D( A) Bдку AD( A) Bдку
]
(1.257)
]
(1.258)
A −3 D( A) Bдку A 3 D( A) Bдку = O
[
H T ( Pc6 )G T = A − 2 D( A) Bдку A 3 D( A) Bдку D( A) Bдку A −1 D( A) Bдку = O
Общее представление результатов (1.256) – (1.258) имеет вид (1.246). □ Утверждение (У1.44) и Пр1.11 по существу содержат доказательство следующего утверждения. Утверждение 1.45 (У1.45). В качестве матрицы Bдку входа уст-
ройства дивидендного декодирования, реализованного в форме линейной ДДС (1.228), может быть принята любая строка проверочной матрицы H помехозащищенного кода в транспонированном виде так, что (1.259) Bдку = H iT , i = n ,1 , при этом образующая и проверочная матрицы ПЗК, сформированного средствами ЛДДС (1.228) с матрицей входа (1.259) устройства декодирования сохраняют свое характеристическое свойство (1.147). □ Таким образом пользователь аппаратуры дивидендного помехозащитного кодирования – декодирования без изменения ее кодирующей части может модифицировать декодирующую часть путем изменения матрицы Bдку входа декодирующего устройства. Количество вариантов модификации матрицы Bдку составляет N в = n , где n – полное число разрядов помехозащищенного ( n, k ) -кода. При этом опасность получения неуправляемой пары матриц ( A,Bдку ) на указанном наборе отсутствует, так как матрица Bдку при всех ее версиях не является собственным вектором матрицы A . Последнее объясняется тем, что матрица A состояния ЛДДС кодирующих и декодирующих устройств (1.228) имеет своим характеристическим полиномом неприводимый модулярный
28
многочлен, который не имеет корней в простом поле Галуа GF ( 2 ) , что гарантирует и отсутствие собственных векторов. Полученные в параграфе результаты позволяют сформировать алгоритм синтеза линейных ДДС дивидендного помехозащитного кодирования и декодирования.
Алгоритм 1.11 (А1.11) синтеза ЛДДС дивидендного помехозащитного кодирования и декодирования 18. По заданному информационному массиву Q мощности [ Q ] = N и определить размерность k помехозащищенного кода в силу соотношения k = arg {2 k ≥ N и = [ Q ] }. 19. По заданной корректирующей способности помехозащищенного ( n, k )-кода определить степень m = n − k его образующего модулярного многочлена g ( x ) в силу соотношения s ⎧ ⎫ m m = arg ⎨ N c = 2 − 1 ≥ N ош = ∑ C(ik + m ) ⎬ , i =1 ⎩ ⎭ где N c – число синдромов, N ош – число ошибок, s – кратность исправляемой ошибки. Выбрать или сформировать реализацию образующего ММ g ( x ) степени m в классе неприводимых, гарантирующих минимальное кодовое расстояние d min на используемых кодовых комбинациях ПЗК d min ≥ 2 s + 1 .
20. Вычислить
D-образ ММ g ( x ) в форме
g ( d ) = D{ g ( x )} = g~ ( x −1 ) −1 , x =d −1 m~ −1 ~ где g ( x ) : g ( x ) = x g ( x ) . 21. Сконструировать передаточную функцию устройства деления модулярных многочленов в форме 1 . Φ(d)= g( d ) 22. Пользуясь правилом Мейсона некасающихся контуров построить структурную реализацию Φ ( d ) на элементах памяти (ЭП) с передаточной функцией Φ ЭП ( d ) = d . 23. Произвести отметку входов и выходов ЭП переменными xi ( k + 1) на входе и xi ( k ) на выходе и сформировать векторноматричное описание автономной версии УДММ
29
x( k + 1) = Ax( k ) . 24. Сформировать матрицу входа Bку дивидендного кодирующего устройства (1.228) в силу соотношения (1.229). 25. Сформировать проверочную матрицу H ПЗК и матрицу Bдку входа дивидендного декодирующего устройства (1.228) в силу соотношения (1.259). 26. Проверить правильность функционирования устройств кодирования и декодирования (1.228) сформированными парами матриц (A,Bку ) и (A,Bдку ) . 27. Построить техническую реализацию устройств дивидендного кодирования и декодирования: a. в схемотехнической форме на базе структурных представлений; b. в программной форме на базе рекуррентных процедур (1.228). ■
30
2. НЕЛИНЕЙНЫЕ ДВОИЧНЫЕ ДИНАМИЧЕСКИЕ СИСТЕМЫ (НДДС) ДИСКРЕТНОЙ АВТОМАТИКИ Рассматриваются проблемы, связанные с использованием нелинейных двоичных динамических систем (НДДС) в составе устройств дискретной автоматики. Причем первоочередной проблемой является разработка методологии и алгоритмического обеспечения конструирования нелинейных модельных представлений ДДС. В связи с тем, что «нелинейность» в общесистемной постановке суть разновидность статической «памяти», то следует ожидать при использовании НДДС в составе устройств дискретной автоматики для решения задач кодопреобразования заметного сокращения размерности кода состояния ДДС, что влечет за собой системологическую проблему «кодового пространства» на классе ЛДДС–НДДС реализаций проектируемых двоичных систем. При этом разработчик УДА должен помнить, что априорным преимуществом НДДС перед ЛДДС является возможность использования всего банка существующей триггерной логики, что существенно расширяет класс схемотехнических реализаций ДДС. 2.1. Построение модельного представления НДДС с использованием средств автоматной логики В настоящем параграфе в развитие положений параграфа 1.2, в котором в классе моделей «вход–состояние–выход» (ВСВ) (1.20) построены линейные представления правил (функций) λ перехода и δ выхода в форме (1.23) и (1.24), ставится задача конструирования их нелинейных аналогов. Для целей построения нелинейных модельных представлений правил λ и δ при описании ДДС используются возможности автоматной логики [6, 7, 8, 14, 39] в двух ее реализациях. Одна из этих реализаций опирается на процедуру канонического автоматного синтеза ДДС, а другая – на процедуру автоматного синтеза ДДС с использованием граф-схем алгоритмов (ГСА) ее функционирования. Первая из отмеченных процедур конструирования нелинейного модельного представления в форме НДДС реализуется в виде следующего алгоритма.
117
Алгоритм 2.1 (А2.1) конструирования модельного ВСВ представления НДДС на основе канонического автоматного синтеза 1. Сформулировать постановку задачи кодопреобразования, решаемой конструируемой ДДС. 2. Формализовать задачу кодопреобразования в виде абстрактного автомата (АА), задаваемого в виде пятиэлементного макровектора AА : { Z , S ,W ,λ ,δ }, (2.1) где Z – алфавит высокого уровня (с возможным использованием вербальных описаний) входов абстрактного автомата мощности [ Z ] = rZ , S – алфавит высокого уровня его состояния мощности [ S ] = nS , W – алфавит высокого уровня выходов АА мощности [W ] = mW , λ – правило (функция) перехода АА (2.2) s( k + 1) = λ [ s( k ), z ( k ) ], s( 0 ) ;
δ – правило (функция) выхода, задаваемое функциональными соотношениями соответственно W ( k ) = δ [ s( k ) ] (2.3) в логике абстрактного автомата Мура и W ( k ) = δ [ s( k ), z ( k ) ] (2.4) в логике абстрактного автомата Мили. В (2.2) – (2.4) s( 0 ), s( k ), s( k + 1) – соответственно начальное состояние, исходное состояние и состояние перехода АА, k – дискретное время, выраженное в числе тактов длительностью ∆ t . При этом основным математическим средством описания правил (функций) λ , δ на первом этапе конструирования являются графы переходов и выходов, на втором – таблицы переходов и выходов. 3. Осуществить переход от абстрактного автомата (2.1) к конечному автомату (КА) КА : { U , X ,Y ,λ ,δ } (2.5) над простым полем Галуа GF ( p ) при p=2, путем кодирования элементов алфавитов высокого уровня АА (2.1) кодами, составленными из элементов поля GF ( p ) . В выражении (2.5) U = к{ Z }, X = к{ S }, Y = к{W }, где к{ ( • )} – код (векторстрока) элемента алфавита ( • ) размерности dim к{ ( • )}. Раз-
118
мерности кодов конечного автомата (2.5) и мощности алфавитов абстрактного автомата (2.1) связаны соотношениями dimU = r = arg min{ p r ≥ rZ }, dim X = n = arg min{ p n ≥ nS }, dimW = m = arg min{ p m ≥ mW } (2.6) Коды алфавитов входа и выхода могут строиться в рамках требований (2.6) достаточно произвольно. Коды элементов алфавита состояния с тем чтобы избежать начальную установку КА должны использовать нулевую комбинацию, а так же учитывать специфику графа переходов АА. Так, если в графе переходов АА явно обнаруживается некоторая его цикличность, то из соображений простоты технической реализации НДДС коды ее состояний, соседние по графу, должны быть максимально приближены к соседним) [8], то есть должны характеризоваться минимальным кодовым расстоянием (см. параграф 3.2). Представить правила λ , δ (2.2) – (2.4) КА после процедуры кодирования соответствующих алфавитов АА, соответственно в виде (2.7) λ : x( k + 1) = λ [ x( k ), u ( k ) ], x(0 ) и (2.8) δ : y ( k ) = δ [ x( k ) ] при использовании автоматной логики Мура и
δ : y ( k ) = δ [ x( k ), u ( k ) ]
(2.9)
при использовании автоматной логики Мили, где x( 0 ), x( k ), x( k + 1) – соответственно коды начального состояния, исходного состояния и состояния перехода. 4. Выбрать тип автоматной логики (Мура или Мили) функционирования конечного автомата на основе анализа требований, предъявляемых к НДДС по быстродействию и информационной надежности, таблиц переходов и выходов КА, полученных в результате выполнения п.3 алгоритма. 5. Выбрать тип используемых при построении НДДС триггеров, число которых не зависит от выбранного их типа и определяется размерностью n кода состояния автоматного представления НДДС. Учесть, что выбор конкретного типа триггера вводит в рассмотрение дополнительную функцию описания КА – функцию µ возбуждения информационного входа v триггера, задаваемую в форме (2.10) v( k ) = µ [ x( k ), x( k + 1) ] .
119
6. Построить аналитическое представление функционирования НДДС в виде двух систем булевых функций, описывающих процесс: формирования выхода y в форме y = y [ x( k ), u ( k ) ], (2.11) и формирования сигналов возбуждения информационных входов триггеров в форме v( k ) = µ [ x( k ),λ [ x( k ), u ( k )] ] = µ~ [ x( k ), u ( k ) ]. (2.12) Булеву функцию (БФ) (2.11) составить непосредственно на основе табличного представления правила δ функции выхода КА, являющейся таблицей истинности на всем множестве наборов переменных, представленных кодами исходных состояний и входов. Для построения БФ (2.12) сконструировать таблицу возбуждения входов всех триггеров выбранного типа на основе представления (2.10) и таблицы переходов КА. Построенную таблицу использовать для построения БФ (2.12) в качестве таблицы истинности. 7.Привязать аналитические описания (2.11), (2.12) к элементной базе и построить схемотехническую реализацию НДДС. ■ Примечание 2.1 (ПМ.2.1) Из приведенного алгоритма нетрудно видеть, что автоматный синтез существенно расширяет банк схемотехнических реализаций ДДС за счет снятия ограничений на логику функционирования триггеров, которое имело место в линейном синтезе ДДС. □ Пример 2.1 (Пр.2.1)
В качестве примера рассматривается конструирование НДДС, преобразующая входную последовательность u ( k ) = δ ( k ) в периодическую последовательность, обеспечивающую размещение информационных разрядов в кодах Хэмминга (7,4) (см. Пр1.1). Для решения поставленной задачи конструирования ДДС воспользуемся алгоритмом 2.1. 1. В соответствии с постановочной частью задачи конструирования назначаем элементы алфавита Z входа, S состояния и W выхода описания устройства в форме АА и составляем формальную его модель в логике абстрактных автоматов Мура (рисунок 2.1) и автоматов Мили (рисунок 2.2). При этом соответствующие им таблицы правила λ перехода и правила δ выхода запишутся в виде таблиц 2.1 и 2.2.
120
z1
w1
s7
w2 z1 s1 z2
z2
w2
z1
s2
z2 w 1 s6
z2 z1
z2
s0
z2
w1
w2
z1
s3
s5 z2
z1
z2
z1
w2
z1
s4
w1
Рисунок 2.1. Модель НДДС в логике абстрактного автомата Мура
w1 z1 s7
w2
w2
z2
z1 s1 w2
w1 z1
z2 w2
w2 s2
w1 z2 s6
w1
w1 z2
z1 s5
z2 z1
z2
s0
w2 s3
w2 z2
z1 w1
w2 z2
s4
z1
w2 z1
w1
Рисунок 2.2. Модель НДДС в виде абстрактного автомата Мили
121
Таблица 2.1
Условие перехода zi z1 z2
Состояния si s0 s1 s0
s1 s1 s2
s2 s2 s3
s3 s3 s4
s4 s4 s5
s5 s5 s6
s6 s6 s7
s7 s7 s1
Таблица 2.2
Выход Структура Входы, zi АА АА
wj
Рисунок 2.1 Рисунок 2.2
Состояния si s0
s1
s2
s3
s4
s5
s6
s7
–
w1
w2
w2
w2
w1
w2
w1
w1
z1 z2
w2 w1
w2 w2
w2 w2
w1 w1
w2 w2
w1 w1
w1 w1
w2 w2
2. В соответствии с п.3 алгоритма кодируем алфавиты входа, состояния и выхода полученных абстрактных автоматов (таблицы 2.3 – 2.5) и, таким образом, получаем описание конструируемого устройства в форме КА. Функции переходов и выходов КА записываем в виде таблиц 2.6 и 2.7 соответственно, а графы переходов и выходов, соответствующие двум логикам конечного автомата функционирования (логикам Мура и Мили), представляем так, как показано на рисунках 2.3 и 2.4 соответственно. Таблица 2.3
Входы zi z1 z2
122
Коды условий перехода КА 1 0
К
zi → u
Таблица 2.4
Состояния sk
К
s k →( x1 x2 x3 )k
Коды состояний КА
s0 s1 s2 s3 s4 s5 s6 s7
000 001 010 011 100 101 110 111 Таблица 2.5
Выходы w j
К
wj → y
Коды выхода КА
w1 w2
0 1
y
u
κ { s7 }
y u κ { s1 }
u
u ≡0 y ≡0 u ≡1 y ≡1 u y
u
u y κ { s6 } u
u
κ { s2 } u
κ { s0 }
u
u
y
κ { s3 }
u
κ { s5 }
y
u
u κ { s4 }
u
y
u
y
Рисунок 2.3. Модель НДДС в виде конечного автомата Мура
123
y u κ { s7 }
y u κ { s1 }
y
u
u
y
yu
κ { s2 }
u
y
κ { s6 }
u
κ { s0 }
y u
u
y
y
y
u ≡0 y ≡0 u ≡1 y ≡1
u
u
y y
κ { s3 }
u y
κ { s5 }
y
u
u y κ { s4 }
u
u
y
Рисунок 2.4. Модель НДДС в виде конечного автомата Мили Таблица 2.6
Входы ui 1 0
Состояния xi 000 001 000
001 001 010
010 010 011
011 011 100
100 100 101
101 101 110
110 110 111
111 111 001
Таблица 2.7
Выход Структура Входы, ui КА КА y
Рисунок 2.3 Рисунок 2.4
Состояния xi 000 001 010 011 100 101 110 111
–
0
1
1
1
0
1
0
0
1 0
1 0
1 1
1 1
0 0
1 1
0 0
0 0
1 1
3. В силу логики работы устройства (на его выходе должен формироваться сигнал по длительности кратный длительности тактов работы устройства) выбираем для реализации НДДС конечный автомат, функционирующий в автоматной логике Мура (рисунок 2.3).
124
4. Выбираем для реализации переменных состояния НДДС (рисунок 2.3) JK-триггеры. 5. Конструируем системы булевых функций: – функции µ возбуждения, формирующие сигналы vJ i и vK i возбуждения информационных входов триггеров в форме vJ 1 = u ( x1 x2 x3 ∨ x1 x2 x3 ∨ x1 x2 x3 ∨ x1 x2 x3 ) ∨ vJ 2 vJ 3
u ( x1 x2 x3 ∨ x1 x2 x3 ∨ x1 x2 x3 ∨ x1 x2 x3 ); = u ( x1 x2 x3 ∨ x1 x2 x3 ∨ x1 x2 x3 ∨ x1 x2 x3 ) ∨
u ( x1 x2 x3 ∨ x1 x2 x3 ∨ x1 x2 x3 ∨ x1 x2 x3 ); = u ( x1 x2 x3 ∨ x1 x2 x3 ∨ x1 x2 x3 ∨ x1 x2 x3 ) ∨
u ( x1 x2 x3 ∨ x1 x2 x3 ∨ x1 x2 x3 ∨ x1 x2 x3 ∨ x1 x2 x3 );
vK 1 = u x1 x2 x2 ; vK 2 = u ( x1 x2 x3 ∨ x1 x2 x3 ); vK 3 = u ( x1 x2 x3 ∨ x1 x2 x3 ∨ x1 x2 x3 );
и функции выхода в форме y = x1 x2 x3 ∨ x1 x2 x3 ∨ x1 x2 x3 ∨ x1 x2 x3 . Полученные в результате выполнения п.6 алгоритма булевы функции являются основой для схемотехнической реализации устройства. ■ Рассмотрим теперь возможности автоматного конструирования с использованием граф-схем алгоритмов функционирования ДДС, для построения ее нелинейного модельного представления «входсостояние выход» (ВСВ). Алгоритм 2.2 (А2.2) автоматного конструирования модельного представления (ВСВ) НДДС с использованием ГСА описаний
1. Сформулировать постановку задачи кодопреобразования, решаемой конструируемой ДДС. 2. Построить вербальную ГСА функционирования ДДС на основе ее словесного описания или анализа временной диаграммы с учетом того обстоятельства, что ГСА является направленным графом [8], использующим вершины трех типов: начальную/конечную операторную, рабочие операторные и условные.
125
В операторные вершины вписать вербальные конструкции в виде инфинитивов или отглагольных существительных, несущих информацию о необходимости выполнения конкретного действия, с учетом того, что начальная и конечная вершины имеют соответственно только выход или только вход, а рабочая операторная вершина имеет один вход и один выход; В условные вершины вписать словесные логические условия, с помощью которых осуществляется управление последовательностью действий проектируемой НДДС. Условные вершины имеют один вход и два выхода, причем если вершина моделирует процесс (состояние) ожидания выполнения условия, то один из ее выходов соединяется с ее входом. Проконтролировать корректность составленной ГСА путем проверки наличия хотя бы одной ветви с выхода произвольной вершины, ведущей к входу конечной вершины, и проверки отсутствия ветвей с выхода вершины графа к входам более чем одной вершины. При контроле дополнительно учесть, что ГСА допускает размещение одного и того же условия в различных условных вершинах графа и разрешает выполнение одного и того же действия в различных операторных вершинах графа. 3. Составить формальную версию ГСА путем замены вербальных конструкций операторных вершин на элементы алфавита высокого уровня w j , j = 0 , mW − 1 символьного представления действий (операций, команд), и вербальных конструкций, вписанных в условные вершины, на элементы zi , i = 1, rZ , алфавита символьного представления условий, имеющих бинарную реализацию. 4. «Погрузить» сформированную в п.3 алгоритма формальную версию ГСА конструируемой ДДС в среду абстрактных автоматов с учетом следующих обстоятельств. Если АА строится в автоматной логике абстрактного автомата Мура, то всем операторным вершинам w j присваиваются состояния sk +1 , причем начальная w0 и конечная wk =mW −1 вершины объединены в одну, которой присваивается состояние s1 . Если АА строится в автоматной логике абстрактного автомата Мили, то состояние s1 присваивается входу первой условной вершины, непосредственно следующей за началь-
126
ной операторной вершиной. Это же состояние присваивается конечной операторной вершине. Остальные состояния s k , k = 2, nS присваиваются входам всех условных вершин, непосредственно следующих за операторными вершинами графа. Обратить внимание на то, что АА, реализующий ГСА в логике автоматов Мура, характеризуется числом состояний nS , совпадающим с числом операторных вершин, в то время как АА, реализуемый в логики Мили, характеризуется числом состояний nS , в общем случае не совпадающим с числом операторных вершин, причем возможны такие ГСА, где число состояний меньше числа операторных вершин. На этапе погружения формальной ГСА в автоматную среду на паре автоматных логик Мили/Мура осуществить начальную минимизацию автоматной реализации НДДС. Зафиксировать результат погружения формальной версии ГСА в автоматную среду в форме АА, задаваемого с помощью макровектора (2.1) с функциями перехода и выхода в форме (2.2) – (2.4). 5. Выбрать автоматную логику функционирования АА и построить в выбранной логике граф переходов АА, в среду которого погружена формальная ГСА. 6. Выполнить п.п.3–7 алгоритма 2.1 применительно к АА в выбранной логике. ■ Примечание 2.2 (ПМ2.2). При выполнении п. 5 А2.2 в фазе кодирования следует отметить, что кодирование алфавитов состояния и выхода осуществляется в полном соответствии с п. 2 А2.1. Кодирование элементов алфавита Z следует осуществлять путем переобозначения в форме ui ≡ zi , i = 1, rZ , причем rZ и r связываются условием тождественного равенства, если указанный способ кодирования неосуществим, то следует воспользоваться схемой п.2 алгоритма 2.1. Данное примечание вызвано тем обстоятельством, что при построении формальной версии ГСА логические переменные zi в большинстве случаев имеют бинарную реализацию, то есть принадлежат полю Галуа GF ( 2 ) . □ Примечание 2.3 (ПМ2.3). При составлении БФ, предусмотренных п.5 алгоритма 2.1 применительно к конструированию функций возбуждения триггеров, они строятся в виде дизъюнкций основных конъюнкций, которые формируются на кодах исходных состояний x( k ) и управляющих сигналов, считываемых с условных вершин и связывающих исходное состояние с состоянием перехода x( k + 1) . БФ формирования выходов, в случае использования логики абстрактных авто-
127
матов Мура, конструируются посредством дизъюнкций основных конъюнкций, представляющих собой исходные состояния автомата. В случае использования абстрактных автоматов Мили булевы функции строятся по той же схеме, что и булевы функции возбуждения. □ Пример 2.2 (Пр2.2) Конструируется нелинейная ДДС, которая решает задачу кодопреобразования, отмеченные ГСА- описания которой для абстрактных автоматов Мили и Мура представлены на рисунках 2.5 и 2.6 соответственно. При этом требуется обеспечить максимальное быстродействие устройства.
w0 s1 0
z1 1
0 0
z2 1
z3 1
w1 s3
w2 0
z5
s2 z4 1
1
w4w5
w3w4 w0 Рисунок 2.5
128
0
s1
w0 0
z1 1
0 0
1
z3 1
w2 0
z2
s2
w1
s4
z5
0 1
z4 1
w3w4
w4w5
s5
w0
s1
s3
Рисунок 2.6
Решение поставленной задачи осуществляем с п.5 алгоритма: 1. Строим графы переходов и выхода описания функционирования устройства: для абстрактного автомата Мили – как показано на рисунке 2.7, для абстрактного автомата Мура – как показано на рисунке 2.8, при этом соответствующие им таблицы правила λ перехода и правила δ выхода запишутся в виде таблицы 2.8 и 2.9. В силу того, что характер решаемой задачи накладывают требование повышенного быстродействия на данное устройство, то принимаем логику функционирования конструируемого устройства в форме абстрактного автомата Мили.
129
Рисунок 2.7. Модель НДДС в логике абстрактного автомата Мили
Рисунок 2.8. Модель НДДС в логике абстрактного автомата Мура
130
Таблица 2.8
Условие перехода zi z1 z1 z 2 z1 z 2 z3 z4 Рисунок 2.7 z4 z5 z5 z1 z1 z 2 z1 z 2 z3 z4 Рисунок 2.8 z4 z5 z5 Структура АА
Состояния si
s1 s1 s3 s2 – – – – s1 s4 s2 – – – –
s2 – – – s1 s1 – – – – – s3 s1 – –
s3 – – – – – s1 s1 s3 s4 s2 – – – –
s4 – – – – – – – – – – – – s5 s1
s5 – – – – – – – s5 s4 s2 – – – – Таблица 2.9
Выход АА
wj
Структура АА
Рисунок 2.7
Рисунок 2.8
Входы zi
z1 z1 z 2 z1 z 2 z3 z4 z4 z5 z5 –
Состояния si
s1
s2
s3
s4
s5
w0 w1 w2 – – – –
– – – w0 w3 w4 w0 – –
– – – – – w0 w4 w5 w0
– – – – – – –
– – – – – – –
w0
w2
w0 w3 w4
w1
w0 w4 w5
131
Таблица 2.10
κ {s( k ) } κ {s( k + 1) } κ { z ( k ) }, ui κ { s1 ( k )} 00
00 01 11
κ { s3 ( k )} 01
00
κ { s 2 ( k )} 11
00
01 11
01 11
u1 u1 u 2 u1 u 2 u 3 u5 u5 – – u4 u4 – –
κ {w( k ) } 000 001 010 000 100 – – 000 011 – –
Возбуждаемые входы D триггеров
D1
D2 D2
– –
– –
– –
– –
Рисунок 2.9. Модель НДДС в виде конечного автомата Мили
2. Из структуры полученного графа (рисунок 2.7) видно, что мощность [ Z ] алфавита входа Z равна четырем, мощность [W ] алфавита выхода W равна шести и мощность [ S ] алфавита состояния S равна трем. В этой связи в соответствии с п.3 алгоритма 2.1 осуществляем переход к представлению
132
конструируемого устройства в виде КА, для чего выполняем кодирование указанных алфавитов и строим совмещенную таблицу 2.10 правила λ перехода и правила δ выхода. В соответствии c полученной таблицей строим граф (рисунок 2.9) переходов конструируемого устройства в виде КА. Для реализации ячеек памяти устройства будем использовать D-триггеры. В этой связи булевы функции µ возбуждения входов v i триггеров и формирования выхода y устройства примут вид: µ 1 = u1 u 2 u3 x1 x2 ; µ 2 = ( u1 u 2 ∨ u1 u 2 u 3 ) x1 x2 ; y1 = u 5 x1 x2 ; y 2 = u1u 2 u 3 x1 x2 ∨ u 4 x1 x2 ; y3 = u1u 2 x1 x2 ∨ u 4 x1 x2 . Полученные булевы функции могут быть положены в основу схемотехнической реализации конструируемого устройства. ■ В заключение следует отметить, что банк модельных описаний устройств дискретной автоматики и телемеханики с использованием средств автоматной логики, конструируемых на триаде «{каноническое автоматное представление с помощью ГСА} – {автоматная логика Мили/Мура} – {триггерная логика}», предоставляет разработчику широкие возможности минимизации сложности схемотехнической реализации структурного представления «блок памяти – комбинационная схема» ДДС. конструируемого устройства в виде КА, для чего выполняем кодирование указанных алфавитов и строим совмещенную таблицу 2.10 правила λ перехода и правила δ выхода. В соответствии c полученной таблицей строим граф (рисунок 2.9) переходов конструируемого устройства в виде КА. Для реализации ячеек памяти устройства будем использовать D-триггеры. В этой связи булевы функции µ возбуждения входов v i триггеров и формирования выхода y устройства примут вид: µ 1 = u1 u 2 u3 x1 x2 ; µ 2 = ( u1 u 2 ∨ u1 u 2 u 3 ) x1 x2 ; y1 = u 5 x1 x2 ; y 2 = u1u 2 u 3 x1 x2 ∨ u 4 x1 x2 ; y3 = u1u 2 x1 x2 ∨ u 4 x1 x2 .
133
Полученные булевы функции могут быть положены в основу схемотехнической реализации конструируемого устройства. ■ В заключение следует отметить, что банк модельных описаний устройств дискретной автоматики и телемеханики с использованием средств автоматной логики, конструируемых на триаде «{каноническое автоматное представление с помощью ГСА} – {автоматная логика Мили/Мура} – {триггерная логика}», предоставляет разработчику широкие возможности минимизации сложности схемотехнической реализации структурного представления «блок памяти – комбинационная схема» ДДС. 2.2. Построение дивидендных устройств помехозащитного кодопреобразования с помощью НДДС в логике произвольных триггеров
Рассмотренная в разделе 1 процедура конструирования линейных дивидендных устройств помехозащитного кодопреобразования (ДУПК) в форме ЛДДС опирается на векторно-матричный аппарат и имеет две фазы: кодирование и декодирование. Погружение в аппаратурную среду векторно-матричных описаний этих фаз в форме соответствующих ЛДДС дает для последних базовое представление в логике линейных D–триггеров [7, 42, 51], которое на основе концепции подобия (см. §1.4) может быть дополнено использованием линейных T– триггеров. Таким образом ДУПК в виде кодирующих и декодирующих устройств, реализованных в форме линейных ДДС, не выводит получаемые схемотехнические решения за пределы возможностей логики линейных триггеров. Решение задачи конструирования указанных устройств с использованием возможностей нелинейных ДДС в логике произвольных триггеров является предметом данного параграфа. Задача решается погружением линейного дивидендного кодирующего и декодирующего устройств в фазе, когда получено векторно-матричное представление правил перехода и выхода устройств, в автоматную среду, свободную от ограничения на тип используемой триггерной логики. Таким образом решение задачи достигается агрегированием алгоритмов линейного и автоматного синтеза ДДС помехозащитного кодирования и декодирования.
Алгоритм 2.3 (А2.3) 134
линейного синтеза дивидендного кодирующего устройствах помехозащитного кодопреобразования 1. Сформировать параметр k информационной части ( n, k ) -ПЗК на основании мощности [ Q ] = N и передаваемого информационного массива Q в силу соотношения
k = arg {2 k ≥ N и = [ Q ] }. 2. Сформировать по заданной корректирующей способности (в виде выполнения условия Pош ≤ Pдоп при вероятности p = max [ p01 , p10 ] искажения элементарного сигнала кода) помехозащищенного кода и способу ее реализации число m проверочных разрядов ( n, k ) -ПЗК с помощью соотношения s ⎧ ⎫ m = arg ⎨ N c = 2 m − 1 ≥ N ош = ∑ C(ik + m ) ⎬ , ⎩ ⎭ i =1 где N c – число синдромов, N ош – число ошибок, s – кратность исправляемой ошибки и выбрать неприводимый модулярный многочлен степени m в силу соотношения g ( x ) = arg { deg [ g ( x ) ] = m & d min [ g ( x ) ] = 2 s + 1 } в качестве образующего многочлена ПЗК. 3. Найти D - образ g ( d ) выбранного в п.2 алгоритма образующего ММ g ( x ) с учетом того, что все передачи кодов и модулярных многочленов в аппаратуре кодопреобразования ведутся старшим разрядом вперед, в силу соотношений ∆ g ( d ) =D { g ( x ) } = g~ x −1 , (2.13)
( )
где
x −1 = d
g~ ( x −1 ) : g ( x ) = x m g~ ( x −1 ) .
(2.14)
4. Вычислить передаточную функцию Φ ЦКУ ( d ) устройства деления модулярных многочленов (УДММ), в котором делителем является ММ g ( x ) так, что
Φ ЦКУ ( d ) = g −1 ( d ) .
(2.15) 5. Построить структурную реализацию передаточной функции (2.15) в одном из канонических базисов с использованием правила некасающихся контуров Мейсона [41] на m элементах памяти 1-го порядка с передаточной функцией Φ ЭП ( d ) = d так, чтобы матрица B входа УДММ определялась соотношением B T = κ { x m + g ( x ) }.
135
6. Разработать устройство коммутации (УК) цепей проектируемого циклического кодирующего устройства и агрегировать его с УДММ, источником помехонезащищенного кода и линейным устройством (ЛУ) канала связи, с тем, чтобы в течение первых k тактов с помощью УК информационная часть кода направлялась a( x ) x m в КС, а в УДММ формировался остаток r ( x ) = rest , где g( x) a( x ) – ММ помехонезащищенного кода, с которым совпадает информационная часть формируемого помехозащищенного кода, а в течение последних m тактов ЛУ канала связи подключалось к выходу УДММ, который с помощью УК на ( k + 1) -м такте преобразуется в регистр сдвига, хранящий остаток, выводимый через ЛУ в канал связи. 7. Присвоить, соблюдая порядок индексации, выходам элементов памяти состояния xi ( k ), i = 1,m , а их входам – xi ( k + 1) , что позволяет построить векторно-матричное описание функционирования циклического кодирующего устройства (ЦКУ), в течение первых k тактов записываемое как x( k + 1) = Ax( k ) + Bu ( k ); y ( k ) = Hu ( k ) , (2.16) и в течение последних m тактов как x( k + 1) = A x( k ); x( 0 ) = x( k ); y ( k ) = Cx( k ) , (2.17) где A, A – матрицы состояния размерности m × m , B – матрица входа, C – матрица выхода, H – матрица «вход-выход» УДММ. 8. Проверить правильность функционирования кодирующего устройства с помощью векторно-матричных описаний (2.16), (2.17).■ Процедура линейного синтеза устройства дивидендного декодирования представлена алгоритмом 2.4, особенность которого состоит в том, что синдром ошибки представляет собой вектор состояния циклического декодирующего устройства (ЦДУ), формируемый на последнем n -ом такте цикла деления. Алгоритм 2.4 (А2.4) линейного синтеза дивидендного декодирующего устройствах помехозащитного кодопреобразования
1. Выполнить п.п.1–2 алгоритма 2.3. 2. Сконструировать передаточную матрицу-столбец Φ ЦДУ ( d ) , описывающую функционирование конструируемой ДДС в форме УДММ, вида 136
Φ ЦДУ ( d ) = col {d m+1−i g −1 ( d ); i = 1,m} ,
(2.18)
принимая во внимание то обстоятельство, что выходом УДММ устройства декодирования является его вектор состояния. 3. Выполнить п.5 алгоритма 2.2 так, чтобы матрица B входа УДММ удовлетворяла равенству B T = H n , H n – последняя строка проверочной матрицы кода. 4. Следуя п.7 алгоритма 2.2, построить векторно-матричное описание ЦДУ в форме x( k + 1) = Ax( k ) + B f ( k ) , (2.19) где f ( k ) = y ( k ) + ξ ( k ) – кодовая последовательность, поступающая в декодирующее устройство из канала связи, в котором вектор состояния x по принятии n разрядов кода f ( k ) принимает значение синдрома E ошибки ξ ( k ) . 5. Спроектировать устройство формирования сигнала η коррекции (УФСК) искажений принятого из канала связи кода f ( k ) в зависимости от способа реализации корректирующей способности кода. 6. Проверить правильность функционирования декодирующего устройства с помощью векторно-матричного соотношения (2.19).■ С целью решения поставленной задачи построения дивидендных кодирующих и декодирующих устройств в логике произвольных триггеров выполним «погружение» векторно-матричных моделей (2.16), (2.17) и (2.19), задающих соответственно функции перехода и выхода ЦКУ и функцию перехода ДКУ, в автоматную среду. Содержательной базой такого погружения в автоматную среду является то обстоятельство, что кодирование алфавитов входа, состояния и выхода уже произведено при построении линейных векторно-матричных представлений (2.16), (2.17) и (2.19). Если эти векторно-матричные соотношения использовать для формирования таблиц функций перехода и выхода ЦКУ и ДКУ, то конструирование автоматного представления устройств циклического кодирования и декодирования получит форму конечного автомата (КА). Для случая помехозащитного кодирования в среде НДДС макровектор НДДС-ЦКУ автоматного описания ЦКУ принимает вид НДДС - ЦКУ : {U , X ,Y ,λ ,δ }, (2.20) где двухразрядный код U = [ u , u у ] имеет элементами старшего разряда элементы помехонезащищенного кода так, что u = uи , а младший разряд u у принимает значение «0» в течение первых k тактов работы ЦКУ, и значение «1» – в течение последних m тактов, при этом реали137
{
}
{
}
зация кода U в форме U = [ 1 1] невозможна; X = row xi , i = 1,m , Y = [ y ] имеют тот же смысл, что и в (2.16), (2.17); правила перехода λ и выхода δ определяются в силу (2.16) и (2.17). Следует заметить, что в силу (2.16), (2.17) макровектор (2.20) задает ЦКУ как конечный автомат в логике автоматов Мили. Макровектор НДДС-ЦДУ, описывающий циклическое декодирующее устройство в автоматной канонической форме, принимает вид НДДС - ЦДУ : {F , X , H ,λ ,δ }, (2.21) где одноразрядный код F = [ f ], m-разрядный код X = row xi , i = 1, m имеют тот же смысл, что и в (2.16), код H имеет разрядность l сигнала (кода) коррекции, которая равна единице ( l = 1 ) в режиме обнаружения ошибок и s ( l = s ) в режиме исправления ошибок информационной части кода; правило λ перехода определяется в силу (2.19), правило δ выхода задается в форме булевой l-мерной функции η = δ ( x), (2.22) что определяет ЦДУ как конечный автомат, функционирующий в автоматной логике Мура. Погружение процедуры помехозащитного кодопреобразования в автоматную среду в фазе кодирования в форме НДДС-ЦКУ (2.20) и в фазе декодирования НДДС-ЦДУ (2.21) может быть выполнено с использованием представленных ниже алгоритма 2.5 и алгоритма 2.6 соответственно.
138
Алгоритм 2.5 (А2.5) синтеза ЦКУ в форме НДДС в логике произвольных триггеров
1. Выполнить п.п.1–7 алгоритма 2.3. 2. Сформировать код входного алфавита КА (2.20) U = [ u , u у ]. 3. Выполнить п.2 алгоритма 2.1 и получить таблицу реализации функции перехода λ вида λ : x( k ) × U ( k ) ⇒ x( k + 1) НДДС0]; U = [1Μ 0] с использованием ЦКУ (2.20) для наборов U = [0Μ (2.16), для набора U = [0Μ 1] – с помощью (2.17). 4. Выполнить п.2 алгоритма 2.1 и построить таблицу реализации функции выхода δ : x( k ) × U ( k ) ⇒ y ( k ) НДДС-ЦКУ (2.20) для наборов U = [ 0 0 ] и U = [ 1 0 ] с использованием (2.16), для набора U = [ 0 1] – с помощью (2.17). 5. Выполнить п.п. 4–6 алгоритма 2.1. ■ Алгоритм 2.6 (А2.6) синтеза ЦДУ в форме НДДС в логике произвольных триггеров
1. Выполнить п.п.1–4 алгоритма 2.4. 2. Выполнить п.2 алгоритма 2.1 и построить совмещенную таблицу реализации функций перехода λ : x( k ) × F ( k ) ⇒ x( k + 1) и выхода δ : x( k ) ⇒ η ( k ) НДДС-ЦДУ (2.21) с помощью (2.19) и (2.22). 3. Выполнить п.п. 4–6 алгоритма 2.1. ■ Проиллюстрируем на примере процедуры синтеза двоичных устройств помехозащитного кодопреобразования в логике произвольных триггеров Пример 2.3 (Пр2.3)
Просинтезировать циклическое кодирующее устройство, формирующее помехозащищенный код (7, 4) с образующим многочленом g ( x ) = x 3 + x + 1 в форме НДДС в логике произвольных триггеров.
Решение поставленной задачи осуществляем с использованием алгоритма 2.5, в соответствии с которым осуществим: 1. Выполнение п.п. 1–7 алгоритма 2.3, которое дает структурное представление ЦКУ, приведенное на рисунке 2.10
139
Таблица 2.11
xT ( k )
000
001
010
011
x T ( k + 1)
U = [u , u у ]
y( k )
000 011 000 010 001 010 100 111 100 110 101 110
00 10 01 00 10 01 00 10 01 00 10 01
0 1 0 0 1 0 0 1 0 0 1 0
Возбуждаемые входы триггеров T RS
D
D2
D3
D2
JK
T2
T3
S2
S3
J2
J3
T2
T3
S2
R3
J2
K3
T2 T2
T3
S2 R2
R3
J2 K2
K3
D3 D2 D1 D1 D1 D1 D1
D2
D3
D2 D3 D2
T1 T1 T1 T1 T1 T1
T3 T2 T3 T2 T3
S1 S1 S1 S1 S1 S1
S3 R2 R3 R2 R3
J1 J1 J1 J1 J1 J1
J3 K2 K3 K2 K3
123
124 Таблица 2.11 (продолжение)
xT ( k )
100
101
110
111
x T ( k + 1)
U = [u , u у ]
y( k )
011 000 000 001 010 010 111 100 100 101 110 110
00 10 01 00 10 01 00 10 01 00 10 01
0 1 1 0 1 1 0 1 1 0 1 1
D D2
D3
D3
D1 D1 D1 D1 D1 D1
D2
D3
D3 D2 D2
Возбуждаемые входы триггеров T RS T1 T2 T3 R1 S2 S3 T1 R1 T1 R1 T1 R1 T1 T2 T3 R1 S2 R3 T1 T2 T3 R1 S2 R3 T3 S3 T2 R2 T2 R2 T2 R2 T3 R3 T3 R3
K1 K1 K1 K1 K1 K1
JK J2
J2 J2
J3
K3 K3 J3
K2 K2 K2 K3 K3
Рисунок 2.10
и характеризуется матричными компонентами описания (2.16) для первых k тактов ⎡0 1 0 ⎤ ⎡0 ⎤ A = ⎢ 1 0 1⎥ , H = [ 1]; B = ⎢1⎥ , ⎢⎣1 0 0 ⎥⎦ ⎢⎣1⎥⎦ для последних m тактов ⎡0 1 0 ⎤ A = ⎢0 0 1⎥ , C = [ 1 0 0 ]. ⎢⎣0 0 0 ⎥⎦ 2. Выполнение п.2 алгоритма, которое устанавливает соответствие u у = 0 при [ K 1, K 2 , K 3] = [ 1 0 1] и u у = 1 при
[ K 1, K 2 , K 3] = [ 0 1 0 ] . 3. Выполнение п.п.3, 4 алгоритма, которое дает совмещенную таблицу 2.11 реализации функций перехода λ : x( k ) × U ( k ) ⇒ x( k + 1) и выхода δ : x( k ) × U ( k ) ⇒ y ( k ) НДДС-ЦКУ (2.20) для наборов U = [ 0 0 ] и U = [ 1 0 ] с использованием (2.16), для набора U = [ 0 1] – с помощью (2.17), а также – возбуждения v( k ) = µ [ x( k ), x( k + 1) ] информационных входов D-, T-, RS- и JK-триггеров. 4. Выполнение п.п.4-6 алгоритма 2.1 с учетом таблицы 2.11 для триггеров JK– типа, возбуждаемые входы которых указаны в последних трех столбцах таблицы 2.11, которое дает систему булевых функций для формирования сигналов vJ i и vK i возбуждения информационных входов триггеров, а также – для выхода ЦКУ, задаваемых в форме:
126
vJ 1 = x1 x2 ( u у ∨ u у u ) , vJ 2 = u у u x2 ( x1 x3 ∨ x1 x3 ) ∨ u у u x2 x3 ∨ u у u x2 ( x1 x3 ∨ x1 x3 ) , vJ 3 = x1 x3 u у u ∨ x1 x3 u у u , vK 1 = x1 x2 ( u у ∨ u у u ) , vK 2 = u у u x2 ( x1 x3 ∨ x1 x3 ) ∨ u у u x2 x3 ∨ u у u x2 ( x1 x3 ∨ x1 x3 ) , vK 3 = x1 x3 u ∨ x1 x3 ( u у u ∨ u у u ) , y = u у u ∨ u у u x1 . ■ vJ 1 = x1 x2 ( u у ∨ u у u ) , vJ 2 = u у u x2 ( x1 x3 ∨ x1 x3 ) ∨ u у u x2 x3 ∨ u у u x2 ( x1 x3 ∨ x1 x3 ) , vJ 3 = x1 x3 u у u ∨ x1 x3 u у u , vK 1 = x1 x2 ( u у ∨ u у u ) , vK 2 = u у u x2 ( x1 x3 ∨ x1 x3 ) ∨ u у u x2 x3 ∨ u у u x2 ( x1 x3 ∨ x1 x3 ) , vK 3 = x1 x3 u ∨ x1 x3 ( u у u ∨ u у u ) , y = u у u ∨ u у u x1 . ■
2.3. НДДС в задачах коррекции искажений помехозащищенных кодов
Коррекция принятых из канала связи помехозащищенных средствами помехозащитного кодирования кодовых комбинаций является финальной фазой помехозащитного кодопреобразования перед передачей принятой информации в техническую среду получателя информации. Организация коррекции искажений принятой из КС кодовой комбинации определяется многими факторами, основными из которых являются: ⎯ метод формирования оценки искажения (матричный, не параметризованный дискретным временем, рассмотренный в параграфе 1.5, или дивидендный, построенный на линейных ДДС, рассмотренный в параграфах 1.7 и 2.2);
127
⎯ форма представления оценки искажения (в виде синдрома ошибки, характерного для обоих методов формирования оценки искажения, и квазисиндрома, характерного только для дивидендного метода формирования оценки искажения); ⎯ способ реализации корректирующей способности кода (в форме режима обнаружения ошибок или в форме режима исправления их); ⎯ кратность обнаруживаемой и исправленной ошибки. Указанные факторы, определяющие характер алгоритмической и технической реализации процесса коррекции искажения принятых из КС искаженных, прошедших помехозащитное кодопреобразование на передающей стороне, кодовых комбинаций, сведены в таблицу 2.12.
128
Дивидендный
Матричный
Таблица 2.12
Метод формирования оценки искажения кода
Форма представления оценки искажения кода
с канонической проверочной матрицей с модифицированной проверочной матрицей
Способ реализации корректирующей способности кода Обнаружение ошибок
Исправление ошибок
Синдром ошибки
Произвольной кратности r
Произвольной кратности s
Синдром ошибки
Произвольной кратности r
Произвольной кратности s
Синдром ошибки
Произвольной кратности r
Произвольной кратности s
Квазисиндром ошибки
––
Произвольной кратности s
Синдром ошибки
Произвольной кратности r
Произвольной кратности s
Квазисиндром ошибки
––
Произвольной кратности s
с канонической матрицей входа
с модифицированной матрицей входа
127
Рассмотрение задачи коррекции искажений в ПЗК, принятого из КС, которая содержательно сводится к формированию сигнала коррекции искажений проведем отдельно для матричного и дивидендного методов формирования синдромов ошибок. Для случая матричного метода формирования синдрома ошибки в поступившем из КС ПЗК процесс формирования сигнала η коррекции искаженного кода опирается на совместное использование векторно-матричных соотношений (1.146) и (1.151), в соответствие с которыми для синдрома E вектора искажения ξ в принятом коде f = y + ξ можно записать E = f H, E =ξ H . (2.23) Если корректирующие способности ПЗК реализуются в форме режима обнаружения ошибок, то независимо от их кратности r сигнал η коррекции является скалярным и формируется как дизъюнкция элементов синдрома E = [Em Em−1 Κ E1 ] = row Ei ; i = m ,1 , (2.24) который сформирован с помощью системы проверочных равенств, построенных в силу первого векторно-матричного соотношения (2.23) так, что для сигнала η можно записать
{
η=
1
∨
i=m
Ei .
}
(2.25)
Для режима обнаружения сигнал η коррекции искаженного ПЗК представляет собой квитанцию, которая используется для обнуления состояния сдвигового регистра хранения принятого из КС искаженного ПЗК и формирования запроса на передающую сторону на повторение передачи кодовой комбинации. Синдром E и сигнал η коррекции формируются на n -ом такте приема ПЗК из КС, где n – число разрядов помехозащищенного ( n, k ) -кода так, что отмеченное обстоятельство приводит к представлению сигнала η в форме
η = ⎛⎜
1
⎞
∨ E i ⎟ & C ( n ), ⎝ i=m ⎠
(2.26)
где C ( n ) – синхросигнал, подаваемый на вход конъюнктора на n -ом такте; ∨ , & – символы дизъюнкции и конъюнкции соответственно. Если корректирующие способности ПЗК реализуются в форме режима исправления, то сигнал η коррекции становится векторным и представляет собой n -мерную вектор-строку, который содержит s единиц так, что при правильно сформированных параметрах ( n, k ) ПЗК для помеховой обстановки в КС выполняется соотношение η =ξ . (2.27)
142
Математически векторный сигнал η коррекции искажений в принятом ПЗК в силу (2.26) и (2.23) может быть сформирован в силу соотношения (2.28) η = EH+ где H + – матрица псевдообратная проверочной матрице H . На практике, как и в случае формирования синдрома E , при котором от векторно-матричного соотношения E = f H переходят к системе проверочных равенств, являющихся аналитической основой построения линейного шифратора, на выходе которого образуется синдром, при формировании векторного сигнала η коррекции принятого ПЗК приходится использовать тот же прием. В результате полученной системы η j = η j { E = [Em Em−1 Κ E1 ]}; j = n ,1 , (2.29) конструируется синдромный дешифратор, на вход которого подается синдром E , а на его выходной шине – наблюдается векторный сигнал коррекции η = row η j ; j = n ,1 . Алгоритм формирования сигналов коррекции (2.29) для случая произвольной кратности s исправляемого искажения принимает вид
{
}
Алгоритм 2.7 (А2.7) формирования векторного сигнала коррекции искажения произвольной кратности s принятого из КС ПЗК 1. На основе проверочной матрицы H (канонической или модифицированной путем перестановки столбцов или циклической перестановки строк исходной канонической) помехозащищенного кода построить в силу второго уравнения (2.23) с учетом (2.27) таблицу истинности для формирования компонентов η = row η j ; j = n ,1 векторного сигнала η коррекции искажений с ошибками только первой кратности на наборах булевых переменных, определяемых синдромами E = [E m E m−1 Κ E1 ] од-
{
}
нократных ошибок. 2. Памятуя о том, что при формировании проверочной матрицы H ПЗК, способного исправлять искажения с ошибками в s разрядах так, чтобы выполнялось второе векторно-матричное соотношение (2.23) и при этом формировался синдром E ( s ) равный сумме по mod 2 s синдромов однократных ошибок, сформировать на основе таблицы истинности БФ η j = η j ( E ) , полученной выполнением п.1 алгоритма, полную таблицу истинности путем суммирования на все сочетания синдромов однократных ошибок
143
и векторов ξ помех по mod 2 с тем, чтобы мощность каждой суммы составила величину s
N ош = N с = ∑ C ni .
(2.30)
i =1
3. Пользуясь таблицей истинности, сформированной в п.2 алгоритма, составить систему булевых функций в дизъюнктивной совершенной нормальной форме (ДСНФ) тех синдромов, на которых j -й компонент η j вектора η = row η j ; j = n ,1 сигнала коррекции принимает единичное значение 1 ~ η j = ∨ ⎛⎜ & E i ⎞⎟ ; j = n ,1 , (2.31) ⎝ i=m ⎠ где символ ~ принимает смысл символа инверсии ( – ), если E i = 0 , и смысл пустого символа, если E i = 1 . 4. Пользуясь системой булевых аналитических выражений (2.31) построить схемотехническую реализацию синдромного дешифратора (СД) E = [E m E m−1 Κ E1 ] , формирующего на выходной
{
}
шине векторный сигнал η = [η n η n−1 Κ η1 ] коррекции принятого из КС ПЗК. ■ При этом следует иметь в виду, что если осуществлять коррекцию только информационной части ПЗК, то синдромный дешифратор может быть сокращен в схемотехнической реализации, где выходная шина СД будет иметь только k линий, на которых будет сформирован k разрядный сигнал коррекции информационной части ПЗК 1 ~ ⎫ ⎧ ⎛ η = row ⎨ η j = ∨ ⎜ & E i ⎞⎟ ; j = n , n − m ⎬ . (2.32) ⎝ i=m ⎠ ⎭ ⎩ Следует заметить, что формы (2.31) и (2.32) являются нелинейным представлением линейного векторно-матричного соотношения (2.28). Для осуществления коррекции информационной части (ИЧК) принятого из КС ПЗК сдвиговый регистр хранения последнего должен быть дополнен устройством коррекции кода (УКК). Это устройство представляет собой линейку сумматоров по модулю два, входы которых подключены к выходам триггеров регистра хранения принятого из КС ПЗК, находящихся в состоянии f j , j = 1,n , и к выходным шинам синдромного дешифратора, на которых формируется сигнал η j , j = 1,n коррекции. Откорректированная информационная часть кода y = row y j = f j + η j ; j = 1,n − m (2.33) переписывается в рабочий регистр хранения пользовательской технической среды для дальнейшего использования содержащейся в ИЧК информации.
{
144
}
Необходимо отметить, что формирование сигнала (2.32) принятого из КС ПЗК осуществляется как в случае обнаружения на n -ом такте, в силу чего реализационная версия сигналов коррекции (2.31) и (2.32) принимают вид 1 ~ ⎧ ⎫ η = row ⎨ η j = ∨ ⎛⎜ & E i & C ( n ) ⎞⎟ ; j = n , n − m ⎬ . (2.34) ⎝ i=m ⎠ ⎩ ⎭ При формировании сигналов коррекции в форме (2.34) учитывается то обстоятельство, что m < n = k + m .
(
)
Пример 2.4 (Пр2.4)
Проиллюстрируем процедуру формирования сигнала коррекции информационной части ПЗК на примере кода ( 8, 2 ) , исправляющий ошибки кратности s = 1 и s = 2 . Тогда следуя А2.7: 1. Составим таблицу истинности для формирования сигналов коррекции ошибок первой кратности на основании проверочной матрицы кода ( 8, 2 ) , имеющей представление ⎡1 1 0 0 1 1⎤ ⎢1 0 0 0 0 0 ⎥ ⎢0 1 0 0 0 0 ⎥ ⎢ ⎥ H = ⎢0 0 1 1 1 1⎥ . 0 0 10 0 0 ⎢0 0 0 1 0 0 ⎥ ⎢0 0 0 0 1 0 ⎥ ⎢⎣0 0 0 0 0 1⎥⎦ Сформируем синдромы однократных ошибок в силу второго соотношения (2.23), принимающего вид [E6 E5 E4 E3 E 2 E1 ] = [ξ 8 ξ7 ξ 6 ξ 5 ξ 4 ξ 3 ξ 2 ξ 1 ] H . Сигналы коррекции ошибок первой кратности получим, положив η j = ξ j ; j = 8 ,1 . Эта таблица истинности составляет первые восемь строк таблицы 2.13. 2. Образуем двукратные ошибки путем суммирования по модулю два двух однократных ошибок и сформируем соответствующие им синдромы путем суммирования по модулю два двух синдромов однократных ошибок. Результаты выполнения п.п.1,2 алгоритма сведены в таблицу 2.13. 3. На основе таблицы 2.13 оставим булевы представления сигналов η8 и η 5 коррекции искажений в информационных (8-м и 5-м) разрядах кода ( 8, 2) , которые принимают вид η 8 = E6 E5 E4 E3 E2 E1 ∨ E6 E5 E4 E3 E2 E1 ∨ E6 E5 E4 E3 E2 E1 ∨
E6 E5 E4 E3 E2 E1 ∨ E6 E5 E4 E3 E2 E1 ∨ E6 E5 E4 E3 E2 E1 ∨ E6 E5 E4 E3 E2 E1 ;
145
η 5 = E6 E 5 E 4 E 3 E 2 E1 ∨ E6 E 5 E 4 E 3 E 2 E1 ∨ E6 E 5 E 4 E 3 E 2 E1 ∨ E6 E5 E4 E3 E2 E1 ∨ E6 E5 E4 E3 E2 E1 ∨ E6 E5 E4 E3 E2 E1 ∨ ■ E6 E5 E4 E3 E2 E1 ∨ E6 E5 E4 E3 E2 E1 Таблица 2.13
E6 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0
146
E5 1 0 1 0 0 0 0 0 1 0 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 0 0 0 0
E4 0 0 0 1 1 0 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 1 1 0 0 0 0 1 1 1
E3 0 0 0 1 0 1 0 0 0 0 1 0 1 0 0 0 1 0 1 0 0 1 0 1 0 0 1 0 1 1
E2 1 0 0 1 0 0 1 0 1 1 0 1 1 0 1 0 1 0 0 1 0 1 0 0 1 0 1 1 0 1
E1 1 0 0 1 0 0 0 1 1 1 0 1 1 1 0 0 1 0 0 0 1 1 0 0 0 1 1 1 1 0
η8
η7
η6
η5
η4
η3
η2
η1
1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0
0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 1 1 1 1 0 0 0 0
0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1 1 1
0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0
0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0
0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0
0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 0 0 1
Таблица 2.13 (Продолжение)
E6 0 0 0 0 0 0
E5 0 0 0 0 0 0
E4 1 1 1 0 0 0
E3 1 0 0 1 1 0
E2 0 1 0 1 0 1
E1 0 0 1 0 1 1
η8
η7
η6
η5
η4
η3
η2
η1
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
1 1 1 0 0 0
1 0 0 1 1 0
0 1 0 1 0 1
0 0 1 0 1 1
Для случая дивидендного метода формирования оценки искажения ПЗК решение поставленной задачи начнем с утверждения. Утверждение 2.1 (У2.1). Пусть процесс дивидендного декодирования ПЗК, принятого из КС, осуществляется декодирующем устройством, имеющим векторно-матричное описание, параметризованное дискретным временем k , записываемое в форме (2.35) x ( k + 1) = A x ( k ) + B u ( k ) , x ( 0 ) ≡ 0 , где dim x = m , dim u = 1 , dim A = ( m × m ) , dim B = ( m × 1) , причем характеристический полином матрицы A состояния (2.35) удовлетворяет цепочке равенств D( λ ) = det ( λI + A) = g ( x ) x=λ , (2.36)
где g ( x ) – образующий модулярный многочлен ПЗК, deg g ( x ) = m , при этом степень m выбрана из условия исправления ошибок кратности s так, что s ⎧ ⎫ m = arg ⎨ N c = 2 m − 1 ≥ N ош = ∑ C(ik + m ) ⎬ , (2.37) ⎩ i =1 ⎭ где N c , N ош – соответственно число синдромов и ошибок вплоть до кратности s , тогда синдром однократной ошибки в λ-ом разряде в помехозащищенном ( n, k ) -коде формируется на n -ом такте процесса деления в форме E = x T ( n ) = ( A λ−1 B ) . □ (2.38) Доказательство. Для доказательства утверждения рассмотрим случай, когда по КС передается нулевой ПЗК y ( k ) = 0 так, что из КС принимается кодовая последовательность f ( k ) = y( k ) + ξ ( k ) = ξ ( k ) . (2.39) В силу того, что n -мерный вектор искажения по условиям утверждения имеет единицу только в λ -ом разряде, то он имеет представление ξ = [ξ n = 0;ξ n−1 = 0;Κ ;ξ n−λ+1 = 0;ξ n−λ = 1;ξ n−λ−1 = 0;Κ ;ξ 1 = 0 ] . (2.40) T
147
Вектор (2.40), записанный в виде кодовой последовательности ξ ( k ) имеет вид ξ ( k ) : ξ ( 0 ) = 0;ξ ( 1) = 0;Κ ;ξ ( n − λ − 1) = 0;ξ ( n − λ) = 1;
ξ ( n − λ + 1) = 0;Κ ;ξ ( n − 1) = 0 .
(2.41) Рассмотрим суммарную версию ЛДДС (2.35) при входной последовательности u ( k ) = ξ ( k ) , тогда на основании (1.25) с учетом x( 0 ) ≡ 0 , а также вида (2.41) входной последовательности получим
x( n ) = A n−1 B u ( 0 ) + A n−2 B u ( 1) + Κ + A n−1−( n−λ ) B u ( n − λ) + Κ Κ + B u ( n − 1) = A n−λ B . ■ (2.42) Выражение (2.42) по существу содержит доказательство следующего утверждения. Утверждение 2.2 (У2.2). Если принятый из КС ПЗК характеризуется искажениями в µ -ом и ν -ом и т.д. ρ -ом разрядах, то сформированный на n -ом такте деления синдром E ошибки ξ имеет вид
E T = ( x( n ) = A µ −1 B + Aν −1 B + Κ + A ρ −1 B ) . ■ (2.43) С целью дальнейших исследований сформулируем и докажем следующее утверждение. Утверждение 2.3 (У2.3). Пусть процесс деления в дивидендном декодирующем устройстве (2.35) продолжается в течение ( t + 1) циклов длительностью n тактов, тогда, если принятый из КС ПЗК f = y + ξ характеризуется искажением в µ -ом и ν -ом и т.д. ρ -ом разрядах, то на каждом цикле деления на каждом такте кратном n = dim f будут формировать синдром E ошибок ξ в форме T
E T = ( x( n t ) = A µ −1 B + Aν −1 B + Κ + A ρ −1 B ) . □ (2.44) Доказательство утверждения строится на том, что при k > n u ( k ) = f ( k ) ≡ 0 , поэтому процессы при k > n в ЛДДС (2.34) декодирующего устройства будут описываться векторно-матричным выражением x ( k + 1) = A x ( k ); x( n ) = A µ −1 B + Aν −1 B + Κ + A ρ −1 B , (2.45) что для k = n t позволяет записать (2.46) x ( k = n t ) = A ( t-1) n x ( n ) . Если теперь учесть, что матрица A с характеристическим полиномом D( λ ) = g ( x ) x=λ , принадлежащим показателю n , принадлежит показателю n так, что для нее можно записать An = I , (2.47) откуда следует и выполнение матричного равенства (2.48) A ( t-1) n = I . T
148
Соотношение (2.48) совместно с (2.46) и (2.45) приводят к (2.44). ■ И, наконец, сформулируем и докажем еще одно утверждение. Утверждение 2.4 (У2.4). Пусть принятый из КС ПЗК f = y + ξ характеризуется искажением в λ-ом разряде, тогда, если в дивидендном декодирующем устройстве (2.35) процесс деления продолжается в течение ( t + 1) циклов длительностью n тактов, тогда при ~ k = n t + æ , где æ = n − λ + 1 будет формироваться квазисиндром E ошибки ξ в форме ~ E = BT . □ (2.49) Доказательство. Учтем, что при k > n ЛДДС (2.35) дивидендного декодирующего устройства описывается векторно-матричным соотношением (2.50) x ( k + 1) = A x ( k ) , x ( n ) , где x ( n ) для случая однократной ошибки в λ -ом разряде имеет вид (2.42). Тогда для момента k = n t + æ , где æ = n − λ + 1 можно записать (2.51) x ( k = n t + æ ) = A ( t-1) n+ æ x ( n ) = A æ A λ−1 B . Тогда равенство x ( n t + æ ) = B выполняется при æ = n − λ + 1 . ■ Возвращаясь к проблеме коррекции искажений ПЗК, принятого из КС, с использованием синдромов E , которые формируются в моменты k = n t следует заметить, что организация коррекции как в режиме обнаружения, так и в режиме исправления полностью совпадает со случаем матричного метода формирования оценки искажения ПЗК. Так в случае реализации корректирующей способности циклического ПЗК скалярный сигнал η коррекции, который представляет собой квитанцию, формируется на n -ом такте размещения ПЗК в сдвиговом регистре деления и процесса деления в регистре деления дивидендного ДКУ, формируется в силу (2.25). В случае реализации корректирующей способности циклического ПЗК векторный сигнал η = row η j ; j = n ,1 коррекции формируется в соответствии с алгоритмом 2.7, который следует модифицировать с учетом специфики формирования проверочной матрицы H кода. Тогда процесс формирования векторного сигнала η = row η j ; j = n ,1 коррекции для дивидендного метода его формирования может быть представлен следующим алгоритмом.
{
}
{
}
149
Алгоритм 2.8 (А2.8) формирования векторного сигнала коррекции искажения произвольной кратности s принятого из КС ПЗК 1. Построить проверочную матрицу H ПЗК, исправляющего искажения кратности s в форме
[
]
T
H = A n −1 B A n−2 B Κ AB B (2.52) 2. Выполнить п.п. 1–4 А2.7. ■ Как и в случае матричного метода формирования оценки искажения ПЗК целесообразно ограничиться коррекцией искажений только в ИЧК, при этом сигнал коррекции формируется нелинейным способом в форме (2.33). Особняком в дивидендном методе формирования оценки искаже~ ния ПЗК стоит задача коррекции кода с помощью квазисиндрома E вида (2.49). Квазисиндром может быть использован только в режиме исправления. При его использовании скалярный сигнал коррекции η формируется в силу соотношения 1 1 ~ η ( k = ( t + 1 ) n − λ + 1 ) = & E i = & B iT ; t = 1 , 2 ,Κ (2.53) i=m
i=m
Коррекция искажений с помощью сигнала коррекции (2.53) требует организации сдвигового вывода ПЗК из сдвигового регистра хранения кода в дополнительный регистр сдвига или перевода приемного регистра в режим кольцевого регистра сдвига на n -ом такте деления. На выходе приемного регистра сдвига должен быть включен сумматор по модулю два, выполняющий функции устройства коррекции ПЗК, на один вход которого подается искаженный ПЗК, а на другой – сигнал коррекции (2.53), на выходе которого наблюдается откорректированный код.
Алгоритм 2.8 (А2.8) формирования векторного сигнала коррекции искажения произвольной кратности s принятого из КС ПЗК 3. Построить проверочную матрицу H ПЗК, исправляющего искажения кратности s в форме
[
]
T
H = A n −1 B A n−2 B Κ AB B (2.52) 4. Выполнить п.п. 1–4 А2.7. ■ Как и в случае матричного метода формирования оценки искажения ПЗК целесообразно ограничиться коррекцией искажений только в
150
ИЧК, при этом сигнал коррекции формируется нелинейным способом в форме (2.33). Особняком в дивидендном методе формирования оценки искаже~ ния ПЗК стоит задача коррекции кода с помощью квазисиндрома E вида (2.49). Квазисиндром может быть использован только в режиме исправления. При его использовании скалярный сигнал коррекции η формируется в силу соотношения 1 1 ~ η ( k = ( t + 1 ) n − λ + 1 ) = & E i = & B iT ; t = 1 , 2 ,Κ (2.53) i=m
i=m
Коррекция искажений с помощью сигнала коррекции (2.53) требует организации сдвигового вывода ПЗК из сдвигового регистра хранения кода в дополнительный регистр сдвига или перевода приемного регистра в режим кольцевого регистра сдвига на n -ом такте деления. На выходе приемного регистра сдвига должен быть включен сумматор по модулю два, выполняющий функции устройства коррекции ПЗК, на один вход которого подается искаженный ПЗК, а на другой – сигнал коррекции (2.53), на выходе которого наблюдается откорректированный код. 2.4. Дивидендные кодирующие и декодирующие устройства укороченных циклических кодов с коммутируемой структурой
Проблема укороченных кодов состоит в реализации возможности сокращения аппаратурных затрат при использовании матричного метода помехозащитного кодирования и декодирования, не параметризованных дискретным временем, и сокращения временных затрат при использовании для тех же целей дивидендного метода. Проблема укороченных кодов возникает, когда в силу целочисленности числа m проверочных разрядов это число оказывается одним и тем же для числа разрядов k помехозащищенного кода a и для случая числа разрядов k1 < k кода a . Это означает, что два соотношения при заданных помеховой среде в КС и требованиях к достоверности передачи соотношения s ⎧ ⎫ m = arg ⎨ N c = 2 m − 1 ≥ N ош = ∑ C ni =m+ k ⎬ , (2.54) ⎩ i =1 ⎭ s ⎧ ⎫ m1 = arg ⎨ N c = 2 m 1 − 1 ≥ N ош = ∑ C ni 1=m 1+ k 1 ⎬ (2.55) ⎩ i =1 ⎭ дают один и тот же результат так, что выполняется равенство m1 = m . (2.56)
151
Как следствие в случае решения задачи помехозащитного кодопреобразования средствами циклического кодирования и декодирования укороченный помехозащищенный (n1 , k1 ) -код, где n1 = k1 + m , будет иметь тот же образующий ММ g ( x ) с deg g ( x ) = m , что и (n, k ) -ПЗК, где n = k + m , при этом g ( x ) принадлежит показателю n . Если задача помехозащитного кодопреобразования укороченного (n1 , k1 )-ПЗК решается матричными методами, то помехозащитное кодопреобразование может быть осуществлено с использованием редуцированной образующей матрицы G , а помехозащитное декодирование может быть осуществлено с использованием редуцированной проверочной матрицы H (n, k ) -помехозащищенного кода. Редуцирование образующей матрицы G осуществляется вычеркиванием ( k − k1 ) первых столбцов и первых строк этой матрицы, в результате чего формируется образующая ( k1 × (n1 = k1 + m )) -матрица G(n 1, k 1 ) ПЗК (n1 , k1 ) с
тем же числом проверочных разрядов, что и код (n, k ) . Редуцирование матрицы H осуществляется вычеркиванием ( k − k1 ) первых строк этой матрицы, в результате чего формируется проверочная (n1 , m ) матрица H (n 1, k 1 ) ПЗК (n1 , k1 ) , которая при декодировании будет формировать синдромы той же размерности m , что и в случае декодирования (n, k ) -ПЗК с помощью матрицы H . В связи с тем, что при практической реализации матричного метода помехозащитных процедур кодирования и декодирования от матриц ПЗК переходят к системе линейных скалярных соотношений для кодирования и проверочных соотношений для декодирования редуцирование матриц G и H не приводит к уменьшению числа этих соотношений. Сокращается лишь число аддитивных членов в них, что в итоге приводит к уменьшению аппаратурного состава устройств кодирования и декодирования на число ( k − k1 ) сумматоров по модулю два.
152
При дивидендном методе помехозащитного кодопреобразования укороченных кодов имеет место следующая картина. Аппаратурно в кодирующем устройстве с точностью до изменения момента коммутации в устройстве деления модулярных многочленов, когда оно переводится в режим регистра сдвига для вывода в КС остатка от деления, ничего не меняется. В декодирующем устройстве, если не предпринять специальных структурных мер, появляется временнáя избыточность, состоящая в том, что при n1 < n так, как образующий ММ g ( x ) укороченного (n1 , k1 ) -кода и (n, k ) -ПЗК один и тот же, причем он принадлежит показателю n , а не n1 , то есть она оказывается большей длины укороченного (n1 , k1 ) -кода. Более того, «квазисиндром» искаженного укороченного кода по своему положению на временной оси на повторных циклах деления перестает быть согласованным с искаженным разрядом укороченного кода (УПЗК). Таким образом корректирующие возможности (n1 , k1 ) -ПЗК оказываются представленными только синдромом, квазисиндром перестает быть опознавателем ошибки. Однако корректирующие возможности (n1 , k1 ) -ПЗК могут быть расширены до возможностей (n, k ) -ПЗК, если сделать цикл деления равный длительности n1 (n1 , k1 ) -ПЗК. Эта задача решается, если базовую векторноматричную модель ДКУ (2.57) x ( k + 1) = A x ( k ) + B u ( k ) , x ( 0 ) ≡ 0 , дополнить цепями коммутации структуры цикла деления так, что векторно-матричная модель ДКУ укороченного (n1 , k1 ) -ПЗК принимает вид x ( k + 1) = A x ( k ) + B u ( k ) + Bк 1 u к 1 + Bк 2 u к 2 , x ( 0 ) ≡ 0 . (2.58) В (2.58) сигналы коммутации принимают значение u к 1 = 1, u к 2 = 0 когда u ( k ) = f ( k ) – принимаемая из КС искаженная кодовая комбинация в момент коммутации характеризуется равенством u ( k ) = 0 , и u к 1 = 0 , u к 2 = 1 – когда u ( k ) в момент коммутации характеризуется равенством u ( k ) = 1 . В связи со сказанным матрицы Bк 1 и Bк 2 можно сформировать, опираясь на положения следующего утверждения. Утверждение 2.5 (У2.5). Для того, чтобы цикл деления при декодировании укороченного (n1 , k1 ) -ПЗК дивидендным методом был бы согласован с редуцированной на ( n − n1 ) первых строк проверочной матрицей достаточно, чтобы матрицы входа Bк 1 и Bк 2 для коммутирующих сигналов u к1 и u к 2 имели вид (2.59) Bк 1 = ( I + A n 1 ) B , n1 (2.60) Bк 2 = A B . □
153
Доказательство утверждения начнем со случая, когда u ( k ) = 0 , u к 1 = 1 и u к 2 = 0 . Для этого случая модельное представление (2.58) примет вид (2.61) x ( k + 1) = A x ( k ) + Bк 1 , где x ( k ) и x ( k + 1) с точностью до транспонирования должна совпадать соответственно с первой и последней строками редуцированной проверочной матрицей (n1 , k1 ) -ПЗК так, что выполняются равенства (2.62) x ( k ) = H (Tn-n 1 +1 ) ,
но H (Tn-n 1 +1 ) = A
n 1 −1
B ; H nT = B .
(2.63)
Подстановка (2.62) в (2.61) с учетом (2.63) приводит к (2.59). Рассмотрим теперь случай, когда u ( k ) = 1 , u к 1 = 0 и u к 2 = 1 . В этом случае модель ДКУ (2.58) принимает вид (2.64) x ( k + 1) = A x ( k ) + B + Bк 2 . Подстановка в (2.64) соотношений (2.62) с учетом (2.63) приводит к (2.60). ■ Следует заметить, что сигналы u к1 и u к 2 коммутации дивидендного декодирующего устройства формируются в форме конъюнкций (2.65) u к1 = u к u ( k ) , u к 2 = u к u ( k ) , где сигнал u к формируется, как основная конъюнкция набора переменных, задаваемых элементами вектора x состояния ДКУ, удовлетворяющего соотношению n −1 (2.66) x= A 1 B. Дивидендное декодирующее устройство (2.58) для декодирования укороченных (n1 , k1 ) -ПЗК формирует синдромы E ошибок в моменты k = n1 ( t + 1) + ( n1 + 1 − λ) при искажении ПЗК в λ -ом разряде при передаче по каналу связи при ( t + 1) -циклах деления длительностью n1 . Полученные результаты по синтезу дивидендного декодирующего устройства УПЗК с коммутируемой структурой цикла деления, обеспечивающей корректирующие возможности помехозащищенного кода в форме синдромов и квазисиндромов искажений можно представить в виде следующего алгоритма.
Алгоритм 2.9 (А2.9) конструирования дивидендного декодирующего устройства с коммутируемой структурой 1. Сформировать параметр k1 информационной части ПЗК в силу соотношения
154
{
}
k1 = arg 2 1 ≥ [ Q] = N и , где [ Q ] = N и – мощность информационного массива Q . 2. Сформировать параметр m проверочной части ПЗК в силу (2.54)–(2.56). 3. Выбрать образующий модулярный многочлен g ( x ) степени deg g ( x ) = m и определить показатель n , к которому принадлежит g ( x ) . k
xi , i = 1,n − 1 сформировать 4. С помощью остатков ri ( x ) = rest g( x) проверочную H и образующую G матрицы ( n , k = n − m ) помехозащищенного кода. 5. Построить редуцированные проверочную и образующую матрицы ( n, k = n − m ) -УПЗК. 6. Вычислить -образ g ( d ) образующего ММ g ( x ) . 7. Вычислить передаточную функцию Φ ( d ) устройства деления модулярных многочленов в форме Φ ( d ) = g −1 ( d ) . 8. Построить структурное представление передаточной функции Φ ( d ) = g −1 ( d ) в таком сопровождающем базисе, в котором матрица информационного входа B удовлетворяла второму условию в (2.63). 9. Построить векторно-матричное представление ДКУ в форме (2.57). 10. Построить векторно-матричное представление ДКУ с коммутируемой структурой в форме (2.58), сформировав матрицы Bк 1 и Bк 2 коммутирующих входов в форме (2.59), (2.60). 11. Дополнить ДКУ с векторно-матричным представлением (2.58) цепями формирования сигналов коммутации u к1 и u к 2 с помощью булевых функций (2.65). 12. Сформировать цепи вывода из ДКУ синдрома E и квазисин~ дрома E . ■
D
Пример 2.5 (Пр2.5) Для иллюстрации полученных результатов рассмотрим процедуру синтеза ДКУ с коммутируемой структурой на примере укороченного (n1 , k1 ) = (5, 2) -кода, построенного на базе (n, k )-кода (7, 4) , сформированного с помощью образующего ММ g ( x ) = x 3 + x + 1 и обладающего образующей и проверочной матрицами
155
~ E
u (k )
u к1
uк 2 uк
C ( n1 ) = C ( 5)
x1 ( k ) C ( n1 ) = E3 x2 ( k ) C ( n1 ) = E2 x3 ( k ) C ( n1 ) = E1
E T = [E3 E2 E1 ]
T
Рисунок 2.11. Структурная схема ДКУ
T ⎡ 1 0 0 0 1 0 1⎤ 1 1 1 0 1 0 0⎤ ⎡ 0 1 0 0 1 1 1 ⎥ ; H T = ⎢0 1 1 1 0 1 0 ⎥ G=⎢ ⎢0 0 1 0 1 1 0 ⎥ ⎢⎣1 1 0 1 0 0 1⎥⎦ ⎢⎣0 0 0 1 0 1 1⎥⎦ Следуя А2.9 получим: ⎯ редуцированные образующую G ( 5 ,2 ) и проверочную H ( 5 , 2 ) мат-
рицы (5, 2 ) -УПЗК в форме
⎡1 0 1 0 0 ⎤ 1 0 1 1 0 T ⎡ ⎤ G ( 5 ,2 ) = ; H ( 5 , 2 ) = ⎢1 1 0 1 0 ⎥ ; ⎢⎣0 1 0 1 1⎦⎥ ⎢⎣0 1 0 0 1⎥⎦ ⎯ векторно-матричное представление ДКУ (2.57) с матрицами ⎡0 1 0 ⎤ ⎡0 ⎤ A = ⎢1 0 1⎥ ; B = ⎢0 ⎥ ; ⎢⎣1 0 0 ⎥⎦ ⎢⎣1⎥⎦
156
⎯ векторно-матричное представление ДКУ укороченного (5, 2 ) УПЗК с коммутируемой структурой в форме (2.58) с матрицами коммутирующих входов ⎡0 ⎤ ⎡1⎤ ⎡1⎤ n Bк 1 = I + A 1 B = ( I + A 5 )B = B + A 5 B = ⎢0 ⎥ + ⎢1⎥ = ⎢1⎥ ; ⎢⎣1⎥⎦ ⎢⎣1⎥⎦ ⎢⎣0 ⎥⎦ ⎡1⎤ n Bк 2 = A 1 B = A 5 B = ⎢1⎥ ; ⎢⎣1⎥⎦
(
)
⎯ сигналы коммутации u к 1 = u к u ( k ) = x1 x2 x3 u ( k ) ,
u к 2 = u к u ( k ) = x1 x2 x3 u ( k ) На рисунке 2.11 приведена сконструированная структурная схема ДКУ (5, 2) -УПЗК с коммутируемой структурой.
⎯ векторно-матричное представление ДКУ укороченного (5, 2) УПЗК с коммутируемой структурой в форме (2.58) с матрицами коммутирующих входов ⎡0 ⎤ ⎡1⎤ ⎡1⎤ n Bк 1 = I + A 1 B = ( I + A 5 )B = B + A 5 B = ⎢0 ⎥ + ⎢1⎥ = ⎢1⎥ ; ⎢⎣1⎥⎦ ⎢⎣1⎥⎦ ⎢⎣0 ⎥⎦ ⎡1⎤ n Bк 2 = A 1 B = A 5 B = ⎢1⎥ ; ⎢⎣1⎥⎦
(
)
⎯ сигналы коммутации u к 1 = u к u ( k ) = x1 x2 x3 u ( k ) ,
u к 2 = u к u ( k ) = x1 x2 x3 u ( k ) На рисунке 2.11 приведена сконструированная структурная схема ДКУ (5, 2) -УПЗК с коммутируемой структурой. 157
2.5. Аппарат селлерсовского дифференцирования в задачах анализа булевого описаний НДДС дискретной автоматики
В своей работе [65] Ф. Селлерс ввел в практику использование производных (разностей) булевых функций на предмет обнаружения ошибок в функционировании дискретных устройств, аналитическое представление которых задается с помощью аппарата БФ. В своей монографии [47] Ф. Селлерс переносит предложенный аппарат на задачу обнаружения ошибок в работе ЭВМ. Однако аппарат селлерсовского дифференцирования, за некоторым исключением [1, 9, 17], остается за пределами массовой технической литературы, проблемно ориентированной на разработки устройств дискретной автоматики. Задача параграфа – привлечь внимание разработчиков УДА к возможностям аппарата селлерсовского дифференцирования и предложить инструментарий для исследования аналитических описаний УДА в классе НДДС представлений. С этой целью сформулируем основные положения аппарата селлерсовского дифференцирования.
158
Определение 2.1 (О2.1). Частной производной Селлерса (ЧПС) 1-го порядка [1, 9, 17, 47, 65] булевой функции f ( x ) = f ( x1 , x2 ,Κ , xi ,Κ xn ) по булевой переменной xi называется булева ∂ f ( x) функция , задаваемая выражением ∂ xi ∂ f ( x) ∆ = f ( x1 , x2 ,Κ , xi ,Κ xn ) ⊕ f ( x1 , x2 ,Κ , xi ,Κ xn ) . □ (2.67) ∂ xi Вычисление частной производной Селлерса от БФ f ( x ) = f ( x1 , x2 ,Κ , xi ,Κ xn ) по переменной xi может быть произведено несколькими способами. Первый способ основан на определении ЧПС (2.67). Второй способ использует метод карт Карно [47], в соответствии с которым строятся две карты Карно для булевых функций f ( x1 , x2 ,Κ , xi ,Κ xn ) и f ( x1 , x2 ,Κ , xi ,Κ xn ) , которые суммируются по модулю два, что приводит к карте Карно для частной производной. Этот способ позволяет получать минимальное представление ЧПС. Третий способ использует разложение К. Шеннона [1], которое для (2.66) позволяет записать ∂ f ( x) = f ( x1 , x2 ,Κ , xi−1 ,1, xi+1 ,Κ xn ) ⊕ f ( x1 , x2 ,Κ , xi −1 ,0 , xi +1 ,Κ xn ) . (2.68) ∂ xi Четвертый способ, в развитие третьего способа, использует представление БФ f ( x1 , x2 ,Κ , xi ,Κ xn ) с помощью таблицы истинности, наборы переменных в которой представлены в форме, имеющей xi в качестве переменной младшего разряда набора. В этом случае смена значения с xi на xi , приводящая к смене значения БФ, свидетельствует о единичном значении ЧПС на этом наборе, а отсутствие смены значения БФ – о нулевом значении ЧПС. Следует заметить, что последний способ позволяет оценивать значимость переменной xi в БФ, определяемую весом ЧПС на всех наборах переменных. Для вычисления частных производных Селлерса от БФ полезно использовать их свойства, которые могут быть установлены [1] непосредственно из определения. Свойство 2.1 (СВ2.1). (Инвариантность ЧПС относительно инверсии) ∂f ∂f ∂f ∂f .□ (2.69) = = = ∂ xi ∂ xi ∂ xi ∂ xi Свойство 2.2 (СВ2.2). (Правило дифференцирования констант) ∂1 ∂0 = =0. □ (2.70) ∂ xi ∂ xi
159
Свойство 2.3 (СВ2.3). («Тривиальные свойства» дифференцирования) ∂ xi ∂ xi ∂ xi ∂ xi = = = = 1. □ (2.71) ∂ xi ∂ xi ∂ xi ∂ xi Свойство 2.4 (СВ2.4). Если БФ f ( x1 , x2 ,Κ , xi ,Κ xn ) представима в форме конъюнкции функций, одна из которых не зависит от xi: f ( x1 , x2 ,Κ , xi ,Κ xn ) =
(
= f1 x j ,
)
j = 1,n , j ≠ i ⋅ f 2 ( x1 , x2 ,Κ , xi ,Κ xn ) = f 1 ( x ) ⋅ f 2 ( x ) ,
то
∂ f ( x) ∂ f ( x) ∂ { f1 ( x) f 2 ( x) } = = f1 ( x) 2 .□ (2.72) ∂ xi ∂ xi ∂ xi Свойство 2.5 (СВ2.5). Если БФ f ( x ) представима в виде конъюнкции БФ ϕ 1 ( x ) и ϕ 2 ( x ) : f ( x ) = ϕ 1 ( x )⋅ ϕ 2 ( x ) , то ∂ϕ ( x ) ∂ϕ ( x ) ∂ϕ ( x ) ∂ f ( x ) ∂ϕ 1 ( x ) = ϕ 2 ( x ) ⊕ ϕ 1 ( x ) 2 ⊕ 1 ⋅ 2 . □ (2.73) ∂ xi ∂ xi ∂ xi ∂ xi ∂ xi Свойство 2.6 (СВ2.6). Если БФ f ( x ) представима в виде дизъюнкции БФ ϕ 1 ( x ) и ϕ 2 ( x ) : f ( x ) = ϕ 1 ( x ) ∨ ϕ 2 ( x ), (2.74) то ∂ϕ ( x ) ∂ϕ ( x ) ∂ϕ ( x ) ∂ f ( x ) ∂ϕ 1 ( x ) = ϕ 2 ( x ) ⊕ ϕ 1 ( x ) 2 ⊕ 1 ⋅ 2 . □ (2.75) ∂ xi ∂ xi ∂ xi ∂ xi ∂ xi Свойство 2.7 (СВ2.7). Если БФ f ( x ) представима в виде суммы по модулю два БФ ϕ 1 ( x ) и ϕ 2 ( x ) : f ( x ) = ϕ 1 ( x )⊕ ϕ 2 ( x ), то ∂ f ( x ) ∂ϕ 1 ( x ) ∂ϕ 2 ( x ) = ⊕ .□ (2.76) ∂ xi ∂ xi ∂ xi Свойство 2.8 (СВ2.8). Если БФ f ( x ) представима в форме конъюнкции ее переменных:
f ( x) = то
160
n
& xj,
(2.77)
j =1
∂ f ( x) = ∂ xi
n
& xj.□ j =1 j≠i
(2.78)
Свойство 2.9 (СВ2.9). Если БФ f ( x ) представима в форме дизъюнкции ее переменных:
f ( x) = то
n
∨
j =1
∂ f ( x) = ∂ xi
xj,
(2.79)
n
& xj.□
(2.80)
j =1 j≠i
Свойство 2.10 (СВ2.10). Если f ( x ) является сложной БФ, задаваемой в форме f ( x ) = f ( x ,ϕ ( x ) ) , (2.81) то ∂ f ( x) = f ( x 1 , x 2 ,Κ , x i ,Κ x n ,ϕ ( x 1 , x 2 ,Κ , x i ,Κ x n )) ⊕ ∂ xi ⊕ f ( x 1 , x 2 ,Κ , x i ,Κ x n ,ϕ ( x 1 , x 2 ,Κ , x i ,Κ x n )) . □ (2.82) Рассмотрим далее понятие частных смешанных производных Селлерса высокого порядка БФ и их свойства. Определение 2.2 (О2.2). Двукратной смешанной производной Селлерса булевой функции f ( x ) = f x1 , x2 ,Κ , xi ,Κ , x j ,Κ , xn от n булевых
(
)
переменных называется БФ, задаваемая [9, 17] выражением ∂ ⎛ ∂ f ( x)⎞ ∂ 2 f ( x ) ∂ 2 f ( x ) ∂ ⎛⎜ ∂ f ( x ) ⎞⎟ ⎟ . □ (2.83) ⎜ = = = ∂ x j ∂ xi ∂ x j ∂ xi ∂ xi ⎜⎝ ∂ x j ⎟⎠ ∂ x j ⎜⎝ ∂ xi ⎟⎠ Определение 2.3 (О2.3). m-кратной смешанной производной Селлерса по m переменным xi1 , xi 2 ,Κ , xim булевой функции f ( x) = f (x1,Κ , xi1,Κ , xi 2 ,Κ , xim ,Κ , xn ) называется БФ, задаваемая [9, 17] выражением ∂ ⎛⎜ ∂ ⎛ ⎛ ∂ f ( x ) ⎞ ⎞ ⎞⎟ ∂ m f ( x) ⎜Λ ⎜ ⎟⎟ = = ∂ xi 1∂ xi 2 Κ ∂ xim ∂ xi1 ⎜⎝ ∂xi 2 ⎜⎝ ⎜⎝ ∂ xim ⎟⎠ ⎟⎠ ⎟⎠ ∂ ⎛⎜ ∂ ⎛ ⎛ ∂ f ( x ) ⎞ ⎞ ⎞⎟ ⎜Λ ⎜ ⎟⎟ . □ = (2.84) ∂ xim ⎜⎝ ∂ xi (m−1) ⎜⎝ ⎜⎝ ∂ xi 1 ⎟⎠ ⎟⎠ ⎟⎠ Введем в рассмотрение еще одну m-кратную производную по вектору из m элементов. Свойство 2.11 (СВ2.11). (Равенство нулю частной селлерсовской производной порядка k > 1 произвольной БФ) ∂ k f ( x) (2.85) =0. □ ∂ xik k >1
161
Доказательство. Свойство является следствием определения О2.1, примененного к булевой функции типа ЧПС первого порядка от исходной БФ по той же переменной. ■ ∂ m f ( x) Определение 2.4 (О2.4). Производная m-го порядка ∂ ( xi 1 xi 2 Κ xim ) от булевой функции f ( x ) = f ( x1 , x2 ,Κ , xn ) по кортежу переменных (xi1 xi 2 Κ xim ) определяет условия, при которых функция f ( x ) изменяет свое значение при одновременном изменении значений переменных кортежа. □ Для вычисления введенной с помощью О2.4 производной воспользуемся теоремой Д. Бохманна, доказательство которой можно найти в [9]. Теорема Д. Бохманна. (Теорема Т.2.1). ∂ m f ( x) по кортежу ( xi1 xi 2 Κ xim ) от скалярной Производная ∂ ( xi 1 xi 2 Κ xim ) булевой функции f ( x ) = f ( x1 , x2 ,Κ , xn ) представима суммой по модулю два всех ее переменных порядка k от 1 до n: m ∂f ∂2 f ∂ m f ( x) =∑ ⊕∑ ⊕ ∂ ( xi1 xi 2 Κ xim ) µ =1 ∂ xiµ i , j ∂ xiµ ∂ x jν iµ ≠ jν
⊕
∑
i , j ,l iµ ≠ jν ≠l ρ
∂3 f ∂m f .■ ⊕Κ ⊕ ∂ xiµ ∂ x jν ∂ xlρ ∂ xi1∂ xi 2 Κ ∂ xim
(2.86)
Сформулированную задачу решим в нескольких постановках. В первой постановке контроль корректности булевых описаний с помощью аппарата частных производных Селлерса 1-го порядка осуществим инвариантным относительно его конкретного использования способом с помощью веса ЧПС на всех наборах переменных. В этой постановке задача решается использованием следующих определений и утверждений. ⎫ ⎧ ∂ Определение 2.5 (О2.5). Весом P ⎨ f ( x ) ⎬ частной производной ⎭ ⎩ ∂ xi ∂ f ( x ) Селлерса 1-го порядка от булевой функции f ( x ) по перемен∂ xi ∂ f ( x ) на всех 2 n наборах ной xi называется сумма значений БФ ∂ xi
{ x} булевых переменных
{
}
x = row xi ,i = 1,n :
⎫ n ∂ ⎧ ∂ P⎨ f ( x) ⎬ = ∑ f ( x) .□ ∂ x x ∂ λ = 1 i ⎭ ⎩ i { x }≡ λ 162
(2.87)
Введенное определение позволяет на основе свойств частной производной Селлерса (ЧПС) 1-го порядка сформулировать следующее утверждение. ∂ Утверждение 2.6 (У2.6). Если вес ЧПС f ( x ) на всех 2 n набо∂ xi
{
}
рах x = row xi ,i = 1,n равен нулю так, что ⎫ ⎧ ∂ P⎨ f ( x) ⎬ = 0 , (2.88) ⎭ ⎩ ∂ xi то в дизъюнктивной форме представления булевой функции f ( x ) происходит полное «склеивание» по переменной xi . □ Доказательство утверждения строится на том, что ⎫ ⎧ ∂ ∂ f ( x) P⎨ f ( x ) ⎬ = 0 означает, что = 0 на всех наборах переменных, ∂ xi ⎭ ⎩ ∂ xi в том числе и на тех µ наборах, где f ( x ) принимает единичное значение так, что для этих наборов становится в силу (2.67) справедлива запись: f ( x1 , x2 ,Κ , xi ,Κ xn ) = 1; f ( x1 , x2 ,Κ , xi ,Κ xn ) = 1 . (2.89) Тогда (2.89) позволяет для дизъюнктивной нормальной формы БФ f ( x ) записать
⎛ µ n ⎞ µ n αj ⎟ α ⎜ f ( x ) = ⎜ ∨ & x j ⎟ ( xi ∨ xi ) = ∨ & x j j , (2.90) l =1 j =1 ⎜ l =1 j =1 ⎟ j≠i j≠i ⎝ ⎠ α α где x j j = x j при α = 0 и x j j = x j при α = 1 . ■ ∂ f ( x) Утверждение 2.7 (У2.7). Если вес ЧПС на всех 2 n наборах ∂ xi n переменных x = row xi ,i = 1,n равен 2 так, что ⎫ ⎧ ∂ P⎨ f ( x) ⎬ = 2 n , (2.91) ⎭ ⎩ ∂ xi то при конструировании множества пар наборов булевых переменных полной мощности равной 2 n−1 , на которых эта БФ меняет свое значение, не найдется такой пары, на которой эта БФ сохраняет свое значение. □ Доказательство утверждения содержит в себе определение ЧПС ∂ f ( x) , которое фиксирует изменение значения БФ f ( x ) при измене∂ xi нии переменной xi на ее инверсию xi , что соответствует своей паре наборов булевых переменных. ■
{
}
163
⎫ ⎧ ∂ ∂ f ( x) Утверждение 2.8 (У2.8). Вес P ⎨ на всех 2 n f ( x ) ⎬ ЧПС ∂ xi ⎭ ⎩ ∂ xi наборах переменных в простом поле Галуа GF ( 2 ) всегда представляет собой величину кратную двум. □ Доказательство утверждения строится на том факте, что для каж⎫ ⎧ ∂ дого набора переменных вес P ⎨ f ( x ) ⎬ может принимать значение ⎭ ⎩ ∂ xi нуль или единица, а любая смена значения функции f ( x ) всегда подразумевает два набора переменных, на которых БФ f ( x ) переключается по схеме 0 → 1 и 1 → 0 , а, следовательно, исключительно на кото⎫ ⎧ ∂ f ( x) ⎬ = 1 . ■ рых P ⎨ ⎭ ⎩ ∂ xi Следствие 2.1 (С2.1) из У2.7 и У2.8. ⎫ ⎧ ∂ Вес P ⎨ f ( x ) ⎬ , i = 1,n , позволяет проранжировать переменные ⎭ ⎩ ∂ xi xi , i = 1,n по степени их значимости в булевой функции f ( x ) , при
⎫ ⎧ ∂ этом, чем больше значение веса P ⎨ f ( x ) ⎬ , i = 1,n , тем значимее ⎭ ⎩ ∂ xi переменная xi . □ Вторая постановка задачи предполагает «встроенность» булевых функций в структуру аналитического описания комбинационной схемы (КСХ) УДА. Здесь основными БФ являются булевы функции возбуждения входов используемых триггеров и булевы функции формирования выхода процесса кодопреобразования в УДА. Причем задачу в этой постановке решим с использованием канонических автоматных представлений и ГСА-описаний функционирования УДА. Выполнить контроль корректности составления ГСА-описания функционирования НДДС на фазе перехода от «вербальной» версии ГСА к ее формальной версии позволяют положения У2.6 и У2.7. Здесь оказываются полезными положения следующего утверждения. Утверждение 2.9 (У2.9). Пусть f ms ( x ) – БФ перехода от операторной вершины Ym к операторной вершине Ys , тогда f ms ( x ) оказывается составленной корректно, если ни по одной из переменных xi на наборах, на которых эта функция принимает единичное значение, ∂ f ms ( x ) производная этой функции , i = 1,n не принимает нулевое ∂ xi значение, то есть
164
∂ f ms ( x ) ≠ 0 , i = 1,n . □ (2.92) ∂ xi Доказательство утверждения не приводится в силу того, что данное утверждение можно рассматривать как следствие из У2.7 применительно к формальной версии ГСА-описаний НДДС. ■ Как уже упоминалось выше, в общем случае произвольная НДДС включает в свой состав БФ, реализующие правило µ (2.12) формирования сигнала ν возбуждения информационных входов триггеров, а также БФ, реализующие правило δ (2.8), (2.9) формирования выхода. Таким образом, применив к (2.8), (2.9), (2.12) аппарат частных производных Селлерса 1-го порядка, получим оценки структурных свойств НДДС в форме детектируемости и достижимости, описываемых каноническими конечными автоматами. Утверждение 2.10 (У2.10). Состояние S l НДДС с кодом состоя-
{
}
ния к { S l } = row x j , j = 1,n является недетектируемым по переменной
xi относительно ρ -го компонента выхода НДДС если ЧПС от ρ -го компонента функции выхода (2.16) по этой переменной удовлетворяет условию ∂δ ρ ( x ) =0. □ (2.93) ∂ xi x = к { S } l
Доказательство утверждения использует содержательное определение ЧПС 1-го порядка. ■ Очевидно, становится справедливым положение следующего утверждения. Утверждение 2.11 (У2.11). Переменная xi кодов состояния НДДС оказывается полностью недетектируемой относительно ρ -го ком⎧ ∂δ ρ ( x )⎫ понента выхода НДДС, если по выходу S l вес ЧПС P ⎨ ⎬ = 0 на ⎩ ∂ xi ⎭ всех 2 n наборах переменных x = row x j , j = 1,n . □ Доказательство утверждения опирается на положения У2.7 и содержательную часть У2.10 о детектируемости состояний конечного автомата. ■ Утверждение 2.12 (У2.12). Состояние S l УДАТ с кодом состояния
{
{
}
}
к { S l } = row x j , j = 1,n является недостижимым по входной перемен-
ной u v ,v = 1,r , если ЧПС от функции возбуждения (2.12) для этого состояния удовлетворяет условию
165
⎫ ⎧ ∂ µ~ j ( x ,u ) ∂ µ~ ( x ,u ) ; j = 1,n ⎬ = 0 . □ (2.94) = col ⎨ ∂u v ⎭ ⎩ ∂u v x = к { Sl } Доказательство. Справедливость положений утверждения обнаруживают свойства ЧПС 1-го порядка и аналитическое представление функции возбуждения триггеров. ■ Примечание 2.4 (ПМ2.4). Нетрудно видеть, что У2.12 содержит в себе потенциал развития мысли в направлении введения понятия полной недостижимости состояния S l , когда условие (2.94) выполняется для всех v = 1,r входных переменных uν . □ Примечание 2.5 (ПМ2.5). Положения У2.11 являются эффективным средством контроля булевого описаний НДДС на предмет достижимости неопределенных описанием НДДС состояний. Такая ситуация имеет место в НДДС, если при ее заданном функционировании используются не все кодовые комбинации вектора x ее состояния размерности dim x = n при мощности 2 n полного их множества. □ Воспользуемся теперь смешанными производными Селлерса для разложения булевой функции в заданной точке пространства над двоичным полем Галуа GF ( 2 ) . Конструктивный результат решения этой задачи содержится в теореме Горбатова В. А. [17, теорема 2.3]. Теорема В. А. Горбатова (Теорема Т2.1) Любая булева функция f ( x ) = f ( x1 , x2 ,Κ , xn ) представима своим значением в точке x = (0 0 Κ 0 ) и значениями всех
∂f ∂2 f ∂n f , ,Κ , в этой точке в виде ее производных ∂ xi ∂ xi1∂ xi 2 ∂ x1∂ x 2 Κ ∂ x n ∂f f ( x) = f ( 0) ⊕ ∑ i =1 ∂ xi n
⊕
∂2 f ⋅ xi ⊕ ∑ i , j =1 ∂ xi ∂ x j n
x =0
i≠ j
∂m f ∑ i1 ,i 2 ,Κ i m = 1 ∂ x i 1 ∂ x i 2 Κ ∂ x im n
∂n f ⊕ ∂ x1∂ x 2 Κ ∂ x n
( )
⋅ xi x j ⊕ Κ x =0
⋅ x i 1 x i 2 Κ x im ⊕ Κ x=0
⋅ x1 x2 Κ xn .
(2.95)
x=0
где i1 ,i2 ,Κ im ∈ 1,n и попарно не равны друг другу, ⊕ – сложение по модулю два. □
166
В заключение необходимо сделать примечание к разложению (2.95) произвольной булевой функции f ( x ) . Очевидно, что число членов разложения в (2.95) определяет степень близости f ( x ) к ее линейной версии, а произведение числа членов разложения на размерность блока памяти определяет функционал размещения данной задачи кодопреобразования в диаде «комбинационная схема – блок памяти». Полученные результаты исследований позволяют предложить следующий алгоритм контроля булевого описаний нелинейных ДДС дискретной автоматики.
Алгоритм 2.10 (А2.10) контроля булевого описаний НДДС дискретной автоматики в фазе их аналитического конструирования 1. Выполнить в зависимости от формального описания НДДС: в случае ГСА-описаний при контроле корректности ее составленной в силу У2.9 – п.п. 1–5 А2.2,а затем – п.п. 2–6 А2.1; в случае использования канонического автоматного синтеза – п.п. 1–6 А2.1. 2. Проверить с использованием положений У2.6, У2.7 и У2.8 факт избыточности переменных булевого описаний БФ, задающих функции µ (2.12) возбуждения информационных входов ν триггеров, и в случае обнаружения такового выполнить соответствующее приведение этих переменных. 3. Проверить с использованием положений У2.6, У2.7 и У2.8 факт избыточности переменных булевого описаний БФ, задающих функцию y (2.11) выхода НДДС, и в случае обнаружения такового выполнить соответствующее приведение этих переменных. 4. Выполнить с использованием положений У2.10 и У2.12 контроль постановочного описания в форме диаграмм переходов и выхода (ДПВ) или ГСА нелинейной ДДС с полученным его аналитическим представлением, определяемым соответствующими БФ. 5. Выполнить п.6 А2.1. ■ Примечание 2.6 (ПМ2.6). Следует заметить, что предложенный алгоритм контроля булевого описаний НДДС достаточно просто реализуем в программной среде, что позволит разработчикам существенно сэкономить время при разработке НДДС. □ Для иллюстрации приведенных положений рассмотрим два примера, в первом из которых рассмотрим использования аппарата селлерсовского дифференцирования применительно к произвольным БФ.
167
152
Таблица 2.14
x1
x2
x3
0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
0 0 0 0 1 1 1 1 x1
0 0 0 0 0 0 1 1 ⋅
f ( x ) = ( x1 ⋅ x2 ∨ x3 ) → ( x1 ⋅ x3 ⊕ x1 ) 0 0 1 0 0 0 1 0 0 0 1 0 1 1 0 1 1 1 1 1 0 0 1 0 0 0 1 1 0 0 1 0 1 1 0 1 1 0 1 1 x3 x2 → ∨ ⋅
0 0 1 1 0 0 1 1 x2
0 1 0 1 0 1 0 1 x3
0 0 0 1 1 1 1 0 ⊕
0 0 0 0 1 1 1 1 x1
Примечание: в выделенных столбцах таблицы приведены значения, соответствующие результату выполнения указанных логических операций. Таблица 2.15
x1
x2
x3
f ( x)
0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
1 0 1 1 1 1 1 0
∂f ∂ x3 1 1 0 0 0 0 1 1
x3
x1
x2
f ( x)
0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
1 1 1 1 0 1 1 0
∂f ∂ x2 0 0 0 0 1 1 1 1
x2
x3
x1
f ( x)
0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
1 1 0 1 1 1 1 0
∂f ∂ x1 0 0 1 1 0 0 1 1
Пример 2.6 (Пр2.6) Рассматривается переключательная функция 3-х переменных f ( x ) = f ( x1 , x2 , x3 ) = ( x1 x2 ∨ x3 ) → ( x2 x3 ⊕ x1 ) на предмет вычисления частных производных Селлерса 1-го порядка по всем переменным и оценки их веса. Для вычисления производной ∂ f ∂ xi используется 4-й способ (см. выше способы вычисления ЧПС). Результаты вычисления сведены в две таблицы: таблица 2.14 представляет собой таблицу истинности, а таблица 2.15 – иллюстрирует 4-й способ вычисления ЧПС. ∂f Из таблицы 2.15 нетрудно видеть, что все ЧПС , i = 1,2 ,3 , при∂ xi нимают единичные значения на 4-х переменных. Таким образом, все ⎧∂f ⎫ веса P ⎨ ⎬, i = 1,2 ,3 всех ЧПС характеризуются одной величиной x ∂ ⎩ i⎭
⎧∂f ⎫ P⎨ ⎬ = 4 . Иначе говоря, все переменные в БФ f ( x1 , x2 , x3 ) обладают ⎩ ∂ xi ⎭ равной значимостью. ■ Пример 2.7 (Пр2.7) Рассматривается процедура контроля булевого описаний НДДС в составе: –– БФ возбуждения информационных входов D-триггеров в виде µ 1 = u ( x1 x2 ∨ x1 x2 ) = u ( x1 ⊕ x2 ), µ 2 = u x1 x2 ; –– БФ формирования выхода НДДС в форме y = x1 x2 . Выполняем алгоритм 2.10 с п.2. 2. Контроль факта избыточности переменных булевого описаний БФ, задающих функции µ возбуждения информационных входов триггеров, на кодовых переходах дает ⎧ ∂µ ⎫ ⎧ ∂µ ⎫ P ⎨ 1 ⎬ = P {u x2 } = 2 ; P ⎨ 1 ⎬ = P {u x1 } = 2 ; ⎩ ∂ x1 ⎭ ⎩ ∂ x2 ⎭
⎧ ∂µ ⎫ P ⎨ 1 ⎬ = P { x1 x2 } = 2 ; ⎩∂u ⎭
⎧ ∂µ ⎫ P ⎨ 2 ⎬ = P { u x2 } = 2 ; ⎩ ∂ x1 ⎭
⎧ ∂µ ⎫ P ⎨ 2 ⎬ = P {u x1 } = 2 ; ⎩ ∂ x2 ⎭
⎧ ∂µ ⎫ P ⎨ 2 ⎬ = P { x1 x2 } = 2 , ⎩ ∂u ⎭
101
что свидетельствует об отсутствии избыточности переменных булевого описаний соответствующих БФ, кроме этого полученные веса имеют значения кратные двум, что подтверждает корректность их вычисления. 3. Контроль факта избыточности переменных булевого описаний БФ, задающую функцию y выхода НДДС, на кодовых переходах дает ⎧∂ y ⎫ ⎧∂y ⎫ P⎨ ⎬ = P { x2 } = 2 ; P ⎨ ⎬ = P { x1 } = 2 , ∂ ∂ x x ⎩ 1⎭ ⎩ 2⎭ что свидетельствует об отсутствии избыточности переменных булевого описаний функции y выхода, кроме этого полученные веса имеют значения кратные двум, что подтверждает корректность их вычисления. 4. Контроль постановочного описания ННДС в форме ДПВ с полученным его аналитическим представлением, определяемым соответ-ствующими БФ, в форме –– проверки детектируемости состояний НДДС по соответствующим булевым переменным дает ∂y ∂y = x2 ≠ 0 ; = x1 ≠ 0 , ∂ x1 ∂ x2 что свидетельствует о детектируемости состояний НДДС по этим переменным; –– проверки достижимости состояний НДДС по соответствующим булевым переменным дает ∂µ 2 ∂µ 1 = x1 x2 ≠ 0 ; = x1 x2 ≠ 0 , ∂u ∂u что свидетельствует о достижимости состояний НДДС по входной переменной u . Выполнение п.5 алгоритма авторы сочли возможным опустить. ■ Примечание 2.7 (ПМ2.7). Следует заметить, что при решении задач минимизации БФ использование аппарата селлерсовского дифференцирования, в отличие от соответствующих методов минимизации БФ, при своей простоте позволяет одновременно исследовать среду БФ: определять и ранжировать ее переменные по степени их значимости, проверять корректность БФ; в рамках ДДС – производить анализ детектируемости и достижимости состояний, а также корректности составления ГСА-описания ее функционирования в фазе перехода от «вербальной» версии ГСА к ее формальной версии. □
102
103
3. ГИБРИДНЫЕ ДВОИЧНЫЕ ДИНАМИЧЕСКИЕ СИСТЕМЫ ДИСКРЕТНОЙ АВТОМАТИКИ Положения разделов 1 и 2 содержат инструментарий, позволяющий решать требуемую задачу кодопреобразования как в классе линейных двоичных динамических систем, модельное представление которых опирается на аппарат передаточных функций или векторноматричных описаний, так и в классе нелинейных ДДС, модельное представление которых формируется с использованием возможностей автоматной логики в двух ее версиях. В настоящем разделе рассматривается класс ДДС, построенных на композиции двух указанных выше математических модельных представлений. Класс таких систем назван классом гибридных двоичных динамических систем (ГДДС). Класс гибридных ДДС достаточно нов и теоретически мало разработан, он имеет пока скромное библиографическое обеспечение. Ниже приводятся избранные результаты по исследованию класса гибридных ДДС, известные на настоящий момент. 3.1. Проблема заполнения кодового пространства классом гибридных двоичных динамических систем Процедуры конструирования ДДС в классе линейных представлений приводит к размерности dim x вектора x ее состояния равной n л . Решение той же задачи кодопреобразования в классе нелинейных представлений приводит к вектору состояния размерности nн , причем в общем случае размерности n л и nн связаны отношением порядка в виде неравенства n л ≥ nн = E { log 2 nS }, (3.1) где ns – мощность алфавита состояний абстрактного автомата, погружаемого в двоичную динамическую среду, E { ( •) } – оператор округления величины ( •) до ближайшего большего целого. Возникают естественные системные вопросы: какими свойствами обладает ДДС, размерность nг вектора состояния которой удовлетворяет отношениям порядка в виде неравенств (3.2) n л > n г > nн , и как ее сконструировать, если при этом она решает ту же задачу кодопреобразования? Следует ожидать, что реализация ДДС с размерностью nг вида (3.2) вектора ее состояния строится в классе гибридных
155
двоичных динамических систем (ГДДС), обладающих свойствами как линейных, так и нелинейных двоичных динамических систем. Этому классу двоичных динамических систем посвящен данный параграф, который начнем с формулировки следующих определений. Определение 3.1 (О3.1). Мощность множества реализаций ДДС, размерность nг вектора состояния которых удовлетворяет неравенствам (3.2), образует кодовое пространство (КПР). □ Определение 3.2 (О3.2). Гибридными двоичными динамическими системами устройств дискретной автоматики будем называть ДДС, размерности векторов состояний которых принадлежат кодовому пространству, сформированному в смысле определения 3.1. □ Определение 3.3 (О3.3). Кодовое пространство называется невырожденным, если размерности nн и n л удовлетворяют условию nн − n л ≥ 1 . □ Определение 3.4 (О3.4). Кодовое пространство называется вырожденным, если размерности nн и n л удовлетворяют условию nн − n л = 0. □
Рисунок 3.1
Понятие «кодовое пространство» позволяет рассматривать гибридные ДДС как некоторую динамическую среду, осуществляющую двоичное кодопреобразование и заполняющую невырожденное КПР. С этой точки зрения линейные ДДС, построенные с использованием аппарата передаточных функций или векторно-матричного описания, а также нелинейные ДДС, где в качестве кодов состояния используются двоичные коды на все сочетания, образуют «полярные» реализации решения задачи конструирования ДДС, формируя тем самым проблему заполнения возникающего между ними кодового пространства классом гибридных ДДС. Решение проблемы заполнения КПР классом ГДДС можно осуществить двумя путями. Первый путь решения проблемы 156
состоит в редуцировании размерности вектора состояния линейных ДДС. Механизмы редуцирования размерности вектора состояния линейных ДДС, опирающиеся на результаты первого раздела, представимы в форме диаграммы, приведенной на рисунке 3.1. Второй путь заполнения КПР гибридными ДДС формируется в классе нелинейных версий двоичных динамических систем и направлен на увеличение размерности вектора их состояния. С этой целью выбор двоичного кода при кодировании состояний абстрактного автоматного представления синтезируемой НДДС осуществляется с нарушением условия (2.6), то есть nг > nн : dim X = nн ≠ arg min{ p nн ≥ ns }, (3.3) что исключает использование для этой цели двоичных кодов на все сочетания. Указанная проблема удовлетворения условию (3.3) при выборе способа кодирования элементов алфавита S , мощности ns , состояния АА приводит к использованию таких кодов как, например, кодов Джонсона, кодов Грея, соседних кодов или, например, кодов с минимальным кодовым расстоянием не меньшим двух, то есть помехозащищенных кодов. Следует заметить, что использование кодов Джонсона, кодов Грея или соседних кодов приводит к ситуации, при которой на соседних кодовых переходах x( k ) , x( k + 1) происходит изменение значения лишь одного элемента вектора x состояния НДДС, своего для каждого перехода. Это может быть использовано как для решения проблемы борьбы с «гонками» в среде НДДС, так и для обеспечения простоты комбинационной схемы (КСХ) и быстродействия НДДС, жертвуя при этом размерностью вектора состояния. Особый интерес представляет использование помехозащищенных кодов для кодирования алфавита S состояния АА при его погружении в среду КА с целью обеспечения помехозащищенности процесса кодопреобразования, осуществляемого средствами НДДС. Решение этой задачи приводит к непосредственному назначению помехозащищенных кодов в качестве кодов состояния ДДС. Однако такой подход влечет за собой модификацию А2.1 и решение вопросов согласования в (2.6) мощностей соответствующих алфавитов и формирования модифицированных правил λ , δ , что без учета специфики формирования проверочной части ПЗК неоправданно увеличивает сложность комбинационной схемы НДДС. Решение вопроса заполнения КПР с использованием ПЗК получим конструированием в силу (1.159) агрегированного вектора xˆ ГДДС состояния ГДДС в форме
157
[
] [
]
~ Т Т ˆx ТГДДС = x ТНДДС x НДДС G = x ТНДДС ~ x НДДС ,
⎧ ⎫ x n −i ~i G = к ⎨ri ( x ) = rest ; i = 1,k ⎬ (3.4) g( x ) ⎩ ⎭ что позволяет на стадии конструирования НДДС использовать алгоритм 2.1 без каких-либо изменений, после чего вектор состояния x НДДС агрегируется в указанной в (3.4) форме. Использование такого подхода разбивает КСХ на две сепаратные части, одна из которых формирует на кодовых переходах значение x НДДС ( k + 1) , а другая – значение ~ x НДДС ( k + 1) . Из выражения (3.4) вид( k + 1) и ~x ( k + 1) достано, что для формирования значений x НДДС
НДДС
точно значения x НДДС ( k ) , что и обеспечивает простоту КСХ в отличие 1
от конструирования последней с использованием значения xˆ ГДДС ( k ) большей размерности. Выдвинутые соображения показывают, что заполнение невырожденного КПР гибридными ДДС осуществимо «движением» по нему слева направо или справа налево в неравенствах (3.2). Следует заметить, что при заполнении КПР возможно и возвратно-поступательное движение в неравенствах (3.2). Так, например, с целью обеспечения быстродействия НДДС и ее помехозащищенности движением по КПР справа налево производится кодирование двоичными кодами элементов алфавита S состояния АА, задающего логику функционирования НДДС, после чего в силу (3.4) конструируется вектор xˆ ГДДС состояния ГДДС, обладающий свойством помехозащищенности. Затем с целью снижения сложности технической реализации ГДДС движением по КПР слева направо осуществляется редуцирование размерности вектора xˆ ГДДС (см. параграф 3.3). Аналогично решается задача заполнения КПР, если те же требования предъявляются и к линейной ДДС. Результаты исследований настоящего параграфа, а также разделов 1 и 2 показывают, что заполнение КПР при движении по нему в неравенствах (3.2) слева направо удобно осуществлять выполнением алгоритмов 1.3 и 1.4. Заполнение КПР при движении по нему в неравенствах (3.2) справа налево при решении задач повышения быстродействия НДДС, обеспечение простоты ее комбинационной схемы, борьбы с «гонками» в ее среде, осуществимо с использованием положений следующего алгоритма.
1
Без учета переменных входа
158
ui , i = 1,r .
Алгоритм 3.1 (А3.1) заполнения кодового пространства ГДДС, конструируемых с использованием возможностей автоматных представлений 1. Выполнить п.п.1, 2 алгоритма 2.1 и получить описание функционирования ДДС в форме абстрактного автомата (2.1). 2. Выполнить первый этап перехода от абстрактного автомата к конечному автомату путем кодирования алфавитов высокого уровня Z входа и W выхода АА, полученного в п.1 алгоритма, элементами простого поля Галуа GF ( 2 ) так, чтобы размерности кодов конечного автомата (2.5) и мощности алфавитов Z и W были связаны неравенствами (2.6). 3. Завершить переход от АА к КА, закодировав с учетом (3.3) элементы алфавита высокого уровня S состояния АА: –– двоичными кодами Грея, если число nS элементов алфавита состояний АА удовлетворяет равенству nS = 2 q , q ∈ I + ; –– двоичными кодами Джонсона или соседними кодами с обеспечением минимальной избыточности кодовых реализаций элементов алфавита S АА. 4. Выполнить п.п.4–7 алгоритма 2.1. ■ Заполнение КПР при движении по нему справа налево при решении задач наделения свойством помехозащищенности процедуры кодопреобразования в среде НДДС достижимо выполнением следующего алгоритма. Алгоритм 3.2 (А3.2) заполнения кодового пространства помехозащищенными гибридными ДДС 1. Выполнить п.п.1, 2 алгоритма 2.1 и получить описание функционирования ДДС в форме АА (2.1). 2. Выполнить кодирование элементов алфавитов высокого уровня Z входа и W выхода АА, полученного в п.1 алгоритма, элементами простого поля Галуа GF ( 2 ) так, чтобы размерности кодов получаемого при этом конечного автомата (2.5) и мощности алфавитов Z и W были связаны неравенствами (2.6). 3. Выполнить в силу (3.4) кодирование элементов алфавита высокого уровня S состояния АА, для чего воспользоваться п.1 алгоритма 1.11 при выборе образующего многочлена g ( x ) помехо-
159
защищенного кода, и получить кодовые вектора xˆ ГДДС состояния ГДДС. 4. Модифицировать правила λ , δ (2.7) – (2.9) с учетом (3.4) в форме (3.5) λˆ : xˆ ГДДС ( k + 1) = λˆ xˆ ГДДС ( k ), u ( k ) и
[
]
[
δˆ : y ( k ) = δˆ xˆ ГДДС ( k )
]
(3.6)
при использовании автоматной логики Мура и
[
δˆ : y ( k ) = δˆ xˆ ГДДС ( k ), u ( k )
]
(3.7)
при использовании автоматной логики Мили. 5. Выбрать тип триггера, реализующий компоненты вектора xˆ ГДДС состояния ГДДС, и сконструировать функции µˆ i , i = 1,dim ˆx ГДДС возбуждения информационного входа ν i триггеров в форме
[
[
]]
[
]
vi ( k ) = µˆ i ˆx ГДДС i ( k ),λˆ ˆx ГДДС i ( k ), u ( k ) = µ~i ˆx ГДДС i ( k ), u ( k ) (3.8) 6. Проверить правильность функционирования полученной ГДДС в соответствии с ее аналитическим описанием на множестве полной мощности ее кодовых переходов. ■
Пример 3.1 (Пр3.1) Рассматривается задача заполнения КПР конструированием гибридной версии устройства, функционирование которого описывается диаграммой рисунок 3.2 переходов и выхода. При этом требуется обеспечить выявление однократных сбоев в кодах вектора состояния ГДДС в форме их обнаружения. Для решения поставленной задачи в силу А3.2 осуществляем: 1. Кодирование в силу (3.4) элементов алфавита S состояния АА при образующем многочлене g ( x ) = x + 1 , полученным в соответствии с п.1 алгоритма 1.11, дает кодовые вектора xˆ ГДДС состояния ГДДС – представленные в таблице 3.1.
160
u
κ { x1 }
y u
u u
u
κ { x3 }
y
y
κ { x2 } u
Рисунок 3.2. Диаграмма переходов и выхода исходного устройства Таблица 3.1
{ S}
{X}
xi , i = 1, n
~ x НДДС i , i = 1, n
s1 s2 s3
x1 x2 x3
00 01 10
0 1 1
[
xˆ ГДДС = x НДДС ~ x НДДС
[ 00 0] [ 01 1] [10 1]
]
2. Осуществление модификации правил λ , δ в форме (3.5) – (3.7), приводит к представлению правила λˆ в форме таблица 3.2 Таблица 3.2
Вектор ˆx T (k ) состояния
Вход u 0 1
000 000 011
011 000 101
101 000 101
ˆx T (k + 1) = λˆ ( [ ˆx(k ), u (k )] )T
161
Таблица 3.3
Выход КА
Вход u
y
–
Вектор ˆx T (k ) состояния 000 0
011 0
101 1
ˆy (k ) = δˆ [ ˆx(k ), u (k )]
и правила δˆ – в форме таблица 3.3. Указанные действия приводят к графу рисунок 3.3 переходов и выхода ГДДС.
κ { s1}
κ { s2 } κ { s3 } Рисунок 3.3. Диаграмма переходов и выхода ГДДС
3. Выбор типа триггера, приводящий к использованию Dтриггеров, дает в силу таблиц 3.2, 3.3 булевы функции µˆ i , i = 1,dim ˆx ГДДС возбуждения их информационного входа ν i вида
µˆ 1 = u ( x1 x2 ∨ x1 x2 ) = u ( x1 ⊕ x2 ) ,
µˆ 2 = u x1 x2 , µˆ 3 = u ( x1 x2 ∨ x1 x2 ) = u ( x1 ⊕ x2 ) = v1 . 5.Конструирование булевой функции формирования выхода ГДДС, которое дает аналитическое представление y = x1 x2 .
162
Полученное булево описание ГДДС является аналитической базой для построения схемотехнической реализации устройства. ■ Примечание 3.1 (ПМ3.1). Следует заметить, что реализация корректирующей способности в рассмотренном примере 3.1 для случая использования автоматной Мили осуществляется посредством формирования синдрома E сбоя в кодах вектора состояния ГДДС с помощью БФ E = y ⊕ x1 , в свою очередь для ГДДС, использующей автоматную логику Мура, синдром формируется в силу БФ E = x3 ⊕ x2 ⊕ x1 . □ Примечание 3.2 (ПМ3.2). С использованием аппарата селлерсовского дифференцирования нетрудно убедиться, что в рамках примера 3.1 при составлении соответствующих БФ возбуждения информационных входов D-триггеров µˆ i , i = 1,dim ˆx ГДДС как функций четырех аргументов {u , x1 , x2 , x3 } происходит их минимизация склеиванием термов по переменной x3 , что приводит БФ к функции трех аргументов {u , x1 , x2 }. □ В заключение рассмотрим ситуацию, когда кодовое пространство оказывается вырожденным, что имеет место в силу определения 3.4 при выполнении условия nн = n л . Охарактеризуем ситуацию следующими постулатами. Постулат 3.1 (ПС.3.1). Задача кодопреобразования, решаемая средствами ЛДДС, векторно-матричное описание которой имеет ( n × n ) -матрицу A состояния с характеристическим неприводимым принадлежащим показателю полиномом D( λ ) = det ( λI + A) ,
µ = 2 n − 1 , характеризуется минимальной размерностью вектора состояния на множестве линейных ДДС, формирующих на своем выходе периодическую последовательность периода T = µ . □ Постулат 3.2 (ПС.3.2). Задача кодопреобразования, формализуемая на уровне абстрактного автомата в виде графа переходов, образующего замкнутый цикл с числом состояний nS , равным 2 n − 1 , и решаемая средствами НДДС-КА, характеризуется размерностью nг = nн = E { log 2 nS } = n вектора состояния этой ДДС. Следует заметить, что ПС3.1 и ПС3.2 обнаруживают ситуацию, характеризующуюся вырождением кодового пространства. Этот факт делает справедливыми положения следующего утверждения. Утверждение 3.1 (У.3.1). Для того чтобы сконструировать НДДС с минимальной размерностью n вектора состояния и сложностью КСХ, генерирующую произвольную кодовую последовательность максимального периода T = 2 n − 1 достаточно на этапе перехода от формализованной в форме АА версии устройства к его версии в форме
163
КА осуществить кодирование алфавита состояния АА так, чтобы в качестве кодов были использованы коды, получаемые в силу соотношения (1.209) вида x( k + 1) = A q x( 0 ) , x( 0 ) ≠ O , q ∈ 1 ,2 n − 1 , в котором матрица A имеет характеристический неприводимый полиномом D( λ ) = det ( λI + A) , принадлежащий показателю µ = 2 n − 1 так, что A µ = I , а также в качестве ячеек памяти НДДС были использованы D-триггеры, при этом степень q и номер кодируемого состояния АА должны быть согласованы. ■ Проиллюстрируем на примере положения утверждения 3.1.
[
]
Пример 3.2 (Пр3.2)
Требуется сконструировать автономную ( u ( k ) ≡ 0 ) НДДС при условии минимальной сложности ее технической реализации, которая генерирует скремблирующую [28, 33] периодическую последовательность с периодом T = 15 , имеющую вид y( k ) = y( k + T ) = 1 0 0 0 1 1 1 1 0 1 0 1 1 0 0 1 0 0 0Κ В соответствии с утверждением 3.1 выбираем в качестве характеристического полинома D( λ ) = det ( λI + A) матрицы A неприводимый многочлен степени n = 4 D( λ ) = λ4 + λ3 + 1 , который принадлежит показателю µ = 15 . Матрицу A зададим в сопровождающей выбранный характеристический полином форме: ⎡0 1 0 0 ⎤ A = ⎢0 0 1 0 ⎥ . ⎢0 0 0 1⎥ ⎢⎣1 0 0 1⎥⎦ Зададим матрицу выхода ЛДДС в форме C = [ 1 0 0 0 ] , матрицу входа B не задается так, как задача решается в классе автономных представлений. Дальнейшее конструирование НДДС осуществим в три этапа. На первом этапе воспользуемся моделью x( k + 1) = A x( k ); y ( k ) = C x( k ) и сформируем таблицу 3.4 переходов и выхода устройства.
164
Таблица 3.4
Выход y ( k ) устройства Вход u 0
0
0
0
0
0
0
0
0
Вектор x T ( k ) состояния 0000 0001 0010 0011 0100 0101 0110 0111 0000 0011 0100 0111 1000 1011 1100 1111 T x T ( k + 1) = ( A x( k ) )
Таблица 3.4 (продолжение)
Выход y ( k ) устройства Вход u 0
1
1
1
1
1
1
1
1
Вектор x T ( k ) состояния 1000 1001 1010 1011 1100 1101 1110 1111 0001 0010 0101 0110 1001 1010 1101 1110 T x T ( k + 1) = ( A x( k ) )
На втором этапе положим, что устройство запускается с исходным соT стоянием x( 0 ) = [1 0 0 0 ] . На третьем этапе с использованием полученных результатов формируем таблицу 3.5 переходов и выхода НДДС для условия u ( k ) = 0 и
исходного состояния x( 0 ) = [1 0 0 0 ] , в которое НДДС можно перевесT
ти из нулевого начального состояния x( 0 ) = [ 0000 ] с помощью сигнала начальной установки u = x1 x2 x3 x4 , подаваемый на вход первого триггера. T
165
Таблица 3.5
Выход y ( k ) устройства 1
Вход u
0
0
0
1
1
1
1
Вектор x T ( k ) состояния 1000 0001 0011 0111 1111 1110 1101 1010 0001 0011 0111 1111 1110 1101 1010 0101
0
x T (k + 1) = ( λ [ x(k ), u (k )] )
T
Таблица 3.5(продолжение)
Выход y ( k ) устройства 0 Вход u –
1
0
1
1
0
0
Вектор x T ( k ) состояния 0101 1011 0110 1100 1001 0010 0100 1011 0110 1100 1001 0010 0100 1000 x T (k + 1) = ( λ [ x(k ), u (k )] )
T
Восстанавливаем граф переходов и выхода НДДС, который с учетом таблицы 3.5 принимает вид рисунок 3.4. В силу У3.1 для реализации ячеек памяти устройства будем использовать D-триггеры. Тогда булевы функции возбуждения информационных входов v i , i = 1,4 этих триггеров и формирования выхода y устройства при движении по заданному в постановочной части примера циклу примут вид: µ 1 = x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨
∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ; µ 2 = x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨
∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ; µ 3 = x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ;
µ 4 = x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨
∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ; y = x1 .
166
С учетом сигнала u начальной установки НДДС функция возбуждения первого триггера принимает вид ~ µ 1 = x 1 x 2 x 3 x 4 ∨ ( x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) . κ { s0 }
u = x1 x2 x3 x4
/0000/
y =1
y=0
κ { s1} /1000/
κ { s15 }
y=0
κ { s2 }
/0100/
/0001/
y =1
κ { s14 }
κ { s3 }
/0010/
/0011/
y =1
y =1
κ { s13 }
κ { s4 }
/1001/
/0111/
y=0
y =1
κ { s12 }
κ { s5 }
/1100/
y =1
/1111/
κ { s11} /0110/
κ { s6 } /1110/
y =1
κ { s10 } /1011/
y=0
y=0
κ { s9 } /0101/
κ { s7 }
y =1
/1101/
y=0
κ { s8 }
y=0
/1010/
Рисунок 3.4. Диаграмма переходов и выхода ГДДС
Приведем теперь с использованием положений теоремы 2.1 представления полученных БФ аналитического описания НДДС к форме полиномов (2.94) Жегалкина, в результате чего получим: µ 1 ≡ µ 1∗ = x2 ; µ 2 ≡ µ 2∗ = x3 ; µ 3 ≡ µ 3∗ = x4 ; µ 4 ≡ µ 4∗ = x1 + x4 ; y = x1 .
167
Если теперь составить БФ µ i′ , i = 1,4 возбуждения информационных входов v i , i = 1,4 D-триггеров для модели x( k + 1) = A x( k ) с полученной матрицей A вида ⎡0 1 0 0 ⎤ A = ⎢0 0 1 0 ⎥ , ⎢0 0 0 1⎥ ⎢⎣1 0 0 1⎥⎦ то получим тождества µ 1 ≡ µ 1∗ ≡ µ 1′ ; µ 2 ≡ µ 2∗ ≡ µ 2′ ; µ 3 ≡ µ 3∗ ≡ µ 3′ ; µ 4 ≡ µ 4∗ ≡ µ 4′ . Так как матрица выхода имеет вид C = [ 1 0 0 0 ] , то для БФ y ∗ , формирующей в силу матрицы C выход устройства, можно записать, что y ≡ y ∗ = x1 . Построим теперь реализацию конструируемой ГДДС в структурной форме рисунок 3.5.
u
Рисунок 3.5. Структурное представление ГДДС
В силу вырожденности кодового пространства, а также однотипности выбранных элементов памяти в форме D-триггеров, с учетом использования правила кодирования состояний синтез ЛДДС и НДДС дал одно и то же решение в форме структурной схемы, приведенной на рисунке 3.5. ■
168
3.2. фактор востребованности переменных булевых описаний двоичных динамических систем
В разделе 2 показано, что аппарат селлерсовского дифференцирования булевых функций (СДБФ) является достаточно удачным инструментом для исследования булевого описания ДДС, позволяющим уже на стадии аналитического конструирования ДДС контролировать ее булево описание на предмет наличия в нем избыточных компонентов. Целью настоящего параграфа является распространение возможностей аппарата СДБФ на решение задачи оценки степени востребованности переменных булевых описаний комбинационной схемы ДДС. Решение указанной задачи будем осуществлять памятуя о том, что среда ДДС состоит (см. §1.2) из двух компонентов: комбинационной схемы и блока памяти, каждый из которых характеризуется своей коммутационной способностью, что и обнаруживает аппарат СДБФ. Следует заметить, что реализация блока памяти ДДС предполагает использование того или иного типа триггера, правило λ перехода которых для выбранного типа является фиксированным и не зависит от задачи кодопреобразования, решаемой ДДС. В этой связи задача состоит в исследовании компонента ДДС – комбинационной схемы и формировании оценок ее коммутационной способности, понятие которой введем с помощью следующего определения. Определение 3.5 (О3.5). Под коммутационной способностью комбинационной схемы ДДС будем понимать способность булевых функций µ ( x, u ) вида (2.12) возбуждения информационных входов триггеров, составляющих блок памяти ДДС, изменять (коммутировать) свое значение на кодовых переходах. □ С учетом введенного понятия решение поставленной задачи будем осуществлять в предположении справедливости следующей гипотезы. Гипотеза 3.1 (Г3.1). Коммутационная способность комбинационной схемы ДДС, представленной булевыми функциями µ i ( x ,u ), i = 1,n возбуждения, количественно оценивается показателем ( 2.86 ) n n n n 2n ⎡ ∂ µ ⎤ m= ∑∑∑ ⎢ ∂ x i ⎥ = ∑∑ P ⎧⎨ ∂∂x µ i ⎫⎬ , (3.9) i =1 k =1 j =1 ⎣ = = i 1 k 1 k ⎦j ⎩ k ⎭ выраженным в числе кодовых переходов, на которых ДДС осуществляет требуемое кодопреобразование, где n – число переменных xk со-
⎡∂ µ ⎤ стояния x = col xk , k = 1,n ДДС, ⎢ i ⎥ – значение первой частной ⎣ ∂ xk ⎦ j
{
}
селлерсовской производной БФ µ i ( x ,u ), i = 1,n возбуждения информа-
169
ционного входа i -го триггера по переменной xk на j -м кодовом наборе, составляющим алфавит состояния X представления НДДС в форме КА в виде кортежа (2.5). □ Величина (3.9), как нетрудно заметить, характеризует совокупную величину коммутационной способности КСХ произвольной ДДС. В силу О3.5 и положений Г3.1 можно сказать, что коммутационная способность КСХ, представленной БФ µ i ( x ,u ), i = 1,n возбуждения, обнаруживает, что аргументы указанных БФ оказываются «разновостребованными» на кодовых переходах, на которых эти БФ изменяют свое значение. В связи с тем, что БФ µ i ( x ,u ), i = 1,n имеют своими аргументами переменные xi , i = 1,n состояния и переменные u λ , λ = 1,r входа, то решение задачи будем проводить в два этапа: при рассмотрении ДДС как автономной системы, в которой u λ = 0 , λ = 1,r , и при рассмотрении общего случая, при котором u λ ≠ 0 , λ = 1,r . Рассмотрим первый этап решения задачи (случай автономной ДДС, для которой u j = 0 , j = 1,r ), для чего введем следующие понятия. Определение 3.6 (О3.6). Под абсолютной оценкой востребованности булевой переменной xi произвольной автономной ДДС, то есть такой ДДС, функционирование которой определяется только переменными xk , k = 1,n ее состояния, будем понимать величину
r
r= ∑∑ ⎡⎢⎣ ∂∂ µx ⎤⎥⎦ n
2n
i
( 2.86 )
=
⎧
⎫
∂ ∑ P ⎨∂ x µi ⎬ : n
r
n < < n 2 n , (3.10)
⎩ k ⎭ j определяющую число кодовых переходов, на которых соответствую∂ µi щая частная производная меняет свое значение. □ ∂ xk Определение 3.7 (О3.7). Под относительной оценкой приведенной востребованности [ ] (ОПВ) булевой переменной xi произвольной авk =1 j =1
k
k =1
r
тономной ДДС будем понимать величину n 1 n 2 ⎡ ∂ µ i ⎤ ( 2.86 ) 1 n ⎧ ∂ [ ] = n ∑∑ ⎢ ⎥ = n ∑ P ⎨ µ i ⎫⎬ : 2 −n < < 1 . □ (3.11) n 2 k =1 j =1 ⎣ ∂ xk ⎦ j n 2 k =1 ⎩ ∂ xk ⎭ Рассмотрим теперь случай, когда функционирование ДДС определяется кроме переменных состояния xk , k = 1,n также и набором входных переменных u λ , λ = 1,r . В этом случае выражения (3.9) – (3.11) необходимо уточнить. С этой целью опираясь на О3.6, О3.7 сформулируем понятие обобщенной относительной оценки приведенной востребованности некоторой выбранной булевой переменной произвольной ДДС.
r
170
r
Определение 3.8 (О3.8). Обобщенной относительной оценкой приведенной востребованности [ ]∗ булевой переменной xi произвольной
r
ДДС будем называть величину, имеющую два эквивалентных представления: m 1 ⎡ n 2 ⎡ ∂ µi ⎤ ∗ [ ] = m ⎢ ∑∑ ⎢ ⎥ + m 2 ⎢⎣ k =1 j =1 ⎣ ∂ xk ⎦ j r 2m ⎡ ∂ µ ⎤ ⎤ + ∑ ∑⎢ i ⎥ ⎥, m = n + r , (3.12а) k =1 j =1 ⎣ ∂ u k ⎦ ⎥ j ⎦
r
r
⎫ r 1 ⎡ n ⎧ ∂ [ ] = m ⎢ ∑ P ⎨ µ i ⎬ + ∑ P ⎧⎨ ∂ µ i ⎫⎬⎤⎥ , m = n + r (3.12б) m 2 ⎣ k =1 ⎩ ∂ xk ⎭ k =1 ⎩ ∂ u k ⎭⎦ где u k , k = 1,r – булевы переменные входа ДДС. □ Нетрудно видеть, что введенные О3.7 и О3.8 дают количественную оценку востребованности соответствующих булевых переменных в процедуру динамического кодопреобразования, при этом оценка вычисляется с приведением ее к мощности полного множества кодовых переходов ДДС так, что для выражения (3.10) она определяется нормирующим коэффициентом 1 κˆ авт = n , (3.13) n2 а для выражений (3.12а), (3.12б) – нормирующим коэффициентом 1 κˆ пр = . (3.14) m 2m Разница в коэффициентах обуславливается тем, что значения переменных u k , k = 1,r входа ДДС на кодовых переходах не формируются непосредственно средой ДДС так, как формируются значения переменных состояния посредством БФ µ i ( x ,u ), i = 1,n возбуждения (2.12), а лишь принимают участие в процедуре кодопреобразования. Приведенные соображения уже являются достаточными для решения поставленной задачи, однако процедура решения становится много удобнее, если воспользоваться следующими понятиями. Определение 3.9 (О3.9). Матрицей S f чувствительности Селлер∗
са векторной булевой функции f ( xi , i = 1,n ) = col { f j ( xi ), j = 1,m} к вариациям булевых переменных xi называется такая матрица S f , строки s fj которой образованы частными производными s ( f ji ) =
∂ fj ∂ xi
171
Селлерса булевых функций f j ( x1 , x2 ,..., xn ) по булевым переменным xi так, что матрица S f принимает вид
{[
]
}
(3.15) S f = col row s ( f ji ) , i = 1,n , j = 1,m . □ Определение 3.10 (О3.10). Матрицей S ДДС чувствительности
Селлерса произвольной ДДС к вариациям ее переменных xi , i = 1,n состояния и переменных u k , k = 1,r входа называется матрица S ДДС
⎧⎡ ⎧ ⎧ ⎡∂ µ ⎤ ⎪⎪ ⎪⎢ j = col ⎨ row⎨ ⎨ ⎢ ⎥ ⎪⎩ ⎪⎩ ⎣ ∂ u k ⎦ ji ⎪⎩ ⎢⎣
строки s j ∂µj ∂ xρ
и
∂µj ∂ uk
⎫ ⎤ , ⎫⎪ ⎥ ⎪ ⎬ , j = 1,n ⎬ , ⎪⎭ ⎥⎦ ⎪⎭ (3.16) которой образованы первыми частными производными ⎡∂ µ j ⎤ ⎢ ⎥ ⎣⎢ ∂ x ρ ⎦⎥ ji + r
⎫⎪ i , ρ = 1,n ⎬; ⎪⎭ k = 1,r
Селлерса БФ µ i ( x ,u ), i = 1,n возбуждения (2.12) по соот-
ветствующим булевым переменным. □ Определение 3.11 (О3.11). Под матрицей весов PS матрицы S ДДС (3.16) чувствительности Селлерса будем понимать матрицу
⎫ ⎫⎤ ⎫ ⎪ i , ρ = 1,n , ⎪ ⎥ ⎪ ⎬; ⎬ ⎥ , j = 1,n ⎬ , ⎪⎭ k = 1,r ⎪⎭ ⎦ ⎪ ⎭ (3.17) с весовыми элементами p S ji , вычисленными на множестве полной ⎧⎡ ⎧ ⎧ ⎡ ⎡ ∂ µ ⎤⎤ ⎡ ⎡ ∂ µ ⎤⎤ ⎪⎪ ⎪⎢ j j PS = col ⎨ row⎨ ⎨ ⎢ P ⎢ ⎢P ⎢ ⎥⎥ ⎥ ⎥ ⎢ ∂ ∂ u x ⎥⎦ ⎦⎥ ji + r ⎢ k ρ ⎣ ⎦ ⎦ ji ⎣⎢ ⎣ ⎪⎣ ⎪⎩ ⎪⎩ ⎣ ⎩
мощности равной 2 m кодовых переходов так, что 0 < p S ji ≤ 2 m . □ С учетом О3.11 и Г3.1 обобщенная относительная оценка коммута∗ ционной способности [ m] комбинационной схемы ДДС с учетом (3.9) характеризуется нормой, которая имеет вид:
[ m]
∗
≡ PS ДДС = n κˆ −1
∗
∑∑∑ [sij ] k , n
m 2m
i =1 j =1 k =1
sij ∈ S ДДС ,
(3.18а)
или с учетом (3.20) в эквивалентной форме
[ m]∗ ≡
n
m
PS ДДС = n −1κˆ ∗ ∑∑ p S ji , p S ji ∈ PS ,
(3.18б)
i =1 j =1
где κˆ ∗ – нормирующий коэффициент, определяемый спецификой решаемой задачи конструирования ДДС Введенные определения позволяют сформулировать понятие степени востребованности произвольной переменной булевого описания ДДС, использование которой (как будет показано в параграфе 3.3) ока-
172
зывается весьма эффективным при выборе рационального ресурса помехозащиты процесса динамического кодопреобразования в среде ДДС. Определение 3.12 (О3.12). Степенью Rxi востребованности некоторой булевой переменной xi кода состояния ДДС будем называть величину
R = ∑ ∑ [s ] = ∑ p m 2m
xi
j = 1 k =1
m
ij k
j =1
S ji
sij ∈ S ДДС ; p S ji ∈ PS . □ (3.19)
,
Определение 3.13 (О3.13). Обобщенной (совокупной) степенью R∑ востребованности переменных xi ,i = 1,n булевого описания ДДС будем называть норму вектор-столбца
⎫ ⎧ ⎛ m 2m ⎧⎛ m ⎞ R∑ = col ⎨ ⎜⎜ ∑∑ [sij ] k ⎟⎟ ; i = 1,n ⎬ = col ⎨ ⎜ ∑ pS ji ⎞⎟ ; i = 1,n ⎫⎬ , (3.20) ⎠i ⎠i ⎩ ⎝ j =1 ⎭ ⎭ ⎩ ⎝ j =1 k = 1 вычисляемую на множестве полной мощности кодовых переходов ДДС, имеющую вид
R
∑
n
= n −1κˆ ∗ ∑ ri ; ri ∈ R∑ . □
(3.21)
i =1
Смысл величины степени востребованности, вычисляемой в силу (3.21), состоит в том, что эта величина уточняет величину обобщенной ОПВ для каждой переменной в силу специфики конкретной структуры ДДС, выраженной числом ее переменных состояния xi ,i = 1,n , а также числом экзогенных переменных u k , k = 1,r . Процедура вычисления степени востребованности переменных булевого описания ДДС может быть осуществлена выполнением следующего алгоритма.
Алгоритм 3.3 (А.3.3) вычисления обобщенной степени востребованности переменных булевого описания ДДС (ГДДС) 1. В силу (3.16) и положений определения 3.10 сконструировать матрицу S ДДС чувствительности Селлерса булевого описания произвольной ДДС ее переменных xi , i = 1,n состояния и переменных u k , k = 1,r входа к их вариациям на кодовых переходах. 2. Вычислить в силу (3.20) и положений определения 3.11 матрицу весов PS матрицы чувствительности S ДДС , сконструированную выполнением п.1 алгоритма.
173
3. Вычислить с использованием (3.21) величину обобщенной степени востребованности переменных xi ,i = 1,n булевого описания ДДС в форме нормы
R
∑
.■
Пример 3.3 (Пр.3.3) Требуется оценить степень востребованности в процессе функционирования ДДС булевых переменных ее описания, полученного при конструировании устройства, формирующего из унитарной экзогенной последовательности u( k ) = 1( k ) выходную периодическую последовательность y( k ) = y( k + 12 ) = 101001011100 … при обеспечении простоты ее технической реализации. Конструирование устройства в силу положений алгоритма 2.1 с учетом требования минимальной сложности его технической реализации приводит к выбору соседних кодов для осуществления кодирования в форме X = к{ S } алфавита S состояния ДДС и дает граф переходов (рисунок 3.6). При этом совмещенное представление правил перехода и выхода принимает вид таблицы 3.6, в соответствии с которой и назначением D–триггеров для технической реализации ячеек памяти конструируются булевы функции, аналитически реализующие правило перехода λ ( x, u ) и выхода δ ( x ) устройства. Таблица 3.6
Выход y ( k ) выхода устройства Вход u
0 1
1
0
1
0
0
1
Вектор x T ( k ) состояния устройства 1111 1111 1101
1101 1101 0101
0101 0101 0111
0111 0111 0110
0110 0110 0100
0100 0100 1100
x T (k + 1) = ( λ [ x(k ), u (k )] )
T
174
Таблица 3.6 (продолжение)
Выход y ( k ) выхода устройства Вход u
0 1
0
1
1
1
0
0
Вектор x T ( k ) состояния устройства 1100 1100 1000
1000 1000 1001
1001 1001 1011
1011 1011 1010
1010 1010 1110
1110 1110 1111
x T (k + 1) = ( λ [ x(k ), u (k )] )
T
κ { s1}
κ { s12 }
κ { s2 }
κ { s3 }
κ { s4 }
κ { s5 }
κ { s11}
κ { s6 } κ { s8 }
κ { s7 }
κ { s10 }
κ { s9 } Рисунок 3.6. Граф переходов ДДС
175
Таким образом, получим булево описание ДДС: µ 1 = u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ;
µ 2 = u ( x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ;
µ 3 = u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ;
µ 4 = u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ;
y = x1 x2 x3 x4 ∨ x1 x2 x3 x4 ∨ x1 x2 x3 x4 ∨ x1 x2 x3 x4 ∨ x1 x2 x3 x4 ∨ x1 x2 x3 x4 . Вычислим далее с использованием алгоритма 3.3 оценку степени востребованности булевых переменных полученного аналитического описания ДДС, в соответствии с которым: 1. конструирование матрицы S (3.16) чувствительности булевого описания ДДС к вариациям переменных xi , i = 1, 4 ее состояния и ее экзогенной булевой переменной u дает матрицу S в форме (поэлементно):
⎡ s11 ⎢s S = ⎢ 21 s ⎢ 31 ⎣ s 41
s12 s 22 s 32 s 42
s13 s 23 s 33 s 43
s14 s 24 s 34 s 44
где s ji , j = 1,4 , i = 1,5 :
176
⎡ ∂ µ1 ⎢ ∂u ⎢ s15 ⎤ ⎢⎢ ∂ µ 2 s 25 ⎥ ⎢ ∂ u = s 35 ⎥ ⎢ ∂ µ 3 ⎥ s 45 ⎦ ⎢ ∂ u ⎢ ⎢∂ µ4 ⎢ ⎣ ∂u
∂ µ1 ∂ x1
∂ µ1 ∂ x2
∂ µ1 ∂ x3
∂ µ2 ∂ x1
∂ µ2 ∂ x2
∂ µ2 ∂ x3
∂ µ3 ∂ x1
∂ µ3 ∂ x2
∂ µ3 ∂ x3
∂ µ4 ∂ x1
∂ µ4 ∂ x2
∂ µ4 ∂ x3
∂ µ1 ⎤ ∂ x4 ⎥ ⎥ ∂ µ2 ⎥ ∂ x4 ⎥⎥ , ∂ µ3 ⎥ ⎥ ∂ x4 ⎥ ∂ µ4 ⎥ ⎥ ∂ x4 ⎦
s 11 = ( u ( x1 x 2 x 3 x4 ∨ x1 x 2 x3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x4 ∨ x1 x 2 x3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ⊕
⊕ ( u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ,
s 12 = ( u ( x1 x 2 x3 x 4 ∨ x1 x 2 x 3 x4 ∨ x1 x 2 x3 x 4 ∨ x1 x 2 x3 x 4 ∨ x1 x 2 x 3 x4 ∨ x1 x 2 x3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ⊕
⊕ ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ∨ ∨ u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ,
s 13 = ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x3 x 4 ∨ x1 x 2 x 3 x4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x3 x 4 ∨ x1 x 2 x 3 x4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ⊕
⊕ ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ∨ ∨ u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ,
s 14 = ( u ( x1 x 2 x3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x4 ∨ x1 x 2 x3 x 4 ∨ x1 x 2 x 3 x4 ∨ x1 x 2 x 3 x4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ⊕
⊕ ( u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨ ∨ u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ,
s 15 = ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ⊕ ⊕ ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ∨ ∨ u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ,
s 21 = ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ⊕ ⊕ ( u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ∨ ∨ u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ,
s 22 = ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ) ⊕ ⊕ ( u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨ ∨ u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ) ,
s 23 = ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ⊕ ⊕ ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ∨ ∨ u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ,
177
s 24 = ( u ( x1 x 2 x3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x4 ) ∨
∨ u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ⊕ ⊕ ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ∨ ∨ u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ,
s 25 = ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x4 ∨ x1 x 2 x3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x4 ∨ x1 x 2 x3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ) ⊕ ⊕ ( u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨ ∨ u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ) ,
s 31 = ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ⊕
⊕ ( u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ∨ ∨ u ( x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ,
s 32 = ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ⊕
⊕ ( u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ∨ ∨ u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) , s 33 = ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ⊕
⊕ ( u ( x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ∨ ∨ u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ,
s 34 = ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ⊕
⊕ ( u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ∨ ∨ u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) , s 35 = ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ⊕
⊕ ( u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ∨ ∨ u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) , s 41 = ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ⊕
⊕ ( u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ∨ ∨ u ( x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ,
178
s 42 = ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ⊕
⊕ ( u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ∨ ∨ u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) , s 43 = ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ⊕
⊕ ( u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ∨ ∨ u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) , s 44 = ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ⊕
⊕ ( u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ∨ ∨ u ( x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ,
s 45 = ( u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) ⊕
⊕ ( u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ∨ ∨ u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ) .
2. выполнение п.2 алгоритма с использованием вычислительных средств дает матрицу весов PS матрицы S (3.16) чувствительности Селлерса ⎡ 8 12 12 8 16 ⎤ ⎢ 8 16 12 16 8 ⎥ ⎥. PS = ⎢ ⎢ 8 8 24 8 8 ⎥ ⎢ ⎥ ⎣ 8 24 8 8 8 ⎦ 3. вычисление в силу (3.21) величины обобщенной степени востребованности переменных xi , i = 1,4 булевого описания ДДС в виде нормы
R
∑
вектор-столбца (3.21)
⎧⎛ m ⎫ ⎞ = col ⎨ ⎜ ∑ { p S ji ; p S ji ∈ PS }⎟ ; i = 1,n ⎬ = [56 60 56 ⎠i ⎩ ⎝ j =1 ⎭
R
∑
T 56 ] ;
при выборе нормирующего коэффициента κˆ ∗ = ( m 2 m ) дает −1
R
∑
= κˆ ∗ ∑ ri = ( n m 2 m n
i =1
) ∑r −1 n
i =1
i
≅ 0 ,0016 ⋅ ( 56 + 60 + 56 + 56 ) ≅ 0 ,36 . ■
179
3.3. Использование фактора востребованности булевых переменных кодов состояний НДДС для рационального использования ресурса помехозащиты Ставится и решается задача обеспечения гарантированной информационной надежности [11] функционирования УДА, порождаемая общей проблемой [56, 57] обеспечения надежности функционирования УДА, средствами использования при кодировании состояний их автоматного представления помехозащищенных кодов. Концептуальной особенностью параграфа является его направленность на рациональное использование ресурса помехозащиты, выражающейся в использовании фактора востребованности булевых переменных кодов состояния ДДС УДА в соответствии с правилом: более востребованной булевой переменной x ρ состояния ДДС УДА – больший ресурс λ помехозащиты.
ξ(k) f ( k ) = y( k ) + ξ ( k )
y( k )
ξ(k)
u( k )
x( k + 1) = λ [ x( k ), u ( k ) ] y ( k ) = δ [ x( k ), u ( k ) ]
y( k )
Рисунок 3.7. Структурное представление среды КС и ДДС
Решение поставленной задачи предварим тем, что отметим основную ее особенность, состоящую в том, что среда ДДС представляет собой динамический канал передачи и хранения информации, в котором формирование сигналов переменных состояния x( k ) и x( k + 1) , участвующих в процессе кодопреобразования, также подвержены искажению, как и в двоичных каналах связи кодовая последовательность y ( k )
180
при ее передаче или хранении. На рисунке 3.7 структурно показана среда двоичного канала КС передачи информации, и среда ДДС, имеющая описание в форме (1.21), (1.22), из которого становится очевидным, что решение задачи обеспечения информационной надежности ДДС должно учитывать особенности ее среды кодопреобразования. Кроме этого при использовании методов помехоустойчивого кодирования для формирования ресурса помехозащиты УДА следует выделить следующую их специфику. Она состоит в том, что помехоустойчивое кодирование производится не в фазе эксплуатации УДА, а камерально в фазе его разработки, в то время как процесс декодирования с целью формирования синдрома сбоя в функционировании УДА происходит как во времени, так и в пространстве, что должно быть соответствующим образом технически реализовано в аппаратурной среде устройства. Рассмотрим далее процедуру построения ДДС гарантированной информационной надежности с использованием процедуры помехоустойчивого кодирования, применяемой для обеспечения помехозащищенности кодовых посылок, передаваемых по двоичным КС. Эта процедура опирается на гипотезу равновостребованности булевых переменных кодов состояния устройств в процессе их функционирования, а также на информацию о значении вероятности p элементарного сбоя в функционировании ДДС, представляющего собой искажение произвольного двоичного элемента кода вектора x ее состояния, определяемой путем симметрирования с помощью выражения (3.22) p = max( p01 , p10 ) , где p01 , p10 – соответственно вероятность трансформации (искажения) значения произвольного элемента кода вектора x ее состояния из нуля в единицу и наоборот. Задача обеспечения информационной надежности при этом состоит в обеспечении в среде ДДС выполнения неравенства Pсб ≤ Pдоп , (3.23) где Pсб – вероятность сбоя в формировании кода вектора состояния ДДС на кодовых переходах, которая не должна превосходить заданной допустимой [22 – 24] вероятности Pдоп сбоя, средствами сформированного ресурса помехозащиты. Концептуально ресурс помехозащиты в среде ДДС зададим в следующей форме. Концепция 3.1 (К3.1). Ресурс λ помехозащиты ДДС выражается числом вводимых в ее среду – в вектор ее состояния, избыточных разрядов (переменных), что наделяет его коды корректирующей способностью. □
181
Выбор λ ресурса помехозащиты и соответствующего ему (n~, n ) помехозащищенного кода осуществляется выбором избыточности λизб = n~ − n помехонезащищенных кодов в силу соотношения n+λизб ⎧ ⎫ n+λ −i λ ≡ λизб = arg ⎨ Pсб = ∑ Cni +λизб pi ( 1 − p) изб ≤ Pдоп ⎬ (3.24) i =s+1 ⎩ ⎭ при реализации корректирующей способности в форме исправления сбоев кратности s , и решением n+λизб ⎧ ⎫ n+λ −i λ ≡ λизб = arg ⎨ Pсб = ∑ Cni +λизб pi ( 1 − p) изб ≤ Pдоп ⎬ (3.25) i =r +1 ⎩ ⎭ при реализации корректирующей способности в форме обнаружения сбоев кратности r . С учетом того, что процесс декодирования помехозащищенных кодов состояния ДДС обладает минимальной аппаратурной сложностью, когда коды помехозащищенного УДА обладают полной блоковой систематикой [11], то образующую матрицу G помехозащищенного кода выберем [42, 51] в форме ~ (3.26) G= I G , ~ где I – n × n -единичная матрица, G – n × ( n~ − n ) -матрица провероч-
[
]
ных частей кодов, с учетом чего вектор xˆ состояния ДДС будет иметь вид ~ (3.27) ˆx = x xG .
[
]
Таким образом, в форме выполнения условия (3.23) помехозащищенную ДДС на этапе своего конструирования будем называть помехозащищенным КА (ПЗКА), задаваемым в силу автоматного представления (2.7)–(2.12), а также представлений (3.26), (3.27) в форме макровектора
{
ПЗКА : U , Xˆ , Y , λˆ ,δˆ ,G с элементами
[
}
(3.28)
]
~ G : ˆx( k ) = x( k ) x( k )G ,
(3.29)
λˆ : xˆ ( k + 1) = λˆ [ xˆ ( k ), u ( k ) ],
(3.30)
δˆ : y ( k ) = δˆ [ x( k ), u ( k )] ,
(3.31)
[
]
µˆ : v( k ) = µˆ xˆ ( k ), λˆ [ xˆ ( k ), u ( k )] = µ~ [ xˆ ( k ), u ( k ) ] , (3.32) при этом с учетом представлений (3.24), (3.25), используемых для выбора ресурса помехозащиты, саму помехозащищенную ДДС будем называть двоичной динамической системой гарантированной информационной надежности с номинальным ресурсом помехозащиты.
182
Для рационального использования ресурса помехозащиты, что проявляется в минимальной избыточности кодовых реализаций вектора состояния ДДС, введем определение, опирающееся на О3.12 степени Rxi востребованности булевой переменной xi кода состояния ДДС, вычисляемой в силу (3.19). Определение 3.14 (О3.14). Оценкой степени востребованности (ОСВ) булевой переменной xi ДДС в силу (3.24) будем называть величину m
prqi = κˆ ∗ ∑ p S ji = κˆ ∗Rxi j =1
( 3.22 )
= κˆ ∗ ri ;
p S ji ∈ PS , ri ∈ R∑ , (3.33)
где κˆ ∗ – нормирующий коэффициент, определяемый спецификой решаемой задачи конструирования ДДС. □ Вычисленную с помощью (3.33) величину ОСВ для булевых переменных xi , i = 1,n , образующих вектор состояния ДДС, необходимо учесть в (3.22) при выборе ресурса помехозащиты с использованием (3.24), (3.25). Из выражения (3.33), нетрудно видеть, что значение оценки prqi удовлетворяет неравенству 0 < prqi < 1 , (3.34) в силу чего эта оценка справедливо может быть использована для уточнения величины (3.22) вероятности p элементарного сбоя в форме ~ pi = p prqi . (3.35) Введем в рассмотрение следующие определения. Определение 3.15 (О3.15). Под глобально-мажорантным ресурсом помехозащиты λгл max будем понимать число λизб = n~ − n избыточных ~ n ) , параметры n~, n которого связаны соотношениразрядов кода ( n, ем (3.24) или (3.25) так, что λгл max = λизб . □ Определение 3.16 (О3.16). Под локально-мажорантным ресурсом помехозащиты λ L max будем понимать число λизб = n~L − n избыточных разрядов кода ( n~L , n ) , параметры n~L , n которого связаны соотношением (3.24) или (3.25), где вероятность p является решением уравнения
{
p = arg max prqi , i = 1, n i
}. □
Понятие минорантного ресурса помехозащиты введем с помощью следующего определения. Определение 3.17 (О3.17). Пусть
{
pв min = arg min prqi , i = 1,n i
}
представляет собой минимальное значение оценки востребованности булевых переменных кода состояния, тогда λmin = λmin ( n~ ,n ) , где n~, n 183
удовлетворяют неравенствам (3.24) или (3.25), при подстановке в них pmin = p pв min будем называть минорантным вместо p вероятности ~ ресурсом помехозащиты. □ Определение 3.18 (О3.18). Под двоичной динамической системой гарантированной информационной надежности с эффективным использованием ресурса помехозащиты понимается такая ДДС, булевы переменные xi которой разбиты на подмножества Gk , k = 1,ν такие, что их мощности удовлетворяют условию ν
∑ [ Gk ] = n ,
(3.36)
k =1
при этом локальные ресурсы помехозащиты λk , выделенные каждому из подмножеств Gk , удовлетворяют оценочным неравенствам λmin ≤ λk ≤ λгл max . □ (3.37) Определение 3.19 (О3.19). Помехозащищенную ДДС, в которой λ положено равным λгл max для всех k = 1,ν , будем называть двоичной динамической системой гарантированной информационной надежности с рациональным использованием ресурса помехозащиты. □ Примечание 3.3 (ПМ3.3). Заметим, что в случае если ОСВ prqi = 1, i = 1,n , то выражения (3.22), (3.24) и (3.25) для выбора ресурса помехозащиты ДДС имеют тот же смысл и вид, что и для обеспечения помехозащищенности кодовых комбинаций, передаваемых по КС. Различная востребованность переменных булевого описания ДДС приводит к тому, что ресурс помехозащиты, требуемый для обеспечения выполнения неравенства (3.23) для ДДС, оказывается меньшим, чем для обеспечения той же помехозащищенности кодовых комбинаций, передаваемых по КС. □ Вышеизложенные положения позволяют сформировать алгоритм, которому присвоим номер 3.3. Алгоритм 3.4 (А3.4) конструирования ГДДС гарантированной информационной надежности с рациональным использованием ресурса помехозащиты 4. Выполнить алгоритм 3.3. 5. В силу положений определения 3.16, заданной в виде (3.22) вероятности p элементарного сбоя в функционировании ДДС, допустимой вероятности Pдоп сбоя в функционировании ДДС и в зависимости от требуемого способа реализации корректирующей способности помехозащищенного кода, вычислить в силу
184
соотношений (3.24) (3.25) величину локально-мажорантного ресурса помехозащиты λ L max и образующую матрицу (3.26) помехозащищенного кода. 6. Построить формализованное описание конструируемой ГДДС в форме (3.28) – (3.31). 7. Получить с использованием полученного в результате выполнения п.3 алгоритма правила λˆ ( xˆ , u ) перехода и правила δˆ ( xˆ , u ) выхода ГДДС аналитическое представление булевых функций, описывающих выход ГДДС в форме y = δˆ ( xˆ , u ) и правило (3.32) возбуждения информационных входов триггеров в векторной форме v = µˆ ( ˆx ,u ), i = 1,n . 8. Построить с использованием полученных в результате выполнения п.4 алгоритма схемотехническую реализацию ГДДС. ■
Пример 3.4 (Пр3.4) Требуется на базе ДДС, сконструированной в примере 3.3, построить ГДДС гарантированной информационной надежности при рациональном использовании ресурса помехозащиты при вероятности Pсб < 1 × 10 −7 и вероятности элементарных сбоев p = 1 × 10 −4 , а также при реализации корректирующей способности в форме исправления сбоев. В соответствии с постановкой задачи конструирования ГДДС: 1. выполнение алгоритма 3.3 дает
⎧ m ⎫ 1.1 R∑ = col ⎨ ⎛⎜ ∑ { p S ji ; p S ji ∈ PS }⎞⎟ ; i = 1,n ⎬ = [56 60 56 56 ]T ; ⎠i ⎩ ⎝ j =1 ⎭ 1.2 оценки степени востребованности для переменных xi , i = 1,4 , вычисленные в силу (3.33) ⎛ m ⎞ prqi = κˆ ∗ ⎜ ∑ { p S ji ; p S ji ∈ PS }⎟ = κˆ ∗ ri , ri ∈ R∑ , где ⎝ j =1 ⎠i
κˆ ∗ = ( m 2 m ) = ( ( dim{ X } + dim{U } ) 2 ( dim{ X }+dim{U } ) ) = −1
−1
= ( ( 4 + 1 ) 2 ( 4 +1 ) ) = −1
в форме вектор-столбца [ prqi ]i =1,n :
1 ; 160
T
185
[p ]
T
rqi i =1 , n
T
⎡m ⎤ T = κˆ ⎢∑ { p S ji ; p S ji ∈ PS }⎥ = κˆ ∗ [ri ]i =1,n = ⎣ j =1 ⎦ i =1,n ∗
1 [56 60 56 56 ]T = [ 0,35 0,38 0,35 0,35 ]T ≈ 160 T ≈ [ 0,4 0,4 0,4 0,4 ] . 2. Вычисление в силу (3.24) оценки локально-мажорантного ресурса помехозащиты λ L max для исправления сбоев первой кратности дает =
{
}
~ p = p arg max prqi , i = 1,4 = 0 ,4 ⋅ 1 ⋅ 10 −4 = 0 ,4 ⋅ 10 −4 . i
~
⎧ N синдромов ≥ N сбоев : 2 n −n − 1 ≥ C n1+λизб ⎪ n + λизб λL max = arg ⎨ ⎧ ⎫ ⇒ λ L max = 3 n + λизб −i i i ( ) λ λ arg P C p 1 p P ≡ = = − ≤ ∑ ⎨ ⎬ + λ изб сб n доп изб ⎪ i = s +1 ⎩ ⎭ ⎩ что приводит к выбору образующей матрицы ⎡1 0 0 0 1 0 1⎤ G7 ,4 = ⎢0 1 0 0 1 1 1⎥ ⎢0 0 1 0 1 1 0 ⎥ ⎢⎣0 0 0 1 0 1 1⎥⎦ помехозащищенного ( 7, 4 ) кода. 3. Построение формализованного описания конструируемой ГДДС в форме (3.28) – (3.31) приводит с учетом проверочных частей кодов состояния ГДДС и представления для соответствующих разрядов помехозащищенного кода вида
κ { ˆx} = { x4 x3 x2 x1 m3 m2 m1 }; x1 |111 x2 |001 x3 |100 x4 |010 x5 |001 x6 |111 x7 |010 x8 |101 x9 |110 x10 |000 x11 |011 x12 |100
для сепаратной информационной части x вектора состояния xˆ ГДДС агрегированное табличное (таблица 3.7) представление правила λˆ [ xˆ ( k ), u ( k ) ] и правила δˆ [ x( k ), u ( k )]. Справедливость таких действий основывается на том, что сепаратная провероч~ ная часть xG вектора xˆ состояния ГДДС образуется в силу проверочных равенств, аргументы которых представляют собой исключительно компоненты сепаратной информационной части x вектора xˆ состояния ГДДС.
186
Таблица 3.7
Выход y ( k ) выхода устройства Вход u
0 1
1
0
1
0
0
1
Вектор x T ( k ) состояния устройства 1111 1111 1101
1101 1101 0101
0101 0101 0111
0111 0111 0110
0110 0110 0100
0100 0100 1100
x T (k + 1) = ( λ [ x(k ), u (k )] )
T
Таблица 3.7 (продолжение)
Выход y ( k ) выхода устройства Вход u
0 1
0
1
1
1
0
0
Вектор x T ( k ) состояния устройства 1100 1100 1000
1000 1000 1001
1001 1001 1011
1011 1011 1010
1010 1010 1110
1110 1110 1111
x T (k + 1) = ( λ [ x(k ), u (k )] )
T
4. Формирование булевых функций возбуждения информационных входов триггеров, реализующих сепаратную информационную часть x вектора xˆ состояния ГДДС, дает µˆ 1 = u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ;
µˆ 2 = u ( x1 x 2 x3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ) ;
µˆ 3 = u ( x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x 1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ;
µˆ 4 = u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ∨
∨ u ( x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ∨ x1 x 2 x 3 x 4 ) ,
187
а булевы функции возбуждения информационных входов тригге~ ров, реализующих сепаратную (избыточную) часть xG вектора xˆ состояния ГДДС, с учетом проверочных равенств m3 = x4 ⊕ x3 ⊕ x2 ,
m2 = x3 ⊕ x2 ⊕ x1 ,
m1 = x4 ⊕ x3 ⊕ x1 ,
получаемых из выбранной образующей матрицы G 7 , 4 , дает
µˆ m 3 = µ 4 ⊕ µ 3 ⊕ µ 2 , µˆ m 2 = µ 3 ⊕ µ 2 ⊕ µ 1 , µˆ m1 = µ 4 ⊕ µ 3 ⊕ µ 1 ; и булева функция выхода y = x1 x2 x3 x4 ∨ x1 x2 x3 x4 ∨ x1 x2 x3 x4 ∨ x1 x2 x3 x4 ∨ x1 x2 x3 x4 ∨ x1 x2 x3 x4 . Полученное аналитическое описание ГДДС является достаточным для построения схемотехнической реализации ГДДС. Следует заметить, что процедура конструирования ГДДС гарантированной информационной надежности с рациональным использованием ресурса помехозащиты в форме А3.4 обнаружила сокращение использованного ресурса помехозащиты. Без учета степени востребованности условию Pсб < 1 × 10 −7 удовлетворяет код ( 11,4 ) . Этот эффект будет проявляться особенно заметно с ростом числа состояний ГДДС, обнаруживая преимущества в схемотехнической реализации перед широко используемыми методами, такими, как «двойная память» [8]. ■
188
а булевы функции возбуждения информационных входов тригге~ ров, реализующих сепаратную (избыточную) часть xG вектора xˆ состояния ГДДС, с учетом проверочных равенств m3 = x4 ⊕ x3 ⊕ x2 ,
m2 = x3 ⊕ x2 ⊕ x1 ,
m1 = x4 ⊕ x3 ⊕ x1 ,
получаемых из выбранной образующей матрицы G 7 , 4 , дает
µˆ m 3 = µ 4 ⊕ µ 3 ⊕ µ 2 , µˆ m 2 = µ 3 ⊕ µ 2 ⊕ µ 1 , µˆ m1 = µ 4 ⊕ µ 3 ⊕ µ 1 ; и булева функция выхода y = x1 x2 x3 x4 ∨ x1 x2 x3 x4 ∨ x1 x2 x3 x4 ∨ x1 x2 x3 x4 ∨ x1 x2 x3 x4 ∨ x1 x2 x3 x4 . Полученное аналитическое описание ГДДС является достаточным для построения схемотехнической реализации ГДДС. Следует заметить, что процедура конструирования ГДДС гарантированной информационной надежности с рациональным использованием ресурса помехозащиты в форме А3.4 обнаружила сокращение использованного ресурса помехозащиты. Без учета степени востребованности условию Pсб < 1 × 10 −7 удовлетворяет код ( 11,4 ) . Этот эффект будет проявляться особенно заметно с ростом числа состояний ГДДС, обнаруживая преимущества в схемотехнической реализации перед широко используемыми методами, такими, как «двойная память» [8]. ■ 3.4. Построение эквивалентного линейного векторно-матричного представления НДДС на основе принципа агрегирования переменных булевых описаний
Цель настоящего параграфа – решить задачу расширения модельного ряда гибридных ДДС построением эквивалентного линейного векторно-матричного представления НДДС. Решение этой задачи позволит конструировать ГДДС не как гибридную версию соответствующей НДДС в рамках тех же нелинейных представлений, а уже как гибридную версию этой ДДС в классе линейных моделей. В свою очередь это даст возможность использовать большой потенциал линейных векторно-матричных описаний для исследования ГДДС, который с позиции отношения «вход–состояние–выход» соответствующего модельного представления ДДС позволит, например, исследовать вопросы
189
управляемости-наблюдаемости, структуры неподвижных состояний и замкнутых циклов. Решение поставленной задачи в концептуальной постановке использует принцип агрегирования переменных булевых описаний НДДС. Рассмотрение предложенного подхода предварим формулировкой следующей гипотезы. Гипотеза 3.2 (Г3.2). (О возможности построения эквивалентного линейного векторно-матричного представления НДДС). Возможность построения эквивалентного векторно-матричного представления НДДС обусловливается представимостью произвольной булевой функции над простым полем Галуа GF ( 2 ) композицией линейных операций, определяющих базис [17] (⊕, , 1) Жегалкина, при этом следует заметить, что функция «» умножения двух переменных по модулю два совпадает с логической функцией « & » конъюнкции этих переменных. В общесистемной постановке такой переход возможен в силу свойств модулярной арифметики над простым полем Галуа GF ( 2 ) . □ Справедливость положений гипотезы нетрудно обнаружить, если рассмотреть в общем виде представление полиномов Жегалкина, которые строятся на композиции линейных операций умножения (или операции конъюнкции « & ») и суммирования по модулю два. Вопрос лишь в способе представления в таких полиномах булевых термов, представляющих собой конъюнкцию набора булевых переменных. ■ Задача приведения нелинейного (автоматного) представления ДДС (2.7) – (2.12) к линейному векторно-матричному виду состоит в получении описания функционирования исходной нелинейной ДДС в векторно-матричной форме ˆ ˆx ( k ) + B ˆ u ( k ); ˆx ( k + 1) = A
(3.38)
ˆ u ( k ), y ( k ) = Cˆ ˆx ( k ) + H
(3.39)
где xˆ ( k ) – вектор состояния, dim ˆx = n' ; u ( k ) – вектор входной последовательности, dim u = r ; y ( k ) – вектор выходной последовательноˆ = n' ×n' ; B ˆ – матрица состояния, dim A ˆ – матрица сти, dim y = m ; A
ˆ – матˆ = n' ×r ; Cˆ – матрица выходов, dim Cˆ = m × n' ; H входов, dim B рица вход-выход УДА, при этом действия в описаниях (3.38), (3.39) осуществляются линейными операциями умножения матрицы на вектор и сложения по модулю p = 2 . Для очевидности предлагаемой методологии приведения автоматного представления ДДС (2.7) – (2.12) к линейному векторноматричному виду сформулируем следующее утверждение.
190
(
)
ˆ ,B ˆ линейного векторноУтверждение 3.2 (У3.2). Пара матриц A матричного описания (3.38), (3.39) ДДС размерности n задает булевы функции µi , i = 1,n возбуждения информационного входа соответствующих D–триггеров в форме (2.12). □ Доказательство. Для доказательства утверждения выделим переменные состояния xi из выражения (3.38) векторно-матричного описания ДДС и сопоставим их с аналитическим представлением функции возбуждения информационного входа ν i триггера, которое для D– триггера имеет общий вид: ν d i ( k ) = xi ( k + 1) , (3.40) где xi – переменная состояния D–триггера. Выделим в общем виде переменную xi состояния ДДС в параметризированной дискретным временем форме n
xi ( k + 1) = ∑ an ,i xi ( k ) ⊕ bi u ( k ) , i =1
(3.41)
ˆ и B ˆ , соответствующие переменной где an, i , bi – элементы матриц A xi векторно-матричного описания (3.38), (3.39). Здесь и далее по тексту
∑( • )i i
– суммирование по модулю два элементов ( • )i .
Подставим в выражение для функции (3.40) возбуждения информационного входа ν i триггера значение переменной xi ( k + 1) состояния из соотношения (3.41): n
ν d i ( k ) = xi ( k + 1) = ∑ an ,i xi ( k ) ⊕ bi u ( k ) . i =1
(3.42)
Сопоставление выражения (3.42) с выражением (2.12) показывает справедливость положений, постулируемых утверждением. ■ Зафиксируем значения входных переменных, соответствующие условию переходов в ДДС. Очевидно, что для решения задачи необходимо свести аналитическое описание БФ возбуждения информационного входа ν i триггера, имеющее вид µ( x1 , x2 ...xn ) = где
∨ &( x ), i<2n
n
i =1
j =1
ρj j
(3.43)
∨( • ) – дизъюнкция элементов ( • ), &( • ) – конъюнкция элеi
i
i
( )
j
j
ρ
ментов • j , а переменная x j j (здесь и далее по тексту) определяется следующим образом:
191
⎧x , ρ j = 1 ρ xj j = ⎨ j , x , = 0 ρ j j ⎩
к линейному виду:
(3.44)
µ ( x1 , x2 ...xn ) = α 0 ⊕ ∑α i xi , i
(3.45)
где α i – логическая константа, принимающая значение 0 или 1. Свести представление (3.43) булевых функций возбуждения к виду (3.45) позволяют положения теоремы Т2.1 в силу представления (2.95) (см. §2.5): n n ∂2 f ∂f ⋅ x ⊕ f ( x) = f ( 0) ⊕ ∑ ∑ x =0 i x = 0 ⋅ xi x j ⊕ Κ i =1 ∂ xi i , j =1∂ xi ∂ x j i≠ j
⊕
∂m f ⋅ x i 1 x i 2 Κ x im ⊕ Κ ∑ x=0 i1 ,i 2 ,Κ i m = 1 ∂ x i 1 ∂ x i 2 Κ ∂ x im n
∂n f ⊕ ⋅ x1 x2 Κ xn , ∂ x1∂ x 2 Κ ∂ x n x = 0 откуда видно, что в результате преобразования выражения (3.43) будем иметь линеаризованную булеву функцию, аргументы которой представляют собой сочетания переменных состояния в форме их произведения. Однако последнее обстоятельство не позволяет напрямую получить линейное векторно-матричное описание из системы полученных булевых функций. Решить эту проблему позволяют положения следующего утверждения. Утверждение 3.3 (У3.3). Произвольная НДДС представима линейной версией с векторно-матричным описанием в форме (3.38), (3.39) агрегированием конъюнкций булевых переменных булевого описания НДДС в форме полиномов Жегалкина в переменные ~ x состояния, расширяющие исходный вектор x , dim x = n , состояния НДДС в форме
[
]
(3.46) ˆx T = x T ~ xT , ˆ размерности dim A ˆ = n′ × n′ состояния имеет вид при этом матрица A χ 2 χ −1 ⎧ ⎡ pη , ⎪ ⎢ ai j : ai j ⊕ ∑ β χ C η =1 χ =1 ˆA = row ⎪⎨ col ⎢ ⎢ ⎪ ⎢⎣ j = 1,n′ , β χ = {0 , 1}, pη ∈ P , χ = ⎪⎩
χ
[P]
⎫ ⎤ ⎪ ⎥ ⎪ ⎥ ; j = 1,n′⎬ , ⎥ ⎪ ⎥⎦ ⎪⎭ (3.47)
C pη – «композиционное» произведение параметров pη множества P { p , p ,Κ , p }: p ∈ {0 ,1},i = 1, χ , образующее по классическому где
η =1
1
192
2
χ
i
n! множество P' «композициm! ( n − m )! онных» параметров в форме произведения параметров из множества P мощности χ = P ; β χ – коэффициент, значение которого при-
сочетательному закону
C
m n
=
[ ]
надлежит множеству {0 , 1}, а агрегирование переменных x осуществляется с использованием следующей рекуррентной процедуры (3.48) – (3.53): xi ( k + 1) = f i ( xi ( k + 1) ) = a0 ⊕ ai j x j ( k ) ⊕ Κ ⊕ ai n− j xn− j ( k ) ⊕ Κ Κ ⊕ ai n x n ( k ) ⊕ Κ ⊕
ν ≤ 2 n − n −1
n ~ xæ ( k ) ∑ αλ C æ =1 λ=1
θ
i , j = 1,n ; a0 ,ai j ,α λ : f ( p1 , p2 ,Κ , pη ) = γ η C pη ; η =1
α ,γ = {0 ,1},η = 1,θ
(3.48)
⎧⎪ n ⎫⎪ ~ xλ ( k ) = arg ⎨α λ C xæ ( k ) ≠ 0 ⎬ , λ = 1,ν ; κ = { ~ xλ ≠ 0 } æ =1 λ ⎪ ⎪ ⎩ ⎭ n
n
æ =1
æ =1
~ xλ ( k + 1) = ∏ xæ ( k + 1) = ∏ f æ ( xæ ( k + 1) )
(3.49)
(3.50)
xi ( k + 1) = f i ( xi ( k + 1) ) = a0 ⊕ a1 j x j ( k ) ⊕ Κ ⊕ a1n− j xn− j ( k ) ⊕ Κ κ
Κ ⊕ a1 n x n ( k ) ⊕ Κ ⊕ ∑ α λ ~ xλ ( k ), i , j = 1,n λ= 1
(3.51)
~ xλ ( k + 1) = f λ (~ xλ ( k + 1) ) = a0 ⊕ a1 j x j ( k ) ⊕ Κ ⊕ a1n− j xn− j ( k ) ⊕ Κ Κ ⊕ a1 n x n ( k ) ⊕ Κ ⊕
ν ≤ 2 n − n −1
n
∑ α λ′ C xæ ( k ) , æ =1
i , j = 1,n
(3.52)
⎧⎪ n ⎫⎪ ~ xλ′ ( k ) = arg ⎨α λ′ C xæ ( k ) ≠ 0 ⎬ , λ′ = 1,ν − κ ; κ ′ = { ~ xλ′ ≠ 0 } æ =1 λ′ ⎪ ⎪ ⎩ ⎭ Μ
(3.53)
λ=1
□
Доказательство. Из выражения (3.48) видно, что на каждом шаге выполнения рекуррентной процедуры формируются агрегированные переменные ~ xλ , представленные сочетаниями булевых переменных xi состояния ДДС в форме соответствующих конъюнкций. Начальный шаг рекурсии характеризуется мощностью алфавита
193
ν = [ ~x ] = 2 n − n − 1
(3.54) всех возможных сочетаний булевых переменных xi без повторений, кроме случая, когда элемент сочетания представлен одной переменной. Из выражения (3.53) видно, что на очередном шаге выполнения рекуррентной процедуры алфавит агрегированных переменных пополнится новыми сочетаниями из числа ν − κ оставшихся. В этой связи предельный переход при κ → 2 n − n − 1 дает
ν = lim ν − κ = lim n n κ →2 − n −1
[( 2
n
κ →2 − n −1
]
− n − 1) − κ = 0 .
(3.55)
пустое множество (3.54) всех оставшихся возможных сочетаний булевых переменных xi без повторений. Таким образом, рекуррентная процедура (3.48) – (3.53) всегда будет завершаться за конечное число шагов, число которых не превысит значения, определяемого выражением (3.54), а полученные агрегированные переменные образуют вектор (3.46) состояния, что в итоге позволяет по результатам рекурсии получить матрицу состояния линейной версии ДДС в форме (3.47). ■ Примечание 3.4 (ПМ3.4). Получаемое с использованием рекуррентной процедуры (3.48) – (3.53) векторно-матричное представление (3.38), (3.39) линейной версии НДДС размерности n по сути представляет собой векторно-матричное представление ГДДС с вектором соxi , i = 0 , n ′ − n стояния (3.46), при этом агрегированные переменные ~ состояния синтезированной линейной ДДС являются так называемыми линейными эквивалентами переменных состояния исходной НДДС. □ Примечание 3.5 (ПМ3.5). Появление агрегированных переменных ~ xi , i = 0 ,n′ − n состояния эквивалентной гибридной линейной ДДС при выполнении рекуррентной процедуры (3.48) – (3.53) опирается на то, что аналитическое представление в форме полиномов Жегалкина БФ возбуждения информационных входов триггеров НДДС в общем случае включает в себя компоненты, представляющие конъюнкцию нескольких переменных xλ ее состояния, так, что для таких БФ можно записать ⎧ ⎪ ∂ 2 µi R=⎨ ⎪ ∂ xi ∂ x j ⎩
∂ µi ∂ xi 1∂ xi 2 Κ ∂ xim m
i , j =1 , n i≠ j x =0
,
,Κ , i1 ,i2 ,Κ im =1 , n x =0
∂ µi ∂ x1∂ x2 Κ ∂ xn n
x =0
⎫ ⎪ ⎬≠∅. ⎪ ⎭
(3.56)
194
Запись (3.56) означает, что для указанного случая множество R не является пустым, что, в свою очередь, с использованием аппарата селлерсовского дифференцирования может быть использовано при проверке соответствующих булевых описаний ГДДС на корректность их составления. □ Примечание 3.6 (ПМ3.6). Следует заметить, что при конструировании эквивалентной гибридной ДДС нелинейной ДДС, построенной как ЦКУ или ЦДУ (см. §2.2), множество (3.56) будет пустым, то есть R = ∅ , что приведет при выполнении рекуррентной процедуры (3.48) – (3.53) и к пустому множеству { ~ x } агрегированных переменных булевого описания эквивалентной гибридной ДДС. Очевидность приведенных положений проистекает из того, что булевы функции возбуждения информационных входов триггеров ЛДДС имеют вид полиномов Жегалкина, в которых отсутствуют термы, представляющие собой конъюнкцию переменных ее состояния. □ Примечание 3.7 (ПМ3.7). В силу нелинейности среды кодопреобразования исходной НДДС, ее линейная версия в форме (3.38), (3.39) не всегда характеризуется свойствами полной управляемости и наблюдаемости. □ Выдвинутые положения параграфа позволяют сформировать Алгоритм 3.5 (А3.5) конструирования эквивалентного линейного векторно-матричного представления НДДС на основе принципа агрегирования переменных булевых описаний
9. В соответствии с задачей кодопреобразования средствами НДДС получить путем выполнения п.п.1–6 алгоритма 2.1 или алгоритма 2.2 ее описание в форме системы булевых функций µ (2.12) возбуждения информационных входов триггеров и выхода, которые представить в базисе Жегалкина. 10. Выполнить рекуррентную процедуру (3.48) – (3.53) с целью формирования составного вектора ˆx (3.46) состояния эквивалентной ЛДДС. 11. Построить покоординатное представление переменных вектора ˆx( k + 1) состояния перехода эквивалентной ЛДДС. 12. Опираясь на результаты п.3 алгоритма сформировать матричные ˆ ,B ˆ ,Cˆ , H ˆ компоненты описания эквивалентной линейной ДДС. A ■
195
Пример 3.5 (Пр3.5)
Проиллюстрируем процесс построения линейной ДДС эквивалентной в смысле отношения «вход–выход» в некоторой задаче кодопреобразования, реализуемой заданной нелинейной ДДС, при помощи алгоритма 3.5. Тогда следуя алгоритму 3.5: 1. Получим булево описание процесса кодопреобразования средствами НДДС в виде системы булевых функций µ (2.12) возбуждения информационных входов D-триггеров и выхода, имеющих представление µ1 = u x1 x2 ∨ x1 x2 ∨ u x1 x2 ; µ2 = u x1 ∨ x1 x2 ∨ u x1 x2 ; y = x1 x2 ,
которые в базисе Жегалкина записываются в форме µ1 = x1 ⊕ x2 ⊕ u x2 ; µ2 = u ⊕ x1 ⊕ u x1 ⊕ x1 x2 ⊕ ux1 x2 , y = x1 x2 .
2. Выполним рекуррентную процедуру (3.48) – (3.53), в результате чего образуем агрегированную переменную ~ x3 : ~ x =xx , 3
1 2
которая совместно с переменными x1 , x2 задает составной вектор T ˆx = [x x ~ x ] состояния конструируемой эквивалентной линей1
2
3
ной ДДС. 3. Составим выражения для переменных x1 ( k + 1) , x2 ( k + 1) , ~ x3 ( k + 1) состояния перехода эквивалентной ЛДДС в покоординатной форме:
x1 ( k + 1) = x1 ⊕ x2 ⊕ u x2 ( k ) ; x 2 ( k + 1) = u ⊕ x1 ( k ) ⊕ u x1 ( k ) ⊕ ~ x3 ( k ) ⊕ u ~ x3 ( k ) ; ~ x ( k + 1) = x ( k ) ⊕ ~ x (k)⊕ u ~ x ( k). 3
1
3
3
4. Опираясь на результаты п.3 алгоритма формируем матричные ˆ ,B ˆ ,Cˆ , H ˆ компоненты описания эквивалентной линейной ДДС, A которые получают представления: в виде четверки матриц
{ Aˆ ( u ) ,Bˆ ,Cˆ , Hˆ }, где
1⊕ u 0 ⎤ ⎡ 1 ⎡0 ⎤ ˆA( u ) = ⎢ 1 ⊕ u ˆ ˆ = [ 0 ]; ⎥ 0 1 ⊕ u , B ( x ) = ⎢1⎥ , Cˆ = [ 0 0 1 ] , H ⎢ 1 0 1 ⊕ u ⎥⎦ ⎢⎣0 ⎥⎦ ⎣
196
{
}
ˆ ,B ˆ ( x ) ,Cˆ , H ˆ , где а так же в виде четверки матриц A x2 ( k ) ⎡ ⎤ ⎡1 1 0 ⎤ ˆA = ⎢1 0 1⎥ , B ˆ ( x ) = ⎢1 + x ( k ) + ~ ˆ = [ 0 ]. x 3 ( k )⎥ , Cˆ = [ 0 0 1 ] , H 2 ~ ⎢ ⎥ ⎢⎣1 0 1⎥⎦ x3 ( k ) ⎣ ⎦ Проанализируем полученные результаты решения примера. Нелинейная природа исходной НДДС при построении эквивалентной линейной ДДС проявилась в параметризации матричных компонентов линейного представления правил перехода λ ( x , u ) и выхода δ ( x , u ) несмотря на расширение размерности вектора состояния эквивалентной ЛДДС. Тем не менее, отмеченная параметризация не лишает разработчика возможности анализировать с использованием линейного аналога НДДС ее структурные свойства: управляемость, наблюдаемость, а так же структуру неподвижных состояний и замкнутых циклов с привлечением возможностей матричного формализма. Заметим, что ˆ ,B ˆ обладает рангом ˆ ( x ) несмотря на то что матрица A пара матриц A равным двум – меньшим размерности пространства эквивалентной ЛДДС, пара матриц является управляемой. Так, в случае нулевого наT чального состояния ˆx( 0 ) = [ 0 0 0 ] матрица управляемости этой пары матриц в указанной точке пространства состояния принимает вид ˆB ˆ 2B ˆ ( 0 ); A ˆ ( 0 ); A ˆ ( 0 ) = row [ 010 ]T ,[ 10 0 ]T ,[ 111 ]T Wˆ = B
(
у
)
[
]
{
}
и обладает рангом равным трем, то есть размерности пространства состояния эквивалентной ЛДДС. Таким образом, эквивалентная ЛДДС с помощью входного сигнала равного единице выводится из нулевого начального состояния. Аналогичным образом может быть исследована любая точка пространства эквивалентной ЛДДС на всех наборах переменных ее вектора состояния. ■ Примечание 3.8 (ПМ3.8). При исследовании исходной НДДС средствами векторно-матричного инструментария линейных ДДС встает задача достаточно «тонкой» природы переноса результатов анализа структурных свойств (управляемости и наблюдаемости) эквивалентной ЛДДС на структуру пространства исходной НДДС. Эта же проблема возникает при межсистемном переносе результатов анализа неподвижных состояний и замкнутых циклов. Принципиально алгебраическими методами эта проблема решаема, для чего вектор состояния эквивалентной ЛДДС и вектор состояния исходной НДДС необходимо связать матрицей преобразования подобия в общем случае – вырожденного, которое от исследователя требует элементарной «матричной аккуратности», причем матричные процедуры при переносе результатов с эквивалентной ЛДДС на НДДС могут потребовать использование псевдообращения матриц над конечным полем. 197
Дополнительной проблемой является фактор «параметризированности» матричных компонентов эквивалентного линейного модельного описания. Представляется, что более удобной с целью исследования структуры пространств управляемости и наблюдаемости является версия линейной модели с непараметризированной матрицей состояния и параметризированной матрицей входа эквивалентной ЛДДС. В этом случае пространство наблюдаемости ЛДДС оказывается стационарным и не зависящим от текущих значений переменных состояния и входа. Фактор «параметризированности» матрицы входа требует по-новому взглянуть на проблему анализа пространства управляемости. Очевидно возникает необходимость во введении понятия пространства гарантированной управляемости, которое представляет собой пересечение подпространств управляемости, полученных на всех наборах переменных состояния эквивалентной ЛДДС, параметризирующих матрицу входа. И последнее что хотелось бы отметить в заключение. В силу использования в составе эквивалентной ЛДДС агрегированных переменных вектора состояния, которые в своей основе представляют собой конъюнкции переменных вектора состояния исходной НДДС, эквивалентная ЛДДС оказывается линейной в основном по форме записи. По-существу она является гибридной ДДС. Таким образом алгоритм 3.5 представляет собой эффективный способ конструирования гибридных ДДС на основе исходной нелинейной ДДС. Причем в алгоритме заложена возможность управления размерностью вектора состояния эквивалентной ЛДДС. Следует ожидать интересных результатов при построении агрегированных переменных использованием дизъюнкций конъюнкций. □
3.5. Проблема обмена на паре «аппаратурное пространство – временные затраты» в задачах помехозащитного кодопреобразования
Проблема обмена аппаратурного пространства на временные затраты и наоборот в теории и практике двоичных динамических систем устройств дискретной автоматики имеет более широкий постановочный характер, чем тот, что вынесен в заголовок параграфа. Эта проблема возникает всякий раз, когда в составе аппаратуры УДА есть функциональные компоненты, в которых процесс кодопреобразования носит векторный характер, не параметризованный дискретным време198
нем. При этом с указанными компонентами соседствуют другие, в которых процессы кодопреобразования имеют скалярный характер, параметризованный дискретный временем. Тем не менее наиболее наглядно проблема обмена аппаратурного пространства на временные затраты обнаруживается в задачах именно помехозащитного кодопреобразования. Таким образом, поставленная задача будет решаться на четырехфазном процессе помехозащитного кодопреобразования: «помехозащитное кодирование – передача ПЗК по каналу связи, сопровождающаяся искажением помехозащищенного кода, – декодирование принятого из КС ПЗК с искажениями с целью формирования синдрома ошибки – исправление ошибки в принятом из КС коде». При решении поставленной проблемы постулируем следующие положения. Постулат 3.3 (ПС3.3). Помехонезащищенный код (ПНЗК) может поступать на узел помехозащиты в скалярной параметризованной дискретным временем форме, то есть в виде последовательного кода старшим разрядом вперед. □ Постулат 3.4 (ПС3.4). ПНЗК может подаваться на узел помехозащиты в векторной не параметризованной дискретным временем форме, то есть в виде параллельного кода (старшим разрядом вниз). □ Постулат 3.5 (ПС3.5). Двоичный КС передачи ПЗК от узла помехозащиты к узлу декодирования и коррекции кода при всех реализациях процесса помехозащитного кодирования и декодирования является скалярный параметризованный дискретным временем так, что по нему передается последовательный двоичный код. □ Постулат 3.6 (ПС3.6). Процесс кодопреобразования характеризуется «канальным» временем (ВК), если он происходит в форме ввода двоичной кодовой последовательности в канальную среду при передаче или вывода из канальной среды при приеме. □
199
Постулат 3.7 (ПС3.7). Процесс кодопреобразования характеризуется «аппаратурным» временем (ВА), если его осуществление непосредственно не связано с каналом связи. □ Примерами процессов кодопреобразования, осуществляемых в темпе канального времени являются: дивидендное помехозащитное кодирование; преобразование вектора ПЗК, сформированного матричным не параметризованным дискретным временем методом, в последовательный код; дивидендное помехозащитное декодирование с целью формирования синдрома ошибок; размещение искаженного ПЗК, принятого из КС, в сдвиговом регистре хранения и т.д. Примерами процессов кодопреобразования, осуществляемых в темпе аппаратурного времени являются: преобразование последовательного ПНЗК в параллельный при матричном методе формирования ПЗК; процесс деления в дивидендном декодирующем устройстве при повторных циклах деления и т.д. Следует заметить, что канальное время, определяемое длительностью элементарного сигнала кода и числом разрядов этого кода, не модифицируемо в силу требований используемого протокола канального уровня. Аппаратурное время, напротив, является модифицируемым, при этом выбором делителей частоты генераторов тактовых импульсов можно осуществить такое соотношение между канальным и аппаратурным временем, при котором процессы преобразования последовательного кода в параллельный при матричном методе помехозащитного кодирования можно осуществить за один такт канального времени; за один такт канального времени можно также осуществить каждый повторный цикл деления при дивидендном декодировании. Модифицируемость аппаратурного времени является основным резервом сокращения временных затрат при помехозащитном кодировании и декодировании. Определение 3.20 (О3.20). Мера аппаратурного пространства, занимаемого функциональным компонентом, задействованном в процессе помехозащитного линейного кодопреобразования, осуществляемого векторно-матричным способом, не параметризованным дискретным временем, определяется размерностью матрицы линейного кодового преобразования. □ Определение 3.21 (О3.21). Мера аппаратурного пространства, занимаемого функциональным компонентом, задействованном в процессе помехозащитного нелинейного кодопреобразования, осуществляемого в силу булева описания процесса, определяется размерностью нелинейного кодового преобразователя, задаваемой мультипликативным образом на числе булевых переменных на входе и числе булевых функций на выходе. □
200
Примечание 3.9 (ПМ3.9). Нетрудно видеть, что введенные меры обладают заметной достаточностью так, как они в линейном случае не учитывают число нулевых элементов матриц, а в нелинейном – число основных конъюнкций в дизъюнкции конъюнкций. □ Определение 3.22 (О3.22). Функционалом размещения в аппаратурном пространстве и времени функционального компонента, задействованного в процессе помехозащитного преобразования, называется мультипликативная скалярная характеристика, элементами которой является мера аппаратурного пространства и временные затраты, выраженные в числе тактов канального времени. □ Определение 3.23 (О3.23). Будем считать размещение функционального компонента, задействованного в процессе помехозащитного преобразования, в аппаратурном пространстве и времени оптимальным, если это размещение характеризуется минимальным значением функционала размещения. □ Утверждение 3.4 (У3.4). Пусть процесс кодопреобразования характеризуется числом фаз этого процесса, равным q , тогда совокупный функционал размещения J ∑ многофазного процесса в аппаратурном пространстве и времени обладает аддитивным свойством так, что выполняется соотношение q
J∑ = ∑ J j . □
(3.57)
j =1
Доказательство утверждения использует тот факт, что естественным аддитивным свойством обладают время и аппаратурное пространство. ■ Теперь может быть сформулирован принцип проектирования устройств помехозащитного кодопреобразования, использующего возможности обмена аппаратурного пространства на временные затраты и наоборот – с целью достижения оптимального размещения устройства в аппаратурном пространстве и времени. Этот принцип формально может быть записан в виде q ⎫ ⎧ УПЗКП = arg min ⎨ J ∑ = ∑ J j ; J j = T j N j M j ⎬ , (3.58) = j 1 ⎭ ⎩ T j , N j ,M j
где УПЗКП – устройство помехозащитного кодопреобразования; T j – длительность осуществления j -ой фазы помехозащитного кодопреобразования; N j , M j – компоненты меры аппаратурного пространства, в котором размещено устройство, реализующее j -ю фазу кодопреобразования, и характеризующееся мерой S j = N j M j .
201
ЗАКЛЮЧЕНИЕ В монографии сделана попытка объединить исследования двух ветвей двоичных динамических систем устройств дискретной автоматики под «одной обложкой». В современной теории ДДС ветвь линейных двоичных динамических систем и ветвь двоичных динамических систем, построенных в одной из автоматных логик, обычно рассматриваются порознь. Совместное рассмотрение линейной и автоматной версий двоичных динамических систем привело авторов к необходимости введение третьего класса ДДС, объединяющих возможности линейных и автоматных версий этих систем, названного авторами гибридными двоичными динамическими системами. Следует ожидать, что класс гибридных ДДС в ближайшее время обнаружит дополнительные интересные возможности и поставит новые проблемы, с результатами разработок которых авторы обязательно познакомят научную общественность.
201
D-ПРЕОБРАЗОВАНИЕ ДВОИЧНЫХ
ПРИЛОЖЕНИЕ
ПОСЛЕДОВАТЕЛЬНОСТЕЙ
Определение П1.1 (ОП1.1). Прямым
D-преобразованием
F ( d ) двоичной
последовательности f ( k ) , где k – дискретное время, выраженное в числе так-
тов длительности ∆ t , над простым полем Галуа GF ( p ) = = {0 ,1, 2 ,Κ , p − 1} , где p = 2 называется бесконечная сумма ∞
F ( d ) = D{ f ( k )} = ∑ f ( k ) d k ,
(П1.1)
k =0
при условии, что она сходится. □ Функция F ( d ) называется f ( k).
D-образом двоичной последовательности
Определение П1.2 (ОП1.2). Обратным
D-преобразованием D
−1
{ F ( d )}
D-образа F ( d ) двоичной последовательности f ( k ) называется преобразование, позволяющее по D-образу F ( d ) двоичной последовательности f ( k ) вос-
становить исходную последовательность f ( k ) в силу соотношения
D −1 { F ( d ) } = f ( k ) . □
(П1.2)
Последовательность f ( k ) именуется оригиналом
D-преобра-зования. Таким образом f ( k ) и F ( d ) представляет собой взаимные D-трансформанты. Канонически сложившегося аналитического обратного D-преобразования D −1 { F ( d ) } пока не существует, но имеются способы их вычисления, которые опираются
на
определение
прямого
D-преобразования. Для иллюстрации этих способов запишем (П1.1) в развернутой форме
F ( d ) = f ( 0 ) + f ( 1) d + f ( 2 ) d 2 + f ( 3 ) d 3 + Κ + f ( k ) d k + Κ Первый способ вычисления обратного
форме
D-преобразования, записываемого в
D −1 { F ( d ) } = [ f ( 0 ) f ( 1)d f ( 2 )d 2
]
Κ f ( k )d k Κ = f ( k )
на основе (П1.3) позволяет с учетом модальной арифметики записать:
202
(П1.3)
(П1.4)
f ( 0 ) = lim F ( d ) ;
⎫ ⎪ F ( d ) + f ( 0) ⎪ f ( 1) = lim ; d →0 ⎪ d ⎪ F ( d ) + f ( 0 ) + f ( 1) d f ( 2 ) = lim ; ⎪⎬ 2 d →0 d ⎪ Μ ⎪ k −1 F ( d ) + ∑ f ( i )d i ⎪ i =0 ⎪ f ( k ) = lim . ⎪⎭ d →0 dk d →0
Второй способ вычисления обратного
(П1.5)
D-преобразования, записываемого в
форме (П1.4) на основе (П1.3) позволяет использованием операции дифференцирования по переменной d записать:
f ( 0 ) = lim F ( d ) ;
⎫ ⎪ ∂F ( d ) ⎪ f ( 1) = lim ; ⎪ d →0 ∂d 2 ⎪ 1 ∂ F( d ) f ( 2 ) = lim ; ⎬ d →0 2! ∂d2 ⎪ ⎪ Μ k ⎪ 1 ∂ F( d ) f ( k ) = lim . ⎪ d →0 k ! ∂dk ⎭ d →0
Третий способ вычисления обратного
(П1.6)
D-преобразования для случая, когда
F ( d ) представим в виде отношения двух модулярных многочленов, записанных по степеням переменной d , M ( d ) b0 + b1 d + b2 d 2 + b3 d 3 + Κ + bλd λ F( d ) = = N ( d ) a0 + a1 d + a 2 d 2 + a3 d 3 + Κ + an d n
(П1.7)
позволяет путем деления ММ «уголком» с учетом модулярной (по mod 2 ) арифметики
203
b0 + b1 d + b2 d 2 + b3 d 3 + Κ + bλd λ
a0 + a1 d + a2 d 2 + a3 d 3 + Κ + an d n
a0 + a1 d + a2 d 2 + a3 d 3 + Κ + an d n
b0 a1 + b1 a ( a + b )+ ( a + b ) + d + 1 1 1 2 2 2 d 2 +Κ a0 a0 a0
( a1 + b1 ) d + ( a2 + b2 ) d 2 + ( a3 + b3 ) d 3 + Κ a0 ( a1 + b1 ) d + a1 ( a1 + b1 ) d 2 + a2 ( a1 + b1 ) d 3 + Κ a0
a0
a0
⎛ a1 ⎞ ⎛a ⎞ ⎜⎜ ( a1 + b1 ) + ( a2 + b2 )⎟⎟ d 2 + ⎜⎜ 2 ( a1 + b1 ) + ( a3 + b3 )⎟⎟ d 3 + Κ , ⎝ a0 ⎠ ⎝ a0 ⎠ для двоичной последовательности записать
f ( k ) : f ( 0) =
b0 a + b1 , f ( 1) = 1 , a0 a0 a ( a + b1 ) + ( a2 + b2 ) f ( 2) = 1 1 , f ( 3) = Κ 2 a0
(П1.8)
D-преобразования. D-преобразование Прямое
Рассмотрим теперь основные свойства прямого Свойство
П1.1
(CП1.1).
линейным так, что выполняются условия: 1. D { f ( k ) + g ( k ) } = D { f ( k ) } + D { g ( k ) } = F ( d ) + G ( d ) 2. D {α f ( k ) } = α D { f ( k ) } = α F ( d ) , где α ∈ GF ( p ) Свойство CП1.1 линейности
p =2
.□
является (П1.9) (П1.10)
D-преобразования строится на линейности операции
суммирования в (П1.1). Свойство П1.2 (СП1.2). (Свойство сдвига в области действительной переменной k ) Пусть D { f ( k )} = F ( d ) , тогда m −1
D { f ( k + m )} = d −m F ( d ) + d −m ∑ f ( i )d i . □
(П1.11)
i =0
Доказательство справедливости свойства опирается на определение прямого
D-преобразования смещенной на m тактов последовательности
f ( k + m ) , ко-
торое в силу (П1.1) позволяет записать
D { f ( k + m )} = f ( m ) + f ( m + 1)d + f ( m + 2 )d 2 + Κ Κ + f ( m + k )d k + Κ
(П1.12)
Если путем умножения с одновременным делением правой части (П1.12) на d суммирования дважды по mod 2 линейной комбинации
и
m −1
∑ f ( i)d i i =0
204
m
обеспечить
равенство индексов λ компонентов f ( λ) и степеней мультипликативного члена
d λ в (П1.12), то получим (П1.11). ■ Свойство П1.3 (CП1.3). (Свойство изменения масштаба в области переменной d ). Пусть D { f ( k )} = F ( d ) , тогда
D {α k f ( k ) }= F ( α d ) . □
(П1.13)
Доказательство справедливости свойства строится на непосредственном использовании прямого
D-преобразования к последовательности α k f ( k ) , которое
в силу (П1.1) дает
D {α k f ( k ) }=α 0 f ( 0 ) + α 1 f ( 1)d + α 2 f ( 2 )d 2 + Κ + α k f ( k )d k + Κ = 2 k = f ( 0 ) + f ( 1)( α d ) + f ( 2 )( α d ) + Κ + f ( k )( α d ) + Κ = = F (α d ). ■
Рассмотрим теперь
D-преобразование типовых двоичных последовательно-
стей. 1. Последовательность
f ( k ) = δ ( k ): 1,0 ,0 ,Κ ,0 ,Κ
(П1.14)
именуемая одиночным импульсом или дискретной δ -функцией над простым полем Галуа GF ( p ) p =2 . Если к (П1.14) применить (П1.1), то получим
D { f ( k )= δ ( k )} = Fδ ( d ) = 1 . ■
(П1.15)
2. Последовательность
f ( k ) = 1 ( k ): 1,1,1,Κ ,1,Κ
(П1.16)
именуется унитарным кодом или единичной последовательностью. Если к (П1.16) применить (П1.1), то получим
D { f ( k )= 1( k )} = F ( d ) = 1 + d + d 2 + Κ
+ dk +Κ
(П1.17) Если к (П1.17) применить формулу суммы членов бесконечной геометрической прогрессии с показателем d с учетом специфики модулярной арифметики по mod 2 для (П1.17) можно записать
D { f ( k )= 1( k )} = F ( d ) =
1 .■ 1+ d
(П1.18)
3. Периодическая последовательность с целочисленным периодом Т
f ( k ) = f ( k + T ): f ( 0 ), f ( 1), f ( 2 ),Κ , f ( T - 1), f ( 0 ), f ( 1), f ( 2 ),Κ , f ( T - 1),
(П1.19)
f ( 0 ), f ( 1), f ( 2 ),Κ , f ( T - 1), f ( 0 ), f ( 1), f ( 2 ),Κ , f ( T - 1),Κ
Если к периодической последовательности f ( k ) = f ( k + T ) , записанной в форме (П1.19), применить прямое
D-преобразование, то в силу (П1.1) можно записать 205
F ( d ) = D { f ( k ) = f ( k + T )} =
= ( f ( 0 ) + f ( 1) d + f ( 2 ) d 2 + Κ + f ( T - 1) d T -1 )( 1 + d T + d 2T + d 3T + Κ ) (П1.20) Если к выражению (П1.20) применить формулу суммы членов геометрической T прогрессии с показателем d , то получим для периодической последовательности с учетом специфики модулярной арифметики по mod 2
F ( d ) = D { f ( k + T )} =
f ( 0 ) + f ( 1) d + f ( 2 ) d 2 + Κ + f ( T - 1) d T -1 ■ = 1+ dT
(П1.21)
Если встает задача преобразования модулярных многочленов над простым полем Галуа GF ( p ) при p = 2 с привлечением возможностей аппарата
Dпреобразования, то возникает необходимость ввести в рассмотрение прямого Dпреобразования ММ
f ( x ) = a0 x n + a1 x n−1 + a2 x n−2 + Κ + an−1 x + an , где
ai ∈ GF ( p )
p=2
(П1.22)
, i = 0 , n ; с целью вычисления его образа F ( d ) =
= D { f ( x ) }. Вычисление -образа ММ f ( x ) зависит от того, каким разрядом вперед ММ f ( x ) передается в канальной среде: младшим или старшим, в силу
D
чего модулярный многочлен имеет два
D-образов ММ
D-образа
F ( d ) . Способы вычисления
f ( x ) (П1.22) зададим с помощью утверждений.
Утверждение П1.1 (УП1.1). -образ F ( d ) модулярного многочлена f ( x ) (П1.22) при его передаче младшим разрядом вперед задается соотношением
D
206
F ( d ) = D { f ( x)} = f ( x)
x =d
=
= an + an−1 d + an−2 d 2 + Κ + a1 d n−1 + a0 d n . □
(П1.23)
Доказательство утверждения строится на формировании последовательности f ( k ) из коэффициентов ММ f ( x ) с учетом его передачи младшим разрядом вперед
f ( k):
an , an−1 , an−2 ,Κ , a1 , a0 ,0 ,0 ,0 ,Κ
с последующим применением к (П1.24)
(П1.24)
D-преобразования (П1.1). ■
-образ F ( d ) модулярного многочлена f ( x ) Утверждение П1.2 (УП1.2). (П1.22) при его передаче старшим разрядом вперед задается соотношением
D
~ F ( d ) = D { f ( x ) } = f ( x −1 )
x −1 = d
=
= a0 + a1 d + a2 d 2 + Κ + an−1 d n−1 + an d n , ~
( ) – полином по отрицательным степеням −1
где f x ставления
(П1.25)
x −1 задается в силу пред-
~ f ( x ) = x n f ( x −1 ) = = x n ( a0 + a1 x −1 + a2 x −2 + Κ + an−1 x −( n−1 ) + an d − n ) □
(П1.26)
Доказательство утверждения строится на формировании последовательности f ( k ) из коэффициентов ММ f ( x ) с учетом его передачи старшим разрядом вперед
f ( k):
a0 , a1 , a2 ,Κ , an−1 , an ,0 ,0 ,0 ,Κ
(П1.27)
с последующим применением к последовательности (П1.27) прямого
D-
преобразования (П1.1) и констатацией факта совпадения порядка следования ко-
(
)
~
( ) (П1.26). ■
эффициентов ai i = 0 ,n в последовательности (П1.27) и в ММ f x
−1
207
ЛИТЕРАТУРА 1 2 3 4
5 6 7 8 9 10 11 12 13 14 15 16
208
Автоматизация проектирования цифровых устройств/ С. И. Баранов, С. А. Майоров, Ю. П. Сахаров, В. А. Селютин. – Л.: Судостроение, 1979. Автоматы//Сборник статей под ред. К.Э. Шеннона и Дж. Маккарти – М.: ИЛ, 1956. Акунов Т.А., Алишеров С., Оморов Р.О., Ушаков А.В. Матричные уравнения в исследовании дискретных процессов над бесконечными и конечными полями. Бишкек: Илим, 1993. Алгебраические методы в теории устройств дискретной автоматики и телемеханики//Труды лаборатории телемеханики кафедры автоматики и телемеханики. – СПб.: СПбГИТМО(ТУ), 2001. Андреев Ю.Н. Управление конечномерными линейными объектами. М.: Наука, 1976. Арбиб М. Теория автоматов: в кн. Калман Р., Фалб П., Арбиб М. Очерки по математической теории систем. – М.: Мир, 1971. Баев А.П., Салмыгин И.П., Ушаков А.В. Автоматный синтез циклических кодирующих и декодирующих устройств. //Изв. вузов. Приборостроение, 1998. Т.41. №7. Баранов С. И. Синтез микропрограммных автоматов. – Л.: “Энергия”, 1979. Бохман Д., Постхофф Х. Двоичные динамические системы. – М.: Энергоатомиздат, 1986. Букреев И.Н., Манеуров Б.М., Горячев В.И. Микроэлектронные схемы цифровых автоматов. – М.: Советское радио, 1975. Буханова Г. В. Высоконадежные оперативные запоминающие устройства, тенденции развития//Автоматика и телемеханика. 1993. №2. Воеводин В.В., Кузнецов Ю.А. Матрицы и вычисления. – М.: Наука, 1984. Гантмахер Ф. Р. Теория матриц. – М.: «Наука», 1967. Гилл А. Введение в теорию конечных автоматов. – М.: Наука, 1965. Гилл А. Линейные последовательностные машины. – М.: Наука, 1974. Голуб Дж., Ван Лоун Ч. Матричные вычисления: Пер. с англ. – М.: «Мир», 1999.
17 18 19 20 21 22 23 24
25 26 27 28 29 30 31 32
33 34 35 36 37
Горбатов В. А. Фундаментальные основы дискретной автоматики. Информационная математика. – М.: «Наука». Физматлит, 1999. ГОСТ 14422 – 72 Системы передачи данных. ГОСТ 17422 – 82 Система передачи данных и основные параметры помехоустойчивых циклических кодов. ГОСТ 20687 – 75 Коды помехоустойчивые итеративные. Структура кода. ГОСТ 24734 – 81 Устройство защиты от ошибок аппаратуры передачи данных. Типы и основные параметры. ГОСТ 26.205-88Е Комплексы и устройства телемеханики. ГОСТ Р МЭК 870-5-101-2001 Устройства и системы телемеханики. Часть 5. Протоколы передачи. Раздел 101. Обобщающий стандарт по основным функциям телемеханики. ГОСТ Р МЭК 870-5-104-2004 Аппаратура и системы телеуправления. Часть 5-104. Протоколы передачи данных. Доступ к сетям, использующим стандартные профили по МЭК 60870-5-101. Заде. Л., Дезоер Ч. Теория линейных систем/Пер. с англ. М.: Наука, 1970. Золотарев В.В., Овечкин Г.В. Помехоустойчивое кодирование. Методы и алгоритмы: Справочник/Под ред. чл.-кор. РАН Ю.Б. Зубарова. – М.: Горячая линия – Телеком, 2004. Интегральные микросхемы: Справочник / Б.В. Тарабрин, Л.Ф. Лунин, Ю.Н. Смирнов и др.; под ред. Б.В. Тарабрина. – М.: Радио и связь, 1984. Ирвин Дж., Харль Д. Передача данных в сетях: инженерный подход: Пер. с англ. – СПб.: БХВ–Питер, 2003. Калман Р., Фалб П., Арбиб М. Очерки по математической теории систем. – М.: Мир, 1971. Калужнин Л. А. Введение в общую алгебру. М.: «Наука», 1973. Квакерпаак Х., Сиван Р. Линейные оптимальные системы управления / Пер. с англ. М.: Мир, 1977. Кирюшин А.А., Рассветалова Л.А., Ушаков А.В. Модальное управление в задаче синтеза двоичных динамических систем в логике линейных триггеров//Автоматика и телемеханика, 1993 №8. Компьютерные сети. Принципы, технологии, протоколы: Учебник для вузов. 2-е изд. / В.Г. Олифер, Н.А. Олифер. – СПб.: Питер, 2004. Крутько П.Д. Обратные задачи теории управления. М.: Наука, 1987. Кузовков Н.Т. Модальное управление и наблюдающие устройства. М.: Машиностроение, 1976. Лазарев В. Г., Пийль Е. И. Синтез управляющих автоматов. – М.: Энергия, 1978. Мельников А. А., Рукуйжа Е. В., Ушаков А. В. Использование свойств матриц для обнаружения неустойчивых циклов и неподвижных состояний двоичных динамических систем / Научно-технический вестник СПбГИТМО(ТУ). 2002. Выпуск 6.
209
38
39 40 41 42 43 44
45 46 47 48
49 50 51 52 53 54 55 56 57
210
Мельников А. А., Ушаков А. В. Алгебраические структурные свойства матричных компонентов модельных представлений линейных УДАТ в задаче редуцирования их размерности//Алгебраические методы в теории устройств дискретной автоматики и телемеханики. – СПб.: СПбГИТМО(ТУ), 2001. Мельников А. А., Ушаков А. В. Устройства дискретной автоматики гарантированной информационной надежности с редуцированным ресурсом помехозащиты.//Изв. вузов. Приборостроение, 2001. Т.44. №2. Никифоров В. О., Ушаков А. В. Управление в условиях неопределенности: чувствительность, адаптация, робастность. СПб.: СПбГИТМО(ТУ), 2002. Оре О. Теория графов. — М.: Наука, 1980. Питерсон У., Уэлдон Э. Коды, исправляющие ошибки. – Пер. с англ. М.: «Мир», 1976. Рассветалова Л. А., Ушаков А. В. Двоичное динамическое наблюдение в задаче помехоустойчивого кодирования. // Автоматика и телемеханика. 1993. №6. Рукуйжа Е.В., Ушаков А.В. Сравнительный анализ матричных и дивидендных представлений процессов кодирования и декодирования в задачах защиты информации // Совр. Технологии: Сборник научных статей / Под. ред. С.А. Козлова и В.О. Никифорова. – СПб.: СПбГИТМО(ТУ), 2002. Сапожников В. В., Сапожников Вл. В., Гессель М. Самодвойственные дискретные устройства. СПб.: Энергоатомиздат. Санкт-Петербургское отд-ние, 2001. Свами М., Тхуласираман К. Графы, сети, алгоритмы. / Пер. с англ. М.: Мир, 1976 Селлерс Ф. Методы обнаружения ошибок в работе ЭЦВМ, – М.: «Мир», 1972. Синтез дискретных регуляторов при помощи ЭВМ / В.В. Григорьев, В. Н. Дроздов, В. В. Лаврентьев, А. В. Ушаков. Л.: Машиностроение, 1983. Согомонян Е. С. Слабаков Е.В. Самопроверяемые устройства и отказоустойчивые системы. – М.: Радио и связь, 1989. Темников Ф. Е., Афонин В. А., Дмитриев В. И. Теоретические основы информационной техники. – М.: Энергия, 1979. Тутевивич В. Н. Телемеханика. М.: «Высшая школа», 1985. Уонем М. Линейные многомерные системы: геометрический подход. М.: Наука, 1980. Ушаков А.В. Обобщенное модельное управление. // Изв. вузов. Приборостроение. 2000. т.43. №3. Ушаков А. В. Синтез циклических кодирующих и декодирующих устройств в логике произвольных триггеров//Автоматика и телемеханика. 1997. №11. Фараджев Р. Г. Линейные последовательностные машины. – М.: Сов. радио, 1975. Щербаков Н.С. Достоверность работы цифровых устройств. – М.: Машиностроение, 1989. Hadjicostis C.N. “Nonconcurrent Error Detection and Correction in Fault-
58 59 60 61 62 63 64
65
Tolerant Linear Finite-State Machines”, IEEE Trans. Automat. Contr., vol.48, no.12, pp.2133–2140, Dec. 2003. Massey J.L. and Sain M.K., “Codes, automata and continuous systems: Explicit interconnections”, IEEE Trans. Automat. Contr., vol.AC-12, pp.644– 650, Dec. 1967. Massey J.L. and Sain M.K., “Inverses of linear sequential circuits”, IEEE Trans. Comp., vol.C-17, pp.330–337, Apr. 1968. Rosenthal J. “Some interesting problems in systems theory which are of fundamental importance in coding theory”. in Proc. 36 Conf. Decision Control, vol.5, San Diego, CA, 1997, pp. 4574–4579. Rosenthal J. and Marcus B., Eds., Codes, Systems and Graphical Models. ser IMA Volumes in Mathematics and its Applications. New York: SpringerVerlag, 2001, vol.123. Rosenthal J. and Smarandache R., “Maximum distance separable convolutional codes”, Appl. Alg. Eng., Commun. Comput., vol.10, no1, pp.15– 32, 1999. Rosenthal J. and York F.V. “BCH convolutional codes”, IEEE Trans. Inform. Theory, vol.45, pp.1833–1844, Sept.1999. Rosenthal J. , York F.V. and Schumacher J.M. “On the relationship between algebraic systems theory and coding theory: Representations of codes”, in Proc. 34 Conf. Decision Control, vol.3, New Orleans, LA, 1995, pp.3271– 3276. Sellers F., Hsio M. Y., Bearson L. W. Analyzing errors with Boolean difference //IEEE Trans. Comp. C–17. 1968. pp. 676–683.
211
ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ Автомат – абстрактный 102 – конечный 57, 102 Автоматика дискретная 10 Алгоритм – автоматного синтеза канонический 102 – – по граф-схеме алгоритма 109 – синтеза линейных двоичных динамических систем 19, 30 Алфавит – входа 102, 121 – выхода 102, 121 – высокого уровня 102 – состояния 102, 121 Анализ – структуры замкнутых циклов 74 – – неподвижных состояний 74 Аппарат – передаточных функций 13 – селлерсовского дифференцирования 142 Базис – Жегалкина 189 – канонический наблюдаемый 31, 32 – – управляемый 31, 32 Блок памяти 24 Вектор – входа 23 – выхода 23 – состояния 23, 38, 43, 47, 56 Вес – производной булевой функции 145
Время – аппаратурное 199 – канальное 198 Вычисление – производной Селлерса булевой функции 143 – степени образующего модулярного многочлена помехозащищенного кода 99, 118
212
Граф переходов и выходов 106 Граф-схема алгоритма (ГСА) 11, 101, 109 Декодирование – помехозащитное векторно-матричное 59 – – дивидендное 93, 99, 199 – – – укороченных циклических кодов 135, 137, 138 – – на основе концепции наблюдения состояния канала связи 56 Деление модулярных многочленов 17 Дешифратор синдрома ошибки 129, 139 Достоверность передачи 135 Код – Грея 157 – двоичный 157 – Джонсона 157 – искаженный 51, 59 – помехозащищенный 51, 53, 59, 61, 62, 68 – – укороченный 135 – помехонезащищенный 59, 61, 66, 198 – циклический 54, 57, 66, 69 Кодирование – помехозащитное векторно-матричное 60 – – дивидендное 99, 199 – – – укороченных циклических кодов 135 – – кодов состояния конечного автомата 181 – – на основе концепции наблюдения состояния канала связи 51 – элементами простого поля Галуа GF ( p ) 102 – элементов алфавитов абстрактного автомата 102 Кодопреобразование – линейное 24 – нелинейное 24 Код – помехи в канале связи 59 – синдрома ошибки 59 – Хэмминга помехозащищенный 20, 104 Коды – линейные 62 – систематические 61 – с полной блоковой систематикой 62, 69 – соседние 103 Концепция подобия 43, 44 Критерий – наблюдаемости линейных двоичных динамических систем 26, 27 – управляемости линейных двоичных динамических систем 26, 27 Матрица
213
– входа 24 – выхода 24 – наблюдаемости 27, 36 – нильпотентная 44, 47, 51 – образующая 53, 60 – 62, 66, 136 – передаточная 15, 28, 34 – проверочная 54, 61, 62, 65, 136 – остатков 69 – принадлежащая показателю 47, 51, 53, 96 – состояния 24, 30, 47 – преобразования подобия 43, 46 – управляемости 25, 26, 40 Многочлен – модулярный 13, 16, 19, 21, 29, 30, 34 – 36, 41, 66 – – неприводимый 36, 66, 118 – – образующий 54, 69, 136 – – помехозащищенного кода 96, 118 – – принадлежащий показателю 35, 37, 136 – – характеристический 30, 35, 44, 83 Наблюдаемость линейных двоичных динамических систем 38 Наблюдатель – состояния регистра канала связи 52 Надежность информационная 180, 181 Нуль-пространство матрицы 63, 68, 80 Опознаватель (синдром) ошибки (искажения) в коде 59 – 61, 64 Ошибка – исправляемая 62, 182 – обнаруживаемая 63, 182
Памяти элемент 19, 20, 30, 51 Полином (см. многочлен) Последовательность – кодовая 15, 20, 51 – периодическая 20, 36, 37 – – скремблирующая 164 Проблема заполнения кодового пространства 155 Производная Селлерса булевой функции 143 Пространство – аппаратурное 198 – 200 – кодовое 101 – – вырожденное 156 – – невырожденное 156
214
Ранг 26, 27 Расстояние кодовое 73, 99 Регистр сдвига 47, 51 Редуцирование 34, 38 Синдром (см. опознаватель) ошибки Система – двоичная динамическая 13, 15, 17, 23 – гибридная двоичная динамическая 11, 155 – линейная двоичная динамическая 13, 15, 17, 21, 24, 26, 27, 29, 30 – нелинейная двоичная динамическая 10, 101 – динамическая над бесконечным полем 13, 39 – – над конечным полем 13, 39 Скремблирование 164 Сходимость процессов над двоичным полем 44
Тип триггера 55, 56, 103 Триггер 19, 55, 56, 117 Управляемость системы линейной двоичной динамической 38 Устройство – дискретной автоматики 10, 11, 17 – кодирующее 51, 117 – декодирующее 54, 76, 117 Функция – булева возбуждения входа триггера 103, 104 – – формирования выхода 104 Цикл замкнутый 74, 85 Число – ошибок 73, 99 – проверочных разрядов 66, 73, 135, 136 – синдромов 73, 99 Ядро (см.нуль-пространство) матрицы
215
ИЗ ИСТОРИИ ЛАБОРАТОРИИ ТЕЛЕМЕХАНИКИ
Лаборатория телемеханики, как проблемное подразделение кафедры систем управления и информатики (до 2001 года кафедры автоматики и телемеханики) Санкт-Петербургского государственного университета информационных технологий, механики и оптики (ИТМО), организована в ее составе в 1945-м году одновременно с основанием кафедры в структуре факультета электроприборостроения, со временем переименованным в радиотехнический. Основание кафедры и лаборатории телемеханики связано с именем ее первого заведующего и одновременно первого декана факультета электроприборостроения профессора Марка Львовича Цуккермана. На кафедру автоматики и телемеханики (ИТМО), в отличие от существовавших к тому времени кафедр аналогичного профиля в ЛПИ им. М. И. Калинина (ныне СПбГТУ) и ЛЭТИ им. В. И. Ульянова (Ленина) (ныне СПбГЭТУ («ЛЭТИ»)), была возложена задача по подготовке специалистов в области автоматизации и телемеханизации приборостроительной, оптической и оборонной промышленности. Профессор Цуккерман М. Л. в 1910-м году закончил Санкт-Петербургский государственный политехнический институт им. Петра Великого. В 20-е годы XX в. он организовал в Ленинграде (ныне Санкт-Петербург) отраслевую лабораторию электроизмерений (ОЛИЗ) и был известен в стране как крупный специалист в области телеизмерения. Научные интересы профессора Цуккермана М. Л. и персонала новой кафедры и лаборатории телемеханики на многие годы определили основные направления научной, учебной и методической деятельности лаборатории, проблемным куратором которой профессор Цуккерман М. Л. оставался вплоть до своей кончины в 1959-м году. В этот период основное направление научноисследовательской работы лаборатории составили задачи автоматизации и телемеханизации измерения и регистрации параметров кораблей во время их ходовых испытаний, выполнявшихся по заданию ВМФ. Учебный процесс лаборатория проводила для студентов специальности 0606 – приборы и устройства автоматики и телемеханики по программам дисциплин «Телемеханические приборы и устройства» и «Телеизмерение», причем лекции по последней из них читал проф. Цуккерман М. Л., которому ассистировал ассистент Шпаков А. М. Курсы лекций по дисциплине «Телемеханические приборы и устройства» были поставлены и читались доцентом Юргенсоном Р. И. и старшим преподавателем Соколовым В.В., которым в лабораторном практикуме ассистировала выпускница кафедры ассистент Никифорова Л. Т. Основу лабораторного оборудования в это время составляли устройства дистанционного управления тренажеров специального назначения, промышленные устройства релейно-контактной телемеханики типа РВКБ, а также макеты релейно-контактной телемеханики, изготовленные силами сотрудников лаборатории и экспериментально-производственных мастерских (ЭПМ) ИТМО. С 1959-го года по 1970-й год кафедру возглавляет ученик профессора Цуккермана М. Л., выпускник кафедры автоматики и телемеханики ЛЭТИ им. В. И. Ульянова (Ленина) 1936-го года доцент Танский Е.А. За этот период по разным причинам кафедру покидают Юргенсон Р.
216
И. и Шпаков А. М., дисциплина «Телеизмерение» входит в качестве содержательного компонента в дисциплину «Телемеханические приборы и устройства», обучение по которой в рамках всех видов учебной деятельности дневного и вечернего образования легло на плечи сотрудников лаборатории старших преподавателей Никифоровой Л.Т. и Соколова В. В. Содержание дисциплины заметным образом модернизируется: в нем появляются разделы по алгебраическому синтезу дискретных устройств телемеханики, использующему возможности булевой алгебры, а также элементы современной теории помехозащитного кодирования дискретной информации при ее передаче. Устанавливаются творческие связи с Ленинградским научно-производственным предприятием «Электропульт», в результате которых в лаборатории телемеханики для нужд учебного процесса появляются образцы телемеханической аппаратуры заводского изготовления типа ТНЧ-2. В рамках научно-технического сотрудничества с НИИЭТУ (г. Ленинград) лаборатория принимает участие в разработке фототелеграфной аппаратуры комплекса "Газета-2". Теоретические исследования в лаборатории в это время сосредоточены на обеспечении помехоустойчивости процесса фазирования фототелеграфной аппаратуры передающего и приемного полукомплектов комплекса, а также эффективной буферизации передаваемой информации. В 1970-м году по результатам конкурса заведующим кафедрой становится известный в стране специалист в области автоматизированного электропривода и фотоэлектрических следящих систем выпускник ЛПИ им. М. И. Калинина 1938-го года профессор Сабинин Ю. А., который руководил кафедрой до мая 1990-го года. Происходят изменения в составе сотрудников лаборатории телемеханика, на смену старшему преподавателю Соколову В. В. приходит выпускник кафедры доцент (ныне профессор) Ушаков А. В., позднее состав лаборатории пополняется выпускниками кафедры ассистентом (ныне старшим преподавателем) Салмыгиным И. П. и лаборантом (позднее инженером) Рукуйжей Е. В., а также доцентом Баевым А. П. В учебном плане специальности 0606 – автоматика и телемеханика дисциплина «Телемеханические приборы и устройства» получает название «Телемеханика», появляется дисциплина «Теоретические основы кибернетики» (ТОК), в программу которой включается раздел по прикладной теории информации, проблемно ориентированный на теоретические основы канализации информации и кодопреобразования в задачах телемеханики; по дисциплине вводится курсовая работа. В составе лабораторного оборудования появляются отечественные ПЭВМ типа Т316, ДВК-3M, а к 1986-му году благодаря усилиям и инициативе старшего преподавателя Никифоровой Л. Т. и заведующего кафедрой Сабинина Ю. А. лабораторная база была подвергнута полной модернизации, в результате чего лаборатория телемеханики была оснащена лабораторными макетами типа ЛАТ-01 и ЛАТ-011, разработанными с участием сотрудников лаборатории и изготовленными на предприятии Союзвузприбора. Лабораторная база нового поколения позволила осуществить фронтальный метод проведения лабораторного практикума. Лаборатория установила научные контакты с предприятиями и НИИ телемеханической проблемной ориентации НПО им. Коминтерна и НПО «Дальняя связь» (г. Ленинград), три сотрудника которых Яковлев А. А., Кирюшин А. А. и Рассветалова Л. А. по программе аспирантского обучения выполнили диссертационные исследования на соискание ученой степени кандидата технических наук по проблематике своих организаций под научным ру-
217
ководством профессора Ушакова А. В. В рамках хоздоговорных отношений с ОКБ МЭИ (г. Москва) во исполнение Комплексной целевой программы «Излучение» по созданию высокоточной аппаратуры для контроля деформаций металлоконструкций больших полноповоротных радиотелескопов с диаметром раскрыва главного рефлектора 32, 64 и более метров типа ТНА-400 и ТНА-1500 в процессе юстировки перед вводом их в эксплуатацию и в процессе эксплуатации разработана уникальная локальная сеть с использованием волоконно-оптических линий связи (ВОЛС) МС-8201, ППЗ-структур и ПК для комплексных телеизмерения и телесигнализации с целью введения поправок на деформацию элементов радиотелескопа при его наведении на объект радиоастрономического наблюдения. Теоретическая работа лаборатории направлена на использование алгебраических методов в теории устройств дискретной автоматики и телемеханики, опирающихся на теорию микропрограммных автоматов и результаты алгебраизации общей теории систем над бесконечными и конечными полями, как следствие этой работы заметно выросло число публикаций сотрудников и аспирантов лаборатории. В этот период кафедра, а вместе с ней лаборатория телемеханики, пережила две реорганизации структуры факультетом института. С 1970-го года по 1980-й год кафедра была в составе факультета оптико-электронного приборостроения, c 1980-го по 1993-й – точной механики и вычислительной техники. С 1990-го года кафедрой руководит ее воспитанник профессор Григорьев В. В. На время его руководства кафедрой пришлись реформы высшей школы России, кафедра входит в состав факультета компьютерных технологий и управления. На кафедру помимо традиционной подготовки инженеров электриков по специальности 2101.00. – управление и информатика в технических системах возлагается подготовка бакалавров и магистров по направлению 5502.00. – управление и автоматизация. В образовательный стандарт указанных специальности и направления вводится отдельной строкой дисциплина «Прикладная теория информации». Происходит изменение в кадровом составе лаборатории телемеханики, учебный процесс в лаборатории во всей его полноте возлагается на старшего преподавателя Салмыгина И. П. и профессора Ушакова А. В. Лаборатория телемеханики в этот период осваивает возможности программных оболочек ELECTRONICS WORKBENCH 3.0 (EWB 3.0) и EWB 5.0, позволяющих моделировать аналоговые и цифровые устройства автоматики и телемеханики, цифроаналоговые и аналого-цифровые преобразования электрических сигналов, все виды кодовых преобразований, триггеров в любой логике, автоматное представление устройств кодопреобразования в логике Мура и Мили и линейное в любом базисе представления устройств дискретной автоматики и телемеханики и многое другое, для целей адаптации их к задачам дипломного и курсового проектирования, а также перевода лабораторного практикума на технические средства нового компьютерного поколения. Лаборатория в инициативном порядке включается в проведение научных исследований по разработке устройств дискретной автоматики и телемеханики гарантированной информационной надежности с гибким использованием ресурса помехозащиты по Региональной комплексной целевой программе (РКЦП) «ТЕЛЕМЕХАНИКА – 2000», возложенной на НИИ Точной механики (НИИ ТМ) (г. Санкт-Петербург) для модернизации управления стрелочным и инженерным хозяйством метрополитена. В рамках инициативного участия в РКЦП «ТЕЛЕМЕХАНИКА – 2000» в лаборатории под руководством профессора Ушакова А. В. ведутся теоретические разработки проблем анализа и синтеза устройств дискретной автоматики и телемеханики и завершаются диссертационные исследования по проблеме «устройства дискретной автоматики с гибким использованием
218
ресурса помехозащиты» аспирантом кафедры Мельниковым А. А. на соискание ученой степени кандидата технических наук, которые получили одобрение диссертационного совета университета, выразившегося в присуждении советом в 2001-м году ученой степени кандидата технических наук по специальности 05.13.05.«элементы и устройства вычислительной техники и систем управления» автору исследований. В 2001-м году сотрудники лаборатории телемеханики предприняли попытку обобщить полученные за последние годы научные достижения, в результате чего свет увидел сборник трудов лаборатории телемеханики под редакцией профессора А.В.Ушакова, объединенных названием «Алгебраические методы в теории устройств дискретной автоматики и телемеханики». Авторами сборника были бывшие и нынешние сотрудники лаборатории: профессор Ушаков А.В., доцент Баев А.П., старшие преподаватели Никифорова Л.Т. и Салмыгин И.П., заведующая лабораториями кафедры Рукуйжа Е.В., а также аспиранты Белоконев Г.В., Мельников А.А., Рассветалова Л.А.. В 2001-м году кафедра автоматики и телемеханики под воздействием сложившихся в научно-техническом сообществе тенденций в модификации терминологии сменила свое название, в результате чего она стала называться кафедрой систем управления и информатики. Одновременно произошли изменения в нумерации направления подготовки бакалавров так, что студенты бакалавриата кафедры систем управления и информатики стали обучаться по направлению 651900 – «автоматизация и управление». Произошли изменения в министерских учебных планах в части распределения дисциплин между подготовкой по «направлению» и «специальности», а также в содержании некоторых дисциплин. Так в учебном плане подготовки специалиста-инженера исчезла дисциплина «Телемеханика» цикла специальных дисциплин СД, но при этом в учебных планах подготовки как бакалавра техники и технологии по направлению 651900, так и специалиста-инженера по специальности 210100 появилась дисциплина «Информационные сети и телекоммуникации (в задачах диспетчерского управления техническими объектами)» цикла федеральных специальных дисциплин СД.Ф. В этой связи кафедра и лаборатория устанавливают творческие связи с Санкт-Петербургской фирмой – «Закрытое акционерное общество: Системы связи и телемеханики (ЗАО ССТМ)», которая появилась на рынке телемеханической продукции в 1994-м году и заявила о себе целой гаммой систем телемеханики и диспетчерского управления, созданной на основе базового комплекта «Телеканал-М», удачно агрегируя телемеханическую аппаратуру прежних поколений с сетевыми телекоммуникационными технологиями типа Ethernet различных скоростных модификаций. Продолжается научная работа в области анализа и синтеза двоичных динамических систем в составе аппаратуры устройств дискретной автоматики, разработки декодирующих устройств дивидендного типа с коммутируемыми входными цепями, гибридных двоичных динамических систем УДА, обобщением которой является предлагаемая вниманию читателей монография «Двоичные динамические системы устройств дискретной автоматики». В рамках программы подготовки специалистов высшей научной квалификации успешно ведутся диссертационные исследования докторантом кафедры Мельниковым А.А. по научной проблеме «Концепция гибридности в теории устройств дискретной автоматики», а также аспирантом кафедры Осипцевой О.С. по теме «Синтез законов цифрового дистанционного управления с учетом фактора канальной среды» и соискателем Е.В. Рукуйжей по теме «Дивидендные кодирующие и деко-
219
дирующие устройства помехозащищенных кодов с коммутируемыми структурами». Лаборатория телемеханики на настоящий момент представляет собой компактный активный коллектив, полный творческих планов. Лаборатория телемеханики приглашает желающих в аспирантуру и открыта для научного сотрудничества.
220