Научная статья на тему 'Разработка программного анализатора генераторов псевдослучайных последовательностей линейного полиномиального типа на запоминающих элементах “D-триггер” и логических элементах “Исключающее или” для ускорения процесса проектирования аппаратных реализаций приборов и устройств на их основе'

Разработка программного анализатора генераторов псевдослучайных последовательностей линейного полиномиального типа на запоминающих элементах “D-триггер” и логических элементах “Исключающее или” для ускорения процесса проектирования аппаратных реализаций приборов и устройств на их основе Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
217
28
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ГЕНЕРАТОРЫ ПСЕВДОСЛУЧАЙНЫХ ПОСЛЕДОВАТЕЛЬНОСТЕЙ / PSEUDORANDOM SEQUENCE GENERATORS / ЗАПОМИНАЮЩИЙ ЭЛЕМЕНТ "D-ТРИГГЕР" / "D-FLIPFLOP" STORAGE ELEMENT / ЛОГИЧЕСКИЙ ЭЛЕМЕНТ "ИСКЛЮЧАЮЩЕЕ ИЛИ" / "EXCLUSIVE OR" LOGIC GATE / ЛИНЕЙНЫЙ ПОЛИНОМИАЛЬНЫЙ СЧЕТЧИК / LINEAR FEEDBACK SHIFT REGISTER / ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ / SOFTWARE / КОМПЬЮТЕРНОЕ МОДЕЛИРОВАНИЕ / COMPUTER SIMULATION

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Хусаинов Р.Н., Галимов М.Д.

Проведено исследование внутренних поведенческих механизмов работы генераторов псевдослучайных последовательностей на регистрах сдвига. На основе полученных результатов был разработан программный анализатор генераторов псевдослучайных последовательностей на запоминающих элементах “D-триггер” и логических элементах “Исключающее ИЛИ”, который позволяет провести подробное моделирование поведения таких генераторов, в зависимости от заданных пользователем структуры генератора и начальных параметров.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Хусаинов Р.Н., Галимов М.Д.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Разработка программного анализатора генераторов псевдослучайных последовательностей линейного полиномиального типа на запоминающих элементах “D-триггер” и логических элементах “Исключающее или” для ускорения процесса проектирования аппаратных реализаций приборов и устройств на их основе»

УДК 004.421.5, 004.312.22

М. Д. Галимов, Р. Н. Хусаинов

РАЗРАБОТКА ПРОГРАММНОГО АНАЛИЗАТОРА ГЕНЕРАТОРОВ

ПСЕВДОСЛУЧАЙНЫХ ПОСЛЕДОВАТЕЛЬНОСТЕЙ ЛИНЕЙНОГО ПОЛИНОМИАЛЬНОГО ТИПА

НА ЗАПОМИНАЮЩИХ ЭЛЕМЕНТАХ "D-ТРИГГЕР" И ЛОГИЧЕСКИХ ЭЛЕМЕНТАХ

"ИСКЛЮЧАЮЩЕЕ ИЛИ" ДЛЯ УСКОРЕНИЯ ПРОЦЕССА ПРОЕКТИРОВАНИЯ АППАРАТНЫХ

РЕАЛИЗАЦИЙ ПРИБОРОВ И УСТРОЙСТВ НА ИХ ОСНОВЕ

Ключевые слова: генераторы псевдослучайных последовательностей, запоминающий элемент "D-триггер ", логический элемент "Исключающее ИЛИ", линейный полиномиальный счетчик, программное обеспечение, компьютерное моделирование.

Проведено исследование внутренних поведенческих механизмов работы генераторов псевдослучайных последовательностей на регистрах сдвига. На основе полученных результатов был разработан программный анализатор генераторов псевдослучайных последовательностей на запоминающих элементах "D-триггер " и логических элементах "Исключающее ИЛИ", который позволяет провести подробное моделирование поведения таких генераторов, в зависимости от заданных пользователем структуры генератора и начальных параметров.

Keywords: pseudorandom sequence generators, "D-flipflop" storage element, "Exclusive OR " logic gate, linear feedback shift register, software, computer simulation.

Internal behavioral mechanisms for pseudorandom sequence generators on shift register was researched. As a result software analyzer for pseudorandom sequence generators on ' 'D-flipflop " storage elements and "Exclusive OR " logic gates was developed. This software allow computer simulation of behavior for these type ofpseudorandom sequence generators. Result of work depend on structural type ofpseudorandom sequence generators and initial parameters.

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

Не смотря на то, что во всех современных языках и средствах программирования есть встроенные методы для генерации случайных / псевдослучайных чисел (последовательностей), мы можем использовать весь их функционал лишь в случае программных разработок. При разработке физических приборов и устройств существует огромное количество способов реализации генераторов случайных / псевдослучайных чисел (последовательностей), как на аналоговой, так и цифровой элементной базе [1].

Метод проектирования генераторов псевдослучайных последовательностей (ГПСП) на основе регистра сдвига для получения псевдослучайных чисел с равномерным законом распределения широко применяется при аппаратной реализации за счет своей простоты, масштабируемости и функциональности. Основная идея данного метода - подача на вход первого элемента регистра сдвига, который представляет собой совокупность последовательно соединенных запоминающих элементов "Б-триггер", обратной связи. Обратная связь, подающаяся на первый элемент (разряд) регистра сдвига, является комбинацией выходов остальных элементов (разрядов) регистра, которая модифицирована логической операцией "Исключающее ИЛИ".

ГПСП на основе регистра сдвига включает в себя множество структурных типов, но нами рассматриваются лишь два основных, которые наиболее

удобны для реализации при проектировании аппаратных приборов и устройств:

• ГПСП на регистре сдвига с линейными обратными связями;

• ГПСП на регистре сдвига с внутренними элементами "Исключающее ИЛИ";

Прежде чем рассмотреть алгоритм работы анализатора, необходимо представить математическое описание поведенческой модели работы для двух структурных типов ГПСП на примере 4-х разрядного регистра сдвига (рис. 1).

I

41 q2 ф

>С1 (МП " Г >С1 о-то Г >С1 ОТО ~ г >С1

q4

41

м г >С1 ^ Г >01

44

Рис. 1 - Структурные схемы ГПСП на регистре сдвига с линейными обратными связями (а) и ГПСП на регистре сдвига с внутренними элементами "Исключающее ИЛИ" (б)

Для двух приведенных на рисунке 1 структурных типов ГПСП каждое последующее состояние разрядов регистра можно вычислить согласно следующему правилу [2]:

= 0 ■ q1(t) ® 0 ■ д2(() 01-) 01-д4((); = 1- д^) 0 0 ■ 0 0 ■ 0 0 ■ ); = 0 ■ ) 0 1 ■ цг(}) 0 0 ■ q3(t) 0 0 ■ qi ^);

= 0 ■ ) 0 0 ■ д2(() 01 qз(t) 0 0 ■ );

(1)

(2)

?, ^ +1] = 0 ■ q1(t)0 0 ■ q2(t) 0 0 ■ q3(t) 01 q4(t); ?2 ( t +1) = 1 q1(t) 0 0 ■ q2(t) 0 0 ■ q3(t) 0 1 q4(t); q3 ( t +1) = 0 ■ ^) 0 1 q2(t) 0 0 ■ q3(t) 0 0 ■ q4(t); q4 ( t +1) = 0 ■ 0 0 ■ q2(t) 0 1 ■ q3(t) 0 0 ■ q4(t);

где (1) - соответствует работе ГПСП на регистре сдвига с линейными обратными связями, (2) - соответствует работе ГПСП на регистре сдвига с внутренними элементами "Исключающее ИЛИ";

Это же правило в матричной форме (что намного удобнее для программной реализации) имеет следующий вид:

(3)

ql t+ -1)

q2 t- +1)

qз t- ы)

q4 t- +1)

q^ t+ -1)

q2 t- +1)

qз t- Ы)

q4 +1)

0 0 1 1 ql(t)

1 0 0 0 q2(t)

0 1 0 0 qз(t)

0 0 1 0 q,(t)

0 0 0 1 ql(t)

1 0 0 1 q1(t)

0 1 0 0 qз(t)

0 0 1 0 q,(t)

(4)

где (3)- соответствует работе ГПСП на регистре сдвига с линейными обратными связями, (4) - соответствует работе ГПСП на регистре сдвига с внутренними элементами "Исключающее ИЛИ";

Каждое последующее состояние разряда регистра q¡ ^+1) является результатом умножения текущего состояния разряда регистра q¡ (^ на текущий

элемент матрицы работы ГПСП. Для ГПСП на регистре сдвига с линейными обратными связями первая строка матрицы работы генератора определяется видом обратной связи регистра сдвига, в то время как для ГПСП на регистре сдвига с внутренними элементами "Исключающее ИЛИ" видом обратной связи регистра сдвига определяется последний столбец матрицы работы генератора.

Периодические свойства последовательности (получаемой на ГПСП данного типа) определяются характеристическим полиномом (отсюда данный тип ГПСП в литературе также может встречаться под названием "линейный полиномиальный счетчик"). Характеристический полином (в литературе также может употребляться, как "характеристический многочлен"), может быть получен, как определитель матрицы работы ГПСП после вычитания из нее хЕ (где Е - единичная матрица). Такие свойства характеристического полинома, как неприводимость и примитивность - определяют тип формируемой ГПСП выходной последовательности (ее период и длину).

Моделирование сложных математических процессов в различных предметных областях на сегодняшний день весьма востребовано [3,4]. Моделирование потактовой работы ГПСП такого типа "на бумаге" при большом количестве разрядов в сдвиго-

вом регистре (более ста экземпляров запоминающего элемента "Б-триггер") довольно затруднительно, так как малейшая ошибка в вычислении приведет к неправильному поведению работы ГПСП. Готовых программных продуктов для анализа и моделирования ГПСП на рынке не существует. Исходя из этого, нами было принято решение разработать программный анализатор ГПСП линейного полиномиального типа для анализа их свойств и моделирования их работы в случае большого количества разрядов регистра сдвига.

На рисунке 2 представлена упрощенная диаграмма деятельности на унифицированном языке моделирования ЦМЬ.

ч

Первичная Первичная

инициализация инициализация

массивов матриц полиномиальных

для вычисления параметров

Задание структурного типа

Задание порядка матрицы работы ГПСП

Зе.

Выбор наличия или

отсутствия коэффициента СО

Переопределение полиномиальных параметров под структурный тип ГПСП

Переопределение массивов матриц для вычисления

Задание значения коэффициента СО

Ьвод значении матрицы работы генератора и начального состояния регистра сдвига

±

Переопределение полиномиальных параметров под значение коэффициента СО

5

Вычисление характеристического полинома по набору полиномиальных параметров Моделирование генерируемой ГПСП последовательности до момента повторения начального состояния

>&

Определение типа формируемой ГПСП последовательности

£

Вычисление вероятностных свойств последовательности в зависимости от ее типа

Вычисление автокорреляционных

свойств последовательности в зависимости от ее типа

Рис. 2 - Упрощенная ЦМЬ диаграмма деятельности работы программного анализатора ГПСП на регистрах сдвига

Приведем краткое описание данной диаграммы деятельности. До появления каких-либо событий связанных с взаимодействием пользователя и ПО происходит первичная инициализация всех массивов и функциональных параметров. После чего пользователю предоставляется выбор структурного типа ГПСП, произвольного ввода значений матрицы работы генератора и начального состояния регистра, а также выбор значения коэффициента СО (с помощью которого возможно получение (М-1) последовательности (также известной как M последовательность

минус один или 2m — 2 последовательность) из последовательности с относительно маленькой длиной периода). После задания всех необходимых для вычисления параметров происходит вычисление характеристического многочлена, определение типа выходной последовательности ГПСП (а также ее периода и всех значений на периоде). На основании вычисленных данных последовательности происходит определение ее вероятностных и автокорреляционных характеристик, которые имеют разные математические модели вычисления для разных типов последовательности. Стоит отметить, что данные модели достаточно затруднительно вычислять "вручную" (особенно на больших порядках (большом количестве логических элементов в ГПСП)). Это являлось одной из основных предпосылок для создания анализатора, рассмотренного в данной работе.

Программное обеспечение было разработано на языке программирования C# в среде .NET 4.5 для работы в операционных системах Microsoft Windows. Скриншот ПО представлен на рисунке 3.

Рис. 3 - Скриншот программного анализатора ГПСП на регистрах сдвига

Дальнейшее применение разработанного нами ПО найдет свою реализацию при аппаратном (физическом) построении более сложных генераторов случайных последовательностей (ГСП) путем специального преобразования характеристических многочленов ГПСП данного типа. Аппаратные ГСП на цифровых логических элементах имеют определенные свойства, которые связаны со стохастическими процессами в физических микросхемах, под влиянием сторонних факторов, таких как температура окружающей среды, напряжение питания микросхемы, тип источника питания для микросхем, магнитные помехи и т.д. Именно данные свойства вносят "мощный" вклад в процесс генерации действительно случайных последовательностей. Данные свойства активно исследуются уже длительное время. Но актуальные исследования в данной области продолжаются до сих пор.

На дальнейших этапах данной работы планируется провести ряд экспериментов, целью которых является установление математических зависимостей между ГПСП линейного полиномиального типа и аналогичными по структуре ГСП на логических элементах "Исключающее ИЛИ", с построением соответствующей полученным данным математической модели.

Литература

1. Кузнецов В.М., Песошин В.А. Генераторы случайных и псевдослучайных последовательностей на цифровых элементах задержки / Кузнецов В.М., Песошин В.А., Казань: Издательство КНИТУ-КАИ, 2013. 336 с.

2. Песошин В.А., Кузнецов В.М. Генераторы псевдослучайных и случайных чисел на регистрах сдвига / Песошин В.А., Кузнецов В.М., Казань: Издательство КГТУ им. А.Н. Туполева, 2007. 296 с.

3. Абдуллин И.Ш., Бренерман М.Х., Шаехов М. Ф. Математическое моделирование процесса сублимации ультрадисперсных порошков в плазме атмосферного давления. Часть 2 /Вестник Казан. гос. технол. ун-та-2014.- №23.-С.386-389.

4. Шаряпов А.М. Математическая модель системы преобразователь частоты - асинхронный двигатель с использованием переключающих функций / Вестник Казан. гос. технол. ун-та-2014.- №22.-С.392-396.

© Р. Н. Хусаинов - канд. техн. наук, доц. каф. инженерной компьютерной графики и автоматизированного проектирования КНИТУ, xysainov57@mail.ru; М. Д. Галимов - асс. каф. компьютерных систем КНИТУ-КАИ, galimov.cs@kstu-kai.ru.

© R. N. Khusainov, Cand. Sci. (Tech.), Docent, Department of the Engineering Computer Grafics and Automated Design, Kazan National Research Technological University, xysainov57@mail.ru; M. D. Galimov, Assistant of Computer systems department, Kazan National Research Technical University - Kazan Aviation Institute.

i Надоели баннеры? Вы всегда можете отключить рекламу.