Генератор случайных чисел
Иллюстрации
Показать всеРеферат
Изобретение относится к вычислительной технике и может быть использовано для формирования случайных чисел с произвольным законом распределения, например при построении электронных моделей системы связи . Цель изобретения - повышение быстродействия генератора. Цель достигается введением в генератор элемента И, блока элементов И, блока памяти и накапливающего сумматоравычитателя. В генераторе обеспечивается небольшое количество шаговтактов для формирования каждого случайного числа. 3 ил.
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК (19) (И) (5O 4 G 06 F 7 58
ВСЕГ"
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ (21) 4099508/24-24 (22) 28.07.86 (46) 23.01.88. Бюл. ((3 (72) И.Г.Циколин, Т.Н.Редуто: и В.И.Якименко (53) 681.3(088,8) (56) Авторское свидетельство СССР
NI 1124294, кл . С 06 F 7/58, 1983.
Авторское свидетельство СССР
)) 1256043, кл . G 06 F 15/20, 1985. (54) ГЕНЕРАТОР СЛУЧАЙНЫХ ЧИСЕЛ (57) Изобретение относится к вычислительной технике и может быть использовано для формирования случайных чисел с произвольным законом распределения, например при построении электронных моделей системы связи. Цель изобретения — повышение быстродействия генератора. Цель достигается введением в генератор элемента И, блока элементов И, блока памяти и накапливающего сумматоравычитателя. В генераторе обеспечивается небольшое количество шаговтактов для формирования каждого случайного нисла. 3 ил.
1368876
Изобретение относится к вычислительной технике и может быть использовано для формирования случайных чисел с произвольным законом распределения, например„ для построения электронных моделей системы связи.
Цель изобретения — повышение быстродействия генератора.
На фиг. 1 приведена структурнофункциональная схема генератора случайных чисел;на фиг. 2 — функциональная схеМа накапливающего сумматора-вычитателя; на фиг. 3 — .алгоритм формирования случайных чисел.
Генератор содержит генератор 1 тактовых импульсов, переключатель
2, счетчик 3, блок 4 памяти, накапливающий сумматор-вычитатель 5,. блок
6 памяти, генератрр 7 псевдослучайных чисел, блок 8 сравнения, элементы ИЛИ 9 и 10, элемент И 11 и блок элементов И 12.
Накапливающий сумматор-вычитатель
5 содержит вычитатель 13, сумматор
14, элементы 15 и 16 задержки, элементы И 17 — 19, элементы ИЛИ 20 и
21, регистр 22.
Генератор работает следующим образом.
В исходном состоянии в генераторе
7 псевдослучайных чисел установлен режим однократного формирования равномерно распределенных случайных чисел на заданном интервале fM
M J. В блок 6 памяти записаны коды чисел, соответствующие верхним значениям каждого m-ro отрезка (m=1,N), на которые разделен интервал кодов (И, M ). При этом длина m ro отрезка пропорциональна вероятности появления случайного числа О на заданном интервале.
В блоке 4 памяти записаны двоичные коды значений функции, определяющей закон сходимости, например
iV К
М =, где i = 2, К; N 2
К вЂ” число итераций; необходимых для поиска с заданной точностью m-ro отрезка, на который попало значение случайного числа Q. Ка вход В накапливающего сумматора-вычитателя
5 подается двоичный код, соответстк- вующий номеру 2 отрезка интер(Mî M )
В начале работы импульсом начальной установки 3 обнуляется счетчик 3. Кроме того, импульс, через
1Г, 20
55 элемент ИЛИ 10 поступает на вход генератора 7, устанавливая на его выходе первое случайное число и на вход начальной установки накапливающего сумматора-вычитателя 5 ° В сумматоре-вычитателе 5 импульс 3 открывает элемент И 19, разрешая запись кода В, через элемент ИЛИ 21 в регистр 22. Одновременно импульс. о, через элемент ИЛИ 20 поступает на тактовый вход регистра 22, осуществляя запись кода В, в регистр 22.
На выходе регистра 22, являющегося выходом сумматора-вьгчитателя 5, и, следовательно, на адресном входе блока 6 памяти устанавливается двоичN ный код числа В равный А (†) о 2
При замыкании переключателя 2 тактовые импульсы 3; с выхода генератора 1 поступают на счетный вход счетчика 3, который формирует коды 9,, являющиеся адресом соответствующих ячеек памяти блока 4.
Импульсами ц;, поступающими на синхронизацию блока 6, содержимое
9,-х ячеек блока 6 считывается на второй вход блока 8 сравнения. В последнем осуществляется сравнение кода А =А(Е;) на выходе блока 6 постоянной памяти и кода Q на выходе генератора псевдослучайных чисел., Если выполняется условие A(M;) > g, то сигнал логической единицы (формируется на выходе "Больше" блока 8 сравнения.
При этом импульс (, поступает через элемент ИЛИ 9 на вход синхронизации блока 4 памяти, с выхода которого считывается код А(М;„ ) нового числа М;,, адрес которого сформирован на выходе счетчика 3.
Код А = А(М,) с выхода блока 4 подается на выход блока 5. В этот момент времени импульс . поступает на первый вход задания режима сумматора-вычитателя 5, при этом импульс (; поступает на тактовый вход вычитателя 13, на первый вход которого с выхода регистра 22 поступает предыдущее .значение кода А(М;), на второй вход — текущее значение кода А(М;„ ).
По тактовому импульсу осуществляется формирование кода числа М;„
3 13688
N 2
2 " 2 лМ
=М,— к
2 k-i --I ч
2"
Импульс (;,задержанный элементом
15 задержки на время срабатывания вычитателя 13, открывает элемент
И 17 и одновременно через элемент
ИЛИ 20 поступает на тактовый вход регистра 22, благодаря чему с выхода вычитателя 13 считывается полученное значение кода А(";„ ) и записывается в регистр 22.
При поступлении на вход синхронизации блока 6 памяти следующего тактового импульса 5;ti по сформированному н накапливающем сумматоренычитателе 5 коду А(М;,, ) адреса. осуществляется считывание содержимого соотнетствующей ячейки памяти блока б памяти на второй вход блока
8 сравнения, н котором выполняется следующая операция сравнения.
Если А(М;) а О, то сигнал логической единицы формируется на первом выходе блока 8 сравнения.
Формирование в сумматоре-вычитателе 5 следующего отрезка гистограммы осуществляется аналогично первому случаю, но при этом код числа М,„ формируется в сумматоре 14.
76 тактов К для формирования каждого случайного числа.
Формула изобретения
Генератор случайных чисел, содержащий первый блок памяти, генератор псевдослучайных чисел, блок сравнения, первый и второй элементы ИЛИ, генератор тактовых импульсов, выход которого через переключатель соединен с счетным входом счетчика,первый вход первого элемента ИЛИ является входом начальной установки генератора, выход первого элемента
ИЛИ соединен с входом Запуск генератора псевдослучайных чисел, выход которого соединен с первым информационным. входом блока сравнения, второй информационный вход которого соединен с выходом первого блока памяти, отличающийся тем, что, с целью повышения быстродействия,н него введены элемент И, блок элементов И, второй блок памяти и накапливающий сумматор-вычитатель, при этом выходы "Больше" и "Меньше" блока сравнения соединены соответственно с первым и вторым входами задания режима накапливающего сумматора-нычитателя выходы "Больше" и "Меньше .блока сравнения соедиN N
М = М +ЬМ = — 1-+
It! 2 2"
3 2
Дальнейший поиск случайного чис— ла осуществляется аналогично.
При появлении на выходе счетчика
3 импульса переполнения заканчивается процесс поиска случайного числа: импульс через открытый по второму входу элемент И 11 поступает на второй вход элемента И 12, разрешая считывание кода А(11;,, = 6 с ныхода сумматора-вычитателя на выход устройства.
Одновременно импульс 1 поступает через элемент ИЛИ 10 на вход генератора 7 псевдослучайных чисел и устанавливает в нем следующее случайное число Q, а сумматор-вычитатель 5 устанавливает в начальное состояние. Таким образом, обеспечивается небольшое количество шагов—
55 нены соответственно с первым и вторым входами второго элемента ИЛИ, выход которого подключен к входу синхронизации второго блока памяти и к первому входу первого элемента
И, выход которого подключен к второму входу первого элемента !НИ,выход которого соединен с входом начальной установки накапливающего сумматоранычитателя,выход которого соединен с адресным входом первого блока памяти, вход синхронизации которого соединен с входом синхронизации блока сравненйя и подключен к счетному входу счетчика, выход переполнения которого соединен с вторым входом элемента И, выход которого соединен с первым входом блока элементов
И, выход которого является выходом генератора случайных чисел, нторой вход блока элементов И соединен с выходом сумматора-вычитателя, выход счетчика подключен к адресному входу второго блока памяти.
1368876
1368876 стиг. 3
Составитель И. Столяров
Редактор Е.Папп Техред М. Ходанич Корректор Н. Король
Заказ 297, 51 Тираж 704 Подписное
ВНИИПИ Государственного комитета СССР по делам изобретений и открытий
113035, Москва, Ж-35, Раушская наб., д. 4/5
Производственно-полиграфическое предприятие, г. Ужгород, ул. Проектная, 4