СПИСОК ЛИТЕРАТУРЫ
1. Ермолин Н.П., Жерихин ИЛ. Надежность электрических машин. - JL: Энергия, 1976. - 248 с.
2. Borovikov Yu.S. Diagnostic system for the estimation of the collector and brush units mechanical state under static and dynamic operating conditions // Modern Technique and Technologies: The VIII Intern. Scientific and
' Practical Conf. of Students, Post graduates and Young Scientists. - Tomsk: Tomsk Polytechnic University, 2002. - P. 104.
3. Качин С.И., Боровиков Ю.С., Нечаев M.A., Меркулов С.В. Автоматизированный диагностический комплекс для оценки механического состояния коллек-•торно-щеточных узлов в статических и динамичес-кихрежимах // Измерение, контроль, информатизация: Матер. IV Междунар. научно-практ. конф. -Барнаул: АГТУ, 2003. - С. 98-103.
4. Герасимов В.Г. и др., Методы и приборы электромагнитного контроля промышленных изделий. - М.: Энергия, 1983. - 272 с.
5. ХарламовВ.В. Совершенствование методов и средств диагностирования технического состояния коллек-торно-щеточного узла тяговых электродвигателей подвижного состава. Автореферат дис.... докт. техн. наук. - Омск: ОмГУПС, 2002. - 43 с.
6. Качин С.И. Высокоиспользованные коллекторные электрические машины малой мощности. Дис. ... докт. техн. наук. - Томск: ТПУ, 2002. - 438 с.
7. Козлов A.A., Скороспешкин А.И. Динамический контроль профиля коллекторов электрических машин // Электротехника. - 1977. -№ 7. - С. 36-39,
8. Стрельбицкий Э.К., Стукач B.C., Цирулик А.Я. Статистическая обработка профилограмм коллектора машин постоянного тока // Известия Томского политехнического института. - 1966. - Т. 160. - С. 102-105.
УДК 681.32
АППАРАТНО-ПРОГРАММНЫЙ ГЕНЕРАТОР СЛУЧАЙНЫХ ЧИСЕЛ, СОПРЯГАЕМЫЙ С КОМПЬЮТЕРОМ ТИПА IBM PC
A.B. Димаки, A.A. Светлаков
Томский государственный университет систем управления.и радиоэлектроники E-maii: [email protected]
Представлен аппаратно-программный генератор случайных чисел. Назначение данного устройства ~ генерация последовательностей случайных чисел с заданными статистическими характеристиками. В качестве источника случайных чисел используется апериодический и непредсказуемый физический процесс ~ тепловой шум р-п-перехода стабилитрона. Сопряжение аппаратной части генератора случайных чисел с ЭВМ осуществляется при помощи интерфейса ISA. Приводятся результаты исследо ваний статистических свойств последовательностей, полученных при помощи данного генератора, а также предлагается ряд мер по его совершенствованию.
1. Введение
В современных задачах моделирования различных процессов и объектов, подверженных воздействию различного ряда случайных факторов, часто требуется получение последовательностей случайных чисел. Случайные числа, входящие в данную последовательность, должны соответствовать требованиям исследуемого процесса или объекта и условиям их функционирования, т.е. быть распределены по определенному закону, иметь определенный диапазон изменения, заданные значения математического ожидания, дисперсии, и т.д. В этой связи возникает потребность создания универсального генератора случайных чисел, позволяющего получать случайные числа, удовлетворяющие вышеперечисленным условиям. В данной работе представлен разработанный авторами аппаратно-программный генератор случайных чисел, выполненный в виде периферийного устройства IBM-совместимого компьютера. Использованный в предлагаемом устройстве интерфейс ISA позволяет включать аппаратно-программный генератор случайных чисел в архитектуру большинства современных ЭВМ.
2. Анализ существующих методов получения случайных чисел
В настоящее время к решению задачи получения случайных чисел существует три основных подхода: 1) использование таблиц случайных чисел; 2) генерирование случайных чисел при помощи некоторого алгоритма и 3) использование специальных аппаратных устройств - датчиков случайных чисел [1]. Отметим наиболее существенные достоинства и недостатки вышеперечисленных подходов.
При наличии достаточно обширной таблицы случайных чисел вопрос об источнике независимых реализаций случайной величины можно считать принципиально решенным. Однако на практике хранение обширной таблицы в памяти вычислительной машины представляется крайне неудобным, и таблицы случайных чисел не используются, за очень редкими исключениями. Также, к недостаткам применения таблиц случайных чисел относится тот факт, что таблицы существуют для весьма ограниченного набора законов распределения.
В практических расчетах наиболее удобно получать реализации случайной величины при помощи
Рис. 1. Структура апгаратно■ программного генератора случайных чисел
Рис. 2. Аппаратная часть генератора случайных чисел
некоторого алгоритма. Числа, получаемые таким ка, связанного с невозможностью воспроизводить путем, называют псевдослучайными. Основным вычисления. Этот недостаток устраняется путем со-требованием, предъявляемым к подобным алгорит- хранения в памяти машины полученной последова-мам, является, как правило, .требование высокого тельности случайных чисел для ее повторного ис-быстродействия. пользования. Естественно, что объем последователь-Подавляющее большинство используемых псев- ности ограничивается объемом запоминающего уст-дослучайных последовательностей получают на ос- ройства ЭВМ. Также, преимуществом использования нове рекуррентных соотношений. Однако, подоб- ЭВМ является возможность исследования запомненные последовательности являются периодически- ных последовательностей и выяснение таких их ми, так как каждое последующее число такой пос- свойств, как периодичность, предсказуемость, вид ледовательности определяется на основании неко- функции распределения и др. [2, 3]. торой комбинации предыдущих значений. Таким В силу того, что в настоящее время большая часть образом, использование псевдослучайных чисел моделирующих программ ориентированы на работу позволяет получать последовательности, распреде- на платформе IBM-совместимых ЭВМ, представля-ленные по требуемому закону, однако эти последо- ется актуальным создание генератора случайных чи-вательности неизбежно будут периодическими и, в сел как самостоятельного периферийного устройства, конечном счете, предсказуемыми. встраиваемого в архитектуру такого компьютера. В От данного недостатка свободны устройства, данной работе приведены результаты проектирова-называемые аппаратными или физическими датчи- ния, изготовления и исследования аппаратно-про-ками случайных чисел. Такойдатчик подключается граммного генератора случайных чисел, подключае-к ЭВМ и выдает случайное число в память маши- мого к ЭВМ при помощи интерфейса ISA. ны. Отличительной особенностью подобных устройств является то, что генерируемые ими случай- 3. Структура разработанного устройства
ные числа являются, по сущ измеренными значе- Разработанный генератор случайных чисел состо-
ниями какого-либо случайного физического про- ит из аппаратной и программной частей (рис. 1). Ап-
цесса, и, вследствие этого, генерируемые датчиком паратная часть предназначена для получения анало-
последовательности значении случайной величины гового шума; его усиления и оцифровки. Программ-
апериодичны (если, конечно апериодичен исполь- ная часть управляет процессом оцифровки, прини-
зуемый физический процесс) и непредсказуемы. К шет оцифрованный шум, хранит и обрабатывает
недостаткам подобного рода устройств можно от- П0Лученную последовательность случайных чисел, нести невозможность повторного воспроизведения Аппаратная часть состоит из собственно источ-
вычислений, и, что более важно, возможность не- нжа шуШ; аналого_цифрового преобразователя и
предс казуемого изменения параметров устройства интерфейсной части, предназначенной для сопряже-
под влиянием внешних факторов - температуры, шя с ggjyj ^^
электрических и магнитных, ролей старения эле- в качестве источника шума используется стаби-ментной базы. В силу этих причин физические дат- н КС162А снимаемый с0 стабилитрона,
чики используются достаточно редко. Необходимо подается на усилителЬ) ВЫПОлненный на двух опера-
отметить, что аппаратно-программные генераторы ционныхусилителях КР140УД708. Суммарный коэф-
случайных чисел, выполненные путем сопряжения фициент усиленш составляет 530. Усиленный сигнал физического датчика и ЭВМ, свободны от недостат-
38 36 34 32
30
, .0 200 400 600 800 1 000 1 200 1 400 1 ООО 1ВОО J ООО
Частота, Гц
Рис. 3. Спектр шумового сигнала (N=10000)
Амш»«5ва»кв.АЦП
Рис. 4, Гиаограмма выборки (N=10000, выборка центрирована)
подается на вход устройства выборки/хранения и затем на аналого-цифровой преобразователь (АЦП), выполненный на микросхеме КР572ПВ1. Время выборки данной микросхемы составляет 250 мкс, частота преобразования - 4 кГц. Отсчеты оцифрованного сигнала поступают в ЭВМ через стандартный интерфейс ISA.
Для приема оцифрованного шума и его обработки создан специализированный пакет программ, выполняющий следующие функции:
1. Получение последовательностей значений шумового сигнала и сохранения их в виде файда.
2. Вывод полученных последовательностей на экран в виде временных диаграмм.
3. Построение гистограмм полученных выборок, получение числовых характеристик выборок.
4. Построение амплитудно-частотных характеристик сигнала.
5. Преобразование исходного закона распределе-
ния последовательности в любой из законов распределения, предусмотренных в разработанной программе.
4. Описание аппаратной части устройства
Аппаратная часть генератора случайных чисел состоит из трех блоков, выполненных на единой печатной плате. К ним относятся:
1. генератор шума;
2. аналого-цифровой преобразователь;
3. интерфейс с ЭВМ.
Блок генерации шума предназначен для получения шумового сигнала - так называемого «белого шума» [4]. Отличительной особенностью такого сигнала является равномерная амплитудно-частотная характеристика. Как показано в [3], значения амплитуд такого сигнала подчиняются нормальному распределению. Таким образом, данный генератор шума позволяет получать нормально распределенные случайные числа.
Аналого-цифровой преобразователь преобразует переменное входное напряжение в двенадцатиразрядный параллельный код. При этом входному напряжению минус 3,3 В соответствует код 0, а напряжению плюс 3,3 В - код 4095. Время одного преобразования составляет примерно 250 мкс.
Использованная микросхема КР572ПВ1 представляет собой неполный АЦП, т.е. она содержит цифроаналоговый преобразователь (ЦАП) и регистр последовательного приближения. Аналоговый компаратор, операционный усилитель ЦАП, устройство выборки и хранения, а также источник опорного напряжения монтируются отдельно.
.Цифровой код, соответствующий подаваемому напряжению, хранится в регистре последовательного приближения, входящем в состав АЦП. В этот регистр поступают данные от компаратора, который сравнивает входное напряжение с опорным, вырабатываемым микросхемой КР572ПВ1. Если входное напряжение больше, то компаратор выдает высокий уровень, иначе - низкий. Таким образом, происходит последовательное формирование цифрового кода. В силу особенностей данного АЦП, преобразование сигнала происходит; в нем за 27 тактов.
Рассчитаем быстродействие АЦП. С контакта OSC шины ISA поступают прямоугольные импульсы с фиксированной частотой ^=14,31818 МГц. На двух последовательно включённых, счетчиках эта частота делится на сто двадцать восемь. 14,31818
f _ Jo . 1 128
128
= 0,11186 МГц.
Следовательно, период импульсов на входе тактирования АЦП равен
' 1(Г6 1(Г*
= 8,94 мкс.
/ 0,11186 Так как полный цикл преобразования осуществляется за двадцать семь тактов, время преобразования равно:
"27 = 8,94-27 = 241,4мкс. Частота получения выборок сигнала равна
./и»
t 2414
= 4142 Гц.
Блок интерфейса с ЭВМ выполняет функцию связующего звена между аналого-цифровым преобразователем и шиной ЭВМ. Связь с ЭВМ осуществляется с использованием сигналов стандартного КА-разъе-ма [6]. Устройство работает в режиме побайтного обмена, используя порты ввода/вывода 0x300, 0x301. Использованы только 9 младших разрядов адреса. Через порт 0x300 передается младший байт 12-разрядного кода, а 4 старших бита передаются через порт 0x301.
5. Описание программной части устройства
Программная часть разработанного устройства состоит из двух блоков - из модуля сбора данных и графического интерфейса пользователя (ГИП). Модуль сбора данных представляет собой управляющую программу, написанную на языке Си, предназначенную
для приема данных из аппаратной части;и записи их в файл. ГИП используется для визуализации и обработки записанных данных, а также для преобразования закона распределения полученных последовательностей.
Графический интерфейс разработан в среде Borland Delphi 5 по технологии многодокументного интерфейса (MDI) [7], т.е. в одном окне можно просматривать одновременно или по отдельности временную диаграмму сигнала, спектр сигнала, гистограмму. Также ГИП позволяет производить изменение исходного закона распределения на любой из законов распределения, предусмотренных в программе. В данной версии ГИП возможно преобразование исходного закона распределения последовательности в один из следующих законов распределения:,
1. равномерное;
2. нормальное;
3. треугольное;
4. экспоненциальное;
5. гамма-распределение;
6. Вейбулла-Гнеденко;
7. двойное экспоненциальное;
8. бета-распределение;
9. Коши;
10. хи-квадрат-распределение.
При этом пользователь может самостоятельно задавать значения параметров любого из законов распределения.
6. Некоторые результаты исследований
Частотный спектр сигнала, получаемого с генератора шума, является важной характеристикой, позволяющей судить о наличии гармонических составляющих в шуме, наличии постоянной составляющей, а также о равномерности распределения энергии шума по частоте, т.е. о том, насколько соответствует получаемый сигнал ожидаемому «белому» шуму. Спектр сигнала, получаемого с помощью аппаратно-программного генератора, приведен на рис. 3.
Как видно из рис. 3, спектр сигнала является существенно неравномерным, в нем присутствуют ярко выраженные пики на частотах 500, 1500 и 2000 Гц. Такой вид спектра является характерным, и не изменяется от выборки к выборке. Возможно, что наличие пиков на спектре обусловлено именно типом стабилитрона, который изначально не предназначен для генерации шума. По-видимому, для получения более равномерных спектров необходимо применять специализированные диоды-генераторы шума, например, диоды КГ401А. Однако, неравномерность спектра шумового сигнала не исключает возможности его использования в качестве источника случайных чисел, так как спектр шума определяет лишь вид закона распределения получаемых случайных чисел, но не влияет на сам характер их
образования как результат непредсказуемого физического процесса [8].
Типовая гистограмма выборки, получаемой при помощи генератора шума, представлена на рис. 4.
Как показывают исследования, приведенные в [8], закон распределения выборок, получаемых при помощи аппаратно-программного генератора, близок к нормальному закону распределения, математическое ожидание близко к нулю.
7. Заключение
В результате выполнения данной работы получен аппаратно-программный генератор случайных чисел. Генератор предназначен для генерации случайных выборок необходимого объема, вид и значения параметров закона распределения которой могут быть заданы по желанию пользователя. Аппаратно-программный генератор случайных чисел может быть
использован в задачах моделирования, в которых необходимы большие последовательности случайных данных, распределенных по определенному закону.
На данном этапе видны следующие возможности совершенствования разработанного аппаратно-программного комплекса:
1. Использование более совершенного шумящего элемента, имеющего спектр, более близкий к спектру белого шума.
2. Совершенствование программного обеспечения, расширение набора законов распределения, введение функций тестирования получаемых последовательностей.
3. Совершенствование аппаратной части устройства, в частности повышение быстродействия АЦП, а также использование более современного интерфейса с ЭВМ.
СПИСОК ЛИТЕРАТУРЫ
1. Ермаков. С.М. Метод Монте-Карло и смежные вопросы, изд. 2-е. - М.: Наука, 1975. - 412 с.
2. Вентцель Е.С., Овчаров Л А Теория вероятностей и ее инженерные приложения. - М.: Наука, 1988. - 480 с.
3. Быков В.В. Цифровое моделирование в статистической радиотехнике. — М.: Советское радио, 1971. - 328 с.
4. Бобнев М.П. Генерирование случайных сигналов. -Изд. 2-е, перераб. и доп. - М.: Энергия, 1971. - 240 с.
5. Хоровиц П., Хилл У. Искусство схемотехники: В 3-х томах: Т. 1. Пер. с англ. - 4-е изд., перераб. и доп. -М.: Мир, 1993. - 413 с.
6. Новиков Ю.В., Калашников O.A., Гуляев С.Э. Разработка устройств сопряжения для персонального компьютера типа IBM PC. Под общ. ред. Ю.В. Новикова. Практ. пособие. - М.: ЭКОМ, 1998. - 224 е., ил.
7. Тейксейра С., Пачеко К. Delphi 5. Руководство разработчика: Пер. с англ.: уч. пос. - М.: Издательский дом «Вильяме», 2000. - 832 е.: ил.
8. Димаки A.B., Светлаков A.A., Сиверцев В.Ф. Разработка и некоторые результаты исследований аппаратно-программного генератора случайных чисел // Аппаратно-программные средства автоматизации технологических процессов. Под ред. Ю.А. Шурыгина. -Томск: Изд-во ТГУ, 2002. - Вып. 4. - С. 18-25.